|
Mungojerrie
1.0
Mungojerrie
|
Go to the documentation of this file.
49 using Priority =
short int;
71 Priority
getPriority(
void)
const {
return priority; }
89 std::map<State, std::string> nodeShapes;
90 std::map<State, std::string> nodeColors;
91 std::map<State, std::string> nodeLabels;
92 std::map<std::pair<State, State>, std::string> edgeColors;
97 Parity(Cudd mgr, std::string
const & filename,
98 Verbosity::Level verbosity = Verbosity::Silent,
bool noMdp =
false);
100 Parity(Cudd mgr, std::istream & is,
101 Verbosity::Level verbosity = Verbosity::Silent,
bool noMdp =
false);
104 BDD label, Priority priority);
106 void printDot(std::string graphname = std::string(
"parity"),
107 std::string filename = std::string(
"-"),
108 bool showtrees =
false)
const;
110 void printDot(std::string graphname,
112 std::string filename = std::string(
"-"),
113 bool showtrees =
false)
const;
115 void printHOA(std::string
const & name = std::string(
"parity"),
116 std::string filename = std::string(
"-"))
const;
118 std::vector<State>
getStates(
void)
const;
125 State destination,
bool silent =
false)
const;
163 bool isTerminal(
bool ignoreTransient =
true)
const;
175 StateMap & dstrategy,
176 StateMap & sstrategy)
const;
186 Priority CartonMaceirasRecur(StateSet
const & Q, EdgeSet forbiddenEdges);
187 bool zeroToTwo(
unsigned maxpriority);
188 bool directCompareStates(State p, State q,
189 std::set<StatePair>
const & simul)
const;
190 void addTrap(
unsigned priority);
191 void makeSafety(
bool wascomplete);
192 Parity buildEnvironment(
void)
const;
193 void makeLiveness(
void);
194 TransitionMap inverseTransitions(
void)
const;
195 Parity buildLeadSimulationGame(StateSet & spoilerStates,
198 StateSet & spoilerStates,
201 StateSet & spoilerStates,
Parity complement(void) const
Return complement of automaton.
Definition: Parity.cc:1819
Priority getPriority(State source, BDD label, State destination, bool silent=false) const
Gets the priority of a transition.
Definition: Parity.cc:126
std::map< State, unsigned > classifyStates(void) const
Classify states according to the priorities of their transitions.
Definition: Parity.cc:1331
friend std::ostream & operator<<(std::ostream &os, ParityTransition const &p)
Overloads stream insertion operator.
std::vector< EdgeSet > edgePartition(void) const
Returns the partition of the edges according to their priorities.
Definition: Parity.cc:179
std::vector< State > getStates(void) const
Returns the state set.
Definition: Parity.cc:121
void printHOA(std::string const &name=std::string("parity"), std::string filename=std::string("-")) const
Writes automaton in HOA format.
Definition: Parity.cc:316
Helper class to perform DPW determinization.
Definition: Parity.cc:388
Parity toLDPW(bool epsilonJumps=false) const
Converts DPW to LDPW with priorities 0 and 1.
Definition: Parity.cc:786
Helper class for simulation equivalence computation.
Definition: Parity.cc:878
void safetyLiveness(Parity &safety, Parity &liveness) const
Decomposes automaton into safety and liveness components.
Definition: Parity.cc:1614
Parity(Cudd mgr)
Constructor.
Definition: Parity.cc:54
Priority getMaxPriority(void) const
Gets maximum priority of automaton.
Definition: Parity.cc:149
std::ostream & operator<<(std::ostream &os, ParityTransition const &p)
Overloads stream insertion operator.
void solveOneStreettPairGame(StateSet const &spoilerStates, StateSet &dwinning, StateMap &dstrategy, StateMap &sstrategy) const
Solve one-Streett-pair game.
Definition: Parity.cc:2045
unsigned CartonMaceiras(void)
Reduces index of acceptance condition.
Definition: Parity.cc:749
Parity determinize(void) const
Returns determinized automaton.
Definition: Parity.cc:520
void printDot(std::string graphname=std::string("parity"), std::string filename=std::string("-"), bool showtrees=false) const
Converts automaton to dot format.
StateSet getTrapStates(void) const
Returns set of trap states.
Definition: Parity.cc:1692
bool fairSimulates(Parity const &other) const
Checks whether automaton fair-simulates other.
Definition: Parity.cc:2411
void makeComplete(void)
Adds rejecting trap if necessary to make automaton complete.
Definition: Parity.cc:1472
void stateMinimization(void)
Minimizes deterministic automaton based on state equivalence.
Definition: Parity.cc:1386
bool isTerminal(bool ignoreTransient=true) const
Checks whether the automaton is terminal.
Definition: Parity.cc:1652
Helper class to solve 3-priority parity games.
Definition: Parity.cc:1841
void unite(Parity const &second)
Takes the nondeterministic union with another automaton.
Definition: Parity.cc:1764
bool operator<(ParityTransition const &right) const
Comparison function used to store transitions in ordered containers.
Definition: Parity.cc:90
void directSimulationMinimization(void)
Minimizes automaton based on direct simulation.
Definition: Parity.cc:1132
Verbosity-related definitions.
Class of labeled transition systems.
Definition: LTS.hh:84
bool directSimulates(Parity const &other) const
Checks whether automaton direct-simulates other.
Definition: Parity.cc:2578
Class of parity-annotated transitions.
Definition: Parity.hh:54
Base class for the labeled edges of the transition graph.
Definition: LTS.hh:53
bool isTriviallyEmpty(void) const
Checks whether the automaton is trivially empty.
Definition: Parity.cc:1637
bool operator==(ParityTransition const &right) const
Checks whether two transitions have the same endpoints, label, and priority.
Definition: Parity.cc:83
void trim(void)
Trims automaton of states on no accepting path.
Definition: Parity.cc:1430
void addTransition(State source, State destination, BDD label, Priority priority)
Adds a transition to a state of the automaton.
Definition: Parity.cc:108
bool leadSimulates(void) const
Checks whether automaton lead-simulates itself.
Definition: Parity.cc:2258
Priority getMinPriority(void) const
Gets minimum priority of automaton.
Definition: Parity.cc:163
Labeled transition systems (base class for automata classes).
unsigned minimumIndex(void)
Reduces index of acceptance condition.
Definition: Parity.cc:759
Class of parity automata.
Definition: Parity.hh:85
State second
Model state.
Definition: Gym.hh:56
void directSimulationRelation(std::set< StatePair > &simul) const
Computes direct simulation relation.
Definition: Parity.cc:1079