mathlib documentation

order.fixed_points

Fixed point construction on complete lattices #

This file sets up the basic theory of fixed points of a monotone function in a complete lattice.

Main definitions #

Tags #

fixed point, complete lattice, monotone function

def order_hom.lfp {α : Type u} [complete_lattice α] :
→o α) →o α

Least fixed point of a monotone function

Equations
def order_hom.gfp {α : Type u} [complete_lattice α] :
→o α) →o α

Greatest fixed point of a monotone function

Equations
theorem order_hom.lfp_le {α : Type u} [complete_lattice α] (f : α →o α) {a : α} (h : f a a) :
theorem order_hom.lfp_le_fixed {α : Type u} [complete_lattice α] (f : α →o α) {a : α} (h : f a = a) :
theorem order_hom.le_lfp {α : Type u} [complete_lattice α] (f : α →o α) {a : α} (h : (b : α), f b b a b) :
theorem order_hom.map_le_lfp {α : Type u} [complete_lattice α] (f : α →o α) {a : α} (ha : a order_hom.lfp f) :
@[simp]
theorem order_hom.map_lfp {α : Type u} [complete_lattice α] (f : α →o α) :
theorem order_hom.lfp_le_map {α : Type u} [complete_lattice α] (f : α →o α) {a : α} (ha : order_hom.lfp f a) :
theorem order_hom.is_least_lfp_le {α : Type u} [complete_lattice α] (f : α →o α) :
is_least {a : α | f a a} (order_hom.lfp f)
theorem order_hom.lfp_induction {α : Type u} [complete_lattice α] (f : α →o α) {p : α Prop} (step : (a : α), p a a order_hom.lfp f p (f a)) (hSup : (s : set α), ( (a : α), a s p a) p (has_Sup.Sup s)) :
theorem order_hom.le_gfp {α : Type u} [complete_lattice α] (f : α →o α) {a : α} (h : a f a) :
theorem order_hom.gfp_le {α : Type u} [complete_lattice α] (f : α →o α) {a : α} (h : (b : α), b f b b a) :
@[simp]
theorem order_hom.map_gfp {α : Type u} [complete_lattice α] (f : α →o α) :
theorem order_hom.map_le_gfp {α : Type u} [complete_lattice α] (f : α →o α) {a : α} (ha : a order_hom.gfp f) :
theorem order_hom.gfp_le_map {α : Type u} [complete_lattice α] (f : α →o α) {a : α} (ha : order_hom.gfp f a) :
theorem order_hom.is_greatest_gfp_le {α : Type u} [complete_lattice α] (f : α →o α) :
is_greatest {a : α | a f a} (order_hom.gfp f)
theorem order_hom.gfp_induction {α : Type u} [complete_lattice α] (f : α →o α) {p : α Prop} (step : (a : α), p a order_hom.gfp f a p (f a)) (hInf : (s : set α), ( (a : α), a s p a) p (has_Inf.Inf s)) :
theorem order_hom.map_lfp_comp {α : Type u} {β : Type v} [complete_lattice α] [complete_lattice β] (f : β →o α) (g : α →o β) :
theorem order_hom.map_gfp_comp {α : Type u} {β : Type v} [complete_lattice α] [complete_lattice β] (f : β →o α) (g : α →o β) :
theorem order_hom.gfp_const_inf_le {α : Type u} [complete_lattice α] (f : α →o α) (x : α) :
def order_hom.prev_fixed {α : Type u} [complete_lattice α] (f : α →o α) (x : α) (hx : f x x) :

Previous fixed point of a monotone map. If f is a monotone self-map of a complete lattice and x is a point such that f x ≤ x, then f.prev_fixed x hx is the greatest fixed point of f that is less than or equal to x.

Equations
def order_hom.next_fixed {α : Type u} [complete_lattice α] (f : α →o α) (x : α) (hx : x f x) :

Next fixed point of a monotone map. If f is a monotone self-map of a complete lattice and x is a point such that x ≤ f x, then f.next_fixed x hx is the least fixed point of f that is greater than or equal to x.

Equations
theorem order_hom.prev_fixed_le {α : Type u} [complete_lattice α] (f : α →o α) {x : α} (hx : f x x) :
(f.prev_fixed x hx) x
theorem order_hom.le_next_fixed {α : Type u} [complete_lattice α] (f : α →o α) {x : α} (hx : x f x) :
x (f.next_fixed x hx)
theorem order_hom.next_fixed_le {α : Type u} [complete_lattice α] (f : α →o α) {x : α} (hx : x f x) {y : (function.fixed_points f)} (h : x y) :
f.next_fixed x hx y
@[simp]
theorem order_hom.next_fixed_le_iff {α : Type u} [complete_lattice α] (f : α →o α) {x : α} (hx : x f x) {y : (function.fixed_points f)} :
f.next_fixed x hx y x y
@[simp]
theorem order_hom.le_prev_fixed_iff {α : Type u} [complete_lattice α] (f : α →o α) {x : α} (hx : f x x) {y : (function.fixed_points f)} :
y f.prev_fixed x hx y x
theorem order_hom.le_prev_fixed {α : Type u} [complete_lattice α] (f : α →o α) {x : α} (hx : f x x) {y : (function.fixed_points f)} (h : y x) :
y f.prev_fixed x hx