Detected breaking change in matching lambda expressions.
(Also pretty printing declares match when programs are the same modulo simplification).
Here's a minimal example.
require import AllCore.
module Foo = {
proc foo1() : (int -> int) = {
var x;
x <- fun i => 2*256;
return x;
}
proc foo2() : (int -> int) = {
var x;
x <- fun i => 512;
return x;
}
}.
equiv foo : Foo.foo1 ~ Foo.foo2 :
true ==> ={res}.
proc. sim.

Detected breaking change in matching lambda expressions.
(Also pretty printing declares match when programs are the same modulo simplification).
Here's a minimal example.