Documentation

Foundation.FirstOrder.Arithmetic.Bootstrapping.Syntax.Term.Basic

Equations
  • One or more equations did not get rendered due to their size.
Instances For
    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        @[simp]
        theorem FFL.FirstOrder.Arithmetic.Bootstrapping.qqFunc_inj {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] {k f v k' f' w : V} :
        qqFunc k f v = qqFunc k' f' w ↔ k = k' ∧ f = f' ∧ v = w
        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              Equations
              • One or more equations did not get rendered due to their size.
              Instances For
                Equations
                • One or more equations did not get rendered due to their size.
                Instances For

                  Note: noncomputable attribute to prohibit compilation of a large term. This is necessary for Zoo and integration with Verso.

                  Equations
                  Instances For
                    Equations
                    • One or more equations did not get rendered due to their size.
                    Instances For
                      theorem FFL.FirstOrder.Arithmetic.Bootstrapping.IsUTermVec.two_iff {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] {L : Language} [L.Encodable] [L.LORDefinable] {v : V} :
                      IsUTermVec L 2 v ↔ ∃ (t₁ : V) (t₂ : V), IsUTerm L t₁ ∧ IsUTerm L t₂ ∧ v = ?[t₁, t₂]
                      theorem FFL.FirstOrder.Arithmetic.Bootstrapping.IsUTerm.case_iff {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] {L : Language} [L.Encodable] [L.LORDefinable] {t : V} :
                      IsUTerm L t ↔ (∃ (z : V), t = qqBvar z) ∨ (∃ (x : V), t = qqFvar x) ∨ ∃ (k : V) (f : V) (v : V), L.IsFunc k f ∧ IsUTermVec L k v ∧ t = qqFunc k f v
                      theorem FFL.FirstOrder.Arithmetic.Bootstrapping.IsUTerm.mk {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] {L : Language} [L.Encodable] [L.LORDefinable] {t : V} :
                      ((∃ (z : V), t = qqBvar z) ∨ (∃ (x : V), t = qqFvar x) ∨ ∃ (k : V) (f : V) (v : V), L.IsFunc k f ∧ IsUTermVec L k v ∧ t = qqFunc k f v) → IsUTerm L t

                      Alias of the reverse direction of FFL.FirstOrder.Arithmetic.Bootstrapping.IsUTerm.case_iff.

                      theorem FFL.FirstOrder.Arithmetic.Bootstrapping.IsUTerm.case {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] {L : Language} [L.Encodable] [L.LORDefinable] {t : V} :
                      IsUTerm L t → (∃ (z : V), t = qqBvar z) ∨ (∃ (x : V), t = qqFvar x) ∨ ∃ (k : V) (f : V) (v : V), L.IsFunc k f ∧ IsUTermVec L k v ∧ t = qqFunc k f v

                      Alias of the forward direction of FFL.FirstOrder.Arithmetic.Bootstrapping.IsUTerm.case_iff.

                      theorem FFL.FirstOrder.Arithmetic.Bootstrapping.IsUTerm.induction {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] {L : Language} [L.Encodable] [L.LORDefinable] (Γ : SigmaPiDelta) {P : V → Prop} (hP : { Γ := Γ, rank := 1 }-Predicate P) (hbvar : ∀ (z : V), P (qqBvar z)) (hfvar : ∀ (x : V), P (qqFvar x)) (hfunc : ∀ (k f v : V), L.IsFunc k f → IsUTermVec L k v → (∀ i < k, P (nth v i)) → P (qqFunc k f v)) (t : V) :
                      IsUTerm L t → P t
                      Instances For
                        Equations
                        • One or more equations did not get rendered due to their size.
                        Instances For
                          Equations
                          • One or more equations did not get rendered due to their size.
                          Instances For
                            Equations
                            • One or more equations did not get rendered due to their size.
                            Instances For
                              Equations
                              • One or more equations did not get rendered due to their size.
                              Instances For
                                Instances For
                                  def FFL.FirstOrder.Arithmetic.Bootstrapping.Language.TermRec.Construction.Phi {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] (L : Language) [L.Encodable] [L.LORDefinable] {arity : ℕ} {β : Blueprint arity} (c : Construction V β) (param : Fin arity → V) (C : Set V) (pr : V) :
                                  Equations
                                  • One or more equations did not get rendered due to their size.
                                  Instances For
                                    theorem FFL.FirstOrder.Arithmetic.Bootstrapping.Language.TermRec.Construction.seq_bound {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] {k s m : V} (Ss : Seq s) (hk : k = lh s) (hs : ∀ (i z : V), ⟪i, z⟫ ∈ s → z < m) :
                                    s < Exp.exp ((k + m + 1) ^ 2)
                                    @[simp]

                                    TODO: move

                                    Equations
                                    • One or more equations did not get rendered due to their size.
                                    Instances For
                                      Equations
                                      • One or more equations did not get rendered due to their size.
                                      Instances For
                                        theorem FFL.FirstOrder.Arithmetic.Bootstrapping.Language.TermRec.Construction.Graph.case_iff {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] {L : Language} [L.Encodable] [L.LORDefinable] {arity : ℕ} {β : Blueprint arity} {c : Construction V β} {param : Fin arity → V} {t y : V} :
                                        Graph L c param t y ↔ IsUTerm L t ∧ ((∃ (z : V), t = qqBvar z ∧ y = c.bvar param z) ∨ (∃ (x : V), t = qqFvar x ∧ y = c.fvar param x) ∨ ∃ (k : V) (f : V) (v : V) (w : V), (k = len w ∧ ∀ i < k, Graph L c param (nth v i) (nth w i)) ∧ t = qqFunc k f v ∧ y = c.func param k f v w)
                                        theorem FFL.FirstOrder.Arithmetic.Bootstrapping.Language.TermRec.Construction.graph_defined {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] {L : Language} [L.Encodable] [L.LORDefinable] {arity : ℕ} {β : Blueprint arity} (c : Construction V β) :
                                        HierarchySymbol.Defined (fun (v : Fin (arity + 1 + 1) → V) => Graph L c (fun (x : Fin arity) => v x.succ.succ) (v 0) (v 1)) (Blueprint.graph L β)
                                        @[simp]
                                        theorem FFL.FirstOrder.Arithmetic.Bootstrapping.Language.TermRec.Construction.eval_graphDef {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] {L : Language} [L.Encodable] [L.LORDefinable] {arity : ℕ} {β : Blueprint arity} (c : Construction V β) (v : Fin (arity + 2) → V) :
                                        (Semiformula.Evalb v) ↑(Blueprint.graph L β) ↔ Graph L c (fun (x : Fin arity) => v x.succ.succ) (v 0) (v 1)
                                        instance FFL.FirstOrder.Arithmetic.Bootstrapping.Language.TermRec.Construction.graph_definable {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] {L : Language} [L.Encodable] [L.LORDefinable] {arity : ℕ} {β : Blueprint arity} (c : Construction V β) :
                                        𝚺₁.Definable fun (v : Fin (arity + 1 + 1) → V) => Graph L c (fun (x : Fin arity) => v x.succ.succ) (v 0) (v 1)
                                        theorem FFL.FirstOrder.Arithmetic.Bootstrapping.Language.TermRec.Construction.graph_dom_isUTerm {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] {L : Language} [L.Encodable] [L.LORDefinable] {arity : ℕ} {β : Blueprint arity} (c : Construction V β) {param : Fin arity → V} {t y : V} :
                                        Graph L c param t y → IsUTerm L t
                                        theorem FFL.FirstOrder.Arithmetic.Bootstrapping.Language.TermRec.Construction.graph_bvar_iff {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] {L : Language} [L.Encodable] [L.LORDefinable] {arity : ℕ} {β : Blueprint arity} (c : Construction V β) {param : Fin arity → V} {y z : V} :
                                        Graph L c param (qqBvar z) y ↔ y = c.bvar param z
                                        theorem FFL.FirstOrder.Arithmetic.Bootstrapping.Language.TermRec.Construction.graph_fvar_iff {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] {L : Language} [L.Encodable] [L.LORDefinable] {arity : ℕ} {β : Blueprint arity} (c : Construction V β) {param : Fin arity → V} {y : V} (x : V) :
                                        Graph L c param (qqFvar x) y ↔ y = c.fvar param x
                                        theorem FFL.FirstOrder.Arithmetic.Bootstrapping.Language.TermRec.Construction.graph_func {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] {L : Language} [L.Encodable] [L.LORDefinable] {arity : ℕ} {β : Blueprint arity} (c : Construction V β) {param : Fin arity → V} {k f v w : V} (hkr : L.IsFunc k f) (hv : IsUTermVec L k v) (hkw : k = len w) (hw : ∀ i < k, Graph L c param (nth v i) (nth w i)) :
                                        Graph L c param (qqFunc k f v) (c.func param k f v w)
                                        theorem FFL.FirstOrder.Arithmetic.Bootstrapping.Language.TermRec.Construction.graph_func_inv {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] {L : Language} [L.Encodable] [L.LORDefinable] {arity : ℕ} {β : Blueprint arity} (c : Construction V β) {param : Fin arity → V} {k f v y : V} :
                                        Graph L c param (qqFunc k f v) y → ∃ (w : V), (k = len w ∧ ∀ i < k, Graph L c param (nth v i) (nth w i)) ∧ y = c.func param k f v w
                                        theorem FFL.FirstOrder.Arithmetic.Bootstrapping.Language.TermRec.Construction.graph_exists {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] {L : Language} [L.Encodable] [L.LORDefinable] {arity : ℕ} {β : Blueprint arity} {c : Construction V β} (param : Fin arity → V) {t : V} :
                                        IsUTerm L t → ∃ (y : V), Graph L c param t y
                                        theorem FFL.FirstOrder.Arithmetic.Bootstrapping.Language.TermRec.Construction.graph_unique {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] {L : Language} [L.Encodable] [L.LORDefinable] {arity : ℕ} {β : Blueprint arity} {c : Construction V β} (param : Fin arity → V) {t y₁ y₂ : V} :
                                        Graph L c param t y₁ → Graph L c param t y₂ → y₁ = y₂
                                        theorem FFL.FirstOrder.Arithmetic.Bootstrapping.Language.TermRec.Construction.graph_existsUnique {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] (L : Language) [L.Encodable] [L.LORDefinable] {arity : ℕ} {β : Blueprint arity} (c : Construction V β) (param : Fin arity → V) {t : V} (ht : IsUTerm L t) :
                                        ∃! y : V, Graph L c param t y
                                        theorem FFL.FirstOrder.Arithmetic.Bootstrapping.Language.TermRec.Construction.graph_existsUnique_total {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] (L : Language) [L.Encodable] [L.LORDefinable] {arity : ℕ} {β : Blueprint arity} (c : Construction V β) (param : Fin arity → V) (t : V) :
                                        ∃! y : V, (IsUTerm L t → Graph L c param t y) ∧ (¬IsUTerm L t → y = 0)
                                        theorem FFL.FirstOrder.Arithmetic.Bootstrapping.Language.TermRec.Construction.result_prop {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] (L : Language) [L.Encodable] [L.LORDefinable] {arity : ℕ} {β : Blueprint arity} (c : Construction V β) (param : Fin arity → V) {t : V} (ht : IsUTerm L t) :
                                        Graph L c param t (result L c param t)
                                        theorem FFL.FirstOrder.Arithmetic.Bootstrapping.Language.TermRec.Construction.result_prop_not {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] (L : Language) [L.Encodable] [L.LORDefinable] {arity : ℕ} {β : Blueprint arity} (c : Construction V β) (param : Fin arity → V) {t : V} (ht : ¬IsUTerm L t) :
                                        result L c param t = 0
                                        theorem FFL.FirstOrder.Arithmetic.Bootstrapping.Language.TermRec.Construction.result_eq_of_graph {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] {L : Language} [L.Encodable] [L.LORDefinable] {arity : ℕ} {β : Blueprint arity} {c : Construction V β} {param : Fin arity → V} {t y : V} (ht : IsUTerm L t) (h : Graph L c param t y) :
                                        result L c param t = y
                                        @[simp]
                                        theorem FFL.FirstOrder.Arithmetic.Bootstrapping.Language.TermRec.Construction.result_bvar {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] {L : Language} [L.Encodable] [L.LORDefinable] {arity : ℕ} {β : Blueprint arity} {c : Construction V β} {param : Fin arity → V} (z : V) :
                                        result L c param (qqBvar z) = c.bvar param z
                                        @[simp]
                                        theorem FFL.FirstOrder.Arithmetic.Bootstrapping.Language.TermRec.Construction.result_fvar {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] {L : Language} [L.Encodable] [L.LORDefinable] {arity : ℕ} {β : Blueprint arity} {c : Construction V β} {param : Fin arity → V} (x : V) :
                                        result L c param (qqFvar x) = c.fvar param x
                                        theorem FFL.FirstOrder.Arithmetic.Bootstrapping.Language.TermRec.Construction.result_func {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] {L : Language} [L.Encodable] [L.LORDefinable] {arity : ℕ} {β : Blueprint arity} {c : Construction V β} {param : Fin arity → V} {k f v w : V} (hkf : L.IsFunc k f) (hv : IsUTermVec L k v) (hkw : k = len w) (hw : ∀ i < k, result L c param (nth v i) = nth w i) :
                                        result L c param (qqFunc k f v) = c.func param k f v w
                                        theorem FFL.FirstOrder.Arithmetic.Bootstrapping.Language.TermRec.Construction.graph_existsUnique_vec {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] {L : Language} [L.Encodable] [L.LORDefinable] {arity : ℕ} {β : Blueprint arity} {c : Construction V β} {param : Fin arity → V} {k w : V} (hw : IsUTermVec L k w) :
                                        ∃! w' : V, k = len w' ∧ ∀ i < k, Graph L c param (nth w i) (nth w' i)
                                        theorem FFL.FirstOrder.Arithmetic.Bootstrapping.Language.TermRec.Construction.graph_existsUnique_vec_total {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] (L : Language) [L.Encodable] [L.LORDefinable] {arity : ℕ} {β : Blueprint arity} (c : Construction V β) (param : Fin arity → V) (k w : V) :
                                        ∃! w' : V, (IsUTermVec L k w → k = len w' ∧ ∀ i < k, Graph L c param (nth w i) (nth w' i)) ∧ (¬IsUTermVec L k w → w' = 0)
                                        @[simp]
                                        theorem FFL.FirstOrder.Arithmetic.Bootstrapping.Language.TermRec.Construction.resultVec_lh {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] (L : Language) [L.Encodable] [L.LORDefinable] {arity : ℕ} {β : Blueprint arity} (c : Construction V β) (param : Fin arity → V) {k w : V} (hw : IsUTermVec L k w) :
                                        len (resultVec L c param k w) = k
                                        theorem FFL.FirstOrder.Arithmetic.Bootstrapping.Language.TermRec.Construction.graph_of_mem_resultVec {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] (L : Language) [L.Encodable] [L.LORDefinable] {arity : ℕ} {β : Blueprint arity} (c : Construction V β) (param : Fin arity → V) {k w : V} (hw : IsUTermVec L k w) {i : V} (hi : i < k) :
                                        Graph L c param (nth w i) (nth (resultVec L c param k w) i)
                                        theorem FFL.FirstOrder.Arithmetic.Bootstrapping.Language.TermRec.Construction.nth_resultVec {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] (L : Language) [L.Encodable] [L.LORDefinable] {arity : ℕ} {β : Blueprint arity} (c : Construction V β) (param : Fin arity → V) {k w i : V} (hw : IsUTermVec L k w) (hi : i < k) :
                                        nth (resultVec L c param k w) i = result L c param (nth w i)
                                        @[simp]
                                        theorem FFL.FirstOrder.Arithmetic.Bootstrapping.Language.TermRec.Construction.resultVec_of_not {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] (L : Language) [L.Encodable] [L.LORDefinable] {arity : ℕ} {β : Blueprint arity} (c : Construction V β) (param : Fin arity → V) {k w : V} (hw : ¬IsUTermVec L k w) :
                                        resultVec L c param k w = 0
                                        theorem FFL.FirstOrder.Arithmetic.Bootstrapping.Language.TermRec.Construction.resultVec_cons {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] (L : Language) [L.Encodable] [L.LORDefinable] {arity : ℕ} {β : Blueprint arity} (c : Construction V β) (param : Fin arity → V) {k w t : V} (hw : IsUTermVec L k w) (ht : IsUTerm L t) :
                                        resultVec L c param (k + 1) (adjoin t w) = adjoin (result L c param t) (resultVec L c param k w)
                                        @[simp]
                                        theorem FFL.FirstOrder.Arithmetic.Bootstrapping.Language.TermRec.Construction.result_func' {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] {L : Language} [L.Encodable] [L.LORDefinable] {arity : ℕ} {β : Blueprint arity} (c : Construction V β) {param : Fin arity → V} {k f v : V} (hkf : L.IsFunc k f) (hv : IsUTermVec L k v) :
                                        result L c param (qqFunc k f v) = c.func param k f v (resultVec L c param k v)
                                        @[simp]
                                        theorem FFL.FirstOrder.Arithmetic.Bootstrapping.Language.TermRec.Construction.result_graphDef {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] {L : Language} [L.Encodable] [L.LORDefinable] {arity : ℕ} {β : Blueprint arity} (c : Construction V β) (v : Fin (arity + 2) → V) :
                                        (Semiformula.Evalb v) ↑(Blueprint.result L β) ↔ v 0 = result L c (fun (x : Fin arity) => v x.succ.succ) (v 1)
                                        theorem FFL.FirstOrder.Arithmetic.Bootstrapping.Language.TermRec.Construction.eval_resultVec {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] {L : Language} [L.Encodable] [L.LORDefinable] {arity : ℕ} {β : Blueprint arity} (c : Construction V β) (v : Fin (arity + 3) → V) :
                                        (Semiformula.Evalb v) ↑(Blueprint.resultVec L β) ↔ v 0 = resultVec L c (fun (x : Fin arity) => v x.succ.succ.succ) (v 1) (v 2)
                                        Equations
                                        • One or more equations did not get rendered due to their size.
                                        Instances For
                                          Equations
                                          • One or more equations did not get rendered due to their size.
                                          Instances For
                                            Equations
                                            • One or more equations did not get rendered due to their size.
                                            Instances For
                                              Equations
                                              • One or more equations did not get rendered due to their size.
                                              Instances For
                                                Equations
                                                • One or more equations did not get rendered due to their size.
                                                Instances For
                                                  @[simp]
                                                  @[simp]
                                                  theorem FFL.FirstOrder.Arithmetic.Bootstrapping.nth_termBVVec {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] {L : Language} [L.Encodable] [L.LORDefinable] {k v : V} (hv : IsUTermVec L k v) {i : V} (hi : i < k) :
                                                  nth (termBVVec L k v) i = termBV L (nth v i)
                                                  Instances
                                                    Equations
                                                    • One or more equations did not get rendered due to their size.
                                                    Instances For
                                                      Equations
                                                      • One or more equations did not get rendered due to their size.
                                                      Instances For
                                                        theorem FFL.FirstOrder.Arithmetic.Bootstrapping.IsSemiterm.case_iff {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] {L : Language} [L.Encodable] [L.LORDefinable] {n t : V} :
                                                        IsSemiterm L n t ↔ (∃ z < n, t = qqBvar z) ∨ (∃ (x : V), t = qqFvar x) ∨ ∃ (k : V) (f : V) (v : V), L.IsFunc k f ∧ IsSemitermVec L k n v ∧ t = qqFunc k f v
                                                        theorem FFL.FirstOrder.Arithmetic.Bootstrapping.IsSemiterm.mk' {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] {L : Language} [L.Encodable] [L.LORDefinable] {n t : V} :
                                                        ((∃ z < n, t = qqBvar z) ∨ (∃ (x : V), t = qqFvar x) ∨ ∃ (k : V) (f : V) (v : V), L.IsFunc k f ∧ IsSemitermVec L k n v ∧ t = qqFunc k f v) → IsSemiterm L n t

                                                        Alias of the reverse direction of FFL.FirstOrder.Arithmetic.Bootstrapping.IsSemiterm.case_iff.

                                                        theorem FFL.FirstOrder.Arithmetic.Bootstrapping.IsSemiterm.case {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] {L : Language} [L.Encodable] [L.LORDefinable] {n t : V} :
                                                        IsSemiterm L n t → (∃ z < n, t = qqBvar z) ∨ (∃ (x : V), t = qqFvar x) ∨ ∃ (k : V) (f : V) (v : V), L.IsFunc k f ∧ IsSemitermVec L k n v ∧ t = qqFunc k f v

                                                        Alias of the forward direction of FFL.FirstOrder.Arithmetic.Bootstrapping.IsSemiterm.case_iff.

                                                        theorem FFL.FirstOrder.Arithmetic.Bootstrapping.IsSemiterm.induction {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] {L : Language} [L.Encodable] [L.LORDefinable] {n : V} (Γ : SigmaPiDelta) {P : V → Prop} (hP : { Γ := Γ, rank := 1 }-Predicate P) (hbvar : ∀ z < n, P (qqBvar z)) (hfvar : ∀ (x : V), P (qqFvar x)) (hfunc : ∀ (k f v : V), L.IsFunc k f → IsSemitermVec L k n v → (∀ i < k, P (nth v i)) → P (qqFunc k f v)) (t : V) :
                                                        IsSemiterm L n t → P t
                                                        theorem FFL.FirstOrder.Arithmetic.Bootstrapping.IsSemiterm.sigma1_induction {V : Type u_1} [ORingStructure V] [V↓[ℒₒᵣ] ⊧* 𝗜𝚺₁] {L : Language} [L.Encodable] [L.LORDefinable] {n : V} {P : V → Prop} (hP : 𝚺₁-Predicate P) (hbvar : ∀ z < n, P (qqBvar z)) (hfvar : ∀ (x : V), P (qqFvar x)) (hfunc : ∀ (k f v : V), L.IsFunc k f → IsSemitermVec L k n v → (∀ i < k, P (nth v i)) → P (qqFunc k f v)) (t : V) :
                                                        IsSemiterm L n t → P t