Documentation

LeanPool.FormalizationOfBoundedArithmetic.LanguageZambella

LeanPool.FormalizationOfBoundedArithmetic.LanguageZambella #

Function symbols for the two-sorted Zambella language.

Instances For
    def FirstOrder.Language.instDecidableEqZambellaFunc.decEq {a✝ : } (x✝ x✝¹ : ZambellaFunc a✝) :
    Decidable (x✝ = x✝¹)
    Equations
    • One or more equations did not get rendered due to their size.
    Instances For

      Relation symbols for the two-sorted Zambella language.

      Instances For
        def FirstOrder.Language.instDecidableEqZambellaRel.decEq {a✝ : } (x✝ x✝¹ : ZambellaRel a✝) :
        Decidable (x✝ = x✝¹)
        Equations
        • One or more equations did not get rendered due to their size.
        Instances For

          The two-sorted language for bounded arithmetic.

          Equations
          Instances For

            Types with a distinguished empty set or string element.

            • empty : α

              The distinguished empty element.

            Instances
              class FirstOrder.Language.HasLen (α : Type u) (β : Type v) :
              Type (max u v)

              Types with a length map into another type.

              • len : αβ

                Length of an object.

              Instances

                Predicate interface for values that are either numbers or strings.

                Instances
                  @[implicit_reducible]
                  Equations
                  • One or more equations did not get rendered due to their size.
                  @[simp]
                  theorem FirstOrder.Language.realize_zero_to_zero {M : Type u_1} [zambella.Structure M] {a : Type u_4} {env : aM} :
                  Term.realize env 0 = 0
                  @[simp]
                  theorem FirstOrder.Language.realize_one_to_one {M : Type u_1} [zambella.Structure M] {a : Type u_4} {env : aM} :
                  Term.realize env 1 = 1
                  @[simp]
                  theorem FirstOrder.Language.realize_add_to_add {M : Type u_1} [h : zambella.Structure M] {a : Type u_4} {env : aM} (t u : zambella.Term a) :
                  Term.realize env (t + u) = Term.realize env t + Term.realize env u
                  @[simp]
                  theorem FirstOrder.Language.realize_mul_to_mul {M : Type u_1} [zambella.Structure M] {a : Type u_4} {env : aM} (t u : zambella.Term a) :
                  Term.realize env (t * u) = Term.realize env t * Term.realize env u
                  theorem FirstOrder.Language.realize_leq_to_leq {M : Type u_1} [h : zambella.Structure M] {a : Type u_4} {env : aM} {k : } (t u : zambella.Term (a Fin k)) {xs : Fin kM} :
                  (t.le u).Realize env xs = (Term.realize (Sum.elim env xs) t Term.realize (Sum.elim env xs) u)
                  @[simp]
                  theorem FirstOrder.Language.realize_leq_to_leq' {M : Type u_1} [h : zambella.Structure M] {a : Type u_4} {env : aM} {k : } (t u : zambella.Term (a Fin k)) {xs : Fin kM} :
                  @[simp]
                  theorem FirstOrder.Language.realize_leq_to_leq'' {M : Type u_1} [h : zambella.Structure M] {a : Type u_4} {env : aM} {k : } (t u : zambella.Term (a Fin k)) {xs : Fin kM} :

                  Formula asserting that a term denotes a number.

                  Equations
                  Instances For

                    Formula asserting that a term denotes a string.

                    Equations
                    Instances For

                      Guard a formula by asserting that its displayed variable is a number.

                      Equations
                      Instances For

                        The membership relation of two terms as a bounded formula

                        Equations
                        Instances For

                          The membership relation of two terms as a bounded formula

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

                            The not-mem relation of two terms as a bounded formula

                            Equations
                            Instances For

                              The not-mem relation of two terms as a bounded formula

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

                                Two-sorted structures satisfying the intended Zambella typing axioms.

                                Instances

                                  Language homomorphism embedding Peano arithmetic into the Zambella language.

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