-
Notifications
You must be signed in to change notification settings - Fork 2
Self-contained proof steps for EqualityProver and APRProver #886
Conversation
…s which work with advance_proof loop
…ation/pyk into noah/atomic-steps
…ation/pyk into noah/atomic-steps
I don't like how @tothtamas28 what do you think? |
Let's make the following changes:
|
With this design, we may be able to make it so that |
@nwatson22 is anything blocking this PR? Is it still relevant? |
Refactor to
advance_proof
intended to splitstep_proof
stagesget_steps
(figure out which steps are available),exec
(standalone chunk of work which has all the information necessary to perform it contained inProofStep
, andcommit
, which modifiesproof
with the results of the proof steps. Intended to be an incremental step toward parallelizing individual proofs. Pulled largely from #727Adds:
ProofStep
and subclassesAPRProofStep
andImpliesProofStep
StepResult
and subclassesAPRProofResult
andImpliesProofResult
, for returning proof update information fromProofStep.exec
APRProofResult
APRProofExtendResult
for if the current node should be extended andAPRProofSubsumeResult
for if it should be subsumed into the targetProof.advance_proof
to, instead of callingstep
in a loop, callsget_steps
, and then callsexec
and thencommit
on each of these steps.Tested against kontrol test suite as well.