GroebnerBasePartial
edu.jas.gbufd

Class GroebnerBasePartial<C extends GcdRingElem<C>>

  • Type Parameters:
    C - coefficient type
    All Implemented Interfaces:
    GroebnerBase<C>, Serializable


    public class GroebnerBasePartial<C extends GcdRingElem<C>>extends GroebnerBaseAbstract<C>
    Partial Groebner Bases for subsets of variables. Let pvars be a subset of variables vars of the polynomial ring K[vars]. Methods compute Groebner bases with coefficients from K[vars \ pvars] in the polynomial ring K[vars \ pvars][pvars].
    See Also:
    Serialized Form
    • Constructor Detail

      • GroebnerBasePartial

        public GroebnerBasePartial()
        Constructor.
      • GroebnerBasePartial

        public GroebnerBasePartial(RingFactory<GenPolynomial<C>> rf)
        Constructor.
        Parameters:
        rf - coefficient ring factory.
    • Method Detail

      • GB

        public List<GenPolynomial<C>> GB(int modv,                        List<GenPolynomial<C>> F)
        Groebner base using pairlist class.
        Parameters:
        modv - module variable number.
        F - polynomial list.
        Returns:
        GB(F) a Groebner base of F.
      • isGBrec

        public boolean isGBrec(List<GenPolynomial<GenPolynomial<C>>> F)
        Groebner base test.
        Parameters:
        F - polynomial list.
        Returns:
        true, if F is a partial Groebner base, else false.
      • isGBrec

        public boolean isGBrec(int modv,              List<GenPolynomial<GenPolynomial<C>>> F)
        Groebner base test.
        Parameters:
        modv - module variable number.
        F - polynomial list.
        Returns:
        true, if F is a partial Groebner base, else false.
      • partialPermutation

        public static List<Integer> partialPermutation(String[] vars,                               String[] pvars)
        Partial permuation for specific variables. Computes a permutation perm for the variables vars, such that perm(vars) == pvars ... (vars \ pvars). Uses internal (reversed) variable sorting.
        Parameters:
        vars - names for all variables.
        pvars - names for main variables, pvars subseteq vars.
        Returns:
        permutation for vars, such that perm(vars) == pvars ... (vars \ pvars).
      • getPermutation

        public static List<Integer> getPermutation(String[] aname,                           String[] ename)
        Permutation of variables for elimination.
        Parameters:
        aname - variables for the full polynomial ring.
        ename - variables for the elimination ring, subseteq aname.
        Returns:
        perm({vars \ ename},ename)
      • indexOf

        public static int indexOf(String s,          String[] A)
        Index of s in A.
        Parameters:
        s - search string
        A - string array
        Returns:
        i if s == A[i] for some i, else -1.
      • partialPermutation

        public static List<Integer> partialPermutation(String[] vars,                               String[] pvars,                               String[] rvars)
        Partial permuation for specific variables. Computes a permutation perm for the variables vars, such that perm(vars) == pvars ... (vars \ pvars). Uses internal (reversed) variable sorting.
        Parameters:
        vars - names for all variables.
        pvars - names for main variables, pvars subseteq vars.
        rvars - names for remaining variables, rvars eq { vars \ pvars }.
        Returns:
        permutation for vars, such that perm(vars) == (pvars, {vars \ pvars}).
      • partialPermutation

        public static List<Integer> partialPermutation(String[] vars,                               String[] evars,                               String[] pvars,                               String[] rvars)
        Partial permuation for specific variables. Computes a permutation perm for the variables vars, such that perm(vars) == (evars, pvars, (vars \ { evars, pvars }). Uses internal (reversed) variable sorting.
        Parameters:
        vars - names for all variables.
        evars - names for elimination variables, evars subseteq vars.
        pvars - names for main variables, pvars subseteq vars.
        rvars - names for remaining variables, rvars eq {vars \ { evars, pvars } }.
        Returns:
        permutation for vars, such that perm(vars) == (evars,pvars, {vars \ {evars,pvars}}.
      • remainingVars

        public static String[] remainingVars(String[] vars,                     String[] pvars)
        Remaining variables vars \ pvars. Uses internal (reversed) variable sorting, original order is preserved.
        Parameters:
        vars - names for all variables.
        pvars - names for main variables, pvars subseteq vars.
        Returns:
        remaining vars = (vars \ pvars).
      • partialGBrec

        public OptimizedPolynomialList<GenPolynomial<C>> partialGBrec(List<GenPolynomial<C>> F,                                                     String[] pvars)
        Partial recursive Groebner base for specific variables. Computes Groebner base in K[vars \ pvars][pvars] with coefficients from K[vars \ pvars].
        Parameters:
        F - polynomial list.
        pvars - names for main variables of partial Groebner base computation.
        Returns:
        a container for a partial Groebner base of F wrt pvars.
      • partialGB

        public OptimizedPolynomialList<C> partialGB(List<GenPolynomial<C>> F,                                   String[] pvars)
        Partial Groebner base for specific variables. Computes Groebner base in K[vars \ pvars][pvars] with coefficients from K[vars \ pvars] but returns polynomials in K[vars \ pvars, pvars].
        Parameters:
        F - polynomial list.
        pvars - names for main variables of partial Groebner base computation.
        Returns:
        a container for a partial Groebner base of F wrt pvars.
      • elimPartialGB

        public OptimizedPolynomialList<C> elimPartialGB(List<GenPolynomial<C>> F,                                       String[] evars,                                       String[] pvars)
        Partial Groebner base for specific variables. Computes Groebner base with coefficients from K[pvars] but returns polynomials in K[pvars, evars].
        Parameters:
        F - polynomial list.
        evars - names for upper main variables of partial Groebner base computation.
        pvars - names for lower main variables of partial Groebner base computation.
        Returns:
        a container for a partial Groebner base of F wrt (pvars,evars).

SCaVis 2.1 © jWork.ORG