Repository navigation
feat(Oracle): isPPTOn_runState; state UntilBad runners on runState - #4985
SamuelSchlesinger wants to merge 3 commits into
Conversation
Part of #4893 (I2b), stacked on the I2a run combinators. - `IsOraclePPTOn.isPPTOn_runState` and `IsOraclePPT.isPPTOn_runState` (Computability/Probabilistic/Oracle/RunState.lean) certify `(P.runState O).run s`; both are derived from `run_interpret_preprocess`/`run_interpret_preprocess'` with the same premises, so there is one certificate API. - `Game.runStatelessOracle` and `Game.runFinderOracle` are now stated with `runState` (definitionally unchanged); the support-premise lemmas in UntilBad and GameHop are restated the same way. - Tests: OracleRunStatePPT (both theorems), GameHopTactic updated. - Manual: probabilistic-workflows substitution section names the runState certificates. Co-authored-by: infra (Jetski agent, conversation de72c51e)
|
The returned source delta is covered at The reviewed repair states Current native CI passes all six gates and required global/tooling checks, including the formerly failing tidy-statement ratchet. I read the complete actual reports: no parallel candidate among 2 definitions/types, no duplicate among 10 theorem statements, and no repeated block among 25 proofs; all 8 description names resolve. These scoped scans do not establish uniqueness. Guide examples pass; rendered HTML/upload are skipped. Native and Guide checkout logs both identify The retained reviewer’s affected-manual record covers the new paragraph/current-head source links and the Agent no-edit assessment. It specifically reports text-layer, link and bounding-box checks. This note does not turn that into a separate full manifest/render audit; retain precise current-source provenance and actual rendered-page coverage in the final readiness record. The earlier no-edit/placement/source-credit assessment and broader #4893/#4817 objectives remain intact. No queue entry yet. #4978 is still open at the live guard. Retained infra/revc-2: after it actually lands, normally join actual main in one push and review only the real reconciliation delta. The resulting final source revision needs current six-gate/global validation, actual advisories/tested-source and affected both-manual provenance/rendered carry. Current staged-layer success does not waive that final-head check. Implementation and review ownership remain unchanged; no automatic queue wait while the dependency or material readiness holds remain. |
|
Agent review (Jetski revc-2 session 7eb004ef-055e-4c26-8b2e-bee0bc58f5fc), head 4b37079 (I2b delta over #4978 at 0f06d7e): APPROVE.
Not blocking. There are now two names for one certificate: about 30 callers still apply Checked locally at this head: Landing: this PR's base is This is an agent review, not human approval. |
The tidy statement ratchet (#456) rejects ComputableTidilyInPolyTime in public statements. Take plain ComputableInPolyTime preparation, initial state and allowance and convert with .tidy in the proof.
|
Agent review (Jetski revc-2 session 7eb004ef-055e-4c26-8b2e-bee0bc58f5fc), delta 4b37079..0a30200: APPROVE.
I missed the tidy-statement ratchet in my first review: it is a post-build audit, and my local checks did not cover it. I'll treat this PR as queue-ready only once CI's ci-checks is green on the final head. Checked locally at 0a30200: Next: once #4978 lands, merge This is an agent review, not human approval. |
|
Rendered-manual check for the approved head 0a30200. Rendered: inspected PDF p. 62 (printed p. 54) of cslib-frontier-operators-manual.pdf from run 43379206502: OK. This is the new I checked the page's text layer, link annotations and word bounding boxes: no raw markdown, every word stays inside the 72pt margins, and the new links point to this head. Agent review (Jetski revc-2, session 7eb004ef-055e-4c26-8b2e-bee0bc58f5fc), not human approval. Agent Operator's Manual: no edit needed. Its manifest takes only |
Part of #4893 (I2b). Stacked on the I2a run combinators (#4978).
An oracle-PPT word program run against an efficient stateful oracle, written
(P.runState O).run s, now has its certificate stated in that form:IsOraclePPTOn.isPPTOn_runStateandIsOraclePPT.isPPTOn_runStateinComputability/Probabilistic/Oracle/RunState.lean. Both are derived fromrun_interpret_preprocess/run_interpret_preprocess', with the same invariant and allowance premises. Both take plainComputableInPolyTimepreparation, initial state and allowance, as the tidy statement ratchet (#456) requires, and convert with.tidyinside the proof. That leaves one certificate API. The oracle premise applies the stateful oracle to caller, request and state, sofun_propcertifies it.Game.runStatelessOracleandGame.runFinderOracle(Crypto/Game/UntilBad) are now defined withrunStateand are definitionally unchanged. The support-premise lemmas in UntilBad and Tactic/GameHop are restated the same way. All 22 UntilBad/GameHop importers build unchanged, including CramerShoup, whoseunfold runFinderOraclesite still goes through.This is infrastructure, not new mathematics. Limitations: the enc, mac and sig word-level
isPPTOn_run_*certificates and the inlinesumHandlerruns are not migrated here; lanes adoptrunStatewhen they type their oracles (#4817 infra row).Manuals. Operator's Manual: the substitution section of
workflows/probabilistic-workflows.mdnames the runState certificates and their checked client. Agent Operator's Manual: no change, since agent workflow, tooling and validation are unaffected.Validation.
lake build --wfail --iofailof the new module, its test, UntilBad, GameHop and all 22 importers and tests.lake linton the changed modules.check_hygiene.py --check-simp,mk_all --checkandcheck_operator_manual.py.--wfail --iofailbuild of the module and its test, plus lint, hygiene and the manual check. The statements no longer mention any tidy constant. The fullcheck_tidy_surface.pyneeds whole-library outputs, so CI covers it.Full run on CI.
AI disclosure: written by the Jetski agent
infra(conversation de72c51e) for Samuel Schlesinger; agent self-reviewed, awaiting independent review.