Package edu.jas.gb

Class GroebnerBaseSigSeqIter<C extends RingElem<C>>

    • Field Detail

      • logger

        private static final org.apache.logging.log4j.Logger logger
      • debug

        private static final boolean debug
    • Constructor Detail

      • GroebnerBaseSigSeqIter

        public GroebnerBaseSigSeqIter()
        Constructor.
      • GroebnerBaseSigSeqIter

        public GroebnerBaseSigSeqIter​(SigReductionSeq<C> red)
        Constructor.
        Parameters:
        red - Reduction engine
    • Method Detail

      • GB

        public java.util.List<GenPolynomial<C>> GB​(int modv,
                                                   java.util.List<GenPolynomial<C>> F)
        Groebner base signature iterative algorithm.
        Parameters:
        modv - module variable number.
        F - polynomial list.
        Returns:
        GB(F) a Groebner base of F.
      • GB

        public java.util.List<GenPolynomial<C>> GB​(int modv,
                                                   java.util.List<GenPolynomial<C>> G,
                                                   GenPolynomial<C> f)
        Groebner base iterated.
        Parameters:
        modv - module variable number.
        G - polynomial list of a Groebner base.
        f - polynomial.
        Returns:
        GB(G,f) a Groebner base of G+(f).
      • SPolynomial

        GenPolynomial<C> SPolynomial​(SigPoly<C> A,
                                     SigPoly<C> B)
        S-Polynomial.
        Parameters:
        A - monic polynomial.
        B - monic polynomial.
        Returns:
        spol(A,B) the S-polynomial of the A and B.
      • SPolynomial

        GenPolynomial<C> SPolynomial​(SigPair<C> P)
        S-Polynomial.
        Parameters:
        P - pair.
        Returns:
        spol(A,B) the S-polynomial of the pair (A,B).
      • SPolynomialFactors

        GenPolynomial<C>[] SPolynomialFactors​(SigPoly<C> A,
                                              SigPoly<C> B)
        S-Polynomial polynomial factors.
        Parameters:
        A - monic polynomial.
        B - monic polynomial.
        Returns:
        polynomials [e,f] such that spol(A,B) = e*a - f*B.
      • newPair

        SigPair<C> newPair​(SigPoly<C> A,
                           SigPoly<C> B,
                           java.util.List<SigPoly<C>> G)
        Pair with signature.
        Parameters:
        A - polynomial with signature.
        B - polynomial with signature.
        G - polynomial ith signature list.
        Returns:
        signature pair according to algorithm.
      • newPair

        SigPair<C> newPair​(GenPolynomial<C> s,
                           SigPoly<C> A,
                           SigPoly<C> B,
                           java.util.List<SigPoly<C>> G)
        Pair with signature.
        Parameters:
        s - signature for pair.
        A - polynomial with signature.
        B - polynomial with signature.
        G - polynomial ith signature list.
        Returns:
        signature pair according to algorithm.
      • sigNormalform

        SigPoly<C> sigNormalform​(java.util.List<GenPolynomial<C>> F,
                                 java.util.List<SigPoly<C>> G,
                                 SigPoly<C> A)
        Top normalform.
        Parameters:
        A - polynomial.
        F - polynomial list.
        G - polynomial list.
        Returns:
        nf(A) with respect to F and G.
      • pruneP

        java.util.List<SigPair<C>> pruneP​(java.util.List<SigPair<C>> P,
                                          java.util.List<ExpVector> syz)
        Prune total pair list P.
        Parameters:
        P - pair list.
        syz - list of exponent vectors representing syzygies.
        Returns:
        updated pair list.
      • pruneS

        java.util.List<SigPair<C>> pruneS​(java.util.List<SigPair<C>> S,
                                          java.util.List<ExpVector> syz,
                                          java.util.List<SigPoly<C>> done,
                                          java.util.List<SigPoly<C>> G)
        Prune pair list of degree d.
        Parameters:
        S - pair list.
        syz - list of exponent vectors representing syzygies.
        done - list of treated polynomials.
        G - polynomial with signature list.
        Returns:
        updated pair list.
      • initializeSyz

        java.util.List<ExpVector> initializeSyz​(java.util.List<GenPolynomial<C>> F,
                                                java.util.List<SigPoly<C>> G)
        Initializes syzygy list.
        Parameters:
        F - polynomial list.
        G - polynomial with signature list.
        Returns:
        list of exponent vectors representing syzygies.
      • updateSyz

        void updateSyz​(java.util.List<ExpVector> syz,
                       SigPoly<C> r)
        Update syzygy list.
        Parameters:
        syz - list of exponent vectors representing syzygies.
        r - polynomial. Note: szy is modified to represent updated list of exponent vectors.