The orthogonal projection #
Given a nonempty complete subspace K
of an inner product space E
, this file constructs
orthogonalProjection K : E โL[๐] K
, the orthogonal projection of E
onto K
. This map
satisfies: for any point u
in E
, the point v = orthogonalProjection K u
in K
minimizes the
distance โu - vโ
to u
.
Also a linear isometry equivalence reflection K : E โโแตข[๐] E
is constructed, by choosing, for
each u : E
, the point reflection K u
to satisfy
u + (reflection K u) = 2 โข orthogonalProjection K u
.
Basic API for orthogonalProjection
and reflection
is developed.
Next, the orthogonal projection is used to prove a series of more subtle lemmas about the
orthogonal complement of complete subspaces of E
(the orthogonal complement itself was
defined in Analysis.InnerProductSpace.Orthogonal
); the lemma
Submodule.sup_orthogonal_of_completeSpace
, stating that for a complete subspace K
of E
we have
K โ Kแฎ = โค
, is a typical example.
References #
The orthogonal projection construction is adapted from
- [Clรฉment & Martin, The Lax-Milgram Theorem. A detailed proof to be formalized in Coq]
- [Clรฉment & Martin, A Coq formal proof of the LaxโMilgram theorem]
The Coq code is available at the following address:
Orthogonal projection in inner product spaces #
Existence of minimizers
Let u
be a point in a real inner product space, and let K
be a nonempty complete convex subset.
Then there exists a (unique) v
in K
that minimizes the distance โu - vโ
to u
.
Characterization of minimizers for the projection on a convex set in a real inner product space.
Existence of projections on complete subspaces.
Let u
be a point in an inner product space, and let K
be a nonempty complete subspace.
Then there exists a (unique) v
in K
that minimizes the distance โu - vโ
to u
.
This point v
is usually called the orthogonal projection of u
onto K
.
Characterization of minimizers in the projection on a subspace, in the real case.
Let u
be a point in a real inner product space, and let K
be a nonempty subspace.
Then point v
minimizes the distance โu - vโ
over points in K
if and only if
for all w โ K
, โชu - v, wโซ = 0
(i.e., u - v
is orthogonal to the subspace K
).
This is superceded by norm_eq_iInf_iff_inner_eq_zero
that gives the same conclusion over
any IsROrC
field.
Characterization of minimizers in the projection on a subspace.
Let u
be a point in an inner product space, and let K
be a nonempty subspace.
Then point v
minimizes the distance โu - vโ
over points in K
if and only if
for all w โ K
, โชu - v, wโซ = 0
(i.e., u - v
is orthogonal to the subspace K
)
A subspace K : Submodule ๐ E
has an orthogonal projection if evey vector v : E
admits an
orthogonal projection to K
.
Instances
Equations
- โฏ = โฏ
Equations
- โฏ = โฏ
Equations
- โฏ = โฏ
Equations
- โฏ = โฏ
Equations
- โฏ = โฏ
The orthogonal projection onto a complete subspace, as an
unbundled function. This definition is only intended for use in
setting up the bundled version orthogonalProjection
and should not
be used once that is defined.
Equations
- orthogonalProjectionFn K v = Exists.choose โฏ
Instances For
The unbundled orthogonal projection is in the given subspace. This lemma is only intended for use in setting up the bundled version and should not be used once that is defined.
The characterization of the unbundled orthogonal projection. This lemma is only intended for use in setting up the bundled version and should not be used once that is defined.
The unbundled orthogonal projection is the unique point in K
with the orthogonality property. This lemma is only intended for use
in setting up the bundled version and should not be used once that is
defined.
The orthogonal projection onto a complete subspace.
Equations
- orthogonalProjection K = LinearMap.mkContinuous { toAddHom := { toFun := fun (v : E) => { val := orthogonalProjectionFn K v, property := โฏ }, map_add' := โฏ }, map_smul' := โฏ } 1 โฏ
Instances For
The characterization of the orthogonal projection.
The difference of v
from its orthogonal projection onto K
is in Kแฎ
.
The orthogonal projection is the unique point in K
with the
orthogonality property.
A point in K
with the orthogonality property (here characterized in terms of Kแฎ
) must be the
orthogonal projection.
A point in K
with the orthogonality property (here characterized in terms of Kแฎ
) must be the
orthogonal projection.
The orthogonal projection of y
on U
minimizes the distance โy - xโ
for x โ U
.
The orthogonal projections onto equal subspaces are coerced back to the same point in E
.
The orthogonal projection sends elements of K
to themselves.
A point equals its orthogonal projection if and only if it lies in the subspace.
Orthogonal projection onto the Submodule.map
of a subspace.
The orthogonal projection onto the trivial submodule is the zero map.
The orthogonal projection has norm โค 1
.
Formula for orthogonal projection onto a single vector.
Formula for orthogonal projection onto a single unit vector.
Auxiliary definition for reflection
: the reflection as a linear equivalence.
Equations
- reflectionLinearEquiv K = LinearEquiv.ofInvolutive (2 โข LinearMap.comp (Submodule.subtype K) โ(orthogonalProjection K) - LinearMap.id) โฏ
Instances For
Reflection in a complete subspace of an inner product space. The word "reflection" is sometimes understood to mean specifically reflection in a codimension-one subspace, and sometimes more generally to cover operations such as reflection in a point. The definition here, of reflection in a subspace, is a more general sense of the word that includes both those common cases.
Equations
- reflection K = let __src := reflectionLinearEquiv K; { toLinearEquiv := __src, norm_map' := โฏ }
Instances For
The result of reflecting.
Reflection is its own inverse.
Reflection is its own inverse.
Reflecting twice in the same subspace.
Reflection is involutive.
Reflection is involutive.
Reflection is involutive.
A point is its own reflection if and only if it is in the subspace.
Reflection in the Submodule.map
of a subspace.
Reflection in the Submodule.map
of a subspace.
Reflection through the trivial subspace {0} is just negation.
If Kโ
is complete and contained in Kโ
, Kโ
and Kโแฎ โ Kโ
span Kโ
.
If K
is complete, K
and Kแฎ
span the whole space.
If K
is complete, any v
in E
can be expressed as a sum of elements of K
and Kแฎ
.
If K
admits an orthogonal projection, then the orthogonal complement of its orthogonal
complement is itself.
In a Hilbert space, the orthogonal complement of the orthogonal complement of a subspace K
is the topological closure of K
.
Note that the completeness assumption is necessary. Let E
be the space โ โโ โ
with inner space
structure inherited from PiLp 2 (fun _ : โ โฆ โ)
. Let K
be the subspace of sequences with the sum
of all elements equal to zero. Then Kแฎ = โฅ
, Kแฎแฎ = โค
.
If K
admits an orthogonal projection, K
and Kแฎ
are complements of each other.
The orthogonal projection onto K
of an element of Kแฎ
is zero.
The projection into U
from an orthogonal submodule V
is the zero map.
The projection into U
from V
is the zero map if and only if U
and V
are orthogonal.
The reflection in K
of an element of Kแฎ
is its negation.
The orthogonal projection onto Kแฎ
of an element of K
is zero.
If U โค V
, then projecting on V
and then on U
is the same as projecting on U
.
Given a monotone family U
of complete submodules of E
and a fixed x : E
,
the orthogonal projection of x
on U i
tends to the orthogonal projection of x
on
(โจ i, U i).topologicalClosure
along atTop
.
Given a monotone family U
of complete submodules of E
with dense span supremum,
and a fixed x : E
, the orthogonal projection of x
on U i
tends to x
along at_top
.
The orthogonal complement satisfies Kแฎแฎแฎ = Kแฎ
.
The closure of K
is the full space iff Kแฎ
is trivial.
If S
is dense and x - y โ Kแฎ
, then x = y
.
The reflection in Kแฎ
of an element of K
is its negation.
The orthogonal projection onto (๐ โ v)แฎ
of v
is zero.
The reflection in (๐ โ v)แฎ
of v
is -v
.
If the orthogonal projection to K
is well-defined, then a vector splits as the sum of its
orthogonal projections onto a complete submodule K
and onto the orthogonal complement of K
.
The Pythagorean theorem, for an orthogonal projection.
In a complete space E
, the projection maps onto a complete subspace K
and its orthogonal
complement sum to the identity.
The orthogonal projection is self-adjoint.
The orthogonal projection is symmetric.
Given a finite-dimensional subspace Kโ
, and a subspace Kโ
contained in it, the dimensions of Kโ
and the intersection of its
orthogonal subspace with Kโ
add to that of Kโ
.
Given a finite-dimensional subspace Kโ
, and a subspace Kโ
contained in it, the dimensions of Kโ
and the intersection of its
orthogonal subspace with Kโ
add to that of Kโ
.
Given a finite-dimensional space E
and subspace K
, the dimensions of K
and Kแฎ
add to
that of E
.
Given a finite-dimensional space E
and subspace K
, the dimensions of K
and Kแฎ
add to
that of E
.
In a finite-dimensional inner product space, the dimension of the orthogonal complement of the span of a nonzero vector is one less than the dimension of the space.
An element ฯ
of the orthogonal group of F
can be factored as a product of reflections, and
specifically at most as many reflections as the dimension of the complement of the fixed subspace
of ฯ
.
The orthogonal group of F
is generated by reflections; specifically each element ฯ
of the
orthogonal group is a product of at most as many reflections as the dimension of F
.
Special case of the CartanโDieudonnรฉ theorem.
The orthogonal group of F
is generated by reflections.
An orthogonal family of subspaces of E
satisfies DirectSum.IsInternal
(that is,
they provide an internal direct sum decomposition of E
) if and only if their span has trivial
orthogonal complement.
An orthogonal family of subspaces of E
satisfies DirectSum.IsInternal
(that is,
they provide an internal direct sum decomposition of E
) if and only if their span has trivial
orthogonal complement.
If x
lies within an orthogonal family v
, it can be expressed as a sum of projections.
If a family of submodules is orthogonal, then the orthogonalProjection
on a direct sum
is just the coefficient of that direct sum.
If a family of submodules is orthogonal and they span the whole space, then the orthogonal projection provides a means to decompose the space into its submodules.
The projection function is decompose V x i = orthogonalProjection (V i) x
.
See note [reducible non-instances].
Equations
- OrthogonalFamily.decomposition hV h = { decompose' := fun (x : E) => DFinsupp.equivFunOnFintype.symm fun (i : ฮน) => (orthogonalProjection (V i)) x, left_inv := โฏ, right_inv := โฏ }
Instances For
An orthonormal set in an InnerProductSpace
is maximal, if and only if the orthogonal
complement of its span is empty.
An orthonormal set in a finite-dimensional InnerProductSpace
is maximal, if and only if it
is a basis.