Definition
A protocol run by multiple nodes in a distributed system that enables them to agree on a single value or sequence of values despite partial failures and timing uncertainty, subject to the assumptions of the system model.

Principle

Principle
Combine proposal, voting/quorum rules, and state replication (often with leader election, log replication, or quorum certificates) to ensure safety (no two correct nodes decide differently) and liveness (progress under the model's timing and failure assumptions).

Demonstration

Demonstration
A replicated key‑value service uses a consensus instance to commit a client write: a leader proposes the update, replicas accept and append it to their logs, and once a quorum acknowledges, the update is decided and applied to each replica in the same order.

Misapplication

Misapplication
Using a consensus protocol without verifying model assumptions (e.g., assuming synchrony when the network can be arbitrarily delayed) or invoking consensus for operations that do not require global agreement, incurring unnecessary latency and complexity.

Consequence

Consequence
Correctly used, consensus provides a shared linearized order of operations across nodes, enabling consistent replication, coordinated configuration changes, and fault-tolerant services; it typically increases latency and requires quorum participation.

Reversal

Reversal
Absence of consensus: replicas may diverge, committing conflicting values independently and yielding inconsistent views across clients; coordination falls back to ad hoc or weaker guarantees.

Boundary

Boundary
Applies to distributed systems seeking agreement on values under specified failure models (crash-stop, Byzantine) and timing assumptions (synchronous, partially synchronous, asynchronous). Not a universal solution: feasibility and guarantees depend on these assumptions and known impossibility results in pure asynchrony without failure detectors.

Semantic Tension

Semantic Tension
Tension between safety and liveness under different failure/timing assumptions: some protocols prioritize safety at the expense of progress under extreme conditions; there is also tension between strong consensus (total order, single leader) and lighter coordination primitives (atomic broadcast, leaderless quorums) that trade simplicity, throughput, and availability.

Synthesis

Synthesis
A consensus algorithm is a coordination protocol that, under stated assumptions, aligns replicas on a single agreed value or ordered sequence by combining proposal, voting/quorum, and replication mechanisms to achieve consistent, fault‑tolerant agreement.