In the PBFT paper the authors say that "The algorithm does not rely on synchrony to provide safety. Therefore, it must rely on synchrony to provide liveness [...] We guarantee liveness, i.e., clients eventually receive replies to their requests, provided at most (n-1)/3 replicas are faulty and delay(t) does not grow faster than t indefinitely. Here, delay(t) is the time between the moment when a message is sent for the first time and t the moment when it is received by its destination (assuming the sender keeps retransmitting the message until it is received)." First of all, what does "The algorithm does not rely on synchrony to provide safety" mean? Moreover, it is cler that the algorithm does rely on a weak synchrony assumption to provide liveness, but the explanation results confusing to me. Is anyone able to explain it with simpler words?
In other words, as it has been proved that there not exixts any deterministic algorithm that solves consensus in asynchronous systems, where non-determinism lies in PBFT? or rather, what are the synchrony assumptions the authors introduce for the PBFT to work?