Every NL machine reduces to PATH in log space.
Sipser Theorem 8.25: PATH is NL-complete under log-space reductions. We show NL-hardness by reducing every NL machine's acceptance question to PATH.
For an NL machine M on input w, build a directed graph whose vertices are M's configurations on w (state, head positions, work-tape contents). Add an edge C → C' iff C' follows C by one application of M's transition relation.
M accepts w ⇔ there is a directed path in GM,w from the start configuration to an accepting configuration. That's exactly PATH.
A configuration consists of: state (constant), input head position (O(log n) bits), work-tape head position (O(log n)), work-tape contents (O(log n)). Total: O(log n) bits per configuration. So at most 2O(log n) = poly(n) distinct configurations.
The reduction outputs the graph (V, E). It doesn't store GM,w in memory — it generates vertices and edges on demand. Given a configuration C (O(log n) bits to write), iterate possible next configurations and check whether each follows by a δ-step. Each check is O(log n) space. Total reduction: log-space.
Combining: every NL problem reduces to PATH via a log-space many-one reduction; PATH ∈ NL; therefore PATH is NL-complete. Any other NL problem becomes NL-complete iff it has a similar log-space reduction from PATH.
Sipser: Theorem 8.25 (PATH is NL-complete). Lecture notes: Module 7 slide 3. Companion problems: P42 (PATH in NL), P44 (NL = coNL), P41 (log space).