constructor
case succ
n₂ : ℕ
L : Language
μ : Type v
μ₁ : Type v₁
μ₂ : Type v₂
M : Type w
s : Structure L M
n : ℕ
e✝ : Fin n → M
e₂ : Fin n₂ → M
ε : μ → M
ε₂ : μ₂ → M
k : ℕ
ih :
  ∀ {e : Fin n → M} {p : Semiformula L μ (n + k)},
    (Eval s e ε) (∀^[k] p) ↔ ∀ (e' : Fin k → M), (Eval s (Matrix.appendr e' e) ε) p
e : Fin n → M
p : Semiformula L μ (n + (k + 1))
⊢ (∀ (e' : Fin k → M) (x : M), (Eval s (x :> Matrix.appendr e' e) ε) p) ↔
    ∀ (e' : Fin (k + 1) → M), (Eval s (Matrix.appendr e' e) ε) p
case succ.mp
n₂ : ℕ
L : Language
μ : Type v
μ₁ : Type v₁
μ₂ : Type v₂
M : Type w
s : Structure L M
n : ℕ
e✝ : Fin n → M
e₂ : Fin n₂ → M
ε : μ → M
ε₂ : μ₂ → M
k : ℕ
ih :
  ∀ {e : Fin n → M} {p : Semiformula L μ (n + k)},
    (Eval s e ε) (∀^[k] p) ↔ ∀ (e' : Fin k → M), (Eval s (Matrix.appendr e' e) ε) p
e : Fin n → M
p : Semiformula L μ (n + (k + 1))
⊢ (∀ (e' : Fin k → M) (x : M), (Eval s (x :> Matrix.appendr e' e) ε) p) →
    ∀ (e' : Fin (k + 1) → M), (Eval s (Matrix.appendr e' e) ε) p

case succ.mpr
n₂ : ℕ
L : Language
μ : Type v
μ₁ : Type v₁
μ₂ : Type v₂
M : Type w
s : Structure L M
n : ℕ
e✝ : Fin n → M
e₂ : Fin n₂ → M
ε : μ → M
ε₂ : μ₂ → M
k : ℕ
ih :
  ∀ {e : Fin n → M} {p : Semiformula L μ (n + k)},
    (Eval s e ε) (∀^[k] p) ↔ ∀ (e' : Fin k → M), (Eval s (Matrix.appendr e' e) ε) p
e : Fin n → M
p : Semiformula L μ (n + (k + 1))
⊢ (∀ (e' : Fin (k + 1) → M), (Eval s (Matrix.appendr e' e) ε) p) →
    ∀ (e' : Fin k → M) (x : M), (Eval s (x :> Matrix.appendr e' e) ε) p