Bill Page wrote:
> 
> http://axiom-wiki.newsynthesis.org/SandBoxBugGroebnerFactorize
> 
> A simple example of Groebner factorization works:
<snip>
> But the following moderately complex problem fails:
<snip>
> with the message
> 
> >> Error detected within library code:
>    index out of range
> 
> The error apparently originates from 'npcoef.spad' in:
> 
> --
>   check(tterm:TermC,ulist:Vector(P)) : Union(Detc,"failed") ==
>     cfu:P := 1$P;doit:NNI := 0;poselt:NNI := 0;pp:Union(P,"failed")
>     termlist : List(VTerm) := tterm.detfacts
>     vterm : VTerm := empty()
>     #termlist = 1 =>
>       vterm := termlist.first
>       for elterm in vterm while doit<2 repeat
>         (cu1 := elterm.pcoef) ~= 0 => cfu := cu1*cfu
>         doit := doit+1
>         poselt := position(elterm, vterm)::NNI
>       doit = 2  or (pp := tterm.coefu exquo cfu) case "failed" => "failed"
>       [vterm.poselt.expt, pp::P, poselt]$Detc
>     "failed"
> --
> 
> It looks like this line:
> 
>         (cu1 := elterm.pcoef) ~= 0 => cfu := cu1*cfu
> 
> causes premature exit from the loop and really should be:
> 
>         if (cu1 := elterm.pcoef) ~= 0 then cfu := cu1*cfu
> 
> in order that poselt be set properly on exit from the loop.

No.  If poselt is not set, then check may simply fail.

> In any case after fixing the index problem as above, another problem arises:
> 
>  >> Error detected within library code:
>    Table construction failed in MLIFT
> 
> in 'mlift.spad'.
> 

This is affected by a few bugs in pgcd.  Actually, it seem
that 'nontCoprime' in pgcd.spad is quite buggy.

-- 
                              Waldek Hebisch

-- 
You received this message because you are subscribed to the Google Groups 
"FriCAS - computer algebra system" 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/fricas-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to