Documentation

Lean.Meta.Tactic.Grind.Propagate

Propagates equalities for a conjunction a ∧ b based on the truth values of its components a and b. This function checks the truth value of a and b, and propagates the following equalities:

  • If a = True, propagates (a ∧ b) = b.
  • If b = True, propagates (a ∧ b) = a.
  • If a = False, propagates (a ∧ b) = False.
  • If b = False, propagates (a ∧ b) = False.
Instances For

    Propagates truth values downwards for a conjunction a ∧ b when the expression itself is known to be True.

    Instances For

      Propagates equalities for a disjunction a ∨ b based on the truth values of its components a and b. This function checks the truth value of a and b, and propagates the following equalities:

      • If a = False, propagates (a ∨ b) = b.
      • If b = False, propagates (a ∨ b) = a.
      • If a = True, propagates (a ∨ b) = True.
      • If b = True, propagates (a ∨ b) = True.
      Instances For

        Propagates truth values downwards for a disjunction a ∨ b when the expression itself is known to be False.

        Instances For

          Propagates equalities for a negation Not a based on the truth value of a. This function checks the truth value of a and propagates the following equalities:

          Instances For

            Propagates truth values downwards for a negation expression Not a based on the truth value of Not a. This function performs the following:

            Instances For

              Propagates Eq upwards

              Instances For

                Propagates Eq downwards

                Instances For

                  Propagates EqMatch downwards

                  Instances For

                    Propagates HEq downwards

                    Instances For

                      Propagates HEq upwards

                      Instances For

                        Propagates ite upwards

                        Instances For

                          Propagates dite upwards

                          Instances For