Convert V1 Sygus files to V2. (#4136)
authorAbdalrhman Mohamed <32971963+abdoo8080@users.noreply.github.com>
Sun, 22 Mar 2020 03:33:15 +0000 (22:33 -0500)
committerGitHub <noreply@github.com>
Sun, 22 Mar 2020 03:33:15 +0000 (22:33 -0500)
151 files changed:
src/parser/smt2/smt2.cpp
test/regress/regress0/expect/scrub.08.sy
test/regress/regress0/sygus/General_plus10.sy
test/regress/regress0/sygus/aig-si.sy
test/regress/regress0/sygus/array-grammar-select.sy
test/regress/regress0/sygus/array-grammar-store.sy
test/regress/regress0/sygus/ccp16.lus.sy
test/regress/regress0/sygus/cegqi-si-string-triv-2fun.sy
test/regress/regress0/sygus/cegqi-si-string-triv.sy
test/regress/regress0/sygus/dt-no-syntax.sy
test/regress/regress0/sygus/dt-sel-parse1.sy
test/regress/regress0/sygus/hd-05-d1-prog-nogrammar.sy
test/regress/regress0/sygus/inv-different-var-order.sy
test/regress/regress0/sygus/issue3624.sy
test/regress/regress0/sygus/let-ringer.sy
test/regress/regress0/sygus/let-simp.sy
test/regress/regress0/sygus/no-syntax-test-bool.sy
test/regress/regress0/sygus/no-syntax-test.sy
test/regress/regress0/sygus/parity-AIG-d0.sy
test/regress/regress0/sygus/parse-bv-let.sy
test/regress/regress0/sygus/pbe-pred-contra.sy
test/regress/regress0/sygus/real-si-all.sy
test/regress/regress0/sygus/strings-unconstrained.sy
test/regress/regress0/sygus/sygus-no-wf.sy
test/regress/regress0/sygus/uminus_one.sy
test/regress/regress0/sygus/univ_3-long-repeat-conflict.sy
test/regress/regress1/rr-verify/bool-crci.sy
test/regress/regress1/rr-verify/bv-term-32.sy
test/regress/regress1/rr-verify/bv-term.sy
test/regress/regress1/rr-verify/fp-arith.sy
test/regress/regress1/rr-verify/fp-bool.sy
test/regress/regress1/rr-verify/string-term.sy
test/regress/regress1/sygus/Base16_1.sy
test/regress/regress1/sygus/VC22_a.sy
test/regress/regress1/sygus/abv.sy
test/regress/regress1/sygus/array_search_2.sy
test/regress/regress1/sygus/array_search_5-Q-easy.sy
test/regress/regress1/sygus/array_sum_2_5.sy
test/regress/regress1/sygus/bvudiv-by-2.sy
test/regress/regress1/sygus/car_3.lus.sy
test/regress/regress1/sygus/cegar1.sy
test/regress/regress1/sygus/cegis-unif-inv-eq-fair.sy
test/regress/regress1/sygus/cegisunif-depth1.sy
test/regress/regress1/sygus/cggmp.sy
test/regress/regress1/sygus/clock-inc-tuple.sy
test/regress/regress1/sygus/commutative-stream.sy
test/regress/regress1/sygus/commutative.sy
test/regress/regress1/sygus/constant-bool-si-all.sy
test/regress/regress1/sygus/constant-dec-tree-bug.sy
test/regress/regress1/sygus/constant-ite-bv.sy
test/regress/regress1/sygus/constant.sy
test/regress/regress1/sygus/crci-ssb-unk.sy
test/regress/regress1/sygus/crcy-si-rcons.sy
test/regress/regress1/sygus/crcy-si.sy
test/regress/regress1/sygus/cube-nia.sy
test/regress/regress1/sygus/double.sy
test/regress/regress1/sygus/dt-test-ns.sy
test/regress/regress1/sygus/dup-op.sy
test/regress/regress1/sygus/enum-test.sy
test/regress/regress1/sygus/error1-dt.sy
test/regress/regress1/sygus/extract.sy
test/regress/regress1/sygus/fg_polynomial3.sy
test/regress/regress1/sygus/find_sc_bvult_bvnot.sy
test/regress/regress1/sygus/hd-01-d1-prog.sy
test/regress/regress1/sygus/hd-sdiv.sy
test/regress/regress1/sygus/ho-sygus.sy
test/regress/regress1/sygus/icfp_14.12-flip-args.sy
test/regress/regress1/sygus/icfp_14.12.sy
test/regress/regress1/sygus/icfp_14_12_diff_types.sy
test/regress/regress1/sygus/icfp_28_10.sy
test/regress/regress1/sygus/icfp_easy-ite.sy
test/regress/regress1/sygus/int-any-const.sy
test/regress/regress1/sygus/inv-example.sy
test/regress/regress1/sygus/inv-missed-sol-true.sy
test/regress/regress1/sygus/inv-unused.sy
test/regress/regress1/sygus/inv_gen_fig8.sy
test/regress/regress1/sygus/issue2914.sy
test/regress/regress1/sygus/issue2935.sy
test/regress/regress1/sygus/issue3320-quant.sy
test/regress/regress1/sygus/issue3649.sy
test/regress/regress1/sygus/large-const-simp.sy
test/regress/regress1/sygus/let-bug-simp.sy
test/regress/regress1/sygus/list-head-x.sy
test/regress/regress1/sygus/logiccell_help.sy
test/regress/regress1/sygus/max2-bv.sy
test/regress/regress1/sygus/multi-fun-polynomial2.sy
test/regress/regress1/sygus/nflat-fwd-3.sy
test/regress/regress1/sygus/nflat-fwd.sy
test/regress/regress1/sygus/nia-max-square-ns.sy
test/regress/regress1/sygus/no-flat-simp.sy
test/regress/regress1/sygus/no-mention.sy
test/regress/regress1/sygus/pbe_multi.sy
test/regress/regress1/sygus/phone-1-long.sy
test/regress/regress1/sygus/planning-unif.sy
test/regress/regress1/sygus/process-10-vars.sy
test/regress/regress1/sygus/qe.sy
test/regress/regress1/sygus/real-any-const.sy
test/regress/regress1/sygus/real-grammar.sy
test/regress/regress1/sygus/sets-pred-test.sy
test/regress/regress1/sygus/stopwatch-bt.sy
test/regress/regress1/sygus/strings-any-term1.sy
test/regress/regress1/sygus/strings-concat-3-args.sy
test/regress/regress1/sygus/strings-double-rec.sy
test/regress/regress1/sygus/strings-no-syntax.sy
test/regress/regress1/sygus/strings-small.sy
test/regress/regress1/sygus/strings-template-infer-unused.sy
test/regress/regress1/sygus/strings-template-infer.sy
test/regress/regress1/sygus/strings-trivial-simp.sy
test/regress/regress1/sygus/strings-trivial-two-type.sy
test/regress/regress1/sygus/strings-trivial.sy
test/regress/regress1/sygus/sygus-dt.sy
test/regress/regress1/sygus/sygus-lambda-fv.sy
test/regress/regress1/sygus/t8.sy
test/regress/regress1/sygus/temp_input_to_synth_ic-error-121418.sy
test/regress/regress1/sygus/tester.sy
test/regress/regress1/sygus/tl-type-0.sy
test/regress/regress1/sygus/tl-type-4x.sy
test/regress/regress1/sygus/tl-type.sy
test/regress/regress1/sygus/triv-type-mismatch-si.sy
test/regress/regress1/sygus/trivial-stream.sy
test/regress/regress1/sygus/twolets1.sy
test/regress/regress1/sygus/twolets2-orig.sy
test/regress/regress1/sygus/unbdd_inv_gen_ex7.sy
test/regress/regress1/sygus/unbdd_inv_gen_winf1.sy
test/regress/regress1/sygus/unifpi-solve-car_1.lus.sy
test/regress/regress1/sygus/univ_2-long-repeat.sy
test/regress/regress2/sygus/DRAGON_1.lus.sy
test/regress/regress2/sygus/MPwL_d1s3.sy
test/regress/regress2/sygus/array_sum_dd.sy
test/regress/regress2/sygus/cegisunif-depth1-bv.sy
test/regress/regress2/sygus/ex23.sy
test/regress/regress2/sygus/examples-deq.sy
test/regress/regress2/sygus/icfp_easy_mt_ite.sy
test/regress/regress2/sygus/inv_gen_n_c11.sy
test/regress/regress2/sygus/lustre-real.sy
test/regress/regress2/sygus/max2-univ.sy
test/regress/regress2/sygus/min_IC_1.sy
test/regress/regress2/sygus/mpg_guard1-dd.sy
test/regress/regress2/sygus/multi-udiv.sy
test/regress/regress2/sygus/nia-max-square.sy
test/regress/regress2/sygus/no-syntax-test-no-si.sy
test/regress/regress2/sygus/pbe_bvurem.sy
test/regress/regress2/sygus/process-10-vars-2fun.sy
test/regress/regress2/sygus/process-arg-invariance.sy
test/regress/regress2/sygus/real-grammar-neg.sy
test/regress/regress2/sygus/sets-fun-test.sy
test/regress/regress2/sygus/strings-no-syntax-len.sy
test/regress/regress2/sygus/three.sy
test/regress/regress2/sygus/vcb.sy
test/regress/regress3/sixfuncs.sy
test/regress/regress3/strings-any-term.sy

index c7c30005c73e41520d3d8be212ad2ab9f7b3efe4..81ddae6d6c64f50fe13ad6e769a4593a3164dc5d 100644 (file)
@@ -680,7 +680,8 @@ Command* Smt2::setLogic(std::string name, bool fromCommand)
     defineType("RegLan", d_solver->getRegExpSort());
     defineType("Int", d_solver->getIntegerSort());
 
-    if (getLanguage() == language::input::LANG_SMTLIB_V2_6_1)
+    if (getLanguage() == language::input::LANG_SMTLIB_V2_6_1
+        || getLanguage() == language::input::LANG_SYGUS_V2)
     {
       defineVar("re.none", d_solver->mkRegexpEmpty());
     }
index aec265f2b6bf5e494c1f615b8c5cf5397eee8447..02879cb8d4a8e423017995abf60954402b03e261 100644 (file)
@@ -1,4 +1,4 @@
-; COMMAND-LINE: --cegqi-si=all --sygus-out=status --no-sygus-repair-const
+; COMMAND-LINE: --lang=sygus2 --cegqi-si=all --sygus-out=status --no-sygus-repair-const
 ; SCRUBBER: sed -e 's/The fact in question: .*$/The fact in question: TERM/'
 ; EXPECT: (error "A non-linear fact was asserted to arithmetic in a linear logic.
 ; EXPECT: The fact in question: TERM
index 1792749e275e781cfa2a855efa0e745bde80b61b..69bcd0f084a54864405fcc34b76a755f37e7c117 100755 (executable)
@@ -1,11 +1,10 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --cegqi-si=all --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --cegqi-si=all --sygus-out=status
 (set-logic LIA)
 
-(synth-fun fb () Int ((Start Int ((Constant Int)))))
-(synth-fun fc () Int ((Start Int ((Constant Int)))))
+(synth-fun fb () Int ((Start Int)) ((Start Int ((Constant Int)))))
+(synth-fun fc () Int ((Start Int)) ((Start Int ((Constant Int)))))
 
-(constraint (= fc (+ fb 10))) 
+(constraint (= fc (+ fb 10)))
 
 (check-synth)
-
index ef12e3c0ed75504b13a5b30f591c053d0fcd98d7..9330546d81045765b816fa540cf547b057c95701 100644 (file)
@@ -1,11 +1,12 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --cegqi-si=all --cegqi-si-abort --decision=internal --cbqi --cbqi-prereg-inst --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --cegqi-si=all --cegqi-si-abort --decision=internal --cbqi --cbqi-prereg-inst --sygus-out=status
 (set-logic BV)
 
 (define-fun parity ((a Bool) (b Bool) (c Bool) (d Bool)) Bool
   (xor (not (xor a b)) (not (xor c d))))
 
 (synth-fun AIG ((a Bool) (b Bool) (c Bool) (d Bool)) Bool
+           ((Start Bool))
            ((Start Bool ((and Start Start) (not Start) a b c d))))
 
 (declare-var a Bool)
index d216bbb247818d9c4687b093acceee1ec6a42eed..2c0b4cf9a16b37de1027d9687e06df34ab1d6fb2 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic ALIA)
 
 (synth-fun f
index 70525e83b8e0797f05ace1a4cacdd7fd0e49b63b..025a17b156b471f3fd792577ea92e63a9e72238c 100644 (file)
@@ -1,13 +1,13 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic ABV)
 
 (synth-fun f
-  ((s (Array (BitVec 4) (BitVec 4))) (t (BitVec 4)))
-  (Array (BitVec 4) (BitVec 4))
+  ((s (Array (_ BitVec 4) (_ BitVec 4))) (t (_ BitVec 4)))
+  (Array (_ BitVec 4) (_ BitVec 4))
   )
 
-(declare-var x (Array (BitVec 4) (BitVec 4)))
+(declare-var x (Array (_ BitVec 4) (_ BitVec 4)))
 
 (constraint (= (= (store x #b0000 #b0000) (store x #b0001 #b0000)) (= (f x #b0000) (f x #b0001))))
 
index 662069105af87c0a90cc721b55cfbe716d2f4858..91fe27b0b3a8f807a1f3e3447f6431c31002545a 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic SAT)
 
 (define-fun
@@ -30,9 +30,6 @@
 ))
 
 
-(declare-primed-var top.usr.OK Bool)
-(declare-primed-var top.res.init_flag Bool)
-
 (define-fun
   init (
     (top.usr.OK Bool)
index fc8864f55381d51f17f75a0f4ab4df36be386e26..8fe64697b9e9aa8eee33442cb282d8ffe5183a20 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic ALL)
 
 (synth-fun f ((x String) (y String)) String)
index 86a68574f41708fb858bf2736697261edae194d2..f5ce07ec6f2515ff6a4d44b7e30f5decd957aa7b 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic ALL)
 
 (synth-fun f ((x String) (y String)) String)
index f4de9b055e6ffaaeefdc22b6a13700b60c127d61..e33edf36cc10137d6e2ff5d84583fab1050185c6 100644 (file)
@@ -1,4 +1,4 @@
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 ; EXPECT: unsat
 (set-logic LIA)
 
index 52edb32782ee93468b2a55ba464711a71ee6c3fd..52f0680553b0cfdb5a5716b183391227b8866300 100644 (file)
@@ -1,4 +1,4 @@
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 ; EXPECT: unsat
 (set-logic ALL_SUPPORTED)
 
@@ -27,6 +27,7 @@
 
 ; provide synthesis template 
 (synth-fun f ((secret Ship) (prior ShipRange) (response Bool)) ShipRange
+((Start ShipRange) (B Bool) (SR ShipRange) (IR IntRange) (LR LocRange) (I Int))
 (
      (Start ShipRange ((ite B SR SR)))
      (B Bool (response))
index 71af1e91692e2967f9830c15a6c9478b5f90996b..b410e5d23fd784faf6a67c1ff49adabb6fefa201 100644 (file)
@@ -1,10 +1,10 @@
-; COMMAND-LINE: --sygus-out=status --cegqi-si=none
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status --cegqi-si=none
 ; EXPECT: unsat
 
 (set-logic BV)
 
-(synth-fun f ((x (BitVec 32))) (BitVec 32))
+(synth-fun f ((x (_ BitVec 32))) (_ BitVec 32))
 
-(declare-var x (BitVec 32))
+(declare-var x (BitVec 32))
 (constraint (= (bvor x #x00000001) (f x)))
 (check-synth)
index c3f43fc07cc7bf323bbf12ca96a564db24c273eb..7b7d50e22ba6f485285daccbc3573da73d8c70e1 100644 (file)
@@ -1,10 +1,7 @@
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 ;EXPECT: unsat
 (set-logic LIA)
 (synth-inv inv-f ((x Int) (y Int) (b Bool)))
-(declare-primed-var b Bool)
-(declare-primed-var x Int)
-(declare-primed-var y Int)
 (define-fun pre-f ((x Int) (y Int) (b Bool)) Bool
 (and
 (and (>= x 5) (<= x 9))
@@ -19,4 +16,4 @@
 )
 (define-fun post-f ((x Int) (y Int) (b Bool)) Bool true)
 (inv-constraint inv-f pre-f trans-f post-f)
-(check-synth)
\ No newline at end of file
+(check-synth)
index cc677bb9c8e58b06b604e0b85b9a5127202141d0..9929654327de95c600bf12349da25a8ee278861f 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic ALL)
 (declare-var A Bool)
 (declare-var B (Array Int Bool))
index 1bb85bed916bd12d63eed16fb76a838afa747345..9f9eea2a84bb7af7f2b842124012b9dd111b275f 100644 (file)
@@ -1,11 +1,12 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --cegqi-si=all --sygus-out=status
-; COMMAND-LINE: --cegqi-si=all --sygus-unif-pi=complete --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --cegqi-si=all --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --cegqi-si=all --sygus-unif-pi=complete --sygus-out=status
 (set-logic LIA)
 (define-fun g ((x Int)) Int (ite (= x 1) 15 19))
 (define-fun letf ((z Int) (w Int) (s Int) (x Int)) Int (+ z (+ x (+ x (+ s (+ 1 (+ (g w) z)))))))
 
 (synth-fun f ((x Int)) Int
+    ((Start Int))
     ((Start Int (x
                  0
                  1
index 7e191e31275a623058606493788b41c08c3fd24e..91a865035409cb07fc3e17b35069dd01c84fe795 100644 (file)
@@ -1,8 +1,9 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --cegqi-si=all --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --cegqi-si=all --sygus-out=status
 (set-logic LIA)
 (define-fun letf ((z Int)) Int (+ z z))
 (synth-fun f ((x Int) (y Int)) Int
+    ((Start Int))
     ((Start Int (x
                  y
                  0
@@ -13,4 +14,3 @@
 (declare-var y Int)
 (constraint (= (f x y) (* 3 x)))
 (check-synth)
-
index c6c9383bbf929e4e908ff0cf896e15c44990a5cd..4978b7a5735b18e2103c23b9c2bf56cde64a9333 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 
 (set-logic LIA)
 
@@ -12,4 +12,3 @@
 
 
 (check-synth)
-
index f27a07ee7912d6d6cda9f6242e407131a5eca87f..696d413ade05e71462aaaf1e0d373fb4383eb091 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 
 (set-logic LIA)
 
@@ -12,4 +12,3 @@
 
 
 (check-synth)
-
index 50c7d39a04171e8c97f95e905b0ca9b62bb15104..09fae5410c546ededfc622a1b2af29747fb59bfd 100644 (file)
@@ -1,11 +1,12 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --cegqi-si=all --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --cegqi-si=all --sygus-out=status
 (set-logic BV)
 
 (define-fun parity ((a Bool) (b Bool) (c Bool) (d Bool)) Bool
   (xor (not (xor a b)) (not (xor c d))))
 
 (synth-fun AIG ((a Bool) (b Bool) (c Bool) (d Bool)) Bool
+           ((Start Bool))
            ((Start Bool ((and Start Start) (not Start) a b c d))))
 
 (declare-var a Bool)
index 1329918fc6640493b97669f18f74056e134aa8eb..60bb804b609ad65b4d18110d6c20d452c6129851 100644 (file)
@@ -1,20 +1,21 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic BV)
 
-(define-fun bit-reset ((x (BitVec 32)) (bit (BitVec 32))) (BitVec 32)
-  (let ((modulo-shift (BitVec 32) (bvand bit #x0000001f)))
-        (bvand modulo-shift x)))
+(define-fun bit-reset ((x (_ BitVec 32)) (bit (_ BitVec 32))) (_ BitVec 32)
+  (let ((modulo-shift (bvand bit #x0000001f)))
+   (bvand modulo-shift x)))
 
-(synth-fun btr ((x (BitVec 32)) (bit (BitVec 32))) (BitVec 32)
-    ((Start (BitVec 32) (
-                         (Constant (BitVec 32))
-                         (Variable (BitVec 32))
-                        (bvneg  Start) (bvnot  Start) (bvadd  Start Start) (bvand  Start Start) (bvlshr Start Start) (bvmul  Start Start) (bvor   Start Start) (bvshl  Start Start)
+(synth-fun btr ((x (_ BitVec 32)) (bit (_ BitVec 32))) (_ BitVec 32)
+    ((Start (_ BitVec 32)))
+    ((Start (_ BitVec 32) (
+                         (Constant (_ BitVec 32))
+                         (Variable (_ BitVec 32))
+       (bvneg  Start) (bvnot  Start) (bvadd  Start Start) (bvand  Start Start) (bvlshr Start Start) (bvmul  Start Start) (bvor   Start Start) (bvshl  Start Start)
                          ))))
 
-(declare-var x   (BitVec 32))
-(declare-var bit (BitVec 32))
+(declare-var x   (BitVec 32))
+(declare-var bit (BitVec 32))
 (constraint (= (btr x bit) #b00000000000000000000000000000000))
 
 (check-synth)
index 5fbe91e2eb0acbc71a99cffe904fe8d33bb13f03..99c3081736cd488bfd52c8112cfb8bc8c7ae4a2e 100644 (file)
@@ -1,4 +1,4 @@
-; COMMAND-LINE: --cegqi-si=none --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --cegqi-si=none --sygus-out=status
 ; EXPECT: unknown
 (set-logic LIA)
 (synth-fun P ((x Int)) Bool)
index 81f0ad22ff6f38a247c715b7848d17f6268260b9..26524cdf6bfaf050b06498d6e70d939fdf856dd7 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 
 (set-logic LRA)
 
index 39c39248750921bbc827054354c48650a068b482..49272165d279314900da5fdb665bb07d72534634 100644 (file)
@@ -1,10 +1,9 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic SLIA)
 (synth-fun f ((firstname String) (lastname String)) String
-((Start String (ntString))
-
-(ntString String (
+((ntString String))
+((ntString String (
 firstname 
 lastname 
 " "
@@ -12,4 +11,3 @@ lastname
 ))
 
 (check-synth)
-
index 40a3d55477f00a8e47143cf6b377cef026eb4616..e89d07fd91fdb7617b7677b94cdd415856b7cf24 100644 (file)
@@ -1,7 +1,8 @@
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 ; EXPECT: unsat
 (set-logic ALL)
 (synth-fun f ((x0 Bool)) Bool
+       ((B Bool) (I Int))
        (
                (B Bool ((Variable Bool) (Constant Bool) (= I I) )) 
                (I Int ((Constant Int) (+ I I)))
index 94040bf4533e9d9fe9bb726a677ac71df4e586c2..9024ac3b62f563cc00a253ada462532a1cb4ddd7 100644 (file)
@@ -1,7 +1,7 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic LIA)
-(synth-fun f ((x Int)) Int ((Start Int ((- 1)))))
+(synth-fun f ((x Int)) Int ((Start Int)) ((Start Int ((- 1)))))
 (declare-var x Int)
 (constraint (= (f x) (- 1)))
 (check-synth)
index c2ed642be0c691519ebb2c3a8f974269c88ef54a..b9bd8e8157424c8402349b01c980412de2713c6c 100644 (file)
@@ -1,21 +1,21 @@
 ; EXPECT: unknown
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic SLIA)
+
 (synth-fun f ((col1 String) (col2 String)) String
-    ((Start String (ntString))
-     (ntString String (col1 col2 " " "," "USA" "PA" "CT" "CA" "MD" "NY"
+    ((ntString String) (ntInt Int) (ntBool Bool))
+    ((ntString String (col1 col2 " " "," "USA" "PA" "CT" "CA" "MD" "NY"
                        (str.++ ntString ntString)
                        (str.replace ntString ntString ntString)
                        (str.at ntString ntInt)
-                       (int.to.str ntInt)
+                       (str.from_int ntInt)
                        (ite ntBool ntString ntString)
                        (str.substr ntString ntInt ntInt)))
       (ntInt Int (0 1 2
                   (+ ntInt ntInt)
                   (- ntInt ntInt)
                   (str.len ntString)
-                  (str.to.int ntString)
+                  (str.to_int ntString)
                   (str.indexof ntString ntString ntInt)))
       (ntBool Bool (true false
                     (str.prefixof ntString ntString)
index 955245f87a1ec461515a32b3502d461bf484a589..75837695dadf1c90ab2cb6b73ff827ca11ea7b9a 100644 (file)
@@ -1,11 +1,12 @@
-; COMMAND-LINE: --sygus-rr --sygus-samples=1000 --sygus-abort-size=3 --sygus-rr-verify-abort --no-sygus-sym-break
+; COMMAND-LINE: --lang=sygus2 --sygus-rr --sygus-samples=1000 --sygus-abort-size=3 --sygus-rr-verify-abort --no-sygus-sym-break
 ; EXPECT: (error "Maximum term size (3) for enumerative SyGuS exceeded.")
 ; SCRUBBER: grep -v -E '(\(define-fun|\(candidate-rewrite)'
 ; EXIT: 1
 
 (set-logic BV)
 
-(synth-fun f ( (x Bool) (y Bool) (z Bool) (w Bool) ) Bool 
+(synth-fun f ( (x Bool) (y Bool) (z Bool) (w Bool) ) Bool
+ ( (Start Bool) (depth1 Bool) (depth2 Bool) (depth3 Bool) (depth4 Bool) )
  ((Start Bool (
    (and depth1 depth1)
    (not depth1)
index 6c07bd8aa069d5b37783b15b16db700fdac77fb4..9dfb19451a87ba103a4cad2236c99c17a0ca9f73 100644 (file)
@@ -1,13 +1,14 @@
-; COMMAND-LINE: --sygus-rr --sygus-samples=1000 --sygus-abort-size=1 --sygus-rr-verify-abort --no-sygus-sym-break
+; COMMAND-LINE: --lang=sygus2 --sygus-rr --sygus-samples=1000 --sygus-abort-size=1 --sygus-rr-verify-abort --no-sygus-sym-break
 ; EXPECT: (error "Maximum term size (1) for enumerative SyGuS exceeded.")
 ; SCRUBBER: grep -v -E '(\(define-fun|\(candidate-rewrite)'
 ; EXIT: 1
 
 (set-logic BV)
 
-(synth-fun f ((s (BitVec 32)) (t (BitVec 32))) (BitVec 32)
+(synth-fun f ((s (_ BitVec 32)) (t (_ BitVec 32))) (_ BitVec 32)
+  ((Start (_ BitVec 32)))
   (
-   (Start (BitVec 32) (
+   (Start (BitVec 32) (
      s
      t
      #x00000000
index f310396d220e46cd68129c1c2320dfcb076b94ec..9a11128d7b6fb5ce1f2502a87b3587fb0c39f93d 100644 (file)
@@ -1,14 +1,15 @@
-; COMMAND-LINE: --sygus-rr --sygus-samples=1000 --sygus-abort-size=2 --sygus-rr-verify-abort --no-sygus-sym-break
-; COMMAND-LINE: --sygus-rr-synth --sygus-samples=1000 --sygus-abort-size=2 --sygus-rr-verify-abort --sygus-rr-synth-check
+; COMMAND-LINE: --lang=sygus2 --sygus-rr --sygus-samples=1000 --sygus-abort-size=2 --sygus-rr-verify-abort --no-sygus-sym-break
+; COMMAND-LINE: --lang=sygus2 --sygus-rr-synth --sygus-samples=1000 --sygus-abort-size=2 --sygus-rr-verify-abort --sygus-rr-synth-check
 ; EXPECT: (error "Maximum term size (2) for enumerative SyGuS exceeded.")
 ; SCRUBBER: grep -v -E '(\(define-fun|\(candidate-rewrite|\(rewrite)'
 ; EXIT: 1
 
 (set-logic BV)
 
-(synth-fun f ((s (BitVec 4)) (t (BitVec 4))) (BitVec 4)
+(synth-fun f ((s (_ BitVec 4)) (t (_ BitVec 4))) (_ BitVec 4)
+  ((Start (_ BitVec 4)))
   (
-   (Start (BitVec 4) (
+   (Start (BitVec 4) (
      s
      t
      #x0
index e8b97d610cbe85d29dd9ce20716a356f5be38b6a..30828ca76b17d344f81eb2326bbc6372a5183171 100644 (file)
@@ -1,5 +1,5 @@
 ; REQUIRES: symfpu
-; COMMAND-LINE: --sygus-rr --sygus-samples=0 --sygus-rr-synth-check --sygus-abort-size=1 --sygus-rr-verify-abort --no-sygus-sym-break --fp-exp
+; COMMAND-LINE: --lang=sygus2 --sygus-rr --sygus-samples=0 --sygus-rr-synth-check --sygus-abort-size=1 --sygus-rr-verify-abort --no-sygus-sym-break --fp-exp
 ; EXPECT: (error "Maximum term size (1) for enumerative SyGuS exceeded.")
 ; SCRUBBER: grep -v -E '(\(define-fun|\(rewrite)'
 ; EXIT: 1
@@ -13,6 +13,7 @@
 (define-fun fp_nan () Float16 (_ NaN 5 11))
 
 (synth-fun f ( (r RoundingMode) (x Float16) (y Float16)) Float16
+((Start Float16))
 (
  (Start Float16 (
   (fp.abs Start)
index bf0692f7dde0243019bd7ba9c902c26ed538fd61..6704198c3de0ba9cc8653dd11af06e2381d49b13 100644 (file)
@@ -1,5 +1,5 @@
 ; REQUIRES: symfpu
-; COMMAND-LINE: --sygus-rr --sygus-samples=0 --sygus-rr-synth-check --sygus-abort-size=1 --sygus-rr-verify-abort --no-sygus-sym-break --fp-exp
+; COMMAND-LINE: --lang=sygus2 --sygus-rr --sygus-samples=0 --sygus-rr-synth-check --sygus-abort-size=1 --sygus-rr-verify-abort --no-sygus-sym-break --fp-exp
 ; EXPECT: (error "Maximum term size (1) for enumerative SyGuS exceeded.")
 ; SCRUBBER: grep -v -E '(\(define-fun|\(rewrite)'
 ; EXIT: 1
@@ -13,6 +13,7 @@
 (define-fun fp_nan () Float16 (_ NaN 5 11))
 
 (synth-fun f ( (r RoundingMode) (x Float16) (y Float16)) Bool
+((Start Bool) (FpOp Float16))
 (
  (Start Bool (
   (fp.isNaN FpOp)
index 8f6593148c1a146953d454eab5c03a60f38b504b..404719f6cb6521535a7259569ad30411699e9f53 100644 (file)
@@ -1,24 +1,25 @@
-; COMMAND-LINE: --sygus-rr --sygus-samples=1000 --sygus-abort-size=1 --sygus-rr-verify-abort --no-sygus-sym-break
+; COMMAND-LINE: --lang=sygus2 --sygus-rr --sygus-samples=1000 --sygus-abort-size=1 --sygus-rr-verify-abort --no-sygus-sym-break
 ; EXPECT: (error "Maximum term size (1) for enumerative SyGuS exceeded.")
 ; SCRUBBER: grep -v -E '(\(define-fun|\(candidate-rewrite)'
 ; EXIT: 1
 
 (set-logic SLIA)
 
-(synth-fun f ((x String) (y String) (z Int)) String (
+(synth-fun f ((x String) (y String) (z Int)) String
+((Start String) (StartInt Int)) (
 (Start String (
   x y "A" "B" ""
   (str.++ Start Start)
   (str.replace Start Start Start)
   (str.at Start StartInt)
-  (int.to.str StartInt)
+  (str.from_int StartInt)
   (str.substr Start StartInt StartInt)))
 (StartInt Int (
   0 1 z
   (+ StartInt StartInt)
   (- StartInt StartInt)
   (str.len Start)
-  (str.to.int Start)
+  (str.to_int Start)
   (str.indexof Start Start StartInt)))
 ))
 
index b54c7688b20002bcb1ea0f7658ca65c8de88225f..b84e5bb4825a16117d8cc38083f7b04d605d1734 100644 (file)
@@ -1,17 +1,18 @@
 ; EXPECT: unsat
-; COMMAND-LINE:  --sygus-qe-preproc --cbqi-full --sygus-out=status --cegqi-si=all
+; COMMAND-LINE: --lang=sygus2 --sygus-qe-preproc --cbqi-full --sygus-out=status --cegqi-si=all
 (set-logic BV)
 
-(define-fun B ((h (BitVec 8)) (l (BitVec 8)) (v (BitVec 8))) (BitVec 8) (bvlshr (bvshl v (bvsub #x07 h)) (bvsub #x07 (bvsub h l))))
+(define-fun B ((h (_ BitVec 8)) (l (_ BitVec 8)) (v (_ BitVec 8))) (_ BitVec 8) (bvlshr (bvshl v (bvsub #x07 h)) (bvsub #x07 (bvsub h l))))
 
-(define-fun E ((x (BitVec 8))) (BitVec 8)  (bvadd x #x41))
+(define-fun E ((x (_ BitVec 8))) (_ BitVec 8)  (bvadd x #x41))
 
-(define-fun f ((x (BitVec 8))) (BitVec 8) (bvsub x #x41))
+(define-fun f ((x (_ BitVec 8))) (_ BitVec 8) (bvsub x #x41))
 
-(define-fun d ((x (BitVec 8))) Bool (bvule x #x3f))
+(define-fun d ((x (BitVec 8))) Bool (bvule x #x3f))
 
-(synth-fun D ((x (BitVec 8)) (y (BitVec 8)) ) (BitVec 8)
-       ((Start (BitVec 8) (
+(synth-fun D ((x (_ BitVec 8)) (y (_ BitVec 8)) ) (_ BitVec 8)
+               ((Start (_ BitVec 8)) (Const (_ BitVec 8)))
+               ((Start (_ BitVec 8) (
                        (f Start) x y Const
                                (bvshl Start Start)      (bvnot Start)
                                                 (bvand Start Start)
                                                 (bvlshr Start Start)
                                                 (bvsub Start Start)
                        ))
-        (Const (BitVec 8) (#x01 #x03 #x06 #x07 #x04 #x05 #x02 #x00))
+        (Const (BitVec 8) (#x01 #x03 #x06 #x07 #x04 #x05 #x02 #x00))
 ))
 
-(declare-var x (BitVec 8))
+(declare-var x (BitVec 8))
 (constraint  (= x (D (E (B #x07 #x04 x) ) (E  (B #x03 #x00 x))  )) )
 
 ; notice we don't have solution reconstruction for this
-(check-synth)    
-
-
+(check-synth)
index ce437bc34f81568517c6342777970a11670830a0..f60f661dd0fea552353e60c75e2ccd53f8422ea1 100644 (file)
@@ -1,9 +1,10 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
-; COMMAND-LINE: --sygus-out=status --cegis-sample=use
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status --cegis-sample=use
 (set-logic LIA)
 
 (synth-fun f ((x1 Int) (x2 Int)) Int
+       ((Start Int) (StartBool Bool))
        ((Start Int (0 1 x1 x2
                                (ite StartBool Start Start)))
                (StartBool Bool ((= Start Start)))))
@@ -24,7 +25,6 @@
 (define-fun InVorZero ((v Int)) Bool
        (or (InV1 v) (Zero v)))
 
-
 (define-fun UnsafeSame ((x1 Int) (x2 Int) (v1 Int) (v2 Int)) Bool
        (or (and (>= x1 x2) (>= (+ x2 v2) (+ x1 v1)))
                (and (>= x2 x1) (>= (+ x1 v1) (+ x2 v2)))))
@@ -58,4 +58,3 @@
 (constraint (or (Bad x1 x2) (not (Zero (f x1 x2)))))
 
 (check-synth)
-
index d9a8a019c899a0e142733fb29e8fbbf139637e46..d42553c1bd7ff39cebd0288fbd5e64d0259aa7ea 100644 (file)
@@ -1,61 +1,66 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic ABV)
 
-(define-sort AddrSort () (BitVec 32))
-(define-sort ValSort () (BitVec 8))
+(define-sort AddrSort () (BitVec 32))
+(define-sort ValSort () (BitVec 8))
 (define-sort MemSort () (Array AddrSort ValSort))
 
 ; Write the value y to index x
-(define-fun WriteArr 
-       ; Args
-       ((x AddrSort) (y ValSort) (arrIn MemSort)) 
-       
-       ; Return value
-       MemSort
-       
-       ; Function Body
-       (store arrIn x y)
+(define-fun WriteArr
+    ; Args
+    ((x AddrSort) (y ValSort) (arrIn MemSort))
+
+    ; Return value
+    MemSort
+
+    ; Function Body
+    (store arrIn x y)
 )
 
 ; Read from index x
-(define-fun ReadArr 
-       ; Args
-       ((x AddrSort) (arrIn MemSort)) 
-       
-       ; Return value
-       ValSort
-       
-       ; Function Body
-       (select arrIn x)
+(define-fun ReadArr
+    ; Args
+    ((x AddrSort) (arrIn MemSort))
+
+    ; Return value
+    ValSort
+
+    ; Function Body
+    (select arrIn x)
 )
 
 (define-fun letf ((m MemSort) (v1 AddrSort) (v2 AddrSort)) ValSort
-  (bvadd 
-    (ReadArr v1 m) 
+  (bvadd
+    (ReadArr v1 m)
     (ReadArr v2 m)))
 
-(synth-fun f 
-       ; Args
-       ((x0 ValSort) (x1 ValSort) (idx0 AddrSort) (idx1 AddrSort) (mem MemSort))
-       
-       ; Return value
-       ValSort
-    
-       ; Grammar
-       (
-       (StartArray MemSort (
-               (WriteArr (Variable AddrSort) (Variable ValSort) StartArray)
-               (WriteArr (Variable AddrSort) (Variable ValSort) mem)))
-
-       (Start ValSort (
-               (letf StartArray (Variable AddrSort) (Variable AddrSort))))
+(synth-fun f
+    ; Args
+    ((x0 ValSort) (x1 ValSort) (idx0 AddrSort) (idx1 AddrSort) (mem MemSort))
+
+    ; Return value
+    ValSort
+
+    ; Grammar
+    ((Start ValSort) (StartArray MemSort) (ASVar AddrSort) (VSVar ValSort))
+    (
+    (Start ValSort (
+        (letf StartArray ASVar ASVar)))
+
+    (StartArray MemSort (
+        (WriteArr ASVar VSVar StartArray)
+        (WriteArr ASVar VSVar mem)))
+
+    ; "Hack" to avoid parse errors in V2 format.
+    (ASVar AddrSort ((Variable AddrSort)))
+    (VSVar ValSort ((Variable ValSort)))
 ))
 
-(declare-var a (BitVec 8))
-(declare-var b (BitVec 8))
-(declare-var c (BitVec 32))
-(declare-var d (BitVec 32))
-(declare-var e (Array (BitVec 32) (BitVec 8)))
+(declare-var a (BitVec 8))
+(declare-var b (BitVec 8))
+(declare-var c (BitVec 32))
+(declare-var d (BitVec 32))
+(declare-var e (Array (_ BitVec 32) (_ BitVec 8)))
 (constraint (=> (not (= c d)) (= (bvadd a b) (f a b c d e))))
 (check-synth)
index 93cbf9ce9e9183692a30e1818d87341546887228..1a7c5888cc56ef666737a4b3ec5461cb90a0908b 100644 (file)
@@ -1,8 +1,8 @@
 ; REQUIRES: proof
 ; EXPECT: unsat
-; COMMAND-LINE: --cegqi-si=all --sygus-out=status --cegqi-si-sol-min-core --proof
+; COMMAND-LINE: --lang=sygus2 --cegqi-si=all --sygus-out=status --cegqi-si-sol-min-core --proof
 (set-logic LIA)
-(synth-fun findIdx ( (y1 Int) (y2 Int) (k1 Int)) Int ((Start Int ( 0 1 2 y1 y2 k1 (ite BoolExpr Start Start))) (BoolExpr Bool ((< Start Start) (<= Start Start) (> Start Start) (>= Start Start)))))
+(synth-fun findIdx ((y1 Int) (y2 Int) (k1 Int)) Int ((Start Int) (BoolExpr Bool)) ((Start Int ( 0 1 2 y1 y2 k1 (ite BoolExpr Start Start))) (BoolExpr Bool ((< Start Start) (<= Start Start) (> Start Start) (>= Start Start)))))
 (declare-var x1 Int)
 (declare-var x2 Int)
 (declare-var k Int)
index 8be52a5775ad0e8ca171553d32a218fd9557e29d..dd1783d85bc0dc5661b6cb40b52dd55676a78e61 100644 (file)
@@ -1,8 +1,12 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --cegqi-si=all --sygus-out=status --decision=justification
-( set-logic LIA )
-( synth-fun findIdx  (         ( y1  Int )  ( y2  Int )  ( y3  Int )  ( y4  Int )  ( y5  Int )  ( k1  Int ) )  Int (
-  (Start  Int (    NT1
+; COMMAND-LINE: --lang=sygus2 --cegqi-si=all --sygus-out=status --decision=justification
+(set-logic LIA)
+
+(synth-fun findIdx  ((y1 Int) (y2 Int) (y3 Int) (y4 Int) (y5 Int) (k1 Int)) Int
+  ((Start Int) (NT1 Int) (NT2 Bool) (NT3 Int) (NT4 Int) (NT5 Bool) (NT6 Bool) (NT7 Int) (NT8 Int) (NT9 Int) (NT10 Int)
+   (NT11 Int) (NT12 Bool) (NT13 Int) (NT14 Int) (NT15 Bool) (NT16 Bool) (NT17 Bool) (NT18 Bool) (NT19 Bool)) (
+  (Start Int (
+    NT1
     NT3
     NT4
     NT7
@@ -13,7 +17,8 @@
     NT13
     NT14
 ))
-  (NT1  Int (    y5
+  (NT1 Int (
+    y5
     k1
     1
     y2
     y3
     3
 ))
-  (NT2  Bool (    (< NT1 NT1)
+  (NT2 Bool (
+    (< NT1 NT1)
     (> NT1 NT1)
     (>= NT1 NT1)
     (<= NT1 NT1)
 ))
-  (NT3  Int (    (ite NT2 NT1 NT1)
+  (NT3 Int (
+    (ite NT2 NT1 NT1)
 ))
-  (NT4  Int (    (ite NT5 NT1 NT1)
+  (NT4  Int (
+    (ite NT5 NT1 NT1)
     (ite NT2 NT3 NT1)
 ))
-  (NT5  Bool (    (< NT3 NT1)
+  (NT5 Bool (
+    (< NT3 NT1)
     (<= NT3 NT1)
     (>= NT3 NT1)
     (> NT3 NT1)
 ))
-  (NT6  Bool (    (<= NT4 NT1)
+  (NT6 Bool (
+    (<= NT4 NT1)
     (> NT4 NT1)
     (<= NT3 NT3)
     (> NT3 NT3)
     (< NT3 NT3)
     (>= NT3 NT3)
 ))
-  (NT7  Int (    (ite NT6 NT1 NT1)
+  (NT7 Int (
+    (ite NT6 NT1 NT1)
     (ite NT2 NT4 NT1)
 ))
-  (NT8  Int (    (ite NT2 NT7 NT1)
+  (NT8 Int (
+    (ite NT2 NT7 NT1)
     (ite NT5 NT4 NT1)
     (ite NT15 NT1 NT1)
     (ite NT5 NT1 NT4)
 ))
-  (NT9  Int (    (ite NT2 NT8 NT1)
+  (NT9 Int (
+    (ite NT2 NT8 NT1)
     (ite NT12 NT1 NT1)
     (ite NT6 NT1 NT4)
     (ite NT6 NT4 NT1)
     (ite NT5 NT7 NT1)
 ))
-  (NT10  Int (    (ite NT5 NT8 NT1)
+  (NT10 Int (
+    (ite NT5 NT8 NT1)
     (ite NT16 NT1 NT1)
     (ite NT2 NT9 NT1)
     (ite NT6 NT7 NT1)
     (ite NT5 NT4 NT4)
 ))
-  (NT11  Int (    (ite NT6 NT8 NT1)
+  (NT11 Int (
+    (ite NT6 NT8 NT1)
     (ite NT2 NT10 NT1)
     (ite NT5 NT9 NT1)
     (ite NT17 NT1 NT1)
     (ite NT6 NT4 NT4)
 ))
-  (NT12  Bool (    (< NT4 NT4)
+  (NT12 Bool (
+    (< NT4 NT4)
     (> NT4 NT4)
     (<= NT8 NT1)
     (< NT8 NT1)
     (>= NT8 NT1)
     (>= NT4 NT4)
 ))
-  (NT13  Int (    (ite NT18 NT1 NT1)
+  (NT13 Int (
+    (ite NT18 NT1 NT1)
     (ite NT12 NT7 NT1)
     (ite NT5 NT10 NT1)
     (ite NT6 NT9 NT1)
     (ite NT12 NT1 NT7)
     (ite NT2 NT11 NT1)
 ))
-  (NT14  Int (    (ite NT12 NT1 NT8)
+  (NT14 Int (
+    (ite NT12 NT1 NT8)
     (ite NT6 NT10 NT1)
     (ite NT5 NT11 NT1)
     (ite NT19 NT1 NT1)
     (ite NT12 NT8 NT1)
     (ite NT2 NT13 NT1)
 ))
-  (NT15  Bool (    (>= NT7 NT1)
+  (NT15 Bool (
+    (>= NT7 NT1)
     (< NT7 NT1)
     (> NT7 NT1)
     (<= NT7 NT1)
 ))
-  (NT16  Bool (    (< NT9 NT1)
+  (NT16 Bool (
+    (< NT9 NT1)
     (>= NT9 NT1)
     (> NT9 NT1)
     (<= NT9 NT1)
 ))
-  (NT17  Bool (    (< NT7 NT7)
+  (NT17 Bool (
+    (< NT7 NT7)
     (<= NT10 NT1)
     (>= NT10 NT1)
     (> NT10 NT1)
     (>= NT7 NT7)
     (<= NT7 NT7)
 ))
-  (NT18  Bool (    (< NT11 NT1)
+  (NT18 Bool (
+    (< NT11 NT1)
     (> NT11 NT1)
     (>= NT11 NT1)
     (<= NT11 NT1)
 ))
-  (NT19  Bool (    (>= NT13 NT1)
+  (NT19 Bool (
+    (>= NT13 NT1)
     (>= NT8 NT8)
     (< NT13 NT1)
     (> NT13 NT1)
     (<= NT13 NT1)
 ))
 ))
-  ( declare-var x1  Int )
-  ( declare-var x2  Int )
-  ( declare-var x3  Int )
-  ( declare-var x4  Int )
-  ( declare-var x5  Int )
-  ( declare-var k  Int )
-  ( constraint  ( =>     ( and     ( <     x1  x2 )  ( and     ( <     x2  x3 )  ( and     ( <     x3  x4 )  ( <     x4  x5 ) ) ) )  ( =>     ( <     k  x1 )  ( =     ( findIdx         x1  x2  x3  x4  x5  k )   0 ) ) ) )
-  ( check-synth )
 
+(declare-var x1 Int)
+(declare-var x2 Int)
+(declare-var x3 Int)
+(declare-var x4 Int)
+(declare-var x5 Int)
+(declare-var k Int)
+
+(constraint (=> (and (< x1 x2) (and (< x2 x3) (and (< x3 x4) (< x4 x5)))) (=> (< k x1) (= (findIdx x1 x2 x3 x4 x5 k) 0))))
+(check-synth)
index 84a75d0861ed936e9e5ac7606e7f6a0dee3cb80d..84046f30a64091212a054cc1bf0d3a4603109935 100644 (file)
@@ -1,7 +1,7 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --cegqi-si=all --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --cegqi-si=all --sygus-out=status
 (set-logic LIA)
-(synth-fun findSum ( (y1 Int) (y2 Int) )Int ((Start Int ( 0 1 2 y1 y2 (+ Start Start)    (ite BoolExpr Start Start))) (BoolExpr Bool ((< Start Start) (<= Start Start) (> Start Start) (>= Start Start)))))
+(synth-fun findSum ( (y1 Int) (y2 Int) )Int ((Start Int) (BoolExpr Bool)) ((Start Int ( 0 1 2 y1 y2 (+ Start Start)    (ite BoolExpr Start Start))) (BoolExpr Bool ((< Start Start) (<= Start Start) (> Start Start) (>= Start Start)))))
 (declare-var x1 Int)
 (declare-var x2 Int)
 (constraint (=> (> (+ x1 x2) 5) (= (findSum x1 x2 ) (+ x1 x2))))
index d6491972a3419a09d29d9772d4d1f65feaaaed3e..2bd8fc0dc8f7d29fbba0db85a9501764be14f7e8 100644 (file)
@@ -1,9 +1,10 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic BV)
 
-(synth-fun f ((x (BitVec 32))) (BitVec 32) 
-((Start (BitVec 32)
+(synth-fun f ((x (_ BitVec 32))) (_ BitVec 32)
+((Start (_ BitVec 32)) (StartBool Bool))
+((Start (_ BitVec 32)
    (
              (bvudiv Start Start)
              (bvurem Start Start)
@@ -16,7 +17,7 @@
                        (bvugt Start Start)
                        (= Start Start)
              ))))
-(declare-var x (BitVec 32) )
+(declare-var x (BitVec 32) )
 
 ; property
 (constraint (= (f #x00000008) #x00000004))
index 9432d31312f3879d19a6af676984267537fb55dc..3b58a997c868491d4d66fa424dd8fb6027d0b6a6 100755 (executable)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status --sygus-unif-pi=cond-enum-igain --decision=justification
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status --sygus-unif-pi=cond-enum-igain --decision=justification
 
 (set-logic LIA)
 
index ee85db88aeac32fd7c061bd06e730a630e59d20c..d3b2030de1d0ec99d62422db060a9967538e4ee9 100644 (file)
@@ -1,15 +1,12 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-inv-templ=post --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-inv-templ=post --sygus-out=status
 (set-logic LIA)
 
 (synth-inv inv-f ((x Int) (y Int)))
 
-(declare-primed-var x Int)
-(declare-primed-var y Int)
-
 (define-fun pre-f ((x Int) (y Int)) Bool
 (and (and (>= x 0)
-(and (<= x 2)  
+(and (<= x 2)
 (<= y 2))) (>= y 0)))
 
 (define-fun trans-f ((x Int) (y Int) (x! Int) (y! Int)) Bool
index df0214316f5ae8f2eebe10866b01bde6ada612cf..c3b09011c7a8e0362fc0c3b1232a2f2197cca2ad 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-unif-pi=complete --sygus-bool-ite-return-const --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-unif-pi=complete --sygus-bool-ite-return-const --sygus-out=status
 (set-logic LIA)
 
 (define-fun
   ) Bool
   
   (let
-   ((X1 Bool top.res.abs_10@0))
+   ((X1 top.res.abs_10@0))
    (let
-    ((X2 Int top.res.abs_4@0))
+    ((X2 top.res.abs_4@0))
     (and
      (= top.usr.OK@0 (=> X1 (< X2 4)))
      (__node_init_voiture_0
   ) Bool
   
   (let
-   ((X1 Bool top.res.abs_10@1))
+   ((X1 top.res.abs_10@1))
    (let
-    ((X2 Int top.res.abs_4@1))
+    ((X2 top.res.abs_4@1))
     (and
      (= top.usr.OK@1 (=> X1 (< X2 4)))
      (__node_trans_voiture_0
 ))
 
 
-(declare-primed-var top.usr.m Bool)
-(declare-primed-var top.usr.s Bool)
-(declare-primed-var top.usr.OK Bool)
-(declare-primed-var top.res.init_flag Bool)
-(declare-primed-var top.res.abs_0 Bool)
-(declare-primed-var top.res.abs_1 Bool)
-(declare-primed-var top.res.abs_2 Bool)
-(declare-primed-var top.res.abs_3 Int)
-(declare-primed-var top.res.abs_4 Int)
-(declare-primed-var top.res.abs_5 Int)
-(declare-primed-var top.res.abs_6 Bool)
-(declare-primed-var top.res.abs_7 Bool)
-(declare-primed-var top.res.abs_8 Bool)
-(declare-primed-var top.res.abs_9 Bool)
-(declare-primed-var top.res.abs_10 Bool)
-(declare-primed-var top.res.inst_3 Bool)
-(declare-primed-var top.res.inst_2 Bool)
-(declare-primed-var top.res.inst_1 Bool)
-(declare-primed-var top.res.inst_0 Bool)
 
 (define-fun
   init (
   ) Bool
   
   (let
-   ((X1 Bool top.res.abs_10))
+   ((X1 top.res.abs_10))
    (let
-    ((X2 Int top.res.abs_4))
+    ((X2 top.res.abs_4))
     (and
      (= top.usr.OK (=> X1 (< X2 4)))
      (__node_init_voiture_0
   ) Bool
   
   (let
-   ((X1 Bool top.res.abs_10!))
+   ((X1 top.res.abs_10!))
    (let
-    ((X2 Int top.res.abs_4!))
+    ((X2 top.res.abs_4!))
     (and
      (= top.usr.OK! (=> X1 (< X2 4)))
      (__node_trans_voiture_0
index 9f6f65907847d109428325eebd9e5e7283c22652..06c4d3a783cbc933a1e68b905feed4f1851036ac 100644 (file)
@@ -1,8 +1,9 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-unif-pi=complete --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-unif-pi=complete --sygus-out=status
 (set-logic LIA)
 
 (synth-fun f ((x Int) (y Int)) Int
+  ((Start Int) (CBool Bool))
   (
     (Start Int
       (0 1 x y
index a3247e4f4bcc7b053aea6dfce4c25b2104391d4a..551528633d459305f583a75d4a855d6e3f96bba7 100644 (file)
@@ -1,15 +1,12 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-inv-templ=pre --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-inv-templ=pre --sygus-out=status
 
 (set-logic LIA)
 
 (synth-inv inv-f ((i Int) (j Int)))
 
-(declare-primed-var i Int)
-(declare-primed-var j Int)
-
 (define-fun pre-f ((i Int) (j Int)) Bool
-(and (= i 1)  
+(and (= i 1)
 (= j 10)))
 
 (define-fun trans-f ((i Int) (j Int) (i! Int) (j! Int)) Bool
index 65b17605d2ef9f1cbbf6f8c5e6c2851802bab523..c9705f7b844760b3a7c3ebd129aa036d0871dbac 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --cegqi-si=all --sygus-out=status --decision=justification
+; COMMAND-LINE: --lang=sygus2 --cegqi-si=all --sygus-out=status --decision=justification
 
 (set-logic ALL_SUPPORTED)
 (declare-var m Int)
@@ -8,7 +8,7 @@
 (declare-datatypes ((tuple2 0)) ( ((tuple2 (_m Int) (_s Int))) ))
 
 (synth-fun x12 ((m Int) (s Int) (inc Int)) tuple2)
-(constraint (=> 
-(and (>= m 0) (>= s 0) (< s 3) (> inc 0)) 
+(constraint (=>
+(and (>= m 0) (>= s 0) (< s 3) (> inc 0))
 (and (>= (_m (x12 m s inc)) 0) (>= (_s (x12 m s inc)) 0) (< (_s (x12 m s inc)) 3) (= (+ (* (_m (x12 m s inc)) 3) (_s (x12 m s inc))) (+ (+ (* m 3) s) inc)))))
 (check-synth)
index 8203fd9cf8b2493eff29bfdeab63c7a48ee2d75b..5febabc4229a27e17a81068b31394b1b2049b609 100644 (file)
@@ -3,11 +3,12 @@
 ; EXPECT: (error "Maximum term size (2) for enumerative SyGuS exceeded.")
 ; EXIT: 1
 
-; COMMAND-LINE: --sygus-stream --sygus-abort-size=2 --sygus-active-gen=none --decision=justification
+; COMMAND-LINE: --lang=sygus2 --sygus-stream --sygus-abort-size=2 --sygus-active-gen=none --decision=justification
 
 (set-logic LIA)
 
 (synth-fun comm ((x Int) (y Int)) Int
+    ((Start Int))
     ((Start Int (x
                  y
                  (+ Start Start)
index 24201b45366ac40fe6dd5a19fe26f04c2e57b6eb..7fe07c3facd30ae75365d55796da4875d39bd801 100644 (file)
@@ -1,9 +1,10 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 
 (set-logic LIA)
 
 (synth-fun comm ((x Int) (y Int)) Int
+    ((Start Int))
     ((Start Int (x
                  y
                  (+ Start Start)
index 45d49e75b43f74d53e172c750c0dcd2edb4ade0b..18a60f176c07b94e0761ae680919e853520a7251 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic LIA)
 (synth-fun f () Bool)
 (synth-fun g () Bool)
index e20520a4a200b447e47fe77e05422d5ce1453e57..ddbf07d6160038a94157a0c1e36e8cd159c7d91e 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status --sygus-unif-pi=complete
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status --sygus-unif-pi=complete
 
 (set-logic LIA)
 (synth-fun u ((x Int)) Int)
index 330ef026e8cc573223de9c9bb74985fa0d24f73e..356c71d1df4a45a02d15899df5db45c423368345 100644 (file)
@@ -1,16 +1,17 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status --no-sygus-pbe --sygus-repair-const
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status --no-sygus-pbe --sygus-repair-const
 (set-logic BV)
-(synth-fun f ( (x (BitVec 64))) (BitVec 64)
+(synth-fun f ( (x (_ BitVec 64))) (_ BitVec 64)
+((Start (_ BitVec 64)) (StartBool Bool))
 (
-(Start (BitVec 64) (
+(Start (BitVec 64) (
         #x0000000000000000 
         #x0000000000000001 
         x 
         (bvnot Start)
                    (bvadd Start Start)
                    (ite StartBool Start Start)
-                   (Constant (BitVec 64))
+                   (Constant (BitVec 64))
  ))
 (StartBool Bool ((bvule Start Start)))
 )
index 1bb3e59fa551d0f9e7c352e9adf8e2f7d5b143f2..1416d566dffa1470ab6a4b6973799b0f2776d70e 100644 (file)
@@ -1,9 +1,10 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 
 (set-logic LIA)
 
 (synth-fun constant ((x Int)) Int
+    ((Start Int))
     ((Start Int (x
                  0
                  1
index f2b28db9c890ee80f63b5191843431b4e8390fb2..d59fd297d547cde80d7787a3606c99047b96a546 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 
 (set-logic BV)
 
@@ -10,6 +10,7 @@
 
 
 (synth-fun skel ( (LN4 Bool) (LN91 Bool)  )  Bool    
+          ((Start Bool) (depth1 Bool) (depth2 Bool) (depth3 Bool) (depth4 Bool))
           ((Start Bool (
                                   (and depth1 depth1)
                                   (xor depth1 depth1)
index 6e2f54c3159fcd4e9e0fd24d9a48fb3e64eb954c..70aec7c4c483e6b968e53acc823e7b3c2434fe5f 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --cegqi-si=all --cegqi-si-abort --decision=internal --cegqi-si-rcons=try --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --cegqi-si=all --cegqi-si-abort --decision=internal --cegqi-si-rcons=try --sygus-out=status
 
 (set-logic BV)
 
@@ -10,6 +10,8 @@
 
 
 (synth-fun skel ( (LN24 Bool) (k3 Bool) (LN129 Bool) (LN141 Bool)  )  Bool    
+          ((Start Bool) (depth1 Bool) (depth2 Bool) (depth3 Bool) (depth4 Bool)
+           (depth5 Bool) (depth6 Bool) (depth7 Bool) (depth8 Bool))
           ((Start Bool (
                                                  (and depth1 depth1)
                                                  (not depth1)
index 46500ee4d96867497aeb764cfa85bc5987b5934e..1c0abc4fe54823673d91afa33b5d721334a77862 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 
 (set-logic BV)
 
@@ -8,6 +8,7 @@
 )
  
 (synth-fun Imp ((k1 Bool) (k2 Bool) (k3 Bool)) Bool
+ ((Start Bool) (d1 Bool) (d2 Bool))
  ((Start Bool ( (and d1 d1) (or d1 d1) (xor d1 d1) (not d1) ) )
  (d1 Bool ( (and d2 d2) (or d2 d2) (xor d2 d2) (not d2) ) )
  (d2 Bool ( k1 k2 k3) ) )
index da7d98e662a198554c83a0ad1a24c176689e6534..ef57840fee49f0c2bcc8279b643dcc97766f3f18 100644 (file)
@@ -1,24 +1,23 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 
 (set-logic NIA)
 
 (synth-fun cube ((x Int)) Int
+  ((ntInt Int) (ntBool Bool))
   (
-    (Start Int (ntInt))
-  
-    (ntBool Bool
-      ( 
-        (> ntInt ntInt)
-        (= ntInt ntInt)
-      )
-    )
     (ntInt Int
       (1 x
         (* ntInt ntInt)
         (ite ntBool ntInt ntInt)
       )
     )
+    (ntBool Bool
+      ( 
+        (> ntInt ntInt)
+        (= ntInt ntInt)
+      )
+    )
   )
 )
 
index f3fea312254f6a80a49c12b21a67d2c0c3c1779b..0ba8222780459baedf053b49cbcd6b67c7d5d640 100644 (file)
@@ -1,12 +1,12 @@
 ; EXPECT: unsat\r
-; COMMAND-LINE: --sygus-out=status\r
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status\r
 \r
 (set-logic SLIA)\r
 (declare-datatype Ex ((Ex2 (ex Int))))\r
 \r
 (synth-fun double ((x1 Ex)) Int\r
+       ((ntInt Int) (ntEx Ex))\r
        (\r
-               (Start Int (ntInt))\r
                (ntInt Int\r
                        (\r
                                (ex ntEx)\r
index a6e8ac5c2ee0192175bd9e7627159cc1bf07351f..3d078cc2519abb47d86e31c498cecb448484ce5f 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --cegqi-si=all --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --cegqi-si=all --sygus-out=status
 (set-logic LIA)
 
 (declare-datatypes ((List 0)) (((cons (head Int) (tail List)) (nil))))
@@ -11,4 +11,3 @@
 (constraint (is-cons (f x)))
 (constraint (and (= (head (f x)) x) (= (head (f x)) (+ 5 (head (tail (f x)))))))
 (check-synth)
-
index e2c69282e08a88ca15a81c79fb49fc998b529939..517849b2a2d3ea81e32681e9ece6fd990f51af28 100644 (file)
@@ -1,11 +1,11 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --cegqi-si=none --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --cegqi-si=none --sygus-out=status
 (set-logic LIA)
 (synth-fun f ((x Int)) Int
+    ((Start Int) (Con Int))
     ((Start Int ((+ Con Con) (+ Start Start) x))
      (Con Int (0 1))))
 
 (declare-var x Int)
 (constraint (= (f x) (* 2 x)))
 (check-synth)
-
index 7364747fc36042af577a87b213a7dd7d6978b5e2..55b2eb69e334800549539eeed3f13ed484a2a04f 100644 (file)
@@ -1,9 +1,9 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --cegqi-si=all --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --cegqi-si=all --sygus-out=status
 (set-logic LIA)
 ;; this is the custom enumeration datatype syntax from an early proposal of the sygus standard
 (define-sort D (Enum (a b)))
 (define-fun f ((x D)) Int (ite (= x D::a) 3 7))
-(synth-fun g () D ((Start D (D::a D::b))))
+(synth-fun g () D ((Start D)) ((Start D (D::a D::b))))
 (constraint (= (f g) 7))
 (check-synth)
index 67f73aded7eea0461ed07e6456e7719b53056b2b..1ae8cabd997d4b2ca24bbfc89458b038afa84d21 100644 (file)
@@ -1,21 +1,21 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status --cegqi-si=none --sygus-active-gen=enum
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status --cegqi-si=none --sygus-active-gen=enum
 
 (set-logic ALL_SUPPORTED)
 
-(declare-datatypes ((IntRange 0)) 
+(declare-datatypes ((IntRange 0))
    (((IntRange (lower Int) (upper Int)))))
 
-(declare-datatypes ((Loc 0)) 
+(declare-datatypes ((Loc 0))
    (((Loc (x Int) (y Int)))))
 
-(declare-datatypes ((LocRange 0)) 
+(declare-datatypes ((LocRange 0))
    (((LocRange (xD IntRange) (yD IntRange)))))
 
-(declare-datatypes ((Ship 0)) 
+(declare-datatypes ((Ship 0))
    (((Ship (shipCapacity Int) (shipLoc Loc)))))
 
-(declare-datatypes ((ShipRange 0)) 
+(declare-datatypes ((ShipRange 0))
    (((ShipRange (shipCapacityD IntRange) (shipLocD LocRange)))))
 
 (define-fun betweenInt ((x Int) (r IntRange)) Bool
 (declare-var prior ShipRange)
 (declare-var response Bool)
 
-(constraint 
-  (=> (betweenShip secret (f secret prior response)) 
-          (= response 
-             (and (atLeast secret) 
+(constraint
+  (=> (betweenShip secret (f secret prior response))
+          (= response
+             (and (atLeast secret)
                   (subsetShip (f secret prior response) prior))))
 )
 
index d1541fa871ab59d13baafae5310ec07d5a42dbaa..f3cfa09a2084f4cabfec2f34db59a08d73b9e885 100644 (file)
@@ -1,18 +1,19 @@
 ; EXPECT: unsat\r
-; COMMAND-LINE: --sygus-out=status\r
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status\r
 \r
 (set-logic ALL_SUPPORTED)\r
 (declare-datatype Ex ((Ex2 (ex Int))))\r
 \r
 (synth-fun ident ((x1 Ex)) Int\r
+       ((Start Int) (ntInt Int) (ntEx Ex))\r
        (\r
                (Start Int (ntInt))\r
                (ntInt Int\r
                        (\r
                                (ex ntEx)\r
-                       )\r
+                       )\r
                )\r
-               (ntEx Ex ( x1 ) )\r
+               (ntEx Ex ( x1 ))\r
        )\r
 )\r
 (constraint (= (ident (Ex2 1)) 1))\r
index d70516bf156e3029125dca28e1d18ce9905a43a9..2da3809a8a709723fbaf3b83f57c4385385ffefb 100644 (file)
@@ -1,13 +1,11 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 
 (set-logic LIA)
 
-(synth-fun addExpr1 ((x Int) (y Int)) Int
-)
+(synth-fun addExpr1 ((x Int) (y Int)) Int)
 
-(synth-fun addExpr2 ((x Int) (y Int)) Int
-)
+(synth-fun addExpr2 ((x Int) (y Int)) Int)
 
 (declare-var x Int)
 (declare-var y Int)
@@ -15,4 +13,3 @@
 (constraint (= (+ (addExpr1 x y) (addExpr2 y x)) (- x (+ x y))))
 
 (check-synth)
-
index efec0e0e711567d69cf8f35886129107c35a06b0..145064141529e9e9a6f494e49f8de1bdc3189c27 100644 (file)
@@ -1,11 +1,12 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
-; COMMAND-LINE: --sygus-out=status --cegis-sample=trust --no-check-synth-sol
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status --cegis-sample=trust --no-check-synth-sol
 (set-logic BV)
 
 ; we test --cegis-sample=trust since we can exhaustively sample BV4
 
-(synth-fun SC ((s (BitVec 4)) (t (BitVec 4))) Bool
+(synth-fun SC ((s (_ BitVec 4)) (t (_ BitVec 4))) Bool
+  ((Start Bool) (StartBv (_ BitVec 4)))
   ((Start Bool (
      true
      false
@@ -19,7 +20,7 @@
      (bvuge StartBv StartBv)
      (bvsge StartBv StartBv)
    ))
-   (StartBv (BitVec 4) (
+   (StartBv (BitVec 4) (
      s
      t
      #x0
    ))
 ))
 
-(declare-var s (BitVec 4))
-(declare-var t (BitVec 4))
+(declare-var s (BitVec 4))
+(declare-var t (BitVec 4))
 (define-fun udivtotal ((a (_ BitVec 4)) (b (_ BitVec 4))) (_ BitVec 4)
   (ite (= b #x0) #xF (bvudiv a b))
 )
 (define-fun uremtotal ((a (_ BitVec 4)) (b (_ BitVec 4))) (_ BitVec 4)
   (ite (= b #x0) a (bvurem a b))
 )
-(define-fun case ((x (BitVec 4)) (s (BitVec 4)) (t (BitVec 4))) Bool
+(define-fun case ((x (_ BitVec 4)) (s (_ BitVec 4)) (t (_ BitVec 4))) Bool
 (bvult (bvnot x) t)
 )
 (constraint
index bbdbda1bd3a73231356b617feae877ec8a356d61..9a28d6d7918b27ca4bab3387aad6a6b81d92effd 100644 (file)
@@ -1,22 +1,23 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 
 (set-logic BV)
 
-(define-fun hd01 ((x (BitVec 32))) (BitVec 32) (bvand x (bvsub x #x00000001)))
+(define-fun hd01 ((x (_ BitVec 32))) (_ BitVec 32) (bvand x (bvsub x #x00000001)))
 
-(synth-fun f ((x (BitVec 32))) (BitVec 32)
-    ((Start (BitVec 32) ((bvand Start Start)
-                         (bvsub Start Start)
-             (bvor Start Start)
-             (bvadd Start Start)
-             (bvxor Start Start)
-                         x
-             #x00000000
-             #xFFFFFFFF
-                         #x00000001))))
+(synth-fun f ((x (_ BitVec 32))) (_ BitVec 32)
+    ((Start (_ BitVec 32)))
+    ((Start (_ BitVec 32) (
+        (bvand Start Start)
+        (bvsub Start Start)
+        (bvor Start Start)
+        (bvadd Start Start)
+        (bvxor Start Start)
+        x
+        #x00000000
+        #xFFFFFFFF
+        #x00000001))))
 
-(declare-var x (BitVec 32))
+(declare-var x (BitVec 32))
 (constraint (= (hd01 x) (f x)))
 (check-synth)
-
index 37e1daf88508653eeaa224248c7657611b07cb82..c4c90c6f66c0c1879c6b462ee790689fbb79610a 100644 (file)
@@ -1,16 +1,16 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --cegqi-si=none --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --cegqi-si=none --sygus-out=status
 (set-logic BV)
 
-(define-fun hd01 ((x (BitVec 32))) (BitVec 32) (bvand x #x00000001))
+(define-fun hd01 ((x (_ BitVec 32))) (_ BitVec 32) (bvand x #x00000001))
 
-(synth-fun f ((x (BitVec 32))) (BitVec 32)
-    ((Start (BitVec 32) ((bvsdiv Start Start)
-                                                            (bvand Start Start)
+(synth-fun f ((x (_ BitVec 32))) (_ BitVec 32)
+    ((Start (_ BitVec 32)))
+    ((Start (_ BitVec 32) ((bvsdiv Start Start)
+                         (bvand Start Start)
                          x
                          #x00000001))))
 
-(declare-var y (BitVec 32))
+(declare-var y (BitVec 32))
 (constraint (= (hd01 y) (f y)))
 (check-synth)
-
index c664858173cd0f4c0bd98815bf546123d0321b9e..893c2034e6443ba57e12f115a5c120d03b4acf04 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status --uf-ho
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status --uf-ho
 (set-logic ALL)
 (synth-fun f ((y (-> Int Int)) (z Int)) Int)
 (declare-var z (-> Int Int))
index a1e93cc4421c627530d0f2160d3c146a9c3e0959..96851045c13c3a4481cd6ef62ef334b4832eaed6 100644 (file)
@@ -1,28 +1,26 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic BV)
 
-(define-fun shr1 ((x (BitVec 64))) (BitVec 64) (bvlshr x #x0000000000000001))
-(define-fun shr4 ((x (BitVec 64))) (BitVec 64) (bvlshr x #x0000000000000004))
-(define-fun shr16 ((x (BitVec 64))) (BitVec 64) (bvlshr x #x0000000000000010))
-(define-fun shl1 ((x (BitVec 64))) (BitVec 64) (bvshl x #x0000000000000001))
-(define-fun if0 ((y (BitVec 64)) (x (BitVec 64)) (z (BitVec 64))) (BitVec 64) (ite (= x #x0000000000000001) y z))
+(define-fun shr1 ((x (_ BitVec 64))) (_ BitVec 64) (bvlshr x #x0000000000000001))
+(define-fun shr4 ((x (_ BitVec 64))) (_ BitVec 64) (bvlshr x #x0000000000000004))
+(define-fun shr16 ((x (_ BitVec 64))) (_ BitVec 64) (bvlshr x #x0000000000000010))
+(define-fun shl1 ((x (_ BitVec 64))) (_ BitVec 64) (bvshl x #x0000000000000001))
+(define-fun if0 ((y (_ BitVec 64)) (x (_ BitVec 64)) (z (_ BitVec 64))) (_ BitVec 64) (ite (= x #x0000000000000001) y z))
 
-(synth-fun f ( (x (BitVec 64))) (BitVec 64)
-(
-
-(Start (BitVec 64) (#x0000000000000000 #x0000000000000001 x (bvnot Start)
-                    (shl1 Start)
-                   (shr1 Start)
-                   (shr4 Start)
-                   (shr16 Start)
-                   (bvand Start Start)
-                   (bvor Start Start)
-                   (bvxor Start Start)
-                   (bvadd Start Start)
-                   (if0 Start Start Start)
- ))
-)
+(synth-fun f ( (x (_ BitVec 64))) (_ BitVec 64)
+((Start (_ BitVec 64)))
+((Start (_ BitVec 64) (#x0000000000000000 #x0000000000000001 x (bvnot Start)
+            (shl1 Start)
+            (shr1 Start)
+            (shr4 Start)
+            (shr16 Start)
+            (bvand Start Start)
+            (bvor Start Start)
+            (bvxor Start Start)
+            (bvadd Start Start)
+            (if0 Start Start Start)
+)))
 )
 (constraint (= (f #x6E393354DFFAAB51) #xC8E366559002AA57))
 (constraint (= (f #xFDA75AD598A27135) #x812C529533AEC765))
index 51b86f0f5db4bdc23471ba856397e9b87036cf29..6f76346d5af8ebf627d2341b27c9ab6a0e3d886d 100644 (file)
@@ -1,28 +1,26 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic BV)
 
-(define-fun shr1 ((x (BitVec 64))) (BitVec 64) (bvlshr x #x0000000000000001))
-(define-fun shr4 ((x (BitVec 64))) (BitVec 64) (bvlshr x #x0000000000000004))
-(define-fun shr16 ((x (BitVec 64))) (BitVec 64) (bvlshr x #x0000000000000010))
-(define-fun shl1 ((x (BitVec 64))) (BitVec 64) (bvshl x #x0000000000000001))
-(define-fun if0 ((x (BitVec 64)) (y (BitVec 64)) (z (BitVec 64))) (BitVec 64) (ite (= x #x0000000000000001) y z))
+(define-fun shr1 ((x (_ BitVec 64))) (_ BitVec 64) (bvlshr x #x0000000000000001))
+(define-fun shr4 ((x (_ BitVec 64))) (_ BitVec 64) (bvlshr x #x0000000000000004))
+(define-fun shr16 ((x (_ BitVec 64))) (_ BitVec 64) (bvlshr x #x0000000000000010))
+(define-fun shl1 ((x (_ BitVec 64))) (_ BitVec 64) (bvshl x #x0000000000000001))
+(define-fun if0 ((x (_ BitVec 64)) (y (_ BitVec 64)) (z (_ BitVec 64))) (_ BitVec 64) (ite (= x #x0000000000000001) y z))
 
-(synth-fun f ( (x (BitVec 64))) (BitVec 64)
-(
-
-(Start (BitVec 64) (#x0000000000000000 #x0000000000000001 x (bvnot Start)
-                    (shl1 Start)
-                   (shr1 Start)
-                   (shr4 Start)
-                   (shr16 Start)
-                   (bvand Start Start)
-                   (bvor Start Start)
-                   (bvxor Start Start)
-                   (bvadd Start Start)
-                   (if0 Start Start Start)
- ))
-)
+(synth-fun f ( (x (_ BitVec 64))) (_ BitVec 64)
+((Start (_ BitVec 64)))
+((Start (_ BitVec 64) (#x0000000000000000 #x0000000000000001 x (bvnot Start)
+            (shl1 Start)
+            (shr1 Start)
+            (shr4 Start)
+            (shr16 Start)
+            (bvand Start Start)
+            (bvor Start Start)
+            (bvxor Start Start)
+            (bvadd Start Start)
+            (if0 Start Start Start)
+)))
 )
 (constraint (= (f #x6E393354DFFAAB51) #xC8E366559002AA57))
 (constraint (= (f #xFDA75AD598A27135) #x812C529533AEC765))
index f83277757c54c6edcec1f5da2487e5d1341b0559..212943cab9fdf161e1f6d418cc082d4baa62be07 100644 (file)
@@ -1,23 +1,21 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic BV)
 
-(define-fun if0 ((x (BitVec 64)) (y (BitVec 64)) (z (BitVec 64))) (BitVec 64) (ite (= x #x0000000000000001) y z))
+(define-fun if0 ((x (_ BitVec 64)) (y (_ BitVec 64)) (z (_ BitVec 64))) (_ BitVec 64) (ite (= x #x0000000000000001) y z))
 
-(synth-fun f ( (x (BitVec 64))) (BitVec 64)
-(
-
-(Start (BitVec 64) (#x0000000000000000 #x0000000000000001 x (bvnot Start)
-                   (bvand Start Start)
-                   (bvor Start Start)
-                   (bvxor Start Start)
-                   (bvadd Start Start)
-                   (if0 Start Start2 Start2)
-                   (ite StartBool Start Start2)
+(synth-fun f ( (x (_ BitVec 64))) (_ BitVec 64)
+((Start (_ BitVec 64)) (Start2 (_ BitVec 64)) (StartBool Bool))
+((Start (_ BitVec 64) (#x0000000000000000 #x0000000000000001 x (bvnot Start)
+            (bvand Start Start)
+            (bvor Start Start)
+            (bvxor Start Start)
+            (bvadd Start Start)
+            (if0 Start Start2 Start2)
+            (ite StartBool Start Start2)
  ))
-(Start2 (BitVec 64) (#x0000000000000000 #x0000000000000002))
-(StartBool Bool ((= Start Start)))
-)
+ (Start2 (_ BitVec 64) (#x0000000000000000 #x0000000000000002))
+ (StartBool Bool ((= Start Start))))
 )
 (constraint (= (f #x0000000000000001) #x0000000000000001))
 (constraint (= (f #x1ED2E25068744C80) #x0000000000000000))
index 212ae37f5ea2faf6ca12bed78473386dcfb8faad..4ca73b87f5639e2c1796136e408bd8e40932bb7f 100644 (file)
@@ -1,19 +1,18 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 
 (set-logic BV)
 
-(define-fun shr1 ((x (BitVec 64))) (BitVec 64) (bvlshr x #x0000000000000001))
-(define-fun shr4 ((x (BitVec 64))) (BitVec 64) (bvlshr x #x0000000000000004))
-(define-fun shr16 ((x (BitVec 64))) (BitVec 64) (bvlshr x #x0000000000000010))
-(define-fun shl1 ((x (BitVec 64))) (BitVec 64) (bvshl x #x0000000000000001))
-(define-fun if0 ((x (BitVec 64)) (y (BitVec 64)) (z (BitVec 64))) (BitVec 64) (ite (= x #x0000000000000001) y z))
+(define-fun shr1 ((x (_ BitVec 64))) (_ BitVec 64) (bvlshr x #x0000000000000001))
+(define-fun shr4 ((x (_ BitVec 64))) (_ BitVec 64) (bvlshr x #x0000000000000004))
+(define-fun shr16 ((x (_ BitVec 64))) (_ BitVec 64) (bvlshr x #x0000000000000010))
+(define-fun shl1 ((x (_ BitVec 64))) (_ BitVec 64) (bvshl x #x0000000000000001))
+(define-fun if0 ((x (_ BitVec 64)) (y (_ BitVec 64)) (z (_ BitVec 64))) (_ BitVec 64) (ite (= x #x0000000000000001) y z))
 
-(synth-fun f ( (x (BitVec 64))) (BitVec 64)
-(
-
-(Start (BitVec 64) (#x0000000000000000 #x0000000000000001 x (bvnot Start)
-                    (shl1 Start)
+(synth-fun f ( (x (_ BitVec 64))) (_ BitVec 64)
+((Start (_ BitVec 64)))
+((Start (_ BitVec 64) (#x0000000000000000 #x0000000000000001 x (bvnot Start)
+        (shl1 Start)
         (shr1 Start)
         (shr4 Start)
         (shr16 Start)
@@ -21,8 +20,7 @@
         (bvor Start Start)
         (bvxor Start Start)
         (bvadd Start Start)
-        (if0 Start Start Start)
- ))
+        (if0 Start Start Start)))
 )
 )
 
index f0cbbdc534b5c0661dbc7b83f6be0cb06fdc9dab..63cc4736cbc2767299a791fd46ebf5a471148a40 100644 (file)
@@ -1,28 +1,27 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic BV)
 
-(define-fun shr1 ((x (BitVec 64))) (BitVec 64) (bvlshr x #x0000000000000001))
-(define-fun shr4 ((x (BitVec 64))) (BitVec 64) (bvlshr x #x0000000000000004))
-(define-fun shr16 ((x (BitVec 64))) (BitVec 64) (bvlshr x #x0000000000000010))
-(define-fun shl1 ((x (BitVec 64))) (BitVec 64) (bvshl x #x0000000000000001))
-(define-fun if0 ((x (BitVec 64)) (y (BitVec 64)) (z (BitVec 64))) (BitVec 64) (ite (= x #x0000000000000001) y z))
+(define-fun shr1 ((x (_ BitVec 64))) (_ BitVec 64) (bvlshr x #x0000000000000001))
+(define-fun shr4 ((x (_ BitVec 64))) (_ BitVec 64) (bvlshr x #x0000000000000004))
+(define-fun shr16 ((x (_ BitVec 64))) (_ BitVec 64) (bvlshr x #x0000000000000010))
+(define-fun shl1 ((x (_ BitVec 64))) (_ BitVec 64) (bvshl x #x0000000000000001))
+(define-fun if0 ((x (_ BitVec 64)) (y (_ BitVec 64)) (z (_ BitVec 64))) (_ BitVec 64) (ite (= x #x0000000000000001) y z))
 
-(synth-fun f ( (x (BitVec 64))) (BitVec 64)
-(
-
-(Start (BitVec 64) (#x0000000000000000 #x0000000000000001 x (bvnot Start)
-                    (shl1 Start)
-                   (shr1 Start)
-                   (shr4 Start)
-                   (shr16 Start)
-                   (bvand Start Start)
-                   (bvor Start Start)
-                   (bvxor Start Start)
-                   (bvadd Start Start)
-                   (ite StartBool Start Start)
+(synth-fun f ( (x (_ BitVec 64))) (_ BitVec 64)
+((Start (_ BitVec 64)) (StartBool Bool))
+((Start (_ BitVec 64) (#x0000000000000000 #x0000000000000001 x (bvnot Start)
+            (shl1 Start)
+            (shr1 Start)
+            (shr4 Start)
+            (shr16 Start)
+            (bvand Start Start)
+            (bvor Start Start)
+            (bvxor Start Start)
+            (bvadd Start Start)
+            (ite StartBool Start Start)
  ))
-(StartBool Bool ((= Start #x0000000000000001)))
+ (StartBool Bool ((= Start #x0000000000000001)))
 )
 )
 (constraint (= (f #x0000000000000001) #x0000000000000001))
index b5de57533e2c01fbeab52fe9cefc3ebec4b8ac86..18e7ed06e76576809dd205dc908d7f2dcc2ef0e6 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status --no-sygus-pbe --cegqi-si=none --sygus-grammar-cons=any-term-concise
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status --no-sygus-pbe --cegqi-si=none --sygus-grammar-cons=any-term-concise
 
 (set-logic LIA)
 (synth-fun f ((x Int) (y Int)) Int)
index ff68bc06c219554e5f5b31a05c943df0b8e537f5..bcc6c0aa8797fb58c8c33529976798f52cf9d7a1 100644 (file)
@@ -1,10 +1,7 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic LIA)
 (synth-inv inv-f ((x Int) (y Int) (b Bool)))
-(declare-primed-var x Int)
-(declare-primed-var y Int)
-(declare-primed-var b Bool)
 (define-fun pre-f ((x Int) (y Int) (b Bool)) Bool (and (and (>= x 5) (<= x 9)) (and (>= y 1) (<= y 3))))
 (define-fun trans-f ((x Int) (y Int) (b Bool) (x! Int) (y! Int) (b! Bool)) Bool (and (and (= b! b) (= y! x)) (ite b (= x! (+ x 10)) (= x! (+ x 12)))))
 (define-fun post-f ((x Int) (y Int) (b Bool)) Bool (<= y x))
index b04022766c518547a9a7cbd4ae3bb4bbfedeb0f6..f8a3136f20d962f699fc90bc846ec6b1a497ca79 100644 (file)
@@ -1,12 +1,9 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic LIA)
 
 (synth-inv inv-f ((x Int) (z Int)))
 
-(declare-primed-var x Int)
-(declare-primed-var z Int)
-
 (define-fun pre-f ((x Int) (z Int)) Bool
   (and (> x (- 0 100)) (< x 200)
        (> z 100) (< z 200)))
@@ -22,4 +19,4 @@
 
 (inv-constraint inv-f pre-f trans-f post-f)
 
-(check-synth)
\ No newline at end of file
+(check-synth)
index 91ba95d392619a11afd9620ef90c3ca543670807..a5eb41b260a5d0b66aada18527ad5eee45b513fc 100644 (file)
@@ -1,10 +1,7 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic LIA)
 (synth-inv inv-f ((x Int) (y Int) (b Bool)))
-(declare-primed-var x Int)
-(declare-primed-var y Int)
-(declare-primed-var b Bool)
 (define-fun pre-f ((x Int) (y Int) (b Bool)) Bool (and (>= x 5) (<= x 9)))
 (define-fun trans-f ((x Int) (y Int) (b Bool) (x! Int) (y! Int) (b! Bool)) Bool (= x! (+ x 1)))
 (define-fun post-f ((x Int) (y Int) (b Bool)) Bool (> x 0))
index 19c36e4dc4fe654c6aecb2380b8c2e7000f5c0a7..5c1aa4852e4c7928ebb961fbf841162e928a767a 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic LIA)
 (synth-fun inv ((l Int)) Bool
     (
@@ -8,9 +8,9 @@
         (AtomicFormula Bool ((<= Sum Const) (= Sum Const)))
         (Sum Int ((+ Term Term)))
         (Term Int ((* Sign Var)))
-        (Sign Int (0 1 -1))
+        (Sign Int (0 1 (- 1)))
         (Var Int (l))
-        (Const Int (-3 -2 -1 0 1 2 3))
+        (Const Int ((- 3) (- 2) (- 1) 0 1 2 3))
     )
 )
 
 (declare-var x4p Int)
 
 (constraint (implies (and6 (= l 0) (or (= x0p (+ x0 1)) (= x0p (- x0 1))) 
-                                 (or (= x1p (+ x1 1)) (= x1p (- x1 1)))
-                                 (or (= x2p (+ x2 1)) (= x2p (- x2 1)))
-                                 (or (= x3p (+ x3 1)) (= x3p (- x3 1)))
-                                 (or (= x4p (+ x4 1)) (= x4p (- x4 1)))) 
-                    (inv l)))
+                  (or (= x1p (+ x1 1)) (= x1p (- x1 1)))
+                  (or (= x2p (+ x2 1)) (= x2p (- x2 1)))
+                  (or (= x3p (+ x3 1)) (= x3p (- x3 1)))
+                  (or (= x4p (+ x4 1)) (= x4p (- x4 1)))) 
+             (inv l)))
 (constraint (implies (and (inv l) (not (= l 0))) false))
 
 (check-synth)
index 0f125a87027655a4f589c9ea23310c825eafe8a3..71a5a59872ed90d4dbfcbdd7b74aa69bb44ff3f6 100644 (file)
@@ -1,18 +1,12 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic SLIA)
-(declare-datatype JSIdentifier ((JSString (jsString String)) (Error )))
 
-(synth-fun substring ((x1 String) (x3 Int))String
-       ((Start String (ntString))
-               (ntInt Int
-                       (0 x3)
-               )
-               (ntJSIdentifier JSIdentifier
-                       ( 
-                               Error
-                       )
-               )
+(declare-datatype JSIdentifier ((JSString (jsString String)) (Error)))
+
+(synth-fun substring ((x1 String) (x3 Int)) String
+       ((ntString String) (ntInt Int) (ntJSIdentifier JSIdentifier))
+       (
                (ntString String
                        (x1
                                (str.substr ntString ntInt ntInt)
                                (str.++ ntString ntString)
                        )
                )
+               (ntInt Int
+                       (0 x3)
+               )
+               (ntJSIdentifier JSIdentifier
+                       (
+                               Error
+                       )
+               )
        )
 )
+
 (constraint (= (substring "ey" 1) "e"))
 (check-synth)
index 5616d19f5c146dfa8cfeb39f187b192f84d6d1d9..ea8011a5e5594d54cc61f5ad817feeb8084c0311 100644 (file)
@@ -1,10 +1,18 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic SLIA)
-(declare-datatype JSIdentifier ((JSInt (jsInt Int)) (JSString (jsString String)) ))
+
+(declare-datatype JSIdentifier ((JSInt (jsInt Int)) (JSString (jsString String))))
 
 (synth-fun f ((x1_ JSIdentifier)(x2_ String)) JSIdentifier
-       ((Start JSIdentifier (ntJSIdentifier))
+       ((ntJSIdentifier JSIdentifier) (ntInt Int) (ntString String) (ntBool Bool))
+       (
+               (ntJSIdentifier JSIdentifier
+                       (x1_
+                       (ite ntBool ntJSIdentifier ntJSIdentifier)
+                       (JSString ntString)
+                       )
+               )
                (ntInt Int
                        (1
                                (+ ntInt ntInt)
                        )
                )
                (ntBool Bool
-                       ( 
+                       (
                                (= ntString ntString)
                        )
                )
-               (ntJSIdentifier JSIdentifier
-                       ( x1_  
-                       (ite ntBool ntJSIdentifier ntJSIdentifier)
-                       (JSString ntString)
-                       )
-               )
        )
 )
+
 (constraint (= (f (JSString "") "") (JSString "")))
 (constraint (= (f (JSString "M") "W") (JSString "M")))
 (constraint (= (f (JSString "Moon") "") (JSString "on")))
+
 (check-synth)
index a7b76182e8bbd5c274c99426e3652b6be186e3b7..2d99ba5cff16ed1697ca9bce35c625dba1af383c 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic LIA)
 (declare-var x Int)
 (declare-var y Int)
index 12949c55aa9d89dc4294e94c221e8753eb52cbb2..b650c4ca6e463fd014361a1208869236964b7d21 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unknown
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic ALL)
 (synth-fun inv-fn ((i Int) (x (Array Int Int)) (c Int)) Bool)
 
@@ -18,7 +18,6 @@
 (declare-var i! Int)
 (declare-var c Int)
 
-       
 (constraint (=> (init-fn i x c) (inv-fn i x c)))
 (constraint (=> (inv-fn i x c) (post-fn i x c)))
 (check-synth)
index 31f660b2a66cede31464ffbd07f9c75b86de637c..d93644197d224e5cf98902c63b1af90d664f32c1 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --cegqi-si=none --sygus-out=status --sygus-add-const-grammar
+; COMMAND-LINE: --lang=sygus2 --cegqi-si=none --sygus-out=status --sygus-add-const-grammar
 (set-logic LIA)
 
 (synth-fun lc ((x Int)) Int)
index 5c2dccff0791dc95822734afba2ed3459dd93260..1f383ab4301612967b5ab26412804c06cfeab7e9 100644 (file)
@@ -1,15 +1,19 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic LIA)
-(define-fun letf ((z Int) (v1 Int) (v2 Int)) Bool  
-  (or 
-    (= v1 z) 
+(define-fun letf ((z Int) (v1 Int) (v2 Int)) Bool
+  (or
+    (= v1 z)
     (= v2 z)))
 (synth-fun f ((x0 Int) (x1 Int)) Bool
+((Start Bool) (StartInt Int) (IntVar Int))
 (
-       (StartInt Int (5))
+  (Start Bool ( (letf StartInt IntVar IntVar) ))
 
-       (Start Bool (  (letf StartInt (Variable Int) (Variable Int)) ))
+  (StartInt Int (5))
+
+  ; "Hack" to avoid parse errors in V2 format.
+  (IntVar Int ((Variable Int)))
 )
 )
 
index 6c5c1a97b2418d5ecfdecb246c3bae809463e75e..83ac8290d5fbddbcea626c860e30f22f49a8d6b7 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --cegqi-si=all --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --cegqi-si=all --sygus-out=status
 (set-logic ALL_SUPPORTED)
 
 (declare-datatypes ((List 0)) (((cons (head Int) (tail List)) (nil))))
index 1ba05e64844deff8879b8b1b9c46df6a9df6c9be..d6e8a75a4e7b8a60da6a84bd984e336d3b968387 100644 (file)
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status --sygus-repair-const
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status --sygus-repair-const
 (set-logic BV)
 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ; Utils
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 
-(define-sort Bit () (BitVec 1))
+(define-sort Bit () (BitVec 1))
 
-(define-fun bit2bool ((b Bit)) Bool 
+(define-fun bit2bool ((b Bit)) Bool
     (= b #b1)
 )
 
-(define-fun extend ((i (BitVec 4))) (BitVec 16)
+(define-fun extend ((i (_ BitVec 4))) (_ BitVec 16)
     (concat #b000000000000 i)
 )
 
-(define-fun extractBit ((i (BitVec 4)) (x (BitVec 16))) Bit
-       ((_ extract 0 0) (bvlshr x (extend i)))
+(define-fun extractBit ((i (_ BitVec 4)) (x (_ BitVec 16))) Bit
+    ((_ extract 0 0) (bvlshr x (extend i)))
 )
 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ; Arch
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 
-(define-fun lut4 ((i0 Bit) (i1 Bit) (i2 Bit) (i3 Bit) (lut_val (BitVec 16))) Bit
+(define-fun lut4 ((i0 Bit) (i1 Bit) (i2 Bit) (i3 Bit) (lut_val (BitVec 16))) Bit
     (extractBit (concat i0 i1 i2 i3) lut_val)
 )
 
 (define-fun carry ((i0 Bit) (i1 Bit) (ci Bit)) Bit
-       (bvor (bvand i0 i1) (bvand i0 ci) (bvand i1 ci))
+    (bvor (bvand i0 i1) (bvand i0 ci) (bvand i1 ci))
 )
 
 (define-fun mux2 ((s Bit) (i0 Bit) (i1 Bit)) Bit
     ;(ite (bit2bool s) i0 i1)
-       (bvor (bvand s i0) (bvand (bvnot s) i1))
+    (bvor (bvand s i0) (bvand (bvnot s) i1))
 )
 
 (define-fun logic-cell (
-               (i0 Bit) (i1 Bit) (i2 Bit) (i3 Bit) (c_in Bit) ; inputs
-               (s Bit) (lut_val (BitVec 16)) ;configs
-       ) (BitVec 2) ; Cout O
-       (let (
-               (c_out Bit (carry i1 i2 c_in)) 
-               (l_out Bit (lut4 i0 i1 i2 (mux2 s i3 c_in) lut_val))
-       )
-       (concat c_out l_out)
+        (i0 Bit) (i1 Bit) (i2 Bit) (i3 Bit) (c_in Bit) ; inputs
+        (s Bit) (lut_val (_ BitVec 16)) ;configs
+    ) (_ BitVec 2) ; Cout O
+    (let (
+        (c_out (carry i1 i2 c_in))
+        (l_out (lut4 i0 i1 i2 (mux2 s i3 c_in) lut_val))
+    )
+    (concat c_out l_out)
 ))
 
 (define-fun plb2 (
-               (i_0_0 Bit) (i_0_1 Bit) (i_0_2 Bit) (i_0_3 Bit)
-               (i_1_0 Bit) (i_1_1 Bit) (i_1_2 Bit) (i_1_3 Bit)
-               (c_in Bit)
-               (s_0 Bit) (lut_val_0 (BitVec 16)) ;configs
-               (s_1 Bit) (lut_val_1 (BitVec 16)) ;configs
-       ) (BitVec 3)
-       (let ((lc0 (BitVec 2) (logic-cell i_0_0 i_0_1 i_0_2 i_0_3 c_in s_0 lut_val_0)))
-       (let ((lc1 (BitVec 2) (logic-cell i_1_0 i_1_1 i_1_2 i_1_3 ((_ extract 1 1) lc0) s_1 lut_val_1)))
-       (concat lc1 ((_ extract 0 0) lc0))
-       ))
+        (i_0_0 Bit) (i_0_1 Bit) (i_0_2 Bit) (i_0_3 Bit)
+        (i_1_0 Bit) (i_1_1 Bit) (i_1_2 Bit) (i_1_3 Bit)
+        (c_in Bit)
+        (s_0 Bit) (lut_val_0 (_ BitVec 16)) ;configs
+        (s_1 Bit) (lut_val_1 (_ BitVec 16)) ;configs
+    ) (_ BitVec 3)
+    (let ((lc0 (logic-cell i_0_0 i_0_1 i_0_2 i_0_3 c_in s_0 lut_val_0)))
+    (let ((lc1 (logic-cell i_1_0 i_1_1 i_1_2 i_1_3 ((_ extract 1 1) lc0) s_1 lut_val_1)))
+    (concat lc1 ((_ extract 0 0) lc0))
+    ))
 )
-       
 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 ; synth
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
 
-(define-fun extract2 ((i (BitVec 1)) (x (BitVec 2))) Bit
-       ((_ extract 0 0) (bvlshr x (concat #b0 i)))
+(define-fun extract2 ((i (_ BitVec 1)) (x (_ BitVec 2))) Bit
+    ((_ extract 0 0) (bvlshr x (concat #b0 i)))
 )
 
-(synth-fun f ((x (BitVec 2)) (y (BitVec 2)) (c_in Bit)) (BitVec 3) (
-       (Start (BitVec 3) (
-               (plb2 #b0 (extract2 #b0 x) (extract2 #b0 y) #b0
-                         #b0 (extract2 #b1 x) (extract2 #b1 y) #b0
-                         Cin
-                         S LUT_VAL 
-                         S LUT_VAL)
-       ))
-       (Cin Bit (
-               c_in
-               (Constant Bit)
-       ))
-       (S Bit (
-               (Constant Bit)
-       ))
-       (LUT_VAL (BitVec 16) (  
-               (Constant (BitVec 16))
-       ))
+(synth-fun f ((x (_ BitVec 2)) (y (_ BitVec 2)) (c_in Bit)) (_ BitVec 3)
+    ((Start (_ BitVec 3)) (Cin Bit) (S Bit) (LUT_VAL (_ BitVec 16))) (
+    (Start (_ BitVec 3) (
+        (plb2 #b0 (extract2 #b0 x) (extract2 #b0 y) #b0
+              #b0 (extract2 #b1 x) (extract2 #b1 y) #b0
+              Cin
+              S LUT_VAL
+              S LUT_VAL)
+    ))
+    (Cin Bit (
+        c_in
+        (Constant Bit)
+    ))
+    (S Bit (
+        (Constant Bit)
+    ))
+    (LUT_VAL (_ BitVec 16) (
+        (Constant (_ BitVec 16))
+    ))
 ))
 
-(declare-var x (BitVec 2))
-(declare-var y (BitVec 2))
+(declare-var x (BitVec 2))
+(declare-var y (BitVec 2))
 
-(constraint (= 
-                       (bvadd (concat #b0 x) (concat #b0 y))
-                       (f x y #b0)
+(constraint (=
+            (bvadd (concat #b0 x) (concat #b0 y))
+            (f x y #b0)
 ))
 
-(constraint (= 
-                       (bvadd (bvadd (concat #b0 x) (concat #b0 y)) #b001)
-                       (f x y #b1)
+(constraint (=
+            (bvadd (bvadd (concat #b0 x) (concat #b0 y)) #b001)
+            (f x y #b1)
 ))
 
-
 (check-synth)
-       
-;(define-fun lut4_ite ((I0 Bit) (I1 Bit) (I2 Bit) (I3 Bit) (LUT_VAL (BitVec 16))) Bit
-;      (let ((s3 (BitVec 8)  (ite (bit2bool I3) ((_ extract 15 8) LUT_VAL) ((_ extract 7 0) LUT_VAL))))
-;       (let ((s2 (BitVec 4) (ite (bit2bool I2) ((_ extract 7 4) s3) ((_ extract 3 0) s3))))
-;        (let ((s1 (BitVec 2) (ite (bit2bool I1) ((_ extract 3 2) s2) ((_ extract 1 0) s2))))
-;         (let ((s0 (BitVec 1) (ite (bit2bool I0) ((_ extract 1 1) s1) ((_ extract 0 0) s1))))
-;          s0
-;         )
-;        )
-;       )
-;      )
+
+;(define-fun lut4_ite ((I0 Bit) (I1 Bit) (I2 Bit) (I3 Bit) (LUT_VAL (BitVec 16))) Bit
+;    (let ((s3 (_ BitVec 8)  (ite (bit2bool I3) ((_ extract 15 8) LUT_VAL) ((_ extract 7 0) LUT_VAL))))
+;     (let ((s2 (ite (bit2bool I2) ((_ extract 7 4) s3) ((_ extract 3 0) s3))))
+;      (let ((s1 (ite (bit2bool I1) ((_ extract 3 2) s2) ((_ extract 1 0) s2))))
+;       (let ((s0 (ite (bit2bool I0) ((_ extract 1 1) s1) ((_ extract 0 0) s1))))
+;        s0
+;       )
+;      )
+;     )
+;    )
 ;)
index 297bd9179b79b133d6b64b31f5010eeba0fb265a..fa98ef26be55a18a36022dceb21fd5a946550e6a 100644 (file)
@@ -1,26 +1,17 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic BV)
 
-(synth-fun max2 ((x (BitVec 32))(y (BitVec 32))) (BitVec 32)
-)
+(synth-fun max2 ((x (_ BitVec 32)) (y (_ BitVec 32))) (_ BitVec 32))
 
-(declare-var x (BitVec 32))
+(declare-var x (BitVec 32))
 
-(declare-var y (BitVec 32))
+(declare-var y (BitVec 32))
 
-(constraint 
-(bvuge (max2 x y) x)
-)
+(constraint (bvuge (max2 x y) x))
 
-(constraint 
-(bvuge (max2 x y) y)
-)
+(constraint (bvuge (max2 x y) y))
 
-(constraint 
-(or (= x (max2 x y)) (= y (max2 x y)))
-)
+(constraint (or (= x (max2 x y)) (= y (max2 x y))))
 
 (check-synth)
-
-
index 22a2e0a4b8ddbcfbe6004cb46e6ccd5b5078afe0..a20bf853da03bd67da359f50edc05e60d78f2fd4 100644 (file)
@@ -1,27 +1,29 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 
 (set-logic LIA)
 
 (synth-fun addExpr1 ((x Int) (y Int)) Int
+    ((Start Int))
     ((Start Int (x
                  y
-     0
-     1
+                 0
+                 1
                  (+ Start Start)
                  (- Start Start)
                  ))
-          ))
+    ))
 
 (synth-fun addExpr2 ((x Int) (y Int)) Int
+((Start Int))
     ((Start Int (x
                  y
-     0
-     1
+                 0
+                 1
                  (+ Start Start)
                  (- Start Start)
                  ))
-          ))
+    ))
 
 
 (declare-var x Int)
index a1776cf93e152f7a1ec7674227b29160c08fe569..f9b6708d5bf0360eee25760454789e24a56df037 100644 (file)
@@ -1,11 +1,11 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic LIA)
 (synth-fun f ((x Int)) Int
+    ((Start Int) (Con Int))
     ((Start Int ((+ (+ Con Con) Con) x))
      (Con Int (0 1))))
 
 (declare-var x Int)
 (constraint (= (f x) 2))
 (check-synth)
-
index da26a6c931347b1c3dd48c48390e504f5b30294e..c36232a5ddc6ed8a3f60ea104fafe44ae2600535 100644 (file)
@@ -1,11 +1,11 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic LIA)
 (synth-fun f ((x Int)) Int
+    ((Start Int) (Con Int))
     ((Start Int ((+ Con Con) (+ (+ Start Start) Con) x))
      (Con Int (0 1))))
 
 (declare-var x Int)
 (constraint (= (f x) (* 2 x)))
 (check-synth)
-
index 6e7f70ff0d60b88fa90f81c3ea602c9ddf20efdc..5d63ab0235d5fb14f768a8cc733e7b58255da6cb 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --cegqi-si=all --sygus-out=status --nl-ext-tplanes
+; COMMAND-LINE: --lang=sygus2 --cegqi-si=all --sygus-out=status --nl-ext-tplanes
 (set-logic NIA)
 
 (synth-fun max ((x Int) (y Int)) Int)
index c0f0e4c0f8f0d048bff83f26a197cca6001dcf26..42b73394b750772d834bfad5bd50807a38967a7a 100644 (file)
@@ -1,9 +1,10 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 
 (set-logic LIA)
 
 (synth-fun f ((x Int) (y Int)) Int
+    ((Start Int))
     ((Start Int (x
                  y
                  0
@@ -15,6 +16,4 @@
 
 (constraint (= (f x y) (+ x y)))
 
-
 (check-synth)
-
index f964d6039e1b74637660303227ae9a271bff3d48..ff10c12633833c7d9a1dc076740c6d5f0c533927 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic LIA)
 
 (synth-fun p ((x Int) (y Int)) Int)
@@ -12,4 +12,3 @@
 (constraint (>= (m x y) x))
 
 (check-synth)
-
index 70cb6b2d2597887a5c6c5af0a8154b48d0fd6eab..4c588ee17c1afc206feae721cbe51f32fbf89ebf 100644 (file)
@@ -1,27 +1,25 @@
 ; EXPECT: unsat\r
-; COMMAND-LINE: --sygus-out=status\r
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status\r
 (set-logic BV)\r
 \r
-(define-fun shr1 ((x (BitVec 64))) (BitVec 64) (bvlshr x #x0000000000000001))\r
-(define-fun shr4 ((x (BitVec 64))) (BitVec 64) (bvlshr x #x0000000000000004))\r
-(define-fun shr16 ((x (BitVec 64))) (BitVec 64) (bvlshr x #x0000000000000010))\r
-(define-fun shl1 ((x (BitVec 64))) (BitVec 64) (bvshl x #x0000000000000001))\r
-(define-fun if0 ((x (BitVec 64)) (y (BitVec 64)) (z (BitVec 64))) (BitVec 64) (ite (= x #x0000000000000001) y z))\r
-\r
-(synth-fun f ( (x (BitVec 64))) (BitVec 64)\r
-(\r
-\r
-(Start (BitVec 64) (#x0000000000000000 #x0000000000000001 x (bvnot Start)\r
-                    (shl1 Start)\r
-                   (shr1 Start)\r
-                   (shr4 Start)\r
-                   (shr16 Start)\r
-                   (bvand Start Start)\r
-                   (bvor Start Start)\r
-                   (bvxor Start Start)\r
-                   (bvadd Start Start)\r
-                   (if0 Start Start Start)\r
- ))\r
+(define-fun shr1 ((x (_ BitVec 64))) (_ BitVec 64) (bvlshr x #x0000000000000001))\r
+(define-fun shr4 ((x (_ BitVec 64))) (_ BitVec 64) (bvlshr x #x0000000000000004))\r
+(define-fun shr16 ((x (_ BitVec 64))) (_ BitVec 64) (bvlshr x #x0000000000000010))\r
+(define-fun shl1 ((x (_ BitVec 64))) (_ BitVec 64) (bvshl x #x0000000000000001))\r
+(define-fun if0 ((x (_ BitVec 64)) (y (_ BitVec 64)) (z (_ BitVec 64))) (_ BitVec 64) (ite (= x #x0000000000000001) y z))\r
+\r
+(synth-fun f ( (x (_ BitVec 64))) (_ BitVec 64)\r
+((Start (_ BitVec 64)))\r
+((Start (_ BitVec 64) (#x0000000000000000 #x0000000000000001 x (bvnot Start)\r
+            (shl1 Start)\r
+            (shr1 Start)\r
+            (shr4 Start)\r
+            (shr16 Start)\r
+            (bvand Start Start)\r
+            (bvor Start Start)\r
+            (bvxor Start Start)\r
+            (bvadd Start Start)\r
+            (if0 Start Start Start)))\r
 )\r
 )\r
 \r
 (constraint (= (f #x483db90b3dee6596) #x0000483db90b3dee))\r
 (constraint (= (f #x55376e703c4a1ea8) #x000055376e703c4a))\r
 \r
-(synth-fun g ( (x (BitVec 64))) (BitVec 64)\r
-(\r
-\r
-(Start (BitVec 64) (#x0000000000000000 #x0000000000000001 x (bvnot Start)\r
-                    (shl1 Start)\r
-                   (shr1 Start)\r
-                   (shr4 Start)\r
-                   (shr16 Start)\r
-                   (bvand Start Start)\r
-                   (bvor Start Start)\r
-                   (bvxor Start Start)\r
-                   (bvadd Start Start)\r
-                   (if0 Start Start Start)\r
- ))\r
+(synth-fun g ( (x (_ BitVec 64))) (_ BitVec 64)\r
+((Start (_ BitVec 64)))\r
+((Start (_ BitVec 64) (#x0000000000000000 #x0000000000000001 x (bvnot Start)\r
+            (shl1 Start)\r
+            (shr1 Start)\r
+            (shr4 Start)\r
+            (shr16 Start)\r
+            (bvand Start Start)\r
+            (bvor Start Start)\r
+            (bvxor Start Start)\r
+            (bvadd Start Start)\r
+            (if0 Start Start Start)))\r
 )\r
 )\r
 \r
index 00a031ed46867c0232d9a2ec81d50975dd997af6..0b402acf5d2c9c8a6f979e5302de33a3aedae825 100644 (file)
@@ -1,25 +1,21 @@
-; COMMAND-LINE: --cegqi-si=none --sygus-out=status --sygus-fair=direct\r
+; COMMAND-LINE: --lang=sygus2 --cegqi-si=none --sygus-out=status --sygus-fair=direct\r
 ; EXPECT: unsat\r
 (set-logic SLIA)\r
\r
+\r
 (synth-fun f ((name String)) String\r
-    ((Start String (ntString))\r
-     (ntString String (name " "\r
+    ((ntString String) (ntInt Int))\r
+    ((ntString String (name " "\r
                        (str.++ ntString ntString)\r
                        (str.replace ntString ntString ntString)\r
                        (str.at ntString ntInt)\r
-                       (int.to.str ntInt)\r
+                       (str.from_int ntInt)\r
                        (str.substr ntString ntInt ntInt)))\r
       (ntInt Int (0 1 2 3 4 5\r
                   (+ ntInt ntInt)\r
                   (- ntInt ntInt)\r
                   (str.len ntString)\r
-                  (str.to.int ntString)\r
-                  (str.indexof ntString ntString ntInt)))\r
-      (ntBool Bool (true false\r
-                    (str.prefixof ntString ntString)\r
-                    (str.suffixof ntString ntString)\r
-                    (str.contains ntString ntString)))))\r
+                  (str.to_int ntString)\r
+                  (str.indexof ntString ntString ntInt)))))\r
 \r
 (declare-var name String)\r
 (constraint (= (f "938-242-504") "242"))\r
index 3a715501aaf3676e3f20fe6469e97a8e7eb59d59..212c2559565a38c50f66ee5b7acc1d706ff37fbd 100644 (file)
@@ -1,8 +1,8 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-unif-pi=complete --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-unif-pi=complete --sygus-out=status
 (set-logic LIA)
 
-(define-fun get-y ((currPoint Int)) Int 
+(define-fun get-y ((currPoint Int)) Int
 (ite (< currPoint 10) 0 (ite (< currPoint 20) 1 (ite (< currPoint 30) 2 (ite (< currPoint 40) 3 (ite (< currPoint 50) 4 (ite (< currPoint 60) 5 (ite (< currPoint 70) 6 (ite (< currPoint 80) 7 (ite (< currPoint 90) 8 9))))))))))
 
 (define-fun get-x ((currPoint Int)) Int
 (ite (= move 0) currPoint 
 (ite (= move 1)  (ite (or (< (+ (get-y currPoint) 1) 0) (>= (+ (get-y currPoint) 1) 10))     currPoint (+ currPoint  10)) 
 (ite (= move 2)  (ite (or (< (+ (get-x currPoint) 1) 0) (>= (+ (get-x currPoint) 1) 10))     currPoint (+ currPoint  1)) 
-(ite (= move 3)  (ite (or (< (+ (get-y currPoint) -1) 0) (>= (+ (get-y currPoint) -1) 10))     currPoint (+ currPoint  -10)) 
-(ite (= move 4)  (ite (or (< (+ (get-x currPoint) -1) 0) (>= (+ (get-x currPoint) -1) 10))     currPoint (+ currPoint  -1)) 
+(ite (= move 3)  (ite (or (< (+ (get-y currPoint)(- 1)) 0) (>= (+ (get-y currPoint)(- 1)) 10))     currPoint (+ currPoint (- 10))) 
+(ite (= move 4)  (ite (or (< (+ (get-x currPoint)(- 1)) 0) (>= (+ (get-x currPoint)(- 1)) 10))     currPoint (+ currPoint (- 1))) 
 currPoint))))))
 
 (define-fun interpret-move-obstacle-0 (( currPoint Int ) ( move Int)) Int
 (ite (= move 0)  (ite (or (< (+ (get-y currPoint) 1) 0) (>= (+ (get-y currPoint) 1) 10))     currPoint (+ currPoint  10)) 
-(ite (= move 1)  (ite (or (< (+ (get-y currPoint) -1) 0) (>= (+ (get-y currPoint) -1) 10))     currPoint (+ currPoint  -10)) 
+(ite (= move 1)  (ite (or (< (+ (get-y currPoint)(- 1)) 0) (>= (+ (get-y currPoint)(- 1)) 10))     currPoint (+ currPoint (- 10))) 
 currPoint)))
 
 (define-fun interpret-move-obstacle-1 (( currPoint Int ) ( move Int)) Int
 (ite (= move 0)  (ite (or (< (+ (get-y currPoint) 1) 0) (>= (+ (get-y currPoint) 1) 10))     currPoint (+ currPoint  10)) 
 (ite (= move 1) currPoint 
-(ite (= move 2)  (ite (or (< (+ (get-y currPoint) -1) 0) (>= (+ (get-y currPoint) -1) 10))     currPoint (+ currPoint  -10)) 
+(ite (= move 2)  (ite (or (< (+ (get-y currPoint)(- 1)) 0) (>= (+ (get-y currPoint)(- 1)) 10))     currPoint (+ currPoint (- 10))) 
 currPoint))))
 
 (define-fun allowable-move-obstacle-0 (( start Int ) ( end Int)) Bool
@@ -37,12 +37,12 @@ currPoint))))
 
 (define-fun get-move-obstacle-0 (( start Int ) ( end Int)) Int
        (ite (= (interpret-move-obstacle-0 start 0) end) 0 
-       (ite (= (interpret-move-obstacle-0 start 1) end) 1  -1)))
+       (ite (= (interpret-move-obstacle-0 start 1) end) 1 (- 1))))
 
 (define-fun get-move-obstacle-1 (( start Int ) ( end Int)) Int
        (ite (= (interpret-move-obstacle-1 start 0) end) 0 
        (ite (= (interpret-move-obstacle-1 start 1) end) 1 
-       (ite (= (interpret-move-obstacle-1 start 2) end) 2  -1))))
+       (ite (= (interpret-move-obstacle-1 start 2) end) 2 (- 1)))))
 
 (define-fun no-overlap-one-move-combination-2-2 ((p0 Int) (p1 Int) (p2 Int) (p3 Int)) Bool
        (and (not (= p0 p2)) (and (not (= p0 p3)) (and (not (= p1 p2)) (and (not (= p1 p3)) true)))))
@@ -51,42 +51,42 @@ currPoint))))
        (= 1
        (ite (= move 0) 
                (ite (= obstacleMove 0) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 10)) 1 0)
-               (ite (= obstacleMove 1) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) -10)) 1 0) 0))
+               (ite (= obstacleMove 1) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0)(- 10))) 1 0) 0))
        (ite (= move 1) 
                (ite (= obstacleMove 0) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) 10) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 10)) 1 0)
-               (ite (= obstacleMove 1) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) 10) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) -10)) 1 0) 0))
+               (ite (= obstacleMove 1) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) 10) obstacleCurrPoint (+ (+ obstacleCurrPoint 0)(- 10))) 1 0) 0))
        (ite (= move 2) 
                (ite (= obstacleMove 0) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 1) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 10)) 1 0)
-               (ite (= obstacleMove 1) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 1) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) -10)) 1 0) 0))
+               (ite (= obstacleMove 1) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 1) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0)(- 10))) 1 0) 0))
        (ite (= move 3) 
-               (ite (= obstacleMove 0) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) -10) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 10)) 1 0)
-               (ite (= obstacleMove 1) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) -10) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) -10)) 1 0) 0))
+               (ite (= obstacleMove 0) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0)(- 10)) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 10)) 1 0)
+               (ite (= obstacleMove 1) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0)(- 10)) obstacleCurrPoint (+ (+ obstacleCurrPoint 0)(- 10))) 1 0) 0))
        (ite (= move 4) 
-               (ite (= obstacleMove 0) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint -1) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 10)) 1 0)
-               (ite (= obstacleMove 1) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint -1) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) -10)) 1 0) 0)) 0)))))))
+               (ite (= obstacleMove 0) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint(- 1)) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 10)) 1 0)
+               (ite (= obstacleMove 1) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint(- 1)) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0)(- 10))) 1 0) 0)) 0)))))))
 
 (define-fun no-overlaps-1 (( currPoint Int ) ( move Int) (obstacleCurrPoint Int) (obstacleMove Int)) Bool
        (= 1
        (ite (= move 0) 
                (ite (= obstacleMove 0) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 10)) 1 0)
                (ite (= obstacleMove 1) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 0)) 1 0)
-               (ite (= obstacleMove 2) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) -10)) 1 0) 0)))
+               (ite (= obstacleMove 2) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0)(- 10))) 1 0) 0)))
        (ite (= move 1) 
                (ite (= obstacleMove 0) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) 10) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 10)) 1 0)
                (ite (= obstacleMove 1) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) 10) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 0)) 1 0)
-               (ite (= obstacleMove 2) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) 10) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) -10)) 1 0) 0)))
+               (ite (= obstacleMove 2) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) 10) obstacleCurrPoint (+ (+ obstacleCurrPoint 0)(- 10))) 1 0) 0)))
        (ite (= move 2) 
                (ite (= obstacleMove 0) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 1) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 10)) 1 0)
                (ite (= obstacleMove 1) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 1) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 0)) 1 0)
-               (ite (= obstacleMove 2) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 1) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) -10)) 1 0) 0)))
+               (ite (= obstacleMove 2) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 1) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0)(- 10))) 1 0) 0)))
        (ite (= move 3) 
-               (ite (= obstacleMove 0) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) -10) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 10)) 1 0)
-               (ite (= obstacleMove 1) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) -10) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 0)) 1 0)
-               (ite (= obstacleMove 2) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) -10) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) -10)) 1 0) 0)))
+               (ite (= obstacleMove 0) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0)(- 10)) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 10)) 1 0)
+               (ite (= obstacleMove 1) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0)(- 10)) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 0)) 1 0)
+               (ite (= obstacleMove 2) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0)(- 10)) obstacleCurrPoint (+ (+ obstacleCurrPoint 0)(- 10))) 1 0) 0)))
        (ite (= move 4) 
-               (ite (= obstacleMove 0) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint -1) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 10)) 1 0)
-               (ite (= obstacleMove 1) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint -1) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 0)) 1 0)
-               (ite (= obstacleMove 2) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint -1) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) -10)) 1 0) 0))) 0)))))))
+               (ite (= obstacleMove 0) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint(- 1)) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 10)) 1 0)
+               (ite (= obstacleMove 1) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint(- 1)) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 0)) 1 0)
+               (ite (= obstacleMove 2) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint(- 1)) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0)(- 10))) 1 0) 0))) 0)))))))
 
 (define-fun no-overlaps-one-step-helper ((currPoint Int) (move Int) (o0-t Int) (o0move Int) (o1-t Int) (o1move Int)) Bool
        (and (no-overlaps-0 currPoint move o0-t o0move) (and (no-overlaps-1 currPoint move o1-t o1move) true)))
@@ -104,15 +104,16 @@ currPoint))))
 (declare-var o1-3 Int)
 
 (synth-fun move ((currPoint Int) (o0 Int) (o1 Int)) Int
+       ((Start Int) (MoveId Int) (CondInt Int) (StartBool Bool))
        ((Start Int (
                MoveId
                (ite StartBool Start Start)))
-    (MoveId Int (0
+       (MoveId Int (0
                1
                2
                3
                4
-       ))
+       ))
        (CondInt Int (
                (get-y currPoint) ;y coord
                (get-x currPoint) ;x coord
@@ -122,7 +123,7 @@ currPoint))))
                (get-x o1)
                (+ CondInt CondInt)
                (- CondInt CondInt)
-               -1
+               (- 1)
                0
                1
                2
@@ -133,15 +134,15 @@ currPoint))))
                7
                8
                9
-                               ))
+       ))
        (StartBool Bool ((and StartBool StartBool)
                (or  StartBool StartBool)
                (not StartBool)
                (<=  CondInt CondInt)
                (=   CondInt CondInt)
-               (>=  CondInt CondInt))))) 
- (constraint (or 
+               (>=  CondInt CondInt)))))
+
+(constraint (or
        (and
                (= (interpret-move (interpret-move (interpret-move 0 (move 0 99 98)) (move (interpret-move 0 (move 0 99 98)) o0-1 o1-1)) (move (interpret-move (interpret-move 0 (move 0 99 98)) (move (interpret-move 0 (move 0 99 98)) o0-1 o1-1)) o0-2 o1-2)) 30)
                (and (no-overlaps-one-step 0 (move 0 99 98) 99 o0-1 98 o1-1) (and (no-overlaps-one-step (interpret-move 0 (move 0 99 98)) (move (interpret-move 0 (move 0 99 98)) o0-1 o1-1) o0-1 o0-2 o1-1 o1-2) (and (no-overlaps-one-step (interpret-move (interpret-move 0 (move 0 99 98)) (move (interpret-move 0 (move 0 99 98)) o0-1 o1-1)) (move (interpret-move (interpret-move 0 (move 0 99 98)) (move (interpret-move 0 (move 0 99 98)) o0-1 o1-1)) o0-2 o1-2) o0-2 o0-3 o1-2 o1-3) true))))
index 77990473fbaffe0222684342d66bdbee3567817c..6a9a80a4938e30635f82bd49f411f1c9be2d8a3e 100644 (file)
@@ -1,4 +1,4 @@
-; COMMAND-LINE: --cegqi-si=none --sygus-out=status --sygus-arg-relevant
+; COMMAND-LINE: --lang=sygus2 --cegqi-si=none --sygus-out=status --sygus-arg-relevant
 ; EXPECT: unsat
 (set-logic LIA)
 
index 77e16efcb331a0fbf3bcdc9539a057704e1310ea..c8d56229a99c9983f583d4b368a4e1d5302787bb 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --cegqi-si=all --sygus-out=status --sygus-qe-preproc
+; COMMAND-LINE: --lang=sygus2 --cegqi-si=all --sygus-out=status --sygus-qe-preproc
 (set-logic LIA)
 
 (synth-fun f ((x Int)) Int)
index 2b59b7301ad6f8a4714d1d47721b9a61dd73bef4..431d0c1b0d1b6bab95ee418a6ade36a85d8219b3 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status --no-sygus-pbe --cegqi-si=none --sygus-grammar-cons=any-term-concise
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status --no-sygus-pbe --cegqi-si=none --sygus-grammar-cons=any-term-concise
 
 (set-logic LRA)
 (synth-fun f ((x Real) (y Real)) Real)
index c2f4ae0bc2b7486e74a27a7330f654ac8182fe13..128a94c1d182213b93ce9a3ad2c7751c43114b60 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status --cegqi-si=none
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status --cegqi-si=none
 
 (set-logic LRA)
 
index 284325712c726164b6006b29adb508e68d556224..f45329b2707b91758600f35f1cb59395c6096de3 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic ALL)
 (synth-fun P ((x (Set Int))) Bool)
 
index 291ae6099ff3fe767c0a433ba1af490b6e6bdc89..c33e16bcd31b36562fdf55c6f0e172e0f1be4dd5 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-inv-templ=post --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-inv-templ=post --sygus-out=status
 (set-logic LIA)
 
 (define-fun
 ))
 
 
-(declare-primed-var stopwatch.usr.toggle Bool)
-(declare-primed-var stopwatch.usr.reset Bool)
-(declare-primed-var stopwatch.usr.count Int)
-(declare-primed-var stopwatch.res.init_flag Bool)
-(declare-primed-var stopwatch.res.abs_0 Bool)
-(declare-primed-var stopwatch.impl.usr.running Bool)
-(declare-primed-var stopwatch.res.abs_1 Int)
-(declare-primed-var stopwatch.res.inst_0 Bool)
 
 (define-fun
   init (
index 3d8fd7530886efb21dedd11acc3234172f22e056..cca2edb2cc037992f99130f803d42d00a759e80d 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status --no-sygus-pbe --cegqi-si=none --sygus-grammar-cons=any-term
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status --no-sygus-pbe --cegqi-si=none --sygus-grammar-cons=any-term
 (set-logic ALL)
 (synth-fun f ((x String) (y String)) Int)
 (declare-var x String)
index 6628ff74654ef92b77c2f12e40e5b01084286da9..681d3ccff4e89ef7b3b1e8115df4318277a8529b 100644 (file)
@@ -1,10 +1,10 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic SLIA)
 (synth-fun f ((x String)) String
-((Start String (ntString))
+((ntString String) (ntStringConst String))
 
-(ntString String (x "" (str.++ ntStringConst ntString ntString)))
+((ntString String (x "" (str.++ ntStringConst ntString ntString)))
 
 (ntStringConst String ("a" "b" " "))
 
@@ -15,4 +15,3 @@
 (constraint (= (f "def") "ab def"))
 
 (check-synth)
-
index ea9caadea7b37a2fa8c4da0c60f68fc1e7b56240..0c21015e7d06c6c98cd5a99d2d470680061a4a08 100644 (file)
@@ -1,8 +1,9 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic SLIA)
+
 (synth-fun f ((name String)) String
+    ((Start String) (Start1 String) (Start2 String))
     ((Start String (name "A" "B" "" (str.++ Start1 Start2)))
      (Start1 String (name "A" "B" ""))
      (Start2 String (name "B" "A" (str.++ Start2 Start)))
@@ -10,7 +11,7 @@
 
 
 (declare-var name String)
+
 (constraint (= (f "BB") "AAAAAAAAAAAA"))
+
 (check-synth)
index 4959d6fe1885197702508d3ec11808ca391788de..8abb33f33df69908885f23f9a366146e026e75cd 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic ALL)
 
 (synth-fun f ((x String) (y String)) String)
index 7d976ff39bdc1f6ffc22ace6a7bb2c6b433819b2..834898b02a0d6cef4d84cad5cae94ae8aa5dc04d 100644 (file)
@@ -1,27 +1,27 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic SLIA)
 (synth-fun f ((firstname String) (lastname String)) String
-((Start String (ntString))
+((ntString String) (ntInt Int) (ntBool Bool))
 
-(ntString String (
-firstname 
-lastname 
+((ntString String (
+firstname
+lastname
 " "
 (str.++ ntString ntString)))
 
 (ntInt Int (
-0 
-1 
+0
+1
 2
 (+ ntInt ntInt)
 (- ntInt ntInt)
 (str.len ntString)
-(str.to.int ntString)
+(str.to_int ntString)
 (str.indexof ntString ntString ntInt)))
 
 (ntBool Bool (
-true 
+true
 false
 (str.prefixof ntString ntString)
 (str.suffixof ntString ntString)
@@ -32,4 +32,3 @@ false
 (constraint (= (f "Nancy" "FreeHafer") "Nancy FreeHafer"))
 
 (check-synth)
-
index d0bee55640236a2ed797c2bc610cf947f3cb8e9c..2c075388a648b8c7324d0132044bcdb2c972d59e 100644 (file)
@@ -1,16 +1,17 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic SLIA)
+
 (define-fun cA ((x String) (w String) (y String) (z String)) String (str.++ (str.++ x "A") y))
+
 (synth-fun f ((name String)) String
+    ((Start String))
     ((Start String (name "A" "B" ""
-                       (cA Start Start Start Start)))))
+                        (cA Start Start Start Start)))))
 
 
 (declare-var name String)
+
 (constraint (= (f "BB") "AAAAAAAAAAAA"))
+
 (check-synth)
index 13c4d7dac00edff8d14c1798f38183c4f4221c0b..8cbce19b67ec5e56032dd78d48b1b3ba56ad606b 100644 (file)
@@ -1,16 +1,17 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic SLIA)
+
 (define-fun cA ((x String) (y String)) String (str.++ (str.++ x "A") y))
+
 (synth-fun f ((name String)) String
+    ((Start String))
     ((Start String (name "A" "B" ""
-                       (cA Start Start)))))
+                        (cA Start Start)))))
 
 
 (declare-var name String)
+
 (constraint (= (f "BB") "AAAAAAAAAAAA"))
+
 (check-synth)
index f5e41a8f5e7b74bdfb2392036e15d4d6a46ac8a6..c0e3f0ea6ab02451d601d1e80d2a92b122925644 100644 (file)
@@ -1,14 +1,15 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic SLIA)
+
 (synth-fun f ((name String)) String
+    ((Start String))
     ((Start String (name "A" "B"
-                       (str.++ Start Start)))))
+                        (str.++ Start Start)))))
 
 
 (declare-var name String)
+
 (constraint (= (f "BB") "AAAAAAAAAAAABAAAAAAAABAAA"))
+
 (check-synth)
index 86c71aa3ad2101a3108fb3b4bb98362e9b540cdc..ba9ac506466a79dd933bcc6f8b09e1ffe492492b 100644 (file)
@@ -1,18 +1,17 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic SLIA)
+
 (synth-fun f ((name String)) String
-    ((Start String (ntString))
-     (ntString String (name "B" ""
-                       (str.++ ntStringC ntString)))
+    ((ntString String) (ntStringC String))
+    ((ntString String (name "B" ""
+                        (str.++ ntStringC ntString)))
      (ntStringC String (name "A" ""))
-                       
-                       ))
+    ))
 
 
 (declare-var name String)
+
 (constraint (= (f "B") "AAAAAAAAAAAAAAAAAAAAAAAAA"))
+
 (check-synth)
index 9af0a1bb17801e3f76a95b4cc8510871b85f62ae..7fe96cf14a0354403657fd7f23c77e70c198b90b 100644 (file)
@@ -1,15 +1,15 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic SLIA)
+
 (synth-fun f ((name String)) String
-    ((Start String (ntString))
-     (ntString String (name "A" "B"
-                       (str.++ ntString ntString)))))
+    ((ntString String))
+    ((ntString String (name "A" "B"
+                        (str.++ ntString ntString)))))
 
 
 (declare-var name String)
+
 (constraint (= (f "B") "AAAAAAAAAAAAAAAAAAAAAAAAA"))
+
 (check-synth)
index 336c59b27b3b85e0c22fc4ec61f0d644bd24dffc..7539fdd0d761edffbd46dfdc73c9bc69584e2f14 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status --decision=justification
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status --decision=justification
 
 (set-logic LIA)
 
@@ -7,8 +7,10 @@
 (define-fun g ((x Int)) List (cons (+ x 1) nil))
 (define-fun i () List (cons 3 nil))
 
-(synth-fun f ((x Int)) List ((Start List ((g StartInt) i (cons StartInt Start) nil (tail Start)))
-                             (StartInt Int (x 0 1 (+ StartInt StartInt)))))
+(synth-fun f ((x Int)) List
+    ((Start List) (StartInt Int))
+    ((Start List ((g StartInt) i (cons StartInt Start) nil (tail Start)))
+     (StartInt Int (x 0 1 (+ StartInt StartInt)))))
 
 (declare-var x Int)
 
index d2a3700ce3ebb638e82bb46ba6715969aa0c1cd2..d96960c8316891407e812aeae43e99551ee2ac5a 100644 (file)
@@ -1,10 +1,11 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic ALL)
 
-(synth-fun SC ((y (BitVec 32)) (w (BitVec 32)) ) (BitVec 32)
+(synth-fun SC ((y (_ BitVec 32)) (w (_ BitVec 32)) ) (_ BitVec 32)
+  ((Start (_ BitVec 32)) (StartBool Bool))
   (
-   (Start (BitVec 32) (
+   (Start (BitVec 32) (
      y
      w
      #x00000000
index 4dd7268750b1fce0d1a497abfc4463adb094caca..6ac9048328c568be387cb35f674fb2a14646140d 100644 (file)
@@ -1,31 +1,30 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
-(set-logic  LIA)
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
+(set-logic LIA)
 (
-synth-fun f_143-17-143-55 ( (x2 Int) (x1 Int) (parentNode Int) (EMPTY_PARENT Int)) Bool
-       ((Start Bool (
-(< IntExpr IntExpr)
-(and Start Start)
-(= IntExpr IntExpr)
-(not Start )
-(<= IntExpr IntExpr)
-(or Start Start)
-
-
-
-))
-(IntExpr Int (
-x2 x1 parentNode EMPTY_PARENT 
-0 1
-))
-
-       )
+synth-fun f_143-17-143-55 ((x2 Int) (x1 Int) (parentNode Int) (EMPTY_PARENT Int)) Bool
+((Start Bool) (IntExpr Int))
+(
+       (Start Bool (
+               (< IntExpr IntExpr)
+               (and Start Start)
+               (= IntExpr IntExpr)
+               (not Start)
+               (<= IntExpr IntExpr)
+               (or Start Start)
+       ))
+       (IntExpr Int (
+               x2 x1 parentNode EMPTY_PARENT 
+               0 1
+       ))
+)
 )
+
 (declare-var x2_143-17-143-55 Int)
 (declare-var x1_143-17-143-55 Int)
 (declare-var parentNode_143-17-143-55 Int)
 (declare-var EMPTY_PARENT_143-17-143-55 Int)
 
-(constraint  (=>  (and (= parentNode_143-17-143-55 0)  (and (= EMPTY_PARENT_143-17-143-55 -1)  (and (= x2_143-17-143-55 1) (= x1_143-17-143-55 1)) ) )  (= (f_143-17-143-55 x2_143-17-143-55 x1_143-17-143-55 parentNode_143-17-143-55 EMPTY_PARENT_143-17-143-55 ) true)))
+(constraint (=> (and (= parentNode_143-17-143-55 0) (and (= EMPTY_PARENT_143-17-143-55 (- 1)) (and (= x2_143-17-143-55 1) (= x1_143-17-143-55 1)))) (= (f_143-17-143-55 x2_143-17-143-55 x1_143-17-143-55 parentNode_143-17-143-55 EMPTY_PARENT_143-17-143-55) true)))
 
 (check-synth)
index 4efd9031446e3954bcc8eb3865d5608e2814da03..fa8bdc2d73513eaab21ed091fef4b1a5098ffc75 100644 (file)
@@ -1,9 +1,10 @@
 ; REQUIRES: symfpu
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic ALL)
 (define-sort FP () (_ FloatingPoint 3 5))
 (synth-fun IC ((t FP)) Bool
+  ((Start Bool) (StartFP FP) (StartRM RoundingMode))
   ((Start Bool (
      true
      false
index 282bc122c01be963ca997f9f49c56fe81d4cb37c..c5b72b009f388e5973ca523a064bcd975036e3f6 100644 (file)
@@ -1,15 +1,15 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 
 (set-logic DTSLIA)
 (declare-datatype DT ((A (a Int)) (B (b String)) (JSBool (jsBool Bool))))
 
-(define-fun isA ((i DT)) Bool ((_ is A) i) )
-(define-fun isB ((i DT)) Bool ((_ is B) i) )
+(define-fun isA ((i DT)) Bool ((_ is A) i))
+(define-fun isB ((i DT)) Bool ((_ is B) i))
 
 (synth-fun add ((x1 DT)) DT
+       ((ntDT DT) (ntBool Bool) (ntInt Int))
        (
-               (Start DT (ntDT))
                (ntDT DT
                        ( x1
                                (JSBool ntBool)
index ceda89d78a816cab4ca47fc0246ce7856cef33e9..0beea805627a962faebf80921317babd5e09a8e9 100644 (file)
@@ -1,11 +1,11 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --cegqi-si=none --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --cegqi-si=none --sygus-out=status
 (set-logic LIA)
 (synth-fun f ((x Int)) Int
+    ((Start Int) (Term Int))
     ((Start Int ((+ Term Term)))
      (Term Int (x 0))))
 
 (declare-var x Int)
 (constraint (= (f x) 0))
 (check-synth)
-
index bf8eee5ee514b00f3221da2dd3834029b17302f8..7c44033973b3934bbb26397a26fdb8d11942bc17 100644 (file)
@@ -1,11 +1,11 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --cegqi-si=none --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --cegqi-si=none --sygus-out=status
 (set-logic LIA)
 (synth-fun f ((x Int)) Int
+    ((Start Int) (Term Int))
     ((Start Int (Term (+ Start Start)))
      (Term Int (x 0))))
 
 (declare-var x Int)
 (constraint (= (f x) (* 4 x)))
 (check-synth)
-
index 6f25a570ecca6f1e3668e8c8c7feaac2d4e6224d..fe39ddd8ee9e592da56f19a814ddb9e0a4b48ea5 100644 (file)
@@ -1,11 +1,11 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --cegqi-si=none --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --cegqi-si=none --sygus-out=status
 (set-logic LIA)
 (synth-fun f ((x Int)) Int
+    ((Start Int) (Term Int))
     ((Start Int (Term (+ Start Start)))
      (Term Int (x 0))))
 
 (declare-var x Int)
 (constraint (= (f x) (* 3 x)))
 (check-synth)
-
index 37c5a7f53445cb84962cdc43381362cd802a1014..6ef891560272c971110fb37954e60bb3d53c1bf4 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic LIA)
 
 (synth-fun R ((y Int)) Bool)
@@ -10,4 +10,3 @@
 (constraint (=> (= x e) (R x)))
 
 (check-synth)
-
index 33abb6ee87fd04152959599826a6304e3524b150..8d3e91b0696600306e162933d20895dea5c319a1 100644 (file)
@@ -3,15 +3,16 @@
 ; EXPECT: (error "Maximum term size (0) for enumerative SyGuS exceeded.")
 ; EXIT: 1
 
-; COMMAND-LINE: --sygus-stream --sygus-abort-size=0 --sygus-active-gen=var-agnostic
+; COMMAND-LINE: --lang=sygus2 --sygus-stream --sygus-abort-size=0 --sygus-active-gen=var-agnostic
 
 (set-logic LIA)
 
 (synth-fun triv ((x Int) (y Int)) Int
+    ((Start Int))
     ((Start Int (x
                  y
                  (+ Start Start)
                  ))
-          ))
+    ))
 
 (check-synth)
index 06d2ecb717a67b073e9adef42bb43cfb3d9d15fd..b78bf76478938dbeb3802297f4bf7d03deaea75c 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --cegqi-si=all --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --cegqi-si=all --sygus-out=status
 (set-logic LIA)
 
 ;; f1 is x plus 2 ;; f2 is 2x plus 5
@@ -7,6 +7,7 @@
 (define-fun let0 ((x Int) (y Int) (z Int)) Int (+ (+ y x) z))
 
 (synth-fun f1 ((x Int)) Int
+     ((Start Int) (Intx Int) (CInt Int))
      (
      (Start Int (
             (let0 Intx CInt CInt)
      )
      (Intx Int (x))
      (CInt Int (0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15))
-
      )
 )
 
 (synth-fun f2 ((x Int)) Int
+     ((Start Int) (Intx Int) (CInt Int))
      (
      (Start Int (x
             (let0 Intx Start CInt)
      )
      (Intx Int (x))
      (CInt Int (0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15))
-
      )
 )
 
 
 (declare-var x Int)
 
-(constraint (= (+ (f1 x)(f2 x)) (+ (+ x x) (+ x 8))))
-(constraint (= (- (f2 x)(f1 x)) (+ x 2)))
+(constraint (= (+ (f1 x) (f2 x)) (+ (+ x x) (+ x 8))))
+(constraint (= (- (f2 x) (f1 x)) (+ x 2)))
 
 (check-synth)
-
index a92c0b014a169412a7a54c5136a48393429d0f8a..ca1e512a1ced7763e94ae2c8fb003d5443d472e6 100644 (file)
@@ -1,29 +1,28 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --cegqi-si=all --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --cegqi-si=all --sygus-out=status
 (set-logic LIA)
 (define-fun letf ((x Int) (y Int) (z Int)) Int (+ (+ y x) z))
 (synth-fun f1 ((x Int)) Int
+     ((Start Int) (CInt Int))
      (
      (Start Int (
             (letf x CInt CInt)
             )
      )
      (CInt Int (0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15))
-
      )
 )
 (synth-fun f2 ((x Int)) Int
+     ((Start Int) (CInt Int))
      (
      (Start Int (x
             (letf x Start CInt)
             )
      )
      (CInt Int (0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15))
-
      )
 )
 (declare-var x1 Int)
 (declare-var x2 Int)
-(constraint (= (+ (f1 x1)(f2 x2)) (+ (+ x2 x2) (+ x1 8))))
+(constraint (= (+ (f1 x1) (f2 x2)) (+ (+ x2 x2) (+ x1 8))))
 (check-synth)
-
index 73d410d512d5e891f19280c673a67f6934bad544..34abb6de85fe931ad812a985b1fe88c60ce4e14e 100644 (file)
@@ -1,14 +1,15 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic LIA)
 (synth-fun inv ((i Int) (y Int) (l Int)) Bool
+    ((Start Bool) (AtomicFormula Bool) (Sum Int) (Term Int) (Sign Int) (Var Int) (Const Int))
     (
         (Start Bool ((and AtomicFormula AtomicFormula)
                      (or AtomicFormula AtomicFormula)))
         (AtomicFormula Bool ((<= Sum Const) (= Sum Const)))
         (Sum Int ((+ Term Term)))
         (Term Int ((* Sign Var)))
-        (Sign Int (0 1 -1))
+        (Sign Int (0 1 (- 1)))
         (Var Int (i y l))
         (Const Int ((+ Const Const) (- Const Const) 0 1))
     )
@@ -35,6 +36,6 @@
 (constraint (implies (or3 (< x 0) (< y 0) (> y x)) true))
 (constraint (implies (and3 (not (or3 (< x 0) (< y 0) (> y x))) (= l x) (= i 0)) (inv i y l)))
 (constraint (implies (and4 (inv i y l) (< i y) (not (or (< i 0) (>= i l))) (= i1 (+ i 1))) (inv i1 y l)))
-(constraint (implies (and3 (inv i y l) (< i y) (or (< i 0) (>= i  l))) false))
+(constraint (implies (and3 (inv i y l) (< i y) (or (< i 0) (>= i l))) false))
 
 (check-synth)
index d45cec38b604a283e16ce3b7732caec7d37edea0..edfc2176becba26bb4c4a9082106a8ec9bc1518f 100644 (file)
@@ -1,15 +1,16 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 
 (set-logic LIA)
 (synth-fun inv ((x Int)) Bool
+    ((Start Bool) (AtomicFormula Bool) (Sum Int) (Term Int) (Sign Int) (Var Int) (Const Int))
     (
         (Start Bool ((and AtomicFormula AtomicFormula)
                      (or AtomicFormula AtomicFormula)))
         (AtomicFormula Bool ((<= Sum Const) (= Sum Const)))
         (Sum Int ((+ Term Term)))
         (Term Int ((* Sign Var)))
-        (Sign Int (0 1 -1))
+        (Sign Int (0 1 (- 1)))
         (Var Int (x))
         (Const Int ((+ Const Const) (- Const Const) 0 1))
     )
index 38267c10ddcf5f811fc41e74f416c8d363651133..c1d196f60b4d0636a12b5beb17e263e36f01f15b 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status --sygus-grammar-cons=any-term-concise --sygus-unif-pi=complete
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status --sygus-grammar-cons=any-term-concise --sygus-unif-pi=complete
 
 (set-logic LIA)
 
   ) Bool
 
   (let
-   ((X1 Int top.res.abs_3_a_0))
+   ((X1 top.res.abs_3_a_0))
    (and
     (= top.res.abs_10_a_0 (and top.res.abs_9_a_0 (< X1 32767)))
     (let
-     ((X2 Bool top.res.abs_11_a_0))
+     ((X2 top.res.abs_11_a_0))
      (and
       (= top.usr.OK_a_0 (=> X2 (>= X1 0)))
       (__node_init_voiture_0
   ) Bool
 
   (let
-   ((X1 Int top.res.abs_3_a_1))
+   ((X1 top.res.abs_3_a_1))
    (and
     (= top.res.abs_10_a_1 (and top.res.abs_9_a_1 (< X1 32767)))
     (let
-     ((X2 Bool top.res.abs_11_a_1))
+     ((X2 top.res.abs_11_a_1))
      (and
       (= top.usr.OK_a_1 (=> X2 (>= X1 0)))
       (__node_trans_voiture_0
 ))
 
 
-(declare-primed-var top.usr.m Bool)
-(declare-primed-var top.usr.s Bool)
-(declare-primed-var top.usr.OK Bool)
-(declare-primed-var top.res.init_flag Bool)
-(declare-primed-var top.res.abs_0 Bool)
-(declare-primed-var top.res.abs_1 Bool)
-(declare-primed-var top.res.abs_2 Bool)
-(declare-primed-var top.res.abs_3 Int)
-(declare-primed-var top.res.abs_4 Int)
-(declare-primed-var top.res.abs_5 Int)
-(declare-primed-var top.res.abs_6 Bool)
-(declare-primed-var top.res.abs_7 Bool)
-(declare-primed-var top.res.abs_8 Bool)
-(declare-primed-var top.res.abs_9 Bool)
-(declare-primed-var top.res.abs_10 Bool)
-(declare-primed-var top.res.abs_11 Bool)
-(declare-primed-var top.res.inst_3 Bool)
-(declare-primed-var top.res.inst_2 Bool)
-(declare-primed-var top.res.inst_1 Bool)
-(declare-primed-var top.res.inst_0 Bool)
 
 (define-fun
   init (
   ) Bool
 
   (let
-   ((X1 Int top.res.abs_3))
+   ((X1 top.res.abs_3))
    (and
     (= top.res.abs_10 (and top.res.abs_9 (< X1 32767)))
     (let
-     ((X2 Bool top.res.abs_11))
+     ((X2 top.res.abs_11))
      (and
       (= top.usr.OK (=> X2 (>= X1 0)))
       (__node_init_voiture_0
   ) Bool
 
   (let
-   ((X1 Int top.res.abs_3!))
+   ((X1 top.res.abs_3!))
    (and
     (= top.res.abs_10! (and top.res.abs_9! (< X1 32767)))
     (let
-     ((X2 Bool top.res.abs_11!))
+     ((X2 top.res.abs_11!))
      (and
       (= top.usr.OK! (=> X2 (>= X1 0)))
       (__node_trans_voiture_0
index ac9493b2d3ddb072b2e208d0123261ec0e8caa65..a2c4c028dd601a26dede08516b735dbba2cb4ff5 100644 (file)
@@ -1,89 +1,89 @@
 ; EXPECT: unsat\r
-; COMMAND-LINE: --sygus-fair=direct --sygus-out=status\r
+; COMMAND-LINE: --lang=sygus2 --sygus-fair=direct --sygus-out=status\r
 (set-logic SLIA)\r
\r
+\r
 (synth-fun f ((col1 String) (col2 String)) String\r
-    ((Start String (ntString))\r
-     (ntString String (col1 col2 " " "," "USA" "PA" "CT" "CA" "MD" "NY"\r
+    ((ntString String) (ntInt Int) (ntBool Bool))\r
+    ((ntString String (col1 col2 " " "," "USA" "PA" "CT" "CA" "MD" "NY"\r
                        (str.++ ntString ntString)\r
                        (str.replace ntString ntString ntString)\r
                        (str.at ntString ntInt)\r
-                       (int.to.str ntInt)\r
+                       (str.from_int ntInt)\r
                        (ite ntBool ntString ntString)\r
                        (str.substr ntString ntInt ntInt)))\r
       (ntInt Int (0 1 2\r
                   (+ ntInt ntInt)\r
                   (- ntInt ntInt)\r
                   (str.len ntString)\r
-                  (str.to.int ntString)\r
+                  (str.to_int ntString)\r
                   (str.indexof ntString ntString ntInt)))\r
       (ntBool Bool (true false\r
                     (str.prefixof ntString ntString)\r
                     (str.suffixof ntString ntString)\r
                     (str.contains ntString ntString)))))\r
 \r
-\r
 (declare-var col1 String)\r
 (declare-var col2 String)\r
-(constraint (= (f "UC Berkeley" "Berkeley, CA") \r
+\r
+(constraint (= (f "UC Berkeley" "Berkeley, CA")\r
                   "UC Berkeley, Berkeley, CA, USA"))\r
-(constraint (= (f "University of Pennsylvania" "Phialdelphia, PA, USA") \r
+(constraint (= (f "University of Pennsylvania" "Phialdelphia, PA, USA")\r
                   "University of Pennsylvania, Phialdelphia, PA, USA"))\r
-(constraint (= (f "UCLA" "Los Angeles, CA") \r
+(constraint (= (f "UCLA" "Los Angeles, CA")\r
                     "UCLA, Los Angeles, CA, USA"))\r
-(constraint (= (f "Cornell University" "Ithaca, New York, USA") \r
+(constraint (= (f "Cornell University" "Ithaca, New York, USA")\r
                   "Cornell University, Ithaca, New York, USA"))\r
-(constraint (= (f "Penn" "Philadelphia, PA, USA") \r
+(constraint (= (f "Penn" "Philadelphia, PA, USA")\r
                   "Penn, Philadelphia, PA, USA"))\r
-(constraint (= (f "University of Michigan" "Ann Arbor, MI, USA") \r
+(constraint (= (f "University of Michigan" "Ann Arbor, MI, USA")\r
                   "University of Michigan, Ann Arbor, MI, USA"))\r
-(constraint (= (f "UC Berkeley" "Berkeley, CA") \r
+(constraint (= (f "UC Berkeley" "Berkeley, CA")\r
                   "UC Berkeley, Berkeley, CA, USA"))\r
-(constraint (= (f "MIT" "Cambridge, MA") \r
+(constraint (= (f "MIT" "Cambridge, MA")\r
                   "MIT, Cambridge, MA, USA"))\r
-(constraint (= (f "University of Pennsylvania" "Phialdelphia, PA, USA") \r
+(constraint (= (f "University of Pennsylvania" "Phialdelphia, PA, USA")\r
                   "University of Pennsylvania, Phialdelphia, PA, USA"))\r
-(constraint (= (f "UCLA" "Los Angeles, CA") \r
-                    "UCLA, Los Angeles, CA, USA"))                  \r
-(constraint (= (f "University of Maryland College Park" "College Park, MD")   \r
+(constraint (= (f "UCLA" "Los Angeles, CA")\r
+                    "UCLA, Los Angeles, CA, USA"))\r
+(constraint (= (f "University of Maryland College Park" "College Park, MD")\r
                   "University of Maryland College Park, College Park, MD, USA"))\r
-(constraint (= (f "University of Michigan" "Ann Arbor, MI, USA") \r
+(constraint (= (f "University of Michigan" "Ann Arbor, MI, USA")\r
                   "University of Michigan, Ann Arbor, MI, USA"))\r
-(constraint (= (f "UC Berkeley" "Berkeley, CA") \r
+(constraint (= (f "UC Berkeley" "Berkeley, CA")\r
                   "UC Berkeley, Berkeley, CA, USA"))\r
-(constraint (= (f "MIT" "Cambridge, MA") \r
+(constraint (= (f "MIT" "Cambridge, MA")\r
                   "MIT, Cambridge, MA, USA"))\r
-(constraint (= (f "Rice University" "Houston, TX") \r
+(constraint (= (f "Rice University" "Houston, TX")\r
                   "Rice University, Houston, TX, USA"))\r
-(constraint (= (f "Yale University" "New Haven, CT, USA") \r
+(constraint (= (f "Yale University" "New Haven, CT, USA")\r
                   "Yale University, New Haven, CT, USA"))\r
-(constraint (= (f "Columbia University" "New York, NY, USA") \r
+(constraint (= (f "Columbia University" "New York, NY, USA")\r
                   "Columbia University, New York, NY, USA"))\r
-(constraint (= (f "NYU" "New York, New York, USA") \r
+(constraint (= (f "NYU" "New York, New York, USA")\r
                   "NYU, New York, New York, USA"))\r
-(constraint (= (f "Drexel University" "Philadelphia, PA") \r
-                  "Drexel University, Philadelphia, PA, USA"))                  \r
-(constraint (= (f "UC Berkeley" "Berkeley, CA") \r
+(constraint (= (f "Drexel University" "Philadelphia, PA")\r
+                  "Drexel University, Philadelphia, PA, USA"))\r
+(constraint (= (f "UC Berkeley" "Berkeley, CA")\r
                   "UC Berkeley, Berkeley, CA, USA"))\r
-(constraint (= (f "UIUC" "Urbana, IL") \r
+(constraint (= (f "UIUC" "Urbana, IL")\r
                   "UIUC, Urbana, IL, USA"))\r
-(constraint (= (f "Temple University" "Philadelphia, PA") \r
+(constraint (= (f "Temple University" "Philadelphia, PA")\r
                   "Temple University, Philadelphia, PA, USA"))\r
-(constraint (= (f "Harvard University" "Cambridge, MA, USA") \r
+(constraint (= (f "Harvard University" "Cambridge, MA, USA")\r
                   "Harvard University, Cambridge, MA, USA"))\r
-(constraint (= (f "University of Connecticut" "Storrs, CT, USA") \r
+(constraint (= (f "University of Connecticut" "Storrs, CT, USA")\r
                   "University of Connecticut, Storrs, CT, USA"))\r
-(constraint (= (f "Drexel University" "Philadelphia, PA") \r
+(constraint (= (f "Drexel University" "Philadelphia, PA")\r
                   "Drexel University, Philadelphia, PA, USA"))\r
-(constraint (= (f "NYU" "New York, New York, USA") \r
-                  "NYU, New York, New York, USA"))  \r
-(constraint (= (f "UIUC" "Urbana, IL") \r
-                  "UIUC, Urbana, IL, USA"))                                  \r
-(constraint (= (f "New Haven University" "New Haven, CT, USA") \r
+(constraint (= (f "NYU" "New York, New York, USA")\r
+                  "NYU, New York, New York, USA"))\r
+(constraint (= (f "UIUC" "Urbana, IL")\r
+                  "UIUC, Urbana, IL, USA"))\r
+(constraint (= (f "New Haven University" "New Haven, CT, USA")\r
                   "New Haven University, New Haven, CT, USA"))\r
-(constraint (= (f "University of California, Santa Barbara" "Santa Barbara, CA, USA") \r
+(constraint (= (f "University of California, Santa Barbara" "Santa Barbara, CA, USA")\r
                   "University of California, Santa Barbara, Santa Barbara, CA, USA"))\r
-(constraint (= (f "University of Connecticut" "Storrs, CT, USA") \r
-                  "University of Connecticut, Storrs, CT, USA"))                  \r
\r
+(constraint (= (f "University of Connecticut" "Storrs, CT, USA")\r
+                  "University of Connecticut, Storrs, CT, USA"))\r
+\r
 (check-synth)\r
index ec2974c709532665f4794cd2b3aaabd0ea6c8197..4d9510adea71e9c4d8480d1e17c021e3bf78288a 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status --sygus-unif-pi=complete --cegis-sample=use
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status --sygus-unif-pi=complete --cegis-sample=use
 
 (set-logic LIA)
 
    (= DRAGON.usr.exclusive_a_0 0)
    (let
     ((X1
-      Bool (let
-            ((X1 Int DRAGON.res.nondet_4)
-             (X2 Int DRAGON.res.nondet_3)
-             (X3 Int DRAGON.res.nondet_2)
-             (X4 Int DRAGON.res.nondet_1)
-             (X5 Int DRAGON.res.nondet_0))
+      (let
+            ((X1 DRAGON.res.nondet_4)
+             (X2 DRAGON.res.nondet_3)
+             (X3 DRAGON.res.nondet_2)
+             (X4 DRAGON.res.nondet_1)
+             (X5 DRAGON.res.nondet_0))
             (and
              (and (and (and (>= X5 1) (= X4 0)) (= X3 0)) (= X2 0))
              (= X1 0)))))
      (= DRAGON.usr.dirty_a_0 0)
      (let
       ((X2
-        Bool (let
-              ((X2 Int DRAGON.res.nondet_9)
-               (X3 Int DRAGON.res.nondet_8)
-               (X4 Int DRAGON.res.nondet_7)
-               (X5 Int DRAGON.res.nondet_6)
-               (X6 Int DRAGON.res.nondet_5))
+        (let
+              ((X2 DRAGON.res.nondet_9)
+               (X3 DRAGON.res.nondet_8)
+               (X4 DRAGON.res.nondet_7)
+               (X5 DRAGON.res.nondet_6)
+               (X6 DRAGON.res.nondet_5))
               (and (>= X6 1) (>= (+ (+ (+ X5 X4) X3) X2) 1)))))
       (and
        (= DRAGON.impl.usr.mem_init_a_0 DRAGON.usr.init_invalid_a_0)
        (= DRAGON.usr.invalid_a_0 DRAGON.impl.usr.mem_init_a_0)
        (let
         ((X3
-          Bool (let
-                ((X3 Int DRAGON.res.nondet_21)
-                 (X4 Int DRAGON.res.nondet_20)
-                 (X5 Int DRAGON.res.nondet_19)
-                 (X6 Int DRAGON.res.nondet_18)
-                 (X7 Int DRAGON.res.nondet_17))
+          (let
+                ((X3 DRAGON.res.nondet_21)
+                 (X4 DRAGON.res.nondet_20)
+                 (X5 DRAGON.res.nondet_19)
+                 (X6 DRAGON.res.nondet_18)
+                 (X7 DRAGON.res.nondet_17))
                 (and
                  (and (and (and (>= X7 1) (= X6 0)) (= X5 0)) (= X4 0))
                  (= X3 0)))))
         (let
          ((X4
-           Bool (let
-                 ((X4 Int DRAGON.res.nondet_26)
-                  (X5 Int DRAGON.res.nondet_25)
-                  (X6 Int DRAGON.res.nondet_24)
-                  (X7 Int DRAGON.res.nondet_23)
-                  (X8 Int DRAGON.res.nondet_22))
+           (let
+                 ((X4 DRAGON.res.nondet_26)
+                  (X5 DRAGON.res.nondet_25)
+                  (X6 DRAGON.res.nondet_24)
+                  (X7 DRAGON.res.nondet_23)
+                  (X8 DRAGON.res.nondet_22))
                  (and (>= X8 1) (>= (+ (+ (+ X7 X6) X5) X4) 1)))))
          (let
-          ((X5 Bool (let ((X5 Int DRAGON.res.nondet_27)) (>= X5 1))))
+          ((X5 (let ((X5 DRAGON.res.nondet_27)) (>= X5 1))))
           (let
-           ((X6 Bool (let ((X6 Int DRAGON.res.nondet_28)) (>= X6 1))))
+           ((X6 (let ((X6 DRAGON.res.nondet_28)) (>= X6 1))))
            (let
-            ((X7 Bool (let ((X7 Int DRAGON.res.nondet_29)) (>= X7 1))))
+            ((X7 (let ((X7 DRAGON.res.nondet_29)) (>= X7 1))))
             (let
-             ((X8 Bool (let ((X8 Int DRAGON.res.nondet_30)) (>= X8 1))))
+             ((X8 (let ((X8 DRAGON.res.nondet_30)) (>= X8 1))))
              (let
-              ((X9 Bool (let ((X9 Int DRAGON.res.nondet_10)) (>= X9 1))))
+              ((X9 (let ((X9 DRAGON.res.nondet_10)) (>= X9 1))))
               (let
                ((X10
-                 Bool (let
-                       ((X10 Int DRAGON.res.nondet_12)
-                        (X11 Int DRAGON.res.nondet_11))
+                 (let
+                       ((X10 DRAGON.res.nondet_12)
+                        (X11 DRAGON.res.nondet_11))
                        (and (= X11 1) (= X10 0)))))
                (let
                 ((X11
-                  Bool (let
-                        ((X11 Int DRAGON.res.nondet_14)
-                         (X12 Int DRAGON.res.nondet_13))
+                  (let
+                        ((X11 DRAGON.res.nondet_14)
+                         (X12 DRAGON.res.nondet_13))
                         (and (= X12 0) (= X11 1)))))
                 (let
                  ((X12
-                   Bool (let
-                         ((X12 Int DRAGON.res.nondet_16)
-                          (X13 Int DRAGON.res.nondet_15))
+                   (let
+                         ((X12 DRAGON.res.nondet_16)
+                          (X13 DRAGON.res.nondet_15))
                          (>= (+ X13 X12) 2))))
                  (and
                   (=
   ) Bool
   
   (let
-   ((X1 Bool (>= DRAGON.usr.exclusive_a_0 1)))
+   ((X1 (>= DRAGON.usr.exclusive_a_0 1)))
    (let
     ((X2
-      Bool (and
+      (and
             (>= DRAGON.usr.invalid_a_0 1)
             (>=
              (+
               DRAGON.usr.shared_dirty_a_0)
              1))))
     (let
-     ((X3 Bool (>= DRAGON.usr.exclusive_a_0 1)))
+     ((X3 (>= DRAGON.usr.exclusive_a_0 1)))
      (let
       ((X4
-        Bool (and
+        (and
               (>= DRAGON.usr.invalid_a_0 1)
               (>=
                (+
                1))))
       (let
        ((X5
-         Bool (and
+         (and
                (and
                 (and
                  (and (>= DRAGON.usr.invalid_a_0 1) (= DRAGON.usr.dirty_a_0 0))
               (ite X1 (- DRAGON.usr.exclusive_a_0 1) DRAGON.usr.exclusive_a_0)
               DRAGON.usr.exclusive_a_0))))))
         (let
-         ((X6 Bool (>= DRAGON.usr.shared_a_0 1)))
+         ((X6 (>= DRAGON.usr.shared_a_0 1)))
          (let
-          ((X7 Bool (>= (+ DRAGON.usr.shared_dirty_a_0 DRAGON.usr.shared_a_0) 2)))
+          ((X7 (>= (+ DRAGON.usr.shared_dirty_a_0 DRAGON.usr.shared_a_0) 2)))
           (let
            ((X8
-             Bool (and
+             (and
                    (= DRAGON.usr.shared_dirty_a_0 0)
                    (= DRAGON.usr.shared_a_0 1))))
            (and
                   (ite X6 (- DRAGON.usr.shared_a_0 1) DRAGON.usr.shared_a_0)
                   DRAGON.usr.shared_a_0))))))
             (let
-             ((X9 Bool (>= DRAGON.usr.shared_dirty_a_0 1)))
+             ((X9 (>= DRAGON.usr.shared_dirty_a_0 1)))
              (let
               ((X10
-                Bool (and
+                (and
                       (= DRAGON.usr.shared_dirty_a_0 1)
                       (= DRAGON.usr.shared_a_0 0))))
               (and
                       DRAGON.usr.shared_dirty_a_0)
                      DRAGON.usr.shared_dirty_a_0))))))
                (let
-                ((X11 Bool (>= DRAGON.usr.dirty_a_0 1)))
+                ((X11 (>= DRAGON.usr.dirty_a_0 1)))
                 (let
                  ((X12
-                   Bool (and
+                   (and
                          (and
                           (and
                            (and
   (and
    (= top.res.abs_7_a_0 (and top.res.abs_6_a_0 (> top.usr.init_invalid_a_0 0)))
    (let
-    ((X1 Bool top.res.abs_5_a_0))
+    ((X1 top.res.abs_5_a_0))
     (and
      (= top.usr.OK_a_0 (=> top.res.abs_8_a_0 (not X1)))
      (__node_init_DRAGON_0
   (and
    (= top.res.abs_7_a_1 (and top.res.abs_6_a_1 (> top.usr.init_invalid_a_1 0)))
    (let
-    ((X1 Bool top.res.abs_5_a_1))
+    ((X1 top.res.abs_5_a_1))
     (and
      (= top.usr.OK_a_1 (=> top.res.abs_8_a_1 (not X1)))
      (__node_trans_DRAGON_0
   (top.res.inst_0 Bool)
 ))
 
-(declare-fun top.res.nondet_30 () Int)
-(declare-fun top.res.nondet_29 () Int)
-(declare-fun top.res.nondet_28 () Int)
-(declare-fun top.res.nondet_27 () Int)
-(declare-fun top.res.nondet_26 () Int)
-(declare-fun top.res.nondet_25 () Int)
-(declare-fun top.res.nondet_24 () Int)
-(declare-fun top.res.nondet_23 () Int)
-(declare-fun top.res.nondet_22 () Int)
-(declare-fun top.res.nondet_21 () Int)
-(declare-fun top.res.nondet_20 () Int)
-(declare-fun top.res.nondet_19 () Int)
-(declare-fun top.res.nondet_18 () Int)
-(declare-fun top.res.nondet_17 () Int)
-(declare-fun top.res.nondet_16 () Int)
-(declare-fun top.res.nondet_15 () Int)
-(declare-fun top.res.nondet_14 () Int)
-(declare-fun top.res.nondet_13 () Int)
-(declare-fun top.res.nondet_12 () Int)
-(declare-fun top.res.nondet_11 () Int)
-(declare-fun top.res.nondet_10 () Int)
-(declare-fun top.res.nondet_9 () Int)
-(declare-fun top.res.nondet_8 () Int)
-(declare-fun top.res.nondet_7 () Int)
-(declare-fun top.res.nondet_6 () Int)
-(declare-fun top.res.nondet_5 () Int)
-(declare-fun top.res.nondet_4 () Int)
-(declare-fun top.res.nondet_3 () Int)
-(declare-fun top.res.nondet_2 () Int)
-(declare-fun top.res.nondet_1 () Int)
-(declare-fun top.res.nondet_0 () Int)
-
-(declare-primed-var top.usr.e01 Bool)
-(declare-primed-var top.usr.e02 Bool)
-(declare-primed-var top.usr.e03 Bool)
-(declare-primed-var top.usr.e04 Bool)
-(declare-primed-var top.usr.e05 Bool)
-(declare-primed-var top.usr.e06 Bool)
-(declare-primed-var top.usr.e07 Bool)
-(declare-primed-var top.usr.e08 Bool)
-(declare-primed-var top.usr.e09 Bool)
-(declare-primed-var top.usr.e10 Bool)
-(declare-primed-var top.usr.e11 Bool)
-(declare-primed-var top.usr.e12 Bool)
-(declare-primed-var top.usr.init_invalid Int)
-(declare-primed-var top.usr.OK Bool)
-(declare-primed-var top.res.init_flag Bool)
-(declare-primed-var top.res.abs_0 Int)
-(declare-primed-var top.res.abs_1 Int)
-(declare-primed-var top.res.abs_2 Int)
-(declare-primed-var top.res.abs_3 Int)
-(declare-primed-var top.res.abs_4 Int)
-(declare-primed-var top.res.abs_5 Bool)
-(declare-primed-var top.res.abs_6 Bool)
-(declare-primed-var top.res.abs_7 Bool)
-(declare-primed-var top.res.abs_8 Bool)
-(declare-primed-var top.res.inst_3 Bool)
-(declare-primed-var top.res.inst_2 Int)
-(declare-primed-var top.res.inst_1 Bool)
-(declare-primed-var top.res.inst_0 Bool)
+(declare-var top.res.nondet_30 Int)
+(declare-var top.res.nondet_29 Int)
+(declare-var top.res.nondet_28 Int)
+(declare-var top.res.nondet_27 Int)
+(declare-var top.res.nondet_26 Int)
+(declare-var top.res.nondet_25 Int)
+(declare-var top.res.nondet_24 Int)
+(declare-var top.res.nondet_23 Int)
+(declare-var top.res.nondet_22 Int)
+(declare-var top.res.nondet_21 Int)
+(declare-var top.res.nondet_20 Int)
+(declare-var top.res.nondet_19 Int)
+(declare-var top.res.nondet_18 Int)
+(declare-var top.res.nondet_17 Int)
+(declare-var top.res.nondet_16 Int)
+(declare-var top.res.nondet_15 Int)
+(declare-var top.res.nondet_14 Int)
+(declare-var top.res.nondet_13 Int)
+(declare-var top.res.nondet_12 Int)
+(declare-var top.res.nondet_11 Int)
+(declare-var top.res.nondet_10 Int)
+(declare-var top.res.nondet_9 Int)
+(declare-var top.res.nondet_8 Int)
+(declare-var top.res.nondet_7 Int)
+(declare-var top.res.nondet_6 Int)
+(declare-var top.res.nondet_5 Int)
+(declare-var top.res.nondet_4 Int)
+(declare-var top.res.nondet_3 Int)
+(declare-var top.res.nondet_2 Int)
+(declare-var top.res.nondet_1 Int)
+(declare-var top.res.nondet_0 Int)
 
 (define-fun
   init (
   (and
    (= top.res.abs_7 (and top.res.abs_6 (> top.usr.init_invalid 0)))
    (let
-    ((X1 Bool top.res.abs_5))
+    ((X1 top.res.abs_5))
     (and
      (= top.usr.OK (=> top.res.abs_8 (not X1)))
      (__node_init_DRAGON_0
    (and
     (= top.res.abs_7! (and top.res.abs_6! (> top.usr.init_invalid! 0)))
     (let
-     ((X1 Bool top.res.abs_5!))
+     ((X1 top.res.abs_5!))
      (and
       (= top.usr.OK! (=> top.res.abs_8! (not X1)))
       (__node_trans_DRAGON_0
index 5178cf86be5d96f1e9914de400912d8210616831..9ff13d5ab843c893f88da2c8eef7f1c8ad38d650 100644 (file)
@@ -1,29 +1,29 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status 
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic LIA)
 
-(define-fun get-y ((currPoint Int)) Int 
+(define-fun get-y ((currPoint Int)) Int
 (ite (< currPoint 10) 0 (ite (< currPoint 20) 1 (ite (< currPoint 30) 2 (ite (< currPoint 40) 3 (ite (< currPoint 50) 4 (ite (< currPoint 60) 5 (ite (< currPoint 70) 6 (ite (< currPoint 80) 7 (ite (< currPoint 90) 8 9))))))))))
 
 (define-fun get-x ((currPoint Int)) Int
        (- currPoint (* (get-y currPoint) 10)))
 (define-fun interpret-move (( currPoint Int ) ( move Int)) Int
-(ite (= move 0) currPoint 
-(ite (= move 1)  (ite (or (< (+ (get-y currPoint) 1) 0) (>= (+ (get-y currPoint) 1) 10))     currPoint (+ currPoint  10)) 
-(ite (= move 2)  (ite (or (< (+ (get-x currPoint) 1) 0) (>= (+ (get-x currPoint) 1) 10))     currPoint (+ currPoint  1)) 
-(ite (= move 3)  (ite (or (< (+ (get-y currPoint) -1) 0) (>= (+ (get-y currPoint) -1) 10))     currPoint (+ currPoint  -10)) 
-(ite (= move 4)  (ite (or (< (+ (get-x currPoint) -1) 0) (>= (+ (get-x currPoint) -1) 10))     currPoint (+ currPoint  -1)) 
+(ite (= move 0) currPoint
+(ite (= move 1)  (ite (or (< (+ (get-y currPoint) 1) 0) (>= (+ (get-y currPoint) 1) 10))     currPoint (+ currPoint  10))
+(ite (= move 2)  (ite (or (< (+ (get-x currPoint) 1) 0) (>= (+ (get-x currPoint) 1) 10))     currPoint (+ currPoint  1))
+(ite (= move 3)  (ite (or (< (+ (get-y currPoint) (- 1)) 0) (>= (+ (get-y currPoint) (- 1)) 10))     currPoint (+ currPoint  (- 10)))
+(ite (= move 4)  (ite (or (< (+ (get-x currPoint) (- 1)) 0) (>= (+ (get-x currPoint) (- 1)) 10))     currPoint (+ currPoint  (- 1)))
 currPoint))))))
 
 (define-fun interpret-move-obstacle-0 (( currPoint Int ) ( move Int)) Int
-(ite (= move 0)  (ite (or (< (+ (get-y currPoint) 1) 0) (>= (+ (get-y currPoint) 1) 10))     currPoint (+ currPoint  10)) 
-(ite (= move 1)  (ite (or (< (+ (get-y currPoint) -1) 0) (>= (+ (get-y currPoint) -1) 10))     currPoint (+ currPoint  -10)) 
+(ite (= move 0)  (ite (or (< (+ (get-y currPoint) 1) 0) (>= (+ (get-y currPoint) 1) 10))     currPoint (+ currPoint  10))
+(ite (= move 1)  (ite (or (< (+ (get-y currPoint) (- 1)) 0) (>= (+ (get-y currPoint) (- 1)) 10))     currPoint (+ currPoint  (- 10)))
 currPoint)))
 
 (define-fun interpret-move-obstacle-1 (( currPoint Int ) ( move Int)) Int
-(ite (= move 0)  (ite (or (< (+ (get-y currPoint) 1) 0) (>= (+ (get-y currPoint) 1) 10))     currPoint (+ currPoint  10)) 
-(ite (= move 1) currPoint 
-(ite (= move 2)  (ite (or (< (+ (get-y currPoint) -1) 0) (>= (+ (get-y currPoint) -1) 10))     currPoint (+ currPoint  -10)) 
+(ite (= move 0)  (ite (or (< (+ (get-y currPoint) 1) 0) (>= (+ (get-y currPoint) 1) 10))     currPoint (+ currPoint  10))
+(ite (= move 1) currPoint
+(ite (= move 2)  (ite (or (< (+ (get-y currPoint) (- 1)) 0) (>= (+ (get-y currPoint) (- 1)) 10))     currPoint (+ currPoint  (- 10)))
 currPoint))))
 
 (define-fun allowable-move-obstacle-0 (( start Int ) ( end Int)) Bool
@@ -36,57 +36,57 @@ currPoint))))
        (or (= (interpret-move-obstacle-1 start 2) end) false))))
 
 (define-fun get-move-obstacle-0 (( start Int ) ( end Int)) Int
-       (ite (= (interpret-move-obstacle-0 start 0) end) 0 
-       (ite (= (interpret-move-obstacle-0 start 1) end) 1  -1)))
+       (ite (= (interpret-move-obstacle-0 start 0) end) 0
+       (ite (= (interpret-move-obstacle-0 start 1) end) 1  (- 1))))
 
 (define-fun get-move-obstacle-1 (( start Int ) ( end Int)) Int
-       (ite (= (interpret-move-obstacle-1 start 0) end) 0 
-       (ite (= (interpret-move-obstacle-1 start 1) end) 1 
-       (ite (= (interpret-move-obstacle-1 start 2) end) 2  -1))))
+       (ite (= (interpret-move-obstacle-1 start 0) end) 0
+       (ite (= (interpret-move-obstacle-1 start 1) end) 1
+       (ite (= (interpret-move-obstacle-1 start 2) end) 2  (- 1)))))
 
 (define-fun no-overlap-one-move-combination-2-2 ((p0 Int) (p1 Int) (p2 Int) (p3 Int)) Bool
        (and (not (= p0 p2)) (and (not (= p0 p3)) (and (not (= p1 p2)) (and (not (= p1 p3)) true)))))
 
 (define-fun no-overlaps-0 (( currPoint Int ) ( move Int) (obstacleCurrPoint Int) (obstacleMove Int)) Bool
        (= 1
-       (ite (= move 0) 
+       (ite (= move 0)
                (ite (= obstacleMove 0) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 10)) 1 0)
-               (ite (= obstacleMove 1) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) -10)) 1 0) 0))
-       (ite (= move 1) 
+               (ite (= obstacleMove 1) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) (- 10))) 1 0) 0))
+       (ite (= move 1)
                (ite (= obstacleMove 0) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) 10) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 10)) 1 0)
-               (ite (= obstacleMove 1) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) 10) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) -10)) 1 0) 0))
-       (ite (= move 2) 
+               (ite (= obstacleMove 1) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) 10) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) (- 10))) 1 0) 0))
+       (ite (= move 2)
                (ite (= obstacleMove 0) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 1) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 10)) 1 0)
-               (ite (= obstacleMove 1) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 1) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) -10)) 1 0) 0))
-       (ite (= move 3) 
-               (ite (= obstacleMove 0) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) -10) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 10)) 1 0)
-               (ite (= obstacleMove 1) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) -10) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) -10)) 1 0) 0))
-       (ite (= move 4) 
-               (ite (= obstacleMove 0) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint -1) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 10)) 1 0)
-               (ite (= obstacleMove 1) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint -1) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) -10)) 1 0) 0)) 0)))))))
+               (ite (= obstacleMove 1) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 1) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) (- 10))) 1 0) 0))
+       (ite (= move 3)
+               (ite (= obstacleMove 0) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) (- 10)) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 10)) 1 0)
+               (ite (= obstacleMove 1) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) (- 10)) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) (- 10))) 1 0) 0))
+       (ite (= move 4)
+               (ite (= obstacleMove 0) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint (- 1)) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 10)) 1 0)
+               (ite (= obstacleMove 1) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint (- 1)) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) (- 10))) 1 0) 0)) 0)))))))
 
 (define-fun no-overlaps-1 (( currPoint Int ) ( move Int) (obstacleCurrPoint Int) (obstacleMove Int)) Bool
        (= 1
-       (ite (= move 0) 
+       (ite (= move 0)
                (ite (= obstacleMove 0) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 10)) 1 0)
                (ite (= obstacleMove 1) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 0)) 1 0)
-               (ite (= obstacleMove 2) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) -10)) 1 0) 0)))
-       (ite (= move 1) 
+               (ite (= obstacleMove 2) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) (- 10))) 1 0) 0)))
+       (ite (= move 1)
                (ite (= obstacleMove 0) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) 10) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 10)) 1 0)
                (ite (= obstacleMove 1) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) 10) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 0)) 1 0)
-               (ite (= obstacleMove 2) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) 10) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) -10)) 1 0) 0)))
-       (ite (= move 2) 
+               (ite (= obstacleMove 2) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) 10) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) (- 10))) 1 0) 0)))
+       (ite (= move 2)
                (ite (= obstacleMove 0) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 1) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 10)) 1 0)
                (ite (= obstacleMove 1) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 1) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 0)) 1 0)
-               (ite (= obstacleMove 2) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 1) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) -10)) 1 0) 0)))
-       (ite (= move 3) 
-               (ite (= obstacleMove 0) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) -10) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 10)) 1 0)
-               (ite (= obstacleMove 1) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) -10) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 0)) 1 0)
-               (ite (= obstacleMove 2) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) -10) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) -10)) 1 0) 0)))
-       (ite (= move 4) 
-               (ite (= obstacleMove 0) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint -1) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 10)) 1 0)
-               (ite (= obstacleMove 1) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint -1) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 0)) 1 0)
-               (ite (= obstacleMove 2) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint -1) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) -10)) 1 0) 0))) 0)))))))
+               (ite (= obstacleMove 2) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 1) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) (- 10))) 1 0) 0)))
+       (ite (= move 3)
+               (ite (= obstacleMove 0) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) (- 10)) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 10)) 1 0)
+               (ite (= obstacleMove 1) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) (- 10)) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 0)) 1 0)
+               (ite (= obstacleMove 2) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint 0) (- 10)) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) (- 10))) 1 0) 0)))
+       (ite (= move 4)
+               (ite (= obstacleMove 0) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint (- 1)) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 10)) 1 0)
+               (ite (= obstacleMove 1) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint (- 1)) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) 0)) 1 0)
+               (ite (= obstacleMove 2) (ite (no-overlap-one-move-combination-2-2 currPoint (+ (+ currPoint (- 1)) 0) obstacleCurrPoint (+ (+ obstacleCurrPoint 0) (- 10))) 1 0) 0))) 0)))))))
 
 (define-fun no-overlaps-one-step-helper ((currPoint Int) (move Int) (o0-t Int) (o0move Int) (o1-t Int) (o1move Int)) Bool
        (and (no-overlaps-0 currPoint move o0-t o0move) (and (no-overlaps-1 currPoint move o1-t o1move) true)))
@@ -104,15 +104,16 @@ currPoint))))
 (declare-var o1-3 Int)
 
 (synth-fun move ((currPoint Int) (o0 Int) (o1 Int)) Int
+       ((Start Int) (MoveId Int) (CondInt Int) (StartBool Bool))
        ((Start Int (
                MoveId
                (ite StartBool Start Start)))
-    (MoveId Int (0
+       (MoveId Int (0
                1
                2
                3
                4
-       ))
+       ))
        (CondInt Int (
                (get-y currPoint) ;y coord
                (get-x currPoint) ;x coord
@@ -122,7 +123,7 @@ currPoint))))
                (get-x o1)
                (+ CondInt CondInt)
                (- CondInt CondInt)
-               -1
+               (- 1)
                0
                1
                2
@@ -133,16 +134,16 @@ currPoint))))
                7
                8
                9
-                               ))
+       ))
        (StartBool Bool ((and StartBool StartBool)
                (or  StartBool StartBool)
                (not StartBool)
                (<=  CondInt CondInt)
                (=   CondInt CondInt)
-               (>=  CondInt CondInt))))) 
- (constraint  (let ((pos0 Int 0)) (let ((mov0 Int (move pos0 99 98))) (let ((pos1 Int (interpret-move pos0 mov0))) (let ((mov1 Int (move pos1 o0-1 o1-1))) (let ((pos2 Int (interpret-move pos1 mov1))) (let ((mov2 Int (move pos2 o0-2 o1-2))) (let ((pos3 Int (interpret-move pos2 mov2)))
- (or 
+               (>=  CondInt CondInt)))))
+
+(constraint  (let ((pos0 0)) (let ((mov0 (move pos0 99 98))) (let ((pos1 (interpret-move pos0 mov0))) (let ((mov1 (move pos1 o0-1 o1-1))) (let ((pos2 (interpret-move pos1 mov1))) (let ((mov2 (move pos2 o0-2 o1-2))) (let ((pos3 (interpret-move pos2 mov2)))
+ (or
        (and
                (= pos3 30)
                (and (no-overlaps-one-step pos0 mov0 99 o0-1 98 o1-1) (and (no-overlaps-one-step pos1 mov1 o0-1 o0-2 o1-1 o1-2) (and (no-overlaps-one-step pos2 mov2 o0-2 o0-3 o1-2 o1-3) true))))
index 6d3354d2d458a25a1a4661864509a134de1d1719..2b417784350eee1a8e9b4efba3feca1cf65689de 100644 (file)
@@ -1,11 +1,11 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic LIA)
-(synth-fun findSum ( (y1 Int) (y2 Int) )Int (
-(Start Int ( 0 1 y1 y2 (+ Start Start) (ite BoolExpr Start Start))) 
+(synth-fun findSum ((y1 Int) (y2 Int)) Int ((Start Int) (BoolExpr Bool)) (
+(Start Int (0 1 y1 y2 (+ Start Start) (ite BoolExpr Start Start)))
 (BoolExpr Bool ((< Start Start) (<= Start Start)))))
 (declare-var x1 Int)
 (declare-var x2 Int)
-(constraint (=> (> (+ x1 x2) 0) (= (findSum x1 x2 ) x1)))
-(constraint (=> (<= (+ x1 x2) 0) (= (findSum x1 x2 ) x2)))
+(constraint (=> (> (+ x1 x2) 0) (= (findSum x1 x2) x1)))
+(constraint (=> (<= (+ x1 x2) 0) (= (findSum x1 x2) x2)))
 (check-synth)
index 6b647b77dbb17bd7a84a341c281e7ca8845cbe62..6aa17ef307e2406f9d0228bdad66d131c5a37939 100644 (file)
@@ -1,10 +1,11 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-unif-pi=complete --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-unif-pi=complete --sygus-out=status
 (set-logic BV)
 
-(synth-fun f ((x (BitVec 64)) (y (BitVec 64))) (BitVec 64)
+(synth-fun f ((x (_ BitVec 64)) (y (_ BitVec 64))) (_ BitVec 64)
+  ((Start (_ BitVec 64)) (CBool Bool))
   (
-    (Start (BitVec 64)
+    (Start (BitVec 64)
       (#x0000000000000000 #x0000000000000001 x y
         (bvnot Start)
         (bvand Start Start)
@@ -26,8 +27,8 @@
     )
   )
 
-(declare-var x (BitVec 64))
-(declare-var y (BitVec 64))
+(declare-var x (BitVec 64))
+(declare-var y (BitVec 64))
 
 (constraint (= (f #x0000000000000000 #x0000000000000001) #x0000000000000000))
 (constraint (= (f #x0000000000000000 #x0000000000000000) #x0000000000000001))
index 29e8527dce5688bba60c7b3014886bea4086cc94..9e3d2ea7554a2b17859c70d6ab94ccc80eb26386 100644 (file)
@@ -1,17 +1,12 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status --sygus-repair-const --sygus-grammar-cons=any-const
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status --sygus-repair-const --sygus-grammar-cons=any-const
 (set-logic LIA)
 
 (synth-inv inv-f ((y Int) (z Int) (c Int)))
 
-(declare-primed-var y Int)
-(declare-primed-var z Int)
-(declare-primed-var c Int)
-
 (define-fun pre-f ((y Int) (z Int) (c Int)) Bool
 (and (and (= c 0) (>= y 0)) (and (>= 127 y) (= z (* 36 y)))))
 
-
 (define-fun trans-f ((y Int) (z Int) (c Int) (y! Int) (z! Int) (c! Int)) Bool
 (and (and (and (< c 36) (= z! (+ z 1))) (= c! (+ c 1))) (= y! y)))
 
index 3f1295df65f3bd8d3d4072f6ae2bb4b694c2f042..5b52e1da77ce51b08992e4ce1863ce6cbfc5f697 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic LIA)
 (synth-fun f ((x Int) (y Int)) Int)
 
index 799633fa3f48950f827251a844b76e95b2d70d1e..d7cc161dac89acd6fe51b385c9585ef93415264e 100644 (file)
@@ -1,30 +1,31 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic BV)
 
-(define-fun shr1 ((x (BitVec 64))) (BitVec 64) (bvlshr x #x0000000000000001))
-(define-fun shr4 ((x (BitVec 64))) (BitVec 64) (bvlshr x #x0000000000000004))
-(define-fun shr16 ((x (BitVec 64))) (BitVec 64) (bvlshr x #x0000000000000010))
-(define-fun shl1 ((x (BitVec 64))) (BitVec 64) (bvshl x #x0000000000000001))
-(define-fun if0 ((x (BitVec 64)) (y (BitVec 64)) (z (BitVec 64))) (BitVec 64) (ite (= x #x0000000000000001) y z))
+(define-fun shr1 ((x (_ BitVec 64))) (_ BitVec 64) (bvlshr x #x0000000000000001))
+(define-fun shr4 ((x (_ BitVec 64))) (_ BitVec 64) (bvlshr x #x0000000000000004))
+(define-fun shr16 ((x (_ BitVec 64))) (_ BitVec 64) (bvlshr x #x0000000000000010))
+(define-fun shl1 ((x (_ BitVec 64))) (_ BitVec 64) (bvshl x #x0000000000000001))
+(define-fun if0 ((x (_ BitVec 64)) (y (_ BitVec 64)) (z (_ BitVec 64))) (_ BitVec 64) (ite (= x #x0000000000000001) y z))
 
-(synth-fun f ( (x (BitVec 64))) (BitVec 64)
+(synth-fun f ((x (_ BitVec 64))) (_ BitVec 64)
+((Start (_ BitVec 64)) (StartBool Bool))
 (
-
-(Start (BitVec 64) (#x0000000000000000 #x0000000000000001 x (bvnot Start)
-                    (shl1 Start)
-                   (shr1 Start)
-                   (shr4 Start)
-                   (shr16 Start)
-                   (bvand Start Start)
-                   (bvor Start Start)
-                   (bvxor Start Start)
-                   (bvadd Start Start)
-                   (ite StartBool Start Start)
- ))
+(Start (_ BitVec 64) (#x0000000000000000 #x0000000000000001 x (bvnot Start)
+            (shl1 Start)
+            (shr1 Start)
+            (shr4 Start)
+            (shr16 Start)
+            (bvand Start Start)
+            (bvor Start Start)
+            (bvxor Start Start)
+            (bvadd Start Start)
+            (ite StartBool Start Start)
+))
 (StartBool Bool ((= Start #x0000000000000001)))
 )
 )
+
 (constraint (= (f #x6E393354DFFAAB51) #xC8E366559002AA57))
 
 (constraint (= (f #xE5D371D100002E8A) #x0000000000000000))
index 9e04682a50ee7fd4bde946f99779930e091e3f94..aebc03dea04b6b04cf705a00643971f5dead9730 100644 (file)
@@ -1,16 +1,17 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic LIA)
 (synth-fun inv ((i Int) (l Int)) Bool
+    ((Start Bool) (AtomicFormula Bool) (Sum Int) (Term Int) (Sign Int) (Var Int) (Const Int))
     (
         (Start Bool ((and AtomicFormula AtomicFormula)
                      (or AtomicFormula AtomicFormula)))
         (AtomicFormula Bool ((<= Sum Const) (= Sum Const)))
         (Sum Int ((+ Term Term)))
         (Term Int ((* Sign Var)))
-        (Sign Int (0 1 -1))
+        (Sign Int (0 1 (- 1)))
         (Var Int (i l))
-        (Const Int (-7 -6 -5 -4 -3 -2 -1 0 1 2 3 4 5 6 7))
+        (Const Int ((- 7) (- 6) (- 5) (- 4) (- 3) (- 2) (- 1) 0 1 2 3 4 5 6 7))
     )
 )
 
index 2ca010898e8a1ccf0edb9ec7e2c06784c9ad084a..99d682bcc99cb640abf828b0c66fdb2dfb93b5da 100644 (file)
@@ -1,66 +1,66 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --cegqi-si=none --sygus-out=status
-(set-logic LIRA) 
+; COMMAND-LINE: --lang=sygus2 --cegqi-si=none --sygus-out=status
+(set-logic LIRA)
 (define-fun
 __node_init_top_0 (
 (top.usr.onOff@0 Bool) (top.usr.decelSet@0 Bool) (top.usr.accelResume@0 Bool) (top.usr.cancel@0 Bool) (top.usr.brakePedal@0 Bool) (top.usr.carGear@0 Int) (top.usr.carSpeed@0 Real) (top.usr.validInputs@0 Bool) (top.usr.OK@0 Bool) (top.res.init_flag@0 Bool) (top.impl.usr.chart_CruiseController_ModeLogic_mode_logic____wakeup___@0 Bool) (top.impl.usr.chart_CruiseController_ModeLogic_mode_logic_rlt_evtInitStep@0 Bool) (top.impl.usr.chart_CruiseController_ModeLogic_mode_logic_final_state_states___root@0 Int) (top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetAccel_Bounded_Count_Out@0 Int) (top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetDecel_Bounded_Count_Out@0 Int) ) Bool
 
-(let ((X1 Int 0)) (let ((X2 Int (ite (not (= X1 1)) 1 X1))) (let ((X3 Bool (or (= X2 1) (and (>= X2 2) (<= X2 8))))) (and (= top.usr.OK@0 X3) (let ((X4 Bool false)) (let ((X5 Bool (and (and (and (and (not top.usr.cancel@0) (not top.usr.brakePedal@0)) (ite (= top.usr.carGear@0 3) true false)) (ite (>= top.usr.carSpeed@0 15.0) true false)) top.usr.validInputs@0))) (let ((X6 Bool false)) (and (= top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetDecel_Bounded_Count_Out@0
+(let ((X1 0)) (let ((X2 (ite (not (= X1 1)) 1 X1))) (let ((X3 (or (= X2 1) (and (>= X2 2) (<= X2 8))))) (and (= top.usr.OK@0 X3) (let ((X4 false)) (let ((X5 (and (and (and (and (not top.usr.cancel@0) (not top.usr.brakePedal@0)) (ite (= top.usr.carGear@0 3) true false)) (ite (>= top.usr.carSpeed@0 15.0) true false)) top.usr.validInputs@0))) (let ((X6 false)) (and (= top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetDecel_Bounded_Count_Out@0
 (ite (<= (ite (>= 0 (ite top.usr.decelSet@0 1 0)) 0
 (ite top.usr.decelSet@0 1 0)) 20) (ite (>= 0 (ite top.usr.decelSet@0 1 0)) 0
 (ite top.usr.decelSet@0 1 0)) 20)) (= top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetAccel_Bounded_Count_Out@0
 (ite (<= (ite (>= 0 (ite top.usr.accelResume@0 1 0)) 0
 (ite top.usr.accelResume@0 1 0)) 20) (ite (>= 0 (ite top.usr.accelResume@0 1 0)) 0
-(ite top.usr.accelResume@0 1 0)) 20)) (= top.impl.usr.chart_CruiseController_ModeLogic_mode_logic_rlt_evtInitStep@0 true) (let ((X7 Int (ite (not top.usr.onOff@0) 0 1))) (let ((X8 Bool (and (and (>= X1 2) (<= X1 8)) (not (ite (not (= X7 0)) true false))))) (let ((X9 Int (ite X8 (ite (and (>= X1 2) (<= X1 8)) 0 X1) X1))) (let ((X10 Int (ite X8 (ite (not (= X9 1)) 1 X9) X9))) (let ((X11 Bool (and (= X10 1) (and (ite (not (= X7 0)) true false) (not X8))))) (let ((X12 Int (ite X11 (ite (= X10 1) 0 X10) X10))) (let ((X13 Int (ite (not (and (>= X12 2) (<= X12 8))) 2 X12))) (let ((X14 Bool (and (not (and (>= X12 2) (<= X12 8))) (and (>= X13 2) (<= X13 8))))) (let ((X15 Int (ite X14 (ite (not (= X13 7)) 7 X13) X13))) (let ((X16 Int (ite X11 X15 X12))) (let ((X17 Bool (or X11 X8))) (let ((X18 Int (ite (not X5) 0 1))) (let ((X19 Bool (and (and (>= X16 3) (<= X16 6)) (not (ite (not (= X18 0)) true false))))) (let ((X20
-Int (ite X19
-(ite (and (>= X16 3) (<= X16 6)) 2 X16) X16))) (let ((X21 Int (ite X19 (ite (not (= X20 8)) 8 X20) X20))) (let ((X22 Int (ite (not X4) 0 1))) (let ((X23 Bool (and (= X21 8) (and (and (ite (not (= (ite (not (= X22 1)) 0 1) 0)) true false) (ite (not (= (ite (not (= X18 1)) 0 1) 0)) true false)) (not X19))))) (let ((X24 Int (ite X23 (ite (= X21 8) 2 X21) X21))) (let ((X25
-Int (ite (not (and (>= X24 3) (<= X24 6))) 3 X24))) (let ((X26 Bool (and (not (and (>= X24 3) (<= X24 6))) (and (>= X25 3) (<= X25 6))))) (let ((X27
-Int (ite X26
-(ite (not (= X25 4)) 4 X25) X25))) (let ((X28 Int (ite X23 X27 X24))) (let ((X29 Bool (or X23 X19))) (let ((X30 Bool (and (= X28 8) (and (and (ite (not
+(ite top.usr.accelResume@0 1 0)) 20)) (= top.impl.usr.chart_CruiseController_ModeLogic_mode_logic_rlt_evtInitStep@0 true) (let ((X7 (ite (not top.usr.onOff@0) 0 1))) (let ((X8 (and (and (>= X1 2) (<= X1 8)) (not (ite (not (= X7 0)) true false))))) (let ((X9 (ite X8 (ite (and (>= X1 2) (<= X1 8)) 0 X1) X1))) (let ((X10 (ite X8 (ite (not (= X9 1)) 1 X9) X9))) (let ((X11 (and (= X10 1) (and (ite (not (= X7 0)) true false) (not X8))))) (let ((X12 (ite X11 (ite (= X10 1) 0 X10) X10))) (let ((X13 (ite (not (and (>= X12 2) (<= X12 8))) 2 X12))) (let ((X14 (and (not (and (>= X12 2) (<= X12 8))) (and (>= X13 2) (<= X13 8))))) (let ((X15 (ite X14 (ite (not (= X13 7)) 7 X13) X13))) (let ((X16 (ite X11 X15 X12))) (let ((X17 (or X11 X8))) (let ((X18 (ite (not X5) 0 1))) (let ((X19 (and (and (>= X16 3) (<= X16 6)) (not (ite (not (= X18 0)) true false))))) (let ((X20
+(ite X19
+(ite (and (>= X16 3) (<= X16 6)) 2 X16) X16))) (let ((X21 (ite X19 (ite (not (= X20 8)) 8 X20) X20))) (let ((X22 (ite (not X4) 0 1))) (let ((X23 (and (= X21 8) (and (and (ite (not (= (ite (not (= X22 1)) 0 1) 0)) true false) (ite (not (= (ite (not (= X18 1)) 0 1) 0)) true false)) (not X19))))) (let ((X24 (ite X23 (ite (= X21 8) 2 X21) X21))) (let ((X25
+(ite (not (and (>= X24 3) (<= X24 6))) 3 X24))) (let ((X26 (and (not (and (>= X24 3) (<= X24 6))) (and (>= X25 3) (<= X25 6))))) (let ((X27
+(ite X26
+(ite (not (= X25 4)) 4 X25) X25))) (let ((X28 (ite X23 X27 X24))) (let ((X29 (or X23 X19))) (let ((X30 (and (= X28 8) (and (and (ite (not
 (= (ite (not
 (= (ite (not X6) 0 1) 1)) 0 1) 0)) true false) (ite (not
 (= (ite (not (= X18 1)) 0 1) 0)) true false)) (not X29))))) (let ((X31
-Int (ite X30 (ite (= X28 8) 2 X28) X28))) (let ((X32
-Int (ite (not (and (>= X31 3) (<= X31 6))) 3 X31))) (let ((X33 Bool (and (not
+(ite X30 (ite (= X28 8) 2 X28) X28))) (let ((X32
+(ite (not (and (>= X31 3) (<= X31 6))) 3 X31))) (let ((X33 (and (not
 (and (>= X31 3) (<= X31 6))) (and (>= X32 3) (<= X32 6))))) (let ((X34
-Int (ite X33
-(ite (not (= X32 4)) 4 X32) X32))) (let ((X35 Int (ite X30 X34 X31))) (let ((X36 Bool (or X30 X29))) (let ((X37 Bool (and (= X35 7) (and (and (ite (not
+(ite X33
+(ite (not (= X32 4)) 4 X32) X32))) (let ((X35 (ite X30 X34 X31))) (let ((X36 (or X30 X29))) (let ((X37 (and (= X35 7) (and (and (ite (not
 (= (ite (not (= X22 1)) 0 1) 0)) true false) (ite (not
 (= (ite (not (= X18 1)) 0 1) 0)) true false)) (not X36))))) (let ((X38
-Int (ite X37
+(ite X37
 (ite (= X35 7) 2 X35) X35))) (let ((X39
-Int (ite (not
-(and (>= X38 3) (<= X38 6))) 3 X38))) (let ((X40 Bool (and (not
+(ite (not
+(and (>= X38 3) (<= X38 6))) 3 X38))) (let ((X40 (and (not
 (and (>= X38 3) (<= X38 6))) (and (>= X39 3) (<= X39 6))))) (let ((X41
-Int (ite X40
-(ite (not (= X39 4)) 4 X39) X39))) (let ((X42 Int (ite X37 X41 X38))) (let ((X43 Bool (or X37 X36))) (let ((X44 Bool (and (= X42 4) (= X22 1)))) (let ((X45
-Int (ite X44
+(ite X40
+(ite (not (= X39 4)) 4 X39) X39))) (let ((X42 (ite X37 X41 X38))) (let ((X43 (or X37 X36))) (let ((X44 (and (= X42 4) (= X22 1)))) (let ((X45
+(ite X44
 (ite (= X42 4) 3 X42) X42))) (let ((X46
-Int (ite X44
+(ite X44
 (ite (not (= X45 4)) 4 X45) X45))) (let ((X47
-Int (ite (not
-(ite (= top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetAccel_Bounded_Count_Out@0 20) true false)) 0 1))) (let ((X48 Bool (and (= X46 4) (and (= X47 1) (not X44))))) (let ((X49
-Int (ite X48
+(ite (not
+(ite (= top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetAccel_Bounded_Count_Out@0 20) true false)) 0 1))) (let ((X48 (and (= X46 4) (and (= X47 1) (not X44))))) (let ((X49
+(ite X48
 (ite (= X46 4) 3 X46) X46))) (let ((X50
-Int (ite X48
-(ite (not (= X49 5)) 5 X49) X49))) (let ((X51 Bool (or X48 X44))) (let ((X52
-Int (ite (not
-(ite (= top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetDecel_Bounded_Count_Out@0 20) true false)) 0 1))) (let ((X53 Bool (and (= X50 4) (and (= X52 1) (not X51))))) (let ((X54
-Int (ite X53
+(ite X48
+(ite (not (= X49 5)) 5 X49) X49))) (let ((X51 (or X48 X44))) (let ((X52
+(ite (not
+(ite (= top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetDecel_Bounded_Count_Out@0 20) true false)) 0 1))) (let ((X53 (and (= X50 4) (and (= X52 1) (not X51))))) (let ((X54
+(ite X53
 (ite (= X50 4) 3 X50) X50))) (let ((X55
-Int (ite X53
+(ite X53
 (ite (not
-(= X54 6)) 6 X54) X54))) (let ((X56 Bool (or X53 X51))) (let ((X57 Bool (and (= X55 6) (and (= X52 0) (not X56))))) (let ((X58
-Int (ite X57
+(= X54 6)) 6 X54) X54))) (let ((X56 (or X53 X51))) (let ((X57 (and (= X55 6) (and (= X52 0) (not X56))))) (let ((X58
+(ite X57
 (ite (= X55 6) 3 X55) X55))) (let ((X59
-Int (ite X57
+(ite X57
 (ite (not
-(= X58 4)) 4 X58) X58))) (let ((X60 Bool 
-(or X57 X56))) (let ((X61 Bool 
+(= X58 4)) 4 X58) X58))) (let ((X60 
+(or X57 X56))) (let ((X61 
 (and (= X59 5) (and (= X47 0) (not X60))))) (let ((X62
-Int (ite X61
+(ite X61
 (ite (= X59 5) 3 X59) X59))) (let ((X63
-Int (ite X61
+(ite X61
 (ite (not
 (= X62 4)) 4 X62) X62))) (and (= top.impl.usr.chart_CruiseController_ModeLogic_mode_logic____wakeup___@0 true) (= top.impl.usr.chart_CruiseController_ModeLogic_mode_logic_final_state_states___root@0
 (ite top.impl.usr.chart_CruiseController_ModeLogic_mode_logic____wakeup___@0
@@ -74,7 +74,7 @@ __node_trans_top_0 (
 (top.usr.onOff@1 Bool) (top.usr.decelSet@1 Bool) (top.usr.accelResume@1 Bool) (top.usr.cancel@1 Bool) (top.usr.brakePedal@1 Bool) (top.usr.carGear@1 Int) (top.usr.carSpeed@1 Real) (top.usr.validInputs@1 Bool) (top.usr.OK@1 Bool) (top.res.init_flag@1 Bool) (top.impl.usr.chart_CruiseController_ModeLogic_mode_logic____wakeup___@1 Bool) (top.impl.usr.chart_CruiseController_ModeLogic_mode_logic_rlt_evtInitStep@1 Bool) (top.impl.usr.chart_CruiseController_ModeLogic_mode_logic_final_state_states___root@1 Int) (top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetAccel_Bounded_Count_Out@1 Int) (top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetDecel_Bounded_Count_Out@1 Int) (top.usr.onOff@0 Bool) (top.usr.decelSet@0 Bool) (top.usr.accelResume@0 Bool) (top.usr.cancel@0 Bool) (top.usr.brakePedal@0 Bool) (top.usr.carGear@0 Int) (top.usr.carSpeed@0 Real) (top.usr.validInputs@0 Bool) (top.usr.OK@0 Bool) (top.res.init_flag@0 Bool) (top.impl.usr.chart_CruiseController_ModeLogic_mode_logic____wakeup___@0 Bool) (top.impl.usr.chart_CruiseController_ModeLogic_mode_logic_rlt_evtInitStep@0 Bool) (top.impl.usr.chart_CruiseController_ModeLogic_mode_logic_final_state_states___root@0 Int) (top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetAccel_Bounded_Count_Out@0 Int) (top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetDecel_Bounded_Count_Out@0 Int) ) Bool
 
 (let ((X1
-Int top.impl.usr.chart_CruiseController_ModeLogic_mode_logic_final_state_states___root@0)) (let ((X2 Int (ite (not (= X1 1)) 1 X1))) (let ((X3 Bool (or (= X2 1) (and (>= X2 2) (<= X2 8))))) (and (= top.usr.OK@1 X3) (let ((X4 Bool (and (not top.usr.decelSet@0) top.usr.decelSet@1))) (let ((X5 Bool (and (and (and (and (not top.usr.cancel@1) (not top.usr.brakePedal@1)) (ite (= top.usr.carGear@1 3) true false)) (ite (>= top.usr.carSpeed@1 15.0) true false)) top.usr.validInputs@1))) (let ((X6 Bool (and (not top.usr.accelResume@0) top.usr.accelResume@1))) (and (= top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetDecel_Bounded_Count_Out@1
+top.impl.usr.chart_CruiseController_ModeLogic_mode_logic_final_state_states___root@0)) (let ((X2 (ite (not (= X1 1)) 1 X1))) (let ((X3 (or (= X2 1) (and (>= X2 2) (<= X2 8))))) (and (= top.usr.OK@1 X3) (let ((X4 (and (not top.usr.decelSet@0) top.usr.decelSet@1))) (let ((X5 (and (and (and (and (not top.usr.cancel@1) (not top.usr.brakePedal@1)) (ite (= top.usr.carGear@1 3) true false)) (ite (>= top.usr.carSpeed@1 15.0) true false)) top.usr.validInputs@1))) (let ((X6 (and (not top.usr.accelResume@0) top.usr.accelResume@1))) (and (= top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetDecel_Bounded_Count_Out@1
 (ite (<= (ite (>= 0
 (ite top.usr.decelSet@1
 (+ top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetDecel_Bounded_Count_Out@0 1) 0)) 0
@@ -94,56 +94,56 @@ Int top.impl.usr.chart_CruiseController_ModeLogic_mode_logic_final_state_states_
 (ite top.usr.accelResume@1
 (+ top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetAccel_Bounded_Count_Out@0 1) 0)) 20)) (= top.impl.usr.chart_CruiseController_ModeLogic_mode_logic_rlt_evtInitStep@1
 (ite top.impl.usr.chart_CruiseController_ModeLogic_mode_logic____wakeup___@0
-false top.impl.usr.chart_CruiseController_ModeLogic_mode_logic_rlt_evtInitStep@0)) (let ((X7 Int (ite (not top.usr.onOff@1) 0 1))) (let ((X8 Bool (and (and (>= X1 2) (<= X1 8)) (not (ite (not (= X7 0)) true false))))) (let ((X9 Int (ite X8 (ite (and (>= X1 2) (<= X1 8)) 0 X1) X1))) (let ((X10 Int (ite X8 (ite (not (= X9 1)) 1 X9) X9))) (let ((X11 Bool (and (= X10 1) (and (ite (not (= X7 0)) true false) (not X8))))) (let ((X12 Int (ite X11 (ite (= X10 1) 0 X10) X10))) (let ((X13 Int (ite (not (and (>= X12 2) (<= X12 8))) 2 X12))) (let ((X14 Bool (and (not (and (>= X12 2) (<= X12 8))) (and (>= X13 2) (<= X13 8))))) (let ((X15 Int (ite X14 (ite (not (= X13 7)) 7 X13) X13))) (let ((X16 Int (ite X11 X15 X12))) (let ((X17 Bool (or X11 X8))) (let ((X18 Int (ite (not X5) 0 1))) (let ((X19 Bool (and (and (>= X16 3) (<= X16 6)) (not (ite (not (= X18 0)) true false))))) (let ((X20
-Int (ite X19
-(ite (and (>= X16 3) (<= X16 6)) 2 X16) X16))) (let ((X21 Int (ite X19 (ite (not (= X20 8)) 8 X20) X20))) (let ((X22 Int (ite (not X4) 0 1))) (let ((X23 Bool (and (= X21 8) (and (and (ite (not (= (ite (not (= X22 1)) 0 1) 0)) true false) (ite (not (= (ite (not (= X18 1)) 0 1) 0)) true false)) (not X19))))) (let ((X24 Int (ite X23 (ite (= X21 8) 2 X21) X21))) (let ((X25
-Int (ite (not (and (>= X24 3) (<= X24 6))) 3 X24))) (let ((X26 Bool (and (not (and (>= X24 3) (<= X24 6))) (and (>= X25 3) (<= X25 6))))) (let ((X27
-Int (ite X26
-(ite (not (= X25 4)) 4 X25) X25))) (let ((X28 Int (ite X23 X27 X24))) (let ((X29 Bool (or X23 X19))) (let ((X30 Bool (and (= X28 8) (and (and (ite (not
+false top.impl.usr.chart_CruiseController_ModeLogic_mode_logic_rlt_evtInitStep@0)) (let ((X7 (ite (not top.usr.onOff@1) 0 1))) (let ((X8 (and (and (>= X1 2) (<= X1 8)) (not (ite (not (= X7 0)) true false))))) (let ((X9 (ite X8 (ite (and (>= X1 2) (<= X1 8)) 0 X1) X1))) (let ((X10 (ite X8 (ite (not (= X9 1)) 1 X9) X9))) (let ((X11 (and (= X10 1) (and (ite (not (= X7 0)) true false) (not X8))))) (let ((X12 (ite X11 (ite (= X10 1) 0 X10) X10))) (let ((X13 (ite (not (and (>= X12 2) (<= X12 8))) 2 X12))) (let ((X14 (and (not (and (>= X12 2) (<= X12 8))) (and (>= X13 2) (<= X13 8))))) (let ((X15 (ite X14 (ite (not (= X13 7)) 7 X13) X13))) (let ((X16 (ite X11 X15 X12))) (let ((X17 (or X11 X8))) (let ((X18 (ite (not X5) 0 1))) (let ((X19 (and (and (>= X16 3) (<= X16 6)) (not (ite (not (= X18 0)) true false))))) (let ((X20
+(ite X19
+(ite (and (>= X16 3) (<= X16 6)) 2 X16) X16))) (let ((X21 (ite X19 (ite (not (= X20 8)) 8 X20) X20))) (let ((X22 (ite (not X4) 0 1))) (let ((X23 (and (= X21 8) (and (and (ite (not (= (ite (not (= X22 1)) 0 1) 0)) true false) (ite (not (= (ite (not (= X18 1)) 0 1) 0)) true false)) (not X19))))) (let ((X24 (ite X23 (ite (= X21 8) 2 X21) X21))) (let ((X25
+(ite (not (and (>= X24 3) (<= X24 6))) 3 X24))) (let ((X26 (and (not (and (>= X24 3) (<= X24 6))) (and (>= X25 3) (<= X25 6))))) (let ((X27
+(ite X26
+(ite (not (= X25 4)) 4 X25) X25))) (let ((X28 (ite X23 X27 X24))) (let ((X29 (or X23 X19))) (let ((X30 (and (= X28 8) (and (and (ite (not
 (= (ite (not
 (= (ite (not X6) 0 1) 1)) 0 1) 0)) true false) (ite (not
 (= (ite (not (= X18 1)) 0 1) 0)) true false)) (not X29))))) (let ((X31
-Int (ite X30 (ite (= X28 8) 2 X28) X28))) (let ((X32
-Int (ite (not (and (>= X31 3) (<= X31 6))) 3 X31))) (let ((X33 Bool (and (not
+(ite X30 (ite (= X28 8) 2 X28) X28))) (let ((X32
+(ite (not (and (>= X31 3) (<= X31 6))) 3 X31))) (let ((X33 (and (not
 (and (>= X31 3) (<= X31 6))) (and (>= X32 3) (<= X32 6))))) (let ((X34
-Int (ite X33
-(ite (not (= X32 4)) 4 X32) X32))) (let ((X35 Int (ite X30 X34 X31))) (let ((X36 Bool (or X30 X29))) (let ((X37 Bool (and (= X35 7) (and (and (ite (not
+(ite X33
+(ite (not (= X32 4)) 4 X32) X32))) (let ((X35 (ite X30 X34 X31))) (let ((X36 (or X30 X29))) (let ((X37 (and (= X35 7) (and (and (ite (not
 (= (ite (not (= X22 1)) 0 1) 0)) true false) (ite (not
 (= (ite (not (= X18 1)) 0 1) 0)) true false)) (not X36))))) (let ((X38
-Int (ite X37
+(ite X37
 (ite (= X35 7) 2 X35) X35))) (let ((X39
-Int (ite (not
-(and (>= X38 3) (<= X38 6))) 3 X38))) (let ((X40 Bool (and (not
+(ite (not
+(and (>= X38 3) (<= X38 6))) 3 X38))) (let ((X40 (and (not
 (and (>= X38 3) (<= X38 6))) (and (>= X39 3) (<= X39 6))))) (let ((X41
-Int (ite X40
-(ite (not (= X39 4)) 4 X39) X39))) (let ((X42 Int (ite X37 X41 X38))) (let ((X43 Bool (or X37 X36))) (let ((X44 Bool (and (= X42 4) (= X22 1)))) (let ((X45
-Int (ite X44
+(ite X40
+(ite (not (= X39 4)) 4 X39) X39))) (let ((X42 (ite X37 X41 X38))) (let ((X43 (or X37 X36))) (let ((X44 (and (= X42 4) (= X22 1)))) (let ((X45
+(ite X44
 (ite (= X42 4) 3 X42) X42))) (let ((X46
-Int (ite X44
+(ite X44
 (ite (not (= X45 4)) 4 X45) X45))) (let ((X47
-Int (ite (not
-(ite (= top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetAccel_Bounded_Count_Out@1 20) true false)) 0 1))) (let ((X48 Bool (and (= X46 4) (and (= X47 1) (not X44))))) (let ((X49
-Int (ite X48
+(ite (not
+(ite (= top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetAccel_Bounded_Count_Out@1 20) true false)) 0 1))) (let ((X48 (and (= X46 4) (and (= X47 1) (not X44))))) (let ((X49
+(ite X48
 (ite (= X46 4) 3 X46) X46))) (let ((X50
-Int (ite X48
-(ite (not (= X49 5)) 5 X49) X49))) (let ((X51 Bool (or X48 X44))) (let ((X52
-Int (ite (not
-(ite (= top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetDecel_Bounded_Count_Out@1 20) true false)) 0 1))) (let ((X53 Bool (and (= X50 4) (and (= X52 1) (not X51))))) (let ((X54
-Int (ite X53
+(ite X48
+(ite (not (= X49 5)) 5 X49) X49))) (let ((X51 (or X48 X44))) (let ((X52
+(ite (not
+(ite (= top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetDecel_Bounded_Count_Out@1 20) true false)) 0 1))) (let ((X53 (and (= X50 4) (and (= X52 1) (not X51))))) (let ((X54
+(ite X53
 (ite (= X50 4) 3 X50) X50))) (let ((X55
-Int (ite X53
+(ite X53
 (ite (not
-(= X54 6)) 6 X54) X54))) (let ((X56 Bool (or X53 X51))) (let ((X57 Bool (and (= X55 6) (and (= X52 0) (not X56))))) (let ((X58
-Int (ite X57
+(= X54 6)) 6 X54) X54))) (let ((X56 (or X53 X51))) (let ((X57 (and (= X55 6) (and (= X52 0) (not X56))))) (let ((X58
+(ite X57
 (ite (= X55 6) 3 X55) X55))) (let ((X59
-Int (ite X57
+(ite X57
 (ite (not
-(= X58 4)) 4 X58) X58))) (let ((X60 Bool 
-(or X57 X56))) (let ((X61 Bool 
+(= X58 4)) 4 X58) X58))) (let ((X60 
+(or X57 X56))) (let ((X61 
 (and (= X59 5) (and (= X47 0) (not X60))))) (let ((X62
-Int (ite X61
+(ite X61
 (ite (= X59 5) 3 X59) X59))) (let ((X63
-Int (ite X61
+(ite X61
 (ite (not
 (= X62 4)) 4 X62) X62))) (and (= top.impl.usr.chart_CruiseController_ModeLogic_mode_logic____wakeup___@1 true) (= top.impl.usr.chart_CruiseController_ModeLogic_mode_logic_final_state_states___root@1
 (ite top.impl.usr.chart_CruiseController_ModeLogic_mode_logic____wakeup___@1
@@ -157,67 +157,66 @@ Int (ite X61
 (synth-inv str_invariant(
 (top.usr.onOff Bool) (top.usr.decelSet Bool) (top.usr.accelResume Bool) (top.usr.cancel Bool) (top.usr.brakePedal Bool) (top.usr.carGear Int) (top.usr.carSpeed Real) (top.usr.validInputs Bool) (top.usr.OK Bool) (top.res.init_flag Bool) (top.impl.usr.chart_CruiseController_ModeLogic_mode_logic____wakeup___ Bool) (top.impl.usr.chart_CruiseController_ModeLogic_mode_logic_rlt_evtInitStep Bool) (top.impl.usr.chart_CruiseController_ModeLogic_mode_logic_final_state_states___root Int) (top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetAccel_Bounded_Count_Out Int) (top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetDecel_Bounded_Count_Out Int) )) 
 
-(declare-primed-var top.usr.onOff Bool) (declare-primed-var top.usr.decelSet Bool) (declare-primed-var top.usr.accelResume Bool) (declare-primed-var top.usr.cancel Bool) (declare-primed-var top.usr.brakePedal Bool) (declare-primed-var top.usr.carGear Int) (declare-primed-var top.usr.carSpeed Real) (declare-primed-var top.usr.validInputs Bool) (declare-primed-var top.usr.OK Bool) (declare-primed-var top.res.init_flag Bool) (declare-primed-var top.impl.usr.chart_CruiseController_ModeLogic_mode_logic____wakeup___ Bool) (declare-primed-var top.impl.usr.chart_CruiseController_ModeLogic_mode_logic_rlt_evtInitStep Bool) (declare-primed-var top.impl.usr.chart_CruiseController_ModeLogic_mode_logic_final_state_states___root Int) (declare-primed-var top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetAccel_Bounded_Count_Out Int) (declare-primed-var top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetDecel_Bounded_Count_Out Int) 
 (define-fun
 init (
 (top.usr.onOff Bool) (top.usr.decelSet Bool) (top.usr.accelResume Bool) (top.usr.cancel Bool) (top.usr.brakePedal Bool) (top.usr.carGear Int) (top.usr.carSpeed Real) (top.usr.validInputs Bool) (top.usr.OK Bool) (top.res.init_flag Bool) (top.impl.usr.chart_CruiseController_ModeLogic_mode_logic____wakeup___ Bool) (top.impl.usr.chart_CruiseController_ModeLogic_mode_logic_rlt_evtInitStep Bool) (top.impl.usr.chart_CruiseController_ModeLogic_mode_logic_final_state_states___root Int) (top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetAccel_Bounded_Count_Out Int) (top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetDecel_Bounded_Count_Out Int) ) Bool
 
-(let ((X1 Int 0)) (let ((X2 Int (ite (not (= X1 1)) 1 X1))) (let ((X3 Bool (or (= X2 1) (and (>= X2 2) (<= X2 8))))) (and (= top.usr.OK X3) (let ((X4 Bool false)) (let ((X5 Bool (and (and (and (and (not top.usr.cancel) (not top.usr.brakePedal)) (ite (= top.usr.carGear 3) true false)) (ite (>= top.usr.carSpeed 15.0) true false)) top.usr.validInputs))) (let ((X6 Bool false)) (and (= top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetDecel_Bounded_Count_Out
+(let ((X1 0)) (let ((X2 (ite (not (= X1 1)) 1 X1))) (let ((X3 (or (= X2 1) (and (>= X2 2) (<= X2 8))))) (and (= top.usr.OK X3) (let ((X4 false)) (let ((X5 (and (and (and (and (not top.usr.cancel) (not top.usr.brakePedal)) (ite (= top.usr.carGear 3) true false)) (ite (>= top.usr.carSpeed 15.0) true false)) top.usr.validInputs))) (let ((X6 false)) (and (= top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetDecel_Bounded_Count_Out
 (ite (<= (ite (>= 0 (ite top.usr.decelSet 1 0)) 0
 (ite top.usr.decelSet 1 0)) 20) (ite (>= 0 (ite top.usr.decelSet 1 0)) 0
 (ite top.usr.decelSet 1 0)) 20)) (= top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetAccel_Bounded_Count_Out
 (ite (<= (ite (>= 0 (ite top.usr.accelResume 1 0)) 0
 (ite top.usr.accelResume 1 0)) 20) (ite (>= 0 (ite top.usr.accelResume 1 0)) 0
-(ite top.usr.accelResume 1 0)) 20)) (= top.impl.usr.chart_CruiseController_ModeLogic_mode_logic_rlt_evtInitStep true) (let ((X7 Int (ite (not top.usr.onOff) 0 1))) (let ((X8 Bool (and (and (>= X1 2) (<= X1 8)) (not (ite (not (= X7 0)) true false))))) (let ((X9 Int (ite X8 (ite (and (>= X1 2) (<= X1 8)) 0 X1) X1))) (let ((X10 Int (ite X8 (ite (not (= X9 1)) 1 X9) X9))) (let ((X11 Bool (and (= X10 1) (and (ite (not (= X7 0)) true false) (not X8))))) (let ((X12 Int (ite X11 (ite (= X10 1) 0 X10) X10))) (let ((X13 Int (ite (not (and (>= X12 2) (<= X12 8))) 2 X12))) (let ((X14 Bool (and (not (and (>= X12 2) (<= X12 8))) (and (>= X13 2) (<= X13 8))))) (let ((X15 Int (ite X14 (ite (not (= X13 7)) 7 X13) X13))) (let ((X16 Int (ite X11 X15 X12))) (let ((X17 Bool (or X11 X8))) (let ((X18 Int (ite (not X5) 0 1))) (let ((X19 Bool (and (and (>= X16 3) (<= X16 6)) (not (ite (not (= X18 0)) true false))))) (let ((X20
-Int (ite X19
-(ite (and (>= X16 3) (<= X16 6)) 2 X16) X16))) (let ((X21 Int (ite X19 (ite (not (= X20 8)) 8 X20) X20))) (let ((X22 Int (ite (not X4) 0 1))) (let ((X23 Bool (and (= X21 8) (and (and (ite (not (= (ite (not (= X22 1)) 0 1) 0)) true false) (ite (not (= (ite (not (= X18 1)) 0 1) 0)) true false)) (not X19))))) (let ((X24 Int (ite X23 (ite (= X21 8) 2 X21) X21))) (let ((X25
-Int (ite (not (and (>= X24 3) (<= X24 6))) 3 X24))) (let ((X26 Bool (and (not (and (>= X24 3) (<= X24 6))) (and (>= X25 3) (<= X25 6))))) (let ((X27
-Int (ite X26
-(ite (not (= X25 4)) 4 X25) X25))) (let ((X28 Int (ite X23 X27 X24))) (let ((X29 Bool (or X23 X19))) (let ((X30 Bool (and (= X28 8) (and (and (ite (not
+(ite top.usr.accelResume 1 0)) 20)) (= top.impl.usr.chart_CruiseController_ModeLogic_mode_logic_rlt_evtInitStep true) (let ((X7 (ite (not top.usr.onOff) 0 1))) (let ((X8 (and (and (>= X1 2) (<= X1 8)) (not (ite (not (= X7 0)) true false))))) (let ((X9 (ite X8 (ite (and (>= X1 2) (<= X1 8)) 0 X1) X1))) (let ((X10 (ite X8 (ite (not (= X9 1)) 1 X9) X9))) (let ((X11 (and (= X10 1) (and (ite (not (= X7 0)) true false) (not X8))))) (let ((X12 (ite X11 (ite (= X10 1) 0 X10) X10))) (let ((X13 (ite (not (and (>= X12 2) (<= X12 8))) 2 X12))) (let ((X14 (and (not (and (>= X12 2) (<= X12 8))) (and (>= X13 2) (<= X13 8))))) (let ((X15 (ite X14 (ite (not (= X13 7)) 7 X13) X13))) (let ((X16 (ite X11 X15 X12))) (let ((X17 (or X11 X8))) (let ((X18 (ite (not X5) 0 1))) (let ((X19 (and (and (>= X16 3) (<= X16 6)) (not (ite (not (= X18 0)) true false))))) (let ((X20
+(ite X19
+(ite (and (>= X16 3) (<= X16 6)) 2 X16) X16))) (let ((X21 (ite X19 (ite (not (= X20 8)) 8 X20) X20))) (let ((X22 (ite (not X4) 0 1))) (let ((X23 (and (= X21 8) (and (and (ite (not (= (ite (not (= X22 1)) 0 1) 0)) true false) (ite (not (= (ite (not (= X18 1)) 0 1) 0)) true false)) (not X19))))) (let ((X24 (ite X23 (ite (= X21 8) 2 X21) X21))) (let ((X25
+(ite (not (and (>= X24 3) (<= X24 6))) 3 X24))) (let ((X26 (and (not (and (>= X24 3) (<= X24 6))) (and (>= X25 3) (<= X25 6))))) (let ((X27
+(ite X26
+(ite (not (= X25 4)) 4 X25) X25))) (let ((X28 (ite X23 X27 X24))) (let ((X29 (or X23 X19))) (let ((X30 (and (= X28 8) (and (and (ite (not
 (= (ite (not
 (= (ite (not X6) 0 1) 1)) 0 1) 0)) true false) (ite (not
 (= (ite (not (= X18 1)) 0 1) 0)) true false)) (not X29))))) (let ((X31
-Int (ite X30 (ite (= X28 8) 2 X28) X28))) (let ((X32
-Int (ite (not (and (>= X31 3) (<= X31 6))) 3 X31))) (let ((X33 Bool (and (not
+(ite X30 (ite (= X28 8) 2 X28) X28))) (let ((X32
+(ite (not (and (>= X31 3) (<= X31 6))) 3 X31))) (let ((X33 (and (not
 (and (>= X31 3) (<= X31 6))) (and (>= X32 3) (<= X32 6))))) (let ((X34
-Int (ite X33
-(ite (not (= X32 4)) 4 X32) X32))) (let ((X35 Int (ite X30 X34 X31))) (let ((X36 Bool (or X30 X29))) (let ((X37 Bool (and (= X35 7) (and (and (ite (not
+(ite X33
+(ite (not (= X32 4)) 4 X32) X32))) (let ((X35 (ite X30 X34 X31))) (let ((X36 (or X30 X29))) (let ((X37 (and (= X35 7) (and (and (ite (not
 (= (ite (not (= X22 1)) 0 1) 0)) true false) (ite (not
 (= (ite (not (= X18 1)) 0 1) 0)) true false)) (not X36))))) (let ((X38
-Int (ite X37
+(ite X37
 (ite (= X35 7) 2 X35) X35))) (let ((X39
-Int (ite (not
-(and (>= X38 3) (<= X38 6))) 3 X38))) (let ((X40 Bool (and (not
+(ite (not
+(and (>= X38 3) (<= X38 6))) 3 X38))) (let ((X40 (and (not
 (and (>= X38 3) (<= X38 6))) (and (>= X39 3) (<= X39 6))))) (let ((X41
-Int (ite X40
-(ite (not (= X39 4)) 4 X39) X39))) (let ((X42 Int (ite X37 X41 X38))) (let ((X43 Bool (or X37 X36))) (let ((X44 Bool (and (= X42 4) (= X22 1)))) (let ((X45
-Int (ite X44
+(ite X40
+(ite (not (= X39 4)) 4 X39) X39))) (let ((X42 (ite X37 X41 X38))) (let ((X43 (or X37 X36))) (let ((X44 (and (= X42 4) (= X22 1)))) (let ((X45
+(ite X44
 (ite (= X42 4) 3 X42) X42))) (let ((X46
-Int (ite X44
+(ite X44
 (ite (not (= X45 4)) 4 X45) X45))) (let ((X47
-Int (ite (not
-(ite (= top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetAccel_Bounded_Count_Out 20) true false)) 0 1))) (let ((X48 Bool (and (= X46 4) (and (= X47 1) (not X44))))) (let ((X49
-Int (ite X48
+(ite (not
+(ite (= top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetAccel_Bounded_Count_Out 20) true false)) 0 1))) (let ((X48 (and (= X46 4) (and (= X47 1) (not X44))))) (let ((X49
+(ite X48
 (ite (= X46 4) 3 X46) X46))) (let ((X50
-Int (ite X48
-(ite (not (= X49 5)) 5 X49) X49))) (let ((X51 Bool (or X48 X44))) (let ((X52
-Int (ite (not
-(ite (= top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetDecel_Bounded_Count_Out 20) true false)) 0 1))) (let ((X53 Bool (and (= X50 4) (and (= X52 1) (not X51))))) (let ((X54
-Int (ite X53
+(ite X48
+(ite (not (= X49 5)) 5 X49) X49))) (let ((X51 (or X48 X44))) (let ((X52
+(ite (not
+(ite (= top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetDecel_Bounded_Count_Out 20) true false)) 0 1))) (let ((X53 (and (= X50 4) (and (= X52 1) (not X51))))) (let ((X54
+(ite X53
 (ite (= X50 4) 3 X50) X50))) (let ((X55
-Int (ite X53
+(ite X53
 (ite (not
-(= X54 6)) 6 X54) X54))) (let ((X56 Bool (or X53 X51))) (let ((X57 Bool (and (= X55 6) (and (= X52 0) (not X56))))) (let ((X58
-Int (ite X57
+(= X54 6)) 6 X54) X54))) (let ((X56 (or X53 X51))) (let ((X57 (and (= X55 6) (and (= X52 0) (not X56))))) (let ((X58
+(ite X57
 (ite (= X55 6) 3 X55) X55))) (let ((X59
-Int (ite X57
+(ite X57
 (ite (not
-(= X58 4)) 4 X58) X58))) (let ((X60 Bool 
-(or X57 X56))) (let ((X61 Bool 
+(= X58 4)) 4 X58) X58))) (let ((X60 
+(or X57 X56))) (let ((X61 
 (and (= X59 5) (and (= X47 0) (not X60))))) (let ((X62
-Int (ite X61
+(ite X61
 (ite (= X59 5) 3 X59) X59))) (let ((X63
-Int (ite X61
+(ite X61
 (ite (not
 (= X62 4)) 4 X62) X62))) (and (= top.impl.usr.chart_CruiseController_ModeLogic_mode_logic____wakeup___ true) (= top.impl.usr.chart_CruiseController_ModeLogic_mode_logic_final_state_states___root
 (ite top.impl.usr.chart_CruiseController_ModeLogic_mode_logic____wakeup___
@@ -235,7 +234,7 @@ Int (ite X61
 ) Bool
 
 (let ((X1
-Int top.impl.usr.chart_CruiseController_ModeLogic_mode_logic_final_state_states___root)) (let ((X2 Int (ite (not (= X1 1)) 1 X1))) (let ((X3 Bool (or (= X2 1) (and (>= X2 2) (<= X2 8))))) (and (= top.usr.OK! X3) (let ((X4 Bool (and (not top.usr.decelSet) top.usr.decelSet!))) (let ((X5 Bool (and (and (and (and (not top.usr.cancel!) (not top.usr.brakePedal!)) (ite (= top.usr.carGear! 3) true false)) (ite (>= top.usr.carSpeed! 15.0) true false)) top.usr.validInputs!))) (let ((X6 Bool (and (not top.usr.accelResume) top.usr.accelResume!))) (and (= top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetDecel_Bounded_Count_Out!
+top.impl.usr.chart_CruiseController_ModeLogic_mode_logic_final_state_states___root)) (let ((X2 (ite (not (= X1 1)) 1 X1))) (let ((X3 (or (= X2 1) (and (>= X2 2) (<= X2 8))))) (and (= top.usr.OK! X3) (let ((X4 (and (not top.usr.decelSet) top.usr.decelSet!))) (let ((X5 (and (and (and (and (not top.usr.cancel!) (not top.usr.brakePedal!)) (ite (= top.usr.carGear! 3) true false)) (ite (>= top.usr.carSpeed! 15.0) true false)) top.usr.validInputs!))) (let ((X6 (and (not top.usr.accelResume) top.usr.accelResume!))) (and (= top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetDecel_Bounded_Count_Out!
 (ite (<= (ite (>= 0
 (ite top.usr.decelSet!
 (+ top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetDecel_Bounded_Count_Out 1) 0)) 0
@@ -255,56 +254,56 @@ Int top.impl.usr.chart_CruiseController_ModeLogic_mode_logic_final_state_states_
 (ite top.usr.accelResume!
 (+ top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetAccel_Bounded_Count_Out 1) 0)) 20)) (= top.impl.usr.chart_CruiseController_ModeLogic_mode_logic_rlt_evtInitStep!
 (ite top.impl.usr.chart_CruiseController_ModeLogic_mode_logic____wakeup___
-false top.impl.usr.chart_CruiseController_ModeLogic_mode_logic_rlt_evtInitStep)) (let ((X7 Int (ite (not top.usr.onOff!) 0 1))) (let ((X8 Bool (and (and (>= X1 2) (<= X1 8)) (not (ite (not (= X7 0)) true false))))) (let ((X9 Int (ite X8 (ite (and (>= X1 2) (<= X1 8)) 0 X1) X1))) (let ((X10 Int (ite X8 (ite (not (= X9 1)) 1 X9) X9))) (let ((X11 Bool (and (= X10 1) (and (ite (not (= X7 0)) true false) (not X8))))) (let ((X12 Int (ite X11 (ite (= X10 1) 0 X10) X10))) (let ((X13 Int (ite (not (and (>= X12 2) (<= X12 8))) 2 X12))) (let ((X14 Bool (and (not (and (>= X12 2) (<= X12 8))) (and (>= X13 2) (<= X13 8))))) (let ((X15 Int (ite X14 (ite (not (= X13 7)) 7 X13) X13))) (let ((X16 Int (ite X11 X15 X12))) (let ((X17 Bool (or X11 X8))) (let ((X18 Int (ite (not X5) 0 1))) (let ((X19 Bool (and (and (>= X16 3) (<= X16 6)) (not (ite (not (= X18 0)) true false))))) (let ((X20
-Int (ite X19
-(ite (and (>= X16 3) (<= X16 6)) 2 X16) X16))) (let ((X21 Int (ite X19 (ite (not (= X20 8)) 8 X20) X20))) (let ((X22 Int (ite (not X4) 0 1))) (let ((X23 Bool (and (= X21 8) (and (and (ite (not (= (ite (not (= X22 1)) 0 1) 0)) true false) (ite (not (= (ite (not (= X18 1)) 0 1) 0)) true false)) (not X19))))) (let ((X24 Int (ite X23 (ite (= X21 8) 2 X21) X21))) (let ((X25
-Int (ite (not (and (>= X24 3) (<= X24 6))) 3 X24))) (let ((X26 Bool (and (not (and (>= X24 3) (<= X24 6))) (and (>= X25 3) (<= X25 6))))) (let ((X27
-Int (ite X26
-(ite (not (= X25 4)) 4 X25) X25))) (let ((X28 Int (ite X23 X27 X24))) (let ((X29 Bool (or X23 X19))) (let ((X30 Bool (and (= X28 8) (and (and (ite (not
+false top.impl.usr.chart_CruiseController_ModeLogic_mode_logic_rlt_evtInitStep)) (let ((X7 (ite (not top.usr.onOff!) 0 1))) (let ((X8 (and (and (>= X1 2) (<= X1 8)) (not (ite (not (= X7 0)) true false))))) (let ((X9 (ite X8 (ite (and (>= X1 2) (<= X1 8)) 0 X1) X1))) (let ((X10 (ite X8 (ite (not (= X9 1)) 1 X9) X9))) (let ((X11 (and (= X10 1) (and (ite (not (= X7 0)) true false) (not X8))))) (let ((X12 (ite X11 (ite (= X10 1) 0 X10) X10))) (let ((X13 (ite (not (and (>= X12 2) (<= X12 8))) 2 X12))) (let ((X14 (and (not (and (>= X12 2) (<= X12 8))) (and (>= X13 2) (<= X13 8))))) (let ((X15 (ite X14 (ite (not (= X13 7)) 7 X13) X13))) (let ((X16 (ite X11 X15 X12))) (let ((X17 (or X11 X8))) (let ((X18 (ite (not X5) 0 1))) (let ((X19 (and (and (>= X16 3) (<= X16 6)) (not (ite (not (= X18 0)) true false))))) (let ((X20
+(ite X19
+(ite (and (>= X16 3) (<= X16 6)) 2 X16) X16))) (let ((X21 (ite X19 (ite (not (= X20 8)) 8 X20) X20))) (let ((X22 (ite (not X4) 0 1))) (let ((X23 (and (= X21 8) (and (and (ite (not (= (ite (not (= X22 1)) 0 1) 0)) true false) (ite (not (= (ite (not (= X18 1)) 0 1) 0)) true false)) (not X19))))) (let ((X24 (ite X23 (ite (= X21 8) 2 X21) X21))) (let ((X25
+(ite (not (and (>= X24 3) (<= X24 6))) 3 X24))) (let ((X26 (and (not (and (>= X24 3) (<= X24 6))) (and (>= X25 3) (<= X25 6))))) (let ((X27
+(ite X26
+(ite (not (= X25 4)) 4 X25) X25))) (let ((X28 (ite X23 X27 X24))) (let ((X29 (or X23 X19))) (let ((X30 (and (= X28 8) (and (and (ite (not
 (= (ite (not
 (= (ite (not X6) 0 1) 1)) 0 1) 0)) true false) (ite (not
 (= (ite (not (= X18 1)) 0 1) 0)) true false)) (not X29))))) (let ((X31
-Int (ite X30 (ite (= X28 8) 2 X28) X28))) (let ((X32
-Int (ite (not (and (>= X31 3) (<= X31 6))) 3 X31))) (let ((X33 Bool (and (not
+(ite X30 (ite (= X28 8) 2 X28) X28))) (let ((X32
+(ite (not (and (>= X31 3) (<= X31 6))) 3 X31))) (let ((X33 (and (not
 (and (>= X31 3) (<= X31 6))) (and (>= X32 3) (<= X32 6))))) (let ((X34
-Int (ite X33
-(ite (not (= X32 4)) 4 X32) X32))) (let ((X35 Int (ite X30 X34 X31))) (let ((X36 Bool (or X30 X29))) (let ((X37 Bool (and (= X35 7) (and (and (ite (not
+(ite X33
+(ite (not (= X32 4)) 4 X32) X32))) (let ((X35 (ite X30 X34 X31))) (let ((X36 (or X30 X29))) (let ((X37 (and (= X35 7) (and (and (ite (not
 (= (ite (not (= X22 1)) 0 1) 0)) true false) (ite (not
 (= (ite (not (= X18 1)) 0 1) 0)) true false)) (not X36))))) (let ((X38
-Int (ite X37
+(ite X37
 (ite (= X35 7) 2 X35) X35))) (let ((X39
-Int (ite (not
-(and (>= X38 3) (<= X38 6))) 3 X38))) (let ((X40 Bool (and (not
+(ite (not
+(and (>= X38 3) (<= X38 6))) 3 X38))) (let ((X40 (and (not
 (and (>= X38 3) (<= X38 6))) (and (>= X39 3) (<= X39 6))))) (let ((X41
-Int (ite X40
-(ite (not (= X39 4)) 4 X39) X39))) (let ((X42 Int (ite X37 X41 X38))) (let ((X43 Bool (or X37 X36))) (let ((X44 Bool (and (= X42 4) (= X22 1)))) (let ((X45
-Int (ite X44
+(ite X40
+(ite (not (= X39 4)) 4 X39) X39))) (let ((X42 (ite X37 X41 X38))) (let ((X43 (or X37 X36))) (let ((X44 (and (= X42 4) (= X22 1)))) (let ((X45
+(ite X44
 (ite (= X42 4) 3 X42) X42))) (let ((X46
-Int (ite X44
+(ite X44
 (ite (not (= X45 4)) 4 X45) X45))) (let ((X47
-Int (ite (not
-(ite (= top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetAccel_Bounded_Count_Out! 20) true false)) 0 1))) (let ((X48 Bool (and (= X46 4) (and (= X47 1) (not X44))))) (let ((X49
-Int (ite X48
+(ite (not
+(ite (= top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetAccel_Bounded_Count_Out! 20) true false)) 0 1))) (let ((X48 (and (= X46 4) (and (= X47 1) (not X44))))) (let ((X49
+(ite X48
 (ite (= X46 4) 3 X46) X46))) (let ((X50
-Int (ite X48
-(ite (not (= X49 5)) 5 X49) X49))) (let ((X51 Bool (or X48 X44))) (let ((X52
-Int (ite (not
-(ite (= top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetDecel_Bounded_Count_Out! 20) true false)) 0 1))) (let ((X53 Bool (and (= X50 4) (and (= X52 1) (not X51))))) (let ((X54
-Int (ite X53
+(ite X48
+(ite (not (= X49 5)) 5 X49) X49))) (let ((X51 (or X48 X44))) (let ((X52
+(ite (not
+(ite (= top.impl.usr.cruise_controller_CruiseController_ModeLogic_DelayOnsetDecel_Bounded_Count_Out! 20) true false)) 0 1))) (let ((X53 (and (= X50 4) (and (= X52 1) (not X51))))) (let ((X54
+(ite X53
 (ite (= X50 4) 3 X50) X50))) (let ((X55
-Int (ite X53
+(ite X53
 (ite (not
-(= X54 6)) 6 X54) X54))) (let ((X56 Bool (or X53 X51))) (let ((X57 Bool (and (= X55 6) (and (= X52 0) (not X56))))) (let ((X58
-Int (ite X57
+(= X54 6)) 6 X54) X54))) (let ((X56 (or X53 X51))) (let ((X57 (and (= X55 6) (and (= X52 0) (not X56))))) (let ((X58
+(ite X57
 (ite (= X55 6) 3 X55) X55))) (let ((X59
-Int (ite X57
+(ite X57
 (ite (not
-(= X58 4)) 4 X58) X58))) (let ((X60 Bool 
-(or X57 X56))) (let ((X61 Bool 
+(= X58 4)) 4 X58) X58))) (let ((X60 
+(or X57 X56))) (let ((X61 
 (and (= X59 5) (and (= X47 0) (not X60))))) (let ((X62
-Int (ite X61
+(ite X61
 (ite (= X59 5) 3 X59) X59))) (let ((X63
-Int (ite X61
+(ite X61
 (ite (not
 (= X62 4)) 4 X62) X62))) (and (= top.impl.usr.chart_CruiseController_ModeLogic_mode_logic____wakeup___! true) (= top.impl.usr.chart_CruiseController_ModeLogic_mode_logic_final_state_states___root!
 (ite top.impl.usr.chart_CruiseController_ModeLogic_mode_logic____wakeup___!
index 0e00cfd9b95faecf6a83d95bad4b1ada0ef42c50..d8222ded2d0e29ab75b5c8370dce58b2a6d74bcf 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 ; Synthesize the maximum of 2 integers, but property has 4 variables (requires 2 passes)
 (set-logic LIA)
 (synth-fun max2 ((x Int) (y Int)) Int)
@@ -9,4 +9,3 @@
 (declare-var w Int)
 (constraint (=> (< r 0) (=> (or (and (= x w) (= y (+ w r))) (and (= x (+ w r)) (= y w))) (= (max2 x y) w))))
 (check-synth)
-
index a36a000191976761c51dc26975a3d3f2d010f098..c0cae002515f5897222c077ef76e3c4e637ecc01 100644 (file)
@@ -1,11 +1,12 @@
 ; REQUIRES: symfpu
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status --fp-exp
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status --fp-exp
 (set-logic ALL)
 (define-sort FP () (_ FloatingPoint 3 5))
 (define-fun IC ((t FP)) Bool (=> (fp.isInfinite t) (fp.isNegative t)))
 
 (synth-fun simpIC ((t FP)) Bool
+  ((Start Bool) (StartFP FP))
   ((Start Bool (
      (and Start Start)
      (not Start)
index 31800a36f406657c409056a034eb6f5d8b851572..98f13bb92b3532b8068dfee388a128a196be25bb 100644 (file)
@@ -1,8 +1,9 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic LIA)
 
-(synth-fun eq1 ( (x Int) (y Int) ) Int
+(synth-fun eq1 ((x Int) (y Int)) Int
+    ((Start Int) (StartBool Bool))
     ((Start Int (x
                  y
                  0
                       (<=  Start Start)
                       (=   Start Start)))))
 
-(define-fun iteB (( b1 Bool ) (b2 Bool ) (b3 Bool )) Bool (or (and b1 b2) (and (not b1) b3)))
+(define-fun iteB ((b1 Bool) (b2 Bool) (b3 Bool)) Bool (or (and b1 b2) (and (not b1) b3)))
 
-(declare-var x Int) 
-(declare-var y Int) 
+(declare-var x Int)
+(declare-var y Int)
 
-(constraint (iteB (>= x 0) 
+(constraint (iteB (>= x 0)
                   (= (eq1 x y) (+ x x))
-                             (= (eq1 x y) x)
+                  (= (eq1 x y) x)
 ))
 
 (check-synth)
-
index 65741759585a93cc8d05c55d437580315801c8d4..d9deb28a32326406850956799829728188919416 100644 (file)
@@ -1,9 +1,13 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
-  ( set-logic BV )
-  ( define-fun hd05  (    ( x  ( BitVec 32 ) ) )  ( BitVec 32 )  ( bvor     x  ( bvsub     x   #x00000001 ) ) )
-( synth-fun f  (    ( x  ( BitVec 32 ) ) )  ( BitVec 32 ) (
-       (Start  ( BitVec 32 ) (         #x00000001
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
+(set-logic BV)
+
+(define-fun hd05 ((x (_ BitVec 32))) (_ BitVec 32) (bvor x (bvsub x #x00000001)))
+
+(synth-fun f ((x (_ BitVec 32))) (_ BitVec 32)
+       ((Start (_ BitVec 32)) (NT0 (_ BitVec 32)) (NT4 (_ BitVec 32))) (
+       (Start (_ BitVec 32) (
+               #x00000001
                #x00000000
                #xffffffff
                x
                (bvor NT4 NT0)
                (bvadd NT4 NT0)
 ))
-       (NT0  ( BitVec 32 ) (           #x00000001
+       (NT0 (_ BitVec 32) (
+               #x00000001
                #x00000000
                #xffffffff
                x
 ))
-       (NT4  ( BitVec 32 ) (           (bvnot NT0)
+       (NT4 (_ BitVec 32) (
+               (bvnot NT0)
                (bvneg NT0)
                (bvadd NT0 NT0)
                (bvor NT0 NT0)
@@ -37,6 +43,6 @@
                (bvurem NT0 NT0)
 ))
 ))
-  ( declare-var x  ( BitVec 32 ) )
-  ( constraint  ( =     ( hd05    x )  ( f    x ) ) )
-  ( check-synth )
+(declare-var x (_ BitVec 32))
+(constraint (= (hd05 x) (f x)))
+(check-synth)
index e023e837b4c5dfc8d2f1316a6b37898a71cf7108..0657494b1f89128f4bd9bb7cea4b4905e72e0bcd 100644 (file)
@@ -1,8 +1,9 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status --nl-ext-tplanes
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status --nl-ext-tplanes
 (set-logic NIA)
 
 (synth-fun max ((x Int) (y Int)) Int
+  ((Start Int) (StartBool Bool))
   ((Start Int (0 1 x y
                (+ Start Start)
                (- Start Start)
index 8f333811c1ea3f9708bd8126e0016bd1be3d4f30..1906e3ef1c0770068f154472a15c96b6bd92a905 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 
 (set-logic LIA)
 
@@ -11,4 +11,3 @@
 (constraint (= (f x y) (+ (f x x) (f y y) x 1)))
 
 (check-synth)
-
index fc715a645889382cc17331177df09dca69a1ae54..07f029577426ae68a8164fc20ad5397ff44a93c3 100644 (file)
@@ -1,8 +1,9 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic BV)
 (define-sort BV () (_ BitVec 8))
 (synth-fun IC ((s BV) (t BV)) Bool
+  ((Start Bool) (StartBv BV))
   ((Start Bool (
      true
      false
      #x00
      #x01
      #x7E
-     (bvnot  StartBv)
-     (bvmul  StartBv StartBv)
-     (bvudiv  StartBv StartBv)
-     (bvurem  StartBv StartBv)
-     (bvand  StartBv StartBv)
+     (bvnot StartBv)
+     (bvmul StartBv StartBv)
+     (bvudiv StartBv StartBv)
+     (bvurem StartBv StartBv)
+     (bvand StartBv StartBv)
    ))
 ))
-(constraint (not (IC (_ bv32 8) (_ bv187 8) )))
-(constraint (not (IC (_ bv102 8) (_ bv15 8) )))
-(constraint (not (IC (_ bv92 8) (_ bv85 8) )))
-(constraint (IC (_ bv39 8) (_ bv214 8) ))
-(constraint (IC (_ bv155 8) (_ bv82 8) ))
-(constraint (IC (_ bv53 8) (_ bv98 8) ))
-(constraint (IC (_ bv41 8) (_ bv47 8) ))
+(constraint (not (IC (_ bv32 8) (_ bv187 8))))
+(constraint (not (IC (_ bv102 8) (_ bv15 8))))
+(constraint (not (IC (_ bv92 8) (_ bv85 8))))
+(constraint (IC (_ bv39 8) (_ bv214 8)))
+(constraint (IC (_ bv155 8) (_ bv82 8)))
+(constraint (IC (_ bv53 8) (_ bv98 8)))
+(constraint (IC (_ bv41 8) (_ bv47 8)))
 (check-synth)
index 214da82c8996a0119a8d01c237927ac44dd79f03..fe6f5cd0c34c9b451cdd3f68986a505620e45af0 100644 (file)
@@ -1,4 +1,4 @@
-; COMMAND-LINE: --cegqi-si=none --sygus-out=status --no-sygus-repair-const --sygus-arg-relevant
+; COMMAND-LINE: --lang=sygus2 --cegqi-si=none --sygus-out=status --no-sygus-repair-const --sygus-arg-relevant
 ; EXPECT: unsat
 (set-logic LIA)
 
@@ -25,4 +25,3 @@
 (constraint (>= (g x1 x2 x3 x4 x5 x6 x7 x8 x9 x10) (+ x4 x4 x4)))
 
 (check-synth)
-
index 2f1b74ddfb7f65e921bdb111d5e4a86b7b39a25e..a50cec2d82a91abfa8924cabbca8f53c87c1d2cc 100644 (file)
@@ -1,10 +1,9 @@
-; COMMAND-LINE: --cegqi-si=none --sygus-out=status --no-sygus-add-const-grammar --sygus-arg-relevant
+; COMMAND-LINE: --lang=sygus2 --cegqi-si=none --sygus-out=status --no-sygus-add-const-grammar --sygus-arg-relevant
 ; EXPECT: unsat
 (set-logic LIA)
 
 (synth-fun f ((x1 Int) (x2 Int) (x3 Int) (x4 Int) (x5 Int) (x6 Int) (x7 Int) (x8 Int) (x9 Int) (x10 Int)) Int)
 
-
 (declare-var x Int)
 (declare-var y Int)
 
@@ -15,4 +14,3 @@
 (constraint (<= (f x x x x x x x x x 0) (+ x x x)))
 
 (check-synth)
-
index 523c95ec2fbbc8f6bb963d7f3a118df646d68f9c..0891e57bff518a496e26f6996c4671fd5a5acd05 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status --cegqi-si=none --no-sygus-pbe
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status --cegqi-si=none --no-sygus-pbe
 
 (set-logic LRA)
 
@@ -7,7 +7,7 @@
 
 (declare-var x Real)
 
-(constraint (and (= (f -4) -2) (= (f -9) (/ -9 2))))
+(constraint (and (= (f (- 4)) (- 2)) (= (f (- 9)) (/ (- 9) 2))))
 
 (check-synth)
 
index 987d6a7929d50b671a99d4f5aac5a62540f38916..fdcaaefa96a6fe075e94c84a583d459e2eb3ccbd 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic ALL)
 (synth-fun f ((x Int)) (Set Int))
 
index 22048f1ec0a2d146d9d8361faa4eb32f914d85fe..e0b039c167a89a48da70fc6892cd02f24b6fb29d 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 (set-logic ALL)
 
 (synth-fun f ((x String)) Int)
index 831e5beb1e49983930881a7a2a6aee2c2141fdc6..44974caf1a171c6fe2a38f93349cd78566551ea7 100644 (file)
@@ -1,9 +1,10 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status 
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status
 
 (set-logic LIA)
 
 (synth-fun f ((x Int)) Int
+    ((Start Int))
     ((Start Int (
                  x
                  3
@@ -27,4 +28,3 @@
 (constraint (= (f 0) 0))
 
 (check-synth)
-
index e6f43fc21b045beb13688b4ef782727786773e5a..a0122193d7b700baf7f84738ccf77ceb2863d1a8 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status --no-sygus-repair-const --decision=justification
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status --no-sygus-repair-const --decision=justification
 (set-logic LIA)
 
 (synth-fun f1 ((x1 Int) (x2 Int)) Int)
 (define-fun vmax () Int 2)
 
 (define-fun AllZero ((v1 Int) (v2 Int)) Bool
-           (and (= v1 0) (= v2 0)))
+        (and (= v1 0) (= v2 0)))
 
 (define-fun InV ((v1 Int) (v2 Int)) Bool
-           (and (and (and (>= v1 vmin) (<= v1 vmax)) (>= v2 vmin)) (<= v2 vmax)))
+        (and (and (and (>= v1 vmin) (<= v1 vmax)) (>= v2 vmin)) (<= v2 vmax)))
 
 (define-fun InVorZero ((v1 Int) (v2 Int)) Bool
-           (or (InV v1 v2) (AllZero v1 v2)))
+        (or (InV v1 v2) (AllZero v1 v2)))
 
 (define-fun UnsafeSame ((x1 Int) (x2 Int) (v1 Int) (v2 Int)) Bool
-           (or (and (>= x1 x2) (>= (+ x2 v2) (+ x1 v1)))
-               (and (>= x2 x1) (>= (+ x1 v1) (+ x2 v2)))))
+        (or (and (>= x1 x2) (>= (+ x2 v2) (+ x1 v1)))
+            (and (>= x2 x1) (>= (+ x1 v1) (+ x2 v2)))))
 
 (define-fun BadSame ((x1 Int) (x2 Int)) Bool
-           (= x1 x2))
+        (= x1 x2))
 
 (define-fun Bad ((x1 Int) (x2 Int)) Bool
-           (BadSame x1 x2))
+        (BadSame x1 x2))
 
 (define-fun Unsafe ((x1 Int) (x2 Int) (v1 Int) (v2 Int)) Bool
-           (UnsafeSame x1 x2 v1 v2))
+        (UnsafeSame x1 x2 v1 v2))
 
 
 (declare-var x1 Int)
@@ -46,8 +46,8 @@
                                    (f2 (+ x1 (f1 x1 x2)) (+ x2 (f2 x1 x2))))))))
 
 (constraint (or (or (or (not (InV v1 v2))
-                       (Unsafe x1 x2 v1 v2))
-                                  (AllZero (f1 (+ x1 v1) (+ x2 v2)) (f2 (+ x1 v1) (+ x2 v2))))
+                    (Unsafe x1 x2 v1 v2))
+                   (AllZero (f1 (+ x1 v1) (+ x2 v2)) (f2 (+ x1 v1) (+ x2 v2))))
                 (not (AllZero (f1 x1 x2) (f2 x1 x2)))))
 
 
index 0acdcf25e57a5d21a6450ad18c67e0d9d1300ad6..89f112e0af4f3be6562a69920f3a9abdc8a1e34b 100644 (file)
@@ -1,59 +1,65 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status --decision=justification
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status --decision=justification
 (set-logic LIA)
 
 (synth-fun f1 ((p1 Int) (P1 Int)) Int
-          ((Start Int (
-                       p1
-                       P1
-                       (- Start Start)
-                       (+ Start Start)
-                     )
-           )))
+        ((Start Int))
+        ((Start Int (
+             p1
+             P1
+             (- Start Start)
+             (+ Start Start)
+        )))
+)
 
 (synth-fun f2 ((p1 Int) (P1 Int)) Int
-          ((Start Int (
-                       p1
-                       P1
-                       (+ Start Start)
-                     )
-           )))
+        ((Start Int))
+        ((Start Int (
+             p1
+             P1
+             (+ Start Start)
+        )))
+)
 
 (synth-fun f3 ((p1 Int) (P1 Int)) Int
-          ((Start Int (
-                       p1
-                       P1
-                       (- Start Start)
-                       (+ Start Start)
-                     )
-           )))
+        ((Start Int))
+        ((Start Int (
+             p1
+             P1
+             (- Start Start)
+             (+ Start Start)
+        )))
+)
 
 (synth-fun f4 ((p1 Int) (P1 Int)) Int
-          ((Start Int (
-                       p1
-                       P1
-                       (- Start Start)
-                       (+ Start Start)
-                     )
-           )))
+        ((Start Int))
+        ((Start Int (
+             p1
+             P1
+             (- Start Start)
+             (+ Start Start)
+        )))
+)
 
 (synth-fun f5 ((p1 Int) (P1 Int)) Int
-          ((Start Int (
-                       p1
-                       P1
-                       (- Start Start)
-                       (+ Start Start)
-                     )
-           )))
+        ((Start Int))
+        ((Start Int (
+             p1
+             P1
+             (- Start Start)
+             (+ Start Start)
+        )))
+)
 
 (synth-fun g1 ((p1 Int) (P1 Int)) Int
-          ((Start Int (
-                       p1
-                       P1
-                       (- Start Start)
-                       (+ Start Start)
-                     )
-           )))
+        ((Start Int))
+        ((Start Int (
+             p1
+             P1
+             (- Start Start)
+             (+ Start Start)
+        )))
+)
 
 
 (declare-var x Int)
@@ -61,8 +67,8 @@
 
 (constraint (= (+ (f1 x y) (f1 x y)) (f2 x y)))
 (constraint (= (- (+ (f1 x y) (f2 x y)) y) (f3 x y)))
-(constraint (= (+ (f2 x y) (f2 x y)) (f4 x y))) 
-(constraint (= (+ (f4 x y) (f1 x y)) (f5 x y))) 
+(constraint (= (+ (f2 x y) (f2 x y)) (f4 x y)))
+(constraint (= (+ (f4 x y) (f1 x y)) (f5 x y)))
 
 (constraint (= (- (f1 x y) y) (g1 x y)))
 
@@ -80,4 +86,3 @@
 ;; g3: y+3
 ;; g4: 2y+6
 ;; g5: 3y+x+7
-
index 88b30b20897376225edcd3accef6bbeedd1b9449..3827585ec274ac155cf7692ba2598146799adaa8 100644 (file)
@@ -1,5 +1,5 @@
 ; EXPECT: unsat
-; COMMAND-LINE: --sygus-out=status --no-sygus-pbe --cegqi-si=none --sygus-grammar-cons=any-term --sygus-active-gen=none
+; COMMAND-LINE: --lang=sygus2 --sygus-out=status --no-sygus-pbe --cegqi-si=none --sygus-grammar-cons=any-term --sygus-active-gen=none
 (set-logic ALL)
 (synth-fun f ((x String) (y String)) Int)
 (declare-var x String)