diff --git a/src/fintamath/expressions/unary/NegExpression.cpp b/src/fintamath/expressions/unary/NegExpression.cpp index 218d0351f..17fc6bdb6 100644 --- a/src/fintamath/expressions/unary/NegExpression.cpp +++ b/src/fintamath/expressions/unary/NegExpression.cpp @@ -57,6 +57,11 @@ ArgumentPtr NegExpression::simplifyNegatable(const IFunction & /*func*/, const A rhsChildren.emplace_back(std::make_shared(-1)); res = makeExpr(Mul(), rhsChildren); } + else if (is
(rhsExpr->getFunction())) { + ArgumentPtr divLhs = makeExpr(Neg(), rhsChildren.front()); + ArgumentPtr divRhs = rhsChildren.back(); + res = makeExpr(Div(), divLhs, divRhs); + } else if (is(rhsExpr->getFunction())) { ArgumentPtr logLhs = rhsChildren.front(); ArgumentPtr logRhs = makeExpr(Div(), std::make_shared(1), rhsChildren.back());