Documentation

Foundation.FirstOrder.ISigma1.HFS.Seq

Sequence #

def LO.ISigma1.Seq {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] (s : V) :
Equations
Instances For
    def LO.ISigma1.Seq.isMapping {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {s : V} (h : Seq s) :
    Equations
    • =
    Instances For
      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        @[simp]
        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          theorem LO.ISigma1.lh_exists_uniq {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] (s : V) :
          ∃! l : V, (Seq sdomain s = under l) (¬Seq sl = 0)
          noncomputable def LO.ISigma1.lh {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] (s : V) :
          V
          Equations
          Instances For
            theorem LO.ISigma1.lh_prop {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] (s : V) :
            (Seq sdomain s = under (lh s)) (¬Seq slh s = 0)
            theorem LO.ISigma1.lh_prop_of_not_seq {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {s : V} (h : ¬Seq s) :
            lh s = 0
            theorem LO.ISigma1.Seq.domain_eq {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {s : V} (h : Seq s) :
            @[simp]
            theorem LO.ISigma1.lh_bound {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] (s : V) :
            lh s 2 * s
            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              @[simp]
              theorem LO.ISigma1.lh_defined_iff {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] (v : Fin 2V) :
              theorem LO.ISigma1.Seq.exists {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {s : V} (h : Seq s) {x : V} (hx : x < lh s) :
              ∃ (y : V), x, y s
              theorem LO.ISigma1.Seq.nth_exists_uniq {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {s : V} (h : Seq s) {x : V} (hx : x < lh s) :
              ∃! y : V, x, y s
              noncomputable def LO.ISigma1.Seq.nth {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {s : V} (h : Seq s) {x : V} (hx : x < lh s) :
              V
              Equations
              Instances For
                @[simp]
                theorem LO.ISigma1.Seq.nth_mem {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {s : V} (h : Seq s) {x : V} (hx : x < lh s) :
                x, h.nth hx s
                theorem LO.ISigma1.Seq.nth_uniq {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {s : V} (h : Seq s) {x y : V} (hx : x < lh s) (hy : x, y s) :
                y = h.nth hx
                @[simp]
                theorem LO.ISigma1.Seq.nth_lt {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {s : V} (h : Seq s) {x : V} (hx : x < lh s) :
                h.nth hx < s
                theorem LO.ISigma1.Seq.lh_eq_of {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {s : V} (H : Seq s) {l : V} (h : domain s = under l) :
                lh s = l
                theorem LO.ISigma1.Seq.lt_lh_iff {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {s : V} (h : Seq s) {i : V} :
                i < lh s i domain s
                theorem LO.ISigma1.Seq.lt_lh_of_mem {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {s : V} (h : Seq s) {i x : V} (hix : i, x s) :
                i < lh s
                noncomputable def LO.ISigma1.seqCons {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] (s x : V) :
                V
                Equations
                Instances For
                  def LO.ISigma1.znth_existsUnique {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] (s i : V) :
                  ∃! x : V, (Seq s i < lh si, x s) (¬(Seq s i < lh s) → x = 0)
                  Equations
                  • =
                  Instances For
                    noncomputable def LO.ISigma1.znth {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] (s i : V) :
                    V
                    Equations
                    Instances For
                      theorem LO.ISigma1.Seq.znth {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {s i : V} (h : Seq s) (hi : i < lh s) :
                      theorem LO.ISigma1.Seq.znth_eq_of_mem {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {x s i : V} (h : Seq s) (hi : i, x s) :
                      znth s i = x
                      theorem LO.ISigma1.znth_prop_not {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {s i : V} (h : ¬Seq s lh s i) :
                      znth s i = 0
                      Equations
                      • One or more equations did not get rendered due to their size.
                      Instances For
                        @[simp]
                        theorem LO.ISigma1.eval_znthDef {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] (v : Fin 3V) :
                        @[simp]
                        theorem LO.ISigma1.Seq.isempty_of_lh_eq_zero {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {s : V} (Hs : Seq s) (h : lh s = 0) :
                        s =
                        @[simp]
                        theorem LO.ISigma1.Seq.subset_seqCons {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] (s x : V) :
                        s s ⁀' x
                        theorem LO.ISigma1.Seq.lt_seqCons {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {s : V} (hs : Seq s) (x : V) :
                        s < s ⁀' x
                        @[simp]
                        theorem LO.ISigma1.Seq.mem_seqCons {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] (s x : V) :
                        theorem LO.ISigma1.Seq.seqCons {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {s : V} (h : Seq s) (x : V) :
                        Seq (s ⁀' x)
                        @[simp]
                        theorem LO.ISigma1.Seq.lh_seqCons {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] (x : V) {s : V} (h : Seq s) :
                        lh (s ⁀' x) = lh s + 1
                        theorem LO.ISigma1.mem_seqCons_iff {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {i x z s : V} :
                        i, x s ⁀' z i = lh s x = z i, x s
                        @[simp]
                        theorem LO.ISigma1.lh_mem_seqCons {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] (s z : V) :
                        @[simp]
                        theorem LO.ISigma1.lh_mem_seqCons_iff {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {s x z : V} (H : Seq s) :
                        lh s, x s ⁀' z x = z
                        theorem LO.ISigma1.Seq.mem_seqCons_iff_of_lt {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {i s x z : V} (hi : i < lh s) :
                        @[simp]
                        theorem LO.ISigma1.lh_not_mem {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {s : V} (Ss : Seq s) (x : V) :
                        lh s, xs
                        theorem LO.ISigma1.seqCons_graph {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] (t x s : V) :
                        t = s ⁀' x l2 * s, l = lh s p ≤ (2 * s + x + 1) ^ 2, p = l, x t = insert p s
                        Equations
                        • One or more equations did not get rendered due to their size.
                        Instances For
                          @[simp]
                          theorem LO.ISigma1.seqCons_absolute {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] (s a : ) :
                          ↑(s ⁀' a) = s ⁀' a
                          theorem LO.ISigma1.Seq.restr {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {s : V} (H : Seq s) {i : V} (hi : i lh s) :
                          theorem LO.ISigma1.Seq.restr_lh {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {s : V} (H : Seq s) {i : V} (hi : i lh s) :
                          theorem LO.ISigma1.Seq.eq_of_eq_of_subset {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {s₁ s₂ : V} (H₁ : Seq s₁) (H₂ : Seq s₂) (hl : lh s₁ = lh s₂) (h : s₁ s₂) :
                          s₁ = s₂
                          theorem LO.ISigma1.subset_pair {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {s t : V} (h : ∀ (i x : V), i, x si, x t) :
                          s t
                          theorem LO.ISigma1.Seq.lh_ext {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {s₁ s₂ : V} (H₁ : Seq s₁) (H₂ : Seq s₂) (h : lh s₁ = lh s₂) (H : ∀ (i x₁ x₂ : V), i, x₁ s₁i, x₂ s₂x₁ = x₂) :
                          s₁ = s₂
                          @[simp]
                          theorem LO.ISigma1.Seq.seqCons_ext {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {a₁ a₂ s₁ s₂ : V} (H₁ : Seq s₁) (H₂ : Seq s₂) :
                          s₁ ⁀' a₁ = s₂ ⁀' a₂ a₁ = a₂ s₁ = s₂
                          theorem LO.ISigma1.ne_zero_iff_one_le {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {a : V} :
                          a 0 1 a

                          TODO: move to Lemmata.lean

                          theorem LO.ISigma1.Seq.cases_iff {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {s : V} :
                          Seq s s = ∃ (x : V) (s' : V), Seq s' s = s' ⁀' x
                          theorem LO.ISigma1.Seq.cases {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {s : V} :
                          Seq ss = ∃ (x : V) (s' : V), Seq s' s = s' ⁀' x

                          Alias of the forward direction of LO.ISigma1.Seq.cases_iff.

                          theorem LO.ISigma1.seq_induction {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] (Γ : SigmaPiDelta) {P : VProp} (hP : { Γ := Γ, rank := 1 }-Predicate P) (hnil : P ) (hcons : ∀ (s x : V), Seq sP sP (s ⁀' x)) {s : V} :
                          Seq sP s

                          !⟦x, y, z, ...⟧ notation for Seq

                          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 LO.ISigma1.doubleton_seq {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] (x y : V) :
                              @[simp]
                              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
                                  instance LO.ISigma1.mkSeq₂_definable' {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] (Γ : SigmaPiDelta) (m : ) :
                                  { Γ := Γ, rank := m + 1 }-Function₂ fun (x y : V) => !⟦x, y
                                  theorem LO.ISigma1.sigmaOne_skolem_seq {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {R : VVProp} (hP : 𝚺₁-Relation R) {l : V} (H : x < l, ∃ (y : V), R x y) :
                                  ∃ (s : V), Seq s lh s = l ∀ (i x : V), i, x sR i x
                                  theorem LO.ISigma1.sigmaOne_skolem_seq! {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {R : VVProp} (hP : 𝚺₁-Relation R) {l : V} (H : x < l, ∃! y : V, R x y) :
                                  ∃! s : V, Seq s lh s = l ∀ (i x : V), i, x sR i x
                                  noncomputable def LO.ISigma1.vecToSeq {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {n : } :
                                  (Fin nV)V
                                  Equations
                                  Instances For
                                    @[simp]
                                    theorem LO.ISigma1.vecToSeq_vecCons {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {n : } (v : Fin nV) (a : V) :
                                    @[simp]
                                    theorem LO.ISigma1.vecToSeq_seq {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {n : } (v : Fin nV) :
                                    @[simp]
                                    theorem LO.ISigma1.lh_vecToSeq {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {n : } (v : Fin nV) :
                                    lh (vecToSeq v) = n
                                    theorem LO.ISigma1.mem_vectoSeq {V : Type u_1} [ORingStruc V] [V ⊧ₘ* 𝐈𝚺₁] {n : } (v : Fin nV) (i : Fin n) :
                                    i, v i vecToSeq v