Multiplicity in Number Theory #
This file contains results in number theory relating to multiplicity.
Main statements #
multiplicity.Int.pow_sub_pow
is the lifting the exponent lemma for odd primes. We also prove several variations of the lemma.
References #
- [Wikipedia, Lifting-the-exponent lemma] (https://en.wikipedia.org/wiki/Lifting-the-exponent_lemma)
@[deprecated emultiplicity_pow_sub_pow_of_prime]
theorem
multiplicity.pow_sub_pow_of_prime
{R : Type u_1}
[CommRing R]
[IsDomain R]
{p : R}
(hp : Prime p)
{x y : R}
(hxy : p ∣ x - y)
(hx : ¬p ∣ x)
{n : ℕ}
(hn : ¬p ∣ ↑n)
:
emultiplicity p (x ^ n - y ^ n) = emultiplicity p (x - y)
Alias of emultiplicity_pow_sub_pow_of_prime
.
@[deprecated emultiplicity_geom_sum₂_eq_one]
theorem
multiplicity.geom_sum₂_eq_one
{R : Type u_1}
[CommRing R]
{x y : R}
{p : ℕ}
[IsDomain R]
(hp : Prime ↑p)
(hp1 : Odd p)
(hxy : ↑p ∣ x - y)
(hx : ¬↑p ∣ x)
:
emultiplicity (↑p) (∑ i ∈ Finset.range p, x ^ i * y ^ (p - 1 - i)) = 1
Alias of emultiplicity_geom_sum₂_eq_one
.
@[deprecated emultiplicity_pow_prime_sub_pow_prime]
theorem
multiplicity.pow_prime_sub_pow_prime
{R : Type u_1}
[CommRing R]
{x y : R}
{p : ℕ}
[IsDomain R]
(hp : Prime ↑p)
(hp1 : Odd p)
(hxy : ↑p ∣ x - y)
(hx : ¬↑p ∣ x)
:
emultiplicity (↑p) (x ^ p - y ^ p) = emultiplicity (↑p) (x - y) + 1
Alias of emultiplicity_pow_prime_sub_pow_prime
.
@[deprecated emultiplicity_pow_prime_pow_sub_pow_prime_pow]
theorem
Int.emultiplicity_pow_sub_pow
{p : ℕ}
(hp : Nat.Prime p)
(hp1 : Odd p)
{x y : ℤ}
(hxy : ↑p ∣ x - y)
(hx : ¬↑p ∣ x)
(n : ℕ)
:
emultiplicity (↑p) (x ^ n - y ^ n) = emultiplicity (↑p) (x - y) + emultiplicity p n
Lifting the exponent lemma for odd primes.
@[deprecated Int.emultiplicity_pow_sub_pow]
theorem
multiplicity.Int.pow_sub_pow
{p : ℕ}
(hp : Nat.Prime p)
(hp1 : Odd p)
{x y : ℤ}
(hxy : ↑p ∣ x - y)
(hx : ¬↑p ∣ x)
(n : ℕ)
:
emultiplicity (↑p) (x ^ n - y ^ n) = emultiplicity (↑p) (x - y) + emultiplicity p n
Alias of Int.emultiplicity_pow_sub_pow
.
Lifting the exponent lemma for odd primes.
@[deprecated Int.emultiplicity_pow_add_pow]
theorem
multiplicity.Int.pow_add_pow
{p : ℕ}
(hp : Nat.Prime p)
(hp1 : Odd p)
{x y : ℤ}
(hxy : ↑p ∣ x + y)
(hx : ¬↑p ∣ x)
{n : ℕ}
(hn : Odd n)
:
emultiplicity (↑p) (x ^ n + y ^ n) = emultiplicity (↑p) (x + y) + emultiplicity p n
Alias of Int.emultiplicity_pow_add_pow
.
theorem
Nat.emultiplicity_pow_sub_pow
{p : ℕ}
(hp : Nat.Prime p)
(hp1 : Odd p)
{x y : ℕ}
(hxy : p ∣ x - y)
(hx : ¬p ∣ x)
(n : ℕ)
:
emultiplicity p (x ^ n - y ^ n) = emultiplicity p (x - y) + emultiplicity p n
@[deprecated Nat.emultiplicity_pow_sub_pow]
theorem
multiplicity.Nat.pow_sub_pow
{p : ℕ}
(hp : Nat.Prime p)
(hp1 : Odd p)
{x y : ℕ}
(hxy : p ∣ x - y)
(hx : ¬p ∣ x)
(n : ℕ)
:
emultiplicity p (x ^ n - y ^ n) = emultiplicity p (x - y) + emultiplicity p n
Alias of Nat.emultiplicity_pow_sub_pow
.
@[deprecated Nat.emultiplicity_pow_add_pow]
theorem
multiplicity.Nat.pow_add_pow
{p : ℕ}
(hp : Nat.Prime p)
(hp1 : Odd p)
{x y : ℕ}
(hxy : p ∣ x + y)
(hx : ¬p ∣ x)
{n : ℕ}
(hn : Odd n)
:
emultiplicity p (x ^ n + y ^ n) = emultiplicity p (x + y) + emultiplicity p n
Alias of Nat.emultiplicity_pow_add_pow
.
theorem
Int.two_pow_sub_pow'
{x y : ℤ}
(n : ℕ)
(hxy : 4 ∣ x - y)
(hx : ¬2 ∣ x)
:
emultiplicity 2 (x ^ n - y ^ n) = emultiplicity 2 (x - y) + emultiplicity 2 ↑n
theorem
Int.two_pow_sub_pow
{x y : ℤ}
{n : ℕ}
(hxy : 2 ∣ x - y)
(hx : ¬2 ∣ x)
(hn : Even n)
:
emultiplicity 2 (x ^ n - y ^ n) + 1 = emultiplicity 2 (x + y) + emultiplicity 2 (x - y) + emultiplicity 2 ↑n
Lifting the exponent lemma for p = 2
theorem
Nat.two_pow_sub_pow
{x y : ℕ}
(hxy : 2 ∣ x - y)
(hx : ¬2 ∣ x)
{n : ℕ}
(hn : Even n)
:
emultiplicity 2 (x ^ n - y ^ n) + 1 = emultiplicity 2 (x + y) + emultiplicity 2 (x - y) + emultiplicity 2 n
theorem
padicValNat.pow_two_sub_pow
{x y : ℕ}
(hyx : y < x)
(hxy : 2 ∣ x - y)
(hx : ¬2 ∣ x)
{n : ℕ}
(hn : n ≠ 0)
(hneven : Even n)
:
padicValNat 2 (x ^ n - y ^ n) + 1 = padicValNat 2 (x + y) + padicValNat 2 (x - y) + padicValNat 2 n