generated from amazon-archives/__template_Apache-2.0
-
Notifications
You must be signed in to change notification settings - Fork 23
Add polymorphic functions to DDM and Strata.Boogie #321
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
Open
joscoh
wants to merge
82
commits into
main
Choose a base branch
from
josh/ddm-poly-2
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
82 commits
Select commit
Hold shift + click to select a range
41d1d54
Add tester functions and tests
2a34f02
Add destructors
e089b37
Adding datatypes to Boogie AST, in progress
dd94853
Add datatypes to LContext
43b18dc
Add datatype to Boogie typing and merge LContext change
74edfb7
Add datatypes to SMTContext and thread through LMonoTy.toSMTType
5cf2834
Add declare-datatypes and derived functions through verif pipeline
cab23ef
Store generated ADT functions in map
34ef206
Fix Boogie datatype tests
9f0b2f9
Minor cleanup
50a747f
Improve tests and remove some useless code
d1987e3
Merge branch 'main' into josh/declare-datatype
146a0ec
A few formatting fixes
c1b7ac0
Merge branch 'main' into josh/declare-datatype
535d56a
Merge branch 'main' into josh/declare-datatype
9a1c3eb
Merge branch 'main' into josh/declare-datatype
b101d94
Allow different names for testers/destructors, change Boogie prelude …
db33fba
Fix bug with datatypes using sorts or nested types in constructors
691e9f5
Add test case for datatype dependencies
9a9b45a
Add topological sorting for datatype dependencies and tests
75d47fb
Merge branch 'main' into josh/declare-datatype
319790f
Formatting changes from comments
6e66c65
Minor formatting fixes
2f007d7
Formatting fixes and limit comment length in TypeFactory.lean
d60e0d2
Fix formatting in SMT datatype tests
8ee229a
Merge branch 'main' into josh/declare-datatype
b73b779
New version of datatypes in Boogie with tests
52efb63
Add Other datatype dialect and fix references to Boogie in Ast.lean
8e718cb
Change BoogiePrelude to use datatypes
5f28b43
Merge branch 'main' into josh/declare-datatype
shigoel 5ea7442
Merge branch 'main' into concrete-ast-ddm-2
53239fc
Add default tester names and better comments for datatype tests
2779c63
Merge branch 'josh/declare-datatype' into concrete-ast-ddm-2
4b56c58
Add missing file
fcb138c
Add constructor annotations
1e3e48a
Add field list annotations, remove hard-coded names
e35e74e
Clean up some Translate code to reduce duplication
292db8b
Add documentation to new AST declarations
13a3895
Move parts of datatype AST and add datatype docs
e3fcc87
Remove Boogie Minimal example
28d0932
Clean up code and documentation
d3099dd
Fix BoogiePrelude destructor names
0a6a00c
Clean up Boogie Parse.lean
885d6b3
Make None datatype in BoogiePrelude for computation
58c44b2
Update expected output with newly passing tests
5a5b75b
Remove perConstructorField and fieldIndex
5a89311
Trying again incrementally - add tvar
90db0c6
Poly implementation v2
fc4bc1c
Merge branch 'main' into josh/concrete-ast-ddm-2
959ec14
Fix minor bugs and add tests for polymorphic DDM definitions
ddedf98
Merge branch 'main' into josh/ddm-poly-2
b13ebd6
Add polymorphic datatype support with tests
ba8478f
Update Python Boogie prelude with polymorphic type
b455a1b
Merge branch 'main' into josh/concrete-ast-ddm-2
375de36
Merge branch 'josh/concrete-ast-ddm-2' into josh/ddm-poly-2
f2b6aae
Remove unecessary scope annotations from fields
57ee2ed
Update datatype documentation, add to DDM manual
e18d13f
Merge branch 'main' into josh/concrete-ast-ddm-2
6e1b98c
Add small clarification about fields
2d82afd
Remove special handling for fields, replace with generic Bindings
d603ed9
Merge branch 'main' into josh/concrete-ast-ddm-2
6498223
Merge branch 'main' into josh/concrete-ast-ddm-2
a75f32a
Merge branch 'main' into josh/concrete-ast-ddm-2
1b72d26
Merge branch 'main' into josh/ddm-poly-2
44141bd
Merge branch 'josh/concrete-ast-ddm-2' into josh/ddm-poly-2
ab33f31
Fix error message on tests
e43524e
Clean up comments
edfd3bd
Remove unecessary tests and test comments in polymorphic tests
b9f174c
Merge branch 'main' into josh/concrete-ast-ddm-2
99d2640
Merge branch 'josh/concrete-ast-ddm-2' into josh/ddm-poly-2
07c87f8
Update Verso documentation
89e45bd
Merge branch 'main' into josh/ddm-poly-2
26f12be
Merge branch 'main' into josh/concrete-ast-ddm-2
abfbd94
Update Python expected README
6c3abfe
Merge branch 'main' into josh/concrete-ast-ddm-2
3740d73
Merge branch 'josh/concrete-ast-ddm-2' into josh/ddm-poly-2
e4c025f
Merge branch 'main' into josh/ddm-poly-2
f488fa9
Uncomment test
61adec2
Merge branch 'main' into josh/ddm-poly-2
joscoh fb8592d
Merge branch 'main' into josh/ddm-poly-2
086ebaf
Merge branch 'main' into josh/ddm-poly-2
47379b1
Update test output
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
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
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
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
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
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
Oops, something went wrong.
Oops, something went wrong.
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why use
Stringfor type variable names rather than deBrujin indices as inbvar? It seems likebvarcould refer to either a type variable or "expression" variable.