Skip to content

Hol improvements (continued)#856

Open
mezpusz wants to merge 23 commits into
masterfrom
hol-improvements
Open

Hol improvements (continued)#856
mezpusz wants to merge 23 commits into
masterfrom
hol-improvements

Conversation

@mezpusz
Copy link
Copy Markdown
Contributor

@mezpusz mezpusz commented May 18, 2026

This merges another batch from the HOL branch, and also all current changes from branch hol on top of it.

Now enabling checking for loose DB indices by default in Substitution to avoid huge changes in code. It should be a trivial check in most cases, using the shared term's "contains DB index" flag.

Regression over TPTP showed no difference, which is somewhat interesting because of the above check. I think either Substitution is not used in that many places, or it is mostly not enabled with the default options.

Note that I changed a bunch of seemingly other stuff on the way, I will try to mark these inline.

Comment thread Kernel/MLMatcher.hpp
Comment thread Kernel/Ordering.cpp

struct OccurenceTiebreak {
OccurenceTiebreak(SymbolType, // here the SymbolType is a dummy argument, required by the template recursion convention
struct OccurrenceTieBreak {
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Typo fixed.

}

if (opt.instantiation() != Options::Instantiation::OFF) {
if (opt.instantiation()) {
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This option had only two values, so changed it BoolOptionValue. Btw, instantiation does not seem to be very useful (only used a few times in the schedules). Should we consider deleting it?

Comment thread Kernel/Substitution.hpp
Comment thread Shell/Options.cpp
"whose type is not an arrow type.";
_tweeSkipArrows.tag(OptionTag::PREPROCESSING);
_tweeSkipArrows.setExperimental();
_lookup.insert(&_tweeSkipArrows);
Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cool! But I don't quite understand the description. "don't introduce definitions for other subterms than those whose type is not an arrow type"? Don't introduce definitions for arrow-typed subterms?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, there seems to be an unnecessary double negation. Changing to what you wrote.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants