rewrite H0.
elim (mult_O_le b a); auto with arith.
intro.
absurd (n = 0).
unfold not in |- *; intro.
elim (lt_irrefl n).
pattern n at 1 in |- *.
rewrite H2; auto with arith.
rewrite H0.
rewrite H1; auto with arith.
Qed.
(************************************************************************)

(* Specifications: *)
Lemma even_or_odd : forall n : nat, {even n} + {odd n}.
simple induction n.