Documentation

LeanPool.PointwiseComposition.Foundation.FirstOrder.Syntax.Classical.Coding

Supporting results for pointwise provable equality.

def PointwiseComposition.FFL.FirstOrder.Semiterm.toNat {L : Language} [(k : ℕ) → Encodable (L.Func k)] {ξ : Type u_1} [Encodable ξ] {n : ℕ} :
Semiterm L ξ n → ℕ

The to Nat construction in FFL.FirstOrder.Semiterm.

Equations
Instances For
    @[irreducible]
    def PointwiseComposition.FFL.FirstOrder.Semiterm.ofNat {L : Language} [(k : ℕ) → Encodable (L.Func k)] {ξ : Type u_1} [Encodable ξ] (n a✝ : ℕ) :
    Option (Semiterm L ξ n)
    Equations
    Instances For
      theorem PointwiseComposition.FFL.FirstOrder.Semiterm.ofNat_toNat {L : Language} [(k : ℕ) → Encodable (L.Func k)] {ξ : Type u_1} [Encodable ξ] {n : ℕ} (t : Semiterm L ξ n) :
      @[instance_reducible]
      instance PointwiseComposition.FFL.FirstOrder.Semiterm.encodable {L : Language} [(k : ℕ) → Encodable (L.Func k)] {ξ : Type u_1} [Encodable ξ] {n : ℕ} :
      Equations
      • One or more equations did not get rendered due to their size.
      theorem PointwiseComposition.FFL.FirstOrder.Semiterm.toNat_func {L : Language} [(k : ℕ) → Encodable (L.Func k)] {ξ : Type u_1} [Encodable ξ] {n k : ℕ} (f : L.Func k) (v : Fin k → Semiterm L ξ n) :
      (func f v).toNat = Nat.pair 2 (Nat.pair k (Nat.pair (Encodable.encode f) (Matrix.vecToNat fun (i : Fin k) => (v i).toNat))) + 1
      def PointwiseComposition.FFL.FirstOrder.Semiformula.toNat {L : Language} [(k : ℕ) → Encodable (L.Func k)] {ξ : Type u_1} [Encodable ξ] [(k : ℕ) → Encodable (L.Rel k)] {n : ℕ} :
      Semiformula L ξ n → ℕ

      The to Nat construction in FFL.FirstOrder.Semiformula.

      Equations
      Instances For
        @[irreducible]
        def PointwiseComposition.FFL.FirstOrder.Semiformula.ofNat {L : Language} [(k : ℕ) → Encodable (L.Func k)] {ξ : Type u_1} [Encodable ξ] [(k : ℕ) → Encodable (L.Rel k)] (n a✝ : ℕ) :
        Equations
        Instances For
          theorem PointwiseComposition.FFL.FirstOrder.Semiformula.ofNat_toNat {L : Language} [(k : ℕ) → Encodable (L.Func k)] {ξ : Type u_1} [Encodable ξ] [(k : ℕ) → Encodable (L.Rel k)] {n : ℕ} (φ : Semiformula L ξ n) :
          ofNat n φ.toNat = some φ
          @[instance_reducible]
          instance PointwiseComposition.FFL.FirstOrder.Semiformula.encodable {L : Language} [(k : ℕ) → Encodable (L.Func k)] {ξ : Type u_1} [Encodable ξ] [(k : ℕ) → Encodable (L.Rel k)] {n : ℕ} :
          Equations
          • One or more equations did not get rendered due to their size.
          theorem PointwiseComposition.FFL.FirstOrder.Semiformula.encode_eq_toNat {L : Language} [(k : ℕ) → Encodable (L.Func k)] {ξ : Type u_1} [Encodable ξ] [(k : ℕ) → Encodable (L.Rel k)] {n : ℕ} (φ : Semiformula L ξ n) :
          theorem PointwiseComposition.FFL.FirstOrder.Semiformula.encode_rel {L : Language} [(k : ℕ) → Encodable (L.Func k)] {ξ : Type u_1} [Encodable ξ] [(k : ℕ) → Encodable (L.Rel k)] {n arity : ℕ} (R : L.Rel arity) (v : Fin arity → Semiterm L ξ n) :
          theorem PointwiseComposition.FFL.FirstOrder.Semiformula.encode_nrel {L : Language} [(k : ℕ) → Encodable (L.Func k)] {ξ : Type u_1} [Encodable ξ] [(k : ℕ) → Encodable (L.Rel k)] {n arity : ℕ} (R : L.Rel arity) (v : Fin arity → Semiterm L ξ n) :
          theorem PointwiseComposition.FFL.FirstOrder.Semiformula.encode_and {L : Language} [(k : ℕ) → Encodable (L.Func k)] {ξ : Type u_1} [Encodable ξ] [(k : ℕ) → Encodable (L.Rel k)] {n : ℕ} (φ ψ : Semiformula L ξ n) :
          theorem PointwiseComposition.FFL.FirstOrder.Semiformula.encode_or {L : Language} [(k : ℕ) → Encodable (L.Func k)] {ξ : Type u_1} [Encodable ξ] [(k : ℕ) → Encodable (L.Rel k)] {n : ℕ} (φ ψ : Semiformula L ξ n) :
          theorem PointwiseComposition.FFL.FirstOrder.Semiformula.encode_all {L : Language} [(k : ℕ) → Encodable (L.Func k)] {ξ : Type u_1} [Encodable ξ] [(k : ℕ) → Encodable (L.Rel k)] {n : ℕ} (φ : Semiformula L ξ (n + 1)) :
          theorem PointwiseComposition.FFL.FirstOrder.Semiformula.encode_ex {L : Language} [(k : ℕ) → Encodable (L.Func k)] {ξ : Type u_1} [Encodable ξ] [(k : ℕ) → Encodable (L.Rel k)] {n : ℕ} (φ : Semiformula L ξ (n + 1)) :
          @[simp]
          @[simp]