Periodic points #
A point x : α is a periodic point of f : α → α of period n if f^[n] x = x.
Main definitions #
is_periodic_pt f n x:xis a periodic point offof periodn, i.e.f^[n] x = x. We do not requiren > 0in the definition.pts_of_period f n: the set{x | is_periodic_pt f n x}. Note thatnis not required to be the minimal period ofx.periodic_pts f: the set of all periodic points off.minimal_period f x: the minimal period of a pointxunder an endomorphismfor zero ifxis not a periodic point off.
Main statements #
We provide “dot syntax”-style operations on terms of the form h : is_periodic_pt f n x including
arithmetic operations on n and h.map (hg : semiconj_by g f f'). We also prove that f
is bijective on each set pts_of_period f n and on periodic_pts f. Finally, we prove that x
is a periodic point of f of period n if and only if minimal_period f x | n.
References #
A point x is a periodic point of f : α → α of period n if f^[n] x = x.
Note that we do not require 0 < n in this definition. Many theorems about periodic points
need this assumption.
Equations
- function.is_periodic_pt f n x = function.is_fixed_pt f^[n] x
A fixed point of f is a periodic point of f of any prescribed period.
For the identity map, all points are periodic.
Any point is a periodic point of period 0.
If f sends two periodic points x and y of the same positive period to the same point,
then x = y. For a similar statement about points of different periods see eq_of_apply_eq.
If f sends two periodic points x and y of positive periods to the same point,
then x = y.
The set of periodic points of a given (possibly non-minimal) period.
Equations
- function.pts_of_period f n = {x : α | function.is_periodic_pt f n x}
The set of periodic points of a map f : α → α.
Equations
- function.periodic_pts f = {x : α | ∃ (n : ℕ) (H : n > 0), function.is_periodic_pt f n x}
Minimal period of a point x under an endomorphism f. If x is not a periodic point of f,
then minimal_period f x = 0.
Equations
- function.minimal_period f x = dite (x ∈ function.periodic_pts f) (λ (h : x ∈ function.periodic_pts f), nat.find h) (λ (h : x ∉ function.periodic_pts f), 0)