irafhy
Interval arithmetic based Reachability Analysis Framework for Hybrid Automaton
formula.h
Go to the documentation of this file.
1 #ifndef REPRESENTATION_FORMAL_BASIC_FORMULA_H
2 #define REPRESENTATION_FORMAL_BASIC_FORMULA_H
3 
5 
6 namespace irafhy
7 {
8  class Formula
9  {
10  private:
18  mutable bool isReversed_ = false;
19 
20  public:
24  Formula() = default;
29  explicit Formula(const Item& expression);
34  std::function<
35  capd::autodiff::Node(capd::autodiff::Node, capd::autodiff::Node[], int, capd::autodiff::Node[], int)>
36  arithmetic() const;
44  capd::interval value(const capd::interval& t,
45  const std::vector<capd::interval>& in,
46  const std::vector<capd::interval>& params) const;
51  bool isReversed() const;
55  void reverse() const;
62  friend std::ostream& operator<<(std::ostream& out, const Formula& rhs);
63  };
64 } // namespace irafhy
65 #endif //REPRESENTATION_FORMAL_BASIC_FORMULA_H
Definition: item.h:20
Formula()=default
constructor
Definition: formula.h:8
void reverse() const
reverse the direction of the vector
Definition: formula.cpp:36
Item expression_
expression of the formula
Definition: formula.h:14
bool isReversed_
indicate whether the direction of the vector reversed or not
Definition: formula.h:18
bool isReversed() const
check if the vector was reversed or not
Definition: formula.cpp:34
Definition: condition.cpp:3
capd::interval value(const capd::interval &t, const std::vector< capd::interval > &in, const std::vector< capd::interval > &params) const
get the value of the current formula
Definition: formula.cpp:24
std::function< capd::autodiff::Node(capd::autodiff::Node, capd::autodiff::Node[], int, capd::autodiff::Node[], int)> arithmetic() const
get the arithmetic function of the current formula
Definition: formula.cpp:8
friend std::ostream & operator<<(std::ostream &out, const Formula &rhs)
out the given formula to standard out stream
Definition: formula.cpp:38