intros d; elim d; simpl in |- *; auto.
intros n H' a b; rewrite (H' (pmon2 (S n) a) (pmon2 (S n) b)).
rewrite (max_comm (pmon1 (S n) a) (pmon1 (S n) b)); auto.
Qed.

(* Specifications: *)
Theorem ppcm_prop_l :
forall (d : nat) (a b : mon d),
ppcm_mon d a b = mult_mon d (div_mon d (ppcm_mon d a b) a) a.