├── .gitignore ├── .vscode └── settings.json ├── Makefile ├── README.md ├── configure.sh ├── frontend ├── dag.hpp ├── parser.cpp └── parser.hpp ├── main.cpp ├── midend ├── message.hpp ├── preprocessor.cpp └── preprocessor.hpp ├── options.hpp ├── qfnia ├── checker.cpp ├── checker.hpp ├── collector.cpp ├── collector.hpp ├── decider.cpp ├── decider.hpp ├── info.hpp ├── qfnia.cpp ├── qfnia.hpp ├── resolver.cpp ├── resolver.hpp ├── searcher.cpp └── searcher.hpp ├── rewriters ├── comp_rewriter.cpp ├── comp_rewriter.hpp ├── eq_rewriter.cpp ├── eq_rewriter.hpp ├── ite_rewriter.cpp ├── ite_rewriter.hpp ├── let_rewriter.cpp ├── let_rewriter.hpp ├── logic_rewriter.cpp ├── logic_rewriter.hpp ├── nnf_rewriter.cpp ├── nnf_rewriter.hpp ├── op_rewriter.cpp ├── op_rewriter.hpp ├── poly_rewriter.cpp ├── poly_rewriter.hpp ├── prop_rewriter.cpp ├── prop_rewriter.hpp └── rewriter.hpp ├── solvers ├── blaster │ ├── blaster_bits.cpp │ ├── blaster_bits.hpp │ ├── blaster_comp.cpp │ ├── blaster_equal.cpp │ ├── blaster_logic.cpp │ ├── blaster_make.cpp │ ├── blaster_offset.hpp │ ├── blaster_operations.cpp │ ├── blaster_recursion.cpp │ ├── blaster_slack.cpp │ ├── blaster_solver.cpp │ ├── blaster_solver.hpp │ ├── blaster_transformer.cpp │ ├── blaster_transformer.hpp │ ├── blaster_transposition.cpp │ └── blaster_types.hpp ├── cdcl_t │ ├── cdcl_t_solver.cpp │ └── cdcl_t_solver.hpp ├── eq │ ├── eq_solver.cpp │ └── eq_solver.hpp ├── icp │ ├── icp_solver.cpp │ └── icp_solver.hpp ├── poly │ ├── poly_solver.cpp │ └── poly_solver.hpp └── sat │ ├── sat_solver.cpp │ ├── sat_solver.hpp │ └── sat_types.hpp ├── test ├── 1.smt2 ├── 2.smt2 └── 3.smt2 └── utils ├── box.hpp ├── constraint.hpp ├── disjoint_set.hpp ├── expoly.hpp ├── feasible_set.hpp ├── graph.hpp ├── interval.hpp ├── logic.hpp ├── model.hpp ├── poly.hpp ├── rational.hpp ├── search_box.hpp ├── simp_vector.hpp └── types.hpp /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/.gitignore -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/.vscode/settings.json -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/README.md -------------------------------------------------------------------------------- /configure.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/configure.sh -------------------------------------------------------------------------------- /frontend/dag.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/frontend/dag.hpp -------------------------------------------------------------------------------- /frontend/parser.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/frontend/parser.cpp -------------------------------------------------------------------------------- /frontend/parser.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/frontend/parser.hpp -------------------------------------------------------------------------------- /main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/main.cpp -------------------------------------------------------------------------------- /midend/message.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/midend/message.hpp -------------------------------------------------------------------------------- /midend/preprocessor.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/midend/preprocessor.cpp -------------------------------------------------------------------------------- /midend/preprocessor.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/midend/preprocessor.hpp -------------------------------------------------------------------------------- /options.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/options.hpp -------------------------------------------------------------------------------- /qfnia/checker.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/qfnia/checker.cpp -------------------------------------------------------------------------------- /qfnia/checker.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/qfnia/checker.hpp -------------------------------------------------------------------------------- /qfnia/collector.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/qfnia/collector.cpp -------------------------------------------------------------------------------- /qfnia/collector.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/qfnia/collector.hpp -------------------------------------------------------------------------------- /qfnia/decider.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/qfnia/decider.cpp -------------------------------------------------------------------------------- /qfnia/decider.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/qfnia/decider.hpp -------------------------------------------------------------------------------- /qfnia/info.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/qfnia/info.hpp -------------------------------------------------------------------------------- /qfnia/qfnia.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/qfnia/qfnia.cpp -------------------------------------------------------------------------------- /qfnia/qfnia.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/qfnia/qfnia.hpp -------------------------------------------------------------------------------- /qfnia/resolver.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/qfnia/resolver.cpp -------------------------------------------------------------------------------- /qfnia/resolver.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/qfnia/resolver.hpp -------------------------------------------------------------------------------- /qfnia/searcher.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/qfnia/searcher.cpp -------------------------------------------------------------------------------- /qfnia/searcher.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/qfnia/searcher.hpp -------------------------------------------------------------------------------- /rewriters/comp_rewriter.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/rewriters/comp_rewriter.cpp -------------------------------------------------------------------------------- /rewriters/comp_rewriter.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/rewriters/comp_rewriter.hpp -------------------------------------------------------------------------------- /rewriters/eq_rewriter.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/rewriters/eq_rewriter.cpp -------------------------------------------------------------------------------- /rewriters/eq_rewriter.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/rewriters/eq_rewriter.hpp -------------------------------------------------------------------------------- /rewriters/ite_rewriter.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/rewriters/ite_rewriter.cpp -------------------------------------------------------------------------------- /rewriters/ite_rewriter.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/rewriters/ite_rewriter.hpp -------------------------------------------------------------------------------- /rewriters/let_rewriter.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/rewriters/let_rewriter.cpp -------------------------------------------------------------------------------- /rewriters/let_rewriter.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/rewriters/let_rewriter.hpp -------------------------------------------------------------------------------- /rewriters/logic_rewriter.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/rewriters/logic_rewriter.cpp -------------------------------------------------------------------------------- /rewriters/logic_rewriter.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/rewriters/logic_rewriter.hpp -------------------------------------------------------------------------------- /rewriters/nnf_rewriter.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/rewriters/nnf_rewriter.cpp -------------------------------------------------------------------------------- /rewriters/nnf_rewriter.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/rewriters/nnf_rewriter.hpp -------------------------------------------------------------------------------- /rewriters/op_rewriter.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/rewriters/op_rewriter.cpp -------------------------------------------------------------------------------- /rewriters/op_rewriter.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/rewriters/op_rewriter.hpp -------------------------------------------------------------------------------- /rewriters/poly_rewriter.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/rewriters/poly_rewriter.cpp -------------------------------------------------------------------------------- /rewriters/poly_rewriter.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/rewriters/poly_rewriter.hpp -------------------------------------------------------------------------------- /rewriters/prop_rewriter.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/rewriters/prop_rewriter.cpp -------------------------------------------------------------------------------- /rewriters/prop_rewriter.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/rewriters/prop_rewriter.hpp -------------------------------------------------------------------------------- /rewriters/rewriter.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/rewriters/rewriter.hpp -------------------------------------------------------------------------------- /solvers/blaster/blaster_bits.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/solvers/blaster/blaster_bits.cpp -------------------------------------------------------------------------------- /solvers/blaster/blaster_bits.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/solvers/blaster/blaster_bits.hpp -------------------------------------------------------------------------------- /solvers/blaster/blaster_comp.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/solvers/blaster/blaster_comp.cpp -------------------------------------------------------------------------------- /solvers/blaster/blaster_equal.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/solvers/blaster/blaster_equal.cpp -------------------------------------------------------------------------------- /solvers/blaster/blaster_logic.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/solvers/blaster/blaster_logic.cpp -------------------------------------------------------------------------------- /solvers/blaster/blaster_make.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/solvers/blaster/blaster_make.cpp -------------------------------------------------------------------------------- /solvers/blaster/blaster_offset.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/solvers/blaster/blaster_offset.hpp -------------------------------------------------------------------------------- /solvers/blaster/blaster_operations.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/solvers/blaster/blaster_operations.cpp -------------------------------------------------------------------------------- /solvers/blaster/blaster_recursion.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/solvers/blaster/blaster_recursion.cpp -------------------------------------------------------------------------------- /solvers/blaster/blaster_slack.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/solvers/blaster/blaster_slack.cpp -------------------------------------------------------------------------------- /solvers/blaster/blaster_solver.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/solvers/blaster/blaster_solver.cpp -------------------------------------------------------------------------------- /solvers/blaster/blaster_solver.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/solvers/blaster/blaster_solver.hpp -------------------------------------------------------------------------------- /solvers/blaster/blaster_transformer.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/solvers/blaster/blaster_transformer.cpp -------------------------------------------------------------------------------- /solvers/blaster/blaster_transformer.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/solvers/blaster/blaster_transformer.hpp -------------------------------------------------------------------------------- /solvers/blaster/blaster_transposition.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/solvers/blaster/blaster_transposition.cpp -------------------------------------------------------------------------------- /solvers/blaster/blaster_types.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/solvers/blaster/blaster_types.hpp -------------------------------------------------------------------------------- /solvers/cdcl_t/cdcl_t_solver.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/solvers/cdcl_t/cdcl_t_solver.cpp -------------------------------------------------------------------------------- /solvers/cdcl_t/cdcl_t_solver.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/solvers/cdcl_t/cdcl_t_solver.hpp -------------------------------------------------------------------------------- /solvers/eq/eq_solver.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/solvers/eq/eq_solver.cpp -------------------------------------------------------------------------------- /solvers/eq/eq_solver.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/solvers/eq/eq_solver.hpp -------------------------------------------------------------------------------- /solvers/icp/icp_solver.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/solvers/icp/icp_solver.cpp -------------------------------------------------------------------------------- /solvers/icp/icp_solver.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/solvers/icp/icp_solver.hpp -------------------------------------------------------------------------------- /solvers/poly/poly_solver.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/solvers/poly/poly_solver.cpp -------------------------------------------------------------------------------- /solvers/poly/poly_solver.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/solvers/poly/poly_solver.hpp -------------------------------------------------------------------------------- /solvers/sat/sat_solver.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/solvers/sat/sat_solver.cpp -------------------------------------------------------------------------------- /solvers/sat/sat_solver.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/solvers/sat/sat_solver.hpp -------------------------------------------------------------------------------- /solvers/sat/sat_types.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/solvers/sat/sat_types.hpp -------------------------------------------------------------------------------- /test/1.smt2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/test/1.smt2 -------------------------------------------------------------------------------- /test/2.smt2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/test/2.smt2 -------------------------------------------------------------------------------- /test/3.smt2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/test/3.smt2 -------------------------------------------------------------------------------- /utils/box.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/utils/box.hpp -------------------------------------------------------------------------------- /utils/constraint.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/utils/constraint.hpp -------------------------------------------------------------------------------- /utils/disjoint_set.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/utils/disjoint_set.hpp -------------------------------------------------------------------------------- /utils/expoly.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/utils/expoly.hpp -------------------------------------------------------------------------------- /utils/feasible_set.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/utils/feasible_set.hpp -------------------------------------------------------------------------------- /utils/graph.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/utils/graph.hpp -------------------------------------------------------------------------------- /utils/interval.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/utils/interval.hpp -------------------------------------------------------------------------------- /utils/logic.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/utils/logic.hpp -------------------------------------------------------------------------------- /utils/model.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/utils/model.hpp -------------------------------------------------------------------------------- /utils/poly.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/utils/poly.hpp -------------------------------------------------------------------------------- /utils/rational.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/utils/rational.hpp -------------------------------------------------------------------------------- /utils/search_box.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/utils/search_box.hpp -------------------------------------------------------------------------------- /utils/simp_vector.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/utils/simp_vector.hpp -------------------------------------------------------------------------------- /utils/types.hpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/fuqi-jia/BLAN/HEAD/utils/types.hpp --------------------------------------------------------------------------------