Make Negative Loop Appear in Explanations like an abduction

If in s(CASP) I use an abduction, like this:
#abducible p(X).
then when p(X) is used in a human-style justification, it will appear as “by abduction we conclude p(X)”.

Sometimes I want to make the conclusion abducible, but only for other than extant values, so as to avoid duplicate explanations. So I might say something like this:

p(bob).
-p(X) :- not p(X), X \= bob.
p(X) :- not -p(X), X \= bob.

If I do that, in the explanations, it appears as “p(X), because not -p(X), because p(X) is assumed”.

This is a problem because I want to be able to detect what portions of the justificaiton tree are assumptions, and format them differently. But here I have two different formats.

How can I get both sorts of abduction to display in the same way, so that they can be found in the justifications?