package cas
Computer algebra system. A computer algebra system (CAS) has the ability to manipulate mathematical expressions in a way similar to the traditional manual computations of mathematicians and scientists.
The symbolic manipulations supported include:
- simplification to a smaller expression or some standard form, including automatic simplification with assumptions and simplification with constraints
- substitution of symbols or numeric values for certain expressions
- change of form of expressions: expanding products and powers, partial and full factorization, rewriting as partial fractions, constraint satisfaction, rewriting trigonometric functions as exponentials, transforming logic expressions, etc.
- partial and total differentiation
- matrix operations including products, inverses, etc.
- Alphabetic
- By Inheritance
- cas
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
-
case class
Abs(x: Scalar) extends Scalar with Product with Serializable
abs(x)
-
case class
Add(x: Scalar, y: Scalar) extends Scalar with Product with Serializable
x + y
-
case class
AddMatrix(A: Matrix, B: Matrix) extends Matrix with Product with Serializable
A + B
-
case class
AddVector(x: Vector, y: Vector) extends Vector with Product with Serializable
x + y
-
case class
ArcCos(x: Scalar) extends Scalar with Product with Serializable
acos(x)
-
case class
ArcCot(x: Scalar) extends Scalar with Product with Serializable
acot(x)
-
case class
ArcSin(x: Scalar) extends Scalar with Product with Serializable
asin(x)
-
case class
ArcTan(x: Scalar) extends Scalar with Product with Serializable
atan(x)
-
case class
Ceil(x: Scalar) extends IntScalar with Product with Serializable
ceil(x)
-
case class
Const(symbol: String) extends Scalar with Product with Serializable
Constant value.
-
case class
ConstMatrix(symbol: String, size: (IntScalar, IntScalar) = (IntConst("m"), IntConst("n"))) extends Matrix with Product with Serializable
Constant matrix.
-
case class
ConstVector(symbol: String, size: IntScalar = IntConst("n")) extends Vector with Product with Serializable
Constant vector.
Constant vector. Different from VectorVal that has concrete values, this is of constant yet abstract value.
-
case class
Cos(x: Scalar) extends Scalar with Product with Serializable
cos(x)
-
case class
Cot(x: Scalar) extends Scalar with Product with Serializable
cot(x)
-
case class
DiagonalMatrix(x: Scalar*) extends Matrix with Product with Serializable
Diagonal matrix
-
case class
Div(x: Scalar, y: Scalar) extends Scalar with Product with Serializable
x / y
-
case class
Exp(x: Scalar) extends Scalar with Product with Serializable
exp(x)
-
case class
Floor(x: Scalar) extends IntScalar with Product with Serializable
floor(x)
-
case class
GradientVector(y: Var, x: VectorVar) extends Vector with Product with Serializable
The derivative of a scalar y with respect to a vector x.
-
case class
IdentityMatrix(size: (IntScalar, IntScalar) = (IntConst("n"), IntConst("n"))) extends Matrix with Product with Serializable
Identity matrix
-
case class
InnerProduct(x: Vector, y: Vector) extends Scalar with Product with Serializable
Inner product (x * y)
-
case class
Int2Scalar(x: IntScalar) extends Scalar with Product with Serializable
Explicit conversion of int to float.
-
case class
IntAdd(x: IntScalar, y: IntScalar) extends IntScalar with Product with Serializable
x + y
-
case class
IntConst(symbol: String) extends IntScalar with Product with Serializable
Integer constant value.
-
case class
IntDiv(x: IntScalar, y: IntScalar) extends IntScalar with Product with Serializable
x / y
-
case class
IntMul(x: IntScalar, y: IntScalar) extends IntScalar with Product with Serializable
x * y
-
case class
IntNeg(x: IntScalar) extends IntScalar with Product with Serializable
-x
-
case class
IntPower(x: IntScalar, y: IntScalar) extends IntScalar with Product with Serializable
x ** y
-
trait
IntScalar extends Tensor
Scalar: rank-0 tensor.
-
case class
IntSub(x: IntScalar, y: IntScalar) extends IntScalar with Product with Serializable
x - y
-
case class
IntVal(x: Int) extends IntScalar with Product with Serializable
Integer scalar value.
-
case class
IntVar(symbol: String) extends IntScalar with Product with Serializable
Integer scalar variable
-
case class
Log(x: Scalar) extends Scalar with Product with Serializable
log(x)
-
trait
Matrix extends Tensor
Matrix: rank-2 tensor.
-
case class
MatrixInverse(A: Matrix) extends Matrix with Product with Serializable
inv(A)
-
case class
MatrixProduct(A: Matrix, B: Matrix) extends Matrix with Product with Serializable
Matrix multiplication (A * B)
-
case class
MatrixTranspose(A: Matrix) extends Matrix with Product with Serializable
A'
-
case class
MatrixVar(symbol: String, size: (IntScalar, IntScalar) = (IntConst("m"), IntConst("n"))) extends Matrix with Product with Serializable
Abstract matrix variable
-
case class
MatrixVectorProduct(A: Matrix, x: Vector) extends Vector with Product with Serializable
Matrix vector multiplication (A * x)
-
case class
Mod(x: IntScalar, y: IntScalar) extends IntScalar with Product with Serializable
x % y
-
case class
Mul(x: Scalar, y: Scalar) extends Scalar with Product with Serializable
x * y
-
case class
Neg(x: Scalar) extends Scalar with Product with Serializable
-x
-
case class
NegMatrix(A: Matrix) extends Matrix with Product with Serializable
-A
-
case class
NegVector(x: Vector) extends Vector with Product with Serializable
-x
-
case class
OneMatrix(size: (IntScalar, IntScalar) = (IntConst("m"), IntConst("n"))) extends Matrix with Product with Serializable
Matrix of all 1's
-
case class
OneVector(size: IntScalar = IntConst("n")) extends Vector with Product with Serializable
Vector of all 1's
-
case class
OuterProduct(x: Vector, y: Vector) extends Matrix with Product with Serializable
Outer product (x ** y)
-
case class
Power(x: Scalar, y: Scalar) extends Scalar with Product with Serializable
x ** y
-
case class
Round(x: Scalar) extends IntScalar with Product with Serializable
round(x)
-
case class
RowMatrix(x: Vector*) extends Matrix with Product with Serializable
Row-wise matrix
-
trait
Scalar extends Tensor
Scalar: rank-0 tensor.
-
case class
ScalarMatrixProduct(a: Scalar, A: Matrix) extends Matrix with Product with Serializable
a * A
-
case class
ScalarVectorProduct(a: Scalar, x: Vector) extends Vector with Product with Serializable
a * x
-
case class
Sin(x: Scalar) extends Scalar with Product with Serializable
sin(x)
-
case class
Sub(x: Scalar, y: Scalar) extends Scalar with Product with Serializable
x - y
-
case class
Tan(x: Scalar) extends Scalar with Product with Serializable
tan(x)
-
case class
TangentMatrix(y: MatrixVar, x: Var) extends Matrix with Product with Serializable
The derivative of a matrix y with respect to a scalar x.
-
case class
TangentVector(y: VectorVar, x: Var) extends Vector with Product with Serializable
The derivative of a vector y with respect to a scalar x.
-
trait
Tensor extends AnyRef
A tensor is an algebraic object that describes a (multilinear) relationship between sets of algebraic objects related to a vector space.
A tensor is an algebraic object that describes a (multilinear) relationship between sets of algebraic objects related to a vector space. Objects that tensors may map between include vectors (which are often, but not always, understood as arrows with length that point in a direction) and scalars (which are often familiar numbers such as the real numbers), and, recursively, even other tensors. Tensors are defined independent of any basis, although they are often referred to by their components in a basis related to a particular coordinate system.
The shape of tensor (the number of dimensions and the size of each dimension) might be only partially known.
-
case class
Val(x: Double) extends Scalar with Product with Serializable
Scalar value.
-
case class
Var(symbol: String) extends Scalar with Product with Serializable
Scalar variable
-
case class
Vars(x: Scalar*) extends Vector with Product with Serializable
Vector variable
-
trait
Vector extends Tensor
Vector: rank-1 tensor.
-
case class
VectorVal(x: Array[Double]) extends Vector with Product with Serializable
Vector value.
-
case class
VectorVar(symbol: String, size: IntScalar = IntConst("n")) extends Vector with Product with Serializable
Abstract vector variable
-
case class
ZeroMatrix(size: (IntScalar, IntScalar) = (IntConst("m"), IntConst("n"))) extends Matrix with Product with Serializable
Matrix of all 0's
-
case class
ZeroVector(size: IntScalar = IntConst("n")) extends Vector with Product with Serializable
Vector of all 0's
Value Members
- def abs(x: Scalar): Scalar
- def acos(x: Scalar): Scalar
- def acot(x: Scalar): Scalar
- def asin(x: Scalar): Scalar
- def atan(x: Scalar): Scalar
- def ceil(x: Scalar): IntScalar
- def cos(x: Scalar): Scalar
- def cosh(x: Scalar): Scalar
- def cot(x: Scalar): Scalar
- def exp(x: Scalar): Scalar
- def floor(x: Scalar): IntScalar
- def log(x: Scalar): Scalar
- def logistic(x: Scalar): Scalar
- implicit def pimpDouble(x: Double): Val
- implicit def pimpInt(x: Int): IntVal
- implicit def pimpString(x: String): Var
- def round(x: Scalar): IntScalar
- def sin(x: Scalar): Scalar
- def sinh(x: Scalar): Scalar
- def sqrt(x: Scalar): Scalar
- def tan(x: Scalar): Scalar
- def tanh(x: Scalar): Scalar
Smile (Statistical Machine Intelligence and Learning Engine) is a fast and comprehensive machine learning, NLP, linear algebra, graph, interpolation, and visualization system in Java and Scala. With advanced data structures and algorithms, Smile delivers state-of-art performance.
Smile covers every aspect of machine learning, including classification, regression, clustering, association rule mining, feature selection, manifold learning, multidimensional scaling, genetic algorithms, missing value imputation, efficient nearest neighbor search, etc.