UnCoVer (Using Coverability for Verification)
|
The GTS class is the data structure for a graph transformation system. More...
#include <GTS.h>
Public Types | |
typedef unordered_map< IDType, Rule_sp > | RuleMap |
An alias for the map storing standard rules. | |
typedef unordered_map< IDType, UQRule_sp > | UQRuleMap |
An alias for the map storing universally quantified rules. | |
Public Member Functions | |
GTS (string name="", RuleMap const &rules=(RuleMap()), UQRuleMap const &uqRules=(UQRuleMap()), vector< Hypergraph_sp > const &initialGraphs=vector< Hypergraph_sp >()) | |
Generates a new GTS with the given name, standard rule set, quantified rule set and initial graphs. More... | |
~GTS () | |
Destroys this GTS instance. | |
vector< Hypergraph_sp > const & | getInitialGraphs () const |
Returns a reference to the collection of initial graphs of this GTS. More... | |
bool | addInitialGraph (Hypergraph_sp graph) |
Adds the given graph to the collection of initial graphs of this GTS. More... | |
size_t | getInitialCount () const |
Returns the number of initial graphs of this GTS. More... | |
string | getName () const |
Returns the name of this GTS. More... | |
RuleMap const & | getStdRules () const |
Returns a reference to the standard rules of this GTS. More... | |
bool | addStdRule (Rule_sp rule) |
Adds the given Rule to the standard rules of this GTS. More... | |
size_t | getStdRuleCount () const |
Returns the number of standard rules stored in this GTS. More... | |
UQRuleMap const & | getUQRules () const |
Returns a reference to the universally quantified rules of this GTS. More... | |
bool | addUQRule (UQRule_sp rule) |
Adds the given UQRule to the quantified rules of this GTS. More... | |
size_t | getUQRuleCount () const |
Returns the number of universally quantified rules stored in this GTS. More... | |
virtual void | streamTo (std::ostream &ost) const |
Prints a string representation of this GTS to the given steam. More... | |
Protected Attributes | |
string | name |
Stores the name of the GTS. | |
vector< Hypergraph_sp > | initialGraphs |
Stores all initial graphs of this GTS. | |
RuleMap | stdRules |
Stores all standard rules of this GTS, indexed by ID. | |
UQRuleMap | uqRules |
Stores all quantified rules of this GTS, indexed by ID. | |
The GTS class is the data structure for a graph transformation system.
It stores initial graphs, standard rules and universally quantified rules.
GTS | ( | string | name = "" , |
RuleMap const & | rules = (RuleMap()) , |
||
UQRuleMap const & | uqRules = (UQRuleMap()) , |
||
vector< Hypergraph_sp > const & | initialGraphs = vector<Hypergraph_sp>() |
||
) |
Generates a new GTS with the given name, standard rule set, quantified rule set and initial graphs.
bool addInitialGraph | ( | Hypergraph_sp | graph | ) |
Adds the given graph to the collection of initial graphs of this GTS.
graph | the graph to be added to the initial graphs |
bool addStdRule | ( | Rule_sp | rule | ) |
bool addUQRule | ( | UQRule_sp | rule | ) |
size_t getInitialCount | ( | ) | const |
vector< shared_ptr< Hypergraph > > const & getInitialGraphs | ( | ) | const |
size_t getStdRuleCount | ( | ) | const |
size_t getUQRuleCount | ( | ) | const |
|
virtual |
Prints a string representation of this GTS to the given steam.
ost | the stream on which the string will be printed |
Implements Streamable.