Supernumber
jsci.maths

## Class Supernumber

• All Implemented Interfaces:
Serializable, Ring.Member, AbelianGroup.Member, Member

`public final class Supernumberextends Objectimplements Ring.Member`
The Supernumber class encapsulates supernumbers. They are actually implemented as elements of the Grassmann algebra 4 rather than the full .
Serialized Form
• ### Constructor Summary

Constructors
Constructor and Description
`Supernumber()`
Constructs a supernumber.
• ### Method Summary

Methods
Modifier and TypeMethod and Description
`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.
`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.
`String``toString()`
Returns a string representing the value of this supernumber.
• ### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`
• ### Constructor Detail

• #### Supernumber

`public Supernumber()`
Constructs a supernumber.
• ### Method Detail

• #### toString

`public String toString()`
Returns a string representing the value of this supernumber.
Overrides:
`toString` in class `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 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`

`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

`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