Uniform seeds for samplable pseudoentropy pairs #
Every strict PPT sampler admits one polynomial-time deterministic evaluator driven by a uniform
polynomial-length seed. SeedRealization exposes this algorithm while preserving the pair's exact
finite joint law. Its output is the finite mathematical view used for entropy accounting.
The entropy chain rule accounts for every seed bit, including coins unused by the sampler:
H(observation) + H(bit | observation) + H(seed | observation, bit) = seed length.
Thus the third source in the later extraction argument retains the unused randomness too.
The seed also bounds the information in a single outcome, giving an explicit exponential
concentration bound for independent repetitions of the pair.
Main definitions #
Cslib.Crypto.Pseudoentropy.SamplablePair.SeedRealization: a uniformly efficient evaluator with the exact joint law on uniform seeds.Cslib.Crypto.Pseudoentropy.SamplablePair.SeedRealization.sampleWithSeed: return the evaluated pair together with every seed bit, including unused coins.Cslib.Crypto.Pseudoentropy.SamplablePair.SeedRealization.latentSampleWithSeed: the exact finite mathematical view, with no claim that observation decoding is efficient.
Main results #
Cslib.Crypto.Pseudoentropy.SamplablePair.exists_seedRealization: the sampler's existing strict PPT certificate supplies its deterministic evaluator.Cslib.Crypto.Pseudoentropy.SamplablePair.SeedRealization.entropy_chain_rule: account for the entire seed's entropy.
References #
- T. Holenstein, Pseudorandom Generators from One-Way Functions: A Simple Construction for Any Hardness, Definition 4 and Section 5. Shared machine replay supplies the uniform-seed presentation; the bounded-information concentration estimate depends on the complete seed length.
Adapted from Crypto/Computational/Pseudoentropy/Seed.lean on the cslib crypto branch at
5ff69ca93402e7c947208dc56396d6d86203ccd8, using the existing typed saved-coin evaluator and tidy
machine certificates. Positive pseudoentropy gaps and extraction remain separate developments.
A sampler's PPT certificate supplies an efficiently computed bound on every possible public observation. Impossible values in its finite observation type need no size bound.
A plain polynomial-time evaluator from a uniform seed, with all input bits counted.
The complete number of seed bits at this parameter.
- length_isPolyTime : Turing.MultiTapeTM.ComputableInPolyTime self.length Turing.MultiTapeTM.encUnary Turing.MultiTapeTM.encUnary
The seed length is efficiently available in unary.
Evaluate the public observation and hidden bit from a saved seed.
- efficient : Turing.MultiTapeTM.ComputableInPolyTime (fun (input : ℕ × List Bool) => self.evaluate input.1 input.2) (Turing.MultiTapeTM.encPair Turing.MultiTapeTM.encUnary Turing.MultiTapeTM.encBits) (Turing.MultiTapeTM.encPair Turing.MultiTapeTM.encBits Turing.MultiTapeTM.encBool)
Evaluation is one polynomial-time word program, also on malformed seeds.
- distribution (n : ℕ) : PMF.map (self.evaluate n) (BitString.uniformList (self.length n)) = PMF.map (fun (output : pair.Observation n × Bool) => ((pair.encode n) output.1, output.2)) (pair.joint n)
Uniform seeds realize exactly the original finite joint law.
Instances For
The equivalent tidy contract used internally by compositional proofs.
The equivalent tidy contract used internally by compositional proofs.
A strict PPT sampler supplies an efficient uniform-seed realization with no additional computability or sampling assumption.
Every well-formed seed produces an outcome in the support of the original finite law.
Every well-formed seed produces an encoded observation and bit in the original finite law.
A bound on supported observations also bounds the evaluator on every correctly sized seed.
The evaluator's finite mathematical output on a well-formed seed. No search over observations is run: its word representation is exactly the efficient evaluator's output.
Instances For
The finite view preserves the evaluator's complete output, including the hidden bit.
The uniform finite-seed presentation has the original joint law.
Retain the complete sampler seed together with its finite output.
Instances For
Sample the finite mathematical view and retain every original seed bit. This relabelling
has no efficiency claim; sampleWithSeed below is its efficient encoded realization.
Instances For
Finite uniform sampling realizes the complete latent output/seed law.
Forgetting the retained seed recovers the pair's original joint law.
Keeping the seed retains its full pointwise information bound.
An ordinary program returns the observation, label, and complete seed, including unused coins. The evaluator is the same deterministic program supplied by the sampler's certificate.
Instances For
Retaining the seed preserves strict PPT; no conditional sampling is performed.
The efficient program exactly realizes the finite joint experiment with its retained seed.
Every possible output has at least the probability of one complete seed.
Independent repetitions concentrate their conditional information around the Shannon entropy of the pair. The loss accounts for the sampler's full saved seed length.
Revealing the observation and hidden bit leaves exactly the remaining seed entropy. This identity also counts coins that the sampler never inspected.