Documentation

LeanPool.NFWeakPartition.NominalCertificate

NF weak partition development: NominalCertificate.

A direct Flypitch executor for named-variable Metamath certificates. Proofs are polymorphic in the assignment of source names to free de Bruijn indices. Consequently ax-gen can bind one source name without choosing a global variable numbering or copying a proof term.

The exact repaired-source trace sidecar has SHA-256 89E80799B18269313FED986238AAEEEB1BE0DBAD2D7F28C3469521701A837E80.

Proof-translation construction identified upstream as sourceMmSha256.

Equations
Instances For

    Proof-translation construction identified upstream as exactSliceSha256.

    Equations
    Instances For

      A small nominal source AST sufficient for the exact quantified slice.

      • atom {Var Atom : Type} : Atom → Code Var Atom
      • falsum {Var Atom : Type} : Code Var Atom
      • equal {Var Atom : Type} : Var → Var → Code Var Atom
      • imp {Var Atom : Type} : Code Var Atom → Code Var Atom → Code Var Atom
      • all {Var Atom : Type} : Var → Code Var Atom → Code Var Atom
      Instances For
        def NFChoice.DirectCertificate.Nominal.instDecidableEqCode.decEq {Var✝ Atom✝ : Type} [DecidableEq Var✝] [DecidableEq Atom✝] (x✝ x✝¹ : Code Var✝ Atom✝) :
        Decidable (x✝ = x✝¹)
        Equations
        Instances For
          def NFChoice.DirectCertificate.Nominal.instReprCode.repr {Var✝ Atom✝ : Type} [Repr Var✝] [Repr Atom✝] :
          Code Var✝ Atom✝ → ℕ → Std.Format
          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            @[instance_reducible]
            instance NFChoice.DirectCertificate.Nominal.instReprCode {Var✝ Atom✝ : Type} [Repr Var✝] [Repr Atom✝] :
            Repr (Code Var✝ Atom✝)
            Equations
            def NFChoice.DirectCertificate.Nominal.bindRho {Var : Type} [DecidableEq Var] (rho : Var → ℕ) (bound : Var) :
            Var → ℕ

            Assignment used below a binder: the bound name becomes index zero.

            Equations
            Instances For
              def NFChoice.DirectCertificate.Nominal.Code.lower {Var Atom : Type} {L : Fol.Language} [DecidableEq Var] (atomFormula : (Var → ℕ) → Atom → Fol.formula L) :
              (Var → ℕ) → Code Var Atom → Fol.formula L

              Compile named source syntax to Flypitch's de Bruijn formula syntax.

              Equations
              Instances For
                def NFChoice.DirectCertificate.Nominal.NPrf {Var Atom : Type} {L : Fol.Language} [DecidableEq Var] (theory : Fol.SentTheory L) (atomFormula : (Var → ℕ) → Atom → Fol.formula L) (code : Code Var Atom) :

                A proof-valued nominal judgment over a closed sentence theory.

                Equations
                Instances For
                  @[reducible, inline]
                  abbrev NFChoice.DirectCertificate.Nominal.Packed {Var Atom : Type} {L : Fol.Language} [DecidableEq Var] (theory : Fol.SentTheory L) (atomFormula : (Var → ℕ) → Atom → Fol.formula L) :

                  One shared, dependently typed proof-table entry.

                  Equations
                  Instances For

                    Proof-translation construction identified upstream as Step.

                    Instances For
                      def NFChoice.DirectCertificate.Nominal.instDecidableEqStep.decEq {Var✝ Atom✝ : Type} [DecidableEq Var✝] [DecidableEq Atom✝] (x✝ x✝¹ : Step Var✝ Atom✝) :
                      Decidable (x✝ = x✝¹)
                      Equations
                      Instances For
                        @[instance_reducible]
                        instance NFChoice.DirectCertificate.Nominal.instReprStep {Var✝ Atom✝ : Type} [Repr Var✝] [Repr Atom✝] :
                        Repr (Step Var✝ Atom✝)
                        Equations
                        def NFChoice.DirectCertificate.Nominal.instReprStep.repr {Var✝ Atom✝ : Type} [Repr Var✝] [Repr Atom✝] :
                        Step Var✝ Atom✝ → ℕ → Std.Format
                        Equations
                        • One or more equations did not get rendered due to their size.
                        Instances For
                          def NFChoice.DirectCertificate.Nominal.castNPrf {Var Atom : Type} {L : Fol.Language} [DecidableEq Var] {theory : Fol.SentTheory L} {atomFormula : (Var → ℕ) → Atom → Fol.formula L} {p q : Code Var Atom} (h : p = q) (proof : NPrf theory atomFormula p) :
                          NPrf theory atomFormula q

                          Proof-translation construction identified upstream as castNPrf.

                          Equations
                          • One or more equations did not get rendered due to their size.
                          Instances For
                            def NFChoice.DirectCertificate.Nominal.execStep {Var Atom : Type} {L : Fol.Language} [DecidableEq Var] [DecidableEq Atom] (theory : Fol.SentTheory L) (atomFormula : (Var → ℕ) → Atom → Fol.formula L) (inputs state : Array (Packed theory atomFormula)) :
                            Step Var Atom → Option (Packed theory atomFormula)

                            Proof-translation construction identified upstream as execStep.

                            Equations
                            Instances For
                              def NFChoice.DirectCertificate.Nominal.run {Var Atom : Type} {L : Fol.Language} [DecidableEq Var] [DecidableEq Atom] (theory : Fol.SentTheory L) (atomFormula : (Var → ℕ) → Atom → Fol.formula L) (inputs : Array (Packed theory atomFormula)) :
                              List (Step Var Atom) → Array (Packed theory atomFormula) → Option (Array (Packed theory atomFormula))

                              Execute a topologically ordered proof DAG with actual node sharing.

                              Equations
                              Instances For
                                def NFChoice.DirectCertificate.Nominal.extract {Var Atom : Type} {L : Fol.Language} [DecidableEq Var] [DecidableEq Atom] (theory : Fol.SentTheory L) (atomFormula : (Var → ℕ) → Atom → Fol.formula L) (state : Array (Packed theory atomFormula)) (index : ℕ) (goal : Code Var Atom) :
                                Option (NPrf theory atomFormula goal)

                                Proof-translation construction identified upstream as extract.

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

                                  Exact real-source slices #

                                  Proof-translation construction identified upstream as SourceVar.

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

                                      Proof-translation construction identified upstream as NoAtom.

                                        Instances For

                                          Proof-translation construction identified upstream as noAtomFormula.

                                          Instances For

                                            Exact proof-bearing stdpc6 trace: equid, then ax-gen.

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

                                              Proof-translation construction identified upstream as stdpc6Result.

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

                                                Proof-translation construction identified upstream as SchematicAtom.

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

                                                    Exact proof-bearing gen2 trace: input hypothesis and two ax-gens.

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

                                                      Proof-translation construction identified upstream as gen2Result.

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

                                                        Proof-translation construction identified upstream as gen2Proof.

                                                        Equations
                                                        Instances For