 Suppose the statement is
false
 Then there are some vertices
where
when (at the moment that)
a vertex u is
included into the
ReachedSet:
 Let x = the
first of these vertices
that was included into
the ReachSet
In other words:
 x = the
first vertex
such that
when (at the moment that)
vertex x is
included into the
ReachedSet:
 This implies that
all previous vertices z that
were included into the
ReachedSet, that:

 Let's look at the moment
when this node x is
included into the
ReachedSet
Denote:
 The P be
the (real) shortest path
from S to x
 Let z = the
first vertex
that is not in the "ReachSet"
and is
on the shortest path
 Let y = the
predecessor vertex
of z on the
shortest path P

Graphical depiction of the situation:
 We can conclude the following:
 D(S,y) = d(s,y)
....... (1)
(The min. distance S ⇒ y
computed
by the algorithm = actual min. distance
S ⇒ y because
y in
included before x)
 D(S,z) = D(S,y) + linkcost(y,z)
= d(s,y) + linkcost(y,z)
....... (2)
 D(S,x) ≤ D(S,z)
....... (3)
(Because the next vertex included
by the algorithm is
vertex x)

 Improtant fact:
 We can now conclude that:
D(S,x) ≤ D(S,z) ............. (3)
= d(s,y) + linkcost(y,z) (Equation (2))
≤ d(S,y) + linkcost(y,z) + d(z,x)
= d(S,x)

 Ths result is a contradiction
to the assumption:
Therefore, the assumption that
"the statement false"
is false
The statement must be true
