fact: Definition DH_real : package DH_loc [interface] [interface #val #[query_id] : 'unit → 'pubkey × 'cipher ] := [package #def #[query_id] (_ : 'unit) : 'pubkey × 'cipher { a ← sample uniform i_sk ;; let a := otf a in b ← sample uniform i_sk ;; let b := otf b in #put pk_loc := fto (g^+a) ;; #put sk_loc := fto a ;; ret (fto (g^+a), fto (g^+b, g^+(a * b))) } ].
imports: Relational(OrderEnrichedCategory GenericRulesSimple) mathcomp(all_ssreflect all_algebra reals distr realsum fingroup.fingroup solvable.cyclic prime ssrnat ssreflect ssrfun ssrbool ssrnum eqtype choice seq) Mon(SPropBase) Crypt(Axioms ChoiceAsOrd SubDistr Couplings UniformDistrLemmas FreeProbProg Theta_dens RulesStateProb UniformStateProb pkg_core_definition choice_type pkg_composition pkg_rhl Package Prelude AsymScheme) Coq(Utf8) extructures(ord fset fmap) Equations(Equations)