def
tactic.interactive.fin_cases
:
interactive.parse hyp → interactive.parse (optional (lean.parser.tk "with" *> interactive.types.texpr)) → tactic unit
fin_cases h
performs case analysis on a hypothesis of the form
h : A
, where [fintype A]
is available, or
h ∈ A
, where A : finset X
, A : multiset X
or A : list X
.
fin_cases *
performs case analysis on all suitable hypotheses.
As an example, in
example (f : ℕ → Prop) (p : fin 3) (h0 : f 0) (h1 : f 1) (h2 : f 2) : f p.val :=
begin
fin_cases *; simp,
all_goals { assumption }
end
after fin_cases p; simp
, there are three goals, f 0
, f 1
, and f 2
.