simp [Function.comp]
L : Language
μ : Type v
μ₁ : Type v₁
μ₂ : Type v₂
M : Type w
s : Structure L M
n : ℕ
e : Fin n → M
ε : μ → M
ε₂ : μ₂ → M
n₁ n✝ : ℕ
p✝ : Semiformula L μ₁ (n✝ + 1)
a✝ :
  ∀ {n₂ : ℕ} {e₂ : Fin n₂ → M} (ω : Rew L μ₁ (n✝ + 1) μ₂ n₂),
    (Eval s e₂ ε₂) (ω.hom p✝) ↔
      (Eval s (Semiterm.val s e₂ ε₂ ∘ ⇑ω ∘ Semiterm.bvar) (Semiterm.val s e₂ ε₂ ∘ ⇑ω ∘ Semiterm.fvar)) p✝
n₂ : ℕ
e₂ : Fin n₂ → M
ω : Rew L μ₁ n✝ μ₂ n₂
⊢ (∀ (x : M),
      (Eval s (Semiterm.val s (x :> e₂) ε₂ ∘ ⇑ω.q ∘ Semiterm.bvar) (Semiterm.val s (x :> e₂) ε₂ ∘ ⇑ω.q ∘ Semiterm.fvar))
        p✝) ↔
    ∀ (x : M), (Eval s (x :> Semiterm.val s e₂ ε₂ ∘ ⇑ω ∘ Semiterm.bvar) (Semiterm.val s e₂ ε₂ ∘ ⇑ω ∘ Semiterm.fvar)) p✝
L : Language
μ : Type v
μ₁ : Type v₁
μ₂ : Type v₂
M : Type w
s : Structure L M
n : ℕ
e : Fin n → M
ε : μ → M
ε₂ : μ₂ → M
n₁ n✝ : ℕ
p✝ : Semiformula L μ₁ (n✝ + 1)
a✝ :
  ∀ {n₂ : ℕ} {e₂ : Fin n₂ → M} (ω : Rew L μ₁ (n✝ + 1) μ₂ n₂),
    (Eval s e₂ ε₂) (ω.hom p✝) ↔
      (Eval s (Semiterm.val s e₂ ε₂ ∘ ⇑ω ∘ Semiterm.bvar) (Semiterm.val s e₂ ε₂ ∘ ⇑ω ∘ Semiterm.fvar)) p✝
n₂ : ℕ
e₂ : Fin n₂ → M
ω : Rew L μ₁ n✝ μ₂ n₂
⊢ (∀ (x : M), (Eval s (fun x_1 => Semiterm.val s (x :> e₂) ε₂ (ω.q #x_1)) fun x => Semiterm.val s e₂ ε₂ (ω &x)) p✝) ↔
    ∀ (x : M), (Eval s (x :> fun x => Semiterm.val s e₂ ε₂ (ω #x)) fun x => Semiterm.val s e₂ ε₂ (ω &x)) p✝