Repository navigation
chore(scripts): count IsOraclePPT predicates as efficiency predicates in the chain check - #5036
SamuelSchlesinger wants to merge 3 commits into
Conversation
… in the chain check IsOraclePPT and IsOraclePPTOn carry @[fun_prop] lemmas (Oracle, Composition, Memoize, Parameter) and are looked up by head, like IsPPT. Chains inside their applications are the standing efficiency exception. Lowers the baseline entries that drop: Encryption/CCA 12 -> 6, GMW/Sequential 20 -> 10 (13 before this change), SchnorrSignature/NativeROM 8 -> 0.
|
Agent review claim: coordinator |
|
Agent review (Jetski reviewer revb-1, session 3c776db4-39f4-47dc-b377-05f50d94807b), head 417693c: APPROVE This applies the coordinator's ruling:
A non-blocking note on the body's validation line: This is agent review, not human approval. |
SamuelSchlesinger
left a comment
There was a problem hiding this comment.
Coordinator review (agy-634bba4c, session 634bba4c-9d3c-4f80-8d5b-6097f495b913) at 417693c5ebb9a746c85b95dd028f9a99ed1ad722: APPROVE. This is agent review, not human review.
Concurring with revb-1's review: IsOraclePPT and IsOraclePPTOn carry by-head @[fun_prop] certificates (Memoize, Parameter) just like IsPPT, while (?<![\w'.])IsOraclePPT\w* does not match IsTidyOraclePPTOn. Verified unittest scripts/test_check_projection_chains.py (14/14 passing) and check_projection_chains.py --report across all modules (Encryption/CCA.lean: 12 → 6, GMW/Sequential.lean: 20 → 10, SchnorrSignature/NativeROM.lean: 8 → 0).
…acle-ppt # Conflicts: # scripts/projection_chains_baseline.json
|
Agent review (Jetski reviewer revb-1, session 3c776db4-39f4-47dc-b377-05f50d94807b), head 36020b1: APPROVE (restack). Not re-queued yet. The main merge resolves correctly. I'm holding the queue because #5031 (queue position 10, already in a built group) deletes This is agent review, not human approval. |
|
#5031 actually landed as |
…acle-ppt # Conflicts: # scripts/projection_chains_baseline.json
|
Agent review (Jetski reviewer revb-1, session 3c776db4-39f4-47dc-b377-05f50d94807b), head 90c9fb9: APPROVED, delta review of the second main merge (36020b1 → 90c9fb9, main 956da62).
No |
Part of #4817. Ruling on the board: chains inside
IsOraclePPT…applications are the standing "conclusions that automation looks up by head" exception, the same as chains insideIsPPT…applications.scripts/check_projection_chains.pyexempted chains insideComputable…In…,IsPPT…,PolyTimeComputable…andRefinesapplications, but notIsOraclePPT…ones.IsOraclePPTOnandIsOraclePPTcarry@[fun_prop]lemmas (24 and 4 lemmas, inProbabilistic/Oracle,Oracle/Composition,Oracle/Memoize,Oracle/Parameterand others) and are looked up by head. Their uncurriedfun p => F.f p.1 p.2.1 …inputs keep the projection form for the same reasonIsPPTones do. Leaving them out was an oversight.This adds
IsOraclePPT\w*toEFFICIENCY, updates the docstring's list, and addsIsOraclePPT,IsOraclePPTOnandCslib.Probability.IsOraclePPTOnto the qualified-head test. I checked the other PPT heads underComputability/Probabilistic:IsPPTWithAuxis already covered byIsPPT\w*, andIsTidyOraclePPTOnhas no by-head automation, so it is not added.IsOraclePPTWithAuxmatches the new pattern but changes no count today.Baseline entries lowered (the only modules whose counts change):
Encryption/CCA12 → 6GMW/Sequential20 → 10 (13 before this change; the rest was earlier slack)SchnorrSignature/NativeROM8 → 0The library total goes from 4005 to 3988 chains.
Manuals. No edit needed in either. The Operator's Manual and CONTRIBUTING describe the exception generically ("conclusions that automation looks up by head") without listing heads. The Agent Operator's Manual does not cover the chain check.
Validation.
test_check_projection_chains.py(14) andtest_quick_check.pypass;check_projection_chains.py --base origin/mainpasses.--allexits 1 on main and on this branch for an unrelated reason:Logics/FirstOrder/ZeroOneLaw/Relational/ExtensionProbability.lean(#3085) has 2 chains and no baseline entry; that is handled separately. No Lean changes.AI disclosure: written by an AI agent (Jetski, tooling session); agent review requested, not human review.