Loogle!
Result
Found 181 declarations mentioning DirichletCharacter.
- DirichletCharacter π Mathlib.NumberTheory.DirichletCharacter.Basic
(R : Type u_1) [CommMonoidWithZero R] (n : β) : Type u_1 - DirichletCharacter.IsPrimitive π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) : Prop - DirichletCharacter.conductor π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) : β - DirichletCharacter.FactorsThrough π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) (d : β) : Prop - DirichletCharacter.conductorSet π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) : Set β - DirichletCharacter.instSubsingletonOfNatNat π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] : Subsingleton (DirichletCharacter R 1) - DirichletCharacter.instUniqueOfNatNat π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] : Unique (DirichletCharacter R 1) - DirichletCharacter.Even π Mathlib.NumberTheory.DirichletCharacter.Basic
{S : Type u_2} [CommRing S] {m : β} (Ο : DirichletCharacter S m) : Prop - DirichletCharacter.Odd π Mathlib.NumberTheory.DirichletCharacter.Basic
{S : Type u_2} [CommRing S] {m : β} (Ο : DirichletCharacter S m) : Prop - DirichletCharacter.FactorsThrough.same_level π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) : Ο.FactorsThrough n - DirichletCharacter.primitiveCharacter π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) : DirichletCharacter R Ο.conductor - DirichletCharacter.conductor_dvd_level π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) : Ο.conductor β£ n - DirichletCharacter.factorsThrough_conductor π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) : Ο.FactorsThrough Ο.conductor - DirichletCharacter.mul π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n m : β} (Οβ : DirichletCharacter R n) (Οβ : DirichletCharacter R m) : DirichletCharacter R (n.lcm m) - DirichletCharacter.FactorsThrough.Οβ π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} {Ο : DirichletCharacter R n} {d : β} (h : Ο.FactorsThrough d) : DirichletCharacter R d - DirichletCharacter.level_mem_conductorSet π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) : n β Ο.conductorSet - DirichletCharacter.FactorsThrough.dvd π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} {Ο : DirichletCharacter R n} {d : β} (h : Ο.FactorsThrough d) : d β£ n - DirichletCharacter.primitiveCharacter_isPrimitive π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) : Ο.primitiveCharacter.IsPrimitive - DirichletCharacter.isPrimitive_def π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) : Ο.IsPrimitive β Ο.conductor = n - DirichletCharacter.conductor_mem_conductorSet π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) : Ο.conductor β Ο.conductorSet - DirichletCharacter.conductor_ne_zero π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) [NeZero n] : Ο.conductor β 0 - DirichletCharacter.mem_conductorSet_dvd π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) {x : β} (hx : x β Ο.conductorSet) : x β£ n - DirichletCharacter.mem_conductorSet_iff π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) {x : β} : x β Ο.conductorSet β Ο.FactorsThrough x - DirichletCharacter.conductor_eq_zero_iff_level_eq_zero π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} {Ο : DirichletCharacter R n} : Ο.conductor = 0 β n = 0 - DirichletCharacter.primitive_mul π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n m : β} (Οβ : DirichletCharacter R n) (Οβ : DirichletCharacter R m) : DirichletCharacter R (Οβ.mul Οβ).conductor - DirichletCharacter.subgroupOfCoprimeConductor π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} [NeZero n] (d : β) : Subgroup (DirichletCharacter R n) - DirichletCharacter.zero_ne_mem_conductorSet π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) [NeZero n] : 0 β Ο.conductorSet - DirichletCharacter.subgroupOfPrimitiveMapToOne π Mathlib.NumberTheory.DirichletCharacter.Basic
(R : Type u_1) [CommMonoidWithZero R] (n : β) [NeZero n] (p : β) [hp : Fact (Nat.Prime p)] : Subgroup (DirichletCharacter R n) - DirichletCharacter.conductor_inv π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) : Οβ»ΒΉ.conductor = Ο.conductor - DirichletCharacter.conductor_dvd_of_mem_conductorSet π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) {d : β} [NeZero n] (hd : d β Ο.conductorSet) : Ο.conductor β£ d - DirichletCharacter.primitive_mul_isPrimitive π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) {m : β} (Ο : DirichletCharacter R m) : (Ο.primitive_mul Ο).IsPrimitive - DirichletCharacter.FactorsThrough.mono π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) {d m : β} [NeZero n] (hΟ : Ο.FactorsThrough d) (hd : d β£ m) (hm : m β£ n) : Ο.FactorsThrough m - DirichletCharacter.annihilator π Mathlib.NumberTheory.DirichletCharacter.Basic
(R : Type u_1) [CommMonoidWithZero R] {n : β} (H : Set (ZMod n)Λ£) : Subgroup (DirichletCharacter R n) - DirichletCharacter.conductor_one π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} [NeZero n] : DirichletCharacter.conductor 1 = 1 - DirichletCharacter.mem_conductorSet_iff_conductor_dvd π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) {d : β} [NeZero n] (hd : d β£ n) : d β Ο.conductorSet β Ο.conductor β£ d - DirichletCharacter.even_or_odd π Mathlib.NumberTheory.DirichletCharacter.Basic
{S : Type u_2} [CommRing S] {m : β} (Ο : DirichletCharacter S m) [NoZeroDivisors S] : Ο.Even β¨ Ο.Odd - DirichletCharacter.level_one' π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) (hn : n = 1) : Ο = 1 - DirichletCharacter.factorsThrough_one_iff π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) : Ο.FactorsThrough 1 β Ο = 1 - DirichletCharacter.mul_def π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n m : β} {Ο : DirichletCharacter R n} {Ο : DirichletCharacter R m} : Ο.primitive_mul Ο = (Ο.mul Ο).primitiveCharacter - DirichletCharacter.isPrimitive_one_level_one π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] : DirichletCharacter.IsPrimitive 1 - DirichletCharacter.isPrimitive_one_level_zero π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] : DirichletCharacter.IsPrimitive 1 - DirichletCharacter.eq_one_iff_conductor_eq_one π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} {Ο : DirichletCharacter R n} [NeZero n] : Ο = 1 β Ο.conductor = 1 - DirichletCharacter.conductor_one_dvd π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] (n : β) : DirichletCharacter.conductor 1 β£ n - DirichletCharacter.conductor_mul_dvd_lcm_conductor π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο Ο : DirichletCharacter R n) : (Ο * Ο).conductor β£ Ο.conductor.lcm Ο.conductor - DirichletCharacter.Even.not_odd π Mathlib.NumberTheory.DirichletCharacter.Basic
{S : Type u_2} [CommRing S] {m : β} (Ο : DirichletCharacter S m) [NeZero 2] (hΟ : Ο.Even) : Β¬Ο.Odd - DirichletCharacter.Odd.not_even π Mathlib.NumberTheory.DirichletCharacter.Basic
{S : Type u_2} [CommRing S] {m : β} (Ο : DirichletCharacter S m) [NeZero 2] (hΟ : Ο.Odd) : Β¬Ο.Even - DirichletCharacter.level_one π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] (Ο : DirichletCharacter R 1) : Ο = 1 - DirichletCharacter.not_even_and_odd π Mathlib.NumberTheory.DirichletCharacter.Basic
{S : Type u_2} [CommRing S] {m : β} (Ο : DirichletCharacter S m) [NeZero 2] : Β¬(Ο.Even β§ Ο.Odd) - DirichletCharacter.conductor_zpow_dvd π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) (m : β€) : (Ο ^ m).conductor β£ Ο.conductor - DirichletCharacter.apply_ne_zero_iff π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) [Nontrivial R] (a : β€) : Ο βa β 0 β IsCoprime a βn - DirichletCharacter.apply_eq_zero_iff π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) [Nontrivial R] (a : β€) : Ο βa = 0 β Β¬IsCoprime a βn - DirichletCharacter.Even.to_fun π Mathlib.NumberTheory.DirichletCharacter.Basic
{S : Type u_2} [CommRing S] {m : β} {Ο : DirichletCharacter S m} (hΟ : Ο.Even) : Function.Even βΟ - DirichletCharacter.conductor_pow_dvd π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) (m : β) : (Ο ^ m).conductor β£ Ο.conductor - DirichletCharacter.map_zero' π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) (hn : n β 1) : Ο 0 = 0 - DirichletCharacter.Odd.to_fun π Mathlib.NumberTheory.DirichletCharacter.Basic
{S : Type u_2} [CommRing S] {m : β} {Ο : DirichletCharacter S m} (hΟ : Ο.Odd) : Function.Odd βΟ - DirichletCharacter.changeLevel π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n m : β} (hm : n β£ m) : DirichletCharacter R n β* DirichletCharacter R m - DirichletCharacter.mem_subgroupOfCoprimeConductor π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} [NeZero n] {d : β} {Ο : DirichletCharacter R n} : Ο β DirichletCharacter.subgroupOfCoprimeConductor d β d.Coprime Ο.conductor - DirichletCharacter.toUnitHom_inj π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο Ο : DirichletCharacter R n) : MulChar.toUnitHom Ο = MulChar.toUnitHom Ο β Ο = Ο - DirichletCharacter.Even.eval_neg π Mathlib.NumberTheory.DirichletCharacter.Basic
{S : Type u_2} [CommRing S] {m : β} (Ο : DirichletCharacter S m) (x : ZMod m) (hΟ : Ο.Even) : Ο (-x) = Ο x - DirichletCharacter.Odd.eval_neg π Mathlib.NumberTheory.DirichletCharacter.Basic
{S : Type u_2} [CommRing S] {m : β} (Ο : DirichletCharacter S m) (x : ZMod m) (hΟ : Ο.Odd) : Ο (-x) = -Ο x - DirichletCharacter.eval_modulus_sub π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) (x : ZMod n) : Ο (βn - x) = Ο (-x) - DirichletCharacter.primitiveCharacter_apply_of_isCoprime π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) {a : β€} (ha : IsCoprime a βn) : Ο.primitiveCharacter βa = Ο βa - DirichletCharacter.changeLevel_self π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) : (DirichletCharacter.changeLevel β―) Ο = Ο - DirichletCharacter.changeLevel_factorsThrough π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) {m : β} (hm : n β£ m) : ((DirichletCharacter.changeLevel hm) Ο).FactorsThrough n - DirichletCharacter.changeLevel_injective π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n m : β} [NeZero m] (hm : n β£ m) : Function.Injective β(DirichletCharacter.changeLevel hm) - DirichletCharacter.primitiveCharacter_one π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} [NeZero n] : DirichletCharacter.primitiveCharacter 1 = 1 - DirichletCharacter.mem_subgroupOfPrimitiveMapToOne_iff π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) [NeZero n] [Nontrivial R] (p : β) [hp : Fact (Nat.Prime p)] : Ο β DirichletCharacter.subgroupOfPrimitiveMapToOne R n p β Ο.primitiveCharacter βp = 1 - DirichletCharacter.conductor_changeLevel π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) {m : β} [NeZero m] (hm : n β£ m) : ((DirichletCharacter.changeLevel hm) Ο).conductor = Ο.conductor - DirichletCharacter.FactorsThrough.eq_changeLevel π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} {Ο : DirichletCharacter R n} {d : β} (h : Ο.FactorsThrough d) : Ο = (DirichletCharacter.changeLevel β―) h.Οβ - DirichletCharacter.mem_annihilator_iff π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} {H : Set (ZMod n)Λ£} {Ο : DirichletCharacter R n} : Ο β DirichletCharacter.annihilator R H β β a β H, Ο βa = 1 - DirichletCharacter.FactorsThrough.existsUnique π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} {Ο : DirichletCharacter R n} {d : β} [NeZero n] (h : Ο.FactorsThrough d) : β! Ο', Ο = (DirichletCharacter.changeLevel β―) Ο' - DirichletCharacter.toUnitHom_eq_char' π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) {a : ZMod n} (ha : IsUnit a) : Ο a = β((MulChar.toUnitHom Ο) ha.unit) - DirichletCharacter.conductor_le_conductor_mem_conductorSet π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} {Ο : DirichletCharacter R n} {d : β} (hd : d β Ο.conductorSet) : Ο.conductor β€ (Classical.choose β―).conductor - DirichletCharacter.changeLevel_one π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n d : β} (h : d β£ n) : (DirichletCharacter.changeLevel h) 1 = 1 - DirichletCharacter.changeLevel_eq_one_iff π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n m : β} [NeZero m] {Ο : DirichletCharacter R n} (hm : n β£ m) : (DirichletCharacter.changeLevel hm) Ο = 1 β Ο = 1 - DirichletCharacter.factorsThrough_iff_ker_unitsMap π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} {Ο : DirichletCharacter R n} {d : β} [NeZero n] (hd : d β£ n) : Ο.FactorsThrough d β (ZMod.unitsMap hd).ker β€ (MulChar.toUnitHom Ο).ker - DirichletCharacter.changeLevel_self_toUnitHom π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) : MulChar.toUnitHom ((DirichletCharacter.changeLevel β―) Ο) = MulChar.toUnitHom Ο - DirichletCharacter.changeLevel_eq_cast_of_dvd' π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) {m : β} (hm : n β£ m) {a : β€} (ha : IsCoprime a βm) : ((DirichletCharacter.changeLevel hm) Ο) βa = Ο βa - DirichletCharacter.changeLevel_primitiveCharacter π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) : (DirichletCharacter.changeLevel β―) Ο.primitiveCharacter = Ο - DirichletCharacter.changeLevel_eq_cast_of_dvd π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) {m : β} (hm : n β£ m) (a : (ZMod m)Λ£) : ((DirichletCharacter.changeLevel hm) Ο) βa = Ο (βa).cast - DirichletCharacter.changeLevel_def π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) {m : β} (hm : n β£ m) : (DirichletCharacter.changeLevel hm) Ο = MulChar.ofUnitHom ((MulChar.toUnitHom Ο).comp (ZMod.unitsMap hm)) - DirichletCharacter.mem_annihilator_iff_mem_closure π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} {H : Set (ZMod n)Λ£} {Ο : DirichletCharacter R n} : Ο β DirichletCharacter.annihilator R H β β x β Submonoid.closure H, Ο βx = 1 - DirichletCharacter.Even.toUnitHom_eval_neg_one π Mathlib.NumberTheory.DirichletCharacter.Basic
{S : Type u_2} [CommRing S] {m : β} (Ο : DirichletCharacter S m) (hΟ : Ο.Even) : (MulChar.toUnitHom Ο) (-1) = 1 - DirichletCharacter.Odd.toUnitHom_eval_neg_one π Mathlib.NumberTheory.DirichletCharacter.Basic
{S : Type u_2} [CommRing S] {m : β} (Ο : DirichletCharacter S m) (hΟ : Ο.Odd) : (MulChar.toUnitHom Ο) (-1) = -1 - DirichletCharacter.changeLevel_toUnitHom π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) {m : β} (hm : n β£ m) : MulChar.toUnitHom ((DirichletCharacter.changeLevel hm) Ο) = (MulChar.toUnitHom Ο).comp (ZMod.unitsMap hm) - DirichletCharacter.changeLevel_trans π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) {m d : β} (hm : n β£ m) (hd : m β£ d) : (DirichletCharacter.changeLevel β―) Ο = (DirichletCharacter.changeLevel hd) ((DirichletCharacter.changeLevel hm) Ο) - DirichletCharacter.factorsThrough_gcd π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} (Ο : DirichletCharacter R n) {m : β} [NeZero n] (Ο : DirichletCharacter R m) (h : (DirichletCharacter.changeLevel β―) Ο = (DirichletCharacter.changeLevel β―) Ο) : Ο.FactorsThrough (n.gcd m) - DirichletCharacter.primitiveCharacter_changeLevel_apply π Mathlib.NumberTheory.DirichletCharacter.Basic
{R : Type u_1} [CommMonoidWithZero R] {n : β} [Nontrivial R] {m : β} [NeZero m] (hm : n β£ m) (Ο : DirichletCharacter R n) (a : β€) : ((DirichletCharacter.changeLevel hm) Ο).primitiveCharacter βa = Ο.primitiveCharacter βa - gaussSum_eq_zero_of_isPrimitive_of_not_isPrimitive π Mathlib.NumberTheory.DirichletCharacter.GaussSum
{N : β} [NeZero N] {R : Type u_1} [CommRing R] (e : AddChar (ZMod N) R) [IsDomain R] {Ο : DirichletCharacter R N} (hΟ : Ο.IsPrimitive) (he : Β¬e.IsPrimitive) : gaussSum Ο e = 0 - gaussSum_mulShift_of_isPrimitive π Mathlib.NumberTheory.DirichletCharacter.GaussSum
{N : β} [NeZero N] {R : Type u_1} [CommRing R] (e : AddChar (ZMod N) R) [IsDomain R] {Ο : DirichletCharacter R N} (hΟ : Ο.IsPrimitive) (a : ZMod N) : gaussSum Ο (e.mulShift a) = Οβ»ΒΉ a * gaussSum Ο e - factorsThrough_of_gaussSum_ne_zero π Mathlib.NumberTheory.DirichletCharacter.GaussSum
{N : β} [NeZero N] {R : Type u_1} [CommRing R] (e : AddChar (ZMod N) R) [IsDomain R] {Ο : DirichletCharacter R N} {d : β} (hd : d β£ N) (he : e.mulShift βd = 1) (h_ne : gaussSum Ο e β 0) : Ο.FactorsThrough d - gaussSum_aux_of_mulShift π Mathlib.NumberTheory.DirichletCharacter.GaussSum
{N : β} [NeZero N] {R : Type u_1} [CommRing R] (e : AddChar (ZMod N) R) (Ο : DirichletCharacter R N) {d : β} (hd : d β£ N) (he : e.mulShift βd = 1) {u : (ZMod N)Λ£} (hu : (ZMod.unitsMap hd) u = 1) : Ο βu * gaussSum Ο e = gaussSum Ο e - DirichletCharacter.fourierTransform_eq_gaussSum_mulShift π Mathlib.Analysis.Fourier.ZMod
{N : β} [NeZero N] (Ο : DirichletCharacter β N) (k : ZMod N) : ZMod.dft (βΟ) k = gaussSum Ο (ZMod.stdAddChar.mulShift (-k)) - DirichletCharacter.IsPrimitive.fourierTransform_eq_inv_mul_gaussSum π Mathlib.Analysis.Fourier.ZMod
{N : β} [NeZero N] {Ο : DirichletCharacter β N} (hΟ : Ο.IsPrimitive) (k : ZMod N) : ZMod.dft (βΟ) k = Οβ»ΒΉ (-k) * gaussSum Ο ZMod.stdAddChar - DirichletCharacter.norm_le_one π Mathlib.NumberTheory.DirichletCharacter.Bounds
{F : Type u_1} [NormedField F] {n : β} (Ο : DirichletCharacter F n) (a : ZMod n) : βΟ aβ β€ 1 - DirichletCharacter.unit_norm_eq_one π Mathlib.NumberTheory.DirichletCharacter.Bounds
{F : Type u_1} [NormedField F] {n : β} (Ο : DirichletCharacter F n) (a : (ZMod n)Λ£) : βΟ βaβ = 1 - DirichletCharacter.fintype π Mathlib.NumberTheory.DirichletCharacter.Orthogonality
{R : Type u_1} [CommRing R] [IsDomain R] {n : β} : Fintype (DirichletCharacter R n) - DirichletCharacter.card_eq_totient_of_hasEnoughRootsOfUnity π Mathlib.NumberTheory.DirichletCharacter.Orthogonality
(R : Type u_1) [CommRing R] (n : β) [NeZero n] [HasEnoughRootsOfUnity R (Monoid.exponent (ZMod n)Λ£)] : Nat.card (DirichletCharacter R n) = n.totient - DirichletCharacter.mulEquiv_units π Mathlib.NumberTheory.DirichletCharacter.Orthogonality
(R : Type u_1) [CommRing R] (n : β) [NeZero n] [HasEnoughRootsOfUnity R (Monoid.exponent (ZMod n)Λ£)] : Nonempty (DirichletCharacter R n β* (ZMod n)Λ£) - DirichletCharacter.exists_apply_ne_one_of_hasEnoughRootsOfUnity π Mathlib.NumberTheory.DirichletCharacter.Orthogonality
(R : Type u_1) [CommRing R] {n : β} [NeZero n] [HasEnoughRootsOfUnity R (Monoid.exponent (ZMod n)Λ£)] [Nontrivial R] β¦a : ZMod nβ¦ (ha : a β 1) : β Ο, Ο a β 1 - DirichletCharacter.sum_characters_eq_zero π Mathlib.NumberTheory.DirichletCharacter.Orthogonality
(R : Type u_1) [CommRing R] {n : β} [NeZero n] [HasEnoughRootsOfUnity R (Monoid.exponent (ZMod n)Λ£)] [IsDomain R] β¦a : ZMod nβ¦ (ha : a β 1) : β Ο, Ο a = 0 - DirichletCharacter.sum_characters_eq π Mathlib.NumberTheory.DirichletCharacter.Orthogonality
(R : Type u_1) [CommRing R] {n : β} [NeZero n] [HasEnoughRootsOfUnity R (Monoid.exponent (ZMod n)Λ£)] [IsDomain R] (a : ZMod n) : β Ο, Ο a = if a = 1 then βn.totient else 0 - DirichletCharacter.sum_char_inv_mul_char_eq π Mathlib.NumberTheory.DirichletCharacter.Orthogonality
(R : Type u_1) [CommRing R] {n : β} [NeZero n] [HasEnoughRootsOfUnity R (Monoid.exponent (ZMod n)Λ£)] [IsDomain R] {a : ZMod n} (ha : IsUnit a) (b : ZMod n) : β Ο, Ο aβ»ΒΉ * Ο b = if a = b then βn.totient else 0 - DirichletCharacter.isMultiplicative_toArithmeticFunction π Mathlib.NumberTheory.LSeries.Dirichlet
{N : β} {R : Type u_1} [CommMonoidWithZero R] (Ο : DirichletCharacter R N) : (toArithmeticFunction fun x => Ο βx).IsMultiplicative - DirichletCharacter.LSeriesSummable_of_one_lt_re π Mathlib.NumberTheory.LSeries.Dirichlet
{N : β} (Ο : DirichletCharacter β N) {s : β} (hs : 1 < s.re) : LSeriesSummable (fun n => Ο βn) s - DirichletCharacter.not_LSeriesSummable_at_one π Mathlib.NumberTheory.LSeries.Dirichlet
{N : β} (hN : N β 0) (Ο : DirichletCharacter β N) : Β¬LSeriesSummable (fun n => Ο βn) 1 - DirichletCharacter.absicssaOfAbsConv_eq_one π Mathlib.NumberTheory.LSeries.Dirichlet
{N : β} (hn : N β 0) (Ο : DirichletCharacter β N) : (LSeries.abscissaOfAbsConv fun n => Ο βn) = 1 - DirichletCharacter.delta_mul π Mathlib.NumberTheory.LSeries.Dirichlet
{n : β} (Ο : DirichletCharacter β n) : (LSeries.delta * fun n_1 => Ο βn_1) = LSeries.delta - DirichletCharacter.mul_delta π Mathlib.NumberTheory.LSeries.Dirichlet
{n : β} (Ο : DirichletCharacter β n) : (fun n_1 => Ο βn_1) * LSeries.delta = LSeries.delta - DirichletCharacter.LSeries_ne_zero_of_one_lt_re π Mathlib.NumberTheory.LSeries.Dirichlet
{N : β} (Ο : DirichletCharacter β N) {s : β} (hs : 1 < s.re) : LSeries (fun n => Ο βn) s β 0 - DirichletCharacter.LSeriesSummable_iff π Mathlib.NumberTheory.LSeries.Dirichlet
{N : β} (hN : N β 0) (Ο : DirichletCharacter β N) {s : β} : LSeriesSummable (fun n => Ο βn) s β 1 < s.re - DirichletCharacter.LSeriesSummable_mul π Mathlib.NumberTheory.LSeries.Dirichlet
{N : β} (Ο : DirichletCharacter β N) {f : β β β} {s : β} (h : LSeriesSummable f s) : LSeriesSummable ((fun n => Ο βn) * f) s - DirichletCharacter.LSeriesSummable_twist_vonMangoldt π Mathlib.NumberTheory.LSeries.Dirichlet
{N : β} (Ο : DirichletCharacter β N) {s : β} (hs : 1 < s.re) : LSeriesSummable ((fun n => Ο βn) * fun n => β(ArithmeticFunction.vonMangoldt n)) s - DirichletCharacter.modZero_eq_delta π Mathlib.NumberTheory.LSeries.Dirichlet
{Ο : DirichletCharacter β 0} : (fun n => Ο βn) = LSeries.delta - DirichletCharacter.modOne_eq_one π Mathlib.NumberTheory.LSeries.Dirichlet
{R : Type u_1} [CommMonoidWithZero R] {Ο : DirichletCharacter R 1} : (fun x => Ο βx) = 1 - DirichletCharacter.apply_eq_toArithmeticFunction_apply π Mathlib.NumberTheory.LSeries.Dirichlet
{N : β} {R : Type u_1} [CommMonoidWithZero R] (Ο : DirichletCharacter R N) {n : β} (hn : n β 0) : Ο βn = (toArithmeticFunction fun x => Ο βx) n - DirichletCharacter.convolution_mul_moebius π Mathlib.NumberTheory.LSeries.Dirichlet
{n : β} (Ο : DirichletCharacter β n) : LSeries.convolution (fun n_1 => Ο βn_1) ((fun n_1 => Ο βn_1) * fun n => β(ArithmeticFunction.moebius n)) = LSeries.delta - DirichletCharacter.LSeries_modOne_eq π Mathlib.NumberTheory.LSeries.Dirichlet
: (LSeries fun n => 1 βn) = LSeries 1 - DirichletCharacter.LSeries.mul_mu_eq_one π Mathlib.NumberTheory.LSeries.Dirichlet
{N : β} (Ο : DirichletCharacter β N) {s : β} (hs : 1 < s.re) : LSeries (fun n => Ο βn) s * LSeries ((fun n => Ο βn) * fun n => β(ArithmeticFunction.moebius n)) s = 1 - DirichletCharacter.convolution_twist_vonMangoldt π Mathlib.NumberTheory.LSeries.Dirichlet
{N : β} (Ο : DirichletCharacter β N) : (LSeries.convolution ((fun n => Ο βn) * fun n => β(ArithmeticFunction.vonMangoldt n)) fun n => Ο βn) = (fun n => Ο βn) * fun n => Complex.log βn - DirichletCharacter.mul_convolution_distrib π Mathlib.NumberTheory.LSeries.Dirichlet
{R : Type u_1} [CommSemiring R] {n : β} (Ο : DirichletCharacter R n) (f g : β β R) : LSeries.convolution ((fun x => Ο βx) * f) ((fun x => Ο βx) * g) = (fun x => Ο βx) * LSeries.convolution f g - DirichletCharacter.LSeries_twist_vonMangoldt_eq π Mathlib.NumberTheory.LSeries.Dirichlet
{N : β} (Ο : DirichletCharacter β N) {s : β} (hs : 1 < s.re) : LSeries ((fun n => Ο βn) * fun n => β(ArithmeticFunction.vonMangoldt n)) s = -deriv (LSeries fun n => Ο βn) s / LSeries (fun n => Ο βn) s - dirichletSummandHom π Mathlib.NumberTheory.EulerProduct.DirichletLSeries
{s : β} {n : β} (Ο : DirichletCharacter β n) (hs : s β 0) : β β*β β - summable_dirichletSummand π Mathlib.NumberTheory.EulerProduct.DirichletLSeries
{s : β} {N : β} (Ο : DirichletCharacter β N) (hs : 1 < s.re) : Summable fun n => β(dirichletSummandHom Ο β―) nβ - tsum_dirichletSummand π Mathlib.NumberTheory.EulerProduct.DirichletLSeries
{s : β} {N : β} (Ο : DirichletCharacter β N) (hs : 1 < s.re) : β' (n : β), (dirichletSummandHom Ο β―) n = LSeries (fun n => Ο βn) s - DirichletCharacter.LSeries_eq_exp_LSeries π Mathlib.NumberTheory.EulerProduct.DirichletLSeries
{N : β} (Ο : DirichletCharacter β N) {s : β} (hs : 1 < s.re) : Complex.exp (LSeries (fun n => Ο βn * β(ArithmeticFunction.vonMangoldt n) / β(Real.log βn)) s) = LSeries (fun n => Ο βn) s - DirichletCharacter.LSeries_eulerProduct π Mathlib.NumberTheory.EulerProduct.DirichletLSeries
{s : β} {N : β} (Ο : DirichletCharacter β N) (hs : 1 < s.re) : Filter.Tendsto (fun n => β p β n.primesBelow, (1 - Ο βp * βp ^ (-s))β»ΒΉ) Filter.atTop (nhds (LSeries (fun n => Ο βn) s)) - DirichletCharacter.LSeries_eulerProduct_hasProd π Mathlib.NumberTheory.EulerProduct.DirichletLSeries
{s : β} {N : β} (Ο : DirichletCharacter β N) (hs : 1 < s.re) : HasProd (fun p => (1 - Ο ββp * ββp ^ (-s))β»ΒΉ) (LSeries (fun n => Ο βn) s) - DirichletCharacter.LSeries_eulerProduct_exp_log π Mathlib.NumberTheory.EulerProduct.DirichletLSeries
{N : β} (Ο : DirichletCharacter β N) {s : β} (hs : 1 < s.re) : Complex.exp (β' (p : Nat.Primes), -Complex.log (1 - Ο ββp * ββp ^ (-s))) = LSeries (fun n => Ο βn) s - DirichletCharacter.LSeries_eulerProduct_tprod π Mathlib.NumberTheory.EulerProduct.DirichletLSeries
{s : β} {N : β} (Ο : DirichletCharacter β N) (hs : 1 < s.re) : β' (p : Nat.Primes), (1 - Ο ββp * ββp ^ (-s))β»ΒΉ = LSeries (fun n => Ο βn) s - DirichletCharacter.eulerProduct_log_eq_LSeries π Mathlib.NumberTheory.EulerProduct.DirichletLSeries
{N : β} (Ο : DirichletCharacter β N) {s : β} (hs : 1 < s.re) : β' (p : Nat.Primes), -Complex.log (1 - Ο ββp * ββp ^ (-s)) = LSeries (fun n => Ο βn * β(ArithmeticFunction.vonMangoldt n) / β(Real.log βn)) s - DirichletCharacter.LSeries_changeLevel π Mathlib.NumberTheory.EulerProduct.DirichletLSeries
{M N : β} [NeZero N] (hMN : M β£ N) (Ο : DirichletCharacter β M) {s : β} (hs : 1 < s.re) : LSeries (fun n => ((DirichletCharacter.changeLevel hMN) Ο) βn) s = LSeries (fun n => Ο βn) s * β p β N.primeFactors, (1 - Ο βp * βp ^ (-s)) - DirichletCharacter.gammaFactor π Mathlib.NumberTheory.LSeries.DirichletContinuation
{N : β} (Ο : DirichletCharacter β N) (s : β) : β - DirichletCharacter.rootNumber π Mathlib.NumberTheory.LSeries.DirichletContinuation
{N : β} [NeZero N] (Ο : DirichletCharacter β N) : β - DirichletCharacter.LFunction π Mathlib.NumberTheory.LSeries.DirichletContinuation
{N : β} [NeZero N] (Ο : DirichletCharacter β N) (s : β) : β - DirichletCharacter.completedLFunction π Mathlib.NumberTheory.LSeries.DirichletContinuation
{N : β} [NeZero N] (Ο : DirichletCharacter β N) (s : β) : β - DirichletCharacter.Even.gammaFactor_def π Mathlib.NumberTheory.LSeries.DirichletContinuation
{N : β} {Ο : DirichletCharacter β N} (hΟ : Ο.Even) (s : β) : Ο.gammaFactor s = s.Gammaβ - DirichletCharacter.LFunction_modOne_eq π Mathlib.NumberTheory.LSeries.DirichletContinuation
{Ο : DirichletCharacter β 1} : DirichletCharacter.LFunction Ο = riemannZeta - DirichletCharacter.completedLFunction_modOne_eq π Mathlib.NumberTheory.LSeries.DirichletContinuation
{Ο : DirichletCharacter β 1} : DirichletCharacter.completedLFunction Ο = completedRiemannZeta - DirichletCharacter.rootNumber_modOne π Mathlib.NumberTheory.LSeries.DirichletContinuation
(Ο : DirichletCharacter β 1) : Ο.rootNumber = 1 - DirichletCharacter.Odd.gammaFactor_def π Mathlib.NumberTheory.LSeries.DirichletContinuation
{N : β} {Ο : DirichletCharacter β N} (hΟ : Ο.Odd) (s : β) : Ο.gammaFactor s = (s + 1).Gammaβ - DirichletCharacter.LFunction_eq_completed_div_gammaFactor π Mathlib.NumberTheory.LSeries.DirichletContinuation
{N : β} [NeZero N] (Ο : DirichletCharacter β N) (s : β) (h : s β 0 β¨ N β 1) : DirichletCharacter.LFunction Ο s = DirichletCharacter.completedLFunction Ο s / Ο.gammaFactor s - DirichletCharacter.Even.LFunction_neg_two_mul_nat π Mathlib.NumberTheory.LSeries.DirichletContinuation
{N : β} [NeZero N] {Ο : DirichletCharacter β N} (hΟ : Ο.Even) (n : β) [NeZero n] : DirichletCharacter.LFunction Ο (-(2 * βn)) = 0 - DirichletCharacter.Even.LFunction_neg_two_mul_nat_add_one π Mathlib.NumberTheory.LSeries.DirichletContinuation
{N : β} [NeZero N] {Ο : DirichletCharacter β N} (hΟ : Ο.Even) (n : β) : DirichletCharacter.LFunction Ο (-(2 * (βn + 1))) = 0 - DirichletCharacter.Odd.LFunction_neg_two_mul_nat_sub_one π Mathlib.NumberTheory.LSeries.DirichletContinuation
{N : β} [NeZero N] {Ο : DirichletCharacter β N} (hΟ : Ο.Odd) (n : β) : DirichletCharacter.LFunction Ο (-(2 * βn) - 1) = 0 - DirichletCharacter.LFunction_eq_LSeries π Mathlib.NumberTheory.LSeries.DirichletContinuation
{N : β} [NeZero N] (Ο : DirichletCharacter β N) {s : β} (hs : 1 < s.re) : DirichletCharacter.LFunction Ο s = LSeries (fun x => Ο βx) s - DirichletCharacter.differentiable_LFunction π Mathlib.NumberTheory.LSeries.DirichletContinuation
{N : β} [NeZero N] {Ο : DirichletCharacter β N} (hΟ : Ο β 1) : Differentiable β (DirichletCharacter.LFunction Ο) - DirichletCharacter.differentiable_completedLFunction π Mathlib.NumberTheory.LSeries.DirichletContinuation
{N : β} [NeZero N] {Ο : DirichletCharacter β N} (hΟ : Ο β 1) : Differentiable β (DirichletCharacter.completedLFunction Ο) - DirichletCharacter.differentiableAt_LFunction π Mathlib.NumberTheory.LSeries.DirichletContinuation
{N : β} [NeZero N] (Ο : DirichletCharacter β N) (s : β) (hs : s β 1 β¨ Ο β 1) : DifferentiableAt β (DirichletCharacter.LFunction Ο) s - DirichletCharacter.IsPrimitive.completedLFunction_one_sub π Mathlib.NumberTheory.LSeries.DirichletContinuation
{N : β} [NeZero N] {Ο : DirichletCharacter β N} (hΟ : Ο.IsPrimitive) (s : β) : DirichletCharacter.completedLFunction Ο (1 - s) = βN ^ (s - 1 / 2) * Ο.rootNumber * DirichletCharacter.completedLFunction Οβ»ΒΉ s - DirichletCharacter.deriv_LFunction_eq_deriv_LSeries π Mathlib.NumberTheory.LSeries.DirichletContinuation
{N : β} [NeZero N] (Ο : DirichletCharacter β N) {s : β} (hs : 1 < s.re) : deriv (DirichletCharacter.LFunction Ο) s = deriv (LSeries fun x => Ο βx) s - DirichletCharacter.differentiableAt_completedLFunction π Mathlib.NumberTheory.LSeries.DirichletContinuation
{N : β} [NeZero N] (Ο : DirichletCharacter β N) (s : β) (hsβ : s β 0 β¨ N β 1) (hsβ : s β 1 β¨ Ο β 1) : DifferentiableAt β (DirichletCharacter.completedLFunction Ο) s - DirichletCharacter.continuousOn_neg_logDeriv_LFunction_of_nontriv π Mathlib.NumberTheory.LSeries.DirichletContinuation
{n : β} [NeZero n] {Ο : DirichletCharacter β n} (hΟ : Ο β 1) : ContinuousOn (fun s => -deriv (DirichletCharacter.LFunction Ο) s / DirichletCharacter.LFunction Ο s) {s | DirichletCharacter.LFunction Ο s β 0} - DirichletCharacter.LFunction_changeLevel π Mathlib.NumberTheory.LSeries.DirichletContinuation
{M N : β} [NeZero M] [NeZero N] (hMN : M β£ N) (Ο : DirichletCharacter β M) {s : β} (h : Ο β 1 β¨ s β 1) : DirichletCharacter.LFunction ((DirichletCharacter.changeLevel hMN) Ο) s = DirichletCharacter.LFunction Ο s * β p β N.primeFactors, (1 - Ο βp * βp ^ (-s)) - DirichletCharacter.zetaMul π Mathlib.NumberTheory.LSeries.Nonvanishing
{N : β} (Ο : DirichletCharacter β N) : ArithmeticFunction β - DirichletCharacter.isMultiplicative_zetaMul π Mathlib.NumberTheory.LSeries.Nonvanishing
{N : β} (Ο : DirichletCharacter β N) : Ο.zetaMul.IsMultiplicative - _private.Mathlib.NumberTheory.LSeries.Nonvanishing.0.DirichletCharacter.BadChar.Ο π Mathlib.NumberTheory.LSeries.Nonvanishing
{N : β} [NeZero N] (self : DirichletCharacter.BadCharβ N) : DirichletCharacter β N - DirichletCharacter.LSeriesSummable_zetaMul π Mathlib.NumberTheory.LSeries.Nonvanishing
{N : β} (Ο : DirichletCharacter β N) {s : β} (hs : 1 < s.re) : LSeriesSummable (βΟ.zetaMul) s - _private.Mathlib.NumberTheory.LSeries.Nonvanishing.0.DirichletCharacter.BadChar.Ο_ne π Mathlib.NumberTheory.LSeries.Nonvanishing
{N : β} [NeZero N] (self : DirichletCharacter.BadCharβ N) : DirichletCharacter.BadChar.Οβ self β 1 - DirichletCharacter.LFunction_apply_one_ne_zero π Mathlib.NumberTheory.LSeries.Nonvanishing
{N : β} {Ο : DirichletCharacter β N} [NeZero N] (hΟ : Ο β 1) : DirichletCharacter.LFunction Ο 1 β 0 - DirichletCharacter.LFunction_ne_zero_of_re_eq_one π Mathlib.NumberTheory.LSeries.Nonvanishing
{N : β} (Ο : DirichletCharacter β N) [NeZero N] {s : β} (hs : s.re = 1) (hΟs : Ο β 1 β¨ s β 1) : DirichletCharacter.LFunction Ο s β 0 - DirichletCharacter.LFunction_ne_zero_of_one_le_re π Mathlib.NumberTheory.LSeries.Nonvanishing
{N : β} (Ο : DirichletCharacter β N) [NeZero N] β¦s : ββ¦ (hΟs : Ο β 1 β¨ s β 1) (hs : 1 β€ s.re) : DirichletCharacter.LFunction Ο s β 0 - DirichletCharacter.summable_neg_log_one_sub_mul_prime_cpow π Mathlib.NumberTheory.LSeries.Nonvanishing
{N : β} (Ο : DirichletCharacter β N) {s : β} (hs : 1 < s.re) : Summable fun p => -Complex.log (1 - Ο ββp * ββp ^ (-s)) - DirichletCharacter.LFunction_isBigO_horizontal π Mathlib.NumberTheory.LSeries.Nonvanishing
{N : β} (Ο : DirichletCharacter β N) [NeZero N] {y : β} (hy : y β 0 β¨ Ο β 1) : (fun x => DirichletCharacter.LFunction Ο (1 + βx + Complex.I * βy)) =O[nhdsWithin 0 (Set.Ioi 0)] fun x => 1 - _private.Mathlib.NumberTheory.LSeries.Nonvanishing.0.DirichletCharacter.BadChar.Ο_sq π Mathlib.NumberTheory.LSeries.Nonvanishing
{N : β} [NeZero N] (self : DirichletCharacter.BadCharβ N) : DirichletCharacter.BadChar.Οβ self ^ 2 = 1 - DirichletCharacter.zetaMul_nonneg π Mathlib.NumberTheory.LSeries.Nonvanishing
{N : β} {Ο : DirichletCharacter β N} (hΟ : Ο ^ 2 = 1) (n : β) : 0 β€ Ο.zetaMul n - DirichletCharacter.zetaMul_prime_pow_nonneg π Mathlib.NumberTheory.LSeries.Nonvanishing
{N : β} {Ο : DirichletCharacter β N} (hΟ : Ο ^ 2 = 1) {p : β} (hp : Nat.Prime p) (k : β) : 0 β€ Ο.zetaMul (p ^ k) - DirichletCharacter.norm_LFunction_product_ge_one π Mathlib.NumberTheory.LSeries.Nonvanishing
{N : β} (Ο : DirichletCharacter β N) [NeZero N] {x : β} (hx : 0 < x) (y : β) : βDirichletCharacter.LFunctionTrivChar N (1 + βx) ^ 3 * DirichletCharacter.LFunction Ο (1 + βx + Complex.I * βy) ^ 4 * DirichletCharacter.LFunction (Ο ^ 2) (1 + βx + 2 * Complex.I * βy)β β₯ 1 - DirichletCharacter.norm_LSeries_product_ge_one π Mathlib.NumberTheory.LSeries.Nonvanishing
{N : β} (Ο : DirichletCharacter β N) {x : β} (hx : 0 < x) (y : β) : βLSeries (fun n => 1 βn) (1 + βx) ^ 3 * LSeries (fun n => Ο βn) (1 + βx + Complex.I * βy) ^ 4 * LSeries (fun n => (Ο ^ 2) βn) (1 + βx + 2 * Complex.I * βy)β β₯ 1 - ArithmeticFunction.vonMangoldt.continuousOn_LFunctionResidueClassAux' π Mathlib.NumberTheory.LSeries.PrimesInAP
{q : β} (a : ZMod q) [NeZero q] : ContinuousOn (ArithmeticFunction.vonMangoldt.LFunctionResidueClassAux a) {s | s = 1 β¨ β (Ο : DirichletCharacter β q), DirichletCharacter.LFunction Ο s β 0} - ArithmeticFunction.vonMangoldt.LSeries_residueClass_eq π Mathlib.NumberTheory.LSeries.PrimesInAP
{q : β} {a : ZMod q} [NeZero q] (ha : IsUnit a) {s : β} (hs : 1 < s.re) : LSeries (fun n => β(ArithmeticFunction.vonMangoldt.residueClass a n)) s = -(βq.totient)β»ΒΉ * β Ο, Ο aβ»ΒΉ * (deriv (DirichletCharacter.LFunction Ο) s / DirichletCharacter.LFunction Ο s) - ArithmeticFunction.vonMangoldt.residueClass_apply π Mathlib.NumberTheory.LSeries.PrimesInAP
{q : β} {a : ZMod q} [NeZero q] (ha : IsUnit a) (n : β) : β(ArithmeticFunction.vonMangoldt.residueClass a n) = (βq.totient)β»ΒΉ * β Ο, Ο aβ»ΒΉ * Ο βn * β(ArithmeticFunction.vonMangoldt n) - ArithmeticFunction.vonMangoldt.residueClass_eq π Mathlib.NumberTheory.LSeries.PrimesInAP
{q : β} {a : ZMod q} [NeZero q] (ha : IsUnit a) : (fun n => β(ArithmeticFunction.vonMangoldt.residueClass a n)) = (βq.totient)β»ΒΉ β’ β Ο, Ο aβ»ΒΉ β’ fun n => Ο βn * β(ArithmeticFunction.vonMangoldt n) - IsCyclotomicExtension.Rat.intermediateFieldEquivSubgroupChar π Mathlib.NumberTheory.NumberField.Cyclotomic.Galois
(n : β) [NeZero n] (K : Type u_1) [Field K] [NumberField K] [hK : IsCyclotomicExtension {n} β K] (R : Type u_2) [CommRing R] [HasEnoughRootsOfUnity R (Monoid.exponent (ZMod n)Λ£)] [IsAbelianGalois β K] : IntermediateField β K βo Subgroup (DirichletCharacter R n) - IsCyclotomicExtension.Rat.subgroupGalEquivSubgroupChar π Mathlib.NumberTheory.NumberField.Cyclotomic.Galois
(n : β) [NeZero n] (K : Type u_1) [Field K] [NumberField K] [hK : IsCyclotomicExtension {n} β K] (R : Type u_2) [CommRing R] [HasEnoughRootsOfUnity R (Monoid.exponent (ZMod n)Λ£)] : Subgroup Gal(K/β) βo (Subgroup (DirichletCharacter R n))α΅α΅ - IsCyclotomicExtension.Rat.card_intermediateFieldEquivSubgroupChar π Mathlib.NumberTheory.NumberField.Cyclotomic.Galois
(n : β) [NeZero n] (K : Type u_1) [Field K] [NumberField K] [hK : IsCyclotomicExtension {n} β K] (R : Type u_2) [CommRing R] [HasEnoughRootsOfUnity R (Monoid.exponent (ZMod n)Λ£)] [IsAbelianGalois β K] (F : IntermediateField β K) : Nat.card β₯((IsCyclotomicExtension.Rat.intermediateFieldEquivSubgroupChar n K R) F) = Module.finrank β β₯F - IsCyclotomicExtension.Rat.mem_intermediateFieldEquivSubgroupChar_iff_conductor_dvd π Mathlib.NumberTheory.NumberField.Cyclotomic.Galois
(n : β) [NeZero n] (K : Type u_1) [Field K] [NumberField K] [hK : IsCyclotomicExtension {n} β K] (R : Type u_2) [CommRing R] [HasEnoughRootsOfUnity R (Monoid.exponent (ZMod n)Λ£)] [IsAbelianGalois β K] (F : IntermediateField β K) {m : β} [NeZero m] [IsGalois β β₯F] [IsCyclotomicExtension {m} β β₯F] (hdiv : m β£ n) (Ο : DirichletCharacter R n) : Ο β (IsCyclotomicExtension.Rat.intermediateFieldEquivSubgroupChar n K R) F β Ο.conductor β£ m - IsCyclotomicExtension.Rat.card_subgroupGalEquivSubgroupChar π Mathlib.NumberTheory.NumberField.Cyclotomic.Galois
(n : β) [NeZero n] (K : Type u_1) [Field K] [NumberField K] [hK : IsCyclotomicExtension {n} β K] (R : Type u_2) [CommRing R] [HasEnoughRootsOfUnity R (Monoid.exponent (ZMod n)Λ£)] [IsMulCommutative Gal(K/β)] (H : Subgroup Gal(K/β)) : Nat.card β₯(OrderDual.ofDual ((IsCyclotomicExtension.Rat.subgroupGalEquivSubgroupChar n K R) H)) = Nat.card (Gal(K/β) β§Έ H) - IsCyclotomicExtension.Rat.mem_intermediateFieldEquivSubgroupChar_iff π Mathlib.NumberTheory.NumberField.Cyclotomic.Galois
(n : β) [NeZero n] (K : Type u_1) [Field K] [NumberField K] [hK : IsCyclotomicExtension {n} β K] (R : Type u_2) [CommRing R] [HasEnoughRootsOfUnity R (Monoid.exponent (ZMod n)Λ£)] [IsAbelianGalois β K] (F : IntermediateField β K) (Ο : DirichletCharacter R n) : Ο β (IsCyclotomicExtension.Rat.intermediateFieldEquivSubgroupChar n K R) F β β Ο β F.fixingSubgroup, Ο β((IsCyclotomicExtension.Rat.galEquivZMod n K) Ο) = 1 - IsCyclotomicExtension.Rat.mem_subgroupGalEquivSubgroupChar_iff π Mathlib.NumberTheory.NumberField.Cyclotomic.Galois
(n : β) [NeZero n] (K : Type u_1) [Field K] [NumberField K] [hK : IsCyclotomicExtension {n} β K] (R : Type u_2) [CommRing R] [HasEnoughRootsOfUnity R (Monoid.exponent (ZMod n)Λ£)] (Ο : DirichletCharacter R n) (H : Subgroup Gal(K/β)) : Ο β OrderDual.ofDual ((IsCyclotomicExtension.Rat.subgroupGalEquivSubgroupChar n K R) H) β β Ο β H, Ο β((IsCyclotomicExtension.Rat.galEquivZMod n K) Ο) = 1 - IsCyclotomicExtension.Rat.mem_subgroupGalEquivSubgroupChar_symm_iff π Mathlib.NumberTheory.NumberField.Cyclotomic.Galois
(n : β) [NeZero n] (K : Type u_1) [Field K] [NumberField K] [hK : IsCyclotomicExtension {n} β K] (R : Type u_2) [CommRing R] [HasEnoughRootsOfUnity R (Monoid.exponent (ZMod n)Λ£)] (Ο : Gal(K/β)) (Y : Subgroup (DirichletCharacter R n)) : Ο β (IsCyclotomicExtension.Rat.subgroupGalEquivSubgroupChar n K R).symm (OrderDual.toDual Y) β β Ο β Y, Ο β((IsCyclotomicExtension.Rat.galEquivZMod n K) Ο) = 1
About
Loogle searches Lean and Mathlib definitions and theorems.
You can use Loogle from within the Lean4 VSCode language extension
using the Loogle command from the command palette. You can also try the
#loogle command from LeanSearchClient,
the CLI version, the Loogle
VS Code extension, the lean.nvim
integration or the Zulip bot.
Usage
Loogle finds definitions and lemmas in various ways:
By constant:
πReal.sin
finds all lemmas whose statement somehow mentions the sine function.By lemma name substring:
π"differ"
finds all lemmas that have"differ"somewhere in their lemma name.By subexpression:
π_ * (_ ^ _)
finds all lemmas whose statements somewhere include a product where the second argument is raised to some power.The pattern can also be non-linear, as in
πReal.sqrt ?a * Real.sqrt ?aIf the pattern has parameters, they are matched in any order. Both of these will find
List.map:
π(?a -> ?b) -> List ?a -> List ?b
πList ?a -> (?a -> ?b) -> List ?bBy main conclusion:
π|- tsum _ = _ * tsum _
finds all lemmas where the conclusion (the subexpression to the right of allβandβ) has the given shape.As before, if the pattern has parameters, they are matched against the hypotheses of the lemma in any order; for example,
π|- _ < _ β tsum _ < tsum _
will findtsum_lt_tsumeven though the hypothesisf i < g iis not the last.You can filter for definitions vs theorems: Using
β’ (_ : Type _)finds all definitions which provide data whileβ’ (_ : Prop)finds all theorems (and definitions of proofs).
If you pass more than one such search filter, separated by commas
Loogle will return lemmas which match all of them. The
search
π Real.sin, "two", tsum, _ * _, _ ^ _, |- _ < _ β _
would find all lemmas which mention the constants Real.sin
and tsum, have "two" as a substring of the
lemma name, include a product and a power somewhere in the type,
and have a hypothesis of the form _ < _ (if
there were any such lemmas). Metavariables (?a) are
assigned independently in each filter.
The #lucky button will directly send you to the
documentation of the first hit.
Source code
You can find the source code for this service at https://github.com/nomeata/loogle. The https://loogle.lean-lang.org/ service is provided by the Lean FRO. Please review the Lean FRO Terms of Use and Privacy Policy.
This is Loogle revision 9f11169 serving mathlib revision 69fae59