"Source: Text/Lat/Lat.text";
"Line: 346";
"Date: Wed Apr 27 14:29:19 2022";
"Main: Thu May 25 10:02:38 2023";
// original file: Text/Lat/Lat.text, line: 346
// Example: H31E1 ()
print "Example: H31E1";
ei := GetEchoInput();
SetEchoInput(true);
B := RMatrixSpace(IntegerRing(), 2, 3) ! [1,2,3, 3,2,1];
B;
L1 := Lattice(B);
L1;
L2 := Lattice(3, [1,2,3, 3,2,1]);
L2 eq L1;
assert $1;
L3 := LatticeWithBasis(B);       
L3;
L4 := LatticeWithBasis(3, [1,2,3, 3,2,1]);
L4 eq L3, L1 eq L3;
B := RMatrixSpace(IntegerRing(), 2, 3) ! [1,2,3, 3,2,1];
M := MatrixRing(IntegerRing(), 3) ! [3,-1,1, -1,3,1, 1,1,3];
M;
IsPositiveDefinite(M);
assert $1;
L := LatticeWithBasis(B, M);
L;
GramMatrix(L);
F := MatrixRing(IntegerRing(), 2) ! [56,40, 40,40];
C := LatticeWithGram(F);
C;
GramMatrix(C);
C eq CoordinateLattice(L);
assert $1;
GramMatrix(C) eq GramMatrix(L);
assert $1;
SetEchoInput(ei);
