Documentation

Mathlib.Tactic.Order.CollectFacts

Facts collection for the order Tactic #

This file implements the collection of facts for the order tactic.

A structure for storing facts about variables.

Instances For
    @[reducible, inline]

    State for CollectFactsM. It contains a map that maps a type to atomic facts collected for this type.

    Equations
      Instances For
        @[reducible, inline]

        Monad for the fact collection procedure.

        Equations
          Instances For

            Adds type to the state. It checks if the type has already been added up to reducible_and_instances transparency. Returns the type that is added to the state and defenitionally equal (but may be not syntactically equal) to type.

            Equations
              Instances For

                Adds fact to the state. Assumes that type is already added by addType.

                Equations
                  Instances For
                    partial def Mathlib.Tactic.Order.addAtom {u : Lean.Level} (type : Q(Type u)) (x : Q(ยซ$typeยป)) :

                    Updates the state with the atom x. If x is โŠค or โŠฅ, adds the corresponding fact. If x is y โŠ” z, adds a fact about it, then recursively calls addAtom on y and z. Similarly for โŠ“. Assumes that type is already added by addType.

                    Implementation for collectFacts in CollectFactsM monad.

                    Equations
                      Instances For

                        Collects facts from the local context. negGoal is the negated goal, hyps is the expressions passed to the tactic using square brackets. If only? is true, we collect facts only from hyps and negGoal, otherwise we also use the local context.

                        For each occurring type ฮฑ, the returned map contains an array containing all collected AtomicFacts about atoms of type ฮฑ.

                        Equations
                          Instances For