This repository has been archived by the owner on Apr 25, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 2
Parallel prover implementation for APRProofs #727
Open
nwatson22
wants to merge
188
commits into
master
Choose a base branch
from
noah/apr-proof-parallel
base: master
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
188 commits
Select commit
Hold shift + click to select a range
b21b2fd
Add interface for Proof and Prover class, test prove_parallel impleme…
nwatson22 f9aaba4
Merge branch 'master' into noah/parallel-prover
nwatson22 31e3a95
Merge f9aaba4dd881dc10f1c8f417083aaa8c9e4169b3 into 12c67b1f9458595ea…
nwatson22 71eb0a3
Set Version: 0.1.489
fa0f4d0
Keep track of begun nodes
nwatson22 2f45ff4
Merge branch 'noah/parallel-prover' of https://github.com/runtimeveri…
nwatson22 f644aec
Separate new Prover/Proof interface from existing classes
nwatson22 3dea9e4
Merge f644aecbc250bfbc8905bf0d472f53f5e833bb40 into f7283bae60c9ec530…
nwatson22 de48482
Set Version: 0.1.490
06438ec
Change interface to use return steps from commit
nwatson22 c4a4c5a
Merge branch 'noah/parallel-prover' of https://github.com/runtimeveri…
nwatson22 3ddda2d
Simplify TreeExploreProver
nwatson22 68bd89d
Use steps
nwatson22 34d2442
Update to match new interface plan
nwatson22 76e239b
Add testing module
nwatson22 a60290c
Change interface to use ProofStep
nwatson22 1d3b9af
Add documentation comments, assertions and tests for TreeExploreProve…
nwatson22 89527d3
Update src/pyk/proof/parallel.py
nwatson22 a064486
Update src/tests/integration/proof/test_parallel_prove.py
nwatson22 5132864
Update src/tests/integration/proof/test_parallel_prove.py
nwatson22 62ac147
Merge branch 'master' into noah/parallel-prover
nwatson22 05f8d56
Merge 62ac14736b215c604551ae916f767fea7aaaca5c into 11ec5230566ec2b83…
nwatson22 9517856
Set Version: 0.1.492
08c0e81
Remove unused import
nwatson22 2c5b42f
Address comments
nwatson22 ff9d0c8
Remove unused typevar
nwatson22 c8072a4
Address comments
nwatson22 9bd1e71
Merge c8072a49d0dde5f5c10ffe5e941f090feb917e1c into 263f2f58fb07a772d…
nwatson22 fdb4233
Set Version: 0.1.493
ae3aa28
Merge branch 'master' into noah/parallel-prover
nwatson22 4057a69
Merge ae3aa28a716bc4d21588051237e6baa9285d4294 into fd2cd65b01919ac60…
nwatson22 7a63164
Set Version: 0.1.494
296e6f8
Address comments
nwatson22 6e47134
Merge branch 'noah/parallel-prover' of https://github.com/runtimeveri…
nwatson22 6a9d3b5
Merge 6e471343e6096866307ba0af38d96bd33e5cf5e7 into edc297774f4ce99d4…
nwatson22 7945c7e
Set Version: 0.1.495
a95458b
Remove log messages
nwatson22 b991065
Merge branch 'noah/parallel-prover' of https://github.com/runtimeveri…
nwatson22 7c8c538
Fix formatting
nwatson22 17ea417
Add APRProof/Prover implementations of Prover interface
nwatson22 544962e
Merge branch 'noah/parallel-prover' into noah/experimental
nwatson22 4445d29
Address comments
nwatson22 0cda3c4
Fix working with multiple proofs at once
nwatson22 a3c210f
Add missing requirements for status
nwatson22 366e89e
Improve typing on prove_parallel
nwatson22 199e46f
Add fail_fast and max_iterations, and tests for these
nwatson22 0d7e523
Remove test cases
nwatson22 5777bc6
Add to AprProofStep exec
nwatson22 f293736
Merge noah/parallel-prover into branch
nwatson22 c65709a
Merge branch 'master' into noah/parallel-prover
nwatson22 7799541
Merge c65709a0353b7618cb0b113abbf3d78bdc69ecd8 into dd40fd82582773603…
nwatson22 e659928
Set Version: 0.1.497
c2744a5
Fix possibility of TreeExloreProof to switch status after passing/fai…
nwatson22 ed26199
Merge branch 'noah/parallel-prover' of https://github.com/runtimeveri…
nwatson22 536d0cf
Merge branch 'noah/parallel-prover' into noah/experimental
nwatson22 8ba6f63
Merge branch 'master' into noah/parallel-prover
nwatson22 543d911
Merge 8ba6f630ccf747182e8145c2e08ed31f2ff8e77b into 91c78ef6eaa9e6ee9…
nwatson22 4c22193
Set Version: 0.1.499
95f230b
Merge branch 'noah/parallel-prover' into noah/experimental
nwatson22 0f5a6b3
Add APRProver Implementations
nwatson22 1950f60
Create interface for ProcessData
nwatson22 2436234
Switch to using 1 server per prover and sharing between threads, init…
nwatson22 a3db6ee
Parameterize imp parallel tests, add test to catch check_terminal ord…
nwatson22 5b86dfb
Fix check_terminal bug
nwatson22 923a8d7
Remove parameters fromm prove_parallel and make shutdown() into destr…
nwatson22 75e955d
Merge master into branch
nwatson22 640e3ee
Merge master into branch
nwatson22 66d321a
Merge 640e3eeb66c87eb5b345d380c4c92e4604156dc3 into 314a6603716d96c9e…
nwatson22 a682b22
Set Version: 0.1.505
1f46262
Add ParallelAPRBMCProver
nwatson22 e029479
Display profiling information
nwatson22 26e162f
Merge e029479a9e695b6c1b684151114e986e95f35a46 into 714e709aaae4fb441…
nwatson22 5b82535
Set Version: 0.1.506
b7cd7e1
Reduce subsumption checking
nwatson22 daaf030
Merge branch 'noah/apr-proof-parallel' of https://github.com/runtimev…
nwatson22 fc4bf6d
Merge daaf030160f0efcc6b10bf441d20203c842af126 into 5d9e84673c79f2bad…
nwatson22 fcd2d14
Set Version: 0.1.507
426486d
Fix formatting
nwatson22 66220d8
Merge branch 'noah/apr-proof-parallel' of https://github.com/runtimev…
nwatson22 e85a70c
Profile cterm_implies and extend_cterm in ParallelAPRProver
nwatson22 5de5299
Use Process and Queue to keep data between workers on the same process
nwatson22 1e7be75
Merge 5de5299ea94dcbac366f93d852dd0319a3c5f56e into f6c9126b05d7f1e7f…
nwatson22 caec071
Set Version: 0.1.508
53431a5
Fix time calculation
nwatson22 57cdf34
Merge branch 'noah/apr-proof-parallel' of https://github.com/runtimev…
nwatson22 b86f9d8
Dont consider terminal nodes failling
nwatson22 d9bf236
make node failing different from node terminal. a node is failing onc…
nwatson22 9da8fa9
Use 1 server per prover per thread
nwatson22 a9cc7e5
Merge master into branch
nwatson22 7f8981f
Merge a9cc7e532285ab358d5ee44f0c759684d0ea5696 into 0535c6b136a08b905…
nwatson22 5c105ca
Set Version: 0.1.511
81958c5
Add cleanup method to ProcessData
nwatson22 10e6391
Merge branch 'noah/apr-proof-parallel' of https://github.com/runtimev…
nwatson22 04bfed1
Add checked attribute to printer
nwatson22 f83dc88
Merge remote-tracking branch 'origin/master' into update-apr-proof-pa…
h0nzZik c057b3a
Merge f83dc88ecc05d8c661bebf69b1460359e1e54a68 into 04bfed1f4dbe0df52…
h0nzZik 83b87c6
Set Version: 0.1.512
174d0ad
Merge remote-tracking branch 'origin/master' into update-apr-proof-pa…
h0nzZik 7a7d965
Merge 174d0adc0a4253f295fd82e7d9c41f783fbe6ffb into 04bfed1f4dbe0df52…
h0nzZik 4354d19
Set Version: 0.1.512
a5bd37f
fix a typo
h0nzZik d3eee58
Merge a5bd37f065b8bc63a226a96db0d9723032707ba1 into f9a2da504dd4d4b36…
nwatson22 c977298
Set Version: 0.1.544
fdfd752
Update noah/apr-proof-parallel with support of dependencies between p…
h0nzZik af9b608
Merge branch 'master' into noah/apr-proof-parallel
h0nzZik b0d8a4a
Merge branch 'master' into noah/apr-proof-parallel
h0nzZik 7719405
Merge branch 'master' into noah/apr-proof-parallel
nwatson22 5b71610
Merge 771940531add662143ebb59b4e0ae7beb200c5d2 into f9c0c63d2e25ba22e…
nwatson22 cc271a4
Set Version: 0.1.556
75932a2
Merge branch 'master' into noah/apr-proof-parallel
h0nzZik 7fde3d2
Merge 75932a2ae3f6b70428be2e7b55c662592398d644 into 4f31ecff518dd5aa4…
nwatson22 ef08872
Set Version: 0.1.558
316abe3
Merge branch 'master' into noah/apr-proof-parallel
nwatson22 eeeefac
Merge 316abe37a8ba4bf1ece6e519465297b60b720c15 into a2e14f0f48381034e…
nwatson22 18f370a
Set Version: 0.1.559
6bd6845
Merge master into branch
nwatson22 d6f628d
Merge 6bd68452b5fe9d577ecf020e123e2e515f7a70a3 into afb5306f1bcf135bf…
nwatson22 02836d3
Set Version: 0.1.596
daa74a5
Update module adding
nwatson22 0f4e561
Merge branch 'noah/apr-proof-parallel' of https://github.com/runtimev…
nwatson22 cccc706
Use single server
nwatson22 3d69680
Fix too many servers being started
nwatson22 6d95c12
Work on debugging parallel prover crash
nwatson22 2b62e41
Merge master into branch
nwatson22 59d77a8
Merge 2b62e41b0bc55b7844e66dfc0b9a6762892ace0c into ac44eb6918ba9abf0…
nwatson22 2378e88
Set Version: 0.1.605
be877a3
Clean up
nwatson22 518273d
Merge branch 'noah/apr-proof-parallel' of https://github.com/runtimev…
nwatson22 6e7dde5
Clean up
nwatson22 f53b0a9
Clean up
nwatson22 7307862
Clean up
nwatson22 9eaf1a2
Merge master into branch
nwatson22 d2b484d
Merge 9eaf1a24adfa959e06e431455936c2b71ebc7456 into 4493d41e3d24de34c…
nwatson22 31dcc46
Set Version: 0.1.613
597d280
Fix formatting
nwatson22 66a6dfa
Merge branch 'noah/apr-proof-parallel' of https://github.com/runtimev…
nwatson22 9f30962
Clean up parallel.py
nwatson22 f16161d
Clean up reachability.py
nwatson22 95f560d
Remove extra inject_modules
nwatson22 b4ae907
Revert formatting changes with specific black version
nwatson22 7bb8775
Revert changes relating to newer flake8-bugbear changes
nwatson22 dc4d66d
Revert poetry.lock
nwatson22 4d67d17
Revert changes relating to newer flake8-bugbear changes
nwatson22 39b7cb1
Revert changes relating to newer flake8-bugbear changes
nwatson22 ab95cbe
Remove unnecessary class
nwatson22 3476c15
Remove print messages
nwatson22 58f865b
Encapsulate profiling info for parallel_prove
nwatson22 21c1679
Remove commented lines
nwatson22 c1dbe97
Remove commented lines
nwatson22 3330c1c
Merge master into branch
nwatson22 48039a4
Merge 3330c1ca4d6f4f1e9e135e0df2016defe31cd4d5 into 03ea742571765dc45…
nwatson22 215514e
Set Version: 0.1.618
e43535c
Integrate max_iterations into APRParallelProver
nwatson22 e8123c1
Merge branch 'noah/apr-proof-parallel' of https://github.com/runtimev…
nwatson22 a8e5041
Fix test case
nwatson22 37df3d1
Implement fail_fast
nwatson22 1bcab8b
Merge 37df3d152766d50648dd076ea8932f9eb04c3e9a into e1519523721e84eec…
nwatson22 e0fda99
Set Version: 0.1.619
afde47c
Merge branch 'master' into noah/apr-proof-parallel
nwatson22 97460b2
Merge afde47c39960c9511a5cd9744fde0e2eb63c1bdc into e68db42142d1e03d2…
nwatson22 6c797c2
Set Version: 0.1.620
24a472f
Update src/pyk/proof/reachability.py
nwatson22 fd177cc
reimplement bmc checking for parallel proofs
nwatson22 d3d24a6
Merge branch 'noah/apr-proof-parallel' of https://github.com/runtimev…
nwatson22 238ffb0
Fix formatting
nwatson22 47bfa4a
Set haskell option in the tests
nwatson22 4c745a7
proof/reachability: inline BMC logic into APRProof and APRProver
ehildenb c155cdc
proof/{proof,show,__init__}: cleanup remaining references to BMC provers
ehildenb 220bb7b
tests/unit/test_proof: update unit tests for unified BMC prover
ehildenb b8baa48
tests/integration/proof/test_imp: update for unified BMC prover
ehildenb 5dda1cc
tests/integration/proof/test_goto: migrate to unified BMC prover
ehildenb d5ace85
Merge 5dda1cc36b45f85679e19059d9e1efdd7de19ce3 into e68db42142d1e03d2…
ehildenb c8ec74c
Set Version: 0.1.620
9a5ad26
proof/reachability: inline tiny method
ehildenb 1a3dce6
Consolidate ParallelAPRBMCProver into ParallelAPRProver
nwatson22 76e1703
Merge 1a3dce65c029a0c922a9854ad6fb801ecd82041c into c33340c65005e17b0…
nwatson22 237a1c5
Set Version: 0.1.621
2abb345
Merge unify-bmc-prover into branch
nwatson22 4ab9d8f
Merge branch 'noah/apr-proof-parallel' of https://github.com/runtimev…
nwatson22 c70e967
Fix process data being locked to one instance for all proofs
nwatson22 10359d6
Merge master into branch
nwatson22 912e033
Merge 10359d6f12b9bf254b9011bc790fb837067d2245 into d7b42ff37b5054a6c…
nwatson22 f36524d
Set Version: 0.1.624
1d38ad7
Readd queues system
nwatson22 d94404e
Merge branch 'noah/apr-proof-parallel' of https://github.com/runtimev…
nwatson22 3a43525
Merge master into branch
nwatson22 f3ac4a0
Merge 3a435254f16f474623ff1579ba5284bd718deab6 into d7b05c1de94620720…
nwatson22 e545bd8
Set Version: 0.1.628
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 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 |
---|---|---|
@@ -1 +1 @@ | ||
0.1.627 | ||
0.1.628 |
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 |
---|---|---|
|
@@ -4,7 +4,7 @@ build-backend = "poetry.core.masonry.api" | |
|
||
[tool.poetry] | ||
name = "pyk" | ||
version = "0.1.627" | ||
version = "0.1.628" | ||
description = "" | ||
authors = [ | ||
"Runtime Verification, Inc. <[email protected]>", | ||
|
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
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.
My understanding is that
data
is fixed for a given run ofprove_parallel
. What's the advantage of providingdata
as an argument toexec
and not in__init__
of theProver
implementation?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.
Yes, it is now fixed, but I'm still using at as a way to only pass in large objects to the worker threads once at the beginning. With the way you suggest is there a different way
exec
could get access to thedata
?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.
Prover
instantiatesProofStep
, so ifProver
has access todata
, then it can also pass it toProofStep
during instantiation. Theexec
method then readsdata
from its instance.