All Downloads are FREE. Search and download functionalities are using the official Maven repository.

JSci.maths.polynomials.Polynomial Maven / Gradle / Ivy

package JSci.maths.polynomials;

import JSci.maths.fields.Field;


/** A Polynomial as a Ring.Member over a Field
 * @author b.dietrich
 * @jsci.planetmath Polynomial
 */
public interface Polynomial extends JSci.maths.fields.Ring.Member {
    /** Get the coefficient of degree k, i.e. a_k if
     * P(x) := sum_{k=0}^n a_k x^k
     * @param k degree
     * @return coefficient as described above
     */
    public Field.Member getCoefficient( int k );

    /** Get the coefficients as an array
     * @return the coefficients as an array
     */
    public Field.Member[] getCoefficients();

    /** The degree.
     * @return the degree
     */
    public int degree();

    /** Return a new Polynomial with coefficients divided by a
     * @param a divisor
     * @return new Polynomial with coefficients /= a
     */
    public Polynomial scalarDivide( Field.Member a );

    /** Return a new Polynomial with coefficients multiplied by a
    * @param a factor
    * @return new Polynomial with coefficients *= a
    */
    public Polynomial scalarMultiply( Field.Member a );
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy