Go to the first, previous, next, last section, table of contents.

### `lex_hensel_gsl`, `tolex_gsl`, `tolex_gsl_d`

`lex_hensel_gsl(plist,vlist1,order,vlist2,homo)`
  ::Computation of an GSL form ideal basis
`tolex_gsl(plist,vlist1,order,vlist2)`
`tolex_gsl_d(plist,vlist1,order,vlist2,procs)`
  :: Computation of an GSL form ideal basis stating from a Groebner basis

return
  list
plist vlist1 vlist2 procs
  list
order
  number, list or matrix
homo
  flag

- `lex_hensel_gsl()` and `lex_hensel()` are variants of `tolex_gsl()` and `tolex()` respectively. The results are Groebner basis or a kind of ideal basis, called GSL form. `tolex_gsl_d()` does basis computations in parallel on child processes specified in `procs`.
- If the input is zero-dimensional and a lex order Groebner basis has the form `[f0,x1-f1,...,xn-fn]` (`f0`,...,`fn` are univariate polynomials of `x0`; SL form), then this these functions return a list such as `[[x1,g1,d1],...,[xn,gn,dn],[x0,f0,f0']]` (GSL form). In this list `gi` is a univariate polynomial of `x0` such that `di*f0'*fi-gi` divides `f0` and the roots of the input ideal is `[x1=g1/(d1*f0'),...,xn=gn/(dn*f0')]` for `x0` such that `f0(x0)=0`. If the lex order Groebner basis does not have the above form, these functions return a lex order Groebner basis computed by `tolex()`.
- Though an ideal basis represented as GSL form is not a Groebner basis we can expect that the coefficients are much smaller than those in a Groebner basis and that the computation is efficient. The CPU time shown after an execution of `tolex_gsl_d()` indicates that of the master process, and it does not include the time in child processes.

    [103] K=katsura(5)$
    [104] V=[u5,u4,u3,u2,u1,u0]$
    [105] G0=gr(K,V,0)$
    [106] GSL=tolex_gsl(G0,V,0,V)$
    [107] GSL[0];
    [u1,8635837421130477667200000000*u0^31-...]
    [108] GSL[1];
    [u2,10352277157007342793600000000*u0^31-...]
    [109] GSL[5];
    [u0,11771021876193064124640000000*u0^32-...,
    376672700038178051988480000000*u0^31-...]

`References`
  section `lex_hensel`, `lex_tl`, `tolex`, `tolex_d`, `tolex_tl`, section Distributed computation

Go to the first, previous, next, last section, table of contents.