Gram-Schmidt orthogonalization is an algorithm that takes in a basis {bi}i=1n as an input and returns a basis {bi∗}i=1nwhere all vectors are orthogonal, i.e. at right angles. This new basis is defined as
One can immediately check that this new basis is orthogonal, meaning
⟨bi∗,bj∗⟩={0∥bi∗∥2i=ji=j
Let Bbe the matrix where the ith row is given by biandB∗be the matrix where the ith row is given by bi∗, then the Gram-Schmidt orthogonalization gives us B=μB∗where μi,i=1,μj,i=0and μi,jis the Gram-Schmidt coefficient. As an example, consider the basis of a subspace of R4:
b1b2b3===(((−1−65−2−4535111−3)))
Instead of doing the Gram-Schmidt orthogonalization by hand, we can get sage to do it for us:
One can quickly verify that B=μB∗ and that the rows of B∗are orthogonal to each other.
A useful result is that
det(BBT)=det(B∗B∗T)=i∏∥bi∗∥
Intuitively, this tells us that the more orthogonal a set of basis for a lattice is, the shorter it is as the volume must be constant.
Exercises
1) Show that the basis bi∗is orthogonal.
2) Verify that the output of sage is indeed correct.
3) Show that μμT=1and B∗B∗T is a diagonal matrix whose entries are ∥bi∗∥. Conclude that det(BBT)=det(B∗B∗T)=∏i∥bi∗∥.
4*) Given the Iwasawa decomposition B=LDOwhere Lis a lower diagonal matrix with 1on its diagonal, Dis a diagonal matrix and Oan orthogonal matrix, meaning OOT=1, show that B∗=DOand μ=L. Furthermore, prove that such a decomposition is unique.