When to give up (on predicate logic)

Ovid on 2005-01-02T00:07:20

I've toyed with this problem for years. I should really give up now.

steals(PERP, STUFF) :-
    thief(PERP),
    valuable(STUFF),
    owns(VICTIM,STUFF),
    not(knows(PERP,VICTIM)).

thief(badguy).
valuable(gold).
valuable(rubies).
owns(merlyn,gold).
owns(ovid,rubies).
knows(badguy,merlyn).

... but I haven't.