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
    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      Equations
      • One or more equations did not get rendered due to their size.
      @[reducible, inline]

      State for CollectFactsM. It contains a map where the key t maps to a pair (atomToIdx, facts). atomToIdx is a DiscrTree containing atomic expressions with their indices, and facts stores AtomicFacts about them.

      Equations
      Instances For
        @[reducible, inline]

        Monad for the fact collection procedure.

        Equations
        Instances For

          Adds fact to the state.

          Equations
          • One or more equations did not get rendered due to their size.
          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 .

            Implementation for collectFacts in CollectFactsM monad.

            Equations
            • One or more equations did not get rendered due to their size.
            Instances For

              Extracts facts and atoms from the expression.

              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 a pair (idxToAtom, facts), where the map idxToAtom converts indices to found atomic expressions of type α, and facts contains all collected AtomicFacts about them.

              Equations
              • One or more equations did not get rendered due to their size.
              Instances For