Reduce a conjunction of predicate literals using known predicate literals.
Reduce a conjunction of predicate literals using known predicate literals. This function knows about functional predicates, and is able to apply the functionality axiom to replace predicate literals with equations.
Reduce a conjunction of predicate literals using known predicate literals.
Reduce a conjunction of predicate literals using known predicate literals. This function knows about functional predicates, and is able to apply the functionality axiom to replace predicate literals with equations.
Create a ReduceWithPredLits
that can be used underneath
num
binders.
Create a ReduceWithPredLits
that can be used underneath
num
binders. The conversion of de Brujin-variables is done on
the fly, which should give a good performance when the resulting
ReduceWithEqs
is not applied too often (TODO: caching)
Determine whether a formula that contains the given predicates might be reducible by this reducer
A reducer corresponding to this one, but without assuming any facts known a priori.
(Since version ) see corresponding Javadoc for more information.
Class for reducing a conjunction of predicate literals using a set of known literals (facts). This reduction can be done modulo the axiom of functionality (for predicates encoding functions or partial functions), and then potentially replaces predicate literals with simple equations.