Joachim Klein
a8a3639ee7
NondetModelChecker: use more PrismNotSupportedExceptions instead of PrismExceptions
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11541 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Joachim Klein
1621fb31c7
mtbdd/PM_NondetInstReward.cc: comment typo
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11540 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Joachim Klein
7f48229dc1
Prism.modelCheckExact: Properly handle boolean results
Previously, a boolean result would lead to a ClassCastException:
prism prism-examples/dice/dice.pm -pf 'P>0.5[ F s=7 ]' -exact
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11538 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Joachim Klein
0632eb656a
PrismCL: Catch unhandled Exceptions instead of delegating to default Java handling
We are now catching unhandled Exceptions and errorAndExit. Previously,
we relied on the Java handling, which would print the stack trace and kill
the main thread.
However, it seems that in the presence of thread pools (e.g., with the JAS
library used by param/exact model checking), an unhandled exception would kill
the main thread but not terminate PRISM. This could be triggered
e.g. with
prism prism-examples/dice/dice.pm -pf 'P>0.5[ F s=7 ]' -exact
which generates an unhandled ClassCastException and previously would make
PRISM hang indefinitely.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11537 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Joachim Klein
eb017f950c
prism.SCCComputer: SanityJDD checks
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11536 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Joachim Klein
36f4e3f81f
prism.ECComputer: SanityJDD checks
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11535 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Joachim Klein
296f589631
JDD.isSingleton: fix broken computation
The computation did not actually check that
all the required variables actually occur...
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11531 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Dave Parker
4626d529a5
Code tidy
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11529 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Dave Parker
09c5b11a74
Bug fix in ConstructModel - do not call attachLabels in justReach mode.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11528 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Joachim Klein
0e57919d0e
explicit engine: Properly signal "not supported" for MDP total reward computations
Previously,
prism prism-examples/dice/two_dice.nm -pf 'Rmax=?[C]' -ex
would yield a NullPointerException.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11522 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Dave Parker
bd9f2f255d
Add slightly more efficient implementation of getChoiceAction for PRISM models.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11508 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Dave Parker
41f4b886ce
Minor code tidy
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11507 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Dave Parker
50e13bca29
Add new getChoiceAction method to ModelGenerator interface, which is basically an alias for getTransitionAction(i, 0).
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11506 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Dave Parker
f76e72827e
Correct error in documentation for ModelGenerator interface.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11505 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Dave Parker
9fb9d0ae26
Bug fix in StateListMTBDD.getIndexOfState.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11484 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Dave Parker
9eff92431e
Bug fix in computation (and therefore display) of progress percentage during statistical model checking.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11475 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Joachim Klein
e5b7f3297b
Symbolic engines: Clear ODD when clearing the model (fix memory leak)
Previously, the ODD data structure (for mapping between reachable states and their index)
on the C side was not deallocated when the model was cleared.
Closes https://sourceforge.net/p/prism-mc/bugs/9/
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11468 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Joachim Klein
123734eeab
Infrastructure for deallocating ODDs
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11467 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Dave Parker
fba209b7f3
New getIndexOfState method in prism.StateList (not tested yet).
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11462 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Dave Parker
8e38d2b7dd
Some tidying + documentation in prism.StateList classes.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11461 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Joachim Klein
4cca315ef2
Add JDD.FindMinPositive (minimal positive terminal constant of an MTBDD)
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11459 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Joachim Klein
abb2b4a403
ProbModel: add resetStateRewards (analogous to resetTransRewards)
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11458 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Joachim Klein
71975abdf7
JavaDoc: improve documentation of ProbModel.resetTrans and ProbModel.resetTransRewards
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11457 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Joachim Klein
95e3e532ba
SanityJDD: allow check methods to be called without having to globally enable sanity checks
For production code, only call the SanityJDD methods if SanityJDD.enabled is true.
While developing, it makes sense to call SanityJDD checks without having to globally
enable sanity checks.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11456 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Joachim Klein
888d62633d
DebugJDD: Move JNI methods to JDD class
The order of the content of the prism/include/DebugJDD.h header (auto-generated
by javah) sometimes changes nondeterministically. This seems to be due to the
combination of JNI methods and internal classes in DebugJDD.
We move the two DebugJDD JNI methods to JDD instead and remove the
prism/include/DebugJDD.h header, as well as the generation in the Makefile.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11455 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Joachim Klein
723c9123c8
mtbdd.PrismMTBDD: JavaDoc for reachability, prob precomputation methods, add sanity checks
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11452 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Joachim Klein
338d76503c
jdd.JDD: add sanity checks (SanityJDD framework)
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11451 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Joachim Klein
803ac5b64c
PrismSettings: add -ddsanity option
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11450 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Joachim Klein
f81f447ba3
Add SanityJDD: Framework for performing basic sanity checks on the symbolic MTBDD operations
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11449 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Joachim Klein
a7f0aff6e4
JDD: add JDD.IsZeroOneMTBDD() method for checking if an MTBDD is a 0/1-MTBDD
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11448 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Joachim Klein
f518d66c6c
Sampler: fix logic for rejecting co-safety path formulas in reward samplers (fixes previous commit)
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11447 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Joachim Klein
a325400ba2
Sampler.createSampler: For reward properties, catch the new case of a co-safety path formula properly
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11446 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Joachim Klein
c70922c329
GUISimulator, path formulae view: For P[ phi ] properties, display only the inner path formula phi
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11445 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Joachim Klein
4f165146b1
GUISimulator: reactivate the display of path formulae in the corresponding simulator tab [reported by Steffen Märcker]
Currently, properties that contain an undefined property constant are not displayed.
In the future it might be nice for the user to be asked to specify these constants,
preferably in an unobstrusive way, so that these path formulae can be displayed and
evaluated as well.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11444 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Dave Parker
29b9286be3
Add some missing methods to DTMCFromMDPAndMDStrategy.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11414 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Dave Parker
48147aa4ad
Improvements to the SamplerDouble class: revised approach to variance estimation for better numerical stability (contributed by Marcin Copik), plus some further tidying/documentation.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11413 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Dave Parker
95c3f7db43
Add a missing method in DTMCFromMDPAndMDStrategy.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11411 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Dave Parker
d309f8c748
Comment fix.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11406 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Dave Parker
2398010959
Small fix in OpRelOpBound toString method.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11403 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Joachim Klein
fd6aa0814d
NondetModelChecker.checkRewardCoSafeLTL: We have to intersect the goal states (AcceptanceReach) with model.getReach()
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11398 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Joachim Klein
c9f30162c7
JDD: fix typos in comment for JDD.isSingleton
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11397 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Joachim Klein
7ee83e31ba
DebugJDD: update (generated) DebugJDD.h with the information about light-weight nodes
This was missing in previous commits.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11396 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Joachim Klein
6ca3e63d85
DebugJDD: add test cases for getThen(), getElse() and getValue() calls
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11395 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Joachim Klein
eda77943df
DebugJDD: add SuppressWarning("unused") to some of the test cases
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11394 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Joachim Klein
238785213a
DebugJDD: Improved handling of JDDNode.getThen(), JDDNode.getElse(); allow copy() on such nodes
When debugging is enabled, wrap the return of getThen() and getElse()
in "light-weight" DebugJDDNodes.
Allow copy() on such light-weight nodes.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11393 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Joachim Klein
ef2d15c256
JDDNode.getThen() / getElse(): reintroduce sanity check against asking constant nodes for then/else
The check disappeared during refactoring to the ptrToNode functionality
+ minor whitespace
+ copyright
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11392 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Joachim Klein
71f2bb389f
DebugJDD: fix variable name typo
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11390 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Joachim Klein
3729d85d37
DebugJDD: Improve source formatting
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11389 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Joachim Klein
146dbe8ade
DebugJDD: main() to run small test cases
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11384 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago
Joachim Klein
23e61ea93a
DebugJDD: Improve tracing for "Copied from" case
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@11381 bbc10eb1-c90d-0410-af57-cb519fbb1720
10 years ago