зеркало из https://github.com/microsoft/ivy.git
24 строки
426 B
XML
24 строки
426 B
XML
#lang ivy1.6
|
|
|
|
type t
|
|
|
|
relation foo(V1: t, V2: t)
|
|
relation bar(V3: t)
|
|
|
|
init ~foo(V4, V5)
|
|
init ~bar(V6)
|
|
|
|
action receive(c1: t, c2: t) = {
|
|
assume exists X. foo(c2, X);
|
|
assume c1 ~= c2;
|
|
bar(c1) := true;
|
|
}
|
|
|
|
export receive
|
|
|
|
# bug does not manifest without the following conjecture
|
|
conjecture foo(V7, V8) -> V7 = V8
|
|
|
|
# bug manifrsts when using X below, and not another variable name below
|
|
conjecture bar(X) -> foo(X, V9)
|