Compute rules for the negations of positive literals (dual rules),
even if there are no clauses for the positive literal (negation will
be a fact). Wrapper for comp_duals2/1.
Compute the dual for a single positive literal. Make sure that
Predicate is used for the dual head instead of taking the head from
one of the rules. This allows a new head to be passed during NMR
sub-check creation.
Arguments:
Predicate
- The head of each rule in Rules, of the form Head/arity.
If BodyVars is empty, just return the original goal. Otherwise,
define a forall for the goal. For multiple body variables, the
forall will be nested, with each layer containing a single variable.