lean4-htt/tests/lean/run/cases_nested.lean

24 lines
509 B
Text

inductive term : Type
| var : string → term
| app : string → list term → term
def cidx : term → nat
| (term.var _) := 1
| (term.app _ _) := 2
def to_list : term → list term
| (term.app _ ts) := ts
| (term.var _) := []
def tid : term → string
| (term.var id) := id
| (term.app id _) := id
lemma ex (t : term) (h : cidx t = 2) : term.app (tid t) (to_list t) = t :=
begin
cases t,
{simp [cidx] at h,
have h : 1 ≠ 2, tactic.comp_val,
contradiction},
{simp [tid, to_list]}
end