math
Class Polynomial

java.lang.Object
  extended by math.Polynomial

public class Polynomial
extends java.lang.Object

Representação de Polinômio

Author:
MIS

Constructor Summary
Polynomial(int grau, short[] coeficientes, FiniteField coefficientRing)
          Construtor
 
Method Summary
 boolean Coprime(Polynomial f, Polynomial g)
          Testa se f e g são coprimos
 int determineDegreeOfCoeficient(short[] coef)
          Obtém grau do coeficiente coef
 Polynomial divideByCoeficient(Polynomial B, short coeficient)
          Divide por coeficiente
 FiniteField getCoefficientRing()
           
 short getCoeficient(int degree)
          Obtém coeficiente de grau degree
 short[] getCoeficients()
           
 Polynomial getCopy()
          Retorna uma cópia
 int getDegree()
           
 Polynomial getInverseModPolynomial(Polynomial polMod)
          Obtém inverso módulo um outro polinomio
static Polynomial getSquare(Polynomial a)
          Eleva a ao quadrado
 boolean isEmpty()
          Testa se é polinômio nulo
 boolean isIrreducible()
          Implementação do Algorimto de Ben-Or de teste de irredutibilidade polinomial.
 boolean isPrimitive()
           
static Polynomial mod(Polynomial y, Polynomial g)
          Módulo entre dois polinômios
static Polynomial mult(Polynomial a, Polynomial b)
          Multiplica dois polinômios
 void setCoefficientRing(FiniteField coefficientRing)
           
 void setCoeficients(short[] coeficients)
           
 void setDegree(int degree)
           
static Polynomial sum(Polynomial y, Polynomial g)
          Soma dois polinômios
 java.lang.String toString()
           
 java.lang.String toStringExport()
          Imprime para exportação
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Polynomial

public Polynomial(int grau,
                  short[] coeficientes,
                  FiniteField coefficientRing)
Construtor

Parameters:
grau -
coeficientes -
coefficientRing -
Method Detail

getCopy

public Polynomial getCopy()
Retorna uma cópia

Returns:
cópia de this

getSquare

public static Polynomial getSquare(Polynomial a)
Eleva a ao quadrado

Parameters:
a -
Returns:
a^2

getInverseModPolynomial

public Polynomial getInverseModPolynomial(Polynomial polMod)
Obtém inverso módulo um outro polinomio

Parameters:
polMod -
Returns:
this ^-1 mod polMod

divideByCoeficient

public Polynomial divideByCoeficient(Polynomial B,
                                     short coeficient)
Divide por coeficiente

Parameters:
B -
coeficient -
Returns:
B / coeficient

getCoeficient

public short getCoeficient(int degree)
Obtém coeficiente de grau degree

Parameters:
degree -
Returns:
coeficiente de grau degree

isIrreducible

public boolean isIrreducible()
Implementação do Algorimto de Ben-Or de teste de irredutibilidade polinomial.

Returns:
(é irredutível)?

Coprime

public boolean Coprime(Polynomial f,
                       Polynomial g)
Testa se f e g são coprimos

Parameters:
f -
g -
Returns:
(f e g são coprimos)?

isEmpty

public boolean isEmpty()
Testa se é polinômio nulo

Returns:
(é polinômio nulo)?

mod

public static Polynomial mod(Polynomial y,
                             Polynomial g)
Módulo entre dois polinômios

Parameters:
y -
g -
Returns:
y mod g

mult

public static Polynomial mult(Polynomial a,
                              Polynomial b)
Multiplica dois polinômios

Parameters:
a -
b -
Returns:
a * b

sum

public static Polynomial sum(Polynomial y,
                             Polynomial g)
Soma dois polinômios

Parameters:
y -
g -
Returns:
y + g

isPrimitive

public boolean isPrimitive()
Returns:
a

getCoeficients

public short[] getCoeficients()
Returns:
the coeficients

setCoeficients

public void setCoeficients(short[] coeficients)
Parameters:
coeficients - the coeficientes to set

getDegree

public int getDegree()
Returns:
the degree

setDegree

public void setDegree(int degree)
Parameters:
degree - the degree to set

getCoefficientRing

public FiniteField getCoefficientRing()
Returns:
coefficientRing

setCoefficientRing

public void setCoefficientRing(FiniteField coefficientRing)
Parameters:
coefficientRing -

determineDegreeOfCoeficient

public int determineDegreeOfCoeficient(short[] coef)
Obtém grau do coeficiente coef

Parameters:
coef -
Returns:
grau

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

toStringExport

public java.lang.String toStringExport()
Imprime para exportação

Returns:
string para exportação