Documentation

Mathlib.Lean.Meta.RefinedDiscrTree.Basic

Basic Definitions for RefinedDiscrTree #

Definitions #

Discrimination tree key.

  • star : NatKey

    A metavariable. This key matches with anything. It stores an index.

  • opaque : Key

    An opaque variable. This key only matches with itself or Key.star.

  • const : NameNatKey

    A constant. It stores the name and the arity.

  • fvar : FVarIdNatKey

    A free variable. It stores the FVarId and the arity.

  • bvar : NatNatKey

    A bound variable, from a lambda or forall binder. It stores the De Bruijn index and the arity.

  • lit : LiteralKey

    A literal.

  • sort : Key

    A sort. Universe levels are ignored.

  • lam : Key

    A lambda function.

  • forall : Key

    A dependent arrow.

  • proj : NameNatNatKey

    A projection. It stores the structure name, the projection index and the arity.

Instances For

    Discrimination tree trie. See RefinedDiscrTree.

    Instances For
      def Lean.Meta.RefinedDiscrTree.Trie.mkPath {α : Type} (keys : Array Key) (child : Trie α) :
      Trie α

      Trie.path constructor that only inserts the path if it is non-empty.

      Equations
      Instances For
        def Lean.Meta.RefinedDiscrTree.Trie.singleton {α : Type} (keys : Array Key) (value : α) (i : Nat) :
        Trie α

        Trie constructor for a single value, taking the keys starting at index i.

        Equations
        Instances For
          def Lean.Meta.RefinedDiscrTree.Trie.mkNode2 {α : Type} (k1 : Key) (t1 : Trie α) (k2 : Key) (t2 : Trie α) :
          Trie α

          Trie.node constructor for combining two Key, Trie α pairs.

          Equations
          Instances For

            Return the values from a Trie α, assuming that it is a leaf

            Equations
            Instances For

              Return the children of a Trie α, assuming that it is not a leaf. The result is sorted by the Key's

              Equations
              Instances For

                Discrimination tree. It is an index from expressions to values of type α.

                Instances For