OASIS
Open Algebra Software
Loading...
Searching...
No Matches
Oasis::Summation< OperandT, IncrementingVarT, LowerBoundT, UpperBoundT > Class Template Referencefinal

#include <Oasis/Summation.hpp>

Inheritance diagram for Oasis::Summation< OperandT, IncrementingVarT, LowerBoundT, UpperBoundT >:
[legend]
Collaboration diagram for Oasis::Summation< OperandT, IncrementingVarT, LowerBoundT, UpperBoundT >:
[legend]

Additional Inherited Members

- Public Member Functions inherited from Oasis::BoundedBinaryExpression< Summation, OperandT, IncrementingVarT, LowerBoundT, UpperBoundT >
 BoundedBinaryExpression ()=default
 
 BoundedBinaryExpression (const BoundedBinaryExpression &other)
 
 BoundedBinaryExpression (const MostSigOpT &mostSigOp, const LeastSigOpT &leastSigOp)
 
auto Copy () const -> std::unique_ptr< Expression > final
 Copies this expression.
 
auto Copy (tf::Subflow &subflow) const -> std::unique_ptr< Expression > final
 
auto Differentiate (const Expression &differentiationVariable) const -> std::unique_ptr< Expression > override
 Tries to differentiate this function.
 
auto Equals (const Expression &other) const -> bool final
 Compares this expression to another expression for equality.
 
auto Generalize () const -> std::unique_ptr< Expression > final
 Converts this expression to a more general expression.
 
auto Generalize (tf::Subflow &subflow) const -> std::unique_ptr< Expression > final
 
auto Simplify () const -> std::unique_ptr< Expression > override
 Simplifies this expression.
 
auto Simplify (tf::Subflow &subflow) const -> std::unique_ptr< Expression > override
 
auto StructurallyEquivalent (const Expression &other) const -> bool final
 Checks whether this expression is structurally equivalent to another expression.
 
auto StructurallyEquivalent (const Expression &other, tf::Subflow &subflow) const -> bool final
 
auto Flatten (std::vector< std::unique_ptr< Expression > > &out) const -> void
 Flattens this expression.
 
auto GetMostSigOp () const -> const MostSigOpT &
 Gets the most significant operand of this expression.
 
auto GetLeastSigOp () const -> const LeastSigOpT &
 Gets the least significant operand of this expression.
 
auto HasMostSigOp () const -> bool
 Gets whether this expression has a most significant operand.
 
auto HasLeastSigOp () const -> bool
 Gets whether this expression has a least significant operand.
 
auto SetMostSigOp (const T &op) -> bool
 Sets the most significant operand of this expression.
 
auto SetLeastSigOp (const T &op) -> bool
 Sets the least significant operand of this expression.
 
auto Substitute (const Expression &var, const Expression &val) -> std::unique_ptr< Expression > override
 
auto SwapOperands () const -> DerivedSpecialized
 Swaps the operands of this expression.
 
auto operator= (const BoundedBinaryExpression &other) -> BoundedBinaryExpression &=default
 
void Serialize (SerializationVisitor &visitor) const override
 This function serializes the expression object.
 
- Public Member Functions inherited from Oasis::BoundedExpression< LowerBoundT, UpperBoundT >
 BoundedExpression ()=default
 
 BoundedExpression (const BoundedExpression &other)
 
 BoundedExpression (const LowerBoundT &lowerBound, const UpperBoundT &upperBound)
 
auto HasLowerBound () const -> bool
 
auto HasUpperBound () const -> bool
 
auto GetLowerBound () const -> const LowerBoundT &
 
auto GetUpperBound () const -> const UpperBoundT &
 
void SetLowerBound (const T &expr)
 
void SetUpperBound (const T &expr)
 
- Public Member Functions inherited from Oasis::Expression
auto FindZeros () const -> std::vector< std::unique_ptr< Expression > >
 The FindZeros function finds all rational real zeros, and up to 2 irrational/complex zeros of a polynomial.
 
virtual auto GetCategory () const -> uint32_t
 Gets the category of this expression.
 
virtual auto GetType () const -> ExpressionType
 Gets the type of this expression.
 
virtual auto Integrate (const Expression &) const -> std::unique_ptr< Expression >
 Attempts to integrate this expression using integration rules.
 
virtual auto IntegrateWithBounds (const Expression &, const Expression &, const Expression &) -> std::unique_ptr< Expression >
 Attempts to integrate this expression using integration rules.
 
template<IExpression T>
bool Is () const
 Gets whether this expression is of a specific type.
 
template<template< typename > typename T>
bool Is () const
 
template<template< typename, typename > typename T>
bool Is () const
 
virtual ~Expression ()=default
 

The documentation for this class was generated from the following file: