Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

bug in quotient over quotient ring over QQ #3607

Open
mikestillman opened this issue Dec 9, 2024 · 2 comments
Open

bug in quotient over quotient ring over QQ #3607

mikestillman opened this issue Dec 9, 2024 · 2 comments
Assignees

Comments

@mikestillman
Copy link
Member

mikestillman commented Dec 9, 2024

Here is a bug which I uncovered while chasing down a bug in integralClosure communicated by @Douglas-Leonard.

The product elem is in the ideal generated by f, but // is giving an incorrect answer, it seems. It should be the case that

elem == f * (elem//f) + (elem % f). (edited: changed - to +).
  S = QQ[w_(3,0)..w_(3,3), y, x, MonomialOrder => {GRevLex => {2:5, 2:6}, GRevLex => {2:1}}]
  -- the following is not a bug mod 32003!! Using the ring on the next line gives the correct answer.
  -- S = ZZ/32003[w_(3,0)..w_(3,3), y, x, MonomialOrder => {GRevLex => {2:5, 2:6}, GRevLex => {2:1}}]
  I = ideal(
      w_(3,0)*y^2+w_(3,0)*x-w_(3,1)*y*x+20*x^4,
      4*w_(3,0)*y+w_(3,1)*y^2+w_(3,1)*x-x^7+96*y*x^3,
      w_(3,3)*y+w_(3,0)*y*x^2-w_(3,1)*x^3+y^4-16*y^2*x,
      w_(3,2)*x-20*w_(3,1)*y-5*y^6+51*y^4*x-336*y^2*x^2+80*x^3,
      w_(3,2)*y-5*w_(3,3)*x+20*x^6+y^5-16*y^3*x+160*y*x^2,
      -5*w_(3,0)*y^3-w_(3,0)*y*x+6*w_(3,1)*y^2*x+w_(3,1)*x^2-x^8-4*y*x^4,
      4*w_(3,0)*y^2+w_(3,1)*y^3+w_(3,1)*y*x-y*x^7+96*y^2*x^3,
      w_(3,0)^2*y^2-2*w_(3,0)*w_(3,1)*y*x+w_(3,1)^2*x^2+8*w_(3,0)*y^2*x^3-8*w_(3,1)*y*x^4-y^4*x^5+16*y^2*x^6,
      -w_(3,0)*w_(3,1)*y+w_(3,1)^2*x+8*w_(3,0)*y^4*x-12*w_(3,0)*y^2*x^2-8*w_(3,1)*y^3*x^2+12*w_(3,1)*y*x^3-y^6*x^3+15*y^4*x^4+16*y^2*x^5,
      -w_(3,0)^2*y+w_(3,0)*w_(3,1)*x+8*w_(3,0)*y^3*x^2-20*w_(3,0)*y*x^3-8*w_(3,1)*y^2*x^3+20*w_(3,1)*x^4-y^5*x^4+16*y^3*x^5,
      w_(3,1)^2-72*w_(3,0)*y^4-40*w_(3,0)*y^2*x+72*w_(3,1)*y^3*x+40*w_(3,1)*y*x^2-y^8*x-8*y*x^8+14*y^6*x^2-129*y^4*x^3-416*y^2*x^4,
      w_(3,0)*w_(3,1)-80*w_(3,0)*y^3*x-28*w_(3,0)*y*x^2+80*w_(3,1)*y^2*x^2+28*w_(3,1)*x^3-y^7*x^2-8*x^9+15*y^5*x^3-144*y^3*x^4-432*y*x^5,
      w_(3,0)^2+8*w_(3,0)*y^4*x-40*w_(3,0)*y^2*x^2-8*w_(3,1)*y^3*x^2+40*w_(3,1)*y*x^3-y^6*x^3+16*y^4*x^4-400*x^6,
      -w_(3,0)*w_(3,1)*y^2+w_(3,1)^2*y*x-60*w_(3,0)*y^3*x^2-8*w_(3,0)*y*x^3+60*w_(3,1)*y^2*x^3+8*w_(3,1)*x^4-y^7*x^3-8*x^10+15*y^5*x^4-144*y^3*x^5-32*y*x^6,
      w_(3,1)^2*y+488*w_(3,0)*y^3*x+168*w_(3,0)*y*x^2-488*w_(3,1)*y^2*x^2-72*w_(3,1)*x^3-y^9*x-8*y^2*x^8+14*y^7*x^2+72*x^9-129*y^5*x^3+1024*y^3*x^4+2208*y*x^5,
      4*w_(3,0)*w_(3,1)*y+w_(3,0)*y^6-314*w_(3,0)*y^4*x+273*w_(3,0)*y^2*x^2+384*w_(3,0)*x^3-w_(3,1)*y^5*x+314*w_(3,1)*y^3*x^2-273*w_(3,1)*y*x^3-4*y^8*x^2-31*y*x^9+60*y^6*x^3-556*y^4*x^4-1724*y^2*x^5+7680*x^6,
      -w_(3,0)*w_(3,3)*y+w_(3,1)*w_(3,3)*x-161*w_(3,0)*y^4-16*w_(3,0)*y^2*x+161*w_(3,1)*y^3*x+16*w_(3,1)*y*x^2-y^3*x^7-8*y^8*x-48*y*x^8+80*y^6*x^2-520*y^4*x^3-128*y^2*x^4,
      -w_(3,0)*w_(3,2)*y+w_(3,1)*w_(3,2)*x-383*w_(3,0)*y^3*x-159*w_(3,0)*y*x^2+383*w_(3,1)*y^2*x^2+159*w_(3,1)*x^3-5*y^2*x^8-20*y^7*x^2-79*x^9+200*y^5*x^3-1280*y^3*x^4-316*y*x^5,
      20*w_(3,1)*w_(3,3)+160*w_(3,0)*y^3*x^3-261*w_(3,0)*y*x^4+256*w_(3,0)*y^2-160*w_(3,1)*y^2*x^4+261*w_(3,1)*x^5-256*w_(3,1)*y*x-20*y^5*x^5+300*y^3*x^6-21*y^8+172*y*x^7+210*y^6*x-1365*y^4*x^2+6144*y^2*x^3,
      w_(3,0)*w_(3,3)+1350*w_(3,0)*y^3+241*w_(3,0)*y*x-1350*w_(3,1)*y^2*x-241*w_(3,1)*x^2-y^4*x^6-8*y^9-48*y^2*x^7+100*y^7*x+321*x^8-720*y^5*x^2+4372*y^3*x^3+1284*y*x^4,
      w_(3,1)*w_(3,2)+3756*w_(3,0)*y^3+624*w_(3,0)*y*x-3756*w_(3,1)*y^2*x-624*w_(3,1)*x^2-5*y^4*x^6-20*y^9-84*y^2*x^7+280*y^7*x+704*x^8-2100*y^5*x^2+12784*y^3*x^3+1216*y*x^4,
      w_(3,0)*w_(3,2)-783*w_(3,0)*y^4-559*w_(3,0)*y^2*x+783*w_(3,1)*y^3*x+559*w_(3,1)*y*x^2-5*y^3*x^7-20*y^8*x-79*y*x^8+300*y^6*x^2-2300*y^4*x^3-1596*y^2*x^4-1600*x^5,
      w_(3,1)^2*y^2+584*w_(3,0)*y^4*x+264*w_(3,0)*y^2*x^2-584*w_(3,1)*y^3*x^2-72*w_(3,1)*y*x^3-y^10*x-8*y^3*x^8+14*y^8*x^2+72*y*x^9-129*y^6*x^3+1024*y^4*x^4+4128*y^2*x^5,
      w_(3,1)*w_(3,3)*y+96*w_(3,3)*x^3+8*w_(3,0)*y^4*x^3-3421*w_(3,0)*y^3-645*w_(3,0)*y*x-8*w_(3,1)*y^3*x^4+3421*w_(3,1)*y^2*x+645*w_(3,1)*x^2-y^6*x^5+15*y^4*x^6+12*y^9+113*y^2*x^7-216*y^7*x-1029*x^8+1740*y^5*x^2-10848*y^3*x^3-4116*y*x^4,
      w_(3,1)*w_(3,2)*y+96*w_(3,2)*x^3+5676*w_(3,0)*y^4+2544*w_(3,0)*y^2*x-5676*w_(3,1)*y^3*x-2544*w_(3,1)*y*x^2-5*y^5*x^6-20*y^10-84*y^3*x^7+280*y^8*x+704*y*x^8-2580*y^6*x^2+17680*y^4*x^3+7360*y^2*x^4+7680*x^5,
      w_(3,3)^2-162*w_(3,0)*y^3*x^2+162*w_(3,1)*y^2*x^3-y^2*x^9-8*y^7*x^3-48*x^10+80*y^5*x^4-520*y^3*x^5-128*y*x^6-y^6+32*y^4*x-256*y^2*x^2,
      w_(3,2)*w_(3,3)+79*w_(3,0)*y^4*x^2+86*w_(3,0)*y^2*x^3-79*w_(3,1)*y^3*x^3-86*w_(3,1)*y*x^4-5*y*x^10-20*y^6*x^4+200*y^4*x^5+280*y^2*x^6-y^7+320*x^7+27*y^5*x-256*y^3*x^2+1280*y*x^3,
      w_(3,2)^2-10*w_(3,0)*y^3*x^3+270*w_(3,0)*y*x^4-2560*w_(3,0)*y^2+10*w_(3,1)*y^2*x^4-270*w_(3,1)*x^5+2560*w_(3,1)*y*x-25*x^11-40*y^3*x^6+159*y^8+1720*y*x^7-778*y^6*x+2119*y^4*x^2-7680*y^2*x^3-6400*x^4,
      x^13-y^12-8*y^5*x^7+4*y^10*x-8*y^3*x^8-6*y^8*x^2+4*y^6*x^3-y^4*x^4
      )
  R = S/I
  H = matrix {{x^8+20*y^3*x^3+4*y*x^4, y^3*x^6+5*y*x^7+96*y^2*x^3+16*x^4, w_(3,1)*y*x^4-116*w_(3,1)*y^2-20*w_(3,1)*x+40*y^2*x^6+4*x^7-4560*y^3*x^2-784*y*x^3, 5*w_(3,1)*y^2*x^3+29*w_(3,1)*x^4+16*w_(3,1)*y+84*y^3*x^5+484*y*x^6+640*y^2*x^2+64*x^3, 4*w_(3,3)*x+5*w_(3,1)*y^3*x^2+29*w_(3,1)*y*x^3-20*y^2*x^5-100*x^6+4*y^3*x-64*y*x^2}}
  f = y^4+6*y^2*x+x^2
  elem = H_(0,1) * H_(0,4)
  assert(elem == f * (elem//f) + (elem % f)) -- fails over QQ, ok over ZZ/32003...  (edit: change - to +).
  div1 = elem // f
  rem1 = elem % f
  assert(rem1 == 0)
  div1 * f - elem -- should be zero here (edit to add this comment)
  assert(div1 * f == elem) -- fails over QQ, ok over ZZ/32003...
@mikestillman mikestillman self-assigned this Dec 9, 2024
@Douglas-Leonard
Copy link
Contributor

Douglas-Leonard commented Dec 9, 2024 via email

@mikestillman
Copy link
Member Author

mikestillman commented Dec 9, 2024

oops, typo on my part. I will edit/check the result. In this example, the remainder is zero, so the sign didn't enter into it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants