The candidate locus is stable under conjugation and under non-zero rational scaling
ProvedDiaz.locus_stableSource. The closing sentence of Definition 1.2 in Carlo Perassi's manuscript Rigidity of logarithms with algebraic modulus — around a conjecture of Diaz, Section 1, The conjecture and its elementary normal form: "The set is stable under , negation, and conjugation." The mathematics is Carlo Perassi's; no novelty is claimed, and the statement is elementary and possibly known — it has not been checked against the literature.
Statement. Say that is a candidate when , is algebraic over (that is, ), and is algebraic over ; Diaz's conjecture is that no candidate exists. Then, for a candidate :
- is again a candidate;
- is again a candidate, for every non-zero rational .
Negation is the case , so the three stabilities of Definition 1.2 are covered by the two clauses. The predicate is inlined into the statement rather than named, so the node depends on no definition of its own.
Proof. For conjugation, and complex conjugation is a -algebra automorphism of , so it preserves algebraicity over ; and . For scaling, write with , ; then , which is algebraic, and a complex number with an algebraic power is algebraic. The modulus condition scales as .
What it is for. It is the statement that lets one normalize a hypothetical counterexample without loss: the locus is a union of punctured -lines, closed under the reflection that the whole problem is about. It reduces nothing — it says the set of counterexamples has these symmetries, not that it is empty. Note, per Remark 1.4 of the same section, that the real scalings which would let one normalize are exactly what this does not give: acts, does not.
import Mathlib import Definitions.Def_Diaz_Closure import Definitions.Def_Diaz_Instantiation open ComplexConjugate open Diaz
theorem Diaz.locus_stable {u : ℂ} (hu : u ≠ 0)
(hexp : IsAlgebraic ℚ (Complex.exp u)) (hmod : IsAlgebraic ℚ (u * conj u)) :
(conj u ≠ 0 ∧ IsAlgebraic ℚ (Complex.exp (conj u)) ∧
IsAlgebraic ℚ (conj u * conj (conj u))) ∧
∀ q : ℚ, q ≠ 0 →
((q : ℂ) * u ≠ 0 ∧ IsAlgebraic ℚ (Complex.exp ((q : ℂ) * u)) ∧
IsAlgebraic ℚ (((q : ℂ) * u) * conj ((q : ℂ) * u))) := by sorry