One rule, many questions

The same reach predicate answers questions in every direction:

We describe what a path is, once, and the engine searches in the direction the question needs.