Better support for HOL parsing and set up (#6697)
authorHaniel Barbosa <hanielbbarbosa@gmail.com>
Fri, 11 Jun 2021 21:29:19 +0000 (18:29 -0300)
committerGitHub <noreply@github.com>
Fri, 11 Jun 2021 21:29:19 +0000 (21:29 +0000)
commit8ddd5e82c8e896977d5573b639524264c7207d85
treeee6a94468288397e290cb3db60db76dbdf69e978
parentf10087c3b347da6ef625a2ad92846551ad324d73
Better support for HOL parsing and set up (#6697)

This commit adds a new parser option, --hol, which marks that HOL is being used. This option has the effect of prepending the problem's logic with "HO_", which teels the solver that the logic is higher order. The parser builder, base parser, and SMT2 and TPTP parsers are all updated to work with this new setting, as is the logic info class.

For now this parser option is enabling the --uf-ho option for internal use, since for now higher-order solving relies it. In a future PR this dependency will be removed (since this information is already given to the SMT solver via the logic).
80 files changed:
src/parser/parser.cpp
src/parser/parser.h
src/parser/parser_builder.cpp
src/parser/smt2/smt2.cpp
src/parser/tptp/Tptp.g
src/parser/tptp/tptp.cpp
src/parser/tptp/tptp.h
src/smt/set_defaults.cpp
src/theory/logic_info.cpp
src/theory/logic_info.h
test/regress/regress0/declare-fun-is-match.smt2
test/regress/regress0/fp/issue4277-assign-func.smt2
test/regress/regress0/ho/apply-collapse-sat.smt2
test/regress/regress0/ho/apply-collapse-unsat.smt2
test/regress/regress0/ho/bug_nodbuilding_interpreted_SYO042^1.p
test/regress/regress0/ho/cong-full-apply.smt2
test/regress/regress0/ho/cong.smt2
test/regress/regress0/ho/declare-fun-variants.smt2
test/regress/regress0/ho/def-fun-flatten.smt2
test/regress/regress0/ho/ext-finite-unsat.smt2
test/regress/regress0/ho/ext-ho-nested-lambda-model.smt2
test/regress/regress0/ho/ext-ho.smt2
test/regress/regress0/ho/ext-sat-partial-eval.smt2
test/regress/regress0/ho/ext-sat.smt2
test/regress/regress0/ho/finite-fun-ext.smt2
test/regress/regress0/ho/fta0144-alpha-eq.smt2
test/regress/regress0/ho/fta0210.smt2
test/regress/regress0/ho/fun-subtyping.smt2
test/regress/regress0/ho/ho-exponential-model.smt2
test/regress/regress0/ho/ho-match-fun-suffix.smt2
test/regress/regress0/ho/ho-matching-enum-2.smt2
test/regress/regress0/ho/ho-matching-enum.smt2
test/regress/regress0/ho/ho-matching-nested-app.smt2
test/regress/regress0/ho/ho-std-fmf.smt2
test/regress/regress0/ho/hoa0008.smt2
test/regress/regress0/ho/issue4990-care-graph.smt2
test/regress/regress0/ho/issue5233-part1-usort-owner.smt2
test/regress/regress0/ho/ite-apply-eq.smt2
test/regress/regress0/ho/lambda-equality-non-canon.smt2
test/regress/regress0/ho/match-middle.smt2
test/regress/regress0/ho/modulo-func-equality.smt2
test/regress/regress0/ho/shadowing-defs.smt2
test/regress/regress0/ho/simple-matching-partial.smt2
test/regress/regress0/ho/simple-matching.smt2
test/regress/regress0/ho/trans.smt2
test/regress/regress0/sygus/pLTL-sygus-syntax-err.sy
test/regress/regress0/sygus/sygus-uf.sy
test/regress/regress1/fmf/issue4225-univ-fun.smt2
test/regress/regress1/ho/NUM638^1.smt2
test/regress/regress1/ho/NUM925^1.p
test/regress/regress1/ho/SYO056^1.p
test/regress/regress1/ho/bound_var_bug.p
test/regress/regress1/ho/bug_freeVar_BDD_General_data_270.p
test/regress/regress1/ho/bug_freevar_PHI004^4-delta.smt2
test/regress/regress1/ho/fta0328.lfho.p
test/regress/regress1/ho/hoa0102.smt2
test/regress/regress1/ho/issue3136-fconst-bool-bool.smt2
test/regress/regress1/ho/issue4065-no-rep.smt2
test/regress/regress1/ho/issue4092-sinf.smt2
test/regress/regress1/ho/issue4134-sinf.smt2
test/regress/regress1/ho/nested_lambdas-AGT034^2.smt2
test/regress/regress1/ho/nested_lambdas-sat-SYO056^1-delta.smt2
test/regress/regress1/ho/soundness_fmf_SYO362^5-delta.p
test/regress/regress1/ho/store-ax-min.p
test/regress/regress1/quantifiers/issue3724-quant.smt2
test/regress/regress1/quantifiers/issue4021-ind-opts.smt2
test/regress/regress1/sygus/eval-uc.sy
test/regress/regress1/sygus/ho-sygus.sy
test/regress/regress1/sygus/issue3507.smt2
test/regress/regress1/sygus/issue3995-fmf-var-op.smt2
test/regress/regress1/sygus/list_recursor.sy
test/regress/regress1/sygus/sygus-uf-ex.sy
test/regress/regress1/sygus/uf-abduct.smt2
test/regress/regress2/ho/auth0068.smt2
test/regress/regress2/ho/bug_instfalse_SEU882^5.p
test/regress/regress2/ho/fta0409.smt2
test/regress/regress2/ho/involved_parsing_ALG248^3.p
test/regress/regress2/ho/partial_app_interpreted_SWW474^2.p
test/regress/regress3/ho/SYO362^5.p
test/regress/regress3/issue4170.smt2