/- Copyright 2025 The Formal Conjectures Authors. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at https://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. -/ import FormalConjecturesUtil

Equidistributed Sequences

Corollary 4.2 of Chapter 1 states that the sequence $(x^n), n = 1, 2, ... ,$ is equidistributed modulo 1 for almost all x > 1. And a little bit further down: "one does not know whether sequences such as $(e^n)$, $(π^n)$, or even $((\frac 3 2)^n)$" are equidistributed modulo 1 or not.

References:

namespace Equidistributionopen scoped Topology

A point x is an accumulation point of a sequence s_0, s_1, ... if any neighbourhood of x contains a point of the sequence distinct from x.

def IsAccumulationPoint (x : ) (s : ) : Prop := x closure (Set.range s \ {x})

If a point x is an accumulation point of a sequence s_0, s_1, ... then there is a subsequence of s that tends to x

@[category textbook, AMS 11 54] theorem isAccumulationPoint_exists_subsequence_tendsto (x : ) (s : ) (hx : IsAccumulationPoint x s) : (u : ), StrictMono u Filter.atTop.Tendsto (s u) (𝓝 x) := x:s: hx:IsAccumulationPoint x s u, StrictMono u Filter.Tendsto (s u) Filter.atTop (𝓝 x) All goals completed! 🐙

The sequence (3/2)^n is equidistributed modulo 1.

@[category research open, AMS 11] theorem isEquidistributedModuloOne_three_halves_pow : IsEquidistributedModuloOne (fun n => (3 / 2 : )^n) := IsEquidistributedModuloOne fun n (3 / 2) ^ n All goals completed! 🐙

For any transcendental number x, the sequence x * (3 / 2) ^ n is equidistributed modulo 1.

@[category research open, AMS 11] theorem isEquidistributedModuloOne_transcendental_three_halves_pow (x : ) (hx : Transcendental x) : IsEquidistributedModuloOne (fun n x * (3 / 2 : ) ^ n) := x:hx:Transcendental xIsEquidistributedModuloOne fun n x * (3 / 2) ^ n All goals completed! 🐙

The sequence (3/2)^n has infinitely many accumulation points modulo 1.

@[category research solved, AMS 11] theorem isAccumulationPoint_three_halves_pow_infinite : {x | IsAccumulationPoint x (fun n => Int.fract <| (3 / 2 : )^n)}.Infinite := {x | IsAccumulationPoint x fun n Int.fract ((3 / 2) ^ n)}.Infinite All goals completed! 🐙

Find an accumulation point of the sequence (3/2)^n modulo 1.

@[category research open, AMS 11] theorem isAccumulationPoint_three_halves_pow : IsAccumulationPoint answer(sorry) (fun n => Int.fract <| (3 / 2 : )^n) := IsAccumulationPoint sorry fun n Int.fract ((3 / 2) ^ n) All goals completed! 🐙

There is an accumulation point of the sequence (3/2)^n modulo 1.

@[category test, AMS 11] theorem isAccumulationPoint_three_halves_pow_exists : p, (IsAccumulationPoint p (fun n => Int.fract <| (3 / 2 : )^n)) := p, IsAccumulationPoint p fun n Int.fract ((3 / 2) ^ n) All goals completed! 🐙end Equidistribution