Fairness Constraints
Fairness constraints are rules added to a model to ensure that if an event is possible, it will eventually occur, preventing the system from ignoring certain processes. In the context of a blockchain protocol, a fairness constraint might guarantee that every transaction will eventually be processed, preventing the network from stalling or censoring specific users.
These constraints are essential for proving liveness properties, as they rule out infinite loops or situations where a process is indefinitely delayed. Without fairness, a model might incorrectly show that a protocol is live when, in reality, it could get stuck.
Applying the right fairness constraints is a critical part of defining a realistic model for verification. It ensures that the formal proof reflects the actual expected behavior of the decentralized system.