proposition: Lemma multNonnegativeRationals_ltcompat: ∏ x x' y y' : NonnegativeRationals, x < x' -> y < y' -> x * y < x' * y'.
proof: Proof. intros x x' y y' Hx Hy. generalize (eq0orgt0NonnegativeRationals x) ; apply sumofmaps ; intros Hx0. - rewrite Hx0, islabsorb_zero_multNonnegativeRationals. apply ispositive_multNonnegativeRationals. + rewrite <- Hx0 ; exact Hx. + apply istrans_le_lt_ltNonnegativeRationals with y. * now apply isnonnegative_NonnegativeRationals. * exact Hy. - apply istrans_lt_le_ltNonnegativeRationals with (x * y'). + apply multNonnegativeRationals_ltcompat_l. * exact Hx0. * exact Hy. + apply multNonnegativeRationals_lecompat_r. now apply lt_leNonnegativeRationals. Qed.
imports: UniMath.MoreFoundations.Tactics UniMath.MoreFoundations.PartA UniMath.MoreFoundations.Sets UniMath.MoreFoundations.Orders UniMath.RealNumbers.Sets UniMath.RealNumbers.Fields UniMath.Algebra.DivisionRig UniMath.OrderTheory.Lattice.Lattice UniMath.RealNumbers.Prelim