Package edu.jas.poly

Class GenExteriorPolynomialRing<C extends RingElem<C>>

    • Constructor Detail

      • GenExteriorPolynomialRing

        public GenExteriorPolynomialRing​(RingFactory<C> cf,
                                         IndexFactory wf)
        The constructor creates a polynomial factory object with the default term order.
        Parameters:
        cf - factory for coefficients of type C.
        wf - factory for index list.
      • GenExteriorPolynomialRing

        public GenExteriorPolynomialRing​(RingFactory<C> cf,
                                         java.lang.String[] s)
        The constructor creates a polynomial factory object.
        Parameters:
        cf - factory for coefficients of type C.
        s - array of variable names.
      • GenExteriorPolynomialRing

        public GenExteriorPolynomialRing​(RingFactory<C> cf,
                                         java.lang.String s)
        The constructor creates a polynomial factory object.
        Parameters:
        cf - factory for coefficients of type C.
        s - string of single letter variable names.
    • Method Detail

      • toString

        public java.lang.String toString()
        Get the String representation.
        Overrides:
        toString in class java.lang.Object
        See Also:
        Object.toString()
      • equals

        public boolean equals​(java.lang.Object other)
        Comparison with any other object.
        Overrides:
        equals in class java.lang.Object
        See Also:
        Object.equals(java.lang.Object)
      • hashCode

        public int hashCode()
        Hash code for this polynomial ring.
        Overrides:
        hashCode in class java.lang.Object
        See Also:
        Object.hashCode()
      • getZEROCoefficient

        public C getZEROCoefficient()
        Get the zero element from the coefficients.
        Returns:
        0 as C.
      • getONECoefficient

        public C getONECoefficient()
        Get the one element from the coefficients.
        Returns:
        1 as C.
      • valueOf

        public GenExteriorPolynomial<CvalueOf​(C a)
        Get a (constant) GenExteriorPolynomial element from a coefficient value.
        Parameters:
        a - coefficient.
        Returns:
        a constant GenExteriorPolynomial.
      • valueOf

        public GenExteriorPolynomial<CvalueOf​(ExpVector e)
        Get a GenExteriorPolynomial from an ExpVector.
        Parameters:
        e - exponent vector.
        Returns:
        a GenExteriorPolynomial, if exponents are > 1 return ZERO.
      • valueOf

        public GenExteriorPolynomial<CvalueOf​(C a,
                                                IndexList e)
        Get a GenExteriorPolynomial from a coefficient and a IndexList.
        Parameters:
        a - coefficient.
        e - word.
        Returns:
        a GenExteriorPolynomial.
      • valueOf

        public GenExteriorPolynomial<CvalueOf​(C a,
                                                ExpVector e)
        Get a GenExteriorPolynomial from a coefficient and an ExpVector.
        Parameters:
        a - coefficient.
        e - exponent vector.
        Returns:
        a GenExteriorPolynomial, if exponents are > 1 return ZERO.
      • valueOf

        public GenExteriorPolynomial<CvalueOf​(GenPolynomial<C> a)
        Get a GenExteriorPolynomial from a multivariate GenPolynomial, terms with exponents > 1 are set to zero.
        Parameters:
        a - multivariate GenPolynomial.
        Returns:
        multivariate a GenExteriorPolynomial.
      • valueOf

        public GenExteriorPolynomial<CvalueOf​(GenExteriorPolynomial<C> a)
        Get a GenExteriorPolynomial from a GenExteriorPolynomial with conformant index lists.
        Parameters:
        a - GenExteriorPolynomial.
        Returns:
        a GenExteriorPolynomial with conformant index lists.
      • valueOf

        public java.util.List<GenExteriorPolynomial<C>> valueOf​(java.util.List<GenPolynomial<C>> A)
        Get a list of GenExteriorPolynomials from a list of GenPolynomials.
        Parameters:
        A - GenPolynomial list.
        Returns:
        a GenExteriorPolynomial list.
      • getIMAX

        public GenExteriorPolynomial<CgetIMAX()
        Get a GenExteriorPolynomial maximal index list element.
        Returns:
        a GenExteriorPolynomial with maximal index list.
      • fromMatrix

        public java.util.List<GenExteriorPolynomial<C>> fromMatrix​(GenMatrix<C> A)
        Get a list of GenExteriorPolynomials from a GenMatrix.
        Parameters:
        A - GenMatrix
        Returns:
        a list of GenExteriorPolynomials.
      • determinant

        public C determinant​(java.util.List<GenExteriorPolynomial<C>> A)
        Determinant form exterior polynomial / matrix.
        Parameters:
        A - list of GenExteriorPolynomials
        Returns:
        determinant of 'matrix' A.
      • fromPolynomial

        public GenExteriorPolynomial<CfromPolynomial​(GenPolynomial<C> a)
        Get a GenExteriorPolynomial from a univariate GenPolynomial. Different exponents are converted to different indexes.
        Parameters:
        a - univariate GenPolynomial.
        Returns:
        a multivariate GenExteriorPolynomial.
      • random

        public GenExteriorPolynomial<Crandom​(int n,
                                               java.util.Random rnd)
        Random polynomial. Generates a random polynomial with k = 5, l = n, d = 3.
        Specified by:
        random in interface ElemFactory<C extends RingElem<C>>
        Parameters:
        n - number of terms.
        rnd - is a source for random bits.
        Returns:
        a random polynomial.
      • random

        public GenExteriorPolynomial<Crandom​(int k,
                                               int l,
                                               int d)
        Generate a random polynomial.
        Parameters:
        k - bitsize of random coefficients.
        l - number of terms.
        d - maximal length of a random word.
        Returns:
        a random polynomial.
      • random

        public GenExteriorPolynomial<Crandom​(int k,
                                               int l,
                                               int d,
                                               java.util.Random rnd)
        Generate a random polynomial.
        Parameters:
        k - bitsize of random coefficients.
        l - number of terms.
        d - maximal length of a random word.
        rnd - is a source for random bits.
        Returns:
        a random polynomial.
      • randomForm

        public GenExteriorPolynomial<CrandomForm​(int kl,
                                                   int l,
                                                   int k)
        Generate a random k-form polynomial.
        Parameters:
        kl - bitsize of random coefficients.
        l - number of terms.
        k - length of any random word.
        Returns:
        a random k-form polynomial.
      • randomForm

        public GenExteriorPolynomial<CrandomForm​(int kl,
                                                   int l,
                                                   int k,
                                                   java.util.Random rnd)
        Generate a random k-form polynomial.
        Parameters:
        kl - bitsize of random coefficients.
        l - number of terms.
        k - length of any random word.
        rnd - is a source for random bits.
        Returns:
        a random k-form polynomial.
      • parse

        public GenExteriorPolynomial<Cparse​(java.lang.String s)
        Parse a polynomial with the use of GenExteriorPolynomialTokenizer.
        Specified by:
        parse in interface ElemFactory<C extends RingElem<C>>
        Parameters:
        s - String.
        Returns:
        GenExteriorPolynomial from s.
      • parse

        public GenExteriorPolynomial<Cparse​(java.io.Reader r)
        Parse a polynomial with the use of GenPolynomialTokenizer.
        Specified by:
        parse in interface ElemFactory<C extends RingElem<C>>
        Parameters:
        r - Reader.
        Returns:
        next GenExteriorPolynomial from r.
      • univariate

        public GenExteriorPolynomial<Cunivariate​(int i)
        Generate univariate polynomial in a given variable.
        Parameters:
        i - the index of the variable.
        Returns:
        X_i as univariate polynomial.
      • univariateList

        public java.util.List<GenExteriorPolynomial<C>> univariateList()
        Generate list of univariate polynomials in all variables.
        Returns:
        List(X_1,...,X_n) a list of univariate polynomials.
      • getGenerators

        public java.util.List<GenExteriorPolynomial<C>> getGenerators()
        Get the generating elements excluding the generators for the coefficient ring.
        Returns:
        a list of generating elements for this ring.