Not sure why that couldn't be relational.
I never really use the defne, denfa, fne macros
The most obvious problem I struggle with is that the last clause would require something like a (not (pred ?x)) which I don't know how to write in core.logic
(not (pred ?x))