Closed quickbeam123 closed 3 months ago
Why/in which rule do we need the property that $false
is least? Can we just make saturation incomplete when the fool constant weight is not 1 and the respective options are enabled?
In FOOL paramodulation, I believe. Feel free to check https://github.com/vprover/vampire/issues/557 and https://arxiv.org/pdf/1510.04821
What you suggest is also a possibility...
I see. I missed the crutial option -foolp
...
I think we still need to make the saturation incomplete if a user sets _foolConstant
to something different to 1
using the weight setting file, right?
I was thinking that in the future, we could just prepend the built-in precedences in front of the precedence vector, but I see this is not possible because of e.g. numeral constants which we don't know the number of in advance. Anyways, I approve of this solution, I'm just a bit worried that we have similar interdependencies elsewhere which we don't yet know of.
I tried not to follow the path for making _foolConstant settable from a file, but maybe it's possible somehow?
In any case, I think the file input is so rare that working on a robust way of figuring out completeness for user-specified weight scheme and precedence might not be worth the effort. Unless it's already there and a one-liner would fix it?
Fixes https://github.com/vprover/vampire/issues/557