Normalizable

com.phasmidsoftware.number.algebra.core.Normalizable
See theNormalizable companion object
trait Normalizable[T]

Attributes

Companion
object
Graph
Supertypes
class Object
trait Matchable
class Any
Known subtypes
trait Valuable
trait Lazy
trait Expression
class Noop
trait Root
class AbstractRoot
class LinearRoot
object L2
object LgE
class Literal
object E
object I
object Infinity
object Half
object MinusOne
object One
object Pi
object Two
object Zero
class Euler
trait Multiple
class Aggregate
class BiFunction
class UniFunction
trait Eager
trait Nat
object NatZero
class Succ
trait Solution
trait Algebraic
class Complex
trait Structure
trait Functional
trait Radians
class Angle
trait Transformed
class Exponential
class InversePower
trait Scalar
object NoScalar
trait Number
trait ExactNumber
class WholeNumber
class Real
Show all

Members list

Value members

Abstract methods

def normalize: T

Normalizes this T to its simplest equivalent form where T is the supertype of all possible results. This may change the type (e.g., RationalNumber → WholeNumber, Complex(5,0) → WholeNumber(5)).

Normalizes this T to its simplest equivalent form where T is the supertype of all possible results. This may change the type (e.g., RationalNumber → WholeNumber, Complex(5,0) → WholeNumber(5)).

For Expression types, this will attempt to simplify and materialize if the result is exact. For Eager types, this will reduce to the simplest type representation.

Attributes

Returns

the simplest representation of this value that is a subtype of T.