Documentation

LeanPool.Incompleteness.Arithmetization.ISigmaOne.Metamath.Term.Typed

Typed Formalized IsSemiterm/Term #

structure LO.Arith.Language.Semiterm {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] (L : Arith.Language V) {pL : FirstOrder.Arith.LDef} [L.Defined pL] (n : V) :
Type u_1

Imported declaration from the Incompleteness formalization.

  • val : V

    Imported declaration from the Incompleteness formalization.

  • prop : L.IsSemiterm n self.val
Instances For
    structure LO.Arith.Language.SemitermVec {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] (L : Arith.Language V) {pL : FirstOrder.Arith.LDef} [L.Defined pL] (m n : V) :
    Type u_1

    Imported declaration from the Incompleteness formalization.

    • val : V

      Imported declaration from the Incompleteness formalization.

    • prop : L.IsSemitermVec m n self.val
    Instances For
      @[reducible, inline]

      Imported declaration from the Incompleteness formalization.

      Equations
      Instances For
        theorem LO.Arith.Language.Semiterm.ext {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] (L : Arith.Language V) {pL : FirstOrder.Arith.LDef} [L.Defined pL] {n : V} {t u : L.Semiterm n} (h : t.val = u.val) :
        t = u
        theorem LO.Arith.Language.Semiterm.ext_iff {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {n : V} {t u : L.Semiterm n} :
        t = u t.val = u.val
        @[simp]
        @[simp]
        theorem LO.Arith.Language.SemitermVec.ext {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] (L : Arith.Language V) {pL : FirstOrder.Arith.LDef} [L.Defined pL] {k n : V} {v w : L.SemitermVec k n} (h : v.val = w.val) :
        v = w
        theorem LO.Arith.Language.SemitermVec.ext_iff {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {k n : V} {v w : L.SemitermVec k n} :
        v = w v.val = w.val
        noncomputable def LO.Arith.Language.bvar {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] (L : Arith.Language V) {pL : FirstOrder.Arith.LDef} [L.Defined pL] {n : V} (z : V) (hz : z < n := by simp) :

        Imported declaration from the Incompleteness formalization.

        Equations
        Instances For
          noncomputable def LO.Arith.Language.fvar {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] (L : Arith.Language V) {pL : FirstOrder.Arith.LDef} [L.Defined pL] {n : V} (x : V) :

          Imported declaration from the Incompleteness formalization.

          Equations
          Instances For
            noncomputable def LO.Arith.Language.func {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] (L : Arith.Language V) {pL : FirstOrder.Arith.LDef} [L.Defined pL] {n k f : V} (hf : L.Func k f) (v : L.SemitermVec k n) :

            Imported declaration from the Incompleteness formalization.

            Equations
            Instances For
              @[reducible, inline]
              noncomputable abbrev LO.Arith.bv {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {n : V} (x : V) (h : x < n := by simp) :

              Imported declaration from the Incompleteness formalization.

              Equations
              Instances For
                @[reducible, inline]
                noncomputable abbrev LO.Arith.fv {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {n : V} (x : V) :

                Imported declaration from the Incompleteness formalization.

                Equations
                Instances For

                  Imported declaration from the Incompleteness formalization.

                  Equations
                  Instances For

                    Imported declaration from the Incompleteness formalization.

                    Equations
                    Instances For
                      @[simp]
                      theorem LO.Arith.Language.val_bvar {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {n : V} (z : V) (hz : z < n) :
                      (L.bvar z hz).val = qqBvar z
                      @[simp]
                      theorem LO.Arith.Language.val_fvar {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {n : V} (x : V) :
                      (L.fvar x).val = qqFvar x
                      noncomputable def LO.Arith.Language.Semiterm.cons {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {m n : V} (t : L.Semiterm n) (v : L.SemitermVec m n) :
                      L.SemitermVec (m + 1) n

                      Imported declaration from the Incompleteness formalization.

                      Equations
                      Instances For

                        Imported declaration from the Incompleteness formalization.

                        Equations
                        Instances For
                          @[simp]
                          theorem LO.Arith.Language.Semitermvec.val_cons {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {m n : V} (t : L.Semiterm n) (v : L.SemitermVec m n) :
                          (t.cons v).val = cons t.val v.val

                          Imported declaration from the Incompleteness formalization.

                          Equations
                          Instances For
                            @[reducible, inline]
                            noncomputable abbrev LO.Arith.Language.Semiterm.sing {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {n : V} (t : L.Semiterm n) :
                            L.SemitermVec (0 + 1) n

                            Imported declaration from the Incompleteness formalization.

                            Equations
                            Instances For
                              noncomputable def LO.Arith.Language.Semiterm.shift {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {n : V} (t : L.Semiterm n) :

                              Imported declaration from the Incompleteness formalization.

                              Equations
                              Instances For
                                noncomputable def LO.Arith.Language.Semiterm.bShift {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {n : V} (t : L.Semiterm n) :
                                L.Semiterm (n + 1)

                                Imported declaration from the Incompleteness formalization.

                                Equations
                                Instances For
                                  noncomputable def LO.Arith.Language.Semiterm.substs {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {n m : V} (t : L.Semiterm n) (w : L.SemitermVec n m) :

                                  Imported declaration from the Incompleteness formalization.

                                  Equations
                                  Instances For
                                    @[simp]
                                    @[simp]
                                    theorem LO.Arith.Language.Semiterm.val_substs {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {n m : V} (w : L.SemitermVec n m) (t : L.Semiterm n) :

                                    Imported declaration from the Incompleteness formalization.

                                    Equations
                                    • One or more equations did not get rendered due to their size.
                                    Instances For
                                      noncomputable def LO.Arith.Language.SemitermVec.shift {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {k n : V} (v : L.SemitermVec k n) :

                                      Imported declaration from the Incompleteness formalization.

                                      Equations
                                      Instances For
                                        noncomputable def LO.Arith.Language.SemitermVec.bShift {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {k n : V} (v : L.SemitermVec k n) :
                                        L.SemitermVec k (n + 1)

                                        Imported declaration from the Incompleteness formalization.

                                        Equations
                                        Instances For
                                          noncomputable def LO.Arith.Language.SemitermVec.substs {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {k n m : V} (v : L.SemitermVec k n) (w : L.SemitermVec n m) :

                                          Imported declaration from the Incompleteness formalization.

                                          Equations
                                          Instances For
                                            @[simp]
                                            @[simp]
                                            theorem LO.Arith.Language.SemitermVec.val_substs {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {k n m : V} (v : L.SemitermVec k n) (w : L.SemitermVec n m) :
                                            (v.substs w).val = L.termSubstVec k w.val v.val
                                            @[simp]
                                            theorem LO.Arith.Language.SemitermVec.bShift_nil {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] (n : V) :
                                            (nil L n).bShift = nil L (n + 1)
                                            @[simp]
                                            theorem LO.Arith.Language.SemitermVec.bShift_cons {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {n k : V} (t : L.Semiterm n) (v : L.SemitermVec k n) :
                                            @[simp]
                                            @[simp]
                                            theorem LO.Arith.Language.SemitermVec.shift_cons {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {n k : V} (t : L.Semiterm n) (v : L.SemitermVec k n) :
                                            @[simp]
                                            theorem LO.Arith.Language.SemitermVec.substs_nil {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {n m : V} (w : L.SemitermVec n m) :
                                            (nil L n).substs w = nil L m
                                            @[simp]
                                            theorem LO.Arith.Language.SemitermVec.substs_cons {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {n m k : V} (w : L.SemitermVec n m) (t : L.Semiterm n) (v : L.SemitermVec k n) :
                                            (t.cons v).substs w = t^ᵗ/[w].cons (v.substs w)
                                            noncomputable def LO.Arith.Language.SemitermVec.nth {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {k n : V} (t : L.SemitermVec k n) (i : V) (hi : i < k := by simp) :

                                            Imported declaration from the Incompleteness formalization.

                                            Equations
                                            Instances For
                                              @[simp]
                                              theorem LO.Arith.Language.SemitermVec.nth_val {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {k n : V} (v : L.SemitermVec k n) (i : V) (hi : i < k) :
                                              (v.nth i hi).val = Arith.nth v.val i
                                              @[simp]
                                              theorem LO.Arith.Language.SemitermVec.nth_zero {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {n k : V} (t : L.Semiterm n) (v : L.SemitermVec k n) :
                                              (t.cons v).nth 0 = t
                                              @[simp]
                                              theorem LO.Arith.Language.SemitermVec.nth_succ {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {n k : V} (t : L.Semiterm n) (v : L.SemitermVec k n) (i : V) (hi : i < k) :
                                              (t.cons v).nth (i + 1) = v.nth i hi
                                              @[simp]
                                              theorem LO.Arith.Language.SemitermVec.nth_one {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {n k : V} (t : L.Semiterm n) (v : L.SemitermVec (k + 1) n) :
                                              (t.cons v).nth 1 = v.nth 0
                                              theorem LO.Arith.Language.SemitermVec.nth_of_pos {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {n k : V} (t : L.Semiterm n) (v : L.SemitermVec k n) (i : V) (ipos : 0 < i) (hi : i < k + 1) :
                                              (t.cons v).nth i hi = v.nth (i - 1)
                                              noncomputable def LO.Arith.Language.SemitermVec.q {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {k n : V} (w : L.SemitermVec k n) :
                                              L.SemitermVec (k + 1) (n + 1)

                                              Imported declaration from the Incompleteness formalization.

                                              Equations
                                              Instances For
                                                @[simp]
                                                theorem LO.Arith.Language.SemitermVec.q_zero {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {k n : V} (w : L.SemitermVec k n) :
                                                w.q.nth 0 = L.bvar 0
                                                @[simp]
                                                theorem LO.Arith.Language.SemitermVec.q_succ {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {k n : V} (w : L.SemitermVec k n) {i : V} (hi : i < k) :
                                                w.q.nth (i + 1) = (w.nth i hi).bShift
                                                @[simp]
                                                theorem LO.Arith.Language.SemitermVec.q_one {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {k n : V} (w : L.SemitermVec k n) (h : 0 < k) :
                                                w.q.nth 1 = (w.nth 0 h).bShift
                                                theorem LO.Arith.Language.SemitermVec.q_of_pos {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {k n : V} (w : L.SemitermVec k n) (i : V) (ipos : 0 < i) (hi : i < k + 1) :
                                                w.q.nth i hi = (w.nth (i - 1) ).bShift
                                                @[simp]
                                                @[simp]
                                                theorem LO.Arith.Language.Semiterm.shift_bvar {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {z n : V} (hz : z < n) :
                                                (L.bvar z hz).shift = L.bvar z hz
                                                @[simp]
                                                theorem LO.Arith.Language.Semiterm.shift_fvar {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {n : V} (x : V) :
                                                (L.fvar x).shift = L.fvar (x + 1)
                                                @[simp]
                                                theorem LO.Arith.Language.Semiterm.shift_func {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {n k f : V} (hf : L.Func k f) (v : L.SemitermVec k n) :
                                                (L.func hf v).shift = L.func hf v.shift
                                                @[simp]
                                                theorem LO.Arith.Language.Semiterm.bShift_bvar {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {z n : V} (hz : z < n) :
                                                (L.bvar z hz).bShift = L.bvar (z + 1)
                                                @[simp]
                                                theorem LO.Arith.Language.Semiterm.bShift_fvar {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {n : V} (x : V) :
                                                (L.fvar x).bShift = L.fvar x
                                                @[simp]
                                                theorem LO.Arith.Language.Semiterm.bShift_func {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {n k f : V} (hf : L.Func k f) (v : L.SemitermVec k n) :
                                                (L.func hf v).bShift = L.func hf v.bShift
                                                @[simp]
                                                theorem LO.Arith.Language.Semiterm.substs_bvar {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {n z m : V} (w : L.SemitermVec n m) (hz : z < n) :
                                                (L.bvar z hz)^ᵗ/[w] = w.nth z hz
                                                @[simp]
                                                theorem LO.Arith.Language.Semiterm.substs_fvar {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {n m : V} (w : L.SemitermVec n m) (x : V) :
                                                (L.fvar x)^ᵗ/[w] = L.fvar x
                                                @[simp]
                                                theorem LO.Arith.Language.Semiterm.substs_func {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {n m k f : V} (w : L.SemitermVec n m) (hf : L.Func k f) (v : L.SemitermVec k n) :
                                                (L.func hf v)^ᵗ/[w] = L.func hf (v.substs w)

                                                Imported declaration from the Incompleteness formalization.

                                                Equations
                                                Instances For
                                                  @[simp]
                                                  theorem LO.Arith.Language.Semiterm.FVFree.bvar {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {L : Arith.Language V} {pL : FirstOrder.Arith.LDef} [L.Defined pL] {n : V} (z : V) (h : z < n) :
                                                  (L.bvar z h).FVFree
                                                  @[simp]

                                                  Imported declaration from the Incompleteness formalization.

                                                  Equations
                                                  Instances For
                                                    noncomputable def LO.Arith.Formalized.add {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {n : V} (t u : ⌜ℒₒᵣ⌝.Semiterm n) :

                                                    Imported declaration from the Incompleteness formalization.

                                                    Equations
                                                    Instances For
                                                      noncomputable def LO.Arith.Formalized.mul {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {n : V} (t u : ⌜ℒₒᵣ⌝.Semiterm n) :

                                                      Imported declaration from the Incompleteness formalization.

                                                      Equations
                                                      Instances For
                                                        @[implicit_reducible]
                                                        noncomputable instance LO.Arith.Formalized.coeNumeral {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] (n : V) :
                                                        Equations
                                                        @[simp]
                                                        theorem LO.Arith.Formalized.val_numeral {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {n : V} (x : V) :
                                                        @[simp]
                                                        theorem LO.Arith.Formalized.val_add {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {n : V} (t₁ t₂ : ⌜ℒₒᵣ⌝.Semiterm n) :
                                                        (t₁ + t₂).val = t₁.val ^+ t₂.val
                                                        @[simp]
                                                        theorem LO.Arith.Formalized.val_mul {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {n : V} (t₁ t₂ : ⌜ℒₒᵣ⌝.Semiterm n) :
                                                        (t₁ * t₂).val = t₁.val ^* t₂.val
                                                        @[simp]
                                                        theorem LO.Arith.Formalized.add_inj_iff {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {n : V} {t₁ t₂ u₁ u₂ : ⌜ℒₒᵣ⌝.Semiterm n} :
                                                        t₁ + t₂ = u₁ + u₂ t₁ = u₁ t₂ = u₂
                                                        @[simp]
                                                        theorem LO.Arith.Formalized.mul_inj_iff {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {n : V} {t₁ t₂ u₁ u₂ : ⌜ℒₒᵣ⌝.Semiterm n} :
                                                        t₁ * t₂ = u₁ * u₂ t₁ = u₁ t₂ = u₂
                                                        @[simp]
                                                        theorem LO.Arith.Formalized.subst_add {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {m n : V} (w : ⌜ℒₒᵣ⌝.SemitermVec n m) (t₁ t₂ : ⌜ℒₒᵣ⌝.Semiterm n) :
                                                        (t₁ + t₂)^ᵗ/[w] = t₁^ᵗ/[w] + t₂^ᵗ/[w]
                                                        @[simp]
                                                        theorem LO.Arith.Formalized.subst_mul {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {m n : V} (w : ⌜ℒₒᵣ⌝.SemitermVec n m) (t₁ t₂ : ⌜ℒₒᵣ⌝.Semiterm n) :
                                                        (t₁ * t₂)^ᵗ/[w] = t₁^ᵗ/[w] * t₂^ᵗ/[w]
                                                        @[simp]
                                                        theorem LO.Arith.Formalized.shift_numeral {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {n : V} (x : V) :
                                                        @[simp]
                                                        theorem LO.Arith.Formalized.shift_add {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {n : V} (t₁ t₂ : ⌜ℒₒᵣ⌝.Semiterm n) :
                                                        (t₁ + t₂).shift = t₁.shift + t₂.shift
                                                        @[simp]
                                                        theorem LO.Arith.Formalized.shift_mul {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {n : V} (t₁ t₂ : ⌜ℒₒᵣ⌝.Semiterm n) :
                                                        (t₁ * t₂).shift = t₁.shift * t₂.shift
                                                        @[simp]
                                                        theorem LO.Arith.Formalized.bShift_numeral {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {n : V} (x : V) :
                                                        @[simp]
                                                        theorem LO.Arith.Formalized.bShift_add {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {n : V} (t₁ t₂ : ⌜ℒₒᵣ⌝.Semiterm n) :
                                                        (t₁ + t₂).bShift = t₁.bShift + t₂.bShift
                                                        @[simp]
                                                        theorem LO.Arith.Formalized.bShift_mul {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {n : V} (t₁ t₂ : ⌜ℒₒᵣ⌝.Semiterm n) :
                                                        (t₁ * t₂).bShift = t₁.bShift * t₂.bShift
                                                        @[simp]
                                                        theorem LO.Arith.Formalized.fvFree_numeral {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {n : V} (x : V) :
                                                        @[simp]
                                                        theorem LO.Arith.Formalized.fvFree_add {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {n : V} (t₁ t₂ : ⌜ℒₒᵣ⌝.Semiterm n) :
                                                        (t₁ + t₂).FVFree t₁.FVFree t₂.FVFree
                                                        @[simp]
                                                        theorem LO.Arith.Formalized.fvFree_mul {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈Sg1] {n : V} (t₁ t₂ : ⌜ℒₒᵣ⌝.Semiterm n) :
                                                        (t₁ * t₂).FVFree t₁.FVFree t₂.FVFree