Ресинхронизация схемы: инкрементный подход: различия между версиями

Перейти к навигации Перейти к поиску
Строка 58: Строка 58:
     r, t := 0, d
     r, t := 0, d
     do <math>\{ P0 \and P1 \} \;</math>
     do <math>\{ P0 \and P1 \} \;</math>
:P2 ! update t
    <math> \neg P2 \to update \; t</math>
:P3 ! update r odfP0 Л P1 Л P2 A P3g :
    <math> \neg P3 \to update \; r</math>
The first command in the loop can be refined as
    do <math>\{ P0 \and P1 \and P2 \and P3 \} \;</math>.
9(u; V) 2 E: r[u] - r[v] = w[u; v] A t[v] - t[u] < d[v]
 
!t[v]:=t[u] + d[v]:
 
Первую команду цикла можно переписать в виде  <math>\exist (u, v) \in E: r[u] - r[v] = w[u, v] \and t[v] - t[u] < d[v] \to t[v] := t[u] + d[v] \;</math>.


Фактически это релаксация алгоритма Беллмана-Форда для вычисления самых длинных путей.
Фактически это релаксация алгоритма Беллмана-Форда для вычисления самых длинных путей.
4430

правок

Навигация