Bill Page wrote:
>
> I can now compute a Groebner basis for this problem where as before it
> would produce either one or the other of the library error messages
> that I previously reported. Unfortunately it took FriCAS "Time:
> 10263.20 (EV) + 1.13 (OT) = 10264.33 sec" (2.85 hours) to find this
> basis while the groebnerFactorize command still did not complete after
> more than 24 hours. In contrast I can compute a Groebner basis for
> this problem with Sage (which I believe uses the Singular library) in
> about 10 seconds, albeit a different basis containing 28 polynomials
> instead of the 34 polynomials returned by FriCAS. I do not yet have a
> procedure in Sage that produces a Groebner factorization as such in
> the same sense as returned by FriCAS but I suspect that this is
> possible in considerably less time than what FriCAS would require.
>
> I think the factor of 1000 in the difference in the time required to
> compute the Groebner basis suggests that Singular is probably using a
> different algorithm to produce this result - maybe something like
> choosing a more favorable term order and then walking the solution,
> but my first attempts to do this have not been able to improve on the
> timing. It is hard to imagine that the FriCAS could be that much
> slower simply due to manipulation of data.
Actually 1000 is possible just due to low-level details, but
I do not think that this is the case here.
One trick is to substitute integers for some parameters. After
oV := OrderedVariableList([mp,mq,mr,yqp,yrp,yrq])
evl := enumerate()$oV
ideq2a := [map(c +-> eval(c, evl, [3, 5, 7, 9, 11, 13]), p) for p in ideq2];
I was able to compute groebner basis of the evaluated ideal in
about 5 seconds. For almost all possible values the evaluated ideal
has Groebner basis with the same structure as the orignal one.
It is possible to reconstruct (and verify) Groebner basis for
the full ideal from Groebner basis for evaluated ideal, but
ATM FriCAS contains no such code.
groebnerFactorize for evaluated ideal takes 224.17 sec. I was
also able to do groebnerFactorize after evaluating IIRC only
3 variables. I am not sure if it possible to reconstruct
full result of groebnerFactorize from evaluated result,
but at least you should be able to get some quantitative
data like number of subsystems (1086) and degrees.
BTW: After evaluating variables one could retract coefficients
to rational numbers and then reduce modulo a prime. For
Groebner basis this should give additianal speedup. For
groebnerFactorize reducing modulo prime is dangerous, because
then a lot of univariate polynomials will be reducible, so
it may change structure of basis quite a lot.
--
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.