You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

157 lines
8.2 KiB

8 years ago
8 years ago
8 years ago
8 years ago
  1. Changelog
  2. ==============
  3. This changelog lists only the most important changes. Smaller (bug)fixes as well as non-mature features are not part of the changelog.
  4. The releases of major and minor versions contain an overview of changes since the last major/minor update.
  5. Version 1.3.x
  6. -------------
  7. ### Version 1.3.1 (under development)
  8. - Added support for multi-dimensional quantile queries.
  9. - Allow to quickly check a benchmark from the [Quantitative Verification Benchmark Set](http://qcomp.org/benchmarks/) using the `--qvbs` option.
  10. - Added script `resources/examples/download_qvbs.sh` to download the QVBS.
  11. - If an option is unknown, Storm now suggests similar option names.
  12. - Flagged several options as 'advanced' to clean up the `--help`-message. Use `--help all` to display a complete list of options.
  13. - Support for the new `round` operator in the PRISM language.
  14. - Support for parsing of exact time bounds for properties, e.g., `P=? [F=27 "goal"]`.
  15. - Export of optimal schedulers when checking MDPs with the sparse engine (experimental). Use `--exportscheduler <filename>`.
  16. - JANI: Allow bounded types for constants.
  17. - JANI: Support for non-trivial reward accumulations.
  18. - JANI: Fixed support for reward expressions over non-transient variables.
  19. - DRN: Added support for exact parsing and action-based rewards.
  20. - DRN: Support for placeholder variables which allows to parse recurring rational functions only once.
  21. - Fixed sparse bisimulation of MDPs (which failed if all non-absorbing states in the quotient are initial).
  22. - Support for export of MTBDDs from Storm.
  23. - Support for k-shortest path counterexamples (arguments `-cex --cextype shortestpath`)
  24. - New settings module `transformation` for Markov chain transformations. Use `--help transformation` to get a list of available transformations.
  25. - Support for eliminating chains of Non-Markovian states in MAs via `--eliminate-chains`.
  26. - Export to dot format allows for maximal line width in states (argument `--dot-maxwidth <width>`)
  27. - `storm-conv` can now apply transformations on a prism file.
  28. - `storm-dft`: Support partial-order for state space generation.
  29. - `storm-dft`: Compute lower and upper bounds for number of BE failures via SMT.
  30. - `storm-dft`: Support for constant failed BEs. Use flag `--uniquefailedbe` to create a unique constant failed BE.
  31. - `storm-dft`: Support for probabilistic BEs via PDEPs.
  32. - Fixed linking with Mathsat on macOS.
  33. - Fixed compilation for macOS Mojave.
  34. - Several bug fixes.
  35. ## Version 1.3.0 (2018/12)
  36. - Slightly improved scheduler extraction
  37. - Environments are now part of the c++ API
  38. - Heavily extended JANI support, in particular:
  39. * arrays, functions, state-exit-rewards (all engines)
  40. * indexed assignments, complex reward expressions (sparse engine)
  41. * several jani-related bug fixes
  42. - New binary `storm-conv` that handles conversions between model files
  43. - New binary `storm-pomdp` that handles the translation of POMDPs to pMCs.
  44. - Maximal progress assumption is now applied while building Markov Automata (sparse engine).
  45. - Improved Unif+ implementation for Markov Automata, significantly reduced memory consumption.
  46. - Added support for expected time properties for discrete time models
  47. - Bug fix in the parser for DRN (MDPs and MAs might have been affected).
  48. - `storm-gspn`: Improved .pnpro parser
  49. - `storm-gspn`: Added support for single/infinite/k-server semantics for GSPNs given in the .pnpro format
  50. - `storm-gspn`: Added option to set a global capacity for all places
  51. - `storm-gspn`: Added option to include a set of standard properties when converting GSPNs to jani
  52. - `storm-pars`: Added possibility to compute the extremal value within a given region using parameter lifting
  53. - `storm-dft`: DFT translation to GSPN supports Don't Care propagation
  54. - `storm-dft`: Support DFT analysis via transformation from DFT to GSPN to JANI
  55. - `storm-dft`: Added SMT encoding for DFTs
  56. - `storm-dft`: Improved Galileo and JSON parser
  57. - Several bug fixes
  58. - Storm uses the `master14` branch of carl from now on
  59. ### Comparison with Version 1.2.0 (details see below)
  60. - Heavily extended JANI-support
  61. - New binary `storm-conv` that handles conversion between model files
  62. - New binary `storm-pomdp` that handles the translation of POMDPs to pMCs.
  63. - `storm-gspn` improved
  64. - Sound value iteration
  65. Version 1.2.x
  66. -------------
  67. ### Version 1.2.3 (2018/07)
  68. - Fix in version parsing
  69. ### Version 1.2.2 (2018/07)
  70. - Sound value iteration (SVI) for DTMCs and MDPs
  71. - Topological solver for linear equation systems and MinMax equation systems (enabled by default)
  72. - Added support for expected total rewards in the sparse engine
  73. - By default, iteration-based solvers are no longer aborted after a given number of steps.
  74. - Improved export for jani models
  75. - A fix in parsing jani properties
  76. - Several extensions to high-level counterexamples
  77. - `storm-parsers` extracted to reduce linking time
  78. - `storm-counterexamples` extracted to reduce linking time
  79. - `storm-dft`: improvements in Galileo parser
  80. - `storm-dft`: test cases for DFT analysis
  81. - Improved Storm installation
  82. - Several bug fixes
  83. ### Version 1.2.1 (2018/02)
  84. - Multi-dimensional reward bounded reachability properties for DTMCs.
  85. - `storm-dft`: transformation of DFTs to GSPNs
  86. - Several bug fixes
  87. ### Version 1.2.0 (2017/12)
  88. - C++ api changes: Building model takes `BuilderOptions` instead of extended list of Booleans, does not depend on settings anymore.
  89. - `storm-cli-utilities` now contains cli related stuff, instead of `storm-lib`
  90. - Symbolic (MT/BDD) bisimulation
  91. - Fixed issue related to variable names that can not be used in Exprtk.
  92. - DRN parser improved
  93. - LP-based MDP model checking
  94. - Sound (interval) value iteration
  95. - Support for Multi-objective multi-dimensional reward bounded reachability properties for MDPs.
  96. - RationalSearch method to solve equation systems exactly
  97. - WalkerChae method for solving linear equation systems with guaranteed convergence
  98. - Performance improvements for sparse model building
  99. - Performance improvements for conditional properties on MDPs
  100. - Automatically convert MA without probabilistic states into CTMC
  101. - Fixed implemention of Fox and Glynn' algorithm
  102. - `storm-pars`: support for welldefinedness constraints in mdps.
  103. - `storm-dft`: split DFT settings into IO settings and fault tree settings
  104. - `storm-dft`: removed obsolete explicit model builder for DFTs
  105. - Features for developers:
  106. * Solvers can now expose requirements
  107. * unbounded reachability and reachability rewards now correctly respect solver requirements
  108. * Environment variables (such as the solver precisions) can now be handled more flexible
  109. * changes to Matrix-Vector operation interfaces, in particular fixed some issues with the use Intel TBB
  110. Version 1.1.x
  111. -------------
  112. ### Version 1.1.0 (2017/8)
  113. - Support for long-run average rewards on MDPs and Markov automata using a value-iteration based approach.
  114. - Storm can now check MDPs and Markov Automata (i.e. MinMax equation systems) via Linear Programming.
  115. - Parametric model checking is now handled in a separated library/executable called `storm-pars`.
  116. - Wellformedness constraints on PMCs:
  117. * include constraints from rewards
  118. * are in smtlib2
  119. * fixed
  120. * computation of only constraints without doing model checking is now supported
  121. - Fix for nested formulae
  122. - JANI: Explicit engine supports custom model compositions.
  123. - Support for parsing/building models given in the explicit input format of IMCA.
  124. - Storm now overwrites files if asked to write files to a specific location.
  125. - Changes in build process to accommodate for changes in carl. Also, more robust against issues with carl.
  126. - `USE_POPCNT` removed in favor of `FORCE_POPCNT`. The popcnt instruction is used if available due to `march=native`, unless portable is set.
  127. Then, using `FORCE_POPCNT` enables the use of the SSE 4.2 instruction
  128. Version 1.0.x
  129. -------------
  130. ### Version 1.0.1 (2017/4)
  131. - Multi-objective model checking support now fully included
  132. - Several improvements in parameter lifting
  133. - Several improvements in JANI parsing
  134. - Properties can contain model variables
  135. - Support for rational numbers/functions in decision diagrams via sylvan
  136. - Elimination-based solvers (exact solution) for models stored as decision diagrams
  137. - Export of version and configuration to cmake
  138. - Improved building process
  139. ### Version 1.0.0 (2017/3)
  140. Start of this changelog