+----------------------+----------------------------------------------+-------------------------------------------------------------------------+
| Sort | ``(Bag <Sort>)`` | ``solver.mkBagSort(cvc5::Sort elementSort);`` |
+----------------------+----------------------------------------------+-------------------------------------------------------------------------+
-| Constants | ``(declare-const X (Bag String)`` | ``Sort s = solver.mkBagSort(solver.getStringSort());`` |
+| Constants | ``(declare-const X (Bag String))`` | ``Sort s = solver.mkBagSort(solver.getStringSort());`` |
| | | |
| | | ``Term X = solver.mkConst(s, "X");`` |
+----------------------+----------------------------------------------+-------------------------------------------------------------------------+
+----------------------+----------------------------------------------+-------------------------------------------------------------------------+
| Subbag | ``(bag.subbag X Y)`` | ``Term t = solver.mkTerm(Kind::BAG_SUBBAG, {X, Y});`` |
+----------------------+----------------------------------------------+-------------------------------------------------------------------------+
-| Emptybag | ``(as bag.empty (Bag Int)`` | ``Term t = solver.mkEmptyBag(s);`` |
+| Emptybag | ``(as bag.empty (Bag Int))`` | ``Term t = solver.mkEmptyBag(s);`` |
+----------------------+----------------------------------------------+-------------------------------------------------------------------------+
| Make bag | ``(bag "a" 3)`` | ``Term t = solver.mkTerm(Kind::BAG_MAKE,`` |
| | | ``{solver.mkString("a"), solver.mkInteger(1)});`` |