"Source: Text/Lat/Lat.text";
"Line: 397";
"Date: Fri Sep 26 12:10:10 2025";
"Main: Fri Sep 26 14:29:19 2025";
// original file: Text/Lat/Lat.text, line: 397
// 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);
