intros.
simpl in |- *.
cut (forall k l : nat, k = l \/ k <> l).
intro.
auto.
clear i' i n.
double induction k l.
left; auto.
intros; right.
unfold not in |- *.
intro.
inversion H0.
intros; right.
unfold not in |- *.
intro.
inversion H0.
intros.
elim (H0 n).
auto.
auto.
Qed.

(* Specifications: *)
Lemma fin_O_nonexistent : fin 0 -> False.
destruct 1.