proposition: Lemma Qlt_Qmult_cancel_l: forall x y z : Q, Zero < x -> x * y < x * z -> y < z.
proof: Proof. intros x y z Hx Hxy; apply Qlt_Zero_Qminus; apply Qsgn_9; transitivity (Zmult (Qsgn x) (Qsgn (z-y))); [ rewrite (Qsgn_7 _ Hx); auto with zarith | rewrite <- Qsgn_15; apply Qsgn_7; stepr (x*z - x*y); try ring; apply Qlt_Qminus_Zero; trivial ]. Qed.