Documentation

Transfer.Examples.CoqEAL.BinRat

CoqEAL rational/binrat, ported to Lean — num/den pairs refine ℚ #

CoqEAL's rational refines MathComp rationals to numerator/denominator pairs. Here a pair ℤ × ℤ refines ℚ via toRat (division by zero folds to 0, so the relation is a total map, non-injective). The concrete componentwise product binMul refines ℚ multiplication — the CoqEAL Rmul square — and it holds unconditionally, without a den ≠ 0 side condition, because div_mul_div_comm is an identity in a division ring.

@[reducible, inline]

A numerator/denominator pair, refining ℚ.

Equations
Instances For

    Decode a pair to the rational it denotes (/ folds a zero denominator to 0).

    Equations
    Instances For

      Concrete multiplication: multiply numerators and denominators.

      Equations
      Instances For

        The CoqEAL Rmul refinement square. Componentwise multiplication of pairs refines ℚ multiplication: toRat (binMul x y) = toRat x * toRat y, unconditionally (via div_mul_div_comm).