Dual pairs #
Convex integration improves maps by successively modify their derivative in a direction of a vector field (almost) without changing their derivative along some complementary hyperplace.
In this file we introduce the linear algebra part of the story of such modifications.
The main gadget here are dual pairs on a real topological vector space E
.
Each p : DualPair E
is made of a (continuous) linear form p.π : E →L[ℝ] ℝ
and a vector
p.v : E
such that p.π p.v = 1
.
Those pairs are used to build the updating operation turning φ : E →L[ℝ] F
into
p.update φ w
which equals φ
on ker p.π
and sends v
to the given w : F
.
After formalizing the above definitions, we first record a number of trivial algebraic lemmas.
Then we prove a lemma which is geometrically obvious but not so easy to formalize:
injective_update_iff
states, starting with an injective φ
, that the updated
map p.update φ w
is injective if and only if w
isn't in the image of ker p.π
under φ
.
This is crucial in order to apply convex integration to immersions.
Then we prove continuity and smoothness lemmas for this operation.
General theory #
Given a dual pair p
, p.span_v
is the line spanned by p.v
.
Instances For
Update a continuous linear map φ : E →L[ℝ] F
using a dual pair p
on E
and a
vector w : F
. The new map coincides with φ
on ker p.π
and sends p.v
to w
.
Instances For
Map a dual pair under a linear equivalence.
Instances For
Injectivity criterion #
Smoothness and continuity #
Given a finite basis e : basis ι ℝ E
, and i : ι
,
e.DualPair i
is given by the i
th basis element and its dual.
Equations
- e.dualPair i = { π := LinearMap.toContinuousLinearMap (e.dualBasis i), v := e i, pairing := ⋯ }