Exp

com.phasmidsoftware.number.expression.expr.Exp
case object Exp extends ExpressionMonoFunction

Represents a mathematical exponential function, exp(x), where e is the base of natural logarithms. This case object extends ExpressionMonoFunction and applies the exp operation on a given number. It defines the exponential operation for transformation or evaluation within expressions.

Attributes

Graph
Supertypes
trait Singleton
trait Product
trait Mirror
trait Serializable
trait Product
trait Equals
trait Eager => Valuable
class Object
trait Matchable
class Any
Show all
Self type
Exp.type

Members list

Type members

Inherited types

type MirroredElemLabels = EmptyTuple

The names of the product elements.

The names of the product elements.

Attributes

Inherited from:
Singleton
type MirroredElemTypes = EmptyTuple

Attributes

Inherited from:
Singleton
type MirroredMonoType = this.type

The mirrored *-type.

The mirrored *-type.

Attributes

Inherited from:
Singleton
type MirroredType = this.type

Attributes

Inherited from:
Singleton

Inherited and Abstract types

type MirroredLabel <: String

The name of the type.

The name of the type.

Attributes

Inherited from:
Mirror

Value members

Concrete methods

def applyExact(x: Eager): Option[Eager]

Computes the result of applying the exponential function to a specific Valuable value. This method provides predefined results for certain input cases:

Computes the result of applying the exponential function to a specific Valuable value. This method provides predefined results for certain input cases:

  • Negative infinity maps to zero.
  • Zero maps to one.
  • One maps to the mathematical constant e.
  • For all other inputs, no result is computed.

Value parameters

x

the input Valuable value on which the exact exponential operation is applied.

Attributes

Returns

Some(Valuable) if the input matches a predefined case, or None otherwise.

def paramContext(context: Context): Context

Ignores the provided context and returns AnyScalar.

Ignores the provided context and returns AnyScalar.

Value parameters

context

ignored.

Attributes

Returns

a new or modified Context after applying the associated operation

Inherited methods

def andThen[A](g: Valuable => A): Eager => A

Composes two instances of Function1 in a new Function1, with this function applied first.

Composes two instances of Function1 in a new Function1, with this function applied first.

Type parameters

A

the result type of function g

Value parameters

g

a function R => A

Attributes

Returns

a new function f such that f(x) == g(apply(x))

Inherited from:
Function1
def apply(x: Eager): Eager

Evaluate this function on Valuable x.

Evaluate this function on Valuable x.

Value parameters

x

the parameter to the function.

Attributes

Returns

the result of f(x).

Inherited from:
ExpressionMonoFunction
def applyComplex(z: Complex): Option[Eager]

Applies the mathematical operation encapsulated by this ExpressionMonoFunction to the given complex number. The operation is determined based on the specific subtype or case of this function instance.

Applies the mathematical operation encapsulated by this ExpressionMonoFunction to the given complex number. The operation is determined based on the specific subtype or case of this function instance.

Value parameters

z

the input complex number of type algebra.eager.Complex to which the operation will be applied

Attributes

Returns

an Option[Eager] containing the result of applying the operation as an Eager instance, or None if the operation is not supported for this function instance

Inherited from:
ExpressionMonoFunction
def compose[A](g: A => Eager): A => Valuable

Composes two instances of Function1 in a new Function1, with this function applied last.

Composes two instances of Function1 in a new Function1, with this function applied last.

Type parameters

A

the type to which function g can be applied

Value parameters

g

a function A => T1

Attributes

Returns

a new function f such that f(x) == apply(g(x))

Inherited from:
Function1
def evaluate(a: Expression)(context: Context): Option[Eager]

Evaluates the given Expression in the specified Context and attempts to derive an Eager result. This method relies on the Expression being evaluated as-is and applies this function's exact logic if applicable.

Evaluates the given Expression in the specified Context and attempts to derive an Eager result. This method relies on the Expression being evaluated as-is and applies this function's exact logic if applicable.

CONSIDER the alternative version (commented out) which seems like it should be correct but isn't.

Value parameters

a

the Expression to be evaluated.

context

the Context within which the evaluation is performed.

Attributes

Returns

an Option[Eager] containing the result of the evaluation if successful, or None otherwise.

Inherited from:
ExpressionMonoFunction
def fromProduct(p: Product): MirroredMonoType

Creates a new instance of type T with elements taken from product p.

Creates a new instance of type T with elements taken from product p.

Attributes

Inherited from:
Singleton
def productElementNames: Iterator[String]

An iterator over the names of all the elements of this product.

An iterator over the names of all the elements of this product.

Attributes

Inherited from:
Product
def productIterator: Iterator[Any]

An iterator over all the elements of this product.

An iterator over all the elements of this product.

Attributes

Returns

in the default implementation, an Iterator[Any]

Inherited from:
Product
override def toString: String

Generate helpful debugging information about this ExpressionMonoFunction.

Generate helpful debugging information about this ExpressionMonoFunction.

Attributes

Returns

a String.

Definition Classes
ExpressionMonoFunction -> Function1 -> Any
Inherited from:
ExpressionMonoFunction

Inherited fields

val f: Eager => Eager

Attributes

Inherited from:
ExpressionMonoFunction
val name: String

Returns the name of the expression function.

Returns the name of the expression function.

Attributes

Returns

a string representing the name of the function

Inherited from:
ExpressionMonoFunction
val parity: Parity

Attributes

Inherited from:
ExpressionMonoFunction