Documentation

TauCeti.NumberTheory.NumberField.PrimeIdeal

Prime ideals of rings of integers #

This file records general utilities for the prime ideals of a number field above a rational prime: packaging them as non-zero-divisors so that their classes can be taken with ClassGroup.mk0, counting them, and factoring an unramified rational prime into them.

Main results #

An ideal lying over a rational prime is a non-zero-divisor in the ideal monoid, so it can be passed to ClassGroup.mk0.

theorem NumberField.exists_primeIdealFamily {K : Type u_1} [Field K] [NumberField K] (s : Finset ℕ) (hs : ∀ p ∈ s, Nat.Prime p) :
∃ (Q : ℕ → ↥(nonZeroDivisors (Ideal (RingOfIntegers K)))), (∀ p ∈ s, (↑(Q p)).IsPrime) ∧ ∀ p ∈ s, (↑(Q p)).LiesOver (Ideal.span {↑p})

A finite set of rational primes admits a family of prime ideals above it, packaged as non-zero-divisors so their classes can be taken with ClassGroup.mk0. Away from the specified finite set the family is filled with the unit ideal.

At most [K : ℚ] primes of 𝓞 K lie over a given nonzero prime of ℤ, since each contributes a positive ramificationIdx * inertiaDeg to the fundamental identity.

An unramified rational prime is the product of the primes above it. If every prime P of 𝓞 K above the rational prime p is unramified, then p generates the squarefree product of those primes: each occurs with ramification index one.

When a rational prime stays prime. If p 𝓞 K is the product of the primes above the rational prime p raised to a common power e, then p 𝓞 K is prime iff a single prime lies above p and e = 1.