irafhy
Interval arithmetic based Reachability Analysis Framework for Hybrid Automaton
constraints.h
Go to the documentation of this file.
1 #ifndef REPRESENTATION_FORMAL_BASIC_CONSTRAINTS_H
2 #define REPRESENTATION_FORMAL_BASIC_CONSTRAINTS_H
3 
4 #include <capd/capdlib.h>
6 #include <vector>
7 
8 namespace irafhy
9 {
11  {
12  private:
16  std::vector<Constraint> inequalities_;
20  std::size_t dimension_ = 0;
21 
22  public:
26  Constraints() = default;
32  Constraints(const std::vector<Constraint>& inequalities, std::size_t dimension);
36  ~Constraints() = default;
41  [[nodiscard]] std::size_t size() const;
46  [[nodiscard]] std::size_t dimension() const;
54  [[nodiscard]] CONSTRAINTS_SOLUTION isSatisfy(const capd::interval& t,
55  const std::vector<capd::interval>& in,
56  const std::vector<capd::interval>& params) const;
62  Constraint operator[](std::size_t index);
68  const Constraint& operator[](std::size_t index) const;
75  friend std::ostream& operator<<(std::ostream& out, const Constraints& rhs);
76  };
77 } // namespace irafhy
78 #endif //REPRESENTATION_FORMAL_BASIC_CONSTRAINTS_H
~Constraints()=default
destructor
Definition: constraint.h:9
std::size_t dimension() const
get the dimension of the system
Definition: constraints.cpp:13
CONSTRAINTS_SOLUTION
flag which indicates the statue of the constraints system
Definition: enum.h:115
Constraint operator[](std::size_t index)
get the specified constraint
Definition: constraints.cpp:37
std::vector< Constraint > inequalities_
constraints of the system
Definition: constraints.h:16
std::size_t dimension_
dimension of the system
Definition: constraints.h:20
Definition: condition.cpp:3
Constraints()=default
constructor
CONSTRAINTS_SOLUTION isSatisfy(const capd::interval &t, const std::vector< capd::interval > &in, const std::vector< capd::interval > &params) const
check if the given values inside the target domain defined by the given constraints or not ...
Definition: constraints.cpp:15
friend std::ostream & operator<<(std::ostream &out, const Constraints &rhs)
out the given constraints to standard out stream
Definition: constraints.cpp:30
Definition: constraints.h:10
std::size_t size() const
get the size of the inequalities
Definition: constraints.cpp:11