JSci.maths
Class Supernumber

java.lang.Object
  extended by JSci.maths.Supernumber
All Implemented Interfaces:
java.io.Serializable, Ring.Member, AbelianGroup.Member, Member

public final class Supernumber
extends java.lang.Object
implements Ring.Member

The Supernumber class encapsulates supernumbers. They are actually implemented as elements of the Grassmann algebra Lambda4 rather than the full Lambdainfinity.

See Also:
Serialized Form
PlanetMath references:
Supernumber

Constructor Summary
Supernumber()
          Constructs a supernumber.
 
Method Summary
 AbelianGroup.Member add(AbelianGroup.Member z)
          Returns the addition of this number and another.
 Supernumber add(Supernumber z)
          Returns the addition of this supernumber and another.
 int dimension()
          Returns the dimension.
 Complex getBody()
          Returns the body (rank 0) of this supernumber.
 java.lang.Object getSet()
           
 Complex getSoul1(int i)
          Returns the a-number soul (rank 1) of this supernumber.
 Complex getSoul2(int i)
          Returns the c-number soul (rank 2) of this supernumber.
 Complex getSoul3(int i)
          Returns the a-number soul (rank 3) of this supernumber.
 Complex getSoul4()
          Returns the c-number soul (rank 4) of this supernumber.
 Ring.Member multiply(Ring.Member z)
          Returns the multiplication of this number and another.
 Supernumber multiply(Supernumber z)
          Returns the multiplication of this supernumber and another.
 AbelianGroup.Member negate()
          Returns the negative of this number.
 void setBody(Complex b)
          Sets the body (rank 0) of this supernumber.
 void setSoul1(int i, Complex s)
          Sets the a-number soul (rank 1) of this supernumber.
 void setSoul2(int i, Complex s)
          Sets the c-number soul (rank 2) of this supernumber.
 void setSoul3(int i, Complex s)
          Sets the a-number soul (rank 3) of this supernumber.
 void setSoul4(Complex s)
          Sets the c-number soul (rank 4) of this supernumber.
 AbelianGroup.Member subtract(AbelianGroup.Member z)
          Returns the subtraction of this number and another.
 Supernumber subtract(Supernumber z)
          Returns the subtraction of this supernumber and another.
 java.lang.String toString()
          Returns a string representing the value of this supernumber.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Supernumber

public Supernumber()
Constructs a supernumber.

Method Detail

toString

public java.lang.String toString()
Returns a string representing the value of this supernumber.

Overrides:
toString in class java.lang.Object

getBody

public Complex getBody()
Returns the body (rank 0) of this supernumber.


setBody

public void setBody(Complex b)
Sets the body (rank 0) of this supernumber.


getSoul1

public Complex getSoul1(int i)
Returns the a-number soul (rank 1) of this supernumber.


setSoul1

public void setSoul1(int i,
                     Complex s)
Sets the a-number soul (rank 1) of this supernumber.


getSoul2

public Complex getSoul2(int i)
Returns the c-number soul (rank 2) of this supernumber.


setSoul2

public void setSoul2(int i,
                     Complex s)
Sets the c-number soul (rank 2) of this supernumber.


getSoul3

public Complex getSoul3(int i)
Returns the a-number soul (rank 3) of this supernumber.


setSoul3

public void setSoul3(int i,
                     Complex s)
Sets the a-number soul (rank 3) of this supernumber.


getSoul4

public Complex getSoul4()
Returns the c-number soul (rank 4) of this supernumber.


setSoul4

public void setSoul4(Complex s)
Sets the c-number soul (rank 4) of this supernumber.


dimension

public int dimension()
Returns the dimension.


getSet

public java.lang.Object getSet()
Specified by:
getSet in interface Member

negate

public AbelianGroup.Member negate()
Returns the negative of this number.

Specified by:
negate in interface AbelianGroup.Member

add

public AbelianGroup.Member add(AbelianGroup.Member z)
Returns the addition of this number and another.

Specified by:
add in interface AbelianGroup.Member
Parameters:
z - a group member

add

public Supernumber add(Supernumber z)
Returns the addition of this supernumber and another.

Parameters:
z - a supernumber

subtract

public AbelianGroup.Member subtract(AbelianGroup.Member z)
Returns the subtraction of this number and another.

Specified by:
subtract in interface AbelianGroup.Member
Parameters:
z - a group member

subtract

public Supernumber subtract(Supernumber z)
Returns the subtraction of this supernumber and another.

Parameters:
z - a supernumber

multiply

public Ring.Member multiply(Ring.Member z)
Returns the multiplication of this number and another.

Specified by:
multiply in interface Ring.Member
Parameters:
z - a ring member

multiply

public Supernumber multiply(Supernumber z)
Returns the multiplication of this supernumber and another.

Parameters:
z - a supernumber