Package org.jscience.mathematics.structure
Provides mathematical sets (identified by the class parameter) associated to binary operations, such as multiplication or addition, satisfying certain axioms.
For example,
Real
is a
Field<Real>
,
but
LargeInteger
is only a
Ring<LargeInteger>
as its
elements do not have multiplicative inverse (except for one).
To implement a structure means not only that some operations are now available
but also that some properties (such as associativity and distributivity) must be verified.
For example, the declaration: [code]class Quaternions implements Field
-
ClassDescriptionField<F>This interface represents an algebraic structure in which the operations of addition, subtraction, multiplication and division (except division by zero) may be performed.This interface represents a structure with a binary additive operation (+), satisfying the group axioms (associativity, neutral element, inverse element and closure).This interface represents a structure with a binary multiplicative operation (·), satisfying the group axioms (associativity, neutral element, inverse element and closure).Ring<R>This interface represents an algebraic structure with two binary operations addition and multiplication (+ and ·), such that (R, +) is an abelian group, (R, ·) is a monoid and the multiplication distributes over the addition.Structure<T>This interface represents a mathematical structure on a set (type).VectorSpace<V,
F extends Field> This interface represents a vector space over a field with two operations, vector addition and scalar multiplication.VectorSpaceNormed<V,F extends Field> This interface represents a vector space on which a positive vector length or size is defined.