-- File: Difference.cdl -- Created: Mon Jan 14 16:20:15 1991 -- Author: Arnaud BOUZY -- ---Copyright: Matra Datavision 1991 class Difference from Expr inherits BinaryExpression from Expr uses GeneralExpression from Expr, AsciiString from TCollection, Array1OfNamedUnknown from Expr, Array1OfReal from TColStd, NamedUnknown from Expr raises OutOfRange from Standard, NumericError from Standard, NotEvaluable from Expr is Create(exp1,exp2 : GeneralExpression) ---Purpose: Creates the difference - . returns mutable Difference; ShallowSimplified(me) ---Purpose: Returns a GeneralExpression after a simplification -- of the arguments of . returns any GeneralExpression raises NumericError; Copy(me) ---Purpose: Returns a copy of having the same unknowns and functions. returns mutable like me; IsIdentical(me; Other : GeneralExpression) ---Purpose: Tests if and define the same expression. -- This method does not include any simplification before -- testing. returns Boolean; IsLinear(me) returns Boolean; Derivative(me; X : NamedUnknown) ---Purpose: Returns the derivative on unknown of returns any GeneralExpression; NDerivative(me; X : NamedUnknown; N : Integer) ---Purpose: Returns the -th derivative on unknown of . -- Raises OutOfRange if <= 0 returns any GeneralExpression raises OutOfRange is redefined; Evaluate(me; vars : Array1OfNamedUnknown; vals : Array1OfReal) ---Purpose: Returns the value of (as a Real) by -- replacement of by . -- Raises NotEvaluable if contains NamedUnknown not -- in or NumericError if result cannot be computed. returns Real raises NotEvaluable,NumericError; String(me) ---Purpose: returns a string representing in a readable way. returns AsciiString; end Difference;