#20145: Hilbert series bug
-------------------------+-------------------------------------------------
   Reporter:  stumpc5    |            Owner:
       Type:  defect     |           Status:  new
   Priority:  major      |        Milestone:  sage-7.1
  Component:             |         Keywords:  Hilbert series, polynomial
  commutative algebra    |  ring
  Merged in:             |          Authors:
  Reviewers:             |  Report Upstream:  N/A
Work issues:             |           Branch:
     Commit:             |     Dependencies:
   Stopgaps:             |
-------------------------+-------------------------------------------------
 This works correctly:
 {{{
 sage: n=4;m=10;P = PolynomialRing(QQ,n*m,"x"); x = P.gens(); M =
 Matrix(n,x)
 sage: M
 [ x0  x1  x2  x3  x4  x5  x6  x7  x8  x9]
 [x10 x11 x12 x13 x14 x15 x16 x17 x18 x19]
 [x20 x21 x22 x23 x24 x25 x26 x27 x28 x29]
 [x30 x31 x32 x33 x34 x35 x36 x37 x38 x39]
 sage: I = P.ideal(M.minors(2))
 sage: I.hilbert_series().numerator()
 -84*t^3 - 108*t^2 - 27*t - 1
 sage: factor(I.hilbert_series().denominator())
 (t - 1)^13
 }}}
 but if I increase the number of columns by one, I get
 {{{
 sage: n=4;m=11;P = PolynomialRing(QQ,n*m,"x"); x = P.gens(); M =
 Matrix(n,x)
 sage: M
 [ x0  x1  x2  x3  x4  x5  x6  x7  x8  x9 x10]
 [x11 x12 x13 x14 x15 x16 x17 x18 x19 x20 x21]
 [x22 x23 x24 x25 x26 x27 x28 x29 x30 x31 x32]
 [x33 x34 x35 x36 x37 x38 x39 x40 x41 x42 x43]
 sage: I = P.ideal(M.minors(2))
 sage: I.hilbert_series().numerator()
 120*t^33 - 3465*t^32 + 48180*t^31 - 429374*t^30 + 2753520*t^29 -
 13522410*t^28 + 52832780*t^27 - 168384150*t^26 + 445188744*t^25 -
 987193350*t^24 + 1847488500*t^23 + 1372406746*t^22 - 403422496*t^21 -
 8403314*t^20 - 471656596*t^19 + 1806623746*t^18 + 752776200*t^17 +
 752776200*t^16 - 1580830020*t^15 + 1673936550*t^14 - 1294246800*t^13 +
 786893250*t^12 - 382391100*t^11 + 146679390*t^10 - 42299400*t^9 +
 7837830*t^8 - 172260*t^7 - 468930*t^6 + 183744*t^5 - 39270*t^4 + 5060*t^3
 - 330*t^2 + 1
 sage: factor(I.hilbert_series().denominator())
 (t - 1)^44
 }}}
 which is clearly not correct, as it can be checked with
 {{{
 sage: from sage.libs.singular.function import singular_function
 sage: hilb = singular_function("hilb")
 sage: std = singular_function("std")
 sage: hilb(std(I))
 // ** _ is no standard basis
 ...
 //         1 t^0
 //        30 t^1
 //       135 t^2
 //       120 t^3
 // dimension (proj.)  = 13
 // degree (proj.)   = 286
 }}}

--
Ticket URL: <http://trac.sagemath.org/ticket/20145>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica, 
and MATLAB

-- 
You received this message because you are subscribed to the Google Groups 
"sage-trac" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/d/optout.

Reply via email to