diff options
author | Andrew Reynolds <andrew.j.reynolds@gmail.com> | 2021-10-21 09:11:57 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-10-21 14:11:57 +0000 |
commit | eeb78c833af50c49fd581704b03fd3c500360c3d (patch) | |
tree | 4e546205fb5d7495fd45c6fa5e76adc279abaecd /test | |
parent | 0291f941d4a2bae49a80c3db4afe626b55636fdf (diff) |
Make cardinality constraint a nullary operator (#7333)
This makes cardinality constraints nullary operators. This eliminates hacks for supporting these previously.
It also removes an unimplemented kind CARDINALITY_VALUE.
Notice that the parser and printer now do not use a common syntax for cardinality constraints, this will be resolved on followup PRs.
Diffstat (limited to 'test')
-rw-r--r-- | test/regress/regress1/fmf/issue5738-dt-interp-finite.smt2 | 2 | ||||
-rw-r--r-- | test/unit/api/solver_black.cpp | 11 |
2 files changed, 12 insertions, 1 deletions
diff --git a/test/regress/regress1/fmf/issue5738-dt-interp-finite.smt2 b/test/regress/regress1/fmf/issue5738-dt-interp-finite.smt2 index 50373fde4..6f0fb84f2 100644 --- a/test/regress/regress1/fmf/issue5738-dt-interp-finite.smt2 +++ b/test/regress/regress1/fmf/issue5738-dt-interp-finite.smt2 @@ -1,4 +1,4 @@ -(set-logic UFLIA) +(set-logic UFDTLIA) (set-info :status sat) (set-option :finite-model-find true) (declare-sort a 0) diff --git a/test/unit/api/solver_black.cpp b/test/unit/api/solver_black.cpp index c9527c2d4..8dcb0fde6 100644 --- a/test/unit/api/solver_black.cpp +++ b/test/unit/api/solver_black.cpp @@ -410,6 +410,17 @@ TEST_F(TestApiBlackSolver, mkFloatingPoint) ASSERT_THROW(slv.mkFloatingPoint(3, 5, t1), CVC5ApiException); } +TEST_F(TestApiBlackSolver, mkCardinalityConstraint) +{ + Sort su = d_solver.mkUninterpretedSort("u"); + Sort si = d_solver.getIntegerSort(); + ASSERT_NO_THROW(d_solver.mkCardinalityConstraint(su, 3)); + ASSERT_THROW(d_solver.mkCardinalityConstraint(si, 3), CVC5ApiException); + ASSERT_THROW(d_solver.mkCardinalityConstraint(su, 0), CVC5ApiException); + Solver slv; + ASSERT_THROW(slv.mkCardinalityConstraint(su, 3), CVC5ApiException); +} + TEST_F(TestApiBlackSolver, mkEmptySet) { Solver slv; |