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 65 of file SundanceSymbolicTransformation.hpp.
Definition at line 53 of file SundanceSymbolicTransformation.cpp.
| virtual Sundance::SymbolicTransformation::~SymbolicTransformation | ( | ) | [inline, virtual] |
Definition at line 72 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 56 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 82 of file SundanceSymbolicTransformation.cpp.
| RCP< ScalarExpr > SymbolicTransformation::getScalar | ( | const Expr & | expr | ) | [static] |
extract the underlying ScalarExpr from an Expr.
Definition at line 100 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 75 of file SundanceSymbolicTransformation.hpp.
Referenced by Sundance::IdentifyPolynomialSum::doTransform().