ModuleRationalPrimeFactorization.lean
Nyll.ClassFieldTheory.GlobalClassFieldTheory.Reciprocity.RationalPrimeFactorization
37 declarations indexed from sourceView source ↗ Module documentation
Prime factorization of a nonzero rational number
This file records the elementary rational factorization needed for the principal-idele calculation over ℚ. At a fixed rational prime p, removing the p-power from x : ℚˣ leaves the sign of x times the finite product of the powers of all primes different from p.
The last declarations package rational p-adic units as units of ℤ_[p] and identify the reduction of a natural unit modulo p ^ k.
Declarations
Source context 4 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
GlobalClassFieldTheory.Reciprocity.rationalPrimeFactorizationSupport
DocumentationA finite set containing every prime occurring in the numerator or denominator of x, as well as the distinguished prime p.
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩
GlobalClassFieldTheory.Reciprocity.mem_rationalPrimeFactorizationSupport
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩
GlobalClassFieldTheory.Reciprocity.rationalPrimeUnit
DocumentationThe rational p-adic unit part of x: multiply x by the inverse of its p-power.
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩
GlobalClassFieldTheory.Reciprocity.rationalPrimeUnit_val
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩
GlobalClassFieldTheory.Reciprocity.padicValRat_rationalPrimeUnit
DocumentationRemoving the p-power from a nonzero rational number leaves p-adic valuation zero.
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩
GlobalClassFieldTheory.Reciprocity.rational_factorization_over_support
DocumentationThe ordinary prime factorization of a nonzero rational number, over the finite support chosen by rationalPrimeFactorizationSupport.
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩
GlobalClassFieldTheory.Reciprocity.rationalPrimeUnit_factorization
DocumentationThe p-adic unit part of x is its sign times the finite product of q ^ padicValRat q x over the primes q ≠ p.
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩
GlobalClassFieldTheory.Reciprocity.padicIntUnitOfRat
DocumentationA nonzero rational number of p-adic valuation zero, regarded as a unit of the p-adic integers.
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩
GlobalClassFieldTheory.Reciprocity.padicIntUnitOfRat_coe
DocumentationThe underlying p-adic number of padicIntUnitOfRat is the original rational number.
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩
GlobalClassFieldTheory.Reciprocity.padicValRat_rational_num_sign
DocumentationThe sign of a nonzero rational numerator is a unit at every finite prime.
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩
GlobalClassFieldTheory.Reciprocity.rationalSignPadicUnit
DocumentationThe actual sign of x, regarded as a unit of the p-adic integers.
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩
GlobalClassFieldTheory.Reciprocity.rationalSignPadicUnit_coe
DocumentationThe underlying p-adic number of rationalSignPadicUnit is the sign of the rational numerator.
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩
GlobalClassFieldTheory.Reciprocity.rationalSignPadicUnit_val
DocumentationThe value in ℤ_[p] of rationalSignPadicUnit is the integer sign.
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩
GlobalClassFieldTheory.Reciprocity.rationalSignPadicUnit_sq
DocumentationThe rational sign unit has square one.
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩
GlobalClassFieldTheory.Reciprocity.rationalSignPadicUnit_toZModPow_val
DocumentationReduction of the rational sign unit modulo p ^ k has the expected integer value.
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩
GlobalClassFieldTheory.Reciprocity.rationalSignPadicUnit_toZModPow_sq
DocumentationReduction of the rational sign unit still has square one.
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩
GlobalClassFieldTheory.Reciprocity.padicNatUnit
DocumentationA natural number prime to p, regarded as a unit of ℤ_[p].
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩
GlobalClassFieldTheory.Reciprocity.padicNatUnit_val
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩
GlobalClassFieldTheory.Reciprocity.padicNatUnit_toZModPow
DocumentationReducing the canonical p-adic unit attached to q modulo p ^ k gives the canonical unit represented by q in ZMod (p ^ k).
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩
GlobalClassFieldTheory.Reciprocity.padicValRat_rationalPrime_succ
DocumentationThe successor of p is a p-adic unit.
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩
GlobalClassFieldTheory.Reciprocity.padicNatUnit_not_isOfFinOrder_of_one_lt
DocumentationA positive natural number greater than one, prime to p, gives a genuine non-torsion unit of ℤ_[p].
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩
GlobalClassFieldTheory.Reciprocity.prime_of_mem_rationalPrimeFactorizationSupport
DocumentationEvery member of the rational factorization support is prime.
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩
GlobalClassFieldTheory.Reciprocity.rationalPrimeFactorizationSupportEmbedding
DocumentationThe canonical embedding of the natural-number factorization support into the type of natural primes.
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩
GlobalClassFieldTheory.Reciprocity.rationalPrimeFactorizationPrimeSupport
DocumentationThe factorization support as an actual finite set of Nat.Primes.
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩
GlobalClassFieldTheory.Reciprocity.mem_rationalPrimeFactorizationPrimeSupport_iff
DocumentationMembership in the prime-valued support is exactly membership of the underlying natural number in the original support.
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩
GlobalClassFieldTheory.Reciprocity.mem_rationalPrimeFactorizationPrimeSupport
DocumentationThe distinguished prime belongs to the prime-valued support.
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩
GlobalClassFieldTheory.Reciprocity.mem_rationalPrimeFactorizationPrimeSupport_erase_iff
DocumentationErasing p commutes with passing from natural-number support to prime-valued support.
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩
GlobalClassFieldTheory.Reciprocity.rationalPrimeOfMemFactorizationSupportErase
DocumentationThe canonical prime associated with an element of the erased natural support.
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩
GlobalClassFieldTheory.Reciprocity.rationalPrimeFactorizationSupportEraseEquiv
DocumentationThe erased natural support and the erased prime-valued support have canonically equivalent element types.
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩
GlobalClassFieldTheory.Reciprocity.coprime_of_mem_rationalPrimeFactorizationSupport_erase
DocumentationA prime in the support with p erased is coprime to p.
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩
GlobalClassFieldTheory.Reciprocity.padicIntUnitOfRat_rationalPrimeUnit_factorization
DocumentationThe rational prime-unit factorization, lifted from ℚ to an exact identity of units of ℤ_[p].
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩
GlobalClassFieldTheory.Reciprocity.padicIntUnitOfRat_rationalPrimeUnit_toZModPow
DocumentationThe rational prime-unit factorization after reduction modulo p ^ k.
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩
GlobalClassFieldTheory.Reciprocity.padicIntUnitOfRat_rationalPrimeUnit_mul_inverseFactors_toZModPow
DocumentationMultiplying the reduced rational prime-unit by the inverse powers of all prime factors away from p recovers the reduced sign.
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩
GlobalClassFieldTheory.Reciprocity.padicIntUnitOfRat_rationalPrimeUnit_mul_primeSupportInverseFactors_toZModPow
DocumentationPrime-valued support form of the reduced rational product formula. The direct p-adic unit factor times all inverse away-from-p factors is the reduced rational sign.
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩
GlobalClassFieldTheory.Reciprocity.rationalSignPadicUnit_mul_primeUnit_toZModPow
DocumentationMultiplication by the reduced sign cancels the sign in the reduced prime-unit factorization.
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩
GlobalClassFieldTheory.Reciprocity.padicIntUnitOfRat_rationalPrimeUnit_toZModPow_inv_mul
DocumentationInverse/cancellation form of the reduced prime-unit factorization.
Source context 5 commands
Surrounding namespaces, section variables, and local commands at this declaration.
open scoped BigOperators
noncomputable section
namespace GlobalClassFieldTheory
namespace Reciprocity
local instance (p : Nat.Primes) : Fact p.1.Prime :=
⟨p.2⟩