LearnTA
0.0.1
|
A forward regional elementary language. More...
#include <forward_regional_elementary_language.hh>
Public Member Functions | |
ForwardRegionalElementaryLanguage ()=default | |
Construct the empty language. | |
ForwardRegionalElementaryLanguage (ElementaryLanguage elementary, FractionalOrder fractionalOrder) | |
ForwardRegionalElementaryLanguage (const ForwardRegionalElementaryLanguage &language)=default | |
ForwardRegionalElementaryLanguage (ForwardRegionalElementaryLanguage &&language)=default | |
ForwardRegionalElementaryLanguage & | operator= (const ForwardRegionalElementaryLanguage &language)=default |
ForwardRegionalElementaryLanguage & | operator= (ForwardRegionalElementaryLanguage &&language)=default |
ForwardRegionalElementaryLanguage | successor (char action) const |
Construct the discrete successor. | |
ForwardRegionalElementaryLanguage | successor () const |
Construct the continuous successor. | |
void | successorAssign () |
Construct the continuous successor. | |
bool | hasEqualityN () const |
Return if there is \(\mathbb{T}_{i,N} = c\). More... | |
std::optional< ForwardRegionalElementaryLanguage > | immediatePrefix () const |
Return the immediate prefix if exists. | |
std::vector< ForwardRegionalElementaryLanguage > | prefixes () const |
Return the prefixes in the shorter to the longer order. | |
BackwardRegionalElementaryLanguage | suffix (const ForwardRegionalElementaryLanguage &prefix) const |
Return the suffix s such that this \subseteq p \cdot s. More... | |
ForwardRegionalElementaryLanguage | applyResets (const TATransition::Resets &resets) const |
ForwardRegionalElementaryLanguage | applyResets (const std::string &newWord, const TATransition::Resets &resets, const std::size_t targetClockSize) const |
Return the language after applying the given reset. More... | |
bool | operator== (const ForwardRegionalElementaryLanguage &another) const |
std::ostream & | print (std::ostream &os) const |
std::size_t | hash_value () const |
![]() | |
ElementaryLanguage (std::string word, TimedCondition timedCondition) | |
bool | isSimple () const |
Returns if this elementary language is simple. | |
std::size_t | wordSize () const |
Returns the number of the events in this elementary language. | |
ElementaryLanguage | operator+ (const ElementaryLanguage &another) const |
Concatenate two elementary languages. | |
void | enumerate (std::vector< ElementaryLanguage > &result) const |
Make a vector of simple elementary languages in this elementary language. | |
std::vector< ElementaryLanguage > | enumerate () const |
Make a vector of simple elementary languages in this elementary language. | |
TimedWord | sample () const |
Return a timed word in this elementary language. | |
void | removeEqualityUpperBoundAssign () |
void | removeUpperBoundAssign () |
ElementaryLanguage | removeUpperBound () const |
ElementaryLanguage | constrain (const TimedWord &prefix) const |
Constrain the valuation using a timed word. More... | |
bool | contains (const TimedWord &testedWord) const |
Check if the given the timed word is a member of this elementary languages. | |
const std::string & | getWord () const |
const TimedCondition & | getTimedCondition () const |
bool | operator== (const ElementaryLanguage &another) const |
bool | operator!= (const ElementaryLanguage &another) const |
Static Public Member Functions | |
static ForwardRegionalElementaryLanguage | fromTimedWord (const TimedWord &timedWord) |
Construct the fractional elementary language containing the given timed word. | |
![]() | |
static ElementaryLanguage | empty () |
Construct the empty elementary language containing only 0. | |
static ElementaryLanguage | convexHull (const std::list< ElementaryLanguage > &elementaryLanguages) |
Construct a convex-hull of the given timed conditions. More... | |
Protected Attributes | |
FractionalOrder | fractionalOrder |
![]() | |
std::string | word |
TimedCondition | timedCondition |
A forward regional elementary language.
A forward regional elementary language is an elementary language \((u, \Lambda)\) with an order over the fractional parts of \(\mathbb{T}_{0,N},\mathbb{T}_{1,N},\dots,\mathbb{T}_{N,N}\), where \(\mathbb{T}_{i,N} = \tau_{i} + \tau_{i+1} \dots \tau_{N}\).
|
inline |
Return the language after applying the given reset.
newWord | The word of the generated elementary language |
resets | The applies reset |
targetClockSize | The number of the clock variables in the target language |
|
inline |
Return if there is \(\mathbb{T}_{i,N} = c\).
|
inline |
Return the suffix s such that this \subseteq p \cdot s.