Theorem: LO.FirstOrder.Semiformula.lMap_rel₂ (Logic/FirstOrder/Basic/Syntax/Formula.lean)

State before:
L✝ : Language
ξ✝ : Type u_1
n n₁ n₂✝ n₂ m m₁ m₂ m₃ : ℕ
L : Language
L₁ : Language
L₂ : Language
L₃ : Language
ξ : Type u_2
Φ : L₁ →ᵥ L₂
r : L₁.Rel 2
t₁ t₂ : Semiterm L₁ ξ n
⊢ (lMap Φ) (rel r ![t₁, t₂]) = rel (Φ.rel r) ![Semiterm.lMap Φ t₁, Semiterm.lMap Φ t₂]
Tactic:
simp[lMap_rel]
State after:
L✝ : Language
ξ✝ : Type u_1
n n₁ n₂✝ n₂ m m₁ m₂ m₃ : ℕ
L : Language
L₁ : Language
L₂ : Language
L₃ : Language
ξ : Type u_2
Φ : L₁ →ᵥ L₂
r : L₁.Rel 2
t₁ t₂ : Semiterm L₁ ξ n
⊢ (fun i => Semiterm.lMap Φ (![t₁, t₂] i)) = ![Semiterm.lMap Φ t₁, Semiterm.lMap Φ t₂]

State before:
L✝ : Language
ξ✝ : Type u_1
n n₁ n₂✝ n₂ m m₁ m₂ m₃ : ℕ
L : Language
L₁ : Language
L₂ : Language
L₃ : Language
ξ : Type u_2
Φ : L₁ →ᵥ L₂
r : L₁.Rel 2
t₁ t₂ : Semiterm L₁ ξ n
⊢ (fun i => Semiterm.lMap Φ (![t₁, t₂] i)) = ![Semiterm.lMap Φ t₁, Semiterm.lMap Φ t₂]
Tactic:
funext i
State after:
case h
L✝ : Language
ξ✝ : Type u_1
n n₁ n₂✝ n₂ m m₁ m₂ m₃ : ℕ
L : Language
L₁ : Language
L₂ : Language
L₃ : Language
ξ : Type u_2
Φ : L₁ →ᵥ L₂
r : L₁.Rel 2
t₁ t₂ : Semiterm L₁ ξ n
i : Fin 2
⊢ Semiterm.lMap Φ (![t₁, t₂] i) = ![Semiterm.lMap Φ t₁, Semiterm.lMap Φ t₂] i

State before:
case h
L✝ : Language
ξ✝ : Type u_1
n n₁ n₂✝ n₂ m m₁ m₂ m₃ : ℕ
L : Language
L₁ : Language
L₂ : Language
L₃ : Language
ξ : Type u_2
Φ : L₁ →ᵥ L₂
r : L₁.Rel 2
t₁ t₂ : Semiterm L₁ ξ n
i : Fin 2
⊢ Semiterm.lMap Φ (![t₁, t₂] i) = ![Semiterm.lMap Φ t₁, Semiterm.lMap Φ t₂] i
Tactic:
induction i using Fin.induction <;> simp
State after:
no goals