Verma modules over algebras #
This file defines a generalization of the notion of Verma modules used in Lie algebra representation theory.
Main definitions #
vermaIdeal: The left ideal in a𝕜-algebraAgenerated by elemements of the formaᵢ - ηᵢ, for someaᵢ ∈ Aandηᵢ ∈ 𝕜.VermaModule: The generalized Verma module for a𝕜-algebraA, defined as the quotientA / vermaIdeal η.VermaModule.hwVec: The "highest weight vector" of the Verma module.VermaModule.universalMap: The universal property of the Verma module: Given another moduleMoverAand a "target" vectorhwv ∈ Msatisfyingaᵢ • hwv = ηᵢ • hwvfor alli, one obtains anA-module map from the Verma module toMuniquely specified by the requirementhwVec η ↦ hwv.
Main statements #
VermaModule.hwVec_cyclic: The Verma module is generated by its highest weight vector.VermaModule.range_universalMap_eq_span: The map guaranteed by the universal property of the Verma module is surjective onto the submodule generated by the "target" vector.
Implementation notes #
The generalized Verma module for a 𝕜-algebra A is defined as a quotient of A by a left ideal
generated by elemements of the form aᵢ - ηᵢ, for some aᵢ ∈ A and ηᵢ ∈ 𝕜. In the file
LieVerma.lean this is specialized to the most common case of Verma modules of Lie algebras
with a triangular decomposition. The generalized version applies beyond that case, e.g., with
Clifford algebras, it allows to construct fermionic Fock spaces.
Tags #
Verma module
A surjective module map from a ring to the submodule generated by a given vector.
Equations
- VirasoroProject.Ring.smulVectorₗ R m = { toFun := fun (a : R) => a • m, map_add' := ⋯, map_smul' := ⋯ }
Instances For
A surjective linear map maps any cyclic vector (a vector which generates the whole module) to a cyclic vector.
The left ideal used in the construction of a (generalized) Verma module for an algebra A:
η : ι → A × 𝕜 is an indexed collection of algebra elements and scalars by which they should act
on the "highest weight vector".
Equations
- VirasoroProject.vermaIdeal η = Submodule.span A (Set.range fun (i : ι) => (η i).1 - (algebraMap 𝕜 A) (η i).2)
Instances For
The (generalied) Verma module of an algebra A:
η : ι → A × 𝕜 is an indexed collection of algebra elements and scalars by which they should act
on the "highest weight vector".
Equations
Instances For
The map guaranteed by the universal property of a Verma module.
Equations
- VirasoroProject.VermaModule.universalMap η hwv_prop = (VirasoroProject.vermaIdeal η).liftQ (VirasoroProject.Ring.smulVectorₗ A hwv) ⋯
Instances For
The image of the highest weight vector of a Verma module under the map guaranteed by the universal property is the assigned highest weight vector in the image module.
The range of the map guaranteed by the universal property of a Verma module is the submodule generated by the assigned highest weight vector in the image module.
The universal map from a module satisfying the characteristic predicate of a Verma module.
Equations
- h.universalMap hv = Exists.choose ⋯
Instances For
The defining property of a universal map from a module satisfying the characteristic predicate of a Verma module.
The uniqueness of the universal map from a module satisfying the characteristic predicate of a Verma module.
Uniqueness up to isomorphism of a Verma module, phrased as the construction of an
isomorphism between two modules that satisfy the characteristic predicate IsVermaModule.
Equations
- One or more equations did not get rendered due to their size.