Skip to content

Added exact lemma for parameteriezed global hybrids.#992

Open
alleystoughton wants to merge 1 commit intomainfrom
new-global-hybrid-lemma
Open

Added exact lemma for parameteriezed global hybrids.#992
alleystoughton wants to merge 1 commit intomainfrom
new-global-hybrid-lemma

Conversation

@alleystoughton
Copy link
Copy Markdown
Member

Added global hybrid lemma for hybrids parameterized by oracles that gives
an equality, not just an upper bound. Updated the DDH global hybrid example
to use it. Idea based on the Nominal-SSProve paper "Mechanizing Nested Hybrid
Arguments", https://eprint.iacr.org/2025/1122.

@alleystoughton alleystoughton requested a review from fdupress May 6, 2026 02:11
Copy link
Copy Markdown
Member

@fdupress fdupress left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me. Minor comment on what I think belongs in statements and what I think should be hidden in proofs.


module Hybrid : HYBRID = {
proc main(i : int) : bool = {
proc main(y : unit, i : int) : bool = {
Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perhaps it would be better to keep this as it was, and use transitivity or proc change in the proofs (as opposed to in the definition and statements) to catch the mismatch? This is not blocking merge; just thinking of the "exemplary" quality of examples. (And yes, we should also revisit older examples, that are only exemplary in that they could be done at the time.)

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, but Hybrid is part of the proof. The concluding lemma doesn't mention it.

lemma GReal_GIdeal &m :
  `|Pr[GReal.main() @ &m : res] - Pr[GIdeal.main() @ &m : res]| <=
  (m - 1)%r * (1%r / (2 ^ n)%r)

So I think it's simpler to use the dummy argument.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There is a proof step I want to improve, but should I merge when ready?

Added global hybrid lemma for hybrids parameterized by
oracles that gives an equality, not just an upper bound.
Updated the DDH global hybrid example to use it. Idea based on the
Nominal-SSProve paper "Mechanizing Nested Hybrid
Arguments", https://eprint.iacr.org/2025/1122.
@alleystoughton alleystoughton force-pushed the new-global-hybrid-lemma branch from 33a2845 to b74d6cb Compare May 6, 2026 15:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants