Opened 12 years ago

# facstd does not divide by content

Reported by: Owned by: gorzel hannes minor 3-1-2 and higher singular-kernel 3-1-1

### Description

Consider this obviously smooth quadric. Let us check it:

```> ring rdp = 0,(x,y),dp;
> poly g = 2313x2+32131y2+348741641;
> std(jacob(g)+g);
_[1]=1                    // OK
> facstd(jacob(g)+g);
[1]:
_[1]=348741641      // == subst(g,x,0,y,0)
```

Other example even worse:

```> poly f = x6y4+4x5y3+3x4y3+6x4y2+19/3x3y2+4x3y+3x2y2+11/3x2y+x2+2xy+1/3x+y;

> std(jacob (x*f));
_[1]=126419049792xy+2033283072y2+471524883200x+52691592471y
_[2]=1686866100568376003181046919083602688x2-38141479755448896366817893558528705xy+1506147214686807482819710217920512y2-602236816989062657336158049944969536x+27416454184475108339771726758580106y
_[3]=495356276736y3+15428063382159y2+435084254366720x+117084955666812y
> content(_[2]);
1

> facstd(jacob (x*f));
[1]:
_[1]=-144698642272404227493363766231974634277639062557729934996642495485743359553888074679204529174434571068333669115379292152296862767003893140008706375414396305664537791940750896707665920000000000000000y2+34074387485043050147112648244648799030316816565935985736264194120863571901466403251452117474670693516685765955016680782954420766414761036073518992773467549399669927786345834968571183104000000000000000x-3958653922956178772264773497614471060973675510571385502396582655949332739149469369537233445760761860462687147179056231689881447418130733881423994509939248786988749601605492025396822016000000000000000y-19999474406708779558431819744384092709813497140360445747318023850020988186500123215621671759563058081529550336457374862382259660478792735924660085345869013582252420019029995502528626688000000000000000
_[2]=-30623431942882373610837165212119407478978570286237241401539979884809208104667860141179437621673330536667463726238897716993935099453114587693369598076279878527106940760227840000000000xy-385467768689966281660077932653437101809393844084791850747035923913911419725424563596423026527597526173038875782897992834628867270536352928054848032656055312629906842583040000000000y2-139434303668009279063616231051128699824926588788338522319156311256781433755828956748452322112324350739468377336144955885927253606062209728292853510205540993627600355569172480000000000x-9834677029168242568119365017165510917839644720741003850339751220091625979010671019773144260470542907608584070483838840964778687368543100561353724877909856189728100974592000000000000y+14798588530098197193716355909346058904265638322011488137046729644263676004634769138761577939816577823183350644938515787777263382269433217079228958042737650506336664352194560000000000
_[3]=14251130342728187615076769130395719323165636296264542967984507442024241561146705255381695758447076052293386240000x2+614993256426184333396274552814754102880470133229012032404037359974918102575192106530585739714017419445718220800xy+21864991383415372442575317916573422955920609260031250829120753670498387394430238587709026407942182293785804800y2-194939856576658791071072620488245104021690101076248085499889989356438364219597042547790199928170899489318502400x+459933084157570772964000986586735292618362864700696443072439064690258018750435876917268848457973265323786240000y-820079087511872176477326032754512494785202102049821826604180923426249487150099655715417638974578137882637107200
[2]:
_[1]=-3y        // not divides by content
_[2]=x
> content(_[1][2]);  // even worse
-1199000394518006335071378970641975849277402489087816578581560057610554093011791223569964778005061088666431847557416711665224595783750452790529763826430069870428160000000000

```

```> facstd(jacob (x*(f-1)));
[1]:
_[1]=9y+36   // not divided by content
_[2]=36x-9   // not divided by content
[2]:
_[1]=-3y+3   // not divided by content
_[2]=x

> option(redSB);  // with redSB the situation is a bit better
facstd(jacob (x*(f-1)));
[1]:
_[1]=9y+36  // not divided by content
_[2]=4x-1   // here it is divided by its content
[2]:
_[1]=-3y+3  // not divided by content
_[2]=x

```

### Change History (0)

Note: See TracTickets for help on using tickets.