const x: int; function R(int) returns (bool); function Even(int) returns (bool); var y: int where R(y); var g: int where g == 12; procedure P(x: int where x > 0) returns (y: int where y < 0); requires x < 100; modifies g; ensures -100 < y; procedure Q(x: int where x > 0) returns (y: int where y < 0) requires x < 100; modifies g; ensures (forall t: int where Even(t) :: -100 < y + t) || // error: where not allowed in quant (exists t: int where Even(t) :: -100 < y + t); // error: where not allowed in quant { var a: int; var b: int; start: a := x; call b := P(a); y := b; return; } axiom (forall yu: bool, {:myAttr} x: int :: x < 100); axiom (forall {:myAttr} x: int :: x < 100); axiom (forall {:myAttr} x: T :: x == x);