Skip to content
OFFICIAL SS DOCUMENTATION

SS.Symbolics 1.7.0

Exact symbolic values, transforms, calculus, solving, optimization, and compiled numerical-function evaluation
API 1.7.0
MIT
source

Language compatibility: >=1.0.0 <2.0.0
Runtime compatibility: >=1.0.0 <2.0.0

No package dependencies declared.

Public API

Public signature
export function addExpression(Expression left, Expression right) -> Expression

Parameters: left: Expression, right: Expression


Public signature
export function addMultivariatePolynomial(MultivariatePolynomial left, MultivariatePolynomial right) -> MultivariatePolynomial

Parameters: left: MultivariatePolynomial, right: MultivariatePolynomial


Public signature
export function addPolynomial(Polynomial left, Polynomial right) -> Polynomial

Parameters: left: Polynomial, right: Polynomial


Public signature
export function addRational(Rational left, Rational right) -> Rational

Parameters: left: Rational, right: Rational


Public signature
export function addRationalFunction(RationalFunction left, RationalFunction right) -> RationalFunction

Parameters: left: RationalFunction, right: RationalFunction


Public signature
export function antiderivative(Expression value, Symbol variable, int maxNodes) -> AntiderivativeResult

Parameters: value: Expression, variable: Symbol, maxNodes: int


Public signature
export record AntiderivativeResult(public Expression expression, public bool evaluated, public string diagnostic)

Parameters: expression: Expression, evaluated: bool, diagnostic: string


Public signature
export function apartRationalFunction(RationalFunction value) -> PartialFractionDecomposition

Parameters: value: RationalFunction


Public signature
export function cancel(Expression value, Symbol variable) -> Expression

Parameters: value: Expression, variable: Symbol


Public signature
export function coefficient(Expression value, Symbol variable, int degree) -> Rational

Parameters: value: Expression, variable: Symbol, degree: int


Public signature
export function collect(Expression value, Symbol variable) -> Expression

Parameters: value: Expression, variable: Symbol


Public signature
export function complexSymbol(string name) -> Symbol

Parameters: name: string


Public signature
export function constantPolynomial(Symbol variable, Rational value) -> Polynomial

Parameters: variable: Symbol, value: Rational


Public signature
export function cosExpression(Expression value) -> Expression

Parameters: value: Expression


Public signature
export function coshExpression(Expression value) -> Expression

Parameters: value: Expression


Public signature
export function declaration(Symbol value) -> string

Parameters: value: Symbol


Public signature
export function definiteIntegralPolynomial(Polynomial value, Rational lower, Rational upper) -> Rational

Parameters: value: Polynomial, lower: Rational, upper: Rational


Public signature
export function derivativeMultivariatePolynomial(MultivariatePolynomial value, Symbol variable) -> MultivariatePolynomial

Parameters: value: MultivariatePolynomial, variable: Symbol


Public signature
export function derivativePolynomial(Polynomial value) -> Polynomial

Parameters: value: Polynomial


Public signature
export function differentiate(Expression value, Symbol variable, int maxNodes) -> Expression

Parameters: value: Expression, variable: Symbol, maxNodes: int


Public signature
export function differentiateOrder(Expression value, Symbol variable, int order, int maxNodes) -> Expression

Parameters: value: Expression, variable: Symbol, order: int, maxNodes: int


Public signature
export function divideExpression(Expression left, Expression right) -> Expression

Parameters: left: Expression, right: Expression


Public signature
export function dividePolynomial(Polynomial dividend, Polynomial divisor) -> PolynomialDivision

Parameters: dividend: Polynomial, divisor: Polynomial


Public signature
export function divideRational(Rational left, Rational right) -> Rational

Parameters: left: Rational, right: Rational


Public signature
export function divideRationalFunction(RationalFunction left, RationalFunction right) -> RationalFunction

Parameters: left: RationalFunction, right: RationalFunction


Public signature
export function equalPolynomial(Polynomial left, Polynomial right) -> bool

Parameters: left: Polynomial, right: Polynomial


Public signature
export function equalRational(Rational left, Rational right) -> bool

Parameters: left: Rational, right: Rational


Public signature
export function equalRationalFunction(RationalFunction left, RationalFunction right) -> bool

Parameters: left: RationalFunction, right: RationalFunction


Public signature
export record EquationSolution(public string kind, public Rational[] roots, public Polynomial residual, public string diagnostic)

Parameters: kind: string, roots: Rational[], residual: Polynomial, diagnostic: string


Public signature
export function evaluateExact(Expression value) -> Rational

Parameters: value: Expression


Public signature
export function evaluateMultivariatePolynomial(MultivariatePolynomial value, Rational[] arguments) -> Rational

Parameters: value: MultivariatePolynomial, arguments: Rational[]


Public signature
export function evaluateNumericalBatch(NumericalFunction functionValue, double[] rowMajorArguments, int rows) -> double[]

Parameters: functionValue: NumericalFunction, rowMajorArguments: double[], rows: int


Public signature
export function evaluateNumericalFunction(NumericalFunction functionValue, double[] arguments) -> double

Parameters: functionValue: NumericalFunction, arguments: double[]


Public signature
export function evaluatePolynomial(Polynomial value, Rational argument) -> Rational

Parameters: value: Polynomial, argument: Rational


Public signature
export function evaluateRationalFunction(RationalFunction value, Rational argument) -> Rational

Parameters: value: RationalFunction, argument: Rational


Public signature
export function exactExpression(Rational value) -> Expression

Parameters: value: Rational


Public signature
export function exactInteger(long value) -> Rational

Parameters: value: long


Public signature
export function exactSquareRoot(Rational value) -> ExactSquareRoot

Parameters: value: Rational


Public signature
export record ExactSquareRoot(public bool exact, public Rational value)

Parameters: exact: bool, value: Rational


Public signature
export function expand(Expression value, Symbol variable) -> Expression

Parameters: value: Expression, variable: Symbol


Public signature
export function expandElementary(Expression value, int maxNodes) -> Expression

Parameters: value: Expression, maxNodes: int


Public signature
export function expExpression(Expression value) -> Expression

Parameters: value: Expression


Public signature
export record Expression(public int[] kinds, public long[] numerators, public long[] denominators, public string[] names, public string[] domains, public bool[] positives, public bool[] nonZeros, public int[] leftChildren, public int[] rightChildren, public int root)

Parameters: kinds: int[], numerators: long[], denominators: long[], names: string[], domains: string[], positives: bool[], nonZeros: bool[], leftChildren: int[], rightChildren: int[], root: int


Public signature
export record ExpressionMatrix(public int rows, public int columns, public Expression[] values)

Parameters: rows: int, columns: int, values: Expression[]


Public signature
export function expressionNodeCount(Expression value) -> int

Parameters: value: Expression


Public signature
export function expressionRootKind(Expression value) -> int

Parameters: value: Expression


Public signature
export function expressionToMultivariatePolynomial(Expression value, Symbol[] variables) -> MultivariatePolynomial

Parameters: value: Expression, variables: Symbol[]


Public signature
export function expressionToPolynomial(Expression value, Symbol variable) -> Polynomial

Parameters: value: Expression, variable: Symbol


Public signature
export function expressionToRationalFunction(Expression value, Symbol variable) -> RationalFunction

Parameters: value: Expression, variable: Symbol


Public signature
export function factorPolynomial(Polynomial value) -> PolynomialFactorization

Parameters: value: Polynomial


Public signature
export function gcdPolynomial(Polynomial left, Polynomial right) -> Polynomial

Parameters: left: Polynomial, right: Polynomial


Public signature
export function gradient(Expression value, Symbol[] variables, int maxNodes) -> Expression[]

Parameters: value: Expression, variables: Symbol[], maxNodes: int


Public signature
export function hessian(Expression value, Symbol[] variables, int maxNodes) -> ExpressionMatrix

Parameters: value: Expression, variables: Symbol[], maxNodes: int


Public signature
export function integerSymbol(string name) -> Symbol

Parameters: name: string


Public signature
export function integratePolynomial(Polynomial value) -> Polynomial

Parameters: value: Polynomial


Public signature
export record LinearSystemSolution(public string kind, public Rational[] values, public int rank, public string diagnostic)

Parameters: kind: string, values: Rational[], rank: int, diagnostic: string


Public signature
export function logExpression(Expression value) -> Expression

Parameters: value: Expression


Public signature
export function maximizePolynomialOnInterval(Polynomial value, Rational lower, Rational upper) -> PolynomialOptimum

Parameters: value: Polynomial, lower: Rational, upper: Rational


Public signature
export function minimizeConvexQuadratic(Polynomial value) -> PolynomialOptimum

Parameters: value: Polynomial


Public signature
export function minimizePolynomialOnInterval(Polynomial value, Rational lower, Rational upper) -> PolynomialOptimum

Parameters: value: Polynomial, lower: Rational, upper: Rational


Public signature
export function monomial(int[] exponents, Rational coefficient) -> Monomial

Parameters: exponents: int[], coefficient: Rational


Public signature
export record Monomial(public int[] exponents, public Rational coefficient)

Parameters: exponents: int[], coefficient: Rational


Public signature
export function multiplyExpression(Expression left, Expression right) -> Expression

Parameters: left: Expression, right: Expression


Public signature
export function multiplyMultivariatePolynomial(MultivariatePolynomial left, MultivariatePolynomial right) -> MultivariatePolynomial

Parameters: left: MultivariatePolynomial, right: MultivariatePolynomial


Public signature
export function multiplyPolynomial(Polynomial left, Polynomial right) -> Polynomial

Parameters: left: Polynomial, right: Polynomial


Public signature
export function multiplyRational(Rational left, Rational right) -> Rational

Parameters: left: Rational, right: Rational


Public signature
export function multiplyRationalFunction(RationalFunction left, RationalFunction right) -> RationalFunction

Parameters: left: RationalFunction, right: RationalFunction


Public signature
export function multivariatePolynomial(Symbol[] variables, Monomial[] terms) -> MultivariatePolynomial

Parameters: variables: Symbol[], terms: Monomial[]


Public signature
export record MultivariatePolynomial(public Symbol[] variables, public Monomial[] terms)

Parameters: variables: Symbol[], terms: Monomial[]


Public signature
export function negateRational(Rational value) -> Rational

Parameters: value: Rational


Public signature
export function nonZeroSymbol(string name) -> Symbol

Parameters: name: string


Public signature
export function numericalFunction(Expression expression, Symbol[] variables) -> NumericalFunction

Parameters: expression: Expression, variables: Symbol[]


Public signature
export record NumericalFunction(public Expression expression, public Symbol[] variables)

Parameters: expression: Expression, variables: Symbol[]


Public signature
export record PartialFractionDecomposition(public Polynomial polynomialPart, public Rational[] residues, public Rational[] poles, public RationalFunction remaining)

Parameters: polynomialPart: Polynomial, residues: Rational[], poles: Rational[], remaining: RationalFunction


Public signature
export function polynomial(Symbol variable, Rational[] coefficients) -> Polynomial

Parameters: variable: Symbol, coefficients: Rational[]


Public signature
export record Polynomial(public Symbol variable, public Rational[] coefficients)

Parameters: variable: Symbol, coefficients: Rational[]


Public signature
export function polynomialCoefficient(Polynomial value, int degree) -> Rational

Parameters: value: Polynomial, degree: int


Public signature
export function polynomialDegree(Polynomial value) -> int

Parameters: value: Polynomial


Public signature
export record PolynomialDivision(public Polynomial quotient, public Polynomial remainder)

Parameters: quotient: Polynomial, remainder: Polynomial


Public signature
export record PolynomialFactorization(public Rational scale, public Rational[] rationalRoots, public Polynomial remaining)

Parameters: scale: Rational, rationalRoots: Rational[], remaining: Polynomial


Public signature
export record PolynomialOptimum(public string kind, public Rational point, public Rational value, public bool proven, public string diagnostic)

Parameters: kind: string, point: Rational, value: Rational, proven: bool, diagnostic: string


Public signature
export function polynomialToExpression(Polynomial value) -> Expression

Parameters: value: Polynomial


Public signature
export function positiveSymbol(string name) -> Symbol

Parameters: name: string


Public signature
export function powerRational(Rational value, int exponent) -> Rational

Parameters: value: Rational, exponent: int


Public signature
export function rational(long numerator, long denominator) -> Rational

Parameters: numerator: long, denominator: long


Public signature
export record Rational(public long numerator, public long denominator)

Parameters: numerator: long, denominator: long


Public signature
export function rationalFunction(Polynomial numerator, Polynomial denominator) -> RationalFunction

Parameters: numerator: Polynomial, denominator: Polynomial


Public signature
export record RationalFunction(public Polynomial numerator, public Polynomial denominator, public Polynomial domainDenominator)

Parameters: numerator: Polynomial, denominator: Polynomial, domainDenominator: Polynomial


Public signature
export function rationalFunctionToExpression(RationalFunction value) -> Expression

Parameters: value: RationalFunction


Public signature
export function rationalToDouble(Rational value) -> double

Parameters: value: Rational


Public signature
export function realSymbol(string name) -> Symbol

Parameters: name: string


Public signature
export function sameRationalFunctionDomain(RationalFunction left, RationalFunction right) -> bool

Parameters: left: RationalFunction, right: RationalFunction


Public signature
export function sameSymbol(Symbol left, Symbol right) -> bool

Parameters: left: Symbol, right: Symbol


Public signature
export function scalePolynomial(Polynomial value, Rational scale) -> Polynomial

Parameters: value: Polynomial, scale: Rational


Public signature
export function simplifyElementary(Expression value, int maxNodes) -> Expression

Parameters: value: Expression, maxNodes: int


Public signature
export function sinExpression(Expression value) -> Expression

Parameters: value: Expression


Public signature
export function sinhExpression(Expression value) -> Expression

Parameters: value: Expression


Public signature
export function solveExpressionEquation(Expression left, Expression right, Symbol variable) -> EquationSolution

Parameters: left: Expression, right: Expression, variable: Symbol


Public signature
export function solveLinearSystem(Rational[] coefficients, int rows, int columns, Rational[] rightHandSide) -> LinearSystemSolution

Parameters: coefficients: Rational[], rows: int, columns: int, rightHandSide: Rational[]


Public signature
export function solvePolynomialEquation(Polynomial value) -> EquationSolution

Parameters: value: Polynomial


Public signature
export record StationaryPoint(public Rational point, public Rational value, public string kind)

Parameters: point: Rational, value: Rational, kind: string


Public signature
export function stationaryPoints(Polynomial value) -> StationaryPoint[]

Parameters: value: Polynomial


Public signature
export function subs(Expression value, Symbol variable, Expression replacement) -> Expression

Parameters: value: Expression, variable: Symbol, replacement: Expression


Public signature
export function substitute(Expression value, Symbol variable, Expression replacement) -> Expression

Parameters: value: Expression, variable: Symbol, replacement: Expression


Public signature
export function substituteMany(Expression value, Symbol[] variables, Expression[] replacements) -> Expression

Parameters: value: Expression, variables: Symbol[], replacements: Expression[]


Public signature
export function subtractExpression(Expression left, Expression right) -> Expression

Parameters: left: Expression, right: Expression


Public signature
export function subtractPolynomial(Polynomial left, Polynomial right) -> Polynomial

Parameters: left: Polynomial, right: Polynomial


Public signature
export function subtractRational(Rational left, Rational right) -> Rational

Parameters: left: Rational, right: Rational


Public signature
export function subtractRationalFunction(RationalFunction left, RationalFunction right) -> RationalFunction

Parameters: left: RationalFunction, right: RationalFunction


Public signature
export function sym(string name) -> Symbol

Parameters: name: string


Public signature
export function symbol(string name) -> Symbol

Parameters: name: string


Public signature
export record Symbol(public string name, public string domain, public bool positive, public bool nonZero)

Parameters: name: string, domain: string, positive: bool, nonZero: bool


Public signature
export function symbolExpression(Symbol value) -> Expression

Parameters: value: Symbol


Public signature
export function symbolicJacobian(Expression[] values, Symbol[] variables, int maxNodes) -> ExpressionMatrix

Parameters: values: Expression[], variables: Symbol[], maxNodes: int


Public signature
export function symbolWithAssumptions(string name, string domain, bool positive, bool nonZero) -> Symbol

Parameters: name: string, domain: string, positive: bool, nonZero: bool


Public signature
export function syms(string[] names) -> Symbol[]

Parameters: names: string[]


Public signature
export function tanExpression(Expression value) -> Expression

Parameters: value: Expression


Public signature
export function tanhExpression(Expression value) -> Expression

Parameters: value: Expression


Public signature
export function together(Expression value, Symbol variable) -> Expression

Parameters: value: Expression, variable: Symbol


Public signature
export function variablePolynomial(Symbol variable) -> Polynomial

Parameters: variable: Symbol


Documentation version

Language 1.0.0, compiler 1.0.0, runtime 1.0.0. This reference is generated from the official SS documentation so package and language details stay consistent with the release.