|
Storm 1.11.1.1
A Modern Probabilistic Model Checker
|
This class manages the labeling of the state space with a number of (atomic) labels. More...
#include <StateLabeling.h>


Public Member Functions | |
| StateLabeling (uint_fast64_t stateCount=0) | |
| Constructs an empty labeling for the given number of states. | |
| StateLabeling (StateLabeling const &other)=default | |
| StateLabeling (ItemLabeling const &other) | |
| StateLabeling (ItemLabeling const &&other) | |
| StateLabeling & | operator= (StateLabeling const &other)=default |
| virtual bool | isStateLabeling () const override |
| bool | operator== (StateLabeling const &other) const |
| Checks whether the two labelings are equal. | |
| StateLabeling | getSubLabeling (storm::storage::BitVector const &states) const |
| Retrieves the sub labeling that represents the same labeling as the current one for all selected states. | |
| std::set< std::string > | getLabelsOfState (storm::storage::sparse::state_type state) const |
| Retrieves the set of labels attached to the given state. | |
| void | addLabelToState (std::string const &label, storm::storage::sparse::state_type state) |
| Adds a label to a given state. | |
| void | removeLabelFromState (std::string const &label, storm::storage::sparse::state_type state) |
| Removes a label from a given state. | |
| bool | getStateHasLabel (std::string const &label, storm::storage::sparse::state_type state) const |
| Checks whether a given state is labeled with the given label. | |
| storm::storage::BitVector const & | getStates (std::string const &label) const |
| Returns the labeling of states associated with the given label. | |
| void | setStates (std::string const &label, storage::BitVector const &labeling) |
| Sets the labeling of states associated with the given label. | |
| void | setStates (std::string const &label, storage::BitVector &&labeling) |
| Sets the labeling of states associated with the given label. | |
Public Member Functions inherited from storm::models::sparse::ItemLabeling | |
| ItemLabeling (uint64_t itemCount=0) | |
| Constructs an empty labeling for the given number of items. | |
| ItemLabeling (ItemLabeling const &other)=default | |
| ItemLabeling & | operator= (ItemLabeling const &other)=default |
| virtual | ~ItemLabeling ()=default |
| virtual bool | isChoiceLabeling () const |
| StateLabeling const & | asStateLabeling () const |
| StateLabeling & | asStateLabeling () |
| ChoiceLabeling const & | asChoiceLabeling () const |
| ChoiceLabeling & | asChoiceLabeling () |
| bool | operator== (ItemLabeling const &other) const |
| Checks whether the two labelings are equal. | |
| void | addLabel (std::string const &label) |
| Adds a new label to the labelings. | |
| void | removeLabel (std::string const &label) |
| Removes a label from the labelings. | |
| std::set< std::string > | getLabels () const |
| Retrieves the set of labels contained in this labeling. | |
| void | addLabel (std::string const &label, storage::BitVector const &labeling) |
| Creates a new label and attaches it to the given items. | |
| void | addLabel (std::string const &label, storage::BitVector &&labeling) |
| Creates a new label and attaches it to the given items. | |
| std::string | addUniqueLabel (std::string const &prefix, storage::BitVector const &labeling) |
| Creates a new label with a unique name, derived from the prefix, and attaches it to the given items. | |
| std::string | addUniqueLabel (std::string const &prefix, storage::BitVector const &&labeling) |
| Creates a new label with a unique name, derived from the prefix, and attaches it to the given items. | |
| void | join (ItemLabeling const &other) |
| Adds all labels from the other labeling to this labeling. | |
| bool | containsLabel (std::string const &label) const |
| Checks whether a label is registered within this labeling. | |
| std::size_t | getNumberOfLabels () const |
| Returns the number of labels managed by this object. | |
| std::size_t | getNumberOfItems () const |
| Returns the number of items managed by this object. | |
| void | permuteItems (std::vector< uint64_t > const &inversePermutation) |
| virtual std::size_t | hash () const |
| void | printLabelingInformationToStream (std::ostream &out=std::cout) const |
| Prints information about the labeling to the specified stream. | |
| void | printCompleteLabelingInformationToStream (std::ostream &out=std::cout) const |
| Prints the complete labeling to the specified stream. | |
Friends | |
| std::ostream & | operator<< (std::ostream &out, StateLabeling const &labeling) |
Additional Inherited Members | |
Protected Member Functions inherited from storm::models::sparse::ItemLabeling | |
| ItemLabeling | getSubLabeling (storm::storage::BitVector const &items) const |
| Retrieves the sub labeling that represents the same labeling as the current one for all selected items. | |
| virtual std::set< std::string > | getLabelsOfItem (uint64_t item) const |
| Retrieves the set of labels attached to the given item. | |
| virtual bool | getItemHasLabel (std::string const &label, uint64_t item) const |
| Checks whether a given item is labeled with the given label. | |
| virtual storm::storage::BitVector const & | getItems (std::string const &label) const |
| Returns the labeling of items associated with the given label. | |
| virtual void | setItems (std::string const &label, storage::BitVector const &labeling) |
| Sets the labeling of items associated with the given label. | |
| virtual void | setItems (std::string const &label, storage::BitVector &&labeling) |
| Sets the labeling of items associated with the given label. | |
| virtual void | addLabelToItem (std::string const &label, uint64_t item) |
| Adds a label to a given item. | |
| virtual void | removeLabelFromItem (std::string const &label, uint64_t item) |
| Removes a label from a given item. | |
| std::string | generateUniqueLabel (const std::string &prefix) const |
| Generate a unique, previously unused label from the given prefix string. | |
Protected Attributes inherited from storm::models::sparse::ItemLabeling | |
| uint64_t | itemCount |
| std::unordered_map< std::string, uint64_t > | nameToLabelingIndexMap |
| std::vector< storm::storage::BitVector > | labelings |
This class manages the labeling of the state space with a number of (atomic) labels.
Definition at line 19 of file StateLabeling.h.
| storm::models::sparse::StateLabeling::StateLabeling | ( | uint_fast64_t | stateCount = 0 | ) |
Constructs an empty labeling for the given number of states.
| stateCount | The number of states for which this labeling can hold the labels. |
Definition at line 9 of file StateLabeling.cpp.
|
default |
| storm::models::sparse::StateLabeling::StateLabeling | ( | ItemLabeling const & | other | ) |
Definition at line 13 of file StateLabeling.cpp.
| storm::models::sparse::StateLabeling::StateLabeling | ( | ItemLabeling const && | other | ) |
Definition at line 17 of file StateLabeling.cpp.
| void storm::models::sparse::StateLabeling::addLabelToState | ( | std::string const & | label, |
| storm::storage::sparse::state_type | state | ||
| ) |
Adds a label to a given state.
| label | The name of the label to add. |
| state | The index of the state to label. |
Definition at line 51 of file StateLabeling.cpp.
| std::set< std::string > storm::models::sparse::StateLabeling::getLabelsOfState | ( | storm::storage::sparse::state_type | state | ) | const |
Retrieves the set of labels attached to the given state.
| state | The state for which to retrieve the labels. |
Definition at line 47 of file StateLabeling.cpp.
| bool storm::models::sparse::StateLabeling::getStateHasLabel | ( | std::string const & | label, |
| storm::storage::sparse::state_type | state | ||
| ) | const |
Checks whether a given state is labeled with the given label.
| label | The name of the label. |
| state | The index of the state to check. |
Definition at line 59 of file StateLabeling.cpp.
| storm::storage::BitVector const & storm::models::sparse::StateLabeling::getStates | ( | std::string const & | label | ) | const |
Returns the labeling of states associated with the given label.
| label | The name of the label. |
Definition at line 63 of file StateLabeling.cpp.
| StateLabeling storm::models::sparse::StateLabeling::getSubLabeling | ( | storm::storage::BitVector const & | states | ) | const |
Retrieves the sub labeling that represents the same labeling as the current one for all selected states.
| states | The selected set of states. |
Definition at line 43 of file StateLabeling.cpp.
|
overridevirtual |
Reimplemented from storm::models::sparse::ItemLabeling.
Definition at line 21 of file StateLabeling.cpp.
|
default |
| bool storm::models::sparse::StateLabeling::operator== | ( | StateLabeling const & | other | ) | const |
Checks whether the two labelings are equal.
| other | The labeling with which the current one is compared. |
Definition at line 25 of file StateLabeling.cpp.
| void storm::models::sparse::StateLabeling::removeLabelFromState | ( | std::string const & | label, |
| storm::storage::sparse::state_type | state | ||
| ) |
Removes a label from a given state.
| label | The name of the label to remove. |
| state | The index of the state. |
Definition at line 55 of file StateLabeling.cpp.
| void storm::models::sparse::StateLabeling::setStates | ( | std::string const & | label, |
| storage::BitVector && | labeling | ||
| ) |
Sets the labeling of states associated with the given label.
| label | The name of the label. |
| labeling | A bit vector that represents the set of states that will get this label. |
Definition at line 71 of file StateLabeling.cpp.
| void storm::models::sparse::StateLabeling::setStates | ( | std::string const & | label, |
| storage::BitVector const & | labeling | ||
| ) |
Sets the labeling of states associated with the given label.
| label | The name of the label. |
| labeling | A bit vector that represents the set of states that will get this label. |
Definition at line 67 of file StateLabeling.cpp.
|
friend |
Definition at line 75 of file StateLabeling.cpp.