-
Notifications
You must be signed in to change notification settings - Fork 63
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Fix printing of arrays when they appear in counterexamples.
- make room for values in FirstOrderValue arrays - fix the printer functions accordingly - we now need From/ToJSONKey instances for FirstOrderValue - this requires Ord for FirstOrderValue and FirstOrderType - fix the conversion of FirstOrderValue arrays to Term - convert GroundValue array values to FirstOrderValue array values There are three things to be aware of in case they come back to haunt us:: - Fixing FirstOrderValue arrays (FOVArray) to contain actual values changes the associated JSON schema. We think this only affects the solver caching mechanism, so there's some possibility that users will have to flush/regenerate their caches. More likely nobody will have exercised this path, since it after all doesn't actually work; any such current cache entries don't contain the array contents. - Fixing the conversion to Term changes the behavior of anything that exercised that code path. This is also probably nothing of significance; since the the prior behavior was to mysteriously generate types instead of values, which could hardly fail to go off the rails downstream, it's fairly unlikely anything important depends on it. - Currently if we get an ArrayMapping GroundValue array (one where you can only get values out by calling a lookup function) we fail. It's not clear if these ever appear in practice or what should actually be done if one does. This is a more significant possibility, though, because the behavior now is to fail and that impacts not only the marginal code paths described above but also the printing of counterexamples. So we might need to add more support in the future. This change adds indexed-traversable to saw-core and saw-core-what4, but the rest of saw already depends on it so this has no real effect.
- Loading branch information
1 parent
6afd8e7
commit 19e4918
Showing
5 changed files
with
100 additions
and
20 deletions.
There are no files selected for viewing
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
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
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -18,6 +18,7 @@ library | |
base >= 4.9, | ||
bv-sized >= 1.0.0, | ||
containers, | ||
indexed-traversable, | ||
lens, | ||
mtl, | ||
saw-core, | ||
|
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
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
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