Joachim Klein
362c6da6c9
PM_ExportLabels: use int64_t for ODD indexing, adapt printf format string
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12181 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
8b3b240c8a
PM_ExportLabels: clean-up, remove unused argument from recursive calls
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12180 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
d564f13e9d
Makefile: add WARNINGS variable, activate -Wformat
We'd like to get format string warning messages. Will be fixed in subsequent commits.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12179 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
f7643a21ec
(symbolic engines) annotate P*_PrintToMainLog, error message, export_string methods for format string checks
GCC / CLang offer checking for consistency between format strings and the variable argument parameters that
are passed to printf-like functions. For these compilers, we add the necessary function attribute (use with -Wformat).
For MinGW, we have to be a bit more specific, as both a STDIO implementation by Microsoft as well
as a POSIX compatible implementation are supported. Generally, for C++, the POSIX library is used. We check the
MinGW compiler definition that selects the STDIO implementation and use the corresponding format specification
(gnu_printf vs ms_printf).
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12178 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
c6fa9d2d43
PM_ExportVector.cc: Fix export_string format string to get correct output for state rewards export (issue #16 )
Fixes https://github.com/prismmodelchecker/prism/issues/16 .
In SVN commit 12019 (1d8f9fc6b9 ),
we converted the ODD indizes from long to int64_t to get the same size in 32/64bit on Linux / OS X and Windows.
With this change, the format string used here became incorrect and, on 32bit Linux, the second "%.0f" printing takes
its value from part of the first argument instead of from the double returned by DD_GetNumMinterms.
Now, we use the PRId64 macro to get the correct format string parameter.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12177 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
b43a911857
PM_ExportVector.cc: small cleanup
Remove third argument for an export_string call that only uses 2 in the format string.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12176 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Dave Parker
c9ede762cd
Tweak in options text.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12168 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Dave Parker
8f2f9a3d28
Bug fix in prism.ModelGenerator2MTBDD: action names were not being read properly.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12167 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Dave Parker
940674370c
CHANGELOG.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12165 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
28b0376dfb
dd_export.cc: fix compilation issue on cygwin (PRIuPTR)
Move cinttypes include before the cudd includes to get proper PRIuPTR definition
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12164 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
14ad1d32af
fix compilation issue: cmath / isinf
On newer GCCs, isinf needs to be std::isinf
Switch from math.h include to cmath.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12163 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Dave Parker
a0ab7b461f
Date fix in CHANGELOG.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12162 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Dave Parker
2c39e577f8
Version number (4.4.beta).
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12160 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Dave Parker
2e3b5fdc5b
CHANGELOG.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12159 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Dave Parker
f86fc8ace6
Tweak -help output.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12158 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Dave Parker
42bec3f813
CHANGELOG.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12157 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
8bca4f7476
exact model checking: output approximate result as well
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12156 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
e2e001c999
param.BigRational: fix pow() to correctly handle negative exponents
Previously, using BigRational.pow(exponent) with negative exponent would result in exception
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12155 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
c2e86b5d2f
(interval iteration) total reward computation is not supported yet, throw error message
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12154 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Dave Parker
2efbd2c6a3
Tidy -help output.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12153 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Dave Parker
639c71636b
Document -ng switch.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12152 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Dave Parker
c19384d343
Document -timeout switch.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12151 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Dave Parker
dc82a6ef67
Fix explicit engine import of state rewards (need to add details to ModelInfo for it to work properly). Also catch attempts to export state rewards more cleanly in this case.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12150 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
80aec9a2fa
cleanup some import warnings, artifacts of the recent set of refactorings...
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12149 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
c6df34232c
DTMC total reward, explicit: fix output glitch
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12148 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
e138c51891
GUI, settings dialog: Make the comment area at the bottom vertically scrollable.
This allows display of longer comment text for a given setting.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12147 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
35858d3339
GUI, settings dialog: larger preferred width
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12146 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
126e21550a
explicit.ConstructModel: Convert DTMCSimple to DTMCSparse (as for MDPs) [with Steffen Maercker]
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12145 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
7ac2b39ca6
explicit.DTMCSparse: sparse storage variant for DTMCs [with Steffen Maercker]
adapted from MDPSparse
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12144 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
730785ea5f
explicit.MDPSparse: simplify code for getTransitionsIterator
Use AbstractMap.SimpleImmutableEntry and remove methods that have
default implementations since JDK8.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12143 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
65fd5cd795
(interval iteration, explicit) actually perform interval iteration using the explicit engine
Supported:
DTMC reachability probability and expected reward computations.
MDP Pmax, Pmin, Rmax, Rmin for reachability.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12142 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
d9bad734bd
(interval iteration, explicit) provide IterationMethod computations for interval iteration
Add some default computations for interval iteration to DTMC / MDP
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12141 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
76c601e2c9
(interval iteration, symbolic) actually perform interval iteration using the symbolic engines
Supported:
DTMC reachability probability and expected reward computations.
MDP Pmax, Pmin, Rmax for reachability.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12140 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
c1efd5233b
(interval iteration, symbolic) interval iteration variants for the computation methods of MTBDD, Hybrid and Sparse
Note: PH_NondetReachRewardInterval.cc has not been tested, the standard variant
is not exposed in PRISM currently.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12139 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
9ae9116ff4
(interval iteration) currently, multi objective model checker should not use interval iteration
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12138 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
c8335ca642
(interval iteration) prepare settings for interval iteration
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12137 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
9735731c59
PrismSettings: refactor option splitting (for -switch:options), provide access to raw option string
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12136 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
430713ca65
(interval iteration) PrismUtils: add helper methods for interval iteration
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12135 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
9d98dab1c3
(interval iteration) include/Measures.h: provide helper functions for interval iteration
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12134 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
c4b7b0db3e
explicit.IncomingChoiceRelation
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12133 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
e97b72f6e6
explicit.MDPModelChecker: check for zero-reward ECs for Rmin=?[ F ] computations, use quotient model if necessary
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12132 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
1ce1446eb5
explicit.MDPModelChecker: support backward Gauss-Seidel during policy iteration
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12131 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
452d89e411
(explicit iteration refactoring) Expose topological value iterations via the -topological switch
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12130 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
12e377de4a
(explicit iteration refactoring) DTMCModelChecker: use the new infrastructure for doing the numerical iteration computations.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12129 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
fae160729c
(explicit iteration refactoring) DTMCModelChecker: use the new infrastructure for doing the numerical iteration computations.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12128 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
9b94039049
(explicit iteration refactoring) new infrastructure to provide consolidated methods for doing the numerical iteration computations.
Support for topological iteration, periodic updates, backwards Gauss-Seidel.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12127 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
7486c6d7ed
For MDP model checking (explicit, symbolic), support -pmaxquotient option (computation in MEC quotient)
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12126 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
87675e828a
explicit.MDPModelChecker: split numeric computation part of computeReachProbs into separate method
Preparation for upcoming interval iteration commits, etc.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12125 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
2fe2f918b3
explicit.MDPSparse: add constructor from arbitrary MDP [with Steffen Maercker]
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12124 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago
Joachim Klein
265e827391
explicit.ZeroRewardECQuotient
Quotient of an MDP where the zero-reward maximal end components
are collapsed to single states.
git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12123 bbc10eb1-c90d-0410-af57-cb519fbb1720
9 years ago