This parser shall parse transition systems having transitions of the form
<from> <choice> <to> <probability>
Where every node <from> can first decide nondeterministically on a <choice>.
Then, for every <choice> he has a given set of nodes <to> with assigned <probability>.
While the parsing itself works and the number of non-zero non-diagonal entries for each choice class works, we have not decided on the exact way to store such transition systems in matrices...
* 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.
- Constructors and Destructors now work correctly
- Removed check function from ProbabilisticNoBoundsOperator class (and
documented why it does not have one)
Note: I temporarily removed the -Wall parameter from gcc calls, as line
194 of GmmxxDtmcPrctlModelChecker.h throws a warning.
labeling and transitions parser.
Removed the parseDtmc function from IoUtility, as it became obsolete
with the DtmcParser class, fitted test cases accordingly.
Added two check() functions to DtmcPrctlModelChecker that are to be called by the "outer world" that check a given formula and print the result the standard output.
Fixed bug in GmmxxDtmcPrctlModelChecker that prevented BiCGStab using ILU preconditioning from working
Refactored mrmc.cpp to remove larger code blocks from main().
Added option to specify logging file. If no file is set and the verbose option is not set either, logging is basically disabled by setting the logging level very high. This is a workaround for the fact that at least one log appender needs to be set in the logging framework, which would not be the case if both logging facilities (file and console) are disabled.
Created BaseException that can act as a stringstream. You can do the following:
throw BaseException() << "some error " << variable << " foo";
Changed InvalidSettings to use BaseException, using this new syntax in Settings.