Transvection automorphisms and their action on lattices #
If b = (b₀, b₁) is a basis of a two-dimensional K-vector space V and x : K a
scalar, we have a transvection automorphism of V given by b₀ ↦ b₀ and
b₁ ↦ x • b₀ + b₁. In the coordinate system induced by b, this is
a transvection by x.
We call the basis representing this automorphism the unipotent matrix associated to b and x.
Main definitions #
Basis.transvect: The basis ofK^2given by the image ofbunder the transvection automorphism.Basis.transvectEquiv: The transvection automorphism induced bybandx.Basis.unipotent: The unipotent matrix realising the transvection automorphism.
Main results #
unipotent_pow_irred_smul_eq_submodule: Ifb = (b₀, b₁)is a basis ofK^2, then the submodule spanned by(ϖ ^ k • b₀, b₁)is invariant under the action ofb.unipotent (ϖ ^ n * x)ifn ≥ k.
Given a basis b = (b₀, b₁) of a K-vector space V and an element x : K, this is the basis
(b₀, x • b₀ + b₁) of V. Hence, this is a transvection in the coordinate system induced by b.
Equations
- b.transvect x = Module.Basis.mk ⋯ ⋯
Instances For
The K-automorphism of Fin 2 → K induced by sending b to the transvection of b
by x.
Equations
- b.transvectEquiv x = b.equiv (b.transvect' x) (Equiv.refl (Fin 2))
Instances For
The basis associated to the transvection automorphism Basis.transvectEquiv induced by x.
In the coordinate system of b, this is the upper triangular matrix with 1 on the diagonal
and x in the top-right.
Equations
Instances For
If b = (b₀, b₁) is a basis of K^2, then the submodule spanned by (ϖ ^ k • b₀, b₁)
is invariant under the action of b.unipotent (ϖ ^ n * x) if n ≥ k.
This is used in Lattice.exists_GL_forall_smul_eq_ntwist₂_of_isSimpleChain_cons: We use
such unipotent matrices to inductively bring a simple chain of lattices in standard form. This
makes sure that in the n + 1th step, multiplying with a unipotent matrix does not change
the first n terms of the chain.
See unipotent_pow_irred_smul_eq for a version for Basis.toLattice.
Version of unipotent_pow_irred_smul_eq_submodule for Basis.toLattice.