Zulip Chat Archive

Stream: Is there code for X?

Topic: Associated (ζₚ - 1)ᵖ⁻¹ p


Andrew Yang (Sep 29 2023 at 14:13):

Do we know that (ζₚ - 1)ᵖ⁻¹ and p are associates in ℤ[ζₚ]?

Eric Rodriguez (Sep 29 2023 at 14:14):

It's at least in flt-regular

Eric Rodriguez (Sep 29 2023 at 14:15):

If its not there explicitly it'll be there as some multiplication

Andrew Yang (Sep 29 2023 at 14:20):

The closest I could find is docs#IsPrimitiveRoot.sub_one_norm_prime.

Eric Rodriguez (Sep 29 2023 at 14:26):

hmm, yeah I can't seem to find it. Maybe it's easy to build with flt-reg's is_primitive_root.zeta_pow_sub_eq_unit_zeta_sub_one? (apologies for the lean3 name)

Riccardo Brasca (Sep 29 2023 at 14:39):

Maybe you can use docs#RingOfIntegers.dvd_norm to get one divisibility, and then docs#RingOfIntegers.isUnit_norm to get that the quotient is a unit.

Andrew Yang (Sep 29 2023 at 14:48):

I think docs#RingOfIntegers.dvd_norm can only give you ζ - 1 ∣ p?

Riccardo Brasca (Sep 29 2023 at 14:50):

Ops, yes. Too much teaching today

Kevin Buzzard (Sep 29 2023 at 15:50):

One approach would be to first prove that ζi1\zeta^i-1 is an associate of ζ1\zeta-1 for 0<i<p10<i<p-1.

Kevin Buzzard (Sep 29 2023 at 15:54):

(the proof is that ζ1\zeta-1 divides ζi1\zeta^{i}-1 because you can write down the quotient explicitly, but ζ1=ζN1\zeta-1=\zeta^N-1 for any NN congruent to 11 mod pp, and so you can choose NN a multiple of ii and do the trick the other way around).

And then 0<i<p(ζi1)\prod_{0<i<p}(\zeta^i-1) is (Xp1)/(X1)(X^p-1)/(X-1) evaluated at X=1X=1 which is pp modulo a possible sign error.

Eric Rodriguez (Sep 29 2023 at 23:18):

Kevin Buzzard said:

(the proof is that ζ1\zeta-1 divides ζi1\zeta^{i}-1 because you can write down the quotient explicitly, but ζ1=ζN1\zeta-1=\zeta^N-1 for any NN congruent to 11 mod pp, and so you can choose NN a multiple of ii and do the trick the other way around).

And then 0<i<p(ζi1)\prod_{0<i<p}(\zeta^i-1) is (Xp1)/(X1)(X^p-1)/(X-1) evaluated at X=1X=1 which is pp modulo a possible sign error.

is_primitive_root.zeta_pow_sub_eq_unit_zeta_sub_one is this but more general. we should PR it


Last updated: Dec 20 2023 at 11:08 UTC