Example Navigation Problem
These predicates can be used for problems such as:
A helicopter starts at Austin and flies 80000 meters at bearing 20 to pick up a clue; then it flies 100000 meters NW and picks up a treasure. Find the range and bearing to take the treasure to Dallas.
This problem might be nontrivial for a human programmer, even with documentation of the subroutine library. The resulting program is longer than the logic specification.