Commit 2025-03-30 16:02 ea841e87

View on Github →

refactor: default to left modules for CStarModule (#22967) When CStarModule was introduced, the hypotheses assumed a right action of the C⋆-algebra A on the module E (i.e., a SMul Aᵐᵒᵖ E instance). On the one hand, this is consistent with the literature (which also defaults to right-actions), but on the other hand, it will cause problems in the future. In particular, we will need to consider C⋆-bimodules, but if we default to right actions, then to get a left C⋆-module structure we would need a SMul (Aᵐᵒᵖ)ᵐᵒᵖ E instance. In this PR we switch so that the default for CStarModules are left-actions, consistent with the rest of Mathlib. In addition, we remove the outParam condition on A in the CStarModule class. Indeed, we may need to consider C⋆-modules over multiple C⋆-algebras simultaneously (the canonical example is A and its unitization A⁺¹, which arises frequently). This necessitates a change to the type synonym WithCStarModule so that A is an explicit parameter. In addition, the variable A is now explicit in a few declarations which otherwise only mention terms of E and their norms (e.g., CStarModule.norm_sq_eq).

Estimated changes