Polymorphic empty relation in Alloy? -
i run alloy command involves finding witnesses existentials, one:
pred foo { x, y : e -> e | baz[x,y] || qux[x,y] }
alloy comes model foo
true. @ model in visualizer, , find y
happens empty relation. want dig deeper model , see whether baz
or qux
true. fire evaluator window , type baz[$foo_x, ???]
. can type ???
? since y
empty, there no variable name $foo_y
. , typing none
or {}
gives type-checking error.
does alloy provide empty relation can used @ type? or there way @ y
witness though it's empty?
i belive baz[$foo_x, none->none] should work. relation none has arity 1, , using cross product can empty relations of desired arity. explanation can found in paper "a type system object models" jonathan edwards, daniel jackson , emina torlak.
Comments
Post a Comment