Project-specific asymptotic notation #
This module formalizes the infinitesimal equality and comparison relations and the underspill
principle from Chapter 2 of the ANTEDB blueprint. The notations X =o Y and X ≤o Y are
available after open scoped Expdb.
The blueprint also uses non-standard objects indexed by an ambient natural-number parameter.
These are represented by VariableObject. Their asymptotic properties are encoded in the
VariableObject namespace.
Variable functions whose domain type may depend on the ambient parameter are represented by
VariableFunction. Their pointwise asymptotic properties are encoded in the
VariableFunction namespace.
A family indexed by the ambient natural-number parameter.
Equations
- Expdb.VariableObject α = (ℕ → α)
Instances For
A family of functions whose domain may depend on the ambient natural-number parameter.
Equations
- Expdb.VariableFunction domain codomain = ((i : ℕ) → domain i → codomain)
Instances For
The constant variable object with value x.
Equations
- Expdb.VariableObject.fixed x x✝ = x
Instances For
A variable object whose norm is eventually bounded by a fixed constant.
Instances For
A variable object whose norm tends to infinity.
Equations
- X.IsUnbounded = Filter.Tendsto (fun (i : ℕ) => ‖X i‖) Filter.atTop Filter.atTop
Instances For
A variable object is unbounded iff its norm eventually exceeds every fixed threshold.
A variable object whose norm tends to zero.
Equations
- X.IsInfinitesimal = Filter.Tendsto (fun (i : ℕ) => ‖X i‖) Filter.atTop (nhds 0)
Instances For
A variable object is infinitesimal iff its norm is eventually below every positive tolerance.
A variable function that is bounded along every variable choice. The choice may vary with the ambient index; it is not a fixed point of the domain.
Equations
- f.IsPointwiseBounded = ∀ (x : (i : ℕ) → domain i), Expdb.VariableObject.IsBounded fun (i : ℕ) => f i (x i)
Instances For
A variable function that is infinitesimal along every variable choice. The choice may vary with the ambient index; it is not a fixed point of the domain.
Equations
- f.IsPointwiseInfinitesimal = ∀ (x : (i : ℕ) → domain i), Expdb.VariableObject.IsInfinitesimal fun (i : ℕ) => f i (x i)
Instances For
The relation X = Y + o(1), meaning that X - Y is infinitesimal.
Equations
- Expdb.IsEqUpToInfinitesimal X Y = (X - Y).IsInfinitesimal
Instances For
The relation X ≤ Y + o(1), meaning that the positive part of X - Y is
infinitesimal.
Equations
- Expdb.IsLEUpToInfinitesimal X Y = Expdb.VariableObject.IsInfinitesimal fun (i : ℕ) => max (X i - Y i) 0
Instances For
X =o Y denotes X = Y + o(1), not the little-o relation X = o(Y).
Equations
- Expdb.«term_=o_» = Lean.ParserDescr.trailingNode `Expdb.«term_=o_» 50 51 (Lean.ParserDescr.binary `andthen (Lean.ParserDescr.symbol " =o ") (Lean.ParserDescr.cat `term 51))
Instances For
X ≤o Y denotes X ≤ Y + o(1).
Equations
- Expdb.«term_≤o_» = Lean.ParserDescr.trailingNode `Expdb.«term_≤o_» 50 51 (Lean.ParserDescr.binary `andthen (Lean.ParserDescr.symbol " ≤o ") (Lean.ParserDescr.cat `term 51))
Instances For
The relation =o is reflexive.
The relation =o is symmetric.
The relation =o is transitive.
The relation =o is preserved by negation.
The relation =o is preserved by addition.
The relation =o is preserved by subtraction.
The relation =o is preserved by multiplication by a fixed scalar.
X =o Y iff X and Y are eventually within every positive tolerance.
X ≤o Y iff X i ≤ Y i + δ eventually for every δ > 0.
For real variable objects, X =o Y iff X ≤o Y and Y ≤o X.
Underspill principle. The relation X ≤ Y + o(1) holds if and only if
X ≤ Y + ε + o(1) for every fixed ε > 0.