The rational numbers possess a linear order #
This file constructs the order on ℚ and proves various facts relating the order to
ring structure on ℚ. This only uses unbundled type classes, eg CovariantClass,
relating the order structure and algebra structure on ℚ.
For the bundled LinearOrderedCommRing instance on ℚ, see Algebra.Order.Ring.Rat.
Tags #
rat, rationals, field, ℚ, numerator, denominator, num, denom, order, ordering
@[simp]
@[simp]
Equations
- NNRatCast.toOfScientific = { ofScientific := fun (m : ℕ) (b : Bool) (d : ℕ) => ↑⟨Rat.ofScientific m b d, ⋯⟩ }
@[simp]
theorem
NNRat.cast_ofScientific
{K : Type u_1}
[NNRatCast K]
(m : ℕ)
(s : Bool)
(e : ℕ)
:
↑(OfScientific.ofScientific m s e) = OfScientific.ofScientific m s e
Casting a scientific literal via ℚ≥0 is the same as casting directly.
theorem
Rat.divInt_le_divInt
{a : ℤ}
{b : ℤ}
{c : ℤ}
{d : ℤ}
(b0 : 0 < b)
(d0 : 0 < d)
:
Rat.divInt a b ≤ Rat.divInt c d ↔ a * d ≤ c * b
Equations
- Rat.linearOrder = LinearOrder.mk ⋯ inferInstance inferInstance inferInstance Rat.linearOrder.proof_5 Rat.linearOrder.proof_6 Rat.linearOrder.proof_7
Extra instances to short-circuit type class resolution #
These also prevent non-computable instances being used to construct these instances non-computably.
Equations
- Rat.instDistribLattice = inferInstance
Equations
- Rat.instSemilatticeInf = inferInstance
Equations
- Rat.instSemilatticeSup = inferInstance
Miscellaneous lemmas #
Equations
@[deprecated Rat.num_nonneg]
Alias of Rat.num_nonneg.
@[deprecated Rat.num_pos]
Alias of Rat.num_pos.