DETECTING UNREALIZABILITY OF DISTRIBUTED FAULT-TOLERANT SYSTEMS

被引:0
作者
Finkbeiner, Bernd [1 ]
Tentrup, Leander [1 ]
机构
[1] Univ Saarland, D-66123 Saarbrucken, Germany
关键词
Distributed Synthesis; Fault-tolerance; Coordination Logic;
D O I
暂无
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Writing formal specifications for distributed systems is difficult. Even simple consistency requirements often turn out to be unrealizable because of the complicated information flow in the distributed system: not all information is available in every component, and information transmitted from other components may arrive with a delay or not at all, especially in the presence of faults. The problem of checking the distributed realizability of a temporal specification is, in general, undecidable. Semi-algorithms for synthesis, such as bounded synthesis, are only useful in the positive case, where they construct an implementation for a realizable specification, but not in the negative case: if the specification is unrealizable, the search for the implementation never terminates. In this paper, we introduce counterexamples to distributed realizability and present a method for the detection of such counterexamples for specifications given in linear-time temporal logic (LTL). A counterexample consists of a set of paths, each representing a different sequence of inputs from the environment, such that, no matter how the components are implemented, the specification is violated on at least one of these paths. We present a method for finding such counterexamples both for the classic distributed realizability problem and for the fault-tolerant realizability problem. Our method considers, incrementally, larger and larger sets of paths until a counterexample is found. For safety specifications in weakly ordered architectures we obtain a decision procedure, while counterexamples for full LTL and arbitrary architectures may consist of infinitely many paths. Experimental results, obtained with a QBF-based prototype implementation, show that our method finds simple errors very quickly, and even problems with high combinatorial complexity, like the Byzantine Generals' Problem, are tractable.
引用
收藏
页数:31
相关论文
共 30 条
  • [1] Alur R., 2001, ACM T COMPUT LOG, V2, P388, DOI [DOI 10.1145/377978.377990, 10.1145/377978.377990.]
  • [2] [Anonymous], ICTL
  • [3] [Anonymous], LNCS
  • [4] Synthesis of fault-tolerant concurrent programs
    Attie, PC
    Arora, A
    Emerson, EA
    [J]. ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS, 2004, 26 (01): : 125 - 185
  • [5] Biere A, 2011, LECT NOTES ARTIF INT, V6803, P101, DOI 10.1007/978-3-642-22438-6_10
  • [6] Brewer E. A., 2000, P ANN ACM S PRINC DI, P7, DOI [10.1145/343477.343502, DOI 10.1145/343477.343502]
  • [7] Buchi J, 1964, J Symb Log, V29, P210
  • [8] Chatterjee K, 2008, LECT NOTES COMPUT SC, V5201, P147, DOI 10.1007/978-3-540-85361-9_14
  • [9] Dimitrova R, 2009, LECT NOTES COMPUT SC, V5799, P321, DOI 10.1007/978-3-642-04761-9_24
  • [10] Dolev Danny, 1986, LNCS, V448, P42