NumericAlgebra

interface NumericAlgebra<T> : Algebra<T>

An algebraic structure where elements can have numeric representation.

Parameters

T

the type of element of this structure.

Functions

Link copied to clipboard
open fun binaryOperation(operation: String, left: T, right: T): T

Dynamically invokes a binary operation with the certain name.

Link copied to clipboard
open fun binaryOperationFunction(operation: String): (T, T) -> T

Dynamically dispatches a binary operation with the certain name.

Link copied to clipboard
open fun bindSymbol(value: String): T

The same as bindSymbolOrNull but throws an error if symbol could not be bound

Link copied to clipboard
open override fun bindSymbolOrNull(value: String): T?

Wraps a raw string to T object. This method is designed for three purposes:

Link copied to clipboard
open fun export(arg: T): T

Export an algebra element, so it could be accessed even after algebra scope is closed. This method must be used on algebras where data is stored externally or any local algebra state is used. By default (if not overridden), exports the object itself.

Link copied to clipboard
open fun leftSideNumberOperation(operation: String, left: Number, right: T): T

Dynamically invokes a binary operation with the certain name with numeric first argument.

Link copied to clipboard
open fun leftSideNumberOperationFunction(operation: String): (left: Number, T) -> T

Dynamically dispatches a binary operation with the certain name with numeric first argument.

Link copied to clipboard
abstract fun number(value: Number): T

Wraps a number to T object.

Link copied to clipboard
open fun rightSideNumberOperation(operation: String, left: T, right: Number): T

Dynamically invokes a binary operation with the certain name with numeric second argument.

Link copied to clipboard
open fun rightSideNumberOperationFunction(operation: String): (T, right: Number) -> T

Dynamically dispatches a binary operation with the certain name with numeric first argument.

Link copied to clipboard
open fun unaryOperation(operation: String, arg: T): T

Dynamically invokes a unary operation with the certain name.

Link copied to clipboard
open fun unaryOperationFunction(operation: String): (T) -> T

Dynamically dispatches a unary operation with the certain name.

Inheritors

Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard

Extensions

Link copied to clipboard
val <T> NumericAlgebra<T>.e: T

The e mathematical constant.

Link copied to clipboard
val <T> NumericAlgebra<T>.pi: T

The π mathematical constant.

Sources

Link copied to clipboard