LearnTA  0.0.1
Public Member Functions | Static Public Member Functions | Friends | List of all members
learnta::RenamingRelation Class Reference
Inheritance diagram for learnta::RenamingRelation:
Inheritance graph
[legend]
Collaboration diagram for learnta::RenamingRelation:
Collaboration graph
[legend]

Public Member Functions

std::vector< std::pair< ClockVariables, std::variant< double, ClockVariables > > > toReset (const TimedCondition &sourceCondition, const TimedCondition &targetCondition) const
 
template<class T >
std::vector< T > apply (const std::vector< T > &value) const
 
auto rightVariables () const
 The clock variables on the right hand side of the renaming relation. More...
 
void eraseLeft (std::size_t left)
 Erase pairs such that (left, right) for some right.
 
bool onlyTrivial (const TimedCondition &targetCondition) const
 Check if the renaming relation contains only the trivial equations from the timed conditions.
 
bool containsAllTrivial (const TimedCondition &sourceCondition, const TimedCondition &targetCondition) const
 Check if the renaming relation contains all the trivial equations from the timed conditions.
 
bool full (const TimedCondition &condition) const
 Check if the renaming relation is full, i.e., all the right variables are restricted.
 
bool hasImpreciseClocks (const TimedCondition &target) const
 Check if the application of this renaming causes implicit clocks.
 
std::vector< ClockVariables > impreciseClocks (const TimedCondition &target) const
 Return the imprecise clocks by this renaming.
 
void addImplicitConstraints (JuxtaposedZone juxtaposedCondition)
 Add renaming equations from target and source conditions.
 
void addImplicitConstraints (const TimedCondition &source, const TimedCondition &target)
 Add renaming equations from target and source conditions.
 
bool isRightUnique () const
 Check if the renaming relation is right unique, i.e, (i, k) and (j, k) in this implies i == j.
 

Static Public Member Functions

static std::vector< double > toValuation (TimedCondition condition)
 Construct a valuation from a timed condition. More...
 

Friends

std::ostream & operator<< (std::ostream &os, const RenamingRelation &relation)
 

Member Function Documentation

◆ rightVariables()

auto learnta::RenamingRelation::rightVariables ( ) const
inline

The clock variables on the right hand side of the renaming relation.

Postcondition
The result is ascending and with no duplication.

◆ toValuation()

static std::vector<double> learnta::RenamingRelation::toValuation ( TimedCondition  condition)
inlinestatic

Construct a valuation from a timed condition.

Precondition
condition is simple

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