Ralf Hemmecke wrote:
> 
> On 09/28/2014 02:18 AM, Waldek Hebisch wrote:
> >> Look at https://github.com/hemmecke/fricas/commits/cyldec .
> >>
> >> If accepted, I'll squash the 4 commits into just one and add a ChangeLog
> >> entry.
> 
> > http://www.math.uni.wroc.pl/~hebisch/fricas/cyldec.spad
> > http://www.math.uni.wroc.pl/~hebisch/fricas/cyldec.input
> > http://www.math.uni.wroc.pl/~hebisch/fricas/cyldec.diff
> > 
> > The the first goes into src/algebra, the second into
> > src/input, the third is makefile diff.
> 
> Waldek,
> 
> I'd appreciate to add Rioboo's code with two commits (and with the URLs
> that I've put at the top of the file). First commit would be the
> original code as is and the second commit with all the modifications to
> make it run in FriCAS and beautify it.
> 
> Otherwise it seems that you have only done minor changes to Rioboo's code.

I am against commiting non-working version.  Such versions may
cause trouble when one searches for wrong commit by bisection.

The version I propose adds a single (trivial) function and
removes or unexports a few other functions, otherwise should
be functionally identical to Rioboo's code.

Given that I prefer to keep diff to original outside of
repository, otherwise we will get noise in cumulative
diffs.

> I don't really understand why you mention "multi-index" in
> 
> +-- i) each polynomial p in S is a product of q^{\alpha_q} for q in B
> +--    where \alpha is a multiindex
> 
> That are different q's so what is the multiindex here?

\alpha_q is a single coordinate of multindex.  I write about
multindex in i) only because ii) refers to it.

I admit that what I wrote above is clumsy, but while concept
of gcd basis is simple writing correct definition (especially
when one allows infinite S) is not so easy (for example
Rioboo's definition is wrong -- product is not enough,
one has to admit powers).  The idea is that we do splits
via gcd and no other splits, so B is in some sense maximal.

More formal version of the definition could be:

 A gcd basis for a set of polynomials S is a set of pairwise relatively
 prime polynomials B such that
   i) for each p in S there exist function \alpha from B into
      nonnegative integers, which is zero except for finitely
      many q in S such that p is product of q^\alpha(q) (since
      there is only finitely many nonzero \alpha(q) the product
      is well defined)
   ii) for each p sum of \alpha(q) is minimal among all B satisfying
      i)

BTW1: gcd basis is defined for GCD domains
BTW2: we already have a routine to compute gcd basis (in muldep.spad),
but interface is different (uses vectors instead of lists).

-- 
                              Waldek Hebisch
[email protected] 

-- 
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 http://groups.google.com/group/fricas-devel.
For more options, visit https://groups.google.com/d/optout.

Reply via email to