Commit 2024-08-15 08:47 58d407ba
View on Github →feat: add the WithCStarModule type synonym (#15763)
It is often the case that we want to construct a CStarModule instance on a type that is already
endowed with a norm, and it has a different norm which makes it into a CStarModule. For this
reason, we create a type synonym WithCStarModule which is endowed with the requisite
CStarModule instance. We also introduce the scoped notation C⋆ᵐᵒᵈ for this type synonym.
The common use cases are, when A is a C⋆-algebra:
Aitself overAE × FwhereEandFareCStarModules overAΠ i, E iwhereE iis aCStarModuleoverAandi : ιwithιaFintypeEwhereEis anInnerProductSpaceoverℂTheWithCStarModulesynonym is of vital importance, especially because theCStarModuleclass marksAas anoutParam. Indeed, we want to inferAfrom the type ofE, but, as with modules, a typeEcan be aCStarModuleover different C⋆-algebras. For example, note that ifAis a C⋆-algebra, then so isA × A, and therefore we may consider bothAandA × AasCStarModules over themselves, respectively. However, we may also considerA × Aas aCStarModuleoverA. However, by utilizing the type synonym, these actually correspond to different types, namely:Aas aCStarModuleoverAcorresponds toC⋆ᵐᵒᵈ AA × Aas aCStarModuleoverA × Acorresponds toC⋆ᵐᵒᵈ (A × A)A × Aas aCStarModuleoverAcorresponds toC⋆ᵐᵒᵈ (C⋆ᵐᵒᵈ A × C⋆ᵐᵒᵈ A)