Each line you enter will be parsed and compiled as a total command. > IF (E a :: p1(2)) -> SKIP FI IF SAFE((p1[0](2)) ? (); SKIP; (TRUE) ? ()); SKIP FI L0 PUSHM3NIL 1 L2 PUSHNUM 2 L7 CALL 0 L12 DECSP 1 L14 FJUMP L20 L17 JUMP L22 L20 ERROR 3 L22 C-ON L23 RET L24 ERROR 4 > IF VAR a, b IN a = f1(2) AND p1(0) AND a = b -> SKIP END FI IF SAFE((p1[0](0)) ? (); a[1] := f1[0](2); b[2] := a[1]; SKIP); SKIP FI L0 PUSHM3NIL 2 L2 PUSHNUM 0 L7 CALL 0 L12 DECSP 1 L14 FJUMP L46 L17 INCSP 1 L19 PUSHNUM 2 L24 CALL 0 L29 DECSP 1 L31 UJUMP L46 L34 POPL 1 L37 PUSHL 1 L40 POPL 2 L43 JUMP L48 L46 ERROR 3 L48 C-ON L49 RET L50 ERROR 4 > IF VAR a,b,c,d IN b = f1(a) AND 6 = a -> SKIP END FI IF SAFE(a[1] := 6; b[2] := f1[0](a[1]); SKIP; (TRUE) ? (d[4], c[3])); SKIP FI L0 PUSHM3NIL 4 L2 PUSHNUM 6 L7 POPL 1 L10 INCSP 1 L12 PUSHL 1 L15 CALL 0 L20 DECSP 1 L22 UJUMP L31 L25 POPL 2 L28 JUMP L33 L31 ERROR 3 L33 C-ON L34 RET L35 ERROR 4 > IF VAR a,b,c,d IN f2(b,c) = d AND f1(a)=c AND b=f1(a) AND 6=a -> SKIP END FI IF SAFE(a[1] := 6; c[3] := f1[0](a[1]); b[2] := f1[0](a[1]); d[4] := f2[0](b[2], c[3]); SKIP); SKIP FI L0 PUSHM3NIL 4 L2 PUSHNUM 6 L7 POPL 1 L10 INCSP 1 L12 PUSHL 1 L15 CALL 0 L20 DECSP 1 L22 UJUMP L70 L25 POPL 3 L28 INCSP 1 L30 PUSHL 1 L33 CALL 0 L38 DECSP 1 L40 UJUMP L70 L43 POPL 2 L46 INCSP 1 L48 PUSHL 2 L51 PUSHL 3 L54 CALL 0 L59 DECSP 2 L61 UJUMP L70 L64 POPL 4 L67 JUMP L72 L70 ERROR 3 L72 C-ON L73 RET L74 ERROR 4 > IF VAR a,b,c,d IN REAL(d) AND d=b+c AND b=a+6 AND c=a*a AND 8=a -> SKIP END FI IF SAFE(a[1] := 8; b[2] := a[1] + 6; c[3] := a[1] * a[1]; d[4] := b[2] + c[3]; (REAL(d[4])) ? (); SKIP); SKIP FI L0 PUSHM3NIL 4 L2 PUSHNUM 8 L7 POPL 1 L10 PUSHL 1 L13 PUSHNUM 6 L18 ADD L58 L21 POPL 2 L24 PUSHL 1 L27 PUSHL 1 L30 MULTIPLY L58 L33 POPL 3 L36 PUSHL 2 L39 PUSHL 3 L42 ADD L58 L45 POPL 4 L48 PUSHL 4 L51 IS-REAL L52 FJUMP L58 L55 JUMP L60 L58 ERROR 3 L60 C-ON L61 RET L62 ERROR 4 > IF VAR a,b,d,e IN TEXT(d) AND 2=e*d AND b=a+6 AND 8=a -> SKIP END FI IF SAFE(a[1] := 8; b[2] := a[1] + 6; SKIP; (TEXT(d[3]) AND 2 = e[4] * d[3]) ? (e[4], d[3])); SKIP FI L0 PUSHM3NIL 4 L2 PUSHNUM 8 L7 POPL 1 L10 PUSHL 1 L13 PUSHNUM 6 L18 ADD L65 L21 POPL 2 L24 PUSHM3NIL 2 L26 PUSHNUM 2 L31 SOLVE 2, 1, 2: IS-TEXT(b) c=a*b L48 TJUMP L56 L51 DECSP 2 L53 JUMP L65 L56 POPL 3 L59 POPL 4 L62 JUMP L67 L65 ERROR 3 L67 C-ON L68 RET L69 ERROR 4 > IF VAR a,b IN a = SIN(b) AND b = 2 * a -> SKIP END FI IF SAFE((a[1] = SIN(b[2]) AND b[2] = 2 * a[1]) ? (a[1], b[2])); SKIP FI L0 PUSHM3NIL 2 L2 PUSHM3NIL 2 L4 PUSHNUM 2 L9 SOLVE 2, 1, 2: a=SIN(b) b=c*a L28 TJUMP L36 L31 DECSP 2 L33 JUMP L45 L36 POPL 2 L39 POPL 1 L42 JUMP L47 L45 ERROR 3 L47 C-ON L48 RET L49 ERROR 4 > VAR y IN IF VAR x,z IN x = y - z -> SKIP END FI END IF SAFE((y[1] = z[3] + x[2]) ? (x[2], z[3])); SKIP FI L0 PUSHM3NIL 3 L2 PUSHM3NIL 2 L4 PUSHL 1 L7 SOLVE 2, 1, 1: c=b+a L21 TJUMP L29 L24 DECSP 2 L26 JUMP L38 L29 POPL 3 L32 POPL 2 L35 JUMP L40 L38 ERROR 3 L40 C-ON L41 RET L42 ERROR 4 > IF VAR d,c IN CAR(c) = d -> SKIP END FI IF SAFE((c[2] = (d[1], c[3])) ? (d[1], c[2], )); SKIP FI L0 PUSHM3NIL 3 L2 PUSHM3NIL 3 L4 SOLVE 3, 0, 1: b=(a,c) L18 TJUMP L26 L21 DECSP 3 L23 JUMP L37 L26 DECSP 1 L28 POPL 2 L31 POPL 1 L34 JUMP L39 L37 ERROR 3 L39 C-ON L40 RET L41 ERROR 4 > VAR list IN IF VAR c IN CAR(c) = list -> SKIP END FI END IF SAFE((c[2] = (list[1], c[3])) ? (c[2], )); SKIP FI L0 PUSHM3NIL 3 L2 PUSHM3NIL 2 L4 PUSHL 1 L7 SOLVE 2, 1, 1: a=(c,b) L21 TJUMP L29 L24 DECSP 2 L26 JUMP L37 L29 DECSP 1 L31 POPL 2 L34 JUMP L39 L37 ERROR 3 L39 C-ON L40 RET L41 ERROR 4 > IF VAR x,y,z IN x = y - z -> SKIP END FI IF SAFE((y[2] = z[3] + x[1]) ? (x[1], y[2], z[3])); SKIP FI L0 PUSHM3NIL 3 L2 PUSHM3NIL 3 L4 SOLVE 3, 0, 1: b=c+a L18 TJUMP L26 L21 DECSP 3 L23 JUMP L38 L26 POPL 3 L29 POPL 2 L32 POPL 1 L35 JUMP L40 L38 ERROR 3 L40 C-ON L41 RET L42 ERROR 4 > IF VAR x,y IN x = CDR(y) -> SKIP END FI IF SAFE((y[2] = (c[3], x[1])) ? (x[1], y[2], )); SKIP FI L0 PUSHM3NIL 3 L2 PUSHM3NIL 3 L4 SOLVE 3, 0, 1: b=(c,a) L18 TJUMP L26 L21 DECSP 3 L23 JUMP L37 L26 DECSP 1 L28 POPL 2 L31 POPL 1 L34 JUMP L39 L37 ERROR 3 L39 C-ON L40 RET L41 ERROR 4 > SKIP ; SKIP ; VAR x ~ 1 IN DO x < 10 -> x := x + 1 OD END SKIP; SKIP; SAFE(x[1] := 1; SKIP; (TRUE) ? (~x[1])); DO (x[1] < 10) ? (); x[1] := x[1] + 1 OD L0 PUSHM3NIL 1 L2 PUSHNUM 1 L7 POPL 1 L10 PUSHL 1 L13 PUSHNUM 10 L18 LESS L19 FJUMP L39 L22 PUSHL 1 L25 PUSHNUM 1 L30 ADD L41 L33 POPL 1 L36 JUMP L10 L39 C-ON L40 RET L41 ERROR 4 > IF VAR c=10 IN DO c >= 0 -> VAR p=(COS(c), SIN(c)) IN c := c-1 END OD END FI IF SAFE(c[1] := 10; SKIP); DO SAFE((c[1] >= 0) ? (); _x[4] := SIN(c[1]); _x[3] := COS(c[1]); p[2] := (_x[3], _x[4]); SKIP); c[1] := c[1] - 1 OD FI L0 PUSHM3NIL 4 L2 PUSHNUM 10 L7 POPL 1 L10 PUSHNUM 0 L15 PUSHL 1 L18 AT-MOST L19 FJUMP L69 L22 PUSHL 1 L25 SIN L69 L28 POPL 4 L31 PUSHL 1 L34 COS L69 L37 POPL 3 L40 PUSHL 3 L43 PUSHL 4 L46 CONS L47 POPL 2 L50 PUSHL 1 L53 PUSHNUM 1 L58 SUBTRACT L71 L61 POPL 1 L64 JUMP L10 L67 ERROR 3 L69 C-ON L70 RET L71 ERROR 4 > IF VAR c=10 IN DO c # 0 -> VAR p = (COS(c), SIN(c)) IN c := c-1 END OD END FI IF SAFE(c[1] := 10; SKIP); DO SAFE(FLIP((c[1] = 0) ? ()); _x[4] := SIN(c[1]); _x[3] := COS(c[1]); p[2] := (_x[3], _x[4]); SKIP); c[1] := c[1] - 1 OD FI L0 PUSHM3NIL 4 L2 PUSHNUM 10 L7 POPL 1 L10 PUSHL 1 L13 PUSHNUM 0 L18 EQUAL L19 FJUMP L25 L22 JUMP L72 L25 PUSHL 1 L28 SIN L72 L31 POPL 4 L34 PUSHL 1 L37 COS L72 L40 POPL 3 L43 PUSHL 3 L46 PUSHL 4 L49 CONS L50 POPL 2 L53 PUSHL 1 L56 PUSHNUM 1 L61 SUBTRACT L74 L64 POPL 1 L67 JUMP L10 L70 ERROR 3 L72 C-ON L73 RET L74 ERROR 4 > IF VAR x ~ y, y ~ 2 IN x = y -> SKIP END FI IF SAFE(y[2] := 2; x[1] := y[2]; SKIP; (x[1] = y[2]) ? (~x[1], ~y[2])); SKIP FI L0 PUSHM3NIL 2 L2 PUSHNUM 2 L7 POPL 2 L10 PUSHL 2 L13 POPL 1 L16 PUSHL 1 L19 PUSHL 2 L22 SOLVE 2, 0, 1: a=b L34 TJUMP L42 L37 DECSP 2 L39 JUMP L51 L42 POPL 2 L45 POPL 1 L48 JUMP L53 L51 ERROR 3 L53 C-ON L54 RET L55 ERROR 4 > IF (E x ~ y, y ~ 2 :: x = y) -> SKIP FI IF SAFE(y[2] := 2; x[1] := y[2]; SKIP; (x[1] = y[2]) ? (<~x[1]>, <~y[2]>)); SKIP FI L0 PUSHM3NIL 2 L2 PUSHNUM 2 L7 POPL 2 L10 PUSHL 2 L13 POPL 1 L16 PUSHL 1 L19 PUSHL 2 L22 SOLVE 2, 0, 1: a=b L34 TJUMP L42 L37 DECSP 2 L39 JUMP L47 L42 DECSP 2 L44 JUMP L49 L47 ERROR 3 L49 C-ON L50 RET L51 ERROR 4 > IF VAR x IN x + 3 = 2 -> SKIP END FI IF SAFE((2 = x[1] + 3) ? (x[1])); SKIP FI L0 PUSHM3NIL 1 L2 PUSHM3NIL 1 L4 PUSHNUM 2 L9 PUSHNUM 3 L14 SOLVE 1, 2, 1: b=a+c L28 TJUMP L36 L31 DECSP 1 L33 JUMP L42 L36 POPL 1 L39 JUMP L44 L42 ERROR 3 L44 C-ON L45 RET L46 ERROR 4 > IF VAR x ~ 1 IN x + 3 = 2 -> SKIP END FI IF SAFE(x[1] := 1; SKIP; (2 = x[1] + 3) ? (~x[1])); SKIP FI L0 PUSHM3NIL 1 L2 PUSHNUM 1 L7 POPL 1 L10 PUSHL 1 L13 PUSHNUM 2 L18 PUSHNUM 3 L23 SOLVE 1, 2, 1: b=a+c L37 TJUMP L45 L40 DECSP 1 L42 JUMP L51 L45 POPL 1 L48 JUMP L53 L51 ERROR 3 L53 C-ON L54 RET L55 ERROR 4 > IF VAR x IN x ~ 1 AND x + 3 = 2 -> SKIP END FI IF SAFE(x[1] := 1; SKIP; (2 = x[1] + 3) ? (~x[1])); SKIP FI L0 PUSHM3NIL 1 L2 PUSHNUM 1 L7 POPL 1 L10 PUSHL 1 L13 PUSHNUM 2 L18 PUSHNUM 3 L23 SOLVE 1, 2, 1: b=a+c L37 TJUMP L45 L40 DECSP 1 L42 JUMP L51 L45 POPL 1 L48 JUMP L53 L51 ERROR 3 L53 C-ON L54 RET L55 ERROR 4 > IF (E x :: x + 3 = 2) -> SKIP FI IF SAFE((2 = x[1] + 3) ? ()); SKIP FI L0 PUSHM3NIL 1 L2 PUSHM3NIL 1 L4 PUSHNUM 2 L9 PUSHNUM 3 L14 SOLVE 1, 2, 1: b=a+c L28 TJUMP L36 L31 DECSP 1 L33 JUMP L41 L36 DECSP 1 L38 JUMP L43 L41 ERROR 3 L43 C-ON L44 RET L45 ERROR 4 > IF (E x~1 :: x + 3 = 2) -> SKIP FI IF SAFE(x[1] := 1; SKIP; (2 = x[1] + 3) ? (<~x[1]>)); SKIP FI L0 PUSHM3NIL 1 L2 PUSHNUM 1 L7 POPL 1 L10 PUSHL 1 L13 PUSHNUM 2 L18 PUSHNUM 3 L23 SOLVE 1, 2, 1: b=a+c L37 TJUMP L45 L40 DECSP 1 L42 JUMP L50 L45 DECSP 1 L47 JUMP L52 L50 ERROR 3 L52 C-ON L53 RET L54 ERROR 4 > IF (E x,y :: x + y = 3) -> SKIP FI IF SAFE((3 = x[1] + y[2]) ? (, )); SKIP FI L0 PUSHM3NIL 2 L2 PUSHM3NIL 2 L4 PUSHNUM 3 L9 SOLVE 2, 1, 1: c=b+a L23 TJUMP L31 L26 DECSP 2 L28 JUMP L36 L31 DECSP 2 L33 JUMP L38 L36 ERROR 3 L38 C-ON L39 RET L40 ERROR 4 > IF (E x, y ~ 1 :: x + y = 3) -> SKIP FI IF SAFE(y[2] := 1; SKIP; (3 = x[1] + y[2]) ? (, <~y[2]>)); SKIP FI L0 PUSHM3NIL 2 L2 PUSHNUM 1 L7 POPL 2 L10 PUSHM3NIL 1 L12 PUSHL 2 L15 PUSHNUM 3 L20 SOLVE 2, 1, 1: c=a+b L34 TJUMP L42 L37 DECSP 2 L39 JUMP L47 L42 DECSP 2 L44 JUMP L49 L47 ERROR 3 L49 C-ON L50 RET L51 ERROR 4 > IF VAR z IN (E x, y ~ 1 :: x + y = z) -> SKIP END FI IF SAFE(y[3] := 1; SKIP; (z[1] = x[2] + y[3]) ? (z[1], , <~y[3]>)); SKIP FI L0 PUSHM3NIL 3 L2 PUSHNUM 1 L7 POPL 3 L10 PUSHM3NIL 2 L12 PUSHL 3 L15 SOLVE 3, 0, 1: a=b+c L29 TJUMP L37 L32 DECSP 3 L34 JUMP L45 L37 DECSP 2 L39 POPL 1 L42 JUMP L47 L45 ERROR 3 L47 C-ON L48 RET L49 ERROR 4 > IF VAR c=10 IN DO NOT c=0 -> VAR p=(COS(c), SIN(c)) IN c := c-1 END OD END FI IF SAFE(c[1] := 10; SKIP); DO SAFE(FLIP(SAFE((c[1] = 0) ? (); SKIP)); _x[4] := SIN(c[1]); _x[3] := COS(c[1]); p[2] := (_x[3], _x[4]); SKIP); c[1] := c[1] - 1 OD FI L0 PUSHM3NIL 4 L2 PUSHNUM 10 L7 POPL 1 L10 PUSHL 1 L13 PUSHNUM 0 L18 EQUAL L19 FJUMP L25 L22 JUMP L72 L25 PUSHL 1 L28 SIN L72 L31 POPL 4 L34 PUSHL 1 L37 COS L72 L40 POPL 3 L43 PUSHL 3 L46 PUSHL 4 L49 CONS L50 POPL 2 L53 PUSHL 1 L56 PUSHNUM 1 L61 SUBTRACT L74 L64 POPL 1 L67 JUMP L10 L70 ERROR 3 L72 C-ON L73 RET L74 ERROR 4 > IF VAR c=10 IN DO NOT c#0 -> VAR p=(COS(c), SIN(c)) IN c := c-1 END OD END FI IF SAFE(c[1] := 10; SKIP); DO SAFE(FLIP(SAFE(FLIP((c[1] = 0) ? ()); SKIP)); _x[4] := SIN(c[1]); _x[3] := COS(c[1]); p[2] := (_x[3], _x[4]); SKIP); c[1] := c[1] - 1 OD FI L0 PUSHM3NIL 4 L2 PUSHNUM 10 L7 POPL 1 L10 PUSHL 1 L13 PUSHNUM 0 L18 EQUAL L19 FJUMP L25 L22 JUMP L28 L25 JUMP L75 L28 PUSHL 1 L31 SIN L75 L34 POPL 4 L37 PUSHL 1 L40 COS L75 L43 POPL 3 L46 PUSHL 3 L49 PUSHL 4 L52 CONS L53 POPL 2 L56 PUSHL 1 L59 PUSHNUM 1 L64 SUBTRACT L77 L67 POPL 1 L70 JUMP L10 L73 ERROR 3 L75 C-ON L76 RET L77 ERROR 4 > IF VAR x IN x = 3 -> IF INT(x) -> VAR y IN y = x + 1 -> SKIP END FI END FI IF SAFE(x[1] := 3; SKIP); IF SAFE((INT(x[1])) ? (); y[2] := x[1] + 1; SKIP); SKIP FI FI L0 PUSHM3NIL 2 L2 PUSHNUM 3 L7 POPL 1 L10 PUSHL 1 L13 IS-INT L14 FJUMP L34 L17 PUSHL 1 L20 PUSHNUM 1 L25 ADD L34 L28 POPL 2 L31 JUMP L38 L34 ERROR 3 L36 ERROR 3 L38 C-ON L39 RET L40 ERROR 4 > IF VAR x IN x = 3 -> IF VAR y IN INT(x) AND y = x + 1 -> SKIP END FI END FI IF SAFE(x[1] := 3; SKIP); IF SAFE((INT(x[1])) ? (); y[2] := x[1] + 1; SKIP); SKIP FI FI L0 PUSHM3NIL 2 L2 PUSHNUM 3 L7 POPL 1 L10 PUSHL 1 L13 IS-INT L14 FJUMP L34 L17 PUSHL 1 L20 PUSHNUM 1 L25 ADD L34 L28 POPL 2 L31 JUMP L38 L34 ERROR 3 L36 ERROR 3 L38 C-ON L39 RET L40 ERROR 4 > IF VAR x IN x = 3 -> IF VAR y IN INT(y) AND y = x + 1 -> SKIP END FI END FI IF SAFE(x[1] := 3; SKIP); IF SAFE(y[2] := x[1] + 1; (INT(y[2])) ? (); SKIP); SKIP FI FI L0 PUSHM3NIL 2 L2 PUSHNUM 3 L7 POPL 1 L10 PUSHL 1 L13 PUSHNUM 1 L18 ADD L34 L21 POPL 2 L24 PUSHL 2 L27 IS-INT L28 FJUMP L34 L31 JUMP L38 L34 ERROR 3 L36 ERROR 3 L38 C-ON L39 RET L40 ERROR 4 > IF VAR x IN x = 2 -> IF NOT x = 3 -> VAR y IN y = x -> SKIP END FI END FI IF SAFE(x[1] := 2; SKIP); IF SAFE(FLIP(SAFE((x[1] = 3) ? (); SKIP)); y[2] := x[1]; SKIP); SKIP FI FI L0 PUSHM3NIL 2 L2 PUSHNUM 2 L7 POPL 1 L10 PUSHL 1 L13 PUSHNUM 3 L18 EQUAL L19 FJUMP L25 L22 JUMP L34 L25 PUSHL 1 L28 POPL 2 L31 JUMP L38 L34 ERROR 3 L36 ERROR 3 L38 C-ON L39 RET L40 ERROR 4 > IF (E x :: x*x=2) OR (E y :: y*y=3) -> SKIP FI IF SAFE((2 = x[1] * x[1]) ? ()) | SAFE((3 = y[2] * y[2]) ? ()); SKIP FI L0 PUSHM3NIL 2 L2 PUSHM3NIL 1 L4 PUSHNUM 2 L9 SOLVE 1, 1, 1: b=a*a L23 TJUMP L31 L26 DECSP 1 L28 JUMP L36 L31 DECSP 1 L33 JUMP L67 L36 PUSHM3NIL 1 L38 PUSHNUM 3 L43 SOLVE 1, 1, 1: b=a*a L57 TJUMP L65 L60 DECSP 1 L62 JUMP L70 L65 DECSP 1 L67 JUMP L72 L70 ERROR 3 L72 C-ON L73 RET L74 ERROR 4 > IF (E x :: x*x=2) OR (E y :: y*y=3) -> VAR z IN z*z=4 -> SKIP END FI IF SAFE(SAFE((2 = x[1] * x[1]) ? ()) | SAFE((3 = y[2] * y[2]) ? ()); SKIP; (4 = z[3] * z[3]) ? (z[3])); SKIP FI L0 PUSHM3NIL 3 L2 PUSHM3NIL 1 L4 PUSHNUM 2 L9 SOLVE 1, 1, 1: b=a*a L23 TJUMP L31 L26 DECSP 1 L28 JUMP L36 L31 DECSP 1 L33 JUMP L67 L36 PUSHM3NIL 1 L38 PUSHNUM 3 L43 SOLVE 1, 1, 1: b=a*a L57 TJUMP L65 L60 DECSP 1 L62 JUMP L102 L65 DECSP 1 L67 PUSHM3NIL 1 L69 PUSHNUM 4 L74 SOLVE 1, 1, 1: b=a*a L88 TJUMP L96 L91 DECSP 1 L93 JUMP L102 L96 POPL 3 L99 JUMP L104 L102 ERROR 3 L104 C-ON L105 RET L106 ERROR 4 > IF VAR w IN (E x :: x*x=2) OR (E y::y*y=3) -> VAR z IN z*z=4 -> SKIP END END FI IF SAFE(SAFE((2 = x[2] * x[2]) ? ()) | SAFE((3 = y[3] * y[3]) ? ()); SKIP; (4 = z[4] * z[4]) ? (w[1], z[4])); SKIP FI L0 PUSHM3NIL 4 L2 PUSHM3NIL 1 L4 PUSHNUM 2 L9 SOLVE 1, 1, 1: b=a*a L23 TJUMP L31 L26 DECSP 1 L28 JUMP L36 L31 DECSP 1 L33 JUMP L67 L36 PUSHM3NIL 1 L38 PUSHNUM 3 L43 SOLVE 1, 1, 1: b=a*a L57 TJUMP L65 L60 DECSP 1 L62 JUMP L105 L65 DECSP 1 L67 PUSHM3NIL 2 L69 PUSHNUM 4 L74 SOLVE 2, 1, 1: c=b*b L88 TJUMP L96 L91 DECSP 2 L93 JUMP L105 L96 POPL 4 L99 POPL 1 L102 JUMP L107 L105 ERROR 3 L107 C-ON L108 RET L109 ERROR 4 > IF VAR w IN (E x :: x*x=w) -> SKIP END FI IF SAFE((w[1] = x[2] * x[2]) ? (, w[1])); SKIP FI L0 PUSHM3NIL 2 L2 PUSHM3NIL 2 L4 SOLVE 2, 0, 1: b=a*a L18 TJUMP L26 L21 DECSP 2 L23 JUMP L34 L26 POPL 1 L29 DECSP 1 L31 JUMP L36 L34 ERROR 3 L36 C-ON L37 RET L38 ERROR 4 > IF VAR a, b, c IN TRUE OR a = b + c AND a * 2 = c -> SKIP END FI IF SAFE((TRUE) ? (a[1], b[2], c[3])); SKIP FI L0 PUSHM3NIL 3 L2 JUMP L7 L5 ERROR 3 L7 C-ON L8 RET L9 ERROR 4 > IF VAR a, b, c IN a = b + c AND a * 2 = c OR TRUE -> SKIP END FI IF SAFE((TRUE) ? (a[1], b[2], c[3])); SKIP FI L0 PUSHM3NIL 3 L2 JUMP L7 L5 ERROR 3 L7 C-ON L8 RET L9 ERROR 4 > IF VAR a, b, c IN a = b + c OR TRUE OR a * 2 = c -> SKIP END FI IF SAFE((TRUE) ? (a[1], b[2], c[3])); SKIP FI L0 PUSHM3NIL 3 L2 JUMP L7 L5 ERROR 3 L7 C-ON L8 RET L9 ERROR 4 > IF VAR x IN NOT NOT NOT (E y :: y = 2) AND x = 3 -> SKIP END FI IF SAFE(FLIP(SAFE(FLIP(SAFE(FLIP(SAFE(y[2] := 2; SKIP)); SKIP)); SKIP)); x[1] := 3; SKIP); SKIP FI L0 PUSHM3NIL 2 L2 PUSHNUM 2 L7 POPL 2 L10 JUMP L16 L13 JUMP L19 L16 JUMP L30 L19 PUSHNUM 3 L24 POPL 1 L27 JUMP L32 L30 ERROR 3 L32 C-ON L33 RET L34 ERROR 4 > IF VAR x IN NOT NOT NOT (E y :: y = x) AND x = 3 -> SKIP END FI IF SAFE(x[1] := 3; FLIP(SAFE(FLIP(SAFE(FLIP(SAFE(y[2] := x[1]; SKIP)); SKIP)); SKIP)); SKIP); SKIP FI L0 PUSHM3NIL 2 L2 PUSHNUM 3 L7 POPL 1 L10 PUSHL 1 L13 POPL 2 L16 JUMP L22 L19 JUMP L25 L22 JUMP L28 L25 JUMP L30 L28 ERROR 3 L30 C-ON L31 RET L32 ERROR 4 > VAR x IN x:=3; IF x < 0 OR (E y~1 :: y*y=x) -> VAR y IN y=x-2->SKIP END FI END x[1] := 3; IF SAFE(SAFE((x[1] < 0) ? (); SKIP) | SAFE(y[2] := 1; SKIP; (x[1] = y[2] * y[2]) ? (<~y[2]>)); y[3] := x[1] - 2; SKIP); SKIP FI L0 PUSHM3NIL 3 L2 PUSHNUM 3 L7 POPL 1 L10 PUSHL 1 L13 PUSHNUM 0 L18 LESS L19 FJUMP L25 L22 JUMP L63 L25 PUSHNUM 1 L30 POPL 2 L33 PUSHL 2 L36 PUSHL 1 L39 SOLVE 1, 1, 1: b=a*a L53 TJUMP L61 L56 DECSP 1 L58 JUMP L80 L61 DECSP 1 L63 PUSHL 1 L66 PUSHNUM 2 L71 SUBTRACT L80 L74 POPL 3 L77 JUMP L82 L80 ERROR 3 L82 C-ON L83 RET L84 ERROR 4 > IF VAR x, y IN x = 2 -> x := y END FI IF SAFE(x[1] := 2; SKIP; (TRUE) ? (y[2])); x[1] := y[2] FI L0 PUSHM3NIL 2 L2 PUSHNUM 2 L7 POPL 1 L10 PUSHL 2 L13 POPL 1 L16 JUMP L21 L19 ERROR 3 L21 C-ON L22 RET L23 ERROR 4 > IF VAR a ~ 1 IN a * a = 2 -> { 0 = 1 -> a := 0 | a := 1 } END FI IF SAFE((0 = 1) ? (); a[1] := 1; SKIP; (2 = a[1] * a[1]) ? (~a[1])); a[1] := 0 | SAFE(a[1] := 1; SKIP; (2 = a[1] * a[1]) ? (~a[1])); a[1] := 1 FI L0 PUSHM3NIL 1 L2 PUSHNUM 0 L7 PUSHNUM 1 L12 EQUAL L13 FJUMP L68 L16 PUSHNUM 1 L21 POPL 1 L24 PUSHL 1 L27 PUSHNUM 2 L32 SOLVE 1, 1, 1: b=a*a L46 TJUMP L54 L49 DECSP 1 L51 JUMP L68 L54 POPL 1 L57 PUSHNUM 0 L62 POPL 1 L65 JUMP L122 L68 PUSHNUM 1 L73 POPL 1 L76 PUSHL 1 L79 PUSHNUM 2 L84 SOLVE 1, 1, 1: b=a*a L98 TJUMP L106 L101 DECSP 1 L103 JUMP L120 L106 POPL 1 L109 PUSHNUM 1 L114 POPL 1 L117 JUMP L122 L120 ERROR 3 L122 C-ON L123 RET L124 ERROR 4 > IF VAR x IN x := 1; x := 2; x := 3; x := 4 END FI IF x[1] := 1; x[1] := 2; x[1] := 3; x[1] := 4 FI L0 PUSHM3NIL 1 L2 PUSHNUM 1 L7 POPL 1 L10 PUSHNUM 2 L15 POPL 1 L18 PUSHNUM 3 L23 POPL 1 L26 PUSHNUM 4 L31 POPL 1 L34 JUMP L39 L37 ERROR 3 L39 C-ON L40 RET L41 ERROR 4 > IF VAR x IN x := 0; DO x < 10 -> x := x + 1 OD; x := 0 END FI IF x[1] := 0; DO (x[1] < 10) ? (); x[1] := x[1] + 1 OD; x[1] := 0 FI L0 PUSHM3NIL 1 L2 PUSHNUM 0 L7 POPL 1 L10 PUSHL 1 L13 PUSHNUM 10 L18 LESS L19 FJUMP L39 L22 PUSHL 1 L25 PUSHNUM 1 L30 ADD L54 L33 POPL 1 L36 JUMP L10 L39 PUSHNUM 0 L44 POPL 1 L47 JUMP L52 L50 ERROR 3 L52 C-ON L53 RET L54 ERROR 4 > ^D