![]() |
OASIS
Open Algebra Software
|
#include <Oasis/Negate.hpp>
Public Member Functions | |
| Negate ()=default | |
| Negate (const Negate &other) | |
| Negate (const OperandT &operand) | |
| auto | Simplify () const -> std::unique_ptr< Expression > override |
| Simplifies this expression. | |
| auto | Differentiate (const Expression &var) const -> std::unique_ptr< Expression > override |
| Tries to differentiate this function. | |
Public Member Functions inherited from Oasis::UnaryExpression< DerivedT, OperandT > | |
| UnaryExpression ()=default | |
| UnaryExpression (const UnaryExpression &other) | |
| UnaryExpression (const OperandT &operand) | |
| auto | Copy () const -> std::unique_ptr< Expression > final |
| Copies this expression. | |
| 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 | GetOperand () const -> const OperandT & |
| auto | HasOperand () const -> bool |
| auto | StructurallyEquivalent (const Expression &other) const -> bool final |
| Checks whether this expression is structurally equivalent to another expression. | |
| auto | SetOperand (const OperandT &operand) -> void |
| auto | Substitute (const Expression &var, const Expression &val) -> std::unique_ptr< Expression > override |
| auto | AcceptInternal (Visitor &visitor) const -> any override |
| This function serializes the expression object. | |
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> requires (DerivedFromUnaryExpression<T<Expression>> && !DerivedFromBinaryExpression<T<Expression>>) | |
| bool | Is () const |
| template<template< typename, typename > typename T> requires DerivedFromBinaryExpression<T<Expression, Expression>> | |
| bool | Is () const |
| template<IVisitor T> requires ExpectedWithString<typename T::RetT> | |
| auto | Accept (T &visitor) const -> std::expected< typename T::RetT, std::string_view > |
| template<IVisitor T> requires ExpectedWithString<typename T::RetT> | |
| auto | Accept (T &visitor) const -> typename T::RetT |
| virtual | ~Expression ()=default |
Additional Inherited Members | |
Protected Attributes inherited from Oasis::UnaryExpression< DerivedT, OperandT > | |
| std::unique_ptr< OperandT > | op |
|
default |
|
inline |
|
inlineexplicit |
|
inlineoverridevirtual |
Tries to differentiate this function.
Reimplemented from Oasis::Expression.
|
inlineoverridevirtual |