have tmp' := tmp.1 ▸ h₁
α nt : Type
Z : Finset α
V : Finset nt
Prod : Finset α → Finset nt → Type
inst✝ : Production α nt Prod
G : Grammar Prod
u : Word ({ x // x ∈ G.V } ⊕ { x // x ∈ G.Z })
v : { x // x ∈ G.V }
step : DerivationStep G [Sum.inl v]
hpre : step.pre = []
h : ∃ w', Production.lhs ↑step.prod = Sum.inl v :: w' ∧ ε = w' * step.suf
w✝ : Word ({ x // x ∈ G.V } ⊕ { x // x ∈ G.Z })
h₁ : Production.lhs ↑step.prod = Sum.inl v :: w✝
h₂ : ε = w✝ * step.suf
tmp : w✝ = ε ∧ step.suf = ε
⊢ Production.lhs ↑step.prod = [Sum.inl v] ∧ [] = ε ∧ step.suf = ε
α nt : Type
Z : Finset α
V : Finset nt
Prod : Finset α → Finset nt → Type
inst✝ : Production α nt Prod
G : Grammar Prod
u : Word ({ x // x ∈ G.V } ⊕ { x // x ∈ G.Z })
v : { x // x ∈ G.V }
step : DerivationStep G [Sum.inl v]
hpre : step.pre = []
h : ∃ w', Production.lhs ↑step.prod = Sum.inl v :: w' ∧ ε = w' * step.suf
w✝ : Word ({ x // x ∈ G.V } ⊕ { x // x ∈ G.Z })
h₁ : Production.lhs ↑step.prod = Sum.inl v :: w✝
h₂ : ε = w✝ * step.suf
tmp : w✝ = ε ∧ step.suf = ε
tmp' : Production.lhs ↑step.prod = Sum.inl v :: ε
⊢ Production.lhs ↑step.prod = [Sum.inl v] ∧ [] = ε ∧ step.suf = ε