Simultaneous Byzantine Agreement
- Simultaneous Byzantine Agreement is a consensus framework where non-Byzantine processes decide in unison within bounded synchronous rounds under adversarial conditions.
- The BA++ protocol employs local view transformations using operators like LM_3 to repair partial faults, effectively restoring classical Byzantine scenarios.
- The framework establishes tight resilience bounds and optimal time trade-offs, extending to models with signed messages and varying synchrony to ensure robust consensus.
Simultaneous Byzantine Agreement denotes a family of agreement tasks in which correct, or more generally non-Byzantine, processes must not only satisfy the usual agreement and validity conditions, but must do so in a synchronized decision pattern: in the classical synchronous setting this means deciding in the same protocol horizon, and in formal treatments it can mean deciding in the same round for a designated indexical set of processes. In the oral-messages synchronous model, the classical transmitter-based Byzantine agreement problem is solvable iff , where is the number of fully Byzantine processes; “Beyond One Third Byzantine Failures” generalizes this to mixed full and partial Byzantine behavior and gives an exact solvability condition together with a simultaneous -round protocol (Wang et al., 2015).
1. Classical specification and the meaning of simultaneity
In the classical synchronous message-passing model, there are processes connected by authenticated point-to-point channels, a distinguished transmitter , and a value that should be agreed upon despite up to Byzantine processes. Deterministic oral-messages Byzantine agreement is solvable iff (equivalently , depending on convention). The standard properties are termination, agreement, and validity; in the formulation used in (Wang et al., 2015), agreement is explicitly the “simultaneous consensus condition,” namely that any two correct processes decide the same value.
The same paper makes the simultaneity implicit in full-information synchronous executions. A -round algorithm is a function on process views, 0, and for every admissible scenario 1 each non-Byzantine process 2 outputs 3. Agreement is therefore a property of the whole round-4 execution prefix, not of independent local stopping times. In this sense, simultaneous Byzantine agreement is the requirement that all relevant processes derive the same decision from their views of the same bounded synchronous execution.
A later epistemic treatment makes this explicit by defining SBA(5) for an indexical set 6 of agents. Its specification consists of Unique-Decision, Simultaneous-Agreement(7)—if 8 decides 9 at time 0, then every 1 decides 2 at time 3—and Validity(4). The same work distinguishes sharply between the set 5 of processes that are nonfaulty in the entire run and the set 6 of processes that are active, or not yet failed, up to a given time (Meyden, 5 Aug 2025).
2. Partial Byzantine failures and the exact resilience frontier
The most direct technical generalization of simultaneous Byzantine agreement is the 7-system of (Wang et al., 2015), which augments up to 8 fully Byzantine processes with up to 9 partially faulty processes, each able in every round to corrupt at most 0 outgoing links. A partially faulty process computes correctly, but the adversary may choose a changing subset of at most 1 recipients and send them arbitrary values.
| Parameter | Meaning |
|---|---|
| 2 | total number of processes |
| 3 | maximum number of fully Byzantine processes |
| 4 | maximum number of partially faulty processes |
| 5 | per partially faulty process, maximum corrupted outgoing links per round |
The crucial distinction is that a fully Byzantine process may corrupt all outgoing messages in every round, whereas a 6-faulty process must behave correctly on at least 7 links per round. This asymmetry is the source of the improved resilience bound.
The exact theorem is
8
When 9, this collapses to the classical 0. The same result is accompanied by matching impossibility bounds: no algorithm exists if 1 or 2. The formulation therefore gives a tight characterization of how much partial link corruption can be absorbed in addition to fully Byzantine behavior.
The quantitative interpretation is noteworthy. With 3 and 4, the model tolerates almost half the processes being partially faulty. If one keeps nearly the classical fully Byzantine threshold 5, one can still tolerate a positive fraction of additional partial faults; the paper states that the system could tolerate a 6 fraction of 7-faulty processes in addition to 8 Byzantine processes. This suggests that the classical one-third bound is a property of unrestricted per-node equivocation, not of arbitrary mixtures of weaker misbehavior.
3. BA++ and the repair of partial faults into a classical scenario
The algorithmic contribution of (Wang et al., 2015) is BA++, a modular synchronous protocol that restores the classical setting from partially corrupted views and then invokes Lamport’s oral-messages algorithm. Its structure has three layers: 9 rounds of full-information flooding, a local View-Transform, and a classical 0-round BA algorithm on the transformed view.
The core repair primitive is the three-round Local-Majority operator 1. For a path prefix 2, a process examines, for each intermediate 3, the multiset of values reported one level deeper. If at least 4 of these coincide on a value 5, that 6 is inserted into a multiset 7; if more than half of 8 agree on some 9, 0 outputs 1, otherwise 2. Under the resilience condition
3
4 reconstructs the correct prefix value whenever the last process in the prefix is non-Byzantine.
The View-Transform 5 applies 6 bottom-up through process 7’s 8-round view. It iterates from depth 9 to 0, replacing higher-level entries by locally repaired values and then discarding the two lowest levels that were consumed by the repair. The associated Scenario-Transform 1 is the proof device showing that all non-Byzantine local transforms are coherent: after transformation, there exists a single 2-scenario whose views are exactly the transformed views of the non-Byzantine processes.
BA++ then simply computes 3 and runs Lamport’s 4 on 5. Because 6 is a classical scenario with only the original Byzantine set 7, the classical correctness proof applies unchanged. The result is a 8-round synchronous protocol in which every non-Byzantine process decides at the end of the same fixed round bound. In this model, “simultaneous Byzantine agreement” is therefore realized by a repair transformation: partial faults are filtered out locally until the remaining execution is indistinguishable from a standard synchronous Byzantine agreement instance (Wang et al., 2015).
4. Optimality, time bounds, and extensions of the partial-failure model
The resilience condition above is tight not only combinatorially but also algorithmically. The base construction uses 9 rounds because the View-Transform consumes three levels of full-information history. When 0, the paper replaces 1 by a two-round local-majority operator 2, reducing the total to 3 rounds. This yields an explicit time-versus-redundancy trade-off: larger 4 relative to 5 and 6 makes faster repair possible (Wang et al., 2015).
The matching lower bounds are also parameter-sensitive. If 7, Byzantine agreement requires at least 8 rounds. In some regimes 9 rounds are necessary; for example, when 0 but partial faults are present and
1
there is no two-round BA algorithm for an 2-system. BA++ is therefore time-optimal up to the one-round gap already identified in the improved 3 regime.
The same paper extends the model in two orthogonal directions. With signed messages, the solvability condition becomes
4
a direct analogue of the classical 5 signed-messages threshold. For eventually synchronous static 6-systems, the paper introduces reliable-broadcast primitives 7 and 8 and proves that BA is solvable iff the same resilience condition as in synchrony holds: 9 This suggests that the bound is intrinsic to the fault model rather than to strict round synchrony.
A related partially synchronous line of work takes a different route. Oper transforms any deterministic synchronous BA algorithm 00 into a deterministic partially synchronous BA algorithm 01 while preserving resilience 02 and worst-case per-process bit complexity up to constant factors. Its Crux module has a synchronicity property: if all correct processes enter a view within 03 after GST and do not abandon it before 04, then every correct process decides by 05. In this setting, simultaneity becomes bounded-skew completion of a common view rather than exact round coincidence (Civit et al., 2024).
5. Timing models: exact simultaneity, bounded skew, and asynchronous co-termination
In a synchronous authenticated model with signatures, simultaneity can be sharpened considerably. A protocol of Abraham, Gueta, Malkhi, Reiter, and Spiegelman operates with 06, uses a four-round synod iteration (status, propose, commit, notify), and solves synchronous authenticated Byzantine agreement in expected 8 rounds; its state-machine replication variant commits a slot every 3 rounds in the common case. The central safety device is a post-commit quorum of size 07, created by synchrony after a commit certificate of size 08, which forces future proposals to remain consistent with the committed value (Abraham et al., 2017).
Once strict synchrony is dropped, exact simultaneous decision is no longer the right abstraction. In full asynchrony, the strongest attainable coordination is probabilistic eventual co-termination. An almost-surely terminating asynchronous Byzantine agreement protocol with optimal resilience 09 and polynomial expected complexity was obtained via shunning verifiable secret sharing: either a VSS instance behaves correctly or some faulty process becomes permanently ignored by a nonfaulty one in future sessions. This yields almost-sure termination but not exact real-time simultaneity (0808.1505).
Later asynchronous work reduced communication while retaining near-synchronous decision clustering in a probabilistic sense. A VRF-based asynchronous BA protocol against a delayed-adaptive adversary achieves 10 expected word complexity and 11 expected time. Its analysis shows that if any correct process first decides in round 12, then with high probability every other correct process either decides in round 13 with the same value or synchronizes its estimate and decides in round 14. This is not simultaneous agreement in the strict synchronous sense, but it is almost simultaneous in the operational sense of tightly clustered decisions (Cohen et al., 2020).
A useful misconception to avoid is therefore that “simultaneous” always means identical physical decision time. The literature represented here uses at least three distinct notions: exact fixed-round decision in synchronous systems, bounded-skew completion after GST in partial synchrony, and one-round-clustered or almost-sure co-termination in asynchrony.
6. Richer decision objects and formal perspectives
The scalar BA formulation is only one endpoint of the subject. A topological study of Byzantine 15-set agreement shows that the protocol complex of a Byzantine synchronous system can remain 16-connected for up to 17 rounds, implying that 18 rounds are necessary for Byzantine 19-set agreement. For 20, this recovers the classical 21-round lower bound for Byzantine agreement. This provides a formal route from simultaneous consensus on one value to simultaneous limitation of the system to at most 22 decision values (Mendes et al., 2015).
Another axis of generalization is Byzantine lattice agreement. Here correct processes need not decide the same lattice element; instead their decisions must be comparable, each decision must include the process’s own proposal, and the join of the decisions is bounded by correct inputs plus at most 23 Byzantine contributions. In synchronous systems, one paper gives algorithms in 24 rounds and 25 rounds with resilience 26, while another gives a synchronous 27-round algorithm with signatures for 28, a no-signature variant for 29, and a transformer from lattice agreement to synchronous Generalised Lattice Agreement. This replaces exact equality by a chain condition, which is a weaker but often more scalable form of simultaneous agreement for sets, snapshots, and commutative replicated state machines (Zheng et al., 2019, Luna et al., 2020).
A different generalization is multidimensional Byzantine agreement. In the MBA protocol, each process proposes a vector 30, and the protocol decides componentwise, outputting either a widely supported value or a special value 31 for irreconcilable disagreement in each coordinate. The design combines a Multidimensional Graded Consensus with a Multidimensional Binary Byzantine Agreement, halts with probability 1, and assumes 32. The number of communication steps is upper-bounded by 33, where 34 is the number of ambiguous components and 35 the honest-node ratio. This is simultaneous Byzantine agreement in the literal sense of agreeing on many coordinates at once (Flamini et al., 2021).
The most abstract perspective is epistemic. The 2025 study formalizes SBA(36) and shows that the natural knowledge-based program decides exactly when agent 37 satisfies
38
that is, when 39 believes as a nonfaulty process that it is common belief among the nonfaulty processes that some initial value 40 exists. Implemented relative to a fixed information-exchange protocol and failure model, this yields an SBA protocol that is optimal among all protocols using the same exchange; under stronger conditions on how actions are hidden from the exchange, it is even an optimum. This recasts simultaneous Byzantine agreement as an epistemic threshold phenomenon: decision is justified exactly when common belief has become strong enough to support same-round action (Meyden, 5 Aug 2025).