Definition Qpositive_mult (w w' : Qpositive) :=
  match Qpositive_i w with
  | (p, q) =>
      match Qpositive_i w' with
      | (p', q') => Qpositive_c (p * p') (q * q') (p * p' + q * q')
      end
  end.

Theorem Qpositive_mult_assoc : forall w w' w'' : Qpositive, Qpositive_mult (Qpositive_mult w w') w'' = Qpositive_mult w (Qpositive_mult w' w'').