The example of Disjoint patterns for Parlog looks bad. What about t(X,q,Y) ? This will fail the pattern test, but should lead to evaluation of tree_search on X and Y.