The real points of a conjugate-linear involution #
A conjugation of a complex vector space V is a conjugate-linear map K : V → V with
K ∘ K = id, that is, a starRingEnd ℂ-semilinear self-map that is involutive. Its real
points are the vectors it fixes. They form a real subspace TauCeti.realPoints K, and the main
theorem of this file is that V is the complexification of that subspace: the canonical map
ℂ ⊗[ℝ] realPoints K → V, c ⊗ₜ w ↦ c • w
is a ℂ-linear isomorphism. Conversely a complexification ℂ ⊗[ℝ] W carries the conjugation
c ⊗ₜ w ↦ conj c ⊗ₜ w (TauCeti.tmulConj), whose real points are the image of W. So each of
the two constructions produces the other: a conjugation on V presents V as a complexification,
and a complexification carries a conjugation. That is what makes conjugations the tool for
realizing an object over ℝ.
The canonical TauCeti.realPointsEquiv intertwines TauCeti.tmulConj with the original
conjugation K. For a chosen presentation ℂ ⊗[ℝ] W ≃ₗ[ℂ] V,
LinearEquiv.conjugationOfComplexification transports the existing tensor conjugation through
that equivalence. Its exact fixed locus is the image of the real inclusion. The equivariant
application is Representation.IsRealForm.exists_isRealStructure, downstream in
TauCeti.RepresentationTheory.RealForm.
Everything is stated for an arbitrary V; no finite-dimensionality is used anywhere.
Main definitions #
TauCeti.realPoints: the real points of a conjugate-linear map, as aSubmodule ℝ V.TauCeti.conjRealPartandTauCeti.conjImaginaryPart: the two real points a vector decomposes into;TauCeti.conjRealPart_defandTauCeti.conjImaginaryPart_defare their defining formulas.TauCeti.realPointsLift: the canonicalℂ-linear mapℂ ⊗[ℝ] realPoints K →ₗ[ℂ] V.TauCeti.realPointsEquiv: that map as aℂ-linear isomorphism, for involutiveK.TauCeti.tmulConj: the conjugationc ⊗ₜ w ↦ conj c ⊗ₜ wof a complexificationℂ ⊗[ℝ] W.TauCeti.realPartandTauCeti.imaginaryPart: the two real coordinates of a vector of a complexification, bundled asTauCeti.complexificationLinearEquivProd;TauCeti.one_tmul_realPart_add_I_tmul_imaginaryPartreassembles it, andTauCeti.complexification_extsays the two coordinates determine the vector.LinearEquiv.conjugationOfComplexification: the tensor conjugation transported through a complexification equivalenceℂ ⊗[ℝ] W ≃ₗ[ℂ] V.
Main statements #
TauCeti.conjRealPart_add_I_smul_conjImaginaryPart: the decompositionv = conjRealPart K v + I • conjImaginaryPart K v, which makesTauCeti.realPointsLiftsurjective.TauCeti.realPointsLift_injective,TauCeti.realPointsLift_surjectiveandTauCeti.realPointsEquiv: a complex vector space is the complexification of the real points of any conjugation on it.TauCeti.span_realPoints_eq_top: the real points of an involutive conjugation spanVoverℂ, so an identity betweenℂ-linear orℂ-bilinear maps may be checked on real vectors alone.TauCeti.finrank_realPoints: the real points have theℝ-dimension thatVhas overℂ.TauCeti.finrank_selfAdjoint_submodule: in particular, the self-adjoint elements of a complex star module have theℝ-dimension that the module has overℂ.TauCeti.exists_one_tmul_add_I_tmul: every element ofℂ ⊗[ℝ] Wis1 ⊗ₜ w₁ + I ⊗ₜ w₂; this is what makes the lift injective.LinearMap.liftBaseChange_complex_injective_of_conj: more generally, an injective real-linear map whose values a conjugate-linear map fixes induces an injective map on the complexification, for any real structure compatible with the complex one.TauCeti.tmulConj_involutive,TauCeti.tmulConj_tmulandTauCeti.tmulConj_eq_self_iff: the conjugation of a complexification and its real points.TauCeti.realPointsEquiv_tmulConj: the canonical real-descent equivalence intertwines tensor conjugation withK.TauCeti.tmulConj_baseChange: that conjugation commutes with every base-changed map, which is what makes it equivariant for a base-changed action.LinearEquiv.conjugationOfComplexification_apply_tmul: the transported conjugation sendse (c ⊗ₜ w)toe (star c ⊗ₜ w).LinearEquiv.conjugationOfComplexification_eq_self_iff,LinearEquiv.conjugationOfComplexification_uniqueandLinearEquiv.conjugationOfComplexification_natural: the transported conjugation fixes exactly the image of the real inclusion, is the only conjugate-linear map doing so, and commutes with complex-linear maps carrying one real inclusion to another.
Implementation notes #
A conjugation is carried here as the two unbundled hypotheses K : V →ₛₗ[starRingEnd ℂ] V and
Function.Involutive K, rather than as a bundled structure. TauCeti.Hodge.Conjugation already
bundles exactly this data, but it lives downstream in TauCeti/Geometry/Hodge/, so bundling here
would either duplicate it or invert the dependency between TauCeti.LinearAlgebra and
TauCeti.Geometry; a TauCeti.Hodge.Conjugation supplies the hypotheses below from its two
fields. For the same reason TauCeti.realPoints asks only for the semilinear map: the subspace
makes sense without involutivity, and only the complexification theorem needs it.
Mathlib's realPart/imaginaryPart decomposition of a star module over ℂ is the same
mathematics, but it reads the conjugation off the Star instance on V: selfAdjoint.submodule
and realPart both ask for [StarAddMonoid V] [StarModule ℂ V], and StarAddMonoid already
carries involutivity. Here the conjugation is instead a term K that TauCeti.realPoints and
TauCeti.conjRealPart are indexed by, because one V carries many conjugations and
TauCeti.realPoints is wanted before K is known to be involutive -- TauCeti.realPointsLift is
injective for every conjugate-linear K. So the instance-borne spelling is not available here,
and a TauCeti.Hodge.Conjugation, or a Representation.IsRealStructure, hands its conjugation
over as a field rather than as an instance.
No definition here exposes its body: TauCeti.mem_realPoints, TauCeti.conjRealPart_def,
TauCeti.conjImaginaryPart_def, TauCeti.realPointsLift_tmul, TauCeti.realPointsEquiv_tmul,
TauCeti.realPointsEquiv_symm_apply and TauCeti.tmulConj_tmul are the characterizations a
consumer works from.
The real scalar structure on V is Mathlib's Module.complexToReal, the one Module ℂ V induces,
so r • v and (r : ℂ) • v are definitionally equal and no scalar tower hypothesis is carried.
The injectivity argument LinearMap.liftBaseChange_complex_injective_of_conj is the exception: it
takes an arbitrary real structure with IsScalarTower ℝ ℂ E, so that it also serves spaces such
as Matrix n n ℂ whose real structure is not syntactically Module.complexToReal.
References #
- J.-P. Serre, Linear Representations of Finite Groups, GTM 42 (1977), §13.2, where the
conjugation attached to an invariant form realizes a representation over
ℝ.
The real points of a conjugate-linear map #
The real part of v relative to a conjugate-linear map: the vector ½ (v + K v), a real
point once K is involutive (TauCeti.conjRealPart_mem).
Instances For
The imaginary part of v relative to a conjugate-linear map: the vector
½ I • (K v - v), the coefficient of I in
TauCeti.conjRealPart_add_I_smul_conjImaginaryPart.
Instances For
The defining formula for the real part, the body of TauCeti.conjRealPart not being exposed.
The defining formula for the imaginary part, the body of TauCeti.conjImaginaryPart not being
exposed.
A real point is its own real part.
A real point has vanishing imaginary part.
The decomposition into real points: every vector is its real part plus I times its
imaginary part. Once K is involutive both summands lie in TauCeti.realPoints K, so this is
what exhibits V as the complexification of that subspace.
The real points of a conjugation span the whole space over ℂ. Every vector is a
complex combination of the two real points it decomposes into, so an identity between ℂ-linear
or ℂ-bilinear maps may be checked on real vectors alone.
A complexification splits along 1 and I #
Every element of ℂ ⊗[ℝ] W is 1 ⊗ₜ w₁ + I ⊗ₜ w₂: writing a complex scalar as
x + y * I with x, y : ℝ moves its two real coordinates into the second factor. This is the
splitting ℂ ⊗[ℝ] W ≅ W ⊕ I · W in the form the injectivity argument below uses it.
Real-linear maps into the real points #
Vectors fixed by a conjugate-linear map complexify injectively. If a conjugate-linear
K fixes every value of an injective real-linear map f : W → E, then the induced map
ℂ ⊗[ℝ] W → E, c ⊗ₜ w ↦ c • f w, is injective: applying K to a relation
f w₁ + I • f w₂ = 0 flips the sign of its I-component, so adding the two relations kills
f w₂ and leaves 2 • f w₁ = 0.
The real structure on E is an arbitrary one compatible with the complex structure
(IsScalarTower ℝ ℂ E), so this also applies to spaces such as Matrix n n ℂ whose real
structure is not syntactically Module.complexToReal.
The complexification of the real points #
The canonical ℂ-linear map from the complexification of the real points, c ⊗ₜ w ↦ c • w.
It is LinearMap.liftBaseChange applied to the inclusion of the real points.
TauCeti.realPointsEquiv upgrades it to an isomorphism when K is involutive.
Instances For
The lift is surjective once K is involutive: its image is the complex span of the real
points, which is all of V (TauCeti.span_realPoints_eq_top).
The lift is injective for any conjugate-linear K: only its surjectivity uses that K is
involutive. This is LinearMap.liftBaseChange_complex_injective_of_conj for the inclusion of
the real points.
A complex vector space is the complexification of the real points of any conjugation on
it. The isomorphism is c ⊗ₜ w ↦ c • w; surjectivity is the decomposition
TauCeti.conjRealPart_add_I_smul_conjImaginaryPart, and injectivity is that a relation
w₁ + I • w₂ = 0 between real points is killed by adding and subtracting its conjugate.
Instances For
The isomorphism sends c ⊗ₜ w to c • w.
The inverse of the isomorphism is the decomposition into real and imaginary parts:
v ↦ 1 ⊗ₜ conjRealPart K v + I ⊗ₜ conjImaginaryPart K v.
The real points of a conjugation halve the dimension: their ℝ-dimension is the
ℂ-dimension of V, because V is their complexification and base change does not change the
dimension. No finiteness is assumed: in the infinite-dimensional case both sides are the junk
value 0.
The self-adjoint elements of a complex star module have the ℝ-dimension that the module has
over ℂ: they are the real points of the conjugation star.
The conjugation of a complexification #
The conjugation of a complexification: c ⊗ₜ w ↦ conj c ⊗ₜ w, conjugate-linear because
conjugation is ℝ-linear and multiplicative on ℂ. The underlying ℝ-linear map is
LinearMap.rTensor W Complex.conjAe.toLinearMap. This is the construction converse to
TauCeti.realPointsEquiv: it turns a presentation of a space as a complexification into a
conjugation on it.
Instances For
Conjugating twice is the identity, in the applied form simp can use. The proof is an
induction on the tensor, run off the characterization TauCeti.tmulConj_tmul rather than the
unexposed body.
The conjugation of a complexification is involutive, so it is a conjugation in the sense of this file.
The vectors the conjugation of a complexification fixes are exactly the image of W, that is,
the elements 1 ⊗ₜ w. Stated on tmulConj W u = u rather than on u ∈ realPoints (tmulConj W)
because TauCeti.mem_realPoints is the simp normal form of the latter.
The real-linear retraction c ⊗ₜ w ↦ (re c) • w of w ↦ 1 ⊗ₜ w.
Instances For
The real-linear map c ⊗ₜ w ↦ (im c) • w, reading off the coefficient of I in the splitting
ℂ ⊗[ℝ] W ≅ W ⊕ I · W.
Instances For
The imaginary part of a pure tensor is its imaginary scalar part acting on the vector.
Every element of ℂ ⊗[ℝ] W is 1 ⊗ₜ realPart W u + I ⊗ₜ imaginaryPart W u.
Extensionality in a complexification: a vector of ℂ ⊗[ℝ] W is determined by its real
and imaginary parts.
Two vectors of ℂ ⊗[ℝ] W are equal exactly when their real and imaginary parts are.
Multiplication by a complex scalar c in the real coordinates of a complexification:
c • (1 ⊗ₜ v + I ⊗ₜ w) = 1 ⊗ₜ (re c • v - im c • w) + I ⊗ₜ (re c • w + im c • v).
The real part of c • u is re c • realPart W u - im c • imaginaryPart W u.
The imaginary part of c • u is re c • imaginaryPart W u + im c • realPart W u.
Real-linear isomorphism ℂ ⊗[ℝ] W ≃ₗ[ℝ] W × W given by (realPart, imaginaryPart).
Instances For
Complex conjugation preserves the real part of u : ℂ ⊗[ℝ] W.
Complex conjugation negates the imaginary part of u : ℂ ⊗[ℝ] W.
Coordinate decomposition of tmulConj W u into 1 ⊗ₜ realPart W u - I ⊗ₜ imaginaryPart W u.
Real descent intertwines tensor conjugation with the original conjugation.
The conjugation of a complexification commutes with every base-changed map, because
LinearMap.baseChange leaves the conjugated factor alone.
Base change commutes with realPart.
Base change commutes with imaginaryPart.
Transport the existing tensor conjugation through a complexification equivalence. The result uses the native semilinear-map carrier.
Instances For
The defining transport formula for tensor conjugation.
The transported conjugation conjugates the scalar of the image of a pure tensor.
Applying the transported tensor conjugation twice gives back the input.
Transported tensor conjugation is involutive.
The exact fixed locus is the image of the real inclusion w ↦ e (1 ⊗ w).
A conjugate-linear map fixing the real inclusion is uniquely the transported conjugation. No involutivity assumption on the competing map is necessary.
Transported conjugation is natural under complex-linear maps carrying the real inclusions to each other. The map between the real carriers need not be invertible.