Skip to content
This repository has been archived by the owner on Apr 25, 2024. It is now read-only.

Prover no longer holds a Proof #960

Closed
wants to merge 14 commits into from
Closed

Prover no longer holds a Proof #960

wants to merge 14 commits into from

Conversation

nwatson22
Copy link
Member

No description provided.

@nwatson22 nwatson22 self-assigned this Mar 9, 2024
@yale-vinson yale-vinson added the enhancement New feature or request label Mar 18, 2024
@palinatolmach
Copy link
Contributor

@nwatson22 is this PR blocked by anything? Are we still planning to getting it merged?

@nwatson22
Copy link
Member Author

Closing in favor of runtimeverification/k#4250.

@nwatson22 nwatson22 closed this Apr 16, 2024
rv-jenkins pushed a commit to runtimeverification/k that referenced this pull request Apr 16, 2024
Porting runtimeverification/pyk#960 to K repo.

`APRProver.step_proof` currently assumes the proof being passed in the
`APRProofStep` it takes as argument is the same as `self.proof`, i.e.
when it calls `self.nonzero_depth`, `self._check_subsume`, and
`self._checked_for_bounded` assumes the proof being passed in is always
the same for a single `APRProver` instance.

This is a problem in itself, but changing this should also move us
closer an implementation that can run `step_proof` on different nodes in
parallel, by reducing its dependency on external data. A next step could
be initializing a new KCFGExplore every `step_proof` instead of using
`self.kcfg_explore` to access the `KoreClient`.

- Removes `proof` field from `Prover` and `APRProver`.
- Makes methods that read/write `self.prover` take a prover argument 
- Proof initialization is performed separately in `init_proof` at the
beginning of `advance_proof` rather than in the `Prover` constructor.
- Moves `_checked_for_terminal` and `_checked_for_bounded` into
`APRProof`, as they refer to nodes of a specific proof.
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants