Lipschitz continuous functions
A map f : α → β
between two (extended) metric spaces is called Lipschitz continuous
with constant K ≥ 0
if for all x, y
we have edist (f x) (f y) ≤ K * edist x y
.
For a metric space, the latter inequality is equivalent to dist (f x) (f y) ≤ K * dist x y
.
In this file we provide various ways to prove that various combinations of Lipschitz continuous functions are Lipschitz continuous. We also prove that Lipschitz continuous functions are uniformly continuous.
Implementation notes
The parameter K
has type nnreal
. This way we avoid conjuction in the definition and have
coercions both to ℝ
and ennreal
. Constructors whose names end with '
take K : ℝ
as an
argument, and return lipschitz_with (nnreal.of_real K) f
.
A function f
is Lipschitz continuous with constant K ≥ 0
if for all x, y
we have dist (f x) (f y) ≤ K * dist x y
Equations
- lipschitz_with K f = ∀ (x y : α), has_edist.edist (f x) (f y) ≤ ↑K * has_edist.edist x y
A Lipschitz function is uniformly continuous
A Lipschitz function is continuous
The product of a list of Lipschitz continuous endomorphisms is a Lipschitz continuous endomorphism.
For functions to ℝ
, it suffices to prove f x ≤ f y + K * dist x y
; this version
doesn't assume 0≤K
.
For functions to ℝ
, it suffices to prove f x ≤ f y + K * dist x y
; this version
assumes 0≤K
.
If a function is locally Lipschitz around a point, then it is continuous at this point.