simp [SPPow2, sppow2Def, Matrix.vecHead, Matrix.vecTail, lenbit_defined.df.iff,
  pow2_defined.df.iff, sqrt_defined.df.iff, ←le_iff_lt_succ, sq, numeral_eq_natCast]
M : Type u_1
inst✝⁵ : Zero M
inst✝⁴ : One M
inst✝³ : Add M
inst✝² : Mul M
inst✝¹ : LT M
inst✝ : M ⊧ₘ* 𝐈𝚫₀
v : Fin 1 → M
⊢ (fun v => SPPow2 (v 0)) v ↔ (Semiformula.Evalbm M v) (HSemiformula.val sppow2Def)
M : Type u_1
inst✝⁵ : Zero M
inst✝⁴ : One M
inst✝³ : Add M
inst✝² : Mul M
inst✝¹ : LT M
inst✝ : M ⊧ₘ* 𝐈𝚫₀
v : Fin 1 → M
⊢ ¬LenBit 1 (v 0) →
    LenBit 2 (v 0) →
      ((∀ i ≤ v 0, Pow2 i → 2 < i → (LenBit i (v 0) ↔ √i * √i = i ∧ LenBit (√i) (v 0))) ↔
        ∀ x ≤ v 0, Pow2 x → 2 < x → (LenBit x (v 0) ↔ ∃ x_1 ≤ x, x_1 = √x ∧ x_1 * x_1 = x ∧ LenBit x_1 (v 0)))