Structural isometries and special orthogonal groups of quadratic-map products #
The orthogonal product (Q₁, Q₂) ↦ Q₁.prod Q₂ is linear in the pair of quadratic maps
(QuadraticMap.prodLinear).
Mathlib records the commutativity isometries of QuadraticMap.prod
(QuadraticMap.IsometryEquiv.prodComm and QuadraticMap.IsometryEquiv.prodProdProdComm). This
file adds the two remaining structural ones: the associator, and the deletion of a factor whose
module is trivial. Together with QuadraticMap.IsometryEquiv.prodComm they are what makes
orthogonal sum a commutative monoid operation on isometry classes of quadratic forms; the
left-commutativity isometry Q₁ ⊕ (Q₂ ⊕ Q₃) ≅ Q₂ ⊕ (Q₁ ⊕ Q₃) is recorded as a composite of them.
For an orthogonal sum QuadraticMap.pi indexed by Fin (n + 1), splitting off the first summand
is likewise isometric, which lets such a sum be assembled one summand at a time; reindexing an
orthogonal sum along an equivalence of its index types is isometric; and so is deleting the
summands of an orthogonal sum that are carried by trivial modules.
For a quadratic form over a commutative ring, it also records the isometry associated to a direct-sum decomposition of the underlying module that is orthogonal for the polar form.
Finally, it embeds the product of the orthogonal groups of two quadratic maps with a common
codomain into the orthogonal group of their orthogonal sum, acting componentwise, and identifies
the image: an orthogonal transformation of Q₁.prod Q₂ is such an orthogonal sum exactly when it
maps each summand into itself. No finiteness is needed for this, since a linear automorphism of
M₁ × M₂ preserving both summands is automatically a product of automorphisms of the summands.
For finite free modules the determinant of an orthogonal sum is the product of the determinants,
so the embedding restricts to the special orthogonal groups. Concatenating orthogonal families of
the two summands gives an orthogonal family of the orthogonal sum.
Main definitions #
QuadraticMap.prodLinear: the orthogonal product(Q₁, Q₂) ↦ Q₁.prod Q₂, as a linear map.QuadraticMap.IsometryEquiv.prodAssoc:LinearEquiv.prodAssocis isometric.QuadraticMap.IsometryEquiv.prodLeftComm: exchanging the first two factors ofQ₁ ⊕ (Q₂ ⊕ Q₃)is isometric.QuadraticMap.IsometryEquiv.uniqueProd:LinearEquiv.uniqueProdis isometric.QuadraticMap.IsometryEquiv.consPi:Fin.consLinearEquivis isometric.QuadraticMap.IsometryEquiv.piCongrLeft:LinearEquiv.piCongrLeftis isometric.QuadraticMap.IsometryEquiv.piSubtype: deleting the summands of an orthogonal sum that are carried by trivial modules is isometric.QuadraticMap.IsometryEquiv.prodRestrictOrthogonal: an orthogonal direct sum is isometric to the original form.QuadraticMap.orthogonalGroupProd: the orthogonal sumO(Q₁) × O(Q₂) →* O(Q₁.prod Q₂).QuadraticMap.specialOrthogonalGroupProd: its restrictionSO(Q₁) × SO(Q₂) →* SO(Q₁.prod Q₂).
Main results #
QuadraticMap.orthogonalGroupProd_injectiveandQuadraticMap.specialOrthogonalGroupProd_injective: both maps are injective.QuadraticMap.mem_range_orthogonalGroupProd_iff: the image oforthogonalGroupProdis exactly the subgroup of orthogonal transformations ofQ₁.prod Q₂preserving both summands.QuadraticMap.mem_range_specialOrthogonalGroupProd_iff: the image ofspecialOrthogonalGroupProdconsists of the special orthogonal transformations preserving both summands whose two diagonal blocks have determinant one.QuadraticMap.det_orthogonalGroupProd: the determinant of an orthogonal sum is the product of the determinants.QuadraticMap.isOrthoᵢ_associated_prod: orthogonal families of the summands concatenate to an orthogonal family ofQ₁.prod Q₂.
References #
- O. T. O'Meara, Introduction to Quadratic Forms (1963), §43.
Scaling an orthogonal product scales both of its factors.
The orthogonal product (Q₁, Q₂) ↦ Q₁.prod Q₂ of quadratic maps, as a linear map.
Instances For
Unfolding QuadraticMap.prodLinear.
LinearEquiv.prodAssoc is isometric.
Instances For
The forward map of QuadraticMap.IsometryEquiv.prodAssoc.
The inverse map of QuadraticMap.IsometryEquiv.prodAssoc.
Exchanging the first two factors of an iterated orthogonal product is isometric:
Q₁ ⊕ (Q₂ ⊕ Q₃) ≅ Q₂ ⊕ (Q₁ ⊕ Q₃). It lets a summand be moved past others to its place in an
orthogonal sum.
Instances For
The forward map of QuadraticMap.IsometryEquiv.prodLeftComm.
LinearEquiv.uniqueProd is isometric: a factor carried by a trivial module may be deleted
from an orthogonal product.
Instances For
The forward map of QuadraticMap.IsometryEquiv.uniqueProd.
The inverse map of QuadraticMap.IsometryEquiv.uniqueProd.
Fin.consLinearEquiv is isometric: an orthogonal sum indexed by Fin (n + 1) is the orthogonal
product of its first summand with the orthogonal sum of the remaining ones.
Instances For
The forward map of QuadraticMap.IsometryEquiv.consPi.
LinearEquiv.piCongrLeft is isometric: reindexing an orthogonal sum along an equivalence of
its finite index types does not change it.
Instances For
Reindexing an orthogonal sum has LinearEquiv.piCongrLeft as its underlying linear map.
The forward map of QuadraticMap.IsometryEquiv.piCongrLeft at a reindexed coordinate.
Restriction to the summands indexed by {i // S i} is isometric when every other summand is
carried by a trivial module: such summands may be deleted from an orthogonal sum.
Instances For
The forward map of QuadraticMap.IsometryEquiv.piSubtype restricts to the retained summands.
The inverse map of QuadraticMap.IsometryEquiv.piSubtype extends by zero.
An orthogonal direct-sum decomposition of a quadratic space, orthogonal for the polar form, gives an isometry from the product of the two restricted forms to the original form.
Instances For
The orthogonal-decomposition isometry sends a pair to the sum of its components.
The inverse of the orthogonal-decomposition isometry sends a vector to its two projections along the decomposition.
The componentwise product of orthogonal transformations of Q₁ and Q₂ is an orthogonal
transformation of their orthogonal sum Q₁.prod Q₂.
The orthogonal sum of orthogonal transformations: a pair (f₁, f₂) of orthogonal
transformations of Q₁ and Q₂ acts on M₁ × M₂ componentwise, preserving Q₁.prod Q₂.
It is injective (orthogonalGroupProd_injective), and its image is exactly the subgroup of
orthogonal transformations of Q₁.prod Q₂ that preserve both summands
(mem_range_orthogonalGroupProd_iff).
Instances For
The orthogonal sum of two orthogonal transformations acts componentwise.
The orthogonal transformation orthogonalGroupProd Q₁ Q₂ f is the product of the two
underlying linear automorphisms.
The orthogonal sum of orthogonal groups embeds into the orthogonal group of the orthogonal sum.
The image of the orthogonal sum of orthogonal groups. An orthogonal transformation g of
Q₁.prod Q₂ is an orthogonal sum f₁ ⊕ f₂ of orthogonal transformations of Q₁ and Q₂
exactly when it preserves both summands, that is, maps M₁ × 0 into M₁ × 0 and 0 × M₂ into
0 × M₂.
The determinant of an orthogonal sum of orthogonal transformations is the product of their determinants.
Combine special orthogonal transformations of two finite free quadratic maps with a common codomain into a special orthogonal transformation of their product.
Instances For
The special orthogonal transformation specialOrthogonalGroupProd Q₁ Q₂ f is the product of
the two underlying linear automorphisms.
The product of two special orthogonal transformations acts componentwise.
The orthogonal sum of special orthogonal groups embeds into the special orthogonal group of the orthogonal sum.
The image of the orthogonal sum of special orthogonal groups. A special orthogonal
transformation g of Q₁.prod Q₂ is an orthogonal sum f₁ ⊕ f₂ of special orthogonal
transformations of Q₁ and Q₂ exactly when it preserves both summands and both of its diagonal
blocks M₁ → M₁ and M₂ → M₂ have determinant one. Preserving the summands alone does not
suffice, since f₁ ⊕ f₂ with det f₁ = det f₂ = -1 is special orthogonal.
The reflection of Q₁.prod Q₂ in a vector (v, 0) of the first summand is the orthogonal sum
of the reflection of Q₁ in v with the identity of the second summand.
The reflection of Q₁.prod Q₂ in a vector (0, w) of the second summand is the orthogonal sum
of the identity of the first summand with the reflection of Q₂ in w.
Concatenating a Q₁-orthogonal family of M₁ and a Q₂-orthogonal family of M₂, placed in
the two summands, gives a family orthogonal for the orthogonal sum Q₁.prod Q₂.