Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fixes several model printing bugs (and more) #584

Merged
merged 47 commits into from
Sep 2, 2024
Merged

Conversation

quickbeam123
Copy link
Collaborator

Quite a few changes in FiniteModelBuilder and around with the ultimate aim of Vampire being able to correctly model-check all finite models it generates.

This PR achieves this goal for inputs in CNF and under fde=none:erd=off:updr=off:bce=off - (This means we verify models we output, but so far only for strategies which don't manipulate the signature or eliminate things.)

The next step will be to support undoing these elimination operations and making the model work for the original input (and to do the corresponding operations also for saturations, where we will simply dump the definitions of the eliminated symbols to document how one could recover a model, if they had one.)

…e monotonicity information back to FiniteModelBuilder
…Functions, we now also pass the result back to FiniteModelBuilder
…into bool, let's prevent this for the future by making the SATSolver enums classes
Copy link
Contributor

@MichaelRawson MichaelRawson left a comment

Choose a reason for hiding this comment

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

As usual I trust your new code does what you hope it does! But I don't see any immediate problems and I do see big type safety and complexity improvements.

FMB/FiniteModelBuilder.hpp Show resolved Hide resolved
FMB/FiniteModelMultiSorted.hpp Show resolved Hide resolved
SAT/SATSolver.hpp Show resolved Hide resolved
Kernel/Problem.hpp Show resolved Hide resolved
FMB/SortInference.hpp Show resolved Hide resolved
@MichaelRawson
Copy link
Contributor

I've mostly just asked for some explanatory comments...once you've done what you are willing to do go ahead and merge.

@quickbeam123 quickbeam123 merged commit 2d67dfb into master Sep 2, 2024
1 check passed
@quickbeam123 quickbeam123 deleted the martin-fix-fmb branch September 2, 2024 07:18
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.

Distinct domain constants with the same name. No undefined symbols in finite models.
2 participants