
Z := IntegerRing();
n := 9;
P<x1,x2,x3,x4,x5,x6,x7,x8,x9> := PolynomialRing(Z,n);
X := [x1,x2,x3,x4,x5,x6,x7,x8,x9];
A := Matrix(P,n,n,[0 : i in [1..n^2]]);
A;
for j in [1..n] do A[1,j] := X[j]; end for; 
for i in [2..n] do
    for j in [2..n] do A[i,j] := A[i-1,j-1]; end for;
    A[i,1] := A[i-1,n];
end for;
A;
time D := Determinant(A);
Length(D);
time F := Factorization(D);
