Du-path
A du-path is a path from a definition of a variable to a use of that variable where the path is def-clear (the variable is not redefined along the way, except possibly at the last node).
There are two cases — essentially, a c-use or p-use at the last node, with no re-definition on the path except maybe at the last node, and no repeating:
- c-use of v at node n_k, and P is a def-clear simple path with respect to v (i.e., at most a single loop traversal).
- p-use of v on edge n_j → n_k, and ⟨n_1, n_2, …, n_j⟩ is a def-clear loop-free path (cycle free).
Examples:

