Theorem: LO.FirstOrder.Rew.eq_id_of_eq (Logic/FirstOrder/Basic/Syntax/Rew.lean)

State before:
L : Language
L' : Language
L₁ : Language
L₂ : Language
L₃ : Language
ξ : Type u_1
ξ' : Type u_2
ξ₁ : Type u_3
ξ₂ : Type u_4
ξ₃ : Type u_5
n n₁ n₂ n₃ : ℕ
ω✝ : Rew L ξ₁ n₁ ξ₂ n₂
ω : Rew L ξ n ξ n
hb : ∀ (x : Fin n), ω #x = #x
he : ∀ (x : ξ), ω &x = &x
t : Semiterm L ξ n
⊢ ω t = t
Tactic:
have : ω = Rew.id := by ext <;> simp[*]
State after:
L : Language
L' : Language
L₁ : Language
L₂ : Language
L₃ : Language
ξ : Type u_1
ξ' : Type u_2
ξ₁ : Type u_3
ξ₂ : Type u_4
ξ₃ : Type u_5
n n₁ n₂ n₃ : ℕ
ω✝ : Rew L ξ₁ n₁ ξ₂ n₂
ω : Rew L ξ n ξ n
hb : ∀ (x : Fin n), ω #x = #x
he : ∀ (x : ξ), ω &x = &x
t : Semiterm L ξ n
this : ω = Rew.id
⊢ ω t = t

State before:
L : Language
L' : Language
L₁ : Language
L₂ : Language
L₃ : Language
ξ : Type u_1
ξ' : Type u_2
ξ₁ : Type u_3
ξ₂ : Type u_4
ξ₃ : Type u_5
n n₁ n₂ n₃ : ℕ
ω✝ : Rew L ξ₁ n₁ ξ₂ n₂
ω : Rew L ξ n ξ n
hb : ∀ (x : Fin n), ω #x = #x
he : ∀ (x : ξ), ω &x = &x
t : Semiterm L ξ n
this : ω = Rew.id
⊢ ω t = t
Tactic:
simp[this]
State after:
no goals

State before:
L : Language
L' : Language
L₁ : Language
L₂ : Language
L₃ : Language
ξ : Type u_1
ξ' : Type u_2
ξ₁ : Type u_3
ξ₂ : Type u_4
ξ₃ : Type u_5
n n₁ n₂ n₃ : ℕ
ω✝ : Rew L ξ₁ n₁ ξ₂ n₂
ω : Rew L ξ n ξ n
hb : ∀ (x : Fin n), ω #x = #x
he : ∀ (x : ξ), ω &x = &x
t : Semiterm L ξ n
⊢ ω = Rew.id
Tactic:
ext <;> simp[*]
State after:
no goals