Let be the weight of a shortest -path, and let be the predecessor of on the chosen . Its prefix to must also be shortest: a cheaper prefix followed by the final edge would give a cheaper walk to , and cycle erasure in minimum-weight walks would produce a cheaper path because every edge weight is positive. Therefore
Following predecessor arrows strictly decreases , so cannot revisit a vertex. Since each nonroot vertex has a predecessor, finiteness forces every predecessor chain to end at . Thus is connected.
The edges are distinct: if two vertices selected the same undirected edge, each would be the other's predecessor, contradicting strict decrease. Hence has exactly edges. A finite connected graph with this edge count is a tree. This proves that positive-weight shortest-path predecessors form a tree, without requiring the initially chosen paths to be mutually consistent.