Safety property

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

In distributed computing, safety properties informally require that "something bad will never happen" in a distributed system or distributed algorithm.[1][2] Unlike liveness properties, safety properties can be violated by a finite execution of a distributed system. In a database system, a promise to never return data with null fields is an example of a safety guarantee. All properties can be expressed as the intersection of safety and liveness properties.[3]


  1. ^ Rodrigues, Christian Cachin; Rachid Guerraoui; Luís (2010). Introduction to reliable and secure distributed programming (2. ed.). Berlin: Springer Berlin. pp. 22–24. ISBN 978-3-642-15259-7.
  2. ^ Lamport, L. (1977). "Proving the Correctness of Multiprocess Programs". IEEE Transactions on Software Engineering (2): 125–143. CiteSeerX doi:10.1109/TSE.1977.229904.
  3. ^ Alpern, B.; Schneider, F. B. (1987). "Recognizing safety and liveness". Distributed Computing. 2 (3): 117. CiteSeerX doi:10.1007/BF01782772.