Documentation

Mathlib.Data.NNRat.Lemmas

Field and action structures on the nonnegative rationals #

This file provides additional results about NNRat that cannot live in earlier files due to import cycles.

@[simp]
theorem NNRat.coe_indicator {ฮฑ : Type u_1} (s : Set ฮฑ) (f : ฮฑ โ†’ โ„šโ‰ฅ0) (a : ฮฑ) :
โ†‘(s.indicator f a) = s.indicator (fun (x : ฮฑ) => โ†‘(f x)) a
theorem Rat.toNNRat_div {p q : โ„š} (hp : 0 โ‰ค p) :
(p / q).toNNRat = p.toNNRat / q.toNNRat
theorem Rat.toNNRat_div' {p q : โ„š} (hq : 0 โ‰ค q) :
(p / q).toNNRat = p.toNNRat / q.toNNRat

Numerator and denominator #

def NNRat.rec {ฮฑ : โ„šโ‰ฅ0 โ†’ Sort u_1} (h : (m n : โ„•) โ†’ ฮฑ (โ†‘m / โ†‘n)) (q : โ„šโ‰ฅ0) :
ฮฑ q

A recursor for nonnegative rationals in terms of numerators and denominators.

Instances For
    theorem NNRat.mul_num (qโ‚ qโ‚‚ : โ„šโ‰ฅ0) :
    (qโ‚ * qโ‚‚).num = qโ‚.num * qโ‚‚.num / (qโ‚.num * qโ‚‚.num).gcd (qโ‚.den * qโ‚‚.den)
    theorem NNRat.mul_den (qโ‚ qโ‚‚ : โ„šโ‰ฅ0) :
    (qโ‚ * qโ‚‚).den = qโ‚.den * qโ‚‚.den / (qโ‚.num * qโ‚‚.num).gcd (qโ‚.den * qโ‚‚.den)
    theorem NNRat.den_mul_den_eq_den_mul_gcd (qโ‚ qโ‚‚ : โ„šโ‰ฅ0) :
    qโ‚.den * qโ‚‚.den = (qโ‚ * qโ‚‚).den * (qโ‚.num * qโ‚‚.num).gcd (qโ‚.den * qโ‚‚.den)

    A version of NNRat.mul_den without division.

    theorem NNRat.num_mul_num_eq_num_mul_gcd (qโ‚ qโ‚‚ : โ„šโ‰ฅ0) :
    qโ‚.num * qโ‚‚.num = (qโ‚ * qโ‚‚).num * (qโ‚.num * qโ‚‚.num).gcd (qโ‚.den * qโ‚‚.den)

    A version of NNRat.mul_num without division.