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
- Protected
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.