We now support tester annotations, thus it is best practice not to use check-unsat-cores or check-models explicitly in the regressions.
This changes regressions to not use these options, where these options are either:
removed entirely (the benchmark was fixed in the meantime)
changed to -q (the benchmark succeeds with a warning)
changed to produce- instead of check- if the option on the benchmark is required to ensure a configuration of models/unsat-cores is run. This is done for unsat-cores on sat benchmarks and models on unsat benchmarks.
replaced by DISABLE-TESTER: model.
one spurious regression is deleted, which was identical to another + check-models.
It also makes some fixes to enable more benchmarks succeed with check-models, and adds a warning when fmf-fun is combined with check-model.
#include "smt/check_models.h"
#include "base/modal_exception.h"
+#include "options/quantifiers_options.h"
#include "options/smt_options.h"
#include "smt/env.h"
#include "smt/preprocessor.h"
throw RecoverableModalException(
"Cannot run check-model on a model with a separation logic heap.");
}
+ if (options().quantifiers.fmfFunWellDefined)
+ {
+ warning() << "Running check-model is not guaranteed to pass when fmf-fun "
+ "is enabled."
+ << std::endl;
+ }
theory::SubstitutionMap& sm = d_env.getTopLevelSubstitutions().get();
Trace("check-model") << "checkModel: Check assertions..." << std::endl;
}
// testers are not relevant for model building
d_valuation.setIrrelevantKind(APPLY_TESTER);
+ d_valuation.setIrrelevantKind(DT_SYGUS_BOUND);
}
TheoryDatatypes::EqcInfo* TheoryDatatypes::getOrMakeEqcInfo( TNode n, bool doMake ){
/* Generate counterexample lemma for 'q'. */
NodeManager* nm = NodeManager::currentNM();
- SkolemManager * sm = nm->getSkolemManager();
+ SkolemManager* sm = nm->getSkolemManager();
TermDbSygus* db = d_treg.getTermDatabaseSygus();
// For each variable x_i of \forall x_i . P[x_i], create a fresh datatype
regress0/bug383.smt2
regress0/bug398.smt2
regress0/bug421.smt2
- regress0/bug421b.smt2
regress0/bug480.smt2
regress0/bug484.smt2
regress0/bug486.cvc.smt2
-; COMMAND-LINE: --no-check-unsat-cores
; EXPECT: unsat
+; DISABLE-TESTER: unsat-core
+; timeout with unsat cores
(set-logic QF_AUFLIRA)
(set-info :smt-lib-version 2.6)
(set-info :category "crafted")
-; COMMAND-LINE: --ackermann --no-check-unsat-cores
+; COMMAND-LINE: --ackermann
; EXPECT: unsat
+; DISABLE-TESTER: unsat-core
+; unsat cores throws error in debug mode
(set-logic QF_ALIA)
(set-info :smt-lib-version 2.6)
(set-info :category "crafted")
(assert (= v0 v1))
(check-sat)
-(exit)
\ No newline at end of file
+(exit)
-; COMMAND-LINE: -i --check-models
+; COMMAND-LINE: -i
; EXPECT: sat
; EXPECT: sat
; EXPECT: sat
-; COMMAND-LINE: --incremental --check-unsat-cores
+; COMMAND-LINE: --incremental
; EXPECT: unsat
; EXPECT: unsat
(set-logic NRA)
; EXPECT: sat
-; COMMAND-LINE: --check-unsat-cores
+; COMMAND-LINE: --produce-unsat-cores
(set-logic ALL)
(set-info :status sat)
(declare-fun a () (Array Int Bool))
-; COMMAND-LINE: --check-models --check-unsat-cores
; EXPECT: sat
(set-logic QF_AUFLIA)
(declare-const a (Array Int Int))
-; COMMANDLINE: --check-unsat-cores --check-models
+; COMMAND-LINE: --produce-models
; EXPECT: unsat
(set-logic QF_AX)
(declare-const a (Array Bool Bool))
; COMMAND-LINE: -i
; EXPECT: unsat
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic QF_ALIA)
(set-option :check-unsat-cores true)
(set-option :fmf-fun true)
-; COMMAND-LINE: --check-models
; EXPECT: sat
(set-logic QF_AUFBV)
(declare-fun a () (Array (_ BitVec 2) (_ BitVec 2)))
+++ /dev/null
-; same as bug421.smt2 but adds --check-models on command line:
-; this actually caused the same bug for a different reason, so
-; we check them both independently in regressions
-;
-; COMMAND-LINE: --incremental --abstract-values --check-models
-; EXPECT: sat
-; EXPECT: ((a (as @a_1 (Array Int Int))) (b (as @a_2 (Array Int Int))))
-(set-logic QF_AUFLIA)
-(set-option :produce-models true)
-(declare-fun a () (Array Int Int))
-(declare-fun b () (Array Int Int))
-(assert (not (= a b)))
-(check-sat)
-(get-value (a b))
; EXPECT: unsat
-; COMMAND-LINE: --incremental --repeat-simp --no-check-unsat-cores
+; COMMAND-LINE: --incremental --repeat-simp
+; DISABLE-TESTER: unsat-core
(set-logic QF_LIA)
(declare-fun i () Int)
(assert (ite (= i 0) false true))
-; COMMAND-LINE: --bitblast=eager --no-check-models
-; COMMAND-LINE: --bitblast=eager --bv-solver=bitblast-internal --no-check-models
+; COMMAND-LINE: --bitblast=eager
+; COMMAND-LINE: --bitblast=eager --bv-solver=bitblast-internal
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic QF_UFBV)
(set-info :smt-lib-version 2.6)
(set-info :category "crafted")
-; COMMAND-LINE: --bitblast=eager --no-check-unsat-cores
+; COMMAND-LINE: --bitblast=eager
; EXPECT: unsat
+; DISABLE-TESTER: unsat-core
+; unsat cores throws error in debug
(set-logic QF_ABV)
(set-info :smt-lib-version 2.6)
(set-info :category "crafted")
-; COMMAND-LINE: --bitblast=eager --no-check-models
+; COMMAND-LINE: --bitblast=eager
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic QF_UFBV)
(set-info :smt-lib-version 2.6)
(set-info :category "crafted")
-; COMMAND-LINE: --check-models --incremental
+; COMMAND-LINE: --incremental
; EXPECT: sat
(set-logic ALL)
(set-option :check-models true)
-; COMMAND-LINE: --solve-bv-as-int=sum --bvand-integer-granularity=1 --no-check-unsat-cores
-; COMMAND-LINE: --solve-bv-as-int=bitwise --bvand-integer-granularity=1 --no-check-unsat-cores
+; COMMAND-LINE: --solve-bv-as-int=sum --bvand-integer-granularity=1
+; COMMAND-LINE: --solve-bv-as-int=bitwise --bvand-integer-granularity=1
; EXPECT: unsat
(set-logic QF_BV)
(declare-fun T4_180 () (_ BitVec 32))
-; COMMAND-LINE: --solve-int-as-bv=9 --check-models
+; COMMAND-LINE: --solve-int-as-bv=9
; EXPECT: sat
(set-logic QF_NIA)
(declare-const a Int)
-; COMMAND-LINE: --solve-int-as-bv=5 --check-models
+; COMMAND-LINE: --solve-int-as-bv=5
(set-logic QF_NIA)
(set-info :status sat)
(declare-const x Int)
; EXPECT: sat
-; COMMAND-LINE: --no-check-models
+; COMMAND-LINE: -q
(set-logic ALL)
(set-option :solve-bv-as-int bv)
(declare-const _x8 Real)
-; COMMAND-LINE: --bv-intro-pow2 --no-check-unsat-cores
+; COMMAND-LINE: --bv-intro-pow2
+; DISABLE-TESTER: unsat-core
(set-info :smt-lib-version 2.6)
(set-logic QF_BV)
(set-info :status unsat)
-; COMMAND-LINE: --incremental -q --check-unsat-cores --cegqi-full
+; COMMAND-LINE: --incremental -q --cegqi-full --produce-unsat-cores
; EXPECT: unsat
; EXPECT: unsat
; EXPECT: (
-; COMMAND-LINE: --incremental -q --check-unsat-cores
-; COMMAND-LINE: --incremental -q --check-unsat-cores --unsat-cores-mode=sat-proof
+; COMMAND-LINE: --incremental -q --produce-unsat-cores
+; COMMAND-LINE: --incremental -q --unsat-cores-mode=sat-proof --produce-unsat-cores
; EXPECT: sat
; EXPECT: sat
(declare-const i2 Int)
(assert (< (set.card st9) i11))
(assert (! (not (<= 5 i5 93 417 i2)) :named IP_46))
(check-sat)
-(check-sat-assuming ((! (or v6 v6 v6) :named IP_12) (! (or false v6 v6) :named IP_56)))
\ No newline at end of file
+(check-sat-assuming ((! (or v6 v6 v6) :named IP_12) (! (or false v6 v6) :named IP_56)))
-; COMMAND-LINE: --incremental --check-unsat-cores
+; COMMAND-LINE: --incremental --produce-unsat-cores
; EXPECT: sat
(set-logic QF_SLIA)
(assert false)
(reset-assertions)
-(check-sat)
\ No newline at end of file
+(check-sat)
-; COMMAND-LINE: --incremental -q --check-unsat-cores
+; COMMAND-LINE: --incremental -q --produce-unsat-cores
; EXPECT: sat
; EXPECT: sat
; EXPECT: sat
(check-sat-assuming (IP_2 IP_4))
(check-sat-assuming (IP_1 IP_3))
(assert (! (xor v3 v1 v5 v3 v2 (distinct Str19 Str3 Str5 Str9 Str11) (distinct 359 i1) v2 (>= r16 9873987263.0 r9 r0)) :named IP_6))
-(check-sat)
\ No newline at end of file
+(check-sat)
-; COMMAND-LINE: --incremental --no-check-models
+; COMMAND-LINE: --incremental -q
; EXPECT: sat
; EXPECT: unsat
; EXPECT: unsat
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic ALL)
(set-option :incremental false)
(set-option :finite-model-find true)
-; COMMAND-LINE: --fmf-fun --no-check-models
+; COMMAND-LINE: --fmf-fun
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic ALL)
(set-info :status sat)
(define-fun $$Bool.isTrue$$ ((b Bool)) Bool b)
; COMMAND-LINE: --fmf-fun
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic ALL)
(define-fun-rec f ((x Int)) Bool false)
(assert (not (f 0)))
; COMMAND-LINE: --fmf-fun -i
; EXPECT: sat
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic ALL)
(declare-fun a (Int) Bool)
(declare-fun b (Int) Bool)
-; COMMAND-LINE: --sort-inference --finite-model-find --no-check-unsat-cores
+; COMMAND-LINE: --sort-inference --finite-model-find
; EXPECT: unsat
+; DISABLE-TESTER: unsat-core
(set-logic ALL)
(assert (not (exists ((X Int)) (not (= X 12)) )))
(check-sat)
-; COMMAND-LINE: --fmf-fun --no-check-models
+; COMMAND-LINE: --fmf-fun
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic ALL)
(declare-sort elem 0)
(declare-datatypes ((list 0)) (((Nil) (Cons (hd elem) (tl list)))))
-; COMMAND-LINE: --solve-int-as-bv=5 --no-check-models
+; COMMAND-LINE: --solve-int-as-bv=5
(set-logic QF_NIA)
(declare-const x Int)
(declare-const y Int)
-; COMMAND-LINE: --solve-int-as-bv=4 --no-check-models
+; COMMAND-LINE: --solve-int-as-bv=4
(set-logic QF_NIA)
(declare-const x Int)
(declare-const y Int)
-; COMMAND-LINE: -q --check-unsat-cores --check-models
+; COMMAND-LINE: -q
(set-info :status sat)
(declare-fun a () (Array (_ BitVec 32) (_ BitVec 32)))
(declare-fun b () (Array (_ BitVec 32) (_ BitVec 32)))
-; COMMAND-LINE: --check-models -q
+; COMMAND-LINE: -q
(set-logic QF_AUFBV)
(set-info :status sat)
(declare-fun bv_22-0 () (_ BitVec 1))
-; COMMAND-LINE: -q --check-models
+; COMMAND-LINE: -q
(set-logic QF_UFBVLIA)
(set-info :status sat)
(declare-fun f ((_ BitVec 3)) Int)
-; COMMAND-LINE: --bv-solver=bitblast --bitblast=eager --check-models
+; COMMAND-LINE: --bv-solver=bitblast --bitblast=eager
(set-logic QF_BV)
(set-info :status sat)
(declare-fun x () (_ BitVec 1))
-; COMMAND-LINE: --nl-ext=none --no-check-models
+; COMMAND-LINE: --nl-ext=none
; EXPECT: sat
; REQUIRES: poly
(set-logic QF_NRA)
-; COMMAND-LINE: --no-check-models
+; COMMAND-LINE: -q
; EXPECT: sat
; REQUIRES: poly
(set-logic NRA)
-;COMMAND-LINE: --check-models
;REQUIRES: poly
;EXPECT: sat
(set-logic QF_NRA)
-; COMMAND-LINE: --quiet --no-check-models
+; COMMAND-LINE: --quiet
; EXPECT: sat
(set-logic QF_NRAT)
(set-info :status sat)
-; COMMAND-LINE: --incremental --check-unsat-cores
+; COMMAND-LINE: --incremental
; EXPECT: sat
; EXPECT: sat
; EXPECT: unsat
-; COMMAND-LINE: --ext-rewrite-quant --sygus-inst --no-check-models
+; COMMAND-LINE: --ext-rewrite-quant --sygus-inst -q
; EXPECT: sat
(set-logic ALL)
(set-info :status sat)
-; COMMAND-LINE: --nl-ext-tf-tplanes --no-check-models
+; COMMAND-LINE: --nl-ext-tf-tplanes -q
; EXPECT: sat
(set-logic QF_NRAT)
(declare-fun x () Real)
-; COMMAND-LINE: --nl-ext=full --no-check-models
+; COMMAND-LINE: --nl-ext=full -q
; EXPECT: sat
(set-logic QF_NRAT)
(set-info :status sat)
-; COMMAND-LINE: --no-check-models --nl-ext-tplanes
+; COMMAND-LINE: --nl-ext-tplanes
; REQUIRES: poly
; EXPECT: sat
(set-info :smt-lib-version 2.6)
; SCRUBBER: sed -e 's/(_ real_algebraic_number.*/(_ real_algebraic_number/'
-; COMMAND-LINE: --no-check-models
; REQUIRES: poly
; EXPECT: sat
; EXPECT: ((x (_ real_algebraic_number
; COMMAND-LINE: --incremental --fmf-fun --strings-exp
+; DISABLE-TESTER: model
(set-logic ALL)
(declare-datatypes ((List_T_C 0) (T_CustomerType 0)) (
((List_T_C$CNil_T_CustomerType) (ListTC (ListTC$head T_CustomerType) (ListTC$tail List_T_C)))
-; COMMAND-LINE: --incremental --check-unsat-cores
+; COMMAND-LINE: --incremental
; EXPECT: sat
; EXPECT: unsat
(set-logic ALL)
-; COMMAND-LINE: --incremental --fmf-fun --macros-quant --no-check-models
+; COMMAND-LINE: --incremental --fmf-fun --macros-quant
+; DISABLE-TESTER: model
(set-logic UFLIA)
-; COMMAND-LINE: --full-saturate-quant -i --no-check-unsat-cores
+; COMMAND-LINE: --full-saturate-quant -i
; EXPECT: unsat
+; DISABLE-TESTER: unsat-core
(set-logic ALL)
(set-option :pre-skolem-quant true)
(declare-fun v7 () Bool)
(assert (forall ((q49 Bool) (q55 Bool)) (xor v7 (exists ((q49 Bool)) (xor v7 q49 q49)) v7 (= q55 q49))))
-(check-sat)
\ No newline at end of file
+(check-sat)
-; COMMAND-LINE: --no-check-models
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic ALL)
(declare-heap (Int Int))
(assert sep.emp)
-; COMMAND-LINE: --no-check-models
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic QF_SEP_LIA)
(declare-heap (Int Int))
(assert (not sep.emp))
-; COMMAND-LINE: --no-check-models
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic QF_ALL)
(set-info :status sat)
(declare-fun x () Int)
-; COMMAND-LINE: --no-check-models
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic QF_ALL)
(set-option :produce-models true)
(set-info :status sat)
-; COMMAND-LINE: --no-check-models --sep-pre-skolem-emp
+; COMMAND-LINE: --sep-pre-skolem-emp
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic QF_ALL)
(declare-heap (Int Int))
(assert (not sep.emp))
-; COMMAND-LINE: --no-check-models
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic QF_ALL)
(declare-heap (Int Int))
(assert (wand sep.emp sep.emp))
-; COMMAND-LINE: --strings-exp --no-check-models
+; COMMAND-LINE: --strings-exp -q
(set-logic ALL)
(set-info :status sat)
(declare-datatypes ((a 0)) (((b))))
-; COMMAND-LINE: --strings-exp --seq-array=lazy --no-check-models
+; COMMAND-LINE: --strings-exp --seq-array=lazy -q
; EXPECT: sat
(set-logic QF_SLIA)
(declare-const x (Seq Int))
-; COMMAND-LINE: --seq-array=eager --no-check-unsat-cores
+; COMMAND-LINE: --seq-array=eager
+; DISABLE-TESTER: unsat-core
+; timeout with unsat cores
(set-logic QF_SLIA)
(set-info :status unsat)
-; COMMAND-LINE: --strings-exp --no-check-models
+; COMMAND-LINE: --strings-exp -q
;EXPECT: sat
(set-logic ALL)
(declare-fun s () (Seq Int))
; COMMAND-LINE: --bitblast=lazy
-; COMMAND-LINE: --bitblast=eager --no-check-models
+; COMMAND-LINE: --bitblast=eager
; COMMAND-LINE: --bv-solver=bitblast-internal
; EXPECT: sat
+; DISABLE-TESTER: model
+; Note we disable model testing since the 2nd config is incompatible with models, while the other 2 configurations are.
+; This is not ideal but a limitation of our currently regression infrastructure.
; Automatically generated by SBV. Do not edit.
(set-logic QF_UFBV)
(set-info :status sat)
-; COMMAND-LINE: --solve-bv-as-int=sum --no-check-unsat-cores
+; COMMAND-LINE: --solve-bv-as-int=sum
; EXPECT: unsat
(set-logic ALL)
(declare-fun s$ () (_ BitVec 32))
; COMMAND-LINE: --fmf-fun-rlv
; EXPECT: sat
+; DISABLE-TESTER: model
(set-info :smt-lib-version 2.6)
(set-option :produce-models true)
(set-logic ALL)
; COMMAND-LINE: --fmf-fun -i --decision=justification
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic ALRA)
(set-option :fmf-fun true)
(declare-fun v2 () Bool)
-; COMMAND-LINE: --incremental --fmf-fun --no-check-models
+; COMMAND-LINE: --incremental --fmf-fun
+; DISABLE-TESTER: model
(set-logic UFDTLIA)
(set-option :produce-models true)
(declare-datatypes ((List 0)) (((Nil) (Cons (Cons$head Int) (Cons$tail List)))))
-; COMMAND-LINE: --fmf-fun --no-check-models --fmf-bound
+; COMMAND-LINE: --fmf-fun --fmf-bound -q
; EXPECT: sat
(set-logic UFDTSLIA)
(set-option :produce-models true)
-; COMMAND-LINE: --fmf-fun-rlv --no-check-models
+; COMMAND-LINE: --fmf-fun-rlv
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic ALL)
(define-fun $$isTrue$$ ((b Bool)) Bool b)
(define-fun $$isFalse$$ ((b Bool)) Bool (not b))
-; COMMAND-LINE: --fmf-fun --no-check-models
+; COMMAND-LINE: --fmf-fun
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic ALL)
(set-info :status sat)
; COMMAND-LINE: --fmf-fun
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic UFDTLIA)
(declare-datatypes ((Term 0) (IntList 0)) (
(
-; COMMAND-LINE: --fmf-fun --no-check-models
+; COMMAND-LINE: --fmf-fun -q
; EXPECT: sat
(set-logic UFNIA)
(set-info :status sat)
-; COMMAND-LINE: --fmf-fun --no-check-models
+; COMMAND-LINE: --fmf-fun -q
; EXPECT: sat
(set-logic UFNIA)
(set-info :status sat)
-; COMMAND-LINE: --fmf-fun --no-check-models
+; COMMAND-LINE: --fmf-fun
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic UFDTLIA)
(set-info :smt-lib-version 2.6)
-; COMMAND-LINE: --no-check-unsat-cores --no-produce-models --ho-elim
+; COMMAND-LINE: --no-produce-models --ho-elim
; EXPECT: unsat
(set-logic HO_ALL)
-; COMMAND-LINE: --finite-model-find --no-check-models
+; COMMAND-LINE: --finite-model-find
; EXPECT: sat
(set-logic HO_ALL)
-; COMMAND-LINE: --sort-inference --no-check-unsat-cores
+; COMMAND-LINE: --sort-inference
; EXPECT: unsat
+; DISABLE-TESTER: unsat-core
(set-logic ABV)
(set-option :sort-inference true)
(set-info :status unsat)
-; COMMAND-LINE: --incremental --produce-models --block-models=values --no-check-unsat-cores
+; COMMAND-LINE: --incremental --produce-models --block-models=values
; EXPECT: sat
; EXPECT: sat
; if we only block models restricted to (a,b), then there are only 2 models
; EXPECT: unsat
+; DISABLE-TESTER: unsat-core
(set-logic QF_UFLIA)
(declare-fun a () Int)
(declare-fun b () Int)
-; COMMAND-LINE: --no-check-models
; REQUIRES: poly
; EXPECT: sat
(set-logic QF_NRA)
-; COMMAND-LINE: --incremental --nl-ext=full --fmf-fun-rlv --no-check-models
+; COMMAND-LINE: --incremental --nl-ext=full --fmf-fun-rlv
+; DISABLE-TESTER: model
(set-logic UFNIA)
(set-info :smt-lib-version 2.6)
-; COMMAND-LINE: --no-check-models
+; COMMAND-LINE: -q
; EXPECT: sat
(set-logic QF_NRAT)
(set-info :status sat)
-; COMMAND-LINE: --nl-ext=full --decision=internal --no-check-models
+; COMMAND-LINE: --nl-ext=full --decision=internal -q
; EXPECT: sat
(set-logic ALL)
(assert (or (< 60.3 (exp 4.1) 60.4) (< (exp 5.1) 164.1)))
; SCRUBBER: sed -e 's/((x (_ real_algebraic_number .*/((x (_ real_algebraic_number/'
-; COMMAND-LINE: --produce-models --no-check-models
+; COMMAND-LINE: --produce-models
; REQUIRES: poly
; EXPECT: sat
; EXPECT: ((x (_ real_algebraic_number
-; COMMAND-LINE: --no-check-models --produce-models --decision=internal --nl-rlv=always
+; COMMAND-LINE: --produce-models --decision=internal --nl-rlv=always -q
; EXPECT: sat
(set-logic QF_NRAT)
(set-info :status sat)
-; COMMAND-LINE: --learned-rewrite --no-check-unsat-cores
+; COMMAND-LINE: --learned-rewrite
; EXPECT: unsat
+; DISABLE-TESTER: unsat-core
;
;!(a,b,c).( 0<=b & 1<=c & 0<=a & 1<=c
; =>
-; COMMAND-LINE: --nl-ext-tf-tplanes --no-check-models --nl-rlv=always
+; COMMAND-LINE: --nl-ext-tf-tplanes --nl-rlv=always -q
; EXPECT: sat
(set-logic QF_NRAT)
(set-info :status sat)
-; COMMAND-LINE: --nl-ext-tf-tplanes --no-check-models --nl-rlv=always
+; COMMAND-LINE: --nl-ext-tf-tplanes --nl-rlv=always -q
; EXPECT: sat
(set-logic QF_NRAT)
(set-info :status sat)
-; COMMAND-LINE: --no-check-models
; REQUIRES: poly
; EXPECT: sat
(set-info :smt-lib-version 2.6)
-; COMMAND-LINE: --incremental --fmf-fun --macros-quant --no-check-models
+; COMMAND-LINE: --incremental --fmf-fun --macros-quant
+; DISABLE-TESTER: model
(set-logic UFLIA)
-; COMMAND-LINE: --incremental --fmf-fun --macros-quant --macros-quant-mode=ground --no-check-models --no-check-unsat-cores
+; COMMAND-LINE: --incremental --fmf-fun --macros-quant --macros-quant-mode=ground
+; DISABLE-TESTER: model
+; DISABLE-TESTER: unsat-core
+; unknowns when testing unsat cores
(set-logic UFLIA)
(define-fun f ((x Int)) Int x)
; COMMAND-LINE: --fmf-fun-rlv
; EXPECT: sat
+; DISABLE-TESTER: model
(set-info :smt-lib-version 2.6)
(set-option :produce-models true)
(set-logic ALL)
-; COMMAND-LINE: --fmf-fun-rlv --no-check-models
+; COMMAND-LINE: --fmf-fun-rlv
; EXPECT: sat
+; DISABLE-TESTER: model
(set-info :smt-lib-version 2.6)
(set-option :produce-models true)
(set-logic ALL)
-; COMMAND-LINE: --no-check-models
; EXPECT: sat
(set-logic NIRA)
(declare-fun a () Real)
-; COMMAND-LINE: --fmf-fun-rlv --sygus-inference --no-check-models
+; COMMAND-LINE: --fmf-fun-rlv --sygus-inference
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic QF_NRA)
(declare-fun a () Real)
(assert (= (/ a a) 1.0))
-; COMMAND-LINE: --fmf-fun --no-check-models\r
-; EXPECT: sat\r
-\r
-(set-info :smt-lib-version 2.6)\r
-(set-option :produce-models true)\r
-(set-logic ALL)\r
-(define-funs-rec (\r
-(f11((va9 Int))Int)\r
-(f3((v1f Int))Int)\r
-)\r
-( (f3 (ite (= 0 va9) (- 1) (div (- 1) va9)))\r
- (- (ite (= 0 v1f) 0 (mod 0 v1f))) \r
-))\r
-(declare-fun v18d() Int)\r
-(assert (= 0 (f11 v18d)))\r
-(assert (= 22 v18d))\r
-(check-sat)\r
+; COMMAND-LINE: --fmf-fun -q
+; EXPECT: sat
+
+(set-info :smt-lib-version 2.6)
+(set-option :produce-models true)
+(set-logic ALL)
+(define-funs-rec (
+(f11((va9 Int))Int)
+(f3((v1f Int))Int)
+)
+( (f3 (ite (= 0 va9) (- 1) (div (- 1) va9)))
+ (- (ite (= 0 v1f) 0 (mod 0 v1f)))
+))
+(declare-fun v18d() Int)
+(assert (= 0 (f11 v18d)))
+(assert (= 22 v18d))
+(check-sat)
-; COMMAND-LINE: --ext-rewrite-quant --no-check-models
+; COMMAND-LINE: --ext-rewrite-quant -q
; EXPECT: sat
(set-logic NIA)
(assert (exists ((x Int)) (= (div 1 x x) x)))
-; COMMAND-LINE: --sygus-inst --no-check-models
+; COMMAND-LINE: --sygus-inst -q
; EXPECT: sat
(set-logic NIRA)
(set-info :status sat)
-; COMMAND-LINE: --sygus-inst --strings-exp --no-check-models
+; COMMAND-LINE: --sygus-inst --strings-exp -q
; EXPECT: sat
(set-logic NIA)
(set-option :sygus-inst true)
-; COMMAND-LINE: --no-check-models
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic NIA)
(set-option :strings-exp true)
(set-info :status sat)
-; COMMAND-LINE: --sygus-inst --no-check-models
+; COMMAND-LINE: --sygus-inst -q
; EXPECT: sat
(set-logic ALL)
(set-info :status sat)
-; COMMAND-LINE: --no-check-models
; REQUIRES: poly
(set-logic NRA)
(set-info :status sat)
-; COMMAND-LINE: --sygus-inst --no-check-models
+; COMMAND-LINE: --sygus-inst -q
; EXPECT: sat
(set-logic ALL)
(declare-fun b (Int) Int)
-; COMMAND-LINE: -i --no-check-models
+; COMMAND-LINE: -i
; EXPECT: sat
; EXPECT: sat
(set-logic NIA)
; REQUIRES: no-competition
-; COMMAND-LINE: -o inst --no-check-unsat-cores
+; COMMAND-LINE: -o inst
; EXPECT: (num-instantiations myQuant1 1)
; EXPECT: (num-instantiations myQuant2 1)
; EXPECT: unsat
-
+; DISABLE-TESTER: unsat-core
(set-logic UFLIA)
(declare-fun P (Int) Bool)
(declare-fun R (Int) Bool)
-; COMMAND-LINE: --full-saturate-quant --multi-trigger-cache --no-check-unsat-cores
+; COMMAND-LINE: --full-saturate-quant --multi-trigger-cache
; EXPECT: unsat
(set-logic AUFLIRA)
(set-info :status unsat)
-; COMMAND-LINE: --sygus-inst --no-check-models
+; COMMAND-LINE: --sygus-inst
(set-info :smt-lib-version 2.6)
(set-logic UFNIA)
(set-info :source |
-; COMMAND-LINE: --no-check-unsat-cores
; EXPECT: unsat
+; DISABLE-TESTER: unsat-core
; Note we require disabling proofs/unsat cores due to timeouts in nightlies
-; COMMAND-LINE: --no-check-models
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic QF_ALL)
(set-info :status sat)
(declare-heap (Int Int))
-; COMMAND-LINE: --no-check-models
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic QF_ALL)
(declare-sort Loc 0)
-; COMMAND-LINE: --finite-model-find --no-check-models
+; COMMAND-LINE: --finite-model-find
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic ALL)
(declare-sort U 0)
(declare-heap (U Int))
-; COMMAND-LINE: --no-check-models
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic QF_ALL)
(set-info :status sat)
(declare-heap (Int Int))
-; COMMAND-LINE: --no-check-models
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic QF_ALL)
(set-info :status sat)
(declare-heap (Int Int))
-; COMMAND-LINE: --no-check-models
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic QF_ALL)
(set-info :status sat)
(declare-heap (Int Int))
-; COMMAND-LINE: --no-check-models
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic QF_ALL)
(set-info :status sat)
(declare-heap (Int Int))
-; COMMAND-LINE: --no-check-models
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic QF_ALL)
(set-info :status sat)
(declare-heap (Int Int))
-; COMMAND-LINE: --no-check-models
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic QF_ALL)
(set-info :status sat)
(declare-heap (Int Int))
-; COMMAND-LINE: --no-check-models
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic QF_ALL)
(set-info :status sat)
(declare-sort U 0)
-; COMMAND-LINE: --no-check-models
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic QF_ALL)
(set-info :status sat)
(declare-heap (Int Int))
-; COMMAND-LINE: --no-check-models
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic QF_ALL)
(declare-heap (Int Int))
(declare-fun x () Int)
-; COMMAND-LINE: --no-check-models
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic QF_ALL)
(set-info :status sat)
(declare-heap (Int Int))
-; COMMAND-LINE: --no-check-models
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic QF_ALL)
(declare-heap (Int Int))
(declare-fun x () Int)
-; COMMAND-LINE: --no-check-models
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic QF_ALL)
(set-info :status sat)
(declare-heap (Int Int))
-; COMMAND-LINE: --no-check-models
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic QF_ALL)
(declare-heap (Int Int))
(declare-fun x () Int)
-; COMMAND-LINE: --no-check-models
; EXPECT: sat
+; DISABLE-TESTER: model
(set-logic QF_ALL)
(set-info :status sat)
(declare-heap (Int Int))
-; COMMAND-LINE: --strings-exp --fmf-fun-rlv -i --no-check-models\r
-; EXPECT: sat\r
-; EXPECT: sat\r
-; EXPECT: sat\r
-; EXPECT: sat\r
-; EXPECT: sat\r
-; EXPECT: sat\r
-; EXPECT: sat\r
-; EXPECT: sat\r
-; EXPECT: sat\r
-; EXPECT: sat\r
-; EXPECT: sat\r
-\r
-; note that fmf-fun-rlv is incompatible with check-models\r
-\r
-(set-info :smt-lib-version 2.6)\r
-(set-option :produce-models true)\r
-(set-logic ALL)\r
-(declare-datatypes ((a0 0)(a1 0)(a2 0)) (((c0$0) (c0$1) (c0$2) (c0$3 (c0$3$0 a1) (c0$3$1 Int) (c0$3$2 String) (c0$3$3 Int)) (c0$4 (c0$4$0 Int)) (c0$5))((c1$0 (c1$0$0 a0) (c1$0$1 a0) (c1$0$2 String) (c1$0$3 Int)) (c1$1 (c1$1$0 Int)) (c1$2) (c1$3 (c1$3$0 Int)) (c1$4) (c1$5))((c2$0 (c2$0$0 Int) (c2$0$1 a0)) (c2$1 (c2$1$0 String) (c2$1$1 a0) (c2$1$2 a1)))))\r
-(push 1)\r
-(pop 1)\r
-(push 1)\r
-(declare-fun v0() a0)\r
-(declare-fun v1() a2)\r
-(declare-fun v2() a2)\r
-(declare-fun v3() a0)\r
-(declare-fun v4() Bool)\r
-(declare-fun v5() a1)\r
-(declare-fun v6() Bool)\r
-(declare-fun v7() String)\r
-(declare-fun v8() a2)\r
-(pop 1)\r
-(push 1)\r
-(pop 1)\r
-(push 1)\r
-(declare-fun v9() a2)\r
-(declare-fun va() a1)\r
-(declare-fun vb() Int)\r
-(declare-fun vc() Bool)\r
-(declare-fun vd() Int)\r
-(declare-fun ve() Bool)\r
-(declare-fun vf() Bool)\r
-(pop 1)\r
-(push 1)\r
-(declare-fun v10() a1)\r
-(declare-fun v11() a0)\r
-(declare-fun v12() a1)\r
-(declare-fun v13() Int)\r
-(pop 1)\r
-(push 1)\r
-(declare-fun v14() Bool)\r
-(declare-fun v15() a0)\r
-(declare-fun v16() Bool)\r
-(declare-fun v17() a1)\r
-(declare-fun v18() a2)\r
-(declare-fun v19() a0)\r
-(declare-fun v1a() Int)\r
-(declare-fun v1b() Bool)\r
-(pop 1)\r
-(push 1)\r
-(declare-fun v1c() String)\r
-(declare-fun v1d() Int)\r
-(declare-fun v1e() a1)\r
-(declare-fun v1f() a0)\r
-(declare-fun v20() Bool)\r
-(declare-fun v21() Int)\r
-(declare-fun v22() Int)\r
-(declare-fun v23() String)\r
-(declare-fun v24() a0)\r
-(declare-fun v25() a0)\r
-(pop 1)\r
-(push 1)\r
-(declare-fun v26() Bool)\r
-(declare-fun v27() Bool)\r
-(declare-fun v28() Int)\r
-(declare-fun v29() a2)\r
-(declare-fun v2a() Int)\r
-(declare-fun v2b() Int)\r
-(declare-fun v2c() String)\r
-(declare-fun v2d() String)\r
-(pop 1)\r
-(push 1)\r
-(declare-fun v2e() a2)\r
-(declare-fun v2f() a1)\r
-(declare-fun v30() a0)\r
-(declare-fun v31() a2)\r
-(declare-fun v32() String)\r
-(declare-fun v33() Bool)\r
-(declare-fun v34() Int)\r
-(pop 1)\r
-(push 1)\r
-(declare-fun v35() String)\r
-(declare-fun v36() a1)\r
-(declare-fun v37() a1)\r
-(pop 1)\r
-(push 1)\r
-(declare-fun v38() a2)\r
-(declare-fun v39() Bool)\r
-(pop 1)\r
-(define-funs-rec ((fa((v38 a2)(v39 Bool))a2)(f9((v35 String)(v36 a1)(v37 a1))String)(f8((v2e a2)(v2f a1)(v30 a0)(v31 a2)(v32 String)(v33 Bool)(v34 Int))a0)(f7((v26 Bool)(v27 Bool)(v28 Int)(v29 a2)(v2a Int)(v2b Int)(v2c String)(v2d String))a0)(f6((v1c String)(v1d Int)(v1e a1)(v1f a0)(v20 Bool)(v21 Int)(v22 Int)(v23 String)(v24 a0)(v25 a0))Int)(f5((v14 Bool)(v15 a0)(v16 Bool)(v17 a1)(v18 a2)(v19 a0)(v1a Int)(v1b Bool))a0)(f4((v10 a1)(v11 a0)(v12 a1)(v13 Int))Bool)(f3((v9 a2)(va a1)(vb Int)(vc Bool)(vd Int)(ve Bool)(vf Bool))Int)(f2()Int)(f1((v0 a0)(v1 a2)(v2 a2)(v3 a0)(v4 Bool)(v5 a1)(v6 Bool)(v7 String)(v8 a2))Int)(f0()Bool))(v38 "\xea" (c0$3 c1$5 1 "\xc6\xff" (- 2)) c0$5 (- 9) (c0$3 c1$4 0 "" v1a) (str.< (ite (is-c0$4 v11) "\xe8" "") "\x19") 0 (- 1) 0 false))\r
-(push 1)\r
-(assert true)\r
-(check-sat)\r
-(pop 1)\r
-(push 1)\r
-(declare-fun v3a() a0)\r
-(declare-fun v3b() a2)\r
-(declare-fun v3c() a2)\r
-(declare-fun v3d() a0)\r
-(declare-fun v3e() Bool)\r
-(declare-fun v3f() a1)\r
-(declare-fun v40() Bool)\r
-(declare-fun v41() String)\r
-(declare-fun v42() a2)\r
-(assert true)\r
-(assert (= (c0$4 0) v3a))\r
-(assert (= (c2$1 ";," c0$0 c1$4) v3b))\r
-(assert (= (c2$1 ";," c0$0 c1$4) v3c))\r
-(assert (= (c0$4 0) v3d))\r
-(assert v3e)\r
-(assert (= c1$2 v3f))\r
-(assert v40)\r
-(assert (= "\xc4\xbf)9N\xc2]" v41))\r
-(assert (= (c2$1 ";," c0$0 c1$4) v42))\r
-(check-sat)\r
-(pop 1)\r
-(push 1)\r
-(assert true)\r
-(check-sat)\r
-(pop 1)\r
-(push 1)\r
-(declare-fun v43() a2)\r
-(declare-fun v44() a1)\r
-(declare-fun v45() Int)\r
-(declare-fun v46() Bool)\r
-(declare-fun v47() Int)\r
-(declare-fun v48() Bool)\r
-(declare-fun v49() Bool)\r
-(assert true)\r
-(assert (= (c2$1 ";," c0$0 c1$4) v43))\r
-(assert (= c1$2 v44))\r
-(assert (= 9 v45))\r
-(assert v46)\r
-(assert (= 9 v47))\r
-(assert v48)\r
-(assert v49)\r
-(check-sat)\r
-(pop 1)\r
-(push 1)\r
-(declare-fun v4a() a1)\r
-(declare-fun v4b() a0)\r
-(declare-fun v4c() a1)\r
-(declare-fun v4d() Int)\r
-(assert (not (f4 v4a v4b v4c v4d)))\r
-(assert (= c1$2 v4a))\r
-(assert (= (c0$4 0) v4b))\r
-(assert (= c1$2 v4c))\r
-(assert (= 9 v4d))\r
-(check-sat)\r
-(pop 1)\r
-(push 1)\r
-(declare-fun v4e() Bool)\r
-(declare-fun v4f() a0)\r
-(declare-fun v50() Bool)\r
-(declare-fun v51() a1)\r
-(declare-fun v52() a2)\r
-(declare-fun v53() a0)\r
-(declare-fun v54() Int)\r
-(declare-fun v55() Bool)\r
-(assert (= (c0$3 c1$4 0 "" 9) (f5 v4e v4f v50 v51 v52 v53 v54 v55)))\r
-(assert v4e)\r
-(assert (= (c0$4 0) v4f))\r
-(assert v50)\r
-(assert (= c1$2 v51))\r
-(assert (= (c2$1 ";," c0$0 c1$4) v52))\r
-(assert (= (c0$4 0) v53))\r
-(assert (= 9 v54))\r
-(assert v55)\r
-(check-sat)\r
-(pop 1)\r
-(push 1)\r
-(declare-fun v56() String)\r
-(declare-fun v57() Int)\r
-(declare-fun v58() a1)\r
-(declare-fun v59() a0)\r
-(declare-fun v5a() Bool)\r
-(declare-fun v5b() Int)\r
-(declare-fun v5c() Int)\r
-(declare-fun v5d() String)\r
-(declare-fun v5e() a0)\r
-(declare-fun v5f() a0)\r
-(assert true)\r
-(assert (= "\xc4\xbf)9N\xc2]" v56))\r
-(assert (= 9 v57))\r
-(assert (= c1$2 v58))\r
-(assert (= (c0$4 0) v59))\r
-(assert v5a)\r
-(assert (= 9 v5b))\r
-(assert (= 9 v5c))\r
-(assert (= "\xc4\xbf)9N\xc2]" v5d))\r
-(assert (= (c0$4 0) v5e))\r
-(assert (= (c0$4 0) v5f))\r
-(check-sat)\r
-(pop 1)\r
-(push 1)\r
-(declare-fun v60() Bool)\r
-(declare-fun v61() Bool)\r
-(declare-fun v62() Int)\r
-(declare-fun v63() a2)\r
-(declare-fun v64() Int)\r
-(declare-fun v65() Int)\r
-(declare-fun v66() String)\r
-(declare-fun v67() String)\r
-(assert true)\r
-(assert v60)\r
-(assert v61)\r
-(assert (= 9 v62))\r
-(assert (= (c2$1 ";," c0$0 c1$4) v63))\r
-(assert (= 9 v64))\r
-(assert (= 9 v65))\r
-(assert (= "\xc4\xbf)9N\xc2]" v66))\r
-(assert (= "\xc4\xbf)9N\xc2]" v67))\r
-(check-sat)\r
-(pop 1)\r
-(push 1)\r
-(declare-fun v68() a2)\r
-(declare-fun v69() a1)\r
-(declare-fun v6a() a0)\r
-(declare-fun v6b() a2)\r
-(declare-fun v6c() String)\r
-(declare-fun v6d() Bool)\r
-(declare-fun v6e() Int)\r
-(assert true)\r
-(assert (= (c2$1 ";," c0$0 c1$4) v68))\r
-(assert (= c1$2 v69))\r
-(assert (= (c0$4 0) v6a))\r
-(assert (= (c2$1 ";," c0$0 c1$4) v6b))\r
-(assert (= "\xc4\xbf)9N\xc2]" v6c))\r
-(assert v6d)\r
-(assert (= 9 v6e))\r
-(check-sat)\r
-(pop 1)\r
-(push 1)\r
-(declare-fun v6f() String)\r
-(declare-fun v70() a1)\r
-(declare-fun v71() a1)\r
-(assert true)\r
-(assert (= "\xc4\xbf)9N\xc2]" v6f))\r
-(assert (= c1$2 v70))\r
-(assert (= c1$2 v71))\r
-(check-sat)\r
-(pop 1)\r
-(push 1)\r
-(declare-fun v72() a2)\r
-(declare-fun v73() Bool)\r
-(assert (= (c2$1 ";," c0$0 c1$4) (fa v72 v73)))\r
-(assert (= (c2$1 ";," c0$0 c1$4) v72))\r
-(assert v73)\r
-(check-sat)\r
-(pop 1)\r
-(exit)\r
+; COMMAND-LINE: --strings-exp --fmf-fun-rlv -i
+; EXPECT: sat
+; EXPECT: sat
+; EXPECT: sat
+; EXPECT: sat
+; EXPECT: sat
+; EXPECT: sat
+; EXPECT: sat
+; EXPECT: sat
+; EXPECT: sat
+; EXPECT: sat
+; EXPECT: sat
+; DISABLE-TESTER: model
+
+; note that fmf-fun-rlv is incompatible with check-models
+
+(set-info :smt-lib-version 2.6)
+(set-option :produce-models true)
+(set-logic ALL)
+(declare-datatypes ((a0 0)(a1 0)(a2 0)) (((c0$0) (c0$1) (c0$2) (c0$3 (c0$3$0 a1) (c0$3$1 Int) (c0$3$2 String) (c0$3$3 Int)) (c0$4 (c0$4$0 Int)) (c0$5))((c1$0 (c1$0$0 a0) (c1$0$1 a0) (c1$0$2 String) (c1$0$3 Int)) (c1$1 (c1$1$0 Int)) (c1$2) (c1$3 (c1$3$0 Int)) (c1$4) (c1$5))((c2$0 (c2$0$0 Int) (c2$0$1 a0)) (c2$1 (c2$1$0 String) (c2$1$1 a0) (c2$1$2 a1)))))
+(push 1)
+(pop 1)
+(push 1)
+(declare-fun v0() a0)
+(declare-fun v1() a2)
+(declare-fun v2() a2)
+(declare-fun v3() a0)
+(declare-fun v4() Bool)
+(declare-fun v5() a1)
+(declare-fun v6() Bool)
+(declare-fun v7() String)
+(declare-fun v8() a2)
+(pop 1)
+(push 1)
+(pop 1)
+(push 1)
+(declare-fun v9() a2)
+(declare-fun va() a1)
+(declare-fun vb() Int)
+(declare-fun vc() Bool)
+(declare-fun vd() Int)
+(declare-fun ve() Bool)
+(declare-fun vf() Bool)
+(pop 1)
+(push 1)
+(declare-fun v10() a1)
+(declare-fun v11() a0)
+(declare-fun v12() a1)
+(declare-fun v13() Int)
+(pop 1)
+(push 1)
+(declare-fun v14() Bool)
+(declare-fun v15() a0)
+(declare-fun v16() Bool)
+(declare-fun v17() a1)
+(declare-fun v18() a2)
+(declare-fun v19() a0)
+(declare-fun v1a() Int)
+(declare-fun v1b() Bool)
+(pop 1)
+(push 1)
+(declare-fun v1c() String)
+(declare-fun v1d() Int)
+(declare-fun v1e() a1)
+(declare-fun v1f() a0)
+(declare-fun v20() Bool)
+(declare-fun v21() Int)
+(declare-fun v22() Int)
+(declare-fun v23() String)
+(declare-fun v24() a0)
+(declare-fun v25() a0)
+(pop 1)
+(push 1)
+(declare-fun v26() Bool)
+(declare-fun v27() Bool)
+(declare-fun v28() Int)
+(declare-fun v29() a2)
+(declare-fun v2a() Int)
+(declare-fun v2b() Int)
+(declare-fun v2c() String)
+(declare-fun v2d() String)
+(pop 1)
+(push 1)
+(declare-fun v2e() a2)
+(declare-fun v2f() a1)
+(declare-fun v30() a0)
+(declare-fun v31() a2)
+(declare-fun v32() String)
+(declare-fun v33() Bool)
+(declare-fun v34() Int)
+(pop 1)
+(push 1)
+(declare-fun v35() String)
+(declare-fun v36() a1)
+(declare-fun v37() a1)
+(pop 1)
+(push 1)
+(declare-fun v38() a2)
+(declare-fun v39() Bool)
+(pop 1)
+(define-funs-rec ((fa((v38 a2)(v39 Bool))a2)(f9((v35 String)(v36 a1)(v37 a1))String)(f8((v2e a2)(v2f a1)(v30 a0)(v31 a2)(v32 String)(v33 Bool)(v34 Int))a0)(f7((v26 Bool)(v27 Bool)(v28 Int)(v29 a2)(v2a Int)(v2b Int)(v2c String)(v2d String))a0)(f6((v1c String)(v1d Int)(v1e a1)(v1f a0)(v20 Bool)(v21 Int)(v22 Int)(v23 String)(v24 a0)(v25 a0))Int)(f5((v14 Bool)(v15 a0)(v16 Bool)(v17 a1)(v18 a2)(v19 a0)(v1a Int)(v1b Bool))a0)(f4((v10 a1)(v11 a0)(v12 a1)(v13 Int))Bool)(f3((v9 a2)(va a1)(vb Int)(vc Bool)(vd Int)(ve Bool)(vf Bool))Int)(f2()Int)(f1((v0 a0)(v1 a2)(v2 a2)(v3 a0)(v4 Bool)(v5 a1)(v6 Bool)(v7 String)(v8 a2))Int)(f0()Bool))(v38 "\xea" (c0$3 c1$5 1 "\xc6\xff" (- 2)) c0$5 (- 9) (c0$3 c1$4 0 "" v1a) (str.< (ite (is-c0$4 v11) "\xe8" "") "\x19") 0 (- 1) 0 false))
+(push 1)
+(assert true)
+(check-sat)
+(pop 1)
+(push 1)
+(declare-fun v3a() a0)
+(declare-fun v3b() a2)
+(declare-fun v3c() a2)
+(declare-fun v3d() a0)
+(declare-fun v3e() Bool)
+(declare-fun v3f() a1)
+(declare-fun v40() Bool)
+(declare-fun v41() String)
+(declare-fun v42() a2)
+(assert true)
+(assert (= (c0$4 0) v3a))
+(assert (= (c2$1 ";," c0$0 c1$4) v3b))
+(assert (= (c2$1 ";," c0$0 c1$4) v3c))
+(assert (= (c0$4 0) v3d))
+(assert v3e)
+(assert (= c1$2 v3f))
+(assert v40)
+(assert (= "\xc4\xbf)9N\xc2]" v41))
+(assert (= (c2$1 ";," c0$0 c1$4) v42))
+(check-sat)
+(pop 1)
+(push 1)
+(assert true)
+(check-sat)
+(pop 1)
+(push 1)
+(declare-fun v43() a2)
+(declare-fun v44() a1)
+(declare-fun v45() Int)
+(declare-fun v46() Bool)
+(declare-fun v47() Int)
+(declare-fun v48() Bool)
+(declare-fun v49() Bool)
+(assert true)
+(assert (= (c2$1 ";," c0$0 c1$4) v43))
+(assert (= c1$2 v44))
+(assert (= 9 v45))
+(assert v46)
+(assert (= 9 v47))
+(assert v48)
+(assert v49)
+(check-sat)
+(pop 1)
+(push 1)
+(declare-fun v4a() a1)
+(declare-fun v4b() a0)
+(declare-fun v4c() a1)
+(declare-fun v4d() Int)
+(assert (not (f4 v4a v4b v4c v4d)))
+(assert (= c1$2 v4a))
+(assert (= (c0$4 0) v4b))
+(assert (= c1$2 v4c))
+(assert (= 9 v4d))
+(check-sat)
+(pop 1)
+(push 1)
+(declare-fun v4e() Bool)
+(declare-fun v4f() a0)
+(declare-fun v50() Bool)
+(declare-fun v51() a1)
+(declare-fun v52() a2)
+(declare-fun v53() a0)
+(declare-fun v54() Int)
+(declare-fun v55() Bool)
+(assert (= (c0$3 c1$4 0 "" 9) (f5 v4e v4f v50 v51 v52 v53 v54 v55)))
+(assert v4e)
+(assert (= (c0$4 0) v4f))
+(assert v50)
+(assert (= c1$2 v51))
+(assert (= (c2$1 ";," c0$0 c1$4) v52))
+(assert (= (c0$4 0) v53))
+(assert (= 9 v54))
+(assert v55)
+(check-sat)
+(pop 1)
+(push 1)
+(declare-fun v56() String)
+(declare-fun v57() Int)
+(declare-fun v58() a1)
+(declare-fun v59() a0)
+(declare-fun v5a() Bool)
+(declare-fun v5b() Int)
+(declare-fun v5c() Int)
+(declare-fun v5d() String)
+(declare-fun v5e() a0)
+(declare-fun v5f() a0)
+(assert true)
+(assert (= "\xc4\xbf)9N\xc2]" v56))
+(assert (= 9 v57))
+(assert (= c1$2 v58))
+(assert (= (c0$4 0) v59))
+(assert v5a)
+(assert (= 9 v5b))
+(assert (= 9 v5c))
+(assert (= "\xc4\xbf)9N\xc2]" v5d))
+(assert (= (c0$4 0) v5e))
+(assert (= (c0$4 0) v5f))
+(check-sat)
+(pop 1)
+(push 1)
+(declare-fun v60() Bool)
+(declare-fun v61() Bool)
+(declare-fun v62() Int)
+(declare-fun v63() a2)
+(declare-fun v64() Int)
+(declare-fun v65() Int)
+(declare-fun v66() String)
+(declare-fun v67() String)
+(assert true)
+(assert v60)
+(assert v61)
+(assert (= 9 v62))
+(assert (= (c2$1 ";," c0$0 c1$4) v63))
+(assert (= 9 v64))
+(assert (= 9 v65))
+(assert (= "\xc4\xbf)9N\xc2]" v66))
+(assert (= "\xc4\xbf)9N\xc2]" v67))
+(check-sat)
+(pop 1)
+(push 1)
+(declare-fun v68() a2)
+(declare-fun v69() a1)
+(declare-fun v6a() a0)
+(declare-fun v6b() a2)
+(declare-fun v6c() String)
+(declare-fun v6d() Bool)
+(declare-fun v6e() Int)
+(assert true)
+(assert (= (c2$1 ";," c0$0 c1$4) v68))
+(assert (= c1$2 v69))
+(assert (= (c0$4 0) v6a))
+(assert (= (c2$1 ";," c0$0 c1$4) v6b))
+(assert (= "\xc4\xbf)9N\xc2]" v6c))
+(assert v6d)
+(assert (= 9 v6e))
+(check-sat)
+(pop 1)
+(push 1)
+(declare-fun v6f() String)
+(declare-fun v70() a1)
+(declare-fun v71() a1)
+(assert true)
+(assert (= "\xc4\xbf)9N\xc2]" v6f))
+(assert (= c1$2 v70))
+(assert (= c1$2 v71))
+(check-sat)
+(pop 1)
+(push 1)
+(declare-fun v72() a2)
+(declare-fun v73() Bool)
+(assert (= (c2$1 ";," c0$0 c1$4) (fa v72 v73)))
+(assert (= (c2$1 ";," c0$0 c1$4) v72))
+(assert v73)
+(check-sat)
+(pop 1)
+(exit)
-; COMMAND-LINE: -i --strings-exp --no-check-models
+; COMMAND-LINE: -i --strings-exp -q
; EXPECT: sat
(set-logic ALL)
(declare-fun str7 () String)
-; COMMAND-LINE: --strings-exp --no-check-unsat-cores
+; COMMAND-LINE: --strings-exp
; EXPECT: unsat
+; DISABLE-TESTER: unsat-core
+; timeout with unsat cores
(set-logic QF_SLIA)
(set-info :status unsat)
(declare-fun x () String)
; EXPECT: sat
-; COMMAND-LINE: --sygus-inference --no-check-models
+; COMMAND-LINE: --sygus-inference
(set-logic ALL)
(declare-fun a () Real)
(assert (> a 0.000001))
-; COMMAND-LINE: --incremental --fmf-fun-rlv --no-check-models
+; COMMAND-LINE: --incremental --fmf-fun-rlv -q
(set-logic ALL)
(declare-datatypes ((Color 0)) (
-; COMMAND-LINE: --solve-bv-as-int=sum --bvand-integer-granularity=1 --no-check-unsat-cores
-; COMMAND-LINE: --solve-bv-as-int=sum --bv-to-int-use-pow2 --bvand-integer-granularity=1 --no-check-unsat-cores
-; COMMAND-LINE: --solve-bv-as-int=bitwise --bvand-integer-granularity=1 --no-check-unsat-cores
-; COMMAND-LINE: --solve-bv-as-int=sum --bvand-integer-granularity=5 --no-check-unsat-cores
-; COMMAND-LINE: --solve-bv-as-int=bitwise --bvand-integer-granularity=5 --no-check-unsat-cores
-; COMMAND-LINE: --solve-bv-as-int=iand --iand-mode=value --no-check-unsat-cores
-; COMMAND-LINE: --solve-bv-as-int=iand --iand-mode=sum --no-check-unsat-cores
-; COMMAND-LINE: --solve-bv-as-int=bv --no-check-unsat-cores
+; COMMAND-LINE: --solve-bv-as-int=sum --bvand-integer-granularity=1
+; COMMAND-LINE: --solve-bv-as-int=sum --bv-to-int-use-pow2 --bvand-integer-granularity=1
+; COMMAND-LINE: --solve-bv-as-int=bitwise --bvand-integer-granularity=1
+; COMMAND-LINE: --solve-bv-as-int=sum --bvand-integer-granularity=5
+; COMMAND-LINE: --solve-bv-as-int=bitwise --bvand-integer-granularity=5
+; COMMAND-LINE: --solve-bv-as-int=iand --iand-mode=value
+; COMMAND-LINE: --solve-bv-as-int=iand --iand-mode=sum
+; COMMAND-LINE: --solve-bv-as-int=bv
; EXPECT: unsat
(set-logic QF_BV)
(declare-fun s () (_ BitVec 4))
-;COMMAND-LINE: --solve-bv-as-int=sum --bvand-integer-granularity=1 --no-check-unsat-cores
-;COMMAND-LINE: --solve-bv-as-int=bitwise --bvand-integer-granularity=1 --no-check-unsat-cores
-;EXPECT: unsat
+; COMMAND-LINE: --solve-bv-as-int=sum --bvand-integer-granularity=1
+; COMMAND-LINE: --solve-bv-as-int=bitwise --bvand-integer-granularity=1
+; EXPECT: unsat
+; DISABLE-TESTER: unsat-core
(set-logic QF_UFBV)
(declare-fun z$n0s32 () (_ BitVec 32))
(declare-fun dataOut () (_ BitVec 32))
-; COMMAND-LINE: --solve-bv-as-int=sum --bvand-integer-granularity=1 --no-check-unsat-cores
-; COMMAND-LINE: --solve-bv-as-int=bitwise --bvand-integer-granularity=1 --no-check-unsat-cores
-; COMMAND-LINE: --solve-bv-as-int=iand --iand-mode=value --no-check-unsat-cores
-; COMMAND-LINE: --solve-bv-as-int=iand --iand-mode=sum --no-check-unsat-cores
-; COMMAND-LINE: --solve-bv-as-int=bv --no-check-unsat-cores
+; COMMAND-LINE: --solve-bv-as-int=sum --bvand-integer-granularity=1
+; COMMAND-LINE: --solve-bv-as-int=bitwise --bvand-integer-granularity=1
+; COMMAND-LINE: --solve-bv-as-int=iand --iand-mode=value
+; COMMAND-LINE: --solve-bv-as-int=iand --iand-mode=sum
+; COMMAND-LINE: --solve-bv-as-int=bv
; EXPECT: unsat
(set-logic ALL)
(declare-fun A () (Array Int Int))
-; COMMAND-LINE: --solve-bv-as-int=bitwise --bvand-integer-granularity=1 --no-check-unsat-cores
+; COMMAND-LINE: --solve-bv-as-int=bitwise --bvand-integer-granularity=1
; EXPECT: (error "Error in option parsing: --solve-bv-as-int=bitwise does not support quantifiers")
; EXIT: 1
(set-logic BV)
-; COMMAND-LINE: --no-check-proofs --no-check-unsat-cores
+; DISABLE-TESTER: proof
+; DISABLE-TESTER: unsat-core
+; timeout with unsat cores
(set-logic ALL)
(set-info :smt-lib-version 2.6)
(define-fun fp.isFinite32 ((x Float32)) Bool (not (or (fp.isInfinite x) (fp.isNaN x))))
-; COMMAND-LINE: --check-models
; EXPECT: sat
(set-logic QF_ABV)
(declare-fun c () (_ BitVec 32))
-; COMMAND-LINE: --no-check-unsat-cores
(set-logic QF_UFNIA)
(set-info :status unsat)
(declare-fun p2 (Int) Int)
-; COMMAND-LINE: --check-unsat-cores --incremental
+; COMMAND-LINE: --incremental
; EXPECT: unsat
; EXPECT: sat
; EXPECT: unsat
-; COMMAND-LINE: --ee-mode=distributed --no-check-unsat-cores
-; COMMAND-LINE: --ee-mode=central --no-check-unsat-cores
+; COMMAND-LINE: --ee-mode=distributed
+; COMMAND-LINE: --ee-mode=central
; EXPECT: unsat
+; DISABLE-TESTER: unsat-core
(set-logic ALL)
(set-info :status unsat)
(declare-datatypes ((dA 0)) (((A))))
; Temporarily disable checking of unsat cores (see issue #3606)
-; COMMAND-LINE: --no-check-unsat-cores
+; DISABLE-TESTER: unsat-core
(set-logic ALL)
(set-option :strings-exp true)
(set-info :status unsat)
-; COMMAND-LINE: --solve-bv-as-int=sum --bvand-integer-granularity=1 --no-check-unsat-cores --no-check-proofs
-; COMMAND-LINE: --solve-bv-as-int=bitwise --bvand-integer-granularity=1 --no-check-unsat-cores --no-check-proofs
-; COMMAND-LINE: --solve-bv-as-int=sum --bvand-integer-granularity=2 --no-check-unsat-cores --no-check-proofs
-; COMMAND-LINE: --solve-bv-as-int=bitwise --bvand-integer-granularity=2 --no-check-unsat-cores --no-check-proofs
+; COMMAND-LINE: --solve-bv-as-int=sum --bvand-integer-granularity=1
+; COMMAND-LINE: --solve-bv-as-int=bitwise --bvand-integer-granularity=1
+; COMMAND-LINE: --solve-bv-as-int=sum --bvand-integer-granularity=2
+; COMMAND-LINE: --solve-bv-as-int=bitwise --bvand-integer-granularity=2
+; DISABLE-TESTER: proof
; EXPECT: unsat
(set-logic QF_BV)
(declare-fun a () (_ BitVec 4))
-; COMMAND-LINE: --solve-bv-as-int=sum --no-check-models
-; COMMAND-LINE: --solve-bv-as-int=sum --bv-to-int-use-pow2 --no-check-models
+; COMMAND-LINE: --solve-bv-as-int=sum
+; COMMAND-LINE: --solve-bv-as-int=sum --bv-to-int-use-pow2
; EXPECT: sat
(set-logic BV)
(declare-fun s () (_ BitVec 3))
-; COMMAND-LINE: --solve-bv-as-int=bv --no-check-models
-; COMMAND-LINE: --bvand-integer-granularity=1 --solve-bv-as-int=sum --full-saturate-quant --cegqi-all --no-check-models
+; COMMAND-LINE: --solve-bv-as-int=bv
+; COMMAND-LINE: --bvand-integer-granularity=1 --solve-bv-as-int=sum --full-saturate-quant --cegqi-all
;EXPECT: sat
(set-logic BV)
(assert (exists ((c__detect__main__1__i_36_C (_ BitVec 32))) (bvslt ((_ sign_extend 32) c__detect__main__1__i_36_C) (_ bv0 64))))
-; COMMAND-LINE: --cegqi-all --full-saturate-quant --solve-bv-as-int=sum --no-check-models
-; COMMAND-LINE: --cegqi-all --full-saturate-quant --solve-bv-as-int=bv --no-check-models
-; COMMAND-LINE: --cegqi-all --full-saturate-quant --solve-bv-as-int=iand --no-check-models
+; COMMAND-LINE: --cegqi-all --full-saturate-quant --solve-bv-as-int=sum
+; COMMAND-LINE: --cegqi-all --full-saturate-quant --solve-bv-as-int=bv
+; COMMAND-LINE: --cegqi-all --full-saturate-quant --solve-bv-as-int=iand
; EXPECT: sat
(set-logic BV)
(declare-fun s () (_ BitVec 4))
-; COMMAND-LINE: --sygus-inst --no-check-models
+; COMMAND-LINE: --sygus-inst
; EXPECT: sat
(set-logic NRA)
(set-info :status sat)
-; COMMAND-LINE: --check-models
; EXPECT: sat
(set-logic UFNIRA)
(declare-fun c (Int) Int)