testTimeForLLLonSyzygies -- test timing for LLL on syzygies

Synopsis

• Usage:
(m,t1,t2)=testTimeForLLLonSyzygies(r,n,Height=>100)
• Inputs:
• Optional inputs:
• Height (missing documentation) => an integer, default value 11, the sizes of the random integers used
• Outputs:
• m, a list, of maximal absolute values of the entries of A, B and the LLL basis of B
• t1, , the time in seconds to compute B = ker A
• t2, , the time to compute the LLL basis of B

Description

We randomly choose an $r \times\ n$ matrix A over ZZ with entries up to the given Height, and take the time to compute B=ker A and an LLL basis of B.

 i1 : setRandomSeed "nice example 2"; i2 : r=10,n=20 o2 = (10, 20) o2 : Sequence i3 : (m,t1,t2)=testTimeForLLLonSyzygies(r,n,Height=>11) o3 = ({5, 2.91596e52, 9}, .00398993, .00106109) o3 : Sequence i4 : (m,t1,t2)=testTimeForLLLonSyzygies(15,30,Height=>100) o4 = ({50, 2.30853e454, 98}, .00873811, .082157) o4 : Sequence i5 : L=apply(10,c->(testTimeForLLLonSyzygies(15,30))_{1,2}) o5 = {{.011882, .0270499}, {.0110855, .00876604}, {.0128362, .0172968}, ------------------------------------------------------------------------ {.0615813, .0242468}, {.0105694, .0311405}, {.0123105, .0306267}, ------------------------------------------------------------------------ {.0120521, .0206576}, {.00500033, .018992}, {.00431917, .00614694}, ------------------------------------------------------------------------ {.00526842, .008352}} o5 : List i6 : 1/10*sum(L,t->t_0) o6 = .0146905058999999 o6 : RR (of precision 53) i7 : 1/10*sum(L,t->t_1) o7 = .0193275252 o7 : RR (of precision 53)

Ways to use testTimeForLLLonSyzygies :

• "testTimeForLLLonSyzygies(ZZ,ZZ)"

For the programmer

The object testTimeForLLLonSyzygies is .