mathlib3 documentation

dynamics.fixed_points.basic

Fixed points of a self-map #

THIS FILE IS SYNCHRONIZED WITH MATHLIB4. Any changes to this file require a corresponding PR to mathlib4.

In this file we define

We also prove some simple lemmas about is_fixed_pt and , iterate, and semiconj.

Tags #

fixed point

def function.is_fixed_pt {α : Type u} (f : α α) (x : α) :
Prop

A point x is a fixed point of f : α → α if f x = x.

Equations
Instances for function.is_fixed_pt
theorem function.is_fixed_pt_id {α : Type u} (x : α) :

Every point is a fixed point of id.

@[protected, instance]
def function.is_fixed_pt.decidable {α : Type u} [h : decidable_eq α] {f : α α} {x : α} :
Equations
@[protected]
theorem function.is_fixed_pt.eq {α : Type u} {f : α α} {x : α} (hf : function.is_fixed_pt f x) :
f x = x

If x is a fixed point of f, then f x = x. This is useful, e.g., for rw or simp.

@[protected]
theorem function.is_fixed_pt.comp {α : Type u} {f g : α α} {x : α} (hf : function.is_fixed_pt f x) (hg : function.is_fixed_pt g x) :

If x is a fixed point of f and g, then it is a fixed point of f ∘ g.

@[protected]
theorem function.is_fixed_pt.iterate {α : Type u} {f : α α} {x : α} (hf : function.is_fixed_pt f x) (n : ) :

If x is a fixed point of f, then it is a fixed point of f^[n].

theorem function.is_fixed_pt.left_of_comp {α : Type u} {f g : α α} {x : α} (hfg : function.is_fixed_pt (f g) x) (hg : function.is_fixed_pt g x) :

If x is a fixed point of f ∘ g and g, then it is a fixed point of f.

theorem function.is_fixed_pt.to_left_inverse {α : Type u} {f g : α α} {x : α} (hf : function.is_fixed_pt f x) (h : function.left_inverse g f) :

If x is a fixed point of f and g is a left inverse of f, then x is a fixed point of g.

@[protected]
theorem function.is_fixed_pt.map {α : Type u} {β : Type v} {fa : α α} {fb : β β} {x : α} (hx : function.is_fixed_pt fa x) {g : α β} (h : function.semiconj g fa fb) :

If g (semi)conjugates fa to fb, then it sends fixed points of fa to fixed points of fb.

@[protected]
theorem function.is_fixed_pt.apply {α : Type u} {f : α α} {x : α} (hx : function.is_fixed_pt f x) :
@[protected]
@[protected]
@[protected]
theorem function.is_fixed_pt.perm_pow {α : Type u} {x : α} {e : equiv.perm α} (h : function.is_fixed_pt e x) (n : ) :
@[protected]
theorem function.is_fixed_pt.perm_zpow {α : Type u} {x : α} {e : equiv.perm α} (h : function.is_fixed_pt e x) (n : ) :
@[simp]
@[simp]
theorem function.mem_fixed_points {α : Type u} {f : α α} {x : α} :
theorem function.mem_fixed_points_iff {α : Type u_1} {f : α α} {x : α} :
theorem function.semiconj.maps_to_fixed_pts {α : Type u} {β : Type v} {fa : α α} {fb : β β} {g : α β} (h : function.semiconj g fa fb) :

If g semiconjugates fa to fb, then it sends fixed points of fa to fixed points of fb.

theorem function.inv_on_fixed_pts_comp {α : Type u} {β : Type v} (f : α β) (g : β α) :

Any two maps f : α → β and g : β → α are inverse of each other on the sets of fixed points of f ∘ g and g ∘ f, respectively.

theorem function.maps_to_fixed_pts_comp {α : Type u} {β : Type v} (f : α β) (g : β α) :

Any map f sends fixed points of g ∘ f to fixed points of f ∘ g.

theorem function.bij_on_fixed_pts_comp {α : Type u} {β : Type v} (f : α β) (g : β α) :

Given two maps f : α → β and g : β → α, g is a bijective map between the fixed points of f ∘ g and the fixed points of g ∘ f. The inverse map is f, see inv_on_fixed_pts_comp.

If self-maps f and g commute, then they are inverse of each other on the set of fixed points of f ∘ g. This is a particular case of function.inv_on_fixed_pts_comp.

If self-maps f and g commute, then f is bijective on the set of fixed points of f ∘ g. This is a particular case of function.bij_on_fixed_pts_comp.

If self-maps f and g commute, then g is bijective on the set of fixed points of f ∘ g. This is a particular case of function.bij_on_fixed_pts_comp.