Repository navigation
feat(Crypto): relativize one-wayness to fixed advice and normalize nonuniform OWFs - #2328
Conversation
…ce bridge Add NonuniformlyIndistinguishable, NonuniformOneWay and NonuniformPRG (uniform strict PPT adversaries with polynomially bounded advice), their uniform projections, encoded-advice bridges via the new IsPPTOn.exists_extension, and NonuniformPRG.advicePRG discharging the GMW.AdvicePRG premise of the auxiliary-input GMW theorem. Link #2316 from ROADMAP landmark 1. Milestone M1 of #2316. AI-assisted: worker-jetski-3ceb65c9 (Jetski/Gemini).
Prove not_computationallyIndistinguishable_pure_uniformList with the first-bit test and derive the nonuniform version from it, rewording the advice-separation claims to nonvacuity. Note the sample-length clock convention, say Moreover, and add NonuniformOneWay.of_inversion_negligible.
|
Scope. I reviewed only the delta Statements. Reduction (Normalize.lean:98). The inverter for #2325 nits. Hygiene and body. No sorry, axiom, native_decide or heartbeat options. The touched code contains no Non-blocking nits:
|
|
I diffed
Lean code and statements are otherwise identical. The merge CI: |
edemaine
left a comment
There was a problem hiding this comment.
Agent preservation review by reviewer-codex-edemaine (independent non-author): APPROVE at 392d5a3a22cec854879fc47d64f4d8873061c0cd, carrying the existing independent source/API approval.
Verified the ordinary merge parents are the approved 9c38a8f8329a30d3ee6dd6cd7e1b92e135b84403 and main 3a16cea444fa14d95e6032bee4490fabb6f0d768. All three owned library/test files have identical Git blobs and modes. Definitions, quantifiers, certificates, imports, attributes and the constant-function nonvacuity client are preserved; no new mathematics review is needed. The fixed-advice clock still charges advice length, while the nonuniform endpoint restricts advice to polynomial length.
Both manual no-edit reasons are appropriate: the documented uniform normalization contract remains unchanged, and no agent workflow changes. Selected abstracts remain unaffected. At one CI inspection, Lean CI was running; guide and title passed. No local Lean build. Required final CI remains an integration gate. Agent approval, not human approval.
First M2a PR of #2316, stacked on #2325 (and through it #2320). Following the in-place relativization decided on the issue, it does for one-wayness what #2325 did for indistinguishability. The new notion
InversionHardWithAdvice f advicesays every uniform strict PPT inverter given one fixed advice family has negligible inversion probability. With empty advice it is exactly the security condition ofOneWay(oneWay_iff_inversionHardWithAdvice_nil), andNonuniformOneWay.secureis now this notion over every polynomially bounded advice family.OneWay/Normalizeis relativized.InversionHardWithAdvice.normalizeproves that output padding preserves hardness with any fixed advice. BothOneWay.normalize(uniform, now the empty-advice case) and the newNonuniformOneWay.normalizeandNonuniformOneWay.exists_fixedOutputLengthfollow from it. The latter is the fixed-output-length interface the pseudoentropy construction starts from. Scope change from the audit: the advice version of the hashed-parity inverter certificate (Pseudoentropy.WordReduction.isPPT_wordInverter) moves to the next M2a PR (#2338), together with its only consumer (Pseudoentropy.OneWay) and a relativeHasGap, so that the generalization lands with a client. This PR derives no nonuniform pseudoentropy pair or PRG; that remains for the rest of M2a/M2b of #2316.The branch also carries two #2325 review nits:
PRGStretch.isPPT_reduction, which had no in-library user, is deleted, and theIndistinguishableWithAdvicedocstring now notes that the advice is unbounded and its length is charged to the clock.Public-signature churn (old → new)
NonuniformOneWay.secure:∀ advice, PolynomiallyBounded … → Game.Indistinguishable (inversion game with advice) (fun _ _ => PMF.pure false) (IsPPTOn …)→∀ advice, PolynomiallyBounded … → InversionHardWithAdvice f advice. These are definitionally the same proposition.NonuniformOneWay.inversion_negligible_encoded (h) (hPPT) (hadvice)(feat(Crypto): nonuniform one-way functions and PRGs with the GMW advice bridge #2320) →InversionHardWithAdvice.inversion_negligible_encoded (h : InversionHardWithAdvice f (fun n => encAdvice (advice n))) (hPPT). This is the same conclusion from a fixed-advice hypothesis. It had no clients, and no alias is kept.OneWay.normalizeandOneWay.exists_fixedOutputLength: statements unchanged; proofs now go through the relative theorem.PRGStretch.isPPT_reduction: deleted (the feat(Crypto): relativize PRG stretch to fixed advice and amplify nonuniform PRGs #2325 nit above).InversionHardWithAdviceand its.inversion_negligible,.of_inversion_negligibleand.inversion_negligible_encoded;oneWay_iff_inversionHardWithAdvice_nil;InversionHardWithAdvice.normalize;NonuniformOneWay.normalizeandNonuniformOneWay.exists_fixedOutputLength.Framework friction
None new. The relative normalization reduction was a direct
IsPPTOn.preprocesswith a destructured padding map, closed byfun_prop. All new and touched code uses plainComputableInPolyTime; the old proofs ofOneWay.normalizeandexists_fixedOutputLengthwent through the tidy calculus and are now plain.Validation
scripts/check.sh --quick --base origin/feat/nonuniform-stretch-2316: ok at32363a40(53 affected build targets and their clients, plus mk_all --check); the test file and check_hygiene pass.ComplexityTests/Crypto/Nonuniform.leangains a check that inverting a constant function is not hard even with empty advice.Manual impact
manual/): No changes needed. The documented uniformOneWaynormalization workflow and statements remain unchanged, and the new relative-advice helpers follow the sameIsPPTOnconvention.agent-manual/): No changes needed. No agent roles, workflows, or repository scripts change.Abstract impact
None. No catalogued statement changes.
AI disclosure
Written by
worker-jetski-3ceb65c9(Jetski agent, Gemini model) under coordinatorcoordinator-jetski-fc77e3ec, with review byreviewer-jetski-d7ceb405andreviewer-codex-edemaine.