public class FreeQ extends AbstractCoreFunctionEvaluator
| Constructor and Description |
|---|
FreeQ() |
| Modifier and Type | Method and Description |
|---|---|
IExpr |
evaluate(IAST ast,
EvalEngine engine)
Symbolic evaluation of a function.
|
boolean |
isFreeOrderless(IAST orderless1,
IAST orderless2)
Checks if
orderless1.size() is greaterequal orderless2.size() and returns false, if
every argument in orderless2 equals an argument in orderless1. |
numericEval, setUppublic IExpr evaluate(IAST ast, EvalEngine engine)
AbstractCoreFunctionEvaluatorast.get(0) (or alternatively ast.head()) contains the
head (i.e. the function symbol) of this abstract syntax tree (AST). ast.arg1() to ast.get(n) the ast contains the first to n-th argument of the
function (alternatively you get the first to fifth argument with the methods arg1(), arg2(),...
arg5()).Validate class to check the number or types of arguments in the evaluate
method.null value without throwing an exception!evaluate in interface IFunctionEvaluatorevaluate in class AbstractCoreFunctionEvaluatorast - the abstract syntax tree (AST) which should be evaluatedengine - the users current evaluation enginenull, if evaluation isn't possibleValidate,
IExpr.head(),
IAST.arg1(),
IAST.arg2(),
IAST.arg3()public boolean isFreeOrderless(IAST orderless1, IAST orderless2)
orderless1.size() is greaterequal orderless2.size() and returns false, if
every argument in orderless2 equals an argument in orderless1. I.e. orderless1
doesn't contain every argument of orderless2.orderless1 - orderless2 - false if orderless1.size() is greaterequal orderless2.size() and if every
argument in orderless2 equals an argument in orderless1