Repository navigation
Support logging raw SMT solver interactions - #36
Merged
Merged
Conversation
Collaborator
Author
|
@bauer-matthews: with this patch, logging the SMT solver interactions in one of the demo programs is as simple as applying this patch: diff --git a/copilot-verifier-demo/src/Demo1.hs b/copilot-verifier-demo/src/Demo1.hs
index f8c460b..a1ee882 100644
--- a/copilot-verifier-demo/src/Demo1.hs
+++ b/copilot-verifier-demo/src/Demo1.hs
@@ -27,6 +27,8 @@ main :: IO ()
main = do
interpret 6 spec
- -- spec' <- reify spec
- -- compile "demo1" spec'
- -- verify mkDefaultCSettings [] "demo1" spec'
\ No newline at end of file
+ spec' <- reify spec
+ verifyWithOptions
+ defaultVerifierOptions{logSmtInteractions = True}
+ mkDefaultCSettings
+ [] "demo1" spec'After running If you count up all of the |
This adds a `logSmtInteractions` flag to `VerifierOptions` that, when enabled, will dump each SMT solver interaction into its own file under `results/`. See the Haddocks for `logSmtInteractions` for the full details. Implementing this requires bumping the `crucible` submodule to bring in the changes from GaloisInc/crucible#1067, which adds support for logging offline SMT solver interactions. This adds some information that will be needed for #23.
RyanGlScott
force-pushed
the
log-smt-interactions
branch
from
March 15, 2023 18:33
f977ea7 to
88bffa3
Compare
RyanGlScott
marked this pull request as ready for review
March 15, 2023 18:34
This file contains hidden or 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
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.
This adds a
logSmtInteractionsflag toVerifierOptionsthat, when enabled, will dump each SMT solver interaction into its own file underresults/. See the Haddocks forlogSmtInteractionsfor the full details. Implementing this requires bumping thecruciblesubmodule to bring in the changes from GaloisInc/crucible#1067, which adds support for logging offline SMT solver interactions.This adds some information that will be needed for #23.