dehnert
43f11ccc5f
Refactoring of modelchecker folder.
13 years ago
dehnert
102f38322d
Fixed several bugs in several modules (bit vector, parser, etc.). Topological value iteration now works for the consensus protocol and the two dice example.
13 years ago
gereon
1f3b172c83
Added a simple module that handles segfaults: print a message and provide a backtrace.
I grew tired of always starting gdb when it would've sufficed to know the function.
This routine will demangle C++ symbols, so you can see in which function we crashed.
13 years ago
dehnert
bdf173c315
GraphTransition objects can now be build from the SCC decomposition of a system.
13 years ago
gereon
a73ae7aed4
Added new option --debug.
13 years ago
gereon
f52d4eb7a8
Added new option --debug.
13 years ago
dehnert
af1aa4e1e5
Added native matrix-vector multiplication for our matrix format (as fast as gmm++). Fixed bug in bit vector. Fixed some issues in SCC decomposition. MDP model checkers now have the solving methods by default (native ones) and may override them with their own ones, if desired. Added some aux stuff, like vector helper methods.
13 years ago
dehnert
aee63dcf31
Made the SCC generation during decomposition optional.
13 years ago
dehnert
961909877a
Added iterative version of Tarjan's algorithm for performing SCC decomposition of state-based models.
13 years ago
dehnert
01779c9e83
Incomplete version of SCC decomposition of nondeterministic models.
13 years ago
dehnert
34b85b956e
Moved model checking of DTMCs to superclass. Now, each DTMC model checker only needs to implement matrix-vector multiplication and linear equation solving to be able to fully model check DTMCs. Added subset/disjoint functionality to bit vector. Changed tests for MDP and DTMC model checking a bit.
13 years ago
gereon
cf772688f0
added setter for options in Settings class.
13 years ago
dehnert
d38e7eeeb8
Implemented new utility functions and improved existing ones.
13 years ago
dehnert
bc4eb661ba
Fixed some memory leaks. Fixed bug in vector utility. Fixed bug in sparse matrix printing. Fixed bug in DTMC model checker (computing reachability rewards). Included full reward model checking for MDPs.
13 years ago
Lanchid
5b57728d7e
Merge branch master into PrctlParser
13 years ago
dehnert
d4cf812c5e
Added until-model checking for MDPs. Implemented Prob1A algorithm. Added asynchronous leader example.
13 years ago
dehnert
48dea0199e
Started implementing the model checker for MDPs. Added reduce functionality to vector utility. Moved min/max capability to NoBoundOperator.
13 years ago
dehnert
7d7edc5a05
Implemented Prob1E algorithm for nondeterministic models. Added comparison operator to bit vector.
13 years ago
dehnert
7ceb1ed9b2
Added logging for errors in labeling class. Corrected wrong labeling of MDP in examples. Extended test checking for first MDP example in main.
13 years ago
dehnert
8a9d766c73
Changed input format for non-deterministic models to PRISMs output format. Added min/max capability to probabilistic operator without bounds. Implemented Prob0E. Added a simple MDP model to example suite.
13 years ago
dehnert
8c248c05c5
Renamed NonDeterministic to Nondeterministic in all places. Fixed (hopefully) all occurrences of these names. Implemented Prob0A algorithm.
13 years ago
dehnert
19cbe13691
Prepared methods for performing reachability searches for non-deterministic models. Removed storage of backward transition relation: it is now (re-)created on demand in the model checkers.
13 years ago
dehnert
5d849018de
Some minor fixes to GraphAnalyzer and model checkers.
13 years ago
dehnert
7d95a45633
Fixed bug in AbstractModelChecker: it does now correctly inherit from a lot more interface classes. NOTE: checking a formula on a model checker that does not support it failed silently. This should NOT be the case. Re-enabled DEBUG option for cmake. NOTE: why was this disabled anyway? Introduced another layer AbstractDeterministicModel and AbstractNonDeterministicModel in model hierarchy to allow for easily distinguishing these classes. Made necessary adaptions in (hopefully) all classes. Move the graph analyzer to utility folder.
13 years ago
dehnert
c02271a36a
Fixed typo in CTMC class. Moved GraphAnalyzer to utility.
13 years ago
PBerger
7f956b0d35
Added Cotire to Storm to build PCH on all plattforms.
Edited the ConstTemplates.h as the new compilation order breaks because of some min/max macros.
13 years ago
Lanchid
7e87f35e95
First test case for prctl parser, and some necessary modifications for
the code
13 years ago
dehnert
726569d5f1
Fixed bug in parser that inserted 0-entries on the diagonal at the wrong places. Enabled link-time-optimizations for Release-Build when using clang. Fixed bug in base exception: what() returned a pointer to a char array belonging to a local variable, which got deallocated and thus invalidates the char array content.
13 years ago
PBerger
9a9cd968d9
Added a test to verify the RowSum Function in the Sparse Matrix.
Added an option to the settings for auto-fixing missing no-selfloop states. Kind of a super-option above fix-nodeadlocks, perhaps some Cleanup later on.
Modified tra Files to comply with formats...
13 years ago
dehnert
5f57cbb12a
Now able to build the BDD for the die example, including the reachability analysis! Booyah
13 years ago
dehnert
4d813999e3
Backup commit. On my way of buidling appropriate BDDs.
13 years ago
dehnert
c4af78b859
Added singleton utility class for CUDD-based things. Added some first methods to expression classes to generate ADDs, but this should be moved to a separate class implementing the expression visitor pattern.
13 years ago
gereon
f9923bac95
Fixed memory leaks involving Settings class
Settings (being a singleton) will now free it's instance itself upon program termination.
13 years ago
gereon
facec2b040
experimented with custom style checker, fixed a few minor issues
13 years ago
gereon
062960b94c
Some cleanups, removing memleaks
13 years ago
gereon
3a1b0f0433
adding sloppy mode for Settings, load settings in tests
sloppy mode will not check for requirements of arguments.
this is somewhat ugly, as it might not even check for correct type (I'm not sure about that, as we only have strings right now), but it's only the tests-binary anyway...
13 years ago
Lanchid
1b0449addb
Prctl parser... not yet working
13 years ago
gereon
989c0a51ea
a few more style issues
13 years ago
gereon
ea84f91cf3
made a run of cpplint and fixed some of the warnings...
13 years ago
gereon
a8517c7246
fixed some documentation and changed position of const in Settings class.
13 years ago
gereon
a695208d0e
implemented check for deadlocks in parser
Add new option --fix-deadlocks.
Check for deadlocks in nodes.
If option is not set, throw an error if a deadlock is found.
If option is set, give a warning and add self-loop.
Some minor cleanups in the parser.
13 years ago
PBerger
557461a77d
Renamed SquareSparseMatrix to SparseMatrix
13 years ago
PBerger
b89db58fbb
Made changes to all files that use the Sparse Matrix, as the diagonal entries are now included in the main storage. This refs #34
13 years ago
dehnert
58cf8118fe
Initial version of reward model checking for DTMCs. Added two convenience operators to PCTL (Eventually and Globally) and added missing reward formulas.
13 years ago
PBerger
f983317b54
Renaming MRMC to STORM, see #42
Markt und Straßen stehn verlassen,
still erleuchtet jedes Haus,
Sinnend' geh ich durch die Gassen,
alles sieht so festlich aus.
An den Fenstern haben Frauen
buntes Spielzeug fromm geschmückt,
Tausend Kindlein stehn und schauen,
sind so wunderstill beglückt.
Und ich wandre aus den Mauern
Bis hinaus ins freie Feld,
Hehres Glänzen, heil'ges Schauern!
Wie so weit und still die Welt!
Sterne hoch die Kreise schlingen,
Aus des Schnees Einsamkeit
Steigt's wie wunderbares Singen-
O du gnadenreiche Zeit!
Merry Christmas commit ;)
13 years ago
dehnert
b26a731383
Added reward parsing:
* Transition-based rewards are parsed using the existing (Deterministic)SparseTransitionsParser.
* State-based rewards are parsed using a new SparseStateRewardParser that parses lines consisting of a state and an associated reward.
* The Dtmc class now stores the two reward models.
* The DtmcParser class now parses up to one transition-based and one state-based reward file. They may, however, be omitted in which case the respective reward model is set to null.
13 years ago
Lanchid
48098b596d
Removed the parameter from const templates, as types can be stated
explicitly (see documentation)
13 years ago
Lanchid
afb0373358
Added DtmcParser class that parses a whole DTMC, making use of the
labeling and transitions parser.
Removed the parseDtmc function from IoUtility, as it became obsolete
with the DtmcParser class, fitted test cases accordingly.
13 years ago
Lanchid
daa5cf297a
Changed type of parameter filename to std::string const & (was const
char*)
13 years ago
Lanchid
64784d4e92
Renamed LabParser to AtomicPropositionLabelingParser
13 years ago