sからt、への最短経路を考えます。負のウェイトサイクルがない場合、最短パスで頂点を繰り返すことは常に悪い考えです(または、少なくとも頂点を繰り返さない最短パスがあるため)このパスは最大でエッジで構成されます。。| V | − 1s 、v1、v2、… 、vk、t| V| −1
ラウンド1では、エッジが緩和されることがわかっているため、このラウンドの後、の距離の推定値は正しくなります。この時点でが何であるかわからないことに注意してください。ただし、すべてのエッジを緩和しているため、このエッジも緩和している必要があります。ラウンド2では、ある時点でリラックスします。またはが何であるかはまだませんが、距離の推定値が正しいことはわかっています。v 1 v 1(v 1、v 2)v 1 v 2(s 、v1)v1v1(v1、v2)v1v2
これを繰り返し、いくつかのラウンド後、私たちはリラックスしている(VのK、T )された後のために距離推定値、tは正しいです。アルゴリズム全体が終了するまでkが何であるかはわかりませんが、ある時点で発生することがわかっています(負のウェイトサイクルがないと仮定)。k + 1(vk,t)tk
だから、重要な観察は、ラウンド後のことである、I番目のノードの最短経路の正しい値への距離推定値が設定されていなければなりません。パスはせいぜい| V | − 1辺の長さ、| V | −この最短経路を見つけるには1ラウンドで十分です。もし| V | ラウンドはまだ何かを変更し、それから奇妙なことが起こっています。すべてのパスはすでに最終値に「設定」されているはずなので、負のウェイトサイクルが存在する必要があります。ii|V|−1| V| −1| V|