Documentation

LeanPool.MatchingLogic.EntryIII.SignatureReduction

MatchingLogic.EntryIII.SignatureReduction #

The union of the symbols appearing in a finite list of patterns.

Equations
Instances For

    Every pattern in a finite list is supported by that list's support.

    def MatchingLogic.Pattern.restrictList {S : Signature} {Var : Type} [DecidableEq S.Sym] (F : Finset S.Sym) (l : List (Pattern S Var)) (h : pl, p.symbolSupportF) :

    Restrict every member of a supported finite list to the finite sub-signature.

    Equations
    Instances For
      theorem MatchingLogic.Pattern.liftSignature_restrictList {S : Signature} {Var : Type} [DecidableEq S.Sym] (F : Finset S.Sym) (l : List (Pattern S Var)) (h : pl, p.symbolSupportF) :

      Lifting a restricted finite list recovers the original list.

      Lifting distributes through the fixed bracketing of a finite conjunction.

      @[reducible, inline]

      Extend a model of the finite sub-signature by interpreting every symbol outside it as the empty set.

      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        theorem MatchingLogic.Model.app_extendSignature {S : Signature} [DecidableEq S.Sym] (F : Finset S.Sym) (M : Model (Signature.restrict F)) (sigma : (Signature.restrict F).Sym) (A : Fin (S.arity sigma)Set M.carrier) :
        (extendSignature F M).app (↑sigma) A = M.app sigma A

        On a retained symbol, pointwise application is unchanged by extension.

        Denotation is preserved when a restricted pattern is lifted and its model is extended by empty interpretations outside the restricted signature.

        The ambient denotation of a supported pattern equals the denotation of its restriction in the finite sub-signature.

        Conjunctive denotation of a finite list is unchanged by lifting and model extension.

        theorem MatchingLogic.restrictList_locConsistent {S : Signature} {Var : Type} [DecidableEq Var] [DecidableEq S.Sym] (F : Finset S.Sym) (l : List (Pattern S Var)) (hsupport : pl, p.symbolSupportF) (hconsistent : LocConsistent {delta : Pattern S Var | delta l}) :

        Restricting a locally consistent supported finite list preserves local consistency: a contradiction over the restricted signature would lift to one over the original list.

        Finite pointed-model existence for every finite sub-signature implies finite pointed-model existence for the ambient signature.