Opened 9 years ago
Closed 9 years ago
#572 closed bug (fixed)
where is the bug; does intersect() not respect monomial ordering?
Reported by: | Owned by: | somebody | |
---|---|---|---|
Priority: | major | Milestone: | 4-1-0 and higher |
Component: | dontKnow | Version: | 4-0-0 |
Keywords: | intersect isSB attrib ordering | Cc: |
Description
intersect sets attribute "isSB" while it is not true?
Here is the example:
ring rng = 0,(xp,xl,xh),dp; ideal I= -4*xp*xh+3*xl^2, 4*xp^2*xh-9*xl*xh, xp^2*xl-3*xp*xh; def J = intersect(I,I); J; //J[1]=3*xl^2-4*xp*xh //J[2]=4*xp^2*xh-9*xl*xh //J[3]=xp^2*xl-3*xp*xh attrib(J); // attr:isSB, type int attrib(J,"isSB"); // =1, groebner(J); //_[1]=3*xl^2-4*xp*xh //_[2]=4*xp^2*xh-9*xl*xh //_[3]=xp^2*xl-3*xp*xh ring rng = 0,(xp,xl,xh),lp; ideal I= -4*xp*xh+3*xl^2, 4*xp^2*xh-9*xl*xh, xp^2*xl-3*xp*xh; def J = intersect(I,I); J; //J[1]=-4*xp*xh+3*xl^2 //J[2]=4*xp^2*xh-9*xl*xh //J[3]=xp^2*xl-3*xp*xh attrib(J); // attr:isSB, type int attrib(J,"isSB"); // =1, incorrect ? groebner(J); //_[1]=xl^4-4*xl*xh^2 //_[2]=4*xp*xh-3*xl^2 //_[3]=xp*xl^2-3*xl*xh //_[4]=xp^2*xl-3*xp*xh reduce(groebner(J),J); //_[1]=y^4-4*y*z^2 //_[2]=0 //_[3]=x*y^2-3*y*z //_[4]=0
Change History (2)
comment:1 Changed 9 years ago by
comment:2 Changed 9 years ago by
Resolution: | → fixed |
---|---|
Status: | new → closed |
the result of intersect is a generating set. see 0a6bb08c6f0682a52c5e101d9181d755a4c063c9
Note: See
TracTickets for help on using
tickets.
Remark: bug was found by throwing random ideals at radEHV and looking at the primary decomposition of the result (of course not by hand!) Since the
isSB
attrib (set byintersect
inradEHV
) is probably incorrect (didn't check) ,primdecGTZ
gives an invalid and unexpected result: ( [4][1][2] <> [4][2][2] )