/** * Search for one of the <code>Derivative[..]</code> rules from the * <code>System.mep</code> file read at startup time. * * Examples for rules from the <code>System.mep</code> file:<br/> * <code>Derivative[Cos]=(-1)*Sin[#]&</code><br/> * <code>Derivative[Sin]=Cos[#]&</code><br/> * <code>Derivative[Tan]=Cos[#]^(-2)&</code><br/> * * @param x * @param arg1 * @param header * @return */ private IExpr getDerivativeArg1(IExpr x, final IExpr arg1, final IExpr header) { IExpr der = F.evalNull(F.Derivative, header); if (der != null) { // we've found a derivative for a function of the form f[x_] IExpr derivative = F.eval(F.$(der, arg1)); return F.Times(derivative, F.D(arg1, x)); } return null; }