Public Member Functions | |
| SymbolicTransformation () | |
| virtual | ~SymbolicTransformation () |
Static Public Member Functions | |
| static bool & | useOptimizedPolynomials () |
| static RCP< ScalarExpr > | chooseSign (int sign, const RCP< ScalarExpr > &expr) |
| static Expr | chooseSign (int sign, const Expr &expr) |
| static RCP< ScalarExpr > | getScalar (const Expr &expr) |
SumTransformation is a base class for any transformation which takes the two operands of a sum (left, right) and produces a new expression mathematically equivalent to the original sum. This will be used to effect simplification transformations on sum expressions.
Definition at line 54 of file SundanceSymbolicTransformation.hpp.
Definition at line 42 of file SundanceSymbolicTransformation.cpp.
| virtual Sundance::SymbolicTransformation::~SymbolicTransformation | ( | ) | [inline, virtual] |
Definition at line 61 of file SundanceSymbolicTransformation.hpp.
| RCP< ScalarExpr > SymbolicTransformation::chooseSign | ( | int | sign, |
| const RCP< ScalarExpr > & | expr | ||
| ) | [static] |
Returns -expr if sign == -1, otherwise returns expr
Definition at line 45 of file SundanceSymbolicTransformation.cpp.
References Sundance::Expr::handle(), Playa::Handle< PointerType >::ptr(), and Sundance::Expr::toString().
Referenced by Sundance::RemoveUnaryMinusFromSum::doTransform(), Sundance::RemoveZeroFromSum::doTransform(), Sundance::MoveConstantsToLeftOfSum::doTransform(), Sundance::RearrangeRightSumWithConstant::doTransform(), Sundance::RearrangeLeftSumWithConstant::doTransform(), Sundance::KillDiffOpOnConstant::doTransform(), and Sundance::DistributeSumOfDiffOps::doTransform().
| Expr SymbolicTransformation::chooseSign | ( | int | sign, |
| const Expr & | expr | ||
| ) | [static] |
Returns -expr if sign == -1, otherwise returns expr
Definition at line 71 of file SundanceSymbolicTransformation.cpp.
| RCP< ScalarExpr > SymbolicTransformation::getScalar | ( | const Expr & | expr | ) | [static] |
extract the underlying ScalarExpr from an Expr.
Definition at line 89 of file SundanceSymbolicTransformation.cpp.
References Playa::Handle< PointerType >::ptr().
Referenced by Sundance::ReorderSum::doTransform(), Sundance::RemoveOneFromProduct::doTransform(), Sundance::RemoveUnaryMinusFromSum::doTransform(), Sundance::RemoveMinusOneFromProduct::doTransform(), Sundance::MoveConstantsToLeftOfProduct::doTransform(), Sundance::MoveConstantsToLeftOfSum::doTransform(), Sundance::MoveUnaryMinusOutsideProduct::doTransform(), Sundance::RearrangeRightSumWithConstant::doTransform(), Sundance::AssociateHungryDiffOpWithOperand::doTransform(), Sundance::RearrangeLeftSumWithConstant::doTransform(), Sundance::KillDiffOpOnConstant::doTransform(), Sundance::BringConstantOutsideDiffOp::doTransform(), Sundance::DistributeSumOfDiffOps::doTransform(), Sundance::RearrangeRightProductWithConstant::doTransform(), and Sundance::RearrangeLeftProductWithConstant::doTransform().
| static bool& Sundance::SymbolicTransformation::useOptimizedPolynomials | ( | ) | [inline, static] |
Whether to build optimized polynomial objects
Definition at line 64 of file SundanceSymbolicTransformation.hpp.
Referenced by Sundance::IdentifyPolynomialSum::doTransform().