@@ -85,10 +85,6 @@ public void setUpBV() {
85
85
requireBitvectors ();
86
86
requireArrays ();
87
87
requireQuantifiers ();
88
- assume ()
89
- .withMessage ("Solver %s does not support quantifiers via JavaSMT" , solverToUse ())
90
- .that (solverToUse ())
91
- .isNotEqualTo (Solvers .BOOLECTOR );
92
88
93
89
xbv = bvmgr .makeVariable (bvWidth , "xbv" );
94
90
bvArray =
@@ -143,8 +139,6 @@ public void testBVForallArrayConjunctUnsat() throws SolverException, Interrupted
143
139
requireBitvectors ();
144
140
// Princess does not support bitvectors in arrays
145
141
assume ().that (solverToUse ()).isNotEqualTo (Solvers .PRINCESS );
146
- // Boolector quants need to be reworked
147
- assume ().that (solverToUse ()).isNotEqualTo (Solvers .BOOLECTOR );
148
142
149
143
BooleanFormula f =
150
144
bmgr .and (
@@ -188,8 +182,6 @@ public void testBVForallArrayConjunctSat() throws SolverException, InterruptedEx
188
182
requireBitvectors ();
189
183
// Princess does not support bitvectors in arrays
190
184
assume ().that (solverToUse ()).isNotEqualTo (Solvers .PRINCESS );
191
- // Boolector quants need to be reworked
192
- assume ().that (solverToUse ()).isNotEqualTo (Solvers .BOOLECTOR );
193
185
194
186
BooleanFormula f =
195
187
bmgr .and (
@@ -364,8 +356,6 @@ public void testBVExistsArrayConjunct1() throws SolverException, InterruptedExce
364
356
requireBitvectors ();
365
357
// Princess does not support bitvectors in arrays
366
358
assume ().that (solverToUse ()).isNotEqualTo (Solvers .PRINCESS );
367
- // Boolector quants need to be reworked
368
- assume ().that (solverToUse ()).isNotEqualTo (Solvers .BOOLECTOR );
369
359
370
360
BooleanFormula f =
371
361
bmgr .and (
@@ -402,8 +392,6 @@ public void testBVExistsArrayConjunct2() throws SolverException, InterruptedExce
402
392
requireBitvectors ();
403
393
// Princess does not support bitvectors in arrays
404
394
assume ().that (solverToUse ()).isNotEqualTo (Solvers .PRINCESS );
405
- // Boolector quants need to be reworked
406
- assume ().that (solverToUse ()).isNotEqualTo (Solvers .BOOLECTOR );
407
395
408
396
BooleanFormula f =
409
397
bmgr .and (qmgr .exists (ImmutableList .of (xbv ), bvArray_at_x_eq_1 ), bv_forall_x_a_at_x_eq_0 );
@@ -435,11 +423,10 @@ public void testBVExistsArrayConjunct3() throws SolverException, InterruptedExce
435
423
// (exists x . b[x] = 0) AND (forall x . b[x] = 0) is SAT
436
424
requireBitvectors ();
437
425
// Princess does not support bitvectors in arrays
438
- // Boolector quants need to be reworked
439
426
assume ()
440
427
.withMessage ("Solver %s does not support the complete theory of quantifiers" , solverToUse ())
441
428
.that (solverToUse ())
442
- .isNoneOf (Solvers .CVC5 , Solvers .CVC4 , Solvers . BOOLECTOR );
429
+ .isNoneOf (Solvers .CVC5 , Solvers .CVC4 );
443
430
444
431
BooleanFormula f =
445
432
bmgr .and (qmgr .exists (ImmutableList .of (xbv ), bvArray_at_x_eq_0 ), bv_forall_x_a_at_x_eq_0 );
@@ -474,8 +461,6 @@ public void testBVExistsArrayDisjunct1() throws SolverException, InterruptedExce
474
461
requireBitvectors ();
475
462
// Princess does not support bitvectors in arrays
476
463
assume ().that (solverToUse ()).isNotEqualTo (Solvers .PRINCESS );
477
- // Boolector quants need to be reworked
478
- assume ().that (solverToUse ()).isNotEqualTo (Solvers .BOOLECTOR );
479
464
480
465
BooleanFormula f =
481
466
bmgr .or (
@@ -502,8 +487,6 @@ public void testBVExistsArrayDisjunct2() throws SolverException, InterruptedExce
502
487
requireBitvectors ();
503
488
// Princess does not support bitvectors in arrays
504
489
assume ().that (solverToUse ()).isNotEqualTo (Solvers .PRINCESS );
505
- // Boolector quants need to be reworked
506
- assume ().that (solverToUse ()).isNotEqualTo (Solvers .BOOLECTOR );
507
490
508
491
BooleanFormula f =
509
492
bmgr .or (
@@ -526,8 +509,6 @@ public void testLIAContradiction() throws SolverException, InterruptedException
526
509
public void testBVContradiction () throws SolverException , InterruptedException {
527
510
// forall x . x = x+1 is UNSAT
528
511
requireBitvectors ();
529
- // Boolector quants need to be reworked
530
- assume ().that (solverToUse ()).isNotEqualTo (Solvers .BOOLECTOR );
531
512
532
513
int width = 16 ;
533
514
BitvectorFormula z = bvmgr .makeVariable (width , "z" );
@@ -555,8 +536,6 @@ public void testLIASimple() throws SolverException, InterruptedException {
555
536
public void testBVSimple () throws SolverException , InterruptedException {
556
537
// forall z . z+2 = z+1+1 is SAT
557
538
requireBitvectors ();
558
- // Boolector quants need to be reworked
559
- assume ().that (solverToUse ()).isNotEqualTo (Solvers .BOOLECTOR );
560
539
561
540
int width = 16 ;
562
541
BitvectorFormula z = bvmgr .makeVariable (width , "z" );
@@ -585,8 +564,6 @@ public void testLIAEquality() throws SolverException, InterruptedException {
585
564
@ Test
586
565
public void testBVEquality () throws SolverException , InterruptedException {
587
566
requireBitvectors ();
588
- // Boolector quants need to be reworked
589
- assume ().that (solverToUse ()).isNotEqualTo (Solvers .BOOLECTOR );
590
567
591
568
BitvectorFormula z = bvmgr .makeVariable (bvWidth , "z" );
592
569
BitvectorFormula y = bvmgr .makeVariable (bvWidth , "y" );
@@ -598,8 +575,6 @@ public void testBVEquality() throws SolverException, InterruptedException {
598
575
@ Test
599
576
public void testBVEquality2 () throws SolverException , InterruptedException {
600
577
requireBitvectors ();
601
- // Boolector quants need to be reworked
602
- assume ().that (solverToUse ()).isNotEqualTo (Solvers .BOOLECTOR );
603
578
604
579
BitvectorFormula z = bvmgr .makeVariable (bvWidth , "z" );
605
580
BitvectorFormula y = bvmgr .makeVariable (bvWidth , "y" );
@@ -612,8 +587,6 @@ public void testBVEquality3() throws SolverException, InterruptedException {
612
587
// exists z . (forall y . z = y && z + 2 > z)
613
588
// UNSAT because of bv behaviour
614
589
requireBitvectors ();
615
- // Boolector quants need to be reworked
616
- assume ().that (solverToUse ()).isNotEqualTo (Solvers .BOOLECTOR );
617
590
618
591
BitvectorFormula z = bvmgr .makeVariable (bvWidth , "z" );
619
592
BitvectorFormula zPlusTwo =
@@ -644,8 +617,6 @@ public void testLIABoundVariables() throws SolverException, InterruptedException
644
617
public void testBVBoundVariables () throws SolverException , InterruptedException {
645
618
// If the free and bound vars are equal, this will be UNSAT
646
619
requireBitvectors ();
647
- // Boolector quants need to be reworked
648
- assume ().that (solverToUse ()).isNotEqualTo (Solvers .BOOLECTOR );
649
620
650
621
int width = 2 ;
651
622
BitvectorFormula aa = bvmgr .makeVariable (width , "aa" );
@@ -803,12 +774,11 @@ public void checkBVQuantifierEliminationFail() throws InterruptedException, Solv
803
774
// build formula: (exists x : arr[x] = 3) && (forall y: arr[y] = 2)
804
775
// as there is no quantifier free equivalent, it should return the input formula.
805
776
requireBitvectors ();
806
- // Boolector quants need to be reworked
807
777
// Princess does not support bitvectors in arrays
808
778
assume ()
809
779
.withMessage ("Solver %s does not support the complete theory of quantifiers" , solverToUse ())
810
780
.that (solverToUse ())
811
- .isNoneOf (Solvers .CVC5 , Solvers .BOOLECTOR , Solvers . PRINCESS );
781
+ .isNoneOf (Solvers .CVC5 , Solvers .PRINCESS );
812
782
813
783
int width = 2 ;
814
784
BitvectorFormula xx = bvmgr .makeVariable (width , "x_bv" );
@@ -836,8 +806,6 @@ public void checkBVQuantifierElimination() throws InterruptedException, SolverEx
836
806
// quantifier-free equivalent: x = 1 | x = 3
837
807
// or extract_0_0 x = 1
838
808
839
- // Boolector quants need to be reworked
840
- assume ().that (solverToUse ()).isNotEqualTo (Solvers .BOOLECTOR );
841
809
int i = index .getFreshId ();
842
810
int width = 2 ;
843
811
@@ -862,8 +830,6 @@ public void checkBVQuantifierElimination2() throws InterruptedException, SolverE
862
830
// quantifier-free equivalent: (and (= b2 #x00000006)
863
831
// (= a3 #x00000000))
864
832
865
- // Boolector quants need to be reworked
866
- assume ().that (solverToUse ()).isNotEqualTo (Solvers .BOOLECTOR );
867
833
// Z3 fails this currently. Remove once thats not longer the case!
868
834
assume ().that (solverToUse ()).isNotEqualTo (Solvers .Z3 );
869
835
int width = 32 ;
0 commit comments