org.lsmp.djep.groupJep.groups
Class FreeGroup

java.lang.Object
  extended byorg.lsmp.djep.groupJep.groups.Group
      extended byorg.lsmp.djep.groupJep.groups.FreeGroup
All Implemented Interfaces:
AbelianGroupI, GroupI, RingI
Direct Known Subclasses:
AlgebraicExtension

public class FreeGroup
extends Group
implements RingI

A free group generated by a symbol t.

Author:
Rich Morris Created on 09-Mar-2004

Field Summary
protected  RingI baseRing
           
protected  Complex rootVal
           
protected  java.lang.String symbol
           
protected  FreeGroupElement tPoly
           
protected  FreeGroupElement unitPoly
           
protected  FreeGroupElement zeroPoly
           
 
Constructor Summary
FreeGroup(RingI K, java.lang.String symbol)
          Create the ring K(t) where t is a solution of the monic polynomial p.
 
Method Summary
 java.lang.Number add(java.lang.Number a, java.lang.Number b)
          Get sum of the numbers
 void addStandardConstants(JEP j)
          adds the standard constants for this group
 boolean equals(java.lang.Number a, java.lang.Number b)
          whether two numbers are equal
 RingI getBaseRing()
          Returns the base ring of this extension.
 java.lang.Number getInverse(java.lang.Number a)
          Get Inverse of a number
 java.lang.Number getONE()
          Get multiplicative identity i.e. 1.
 Complex getRootVal()
          Returns an aproximation to the value of the root as a complex number.
 java.lang.String getSymbol()
          Returns the symbol used to denote the generator.
 java.lang.Number getZERO()
          Returns the identity element under +
 java.lang.Number mul(java.lang.Number a, java.lang.Number b)
          Returns the product of two numbers, a*b
 void setRootVal(Complex complex)
          Sets the value used to aproximate the root as a complex number.
 java.lang.Number sub(java.lang.Number a, java.lang.Number b)
          Get the difference of the numbers.
 java.lang.String toString()
           
 java.lang.Number valueOf(java.lang.Number[] coeffs)
           
 java.lang.Number valueOf(java.lang.String s)
          returns number given by the string
 
Methods inherited from class org.lsmp.djep.groupJep.groups.Group
addStandardFunctions, getNumberFactory
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.lsmp.djep.groupJep.GroupI
addStandardFunctions, getNumberFactory
 

Field Detail

baseRing

protected RingI baseRing

zeroPoly

protected FreeGroupElement zeroPoly

unitPoly

protected FreeGroupElement unitPoly

tPoly

protected FreeGroupElement tPoly

symbol

protected java.lang.String symbol

rootVal

protected Complex rootVal
Constructor Detail

FreeGroup

public FreeGroup(RingI K,
                 java.lang.String symbol)
Create the ring K(t) where t is a solution of the monic polynomial p.

Throws:
java.lang.IllegalArgumentException - if the base ring of the poly is not the same.
java.lang.IllegalArgumentException - if the polynomial is not monic.
Method Detail

add

public java.lang.Number add(java.lang.Number a,
                            java.lang.Number b)
Description copied from interface: GroupI
Get sum of the numbers

Specified by:
add in interface GroupI

sub

public java.lang.Number sub(java.lang.Number a,
                            java.lang.Number b)
Description copied from interface: GroupI
Get the difference of the numbers. i.e. a + (-b)

Specified by:
sub in interface GroupI

mul

public java.lang.Number mul(java.lang.Number a,
                            java.lang.Number b)
Description copied from interface: RingI
Returns the product of two numbers, a*b

Specified by:
mul in interface RingI

equals

public boolean equals(java.lang.Number a,
                      java.lang.Number b)
Description copied from interface: GroupI
whether two numbers are equal

Specified by:
equals in interface GroupI

valueOf

public java.lang.Number valueOf(java.lang.String s)
Description copied from interface: GroupI
returns number given by the string

Specified by:
valueOf in interface GroupI

valueOf

public java.lang.Number valueOf(java.lang.Number[] coeffs)

getZERO

public java.lang.Number getZERO()
Description copied from interface: GroupI
Returns the identity element under +

Specified by:
getZERO in interface GroupI

getONE

public java.lang.Number getONE()
Description copied from interface: RingI
Get multiplicative identity i.e. 1. Strictly speaking a ring need not have a mul indentity. However most useful ones do, and they are not all integral domains.

Specified by:
getONE in interface RingI

getInverse

public java.lang.Number getInverse(java.lang.Number a)
Description copied from interface: GroupI
Get Inverse of a number

Specified by:
getInverse in interface GroupI

addStandardConstants

public void addStandardConstants(JEP j)
Description copied from interface: GroupI
adds the standard constants for this group

Specified by:
addStandardConstants in interface GroupI
Overrides:
addStandardConstants in class Group

toString

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

getBaseRing

public RingI getBaseRing()
Returns the base ring of this extension.


setRootVal

public void setRootVal(Complex complex)
Sets the value used to aproximate the root as a complex number.


getRootVal

public Complex getRootVal()
Returns an aproximation to the value of the root as a complex number.


getSymbol

public java.lang.String getSymbol()
Returns the symbol used to denote the generator.



http://www.singularsys.com/jep Copyright © 2004 Singular Systems