Documentation

Mathlib.RingTheory.UniqueFactorizationDomain.Multiplicative

Multiplicative maps on unique factorization domains #

Main results #

theorem UniqueFactorizationMonoid.prime_pow_coprime_prod_of_coprime_insert {α : Type u_1} [CancelCommMonoidWithZero α] [UniqueFactorizationMonoid α] [DecidableEq α] {s : Finset α} (i : α) (p : α) (hps : ps) (is_prime : qinsert p s, Prime q) (is_coprime : qinsert p s, q'insert p s, q q'q = q') :
IsRelPrime (p ^ i p) (∏ p's, p' ^ i p')
theorem UniqueFactorizationMonoid.induction_on_prime_power {α : Type u_1} [CancelCommMonoidWithZero α] [UniqueFactorizationMonoid α] {P : αProp} (s : Finset α) (i : α) (is_prime : ps, Prime p) (is_coprime : ps, qs, p qp = q) (h1 : ∀ {x : α}, IsUnit xP x) (hpr : ∀ {p : α} (i : ), Prime pP (p ^ i)) (hcp : ∀ {x y : α}, IsRelPrime x yP xP yP (x * y)) :
P (∏ ps, p ^ i p)

If P holds for units and powers of primes, and P x ∧ P y for coprime x, y implies P (x * y), then P holds on a product of powers of distinct primes.

theorem UniqueFactorizationMonoid.induction_on_coprime {α : Type u_1} [CancelCommMonoidWithZero α] [UniqueFactorizationMonoid α] {P : αProp} (a : α) (h0 : P 0) (h1 : ∀ {x : α}, IsUnit xP x) (hpr : ∀ {p : α} (i : ), Prime pP (p ^ i)) (hcp : ∀ {x y : α}, IsRelPrime x yP xP yP (x * y)) :
P a

If P holds for 0, units and powers of primes, and P x ∧ P y for coprime x, y implies P (x * y), then P holds on all a : α.

theorem UniqueFactorizationMonoid.multiplicative_prime_power {α : Type u_1} [CancelCommMonoidWithZero α] [UniqueFactorizationMonoid α] {β : Type u_3} [CancelCommMonoidWithZero β] {f : αβ} (s : Finset α) (i j : α) (is_prime : ps, Prime p) (is_coprime : ps, qs, p qp = q) (h1 : ∀ {x y : α}, IsUnit yf (x * y) = f x * f y) (hpr : ∀ {p : α} (i : ), Prime pf (p ^ i) = f p ^ i) (hcp : ∀ {x y : α}, IsRelPrime x yf (x * y) = f x * f y) :
f (∏ ps, p ^ (i p + j p)) = f (∏ ps, p ^ i p) * f (∏ ps, p ^ j p)

If f maps p ^ i to (f p) ^ i for primes p, and f is multiplicative on coprime elements, then f is multiplicative on all products of primes.

theorem UniqueFactorizationMonoid.multiplicative_of_coprime {α : Type u_1} [CancelCommMonoidWithZero α] [UniqueFactorizationMonoid α] {β : Type u_3} [CancelCommMonoidWithZero β] (f : αβ) (a b : α) (h0 : f 0 = 0) (h1 : ∀ {x y : α}, IsUnit yf (x * y) = f x * f y) (hpr : ∀ {p : α} (i : ), Prime pf (p ^ i) = f p ^ i) (hcp : ∀ {x y : α}, IsRelPrime x yf (x * y) = f x * f y) :
f (a * b) = f a * f b

If f maps p ^ i to (f p) ^ i for primes p, and f is multiplicative on coprime elements, then f is multiplicative everywhere.