https://github.com/EasyCrypt/easycrypt
Raw File
Tip revision: b37b762cba4daf7702c1b9dc706eedf3bc8061e6 authored by Pierre-Yves Strub on 23 November 2021, 16:58:42 UTC
Prototype implementation of a match statement.
Tip revision: b37b762
TCR.eca
require import AllCore.

type K.
op dk : K distr.

type t_from.
type t_to.

op H : K -> t_from -> t_to.

module type ADV_TCR = {
  proc c1 () : t_from
  proc c2 (k:K) : t_from
}.

module TCR (A:ADV_TCR) = {
  proc main() = {
    var x,y,k;
    x <- A.c1();
    k <$ dk;
    y <- A.c2(k);
    return (H k x = H k y /\ x <> y);
  }
}.


    
back to top