Алгоритм FloodSet в графе - Распределенные вычисления - PullRequest
0 голосов
/ 08 января 2020

Я пытаюсь решить Упражнение 6.5 из Распределенные алгоритмы Нэнси А. Линч

Рассмотрим алгоритм FloodSet для f сбоев. Предположим, что вместо выполнения f + 1 раундов алгоритм выполняется только для f раундов с тем же правилом принятия решений. Опишите конкретное исполнение, в котором нарушаются требования к корректности.

FloodSet Properties:
1)Agreement
If any correct process believes that V is the consensus value, then all correct processes believe V is the consensus value.
2)Validity  
If V is the consensus value, then some process proposed V.
3)Termination
Each process decides some value V.

Правило принятия решения: если W содержит одно значение, то мы определяем это значение, в противном случае решаем предварительно согласованное значение v0.

Я попробовал пример:

Let Wp_r denote the value of Wp at the beginning of round r. The initial value of process 
p1 is 0 and the initial value of all other processes is 1.
In each round i, 1 ≤ i ≤ f, process pi sends Wpi_i and crashes. This message is
received only by process pi+1. Thus, at the end of round f, we have Wpf+1_f+1= {0,1}, while 
for pf+2 we have Wpf+1_f+1= {1}.
Therefore, pf+1 decides v0, while pf+2 decides 1. 

Соглашение нарушено. Как я могу изменить свой пример, чтобы другие два свойства (если возможно) были нарушены?

...