SKIP ABORT SKIP | ABORT DO SKIP | ABORT OD IF SKIP | ABORT FI SAVE Foo IN SKIP | ABORT END { SKIP | ABORT } SKIP ; SKIP SKIP ; SKIP ; SKIP SKIP ; SKIP | ABORT ; ABORT NOT FALSE AND TRUE -> SKIP IF NOT FALSE AND TRUE -> SKIP FI x < y -> SKIP ; SKIP x < y -> SKIP | FALSE -> SKIP; SKIP x < y -> SKIP ; SKIP | ABORT x < y -> SKIP ; { SKIP | ABORT } x < y -> { SKIP ; SKIP | ABORT } { x < y -> SKIP } ; SKIP | ABORT VAR z IN SKIP ; x < y -> SKIP ; SKIP END | ABORT x < y -> VAR z IN z = x -> SKIP ; SKIP END | ABORT x, y.z := 2, "Text" x, y := (z, w):Foo.P(s, t) VAR x, y, z IN SKIP END VAR x, y, z IN VAR u, v IN SKIP END END VAR x, y ~ 3, z IN u, v := 2, t END Foo.P(3, x) x.y:Foo.P(3, x) x.y:Foo.P(3, x) ; SKIP Foo.P(); Bar.P(); SKIP x.y:Foo.P(3, x) -> SKIP x * y + z < 3 -> SKIP x REL (a, b) = (0, 0) AND Bar(x) -> SKIP Bar(x) AND x REL (a, b) = (0, 0) -> SKIP x = FALSE -> SKIP IF x = FALSE -> SKIP FI