I can't seem to close this goal, although it should be trivial, no?
goal (1 subgoal):
1. ⋀br i x2.
map Tm (case x2 of [] ⇒ [] | [Nt B] ⇒ [] | [Nt B, Nt C] ⇒ [] | Nt B # Nt C # _ ⇒ [] | Nt B # Tm t # lista ⇒ [] | [Tm a] ⇒ if br = Op ∧ i = 1 then [a] else [] | Tm a # ab # lista ⇒ [])
=
(case x2 of [] ⇒ [] | [Nt B] ⇒ [] | [Nt B, Nt C] ⇒ [] | Nt B # Nt C # _ ⇒ [] | Nt B # Tm t # lista ⇒ [] | [Tm a] ⇒ if br = Op ∧ i = 1 then [Tm a] else [] | Tm a # ab # lista ⇒ [])
All of these but the if-clause should be the empty list and as such equal. For the if clause one should use the definition of map
try using list.splits
and foo.splits
where foo
is the type of Tm
and Nt
Thank you! This was the missing ingredient.
Last updated: Feb 01 2025 at 20:19 UTC