Indirect Equality and Inclusion
Among the great enablers of concise reasoning
ā(x,y::x=yā”ā(z::R.z.xā”R.z.y))
ReflexiveAR
AntisymmetricAR
sig A { R: set A }
check {
{ Reflexive[A,R]
Antisymmetric[A,R]
} implies {
all x,y: A | x = y iff (all z: A | z->x in R iff z->y in R)
}
} for 10 expect 0
ā(x,y::x=yā”ā(z::R.x.zā”R.y.z))
ReflexiveAR
AntisymmetricAR
sig A { R: set A }
check {
{ Reflexive[A,R]
Antisymmetric[A,R]
} implies {
all x,y: A | x = y iff (all z: A | x->z in R iff y->z in R)
}
} for 10 expect 0
Last updated