-
Notifications
You must be signed in to change notification settings - Fork 73
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Explicit engine model export refactoring and enhancements #246
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Member
davexparker
commented
Jul 9, 2024
- Centralise code for (explicit engine) model export
- for PRISM explicit, Dot and Matlab formats
- move from methods in Model and subclasses to Exporter classes
- New ModelExportOptions class
- Move some export code from Prism to StateModelChecker
- Refactor export code in Prism/PrismCL (tidy up, new options classes)
- Remove support for export options MRMC/unordered
- Add preliminary support for (explicit engine) model export to DRN format
Centralise code into a PrismExplicitExporter class, which handles all model types and take care of options.
Centralise code into a DotExporter class, which handles all model types and take care of options/decorators. Note that transitions are now sorted in the Dot files. Update regression tests to (just) test explicit implementation.
New method exportBuiltModelTransitions based on ModelExportOptions. ModelExportOptions is expanded, notably including export format. Calling code in PrismCL is refactored accordingly. At the same time, we remove access to some little used export functionality: MRMC format, "unordered" and -exportplain. We also move some of the explicit engine export code into StateModelChecker, which will help make the code more flexible later (for example, allowing rewards to be added to Dot files).
New export methods in Prism based on ModelExportOptions. Explicit engine export methods move from Prob to StateModelChecker. Formatting-specific code moves to PrismExplicitExporter.
New export methods in Prism based on ModelExportOptions. Formatting-specific code moves to Exporter classes.
New export method in Prism based on ModelExportOptions. Formatting-specific code moves to Exporter classes.
New export method in Prism based on ModelExportOptions. Formatting-specific code moves to Exporter classes.
Export implementation still exists in C++ code for symbolic engines.
Use e.g. -exportmodel model.tra:actions=false Currently, actions are by default shown only for nondet models (e.g. MDPs) This setting is currently of limited use since: (a) it is only respected by the explicit engine (b) the explicit engine cannot yet store/show actions for Markov chains
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.