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