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
- NFChoice.DirectCertificate.Nominal.sourceMmSha256 = "868DF831E63E28AA924CC099510CD9E5D3BE18CD8416A20B335F5BBF3B42ED3F"
Instances For
Proof-translation construction identified upstream as exactSliceSha256.
Equations
- NFChoice.DirectCertificate.Nominal.exactSliceSha256 = "89E80799B18269313FED986238AAEEEB1BE0DBAD2D7F28C3469521701A837E80"
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
Equations
- One or more equations did not get rendered due to their size.
- NFChoice.DirectCertificate.Nominal.instDecidableEqCode.decEq (NFChoice.DirectCertificate.Nominal.Code.atom a) NFChoice.DirectCertificate.Nominal.Code.falsum = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqCode.decEq (NFChoice.DirectCertificate.Nominal.Code.atom a) (NFChoice.DirectCertificate.Nominal.Code.equal a_1 a_2) = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqCode.decEq (NFChoice.DirectCertificate.Nominal.Code.atom a) (a_1.imp a_2) = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqCode.decEq (NFChoice.DirectCertificate.Nominal.Code.atom a) (NFChoice.DirectCertificate.Nominal.Code.all a_1 a_2) = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqCode.decEq NFChoice.DirectCertificate.Nominal.Code.falsum (NFChoice.DirectCertificate.Nominal.Code.atom a) = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqCode.decEq NFChoice.DirectCertificate.Nominal.Code.falsum NFChoice.DirectCertificate.Nominal.Code.falsum = isTrue ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqCode.decEq NFChoice.DirectCertificate.Nominal.Code.falsum (NFChoice.DirectCertificate.Nominal.Code.equal a a_1) = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqCode.decEq NFChoice.DirectCertificate.Nominal.Code.falsum (a.imp a_1) = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqCode.decEq NFChoice.DirectCertificate.Nominal.Code.falsum (NFChoice.DirectCertificate.Nominal.Code.all a a_1) = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqCode.decEq (NFChoice.DirectCertificate.Nominal.Code.equal a a_1) (NFChoice.DirectCertificate.Nominal.Code.atom a_2) = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqCode.decEq (NFChoice.DirectCertificate.Nominal.Code.equal a a_1) NFChoice.DirectCertificate.Nominal.Code.falsum = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqCode.decEq (NFChoice.DirectCertificate.Nominal.Code.equal a a_1) (a_2.imp a_3) = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqCode.decEq (NFChoice.DirectCertificate.Nominal.Code.equal a a_1) (NFChoice.DirectCertificate.Nominal.Code.all a_2 a_3) = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqCode.decEq (a.imp a_1) (NFChoice.DirectCertificate.Nominal.Code.atom a_2) = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqCode.decEq (a.imp a_1) NFChoice.DirectCertificate.Nominal.Code.falsum = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqCode.decEq (a.imp a_1) (NFChoice.DirectCertificate.Nominal.Code.equal a_2 a_3) = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqCode.decEq (a.imp a_1) (NFChoice.DirectCertificate.Nominal.Code.all a_2 a_3) = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqCode.decEq (NFChoice.DirectCertificate.Nominal.Code.all a a_1) (NFChoice.DirectCertificate.Nominal.Code.atom a_2) = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqCode.decEq (NFChoice.DirectCertificate.Nominal.Code.all a a_1) NFChoice.DirectCertificate.Nominal.Code.falsum = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqCode.decEq (NFChoice.DirectCertificate.Nominal.Code.all a a_1) (NFChoice.DirectCertificate.Nominal.Code.equal a_2 a_3) = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqCode.decEq (NFChoice.DirectCertificate.Nominal.Code.all a a_1) (a_2.imp a_3) = isFalse ⋯
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Assignment used below a binder: the bound name becomes index zero.
Equations
Instances For
Compile named source syntax to Flypitch's de Bruijn formula syntax.
Equations
- One or more equations did not get rendered due to their size.
- NFChoice.DirectCertificate.Nominal.Code.lower atomFormula x✝ (NFChoice.DirectCertificate.Nominal.Code.atom a) = atomFormula x✝ a
- NFChoice.DirectCertificate.Nominal.Code.lower atomFormula x✝ NFChoice.DirectCertificate.Nominal.Code.falsum = ⊥'
- NFChoice.DirectCertificate.Nominal.Code.lower atomFormula x✝ (NFChoice.DirectCertificate.Nominal.Code.equal x_2 y) = NFChoice.Fol.preformula.equal &(x✝ x_2) &(x✝ y)
Instances For
A proof-valued nominal judgment over a closed sentence theory.
Equations
- NFChoice.DirectCertificate.Nominal.NPrf theory atomFormula code = ((rho : Var → ℕ) → NFChoice.Fol.prf theory.fst (NFChoice.DirectCertificate.Nominal.Code.lower atomFormula rho code))
Instances For
One shared, dependently typed proof-table entry.
Equations
- NFChoice.DirectCertificate.Nominal.Packed theory atomFormula = ((code : NFChoice.DirectCertificate.Nominal.Code Var Atom) × NFChoice.DirectCertificate.Nominal.NPrf theory atomFormula code)
Instances For
Proof-translation construction identified upstream as Step.
- input {Var Atom : Type} : ℕ → Step Var Atom
- ref {Var Atom : Type} : Var → Step Var Atom
- ax1 {Var Atom : Type} : Code Var Atom → Code Var Atom → Step Var Atom
- mp {Var Atom : Type} : ℕ → ℕ → Step Var Atom
- gen {Var Atom : Type} : Var → ℕ → Step Var Atom
Instances For
Equations
- One or more equations did not get rendered due to their size.
- NFChoice.DirectCertificate.Nominal.instDecidableEqStep.decEq (NFChoice.DirectCertificate.Nominal.Step.input a) (NFChoice.DirectCertificate.Nominal.Step.ref a_1) = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqStep.decEq (NFChoice.DirectCertificate.Nominal.Step.input a) (NFChoice.DirectCertificate.Nominal.Step.ax1 a_1 a_2) = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqStep.decEq (NFChoice.DirectCertificate.Nominal.Step.input a) (NFChoice.DirectCertificate.Nominal.Step.mp a_1 a_2) = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqStep.decEq (NFChoice.DirectCertificate.Nominal.Step.input a) (NFChoice.DirectCertificate.Nominal.Step.gen a_1 a_2) = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqStep.decEq (NFChoice.DirectCertificate.Nominal.Step.ref a) (NFChoice.DirectCertificate.Nominal.Step.input a_1) = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqStep.decEq (NFChoice.DirectCertificate.Nominal.Step.ref a) (NFChoice.DirectCertificate.Nominal.Step.ax1 a_1 a_2) = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqStep.decEq (NFChoice.DirectCertificate.Nominal.Step.ref a) (NFChoice.DirectCertificate.Nominal.Step.mp a_1 a_2) = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqStep.decEq (NFChoice.DirectCertificate.Nominal.Step.ref a) (NFChoice.DirectCertificate.Nominal.Step.gen a_1 a_2) = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqStep.decEq (NFChoice.DirectCertificate.Nominal.Step.ax1 a a_1) (NFChoice.DirectCertificate.Nominal.Step.input a_2) = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqStep.decEq (NFChoice.DirectCertificate.Nominal.Step.ax1 a a_1) (NFChoice.DirectCertificate.Nominal.Step.ref a_2) = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqStep.decEq (NFChoice.DirectCertificate.Nominal.Step.ax1 a a_1) (NFChoice.DirectCertificate.Nominal.Step.mp a_2 a_3) = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqStep.decEq (NFChoice.DirectCertificate.Nominal.Step.ax1 a a_1) (NFChoice.DirectCertificate.Nominal.Step.gen a_2 a_3) = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqStep.decEq (NFChoice.DirectCertificate.Nominal.Step.mp a a_1) (NFChoice.DirectCertificate.Nominal.Step.input a_2) = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqStep.decEq (NFChoice.DirectCertificate.Nominal.Step.mp a a_1) (NFChoice.DirectCertificate.Nominal.Step.ref a_2) = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqStep.decEq (NFChoice.DirectCertificate.Nominal.Step.mp a a_1) (NFChoice.DirectCertificate.Nominal.Step.ax1 a_2 a_3) = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqStep.decEq (NFChoice.DirectCertificate.Nominal.Step.mp a a_1) (NFChoice.DirectCertificate.Nominal.Step.gen a_2 a_3) = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqStep.decEq (NFChoice.DirectCertificate.Nominal.Step.gen a a_1) (NFChoice.DirectCertificate.Nominal.Step.input a_2) = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqStep.decEq (NFChoice.DirectCertificate.Nominal.Step.gen a a_1) (NFChoice.DirectCertificate.Nominal.Step.ref a_2) = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqStep.decEq (NFChoice.DirectCertificate.Nominal.Step.gen a a_1) (NFChoice.DirectCertificate.Nominal.Step.ax1 a_2 a_3) = isFalse ⋯
- NFChoice.DirectCertificate.Nominal.instDecidableEqStep.decEq (NFChoice.DirectCertificate.Nominal.Step.gen a a_1) (NFChoice.DirectCertificate.Nominal.Step.mp a_2 a_3) = isFalse ⋯
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Proof-translation construction identified upstream as castNPrf.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Proof-translation construction identified upstream as execStep.
Equations
- One or more equations did not get rendered due to their size.
- NFChoice.DirectCertificate.Nominal.execStep theory atomFormula inputs state (NFChoice.DirectCertificate.Nominal.Step.input index) = inputs[index]?
Instances For
Execute a topologically ordered proof DAG with actual node sharing.
Equations
- One or more equations did not get rendered due to their size.
- NFChoice.DirectCertificate.Nominal.run theory atomFormula inputs [] x✝ = some x✝
Instances For
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 #
Equations
- One or more equations did not get rendered due to their size.
Instances For
Instances For
Instances For
Proof-translation construction identified upstream as noAtomFormula.
Instances For
Proof-translation construction identified upstream as eqxx.
Equations
Instances For
Proof-translation construction identified upstream as allEqxx.
Equations
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 stdpc6Proof.
Equations
Instances For
Equations
- One or more equations did not get rendered due to their size.
Instances For
Proof-translation construction identified upstream as ph.
Equations
Instances For
Proof-translation construction identified upstream as allYPh.
Equations
Instances For
Proof-translation construction identified upstream as allXAllYPh.
Equations
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
- NFChoice.DirectCertificate.Nominal.gen2Proof atomFormula hypothesis = (NFChoice.DirectCertificate.Nominal.gen2Result atomFormula hypothesis).get ⋯