Add skeleton for theory of bags (multisets) (#5100)
authormudathirmahgoub <mudathirmahgoub@gmail.com>
Tue, 22 Sep 2020 21:59:41 +0000 (16:59 -0500)
committerGitHub <noreply@github.com>
Tue, 22 Sep 2020 21:59:41 +0000 (16:59 -0500)
commite4a29a6033ecc7ba5ec266f37e8f151f09ead020
tree26dff55bd5121dc311185dcd3071a6e8751f9f5e
parent524c879720779abc3bc529459da8734f2eb3e3ad
Add skeleton for theory of bags (multisets) (#5100)

This PR adds initial headers and mostly empty source files for the theory of bags (multisets).
It acts as a basis for future commits.
It includes straightforward implementation for typing rules an enumerator for bags.
42 files changed:
src/CMakeLists.txt
src/api/cvc4cpp.cpp
src/api/cvc4cpp.h
src/api/cvc4cppkind.h
src/expr/CMakeLists.txt
src/expr/emptybag.cpp [new file with mode: 0644]
src/expr/emptybag.h [new file with mode: 0644]
src/expr/node_manager.cpp
src/expr/node_manager.h
src/expr/type_node.cpp
src/expr/type_node.h
src/parser/parser.cpp
src/parser/parser.h
src/parser/smt2/Smt2.g
src/parser/smt2/smt2.cpp
src/printer/smt2/smt2_printer.cpp
src/smt/set_defaults.cpp
src/theory/bags/inference_manager.cpp [new file with mode: 0644]
src/theory/bags/inference_manager.h [new file with mode: 0644]
src/theory/bags/kinds [new file with mode: 0644]
src/theory/bags/normal_form.cpp [new file with mode: 0644]
src/theory/bags/normal_form.h [new file with mode: 0644]
src/theory/bags/solver_state.cpp [new file with mode: 0644]
src/theory/bags/solver_state.h [new file with mode: 0644]
src/theory/bags/term_registry.cpp [new file with mode: 0644]
src/theory/bags/term_registry.h [new file with mode: 0644]
src/theory/bags/theory_bags.cpp [new file with mode: 0644]
src/theory/bags/theory_bags.h [new file with mode: 0644]
src/theory/bags/theory_bags_rewriter.cpp [new file with mode: 0644]
src/theory/bags/theory_bags_rewriter.h [new file with mode: 0644]
src/theory/bags/theory_bags_type_enumerator.cpp [new file with mode: 0644]
src/theory/bags/theory_bags_type_enumerator.h [new file with mode: 0644]
src/theory/bags/theory_bags_type_rules.h [new file with mode: 0644]
src/theory/logic_info.cpp
src/theory/theory_engine.cpp
src/theory/theory_id.cpp
src/theory/theory_id.h
test/unit/api/solver_black.h
test/unit/api/sort_black.h
test/unit/theory/CMakeLists.txt
test/unit/theory/logic_info_white.h
test/unit/theory/theory_bags_type_rules_black.h [new file with mode: 0644]