/-
Copyright (c) 2026 Andrea Pari. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Andrea Pari
-/modulepublicimportMathlib.Algebra.Module.Equiv.DefspublicimportMathlib.Algebra.Star.ModulepublicimportMathlib.LinearAlgebra.Basis.DefspublicimportMathlib.Tactic.Ring
The conjugate module
Over a commutative star-ring k, the conjugate moduleConjModule M of a k-module M is the
same additive group with the scalar action twisted by conjugation: r • v := star r • v. It turns a
sesquilinear pairing into a bilinear one: a map conjugate-linear in a slot M is linear in the slot
ConjModule M.
ConjModule M is a type synonym carrying a fresh Module k instance (Module.compHom along
starRingEnd k), so the twisted action does not leak onto M and vice versa. The canonical
conjugate-linear identity conjEquiv : M ≃ₛₗ[starRingEnd k] ConjModule M, the involution
ConjModule (ConjModule M) ≃ₗ[k] M, and the transported basis Basis.conj are provided.
Key results
ConjModule : the conjugate-module type synonym, with its twisted Module instance.
conjEquiv : the canonical conjugate-linear equivalence M ≃ₛₗ[starRingEnd k] ConjModule M.
ConjModule.involution : the involution ConjModule (ConjModule M) ≃ₗ[k] M.
Basis.conj : a basis of M transported to a basis of ConjModule M (coordinates by star).
@[expose]publicsection
The conjugate module of M: the same additive group with the scalar action twisted by
conjugation, r • v = star r • v. A type synonym so the twisted action stays off M.
The canonical conjugate-linear equivalence M ≃ₛₗ[starRingEnd k] ConjModule M, the identity on
the underlying additive group.
All goals completed! 🐙invFunv:=vleft_inv_:=rflright_inv_:=rfl
Conjugating twice returns the original module: the k-linear isomorphism
ConjModule (ConjModule M) ≃ₗ[k] M. It is k-linear, not merely semilinear, because
starRingEnd k composed with itself is the identity.