-- -*- M2-comint -*- hash: 9762329623369594889

i1 : S = ZZ/103[x_1..x_9];

i2 : J = ideal(x_6*x_8-x_5*x_9,x_3*x_8-x_2*x_9,x_6*x_7-x_4*x_9,x_5*x_7-x_4*x_8,x_3*x_7-x_1*x_9,x_2*x_7-x_1*x_8,x_3*x_5-x_2*x_6,x_3*x_4-x_1*x_6,x_2*x_4-x_1*x_5,x_3^3-x_6^3-x_9^3,x_2*x_3^2-x_5*x_6^2-x_8*x_9^2,x_1*x_3^2-x_4*x_6^2-x_7*x_9^2,x_2^2*x_3-x_5^2*x_6-x_8^2*x_9,x_1*x_2*x_3-x_4*x_5*x_6-x_7*x_8*x_9,x_1^2*x_3-x_4^2*x_6-x_7^2*x_9,x_2^3-x_5^3-x_8^3,x_1*x_2^2-x_4*x_5^2-x_7*x_8^2,x_1^2*x_2-x_4^2*x_5-x_7^2*x_8,x_1^3-x_4^3-x_7^3);

o2 : Ideal of S

i3 : dim (S/J)

o3 = 4

i4 : time regularInCodimension(1, S/J)
 -- used 0.949095s (cpu); 0.716565s (thread); 0s (gc)

o4 = true

i5 : time regularInCodimension(2, S/J)
 -- used 9.67364s (cpu); 7.76941s (thread); 0s (gc)

i6 : time regularInCodimension(1, S/J, Verbose=>true)
regularInCodimension: ring dimension =4, there are 1465128 possible 5 by 5 minors, we will compute up to 452.908 of them.
regularInCodimension: About to enter loop
internalChooseMinor: Choosing LexSmallestTerm
internalChooseMinor: Choosing Random
internalChooseMinor: Choosing GRevLexSmallest
internalChooseMinor: Choosing LexSmallest
internalChooseMinor: Choosing LexSmallest
internalChooseMinor: Choosing GRevLexSmallestTerm
internalChooseMinor: Choosing GRevLexSmallest
regularInCodimension:  Loop step, about to compute dimension.  Submatrices considered: 7, and computed = 7
regularInCodimension:  isCodimAtLeast failed, computing codim.
regularInCodimension:  partial singular locus dimension computed, = 3
internalChooseMinor: Choosing LexSmallestTerm
internalChooseMinor: Choosing LexSmallest
internalChooseMinor: Choosing RandomNonZero
internalChooseMinor: Choosing GRevLexSmallest
regularInCodimension:  Loop step, about to compute dimension.  Submatrices considered: 11, and computed = 10
regularInCodimension:  isCodimAtLeast failed, computing codim.
regularInCodimension:  partial singular locus dimension computed, = 3
internalChooseMinor: Choosing LexSmallest
internalChooseMinor: Choosing LexSmallestTerm
internalChooseMinor: Choosing Random
internalChooseMinor: Choosing GRevLexSmallestTerm
regularInCodimension:  Loop step, about to compute dimension.  Submatrices considered: 15, and computed = 13
regularInCodimension:  isCodimAtLeast failed, computing codim.
regularInCodimension:  partial singular locus dimension computed, = 3
internalChooseMinor: Choosing RandomNonZero
internalChooseMinor: Choosing RandomNonZero
internalChooseMinor: Choosing RandomNonZero
internalChooseMinor: Choosing GRevLexSmallest
internalChooseMinor: Choosing LexSmallestTerm
internalChooseMinor: Choosing Random
regularInCodimension:  Loop step, about to compute dimension.  Submatrices considered: 21, and computed = 18
regularInCodimension:  isCodimAtLeast failed, computing codim.
regularInCodimension:  partial singular locus dimension computed, = 3
internalChooseMinor: Choosing RandomNonZero
internalChooseMinor: Choosing GRevLexSmallestTerm
internalChooseMinor: Choosing Random
internalChooseMinor: Choosing LexSmallestTerm
internalChooseMinor: Choosing GRevLexSmallest
internalChooseMinor: Choosing LexSmallest
internalChooseMinor: Choosing LexSmallestTerm
regularInCodimension:  Loop step, about to compute dimension.  Submatrices considered: 28, and computed = 24
regularInCodimension:  isCodimAtLeast failed, computing codim.
regularInCodimension:  partial singular locus dimension computed, = 3
internalChooseMinor: Choosing GRevLexSmallest
internalChooseMinor: Choosing LexSmallest
internalChooseMinor: Choosing RandomNonZero
internalChooseMinor: Choosing Random
internalChooseMinor: Choosing RandomNonZero
internalChooseMinor: Choosing LexSmallestTerm
internalChooseMinor: Choosing LexSmallest
internalChooseMinor: Choosing GRevLexSmallestTerm
internalChooseMinor: Choosing GRevLexSmallestTerm
regularInCodimension:  Loop step, about to compute dimension.  Submatrices considered: 37, and computed = 30
regularInCodimension:  isCodimAtLeast failed, computing codim.
regularInCodimension:  partial singular locus dimension computed, = 3
internalChooseMinor: Choosing LexSmallest
internalChooseMinor: Choosing LexSmallestTerm
internalChooseMinor: Choosing LexSmallestTerm
internalChooseMinor: Choosing Random
internalChooseMinor: Choosing RandomNonZero
internalChooseMinor: Choosing GRevLexSmallest
internalChooseMinor: Choosing Random
internalChooseMinor: Choosing GRevLexSmallestTerm
internalChooseMinor: Choosing LexSmallest
internalChooseMinor: Choosing LexSmallestTerm
internalChooseMinor: Choosing LexSmallest
internalChooseMinor: Choosing Random
regularInCodimension:  Loop step, about to compute dimension.  Submatrices considered: 49, and computed = 39
regularInCodimension:  singularLocus dimension verified by isCodimAtLeast
regularInCodimension:  partial singular locus dimension computed, = 2
regularInCodimension:  Loop completed, submatrices considered = 49, and compute -- used 1.2444s (cpu); 0.959461s (thread); 0s (gc)
d = 39.  singular locus dimension appears to be = 2

o6 = true

i7 : time regularInCodimension(1, S/J, MaxMinors=>10, Verbose=>true)
 -- used 0.160431s (cpu); 0.119826s (thread); 0s (gc)
regularInCodimension: ring dimension =4, there are 1465128 possible 5 by 5 minors, we will compute up to 10 of them.
regularInCodimension: About to enter loop
internalChooseMinor: Choosing Random
internalChooseMinor: Choosing RandomNonZero
internalChooseMinor: Choosing GRevLexSmallestTerm
internalChooseMinor: Choosing Random
internalChooseMinor: Choosing Random
internalChooseMinor: Choosing Random
internalChooseMinor: Choosing LexSmallestTerm
regularInCodimension:  Loop step, about to compute dimension.  Submatrices considered: 7, and computed = 7
regularInCodimension:  isCodimAtLeast failed, computing codim.
regularInCodimension:  partial singular locus dimension computed, = 3
internalChooseMinor: Choosing Random
internalChooseMinor: Choosing GRevLexSmallest
internalChooseMinor: Choosing LexSmallest
regularInCodimension:  Loop step, about to compute dimension.  Submatrices considered: 10, and computed = 10
regularInCodimension:  isCodimAtLeast failed, computing codim.
regularInCodimension:  partial singular locus dimension computed, = 3
regularInCodimension:  Loop completed, submatrices considered = 10, and computed = 10.  singular locus dimension appears to be = 3

i8 : time regularInCodimension(1, S/J, MaxMinors=>10, Strategy=>StrategyRandom, Verbose=>true)
 -- used 0.148263s (cpu); 0.109647s (thread); 0s (gc)
regularInCodimension: ring dimension =4, there are 1465128 possible 5 by 5 minors, we will compute up to 10 of them.
regularInCodimension: About to enter loop
internalChooseMinor: Choosing Random
internalChooseMinor: Choosing Random
internalChooseMinor: Choosing Random
internalChooseMinor: Choosing Random
internalChooseMinor: Choosing Random
internalChooseMinor: Choosing Random
internalChooseMinor: Choosing Random
regularInCodimension:  Loop step, about to compute dimension.  Submatrices considered: 7, and computed = 7
regularInCodimension:  isCodimAtLeast failed, computing codim.
regularInCodimension:  partial singular locus dimension computed, = 3
internalChooseMinor: Choosing Random
internalChooseMinor: Choosing Random
internalChooseMinor: Choosing Random
regularInCodimension:  Loop step, about to compute dimension.  Submatrices considered: 10, and computed = 10
regularInCodimension:  isCodimAtLeast failed, computing codim.
regularInCodimension:  partial singular locus dimension computed, = 3
regularInCodimension:  Loop completed, submatrices considered = 10, and computed = 10.  singular locus dimension appears to be = 3

i9 : time regularInCodimension(1, S/J, MaxMinors=>10, MinMinorsFunction => t->3, Verbose=>true)
 -- used 0.560122s (cpu); 0.4602s (thread); 0s (gc)
regularInCodimension: ring dimension =4, there are 1465128 possible 5 by 5 minors, we will compute up to 10 of them.
regularInCodimension: About to enter loop
internalChooseMinor: Choosing RandomNonZero
internalChooseMinor: Choosing Random
internalChooseMinor: Choosing LexSmallest
regularInCodimension:  Loop step, about to compute dimension.  Submatrices considered: 3, and computed = 3
regularInCodimension:  isCodimAtLeast failed, computing codim.
regularInCodimension:  partial singular locus dimension computed, = 3
internalChooseMinor: Choosing LexSmallestTerm
internalChooseMinor: Choosing GRevLexSmallestTerm
internalChooseMinor: Choosing GRevLexSmallest
regularInCodimension:  Loop step, about to compute dimension.  Submatrices considered: 6, and computed = 6
regularInCodimension:  isCodimAtLeast failed, computing codim.
regularInCodimension:  partial singular locus dimension computed, = 3
internalChooseMinor: Choosing GRevLexSmallestTerm
internalChooseMinor: Choosing LexSmallestTerm
regularInCodimension:  Loop step, about to compute dimension.  Submatrices considered: 8, and computed = 8
regularInCodimension:  isCodimAtLeast failed, computing codim.
regularInCodimension:  partial singular locus dimension computed, = 3
internalChooseMinor: Choosing LexSmallestTerm
internalChooseMinor: Choosing GRevLexSmallestTerm
regularInCodimension:  Loop step, about to compute dimension.  Submatrices considered: 10, and computed = 10
regularInCodimension:  isCodimAtLeast failed, computing codim.
regularInCodimension:  partial singular locus dimension computed, = 3
regularInCodimension:  Loop completed, submatrices considered = 10, and computed = 10.  singular locus dimension appears to be = 3

i10 : time regularInCodimension(1, S/J, MaxMinors=>25, CodimCheckFunction => t->t/5, MinMinorsFunction => t->2, Verbose=>true)
 -- used 0.627366s (cpu); 0.504321s (thread); 0s (gc)
regularInCodimension: ring dimension =4, there are 1465128 possible 5 by 5 minors, we will compute up to 25 of them.
regularInCodimension: About to enter loop
internalChooseMinor: Choosing GRevLexSmallestTerm
internalChooseMinor: Choosing GRevLexSmallestTerm
regularInCodimension:  Loop step, about to compute dimension.  Submatrices considered: 2, and computed = 2
regularInCodimension:  isCodimAtLeast failed, computing codim.
regularInCodimension:  partial singular locus dimension computed, = 4
internalChooseMinor: Choosing GRevLexSmallest
internalChooseMinor: Choosing GRevLexSmallest
internalChooseMinor: Choosing Random
regularInCodimension:  Loop step, about to compute dimension.  Submatrices considered: 5, and computed = 5
regularInCodimension:  isCodimAtLeast failed, computing codim.
regularInCodimension:  partial singular locus dimension computed, = 4
internalChooseMinor: Choosing GRevLexSmallestTerm
internalChooseMinor: Choosing LexSmallest
internalChooseMinor: Choosing RandomNonZero
internalChooseMinor: Choosing GRevLexSmallest
internalChooseMinor: Choosing GRevLexSmallest
regularInCodimension:  Loop step, about to compute dimension.  Submatrices considered: 10, and computed = 10
regularInCodimension:  isCodimAtLeast failed, computing codim.
regularInCodimension:  partial singular locus dimension computed, = 4
internalChooseMinor: Choosing LexSmallestTerm
internalChooseMinor: Choosing GRevLexSmallestTerm
internalChooseMinor: Choosing LexSmallest
internalChooseMinor: Choosing GRevLexSmallest
internalChooseMinor: Choosing RandomNonZero
regularInCodimension:  Loop step, about to compute dimension.  Submatrices considered: 15, and computed = 15
regularInCodimension:  isCodimAtLeast failed, computing codim.
regularInCodimension:  partial singular locus dimension computed, = 3
internalChooseMinor: Choosing LexSmallest
internalChooseMinor: Choosing LexSmallestTerm
internalChooseMinor: Choosing RandomNonZero
internalChooseMinor: Choosing GRevLexSmallestTerm
internalChooseMinor: Choosing GRevLexSmallestTerm
regularInCodimension:  Loop step, about to compute dimension.  Submatrices considered: 20, and computed = 18
regularInCodimension:  isCodimAtLeast failed, computing codim.
regularInCodimension:  partial singular locus dimension computed, = 3
internalChooseMinor: Choosing LexSmallest
internalChooseMinor: Choosing RandomNonZero
internalChooseMinor: Choosing LexSmallestTerm
internalChooseMinor: Choosing GRevLexSmallest
internalChooseMinor: Choosing GRevLexSmallestTerm
regularInCodimension:  Loop step, about to compute dimension.  Submatrices considered: 25, and computed = 23
regularInCodimension:  isCodimAtLeast failed, computing codim.
regularInCodimension:  partial singular locus dimension computed, = 3
regularInCodimension:  Loop completed, submatrices considered = 25, and computed = 23.  singular locus dimension appears to be = 3

i11 : time regularInCodimension(1, S/J, MaxMinors=>25, UseOnlyFastCodim => true, Verbose=>true)
 -- used 0.392825s (cpu); 0.29442s (thread); 0s (gc)
regularInCodimension: ring dimension =4, there are 1465128 possible 5 by 5 minors, we will compute up to 25 of them.
regularInCodimension: About to enter loop
internalChooseMinor: Choosing GRevLexSmallest
internalChooseMinor: Choosing LexSmallest
internalChooseMinor: Choosing RandomNonZero
internalChooseMinor: Choosing RandomNonZero
internalChooseMinor: Choosing GRevLexSmallestTerm
internalChooseMinor: Choosing LexSmallest
internalChooseMinor: Choosing Random
regularInCodimension:  Loop step, about to compute dimension.  Submatrices considered: 7, and computed = 7
regularInCodimension:  partial singular locus dimension computed, = 4
internalChooseMinor: Choosing LexSmallest
internalChooseMinor: Choosing GRevLexSmallestTerm
internalChooseMinor: Choosing GRevLexSmallest
internalChooseMinor: Choosing GRevLexSmallest
regularInCodimension:  Loop step, about to compute dimension.  Submatrices considered: 11, and computed = 10
regularInCodimension:  partial singular locus dimension computed, = 4
internalChooseMinor: Choosing LexSmallestTerm
internalChooseMinor: Choosing LexSmallest
internalChooseMinor: Choosing GRevLexSmallestTerm
internalChooseMinor: Choosing LexSmallestTerm
regularInCodimension:  Loop step, about to compute dimension.  Submatrices considered: 15, and computed = 13
regularInCodimension:  singularLocus dimension verified by isCodimAtLeast
regularInCodimension:  partial singular locus dimension computed, = 2
regularInCodimension:  Loop completed, submatrices considered = 15, and computed = 13.  singular locus dimension appears to be = 2

o11 = true

i12 : 
