Skip to content

ProfiniteNumber ​

A profinite number: the rational in , known modulo . Modulus 0 (the default) is just the rational itself.

ProfiniteNumber(x, m) known modulo — a coset of
ProfiniteNumber(x)exact: modulus 0, so just the rational
ProfiniteNumber(list)glue a list of AdicNumeral values by CRT into one profinite number

Domain: Adèles and idèles

Details
  • , the profinite completion of ; is the finite adèle ring, one coordinate per prime bundled together.
  • `Add`, `Multiply`, `Negate`, `Divide`, `Power`, `Equal`, `NotEqual` are wrapped to recognise a `ProfiniteNumber` operand, like `AdicNumeral`.
  • Numerator and Denominator split a profinite number into its numerator and denominator as profinite numbers (the denominator as an ordinary integer); AdicNumeral`(p, z)` projects it to ; Fibonacci and `LucasL` take a profinite argument (Lenstra's profinite Fibonacci numbers).
  • `ProfiniteNumber({AdicNumeral(p1, …), AdicNumeral(p2, …), …})` reassembles a profinite number from its images at several primes by the Chinese remainder theorem.

Examples

See also: Adele, Idele, AdicNumeral, ProfiniteDecomposition