Cargando…

Towards efficient verification of population protocols

Population protocols are a well established model of computation by anonymous, identical finite-state agents. A protocol is well-specified if from every initial configuration, all fair executions of the protocol reach a common consensus. The central verification question for population protocols is...

Descripción completa

Detalles Bibliográficos
Autores principales: Blondin, Michael, Esparza, Javier, Jaax, Stefan, Meyer, Philipp J.
Formato: Online Artículo Texto
Lenguaje:English
Publicado: Springer US 2021
Materias:
Acceso en línea:https://www.ncbi.nlm.nih.gov/pmc/articles/PMC8636416/
https://www.ncbi.nlm.nih.gov/pubmed/34866798
http://dx.doi.org/10.1007/s10703-021-00367-3
Descripción
Sumario:Population protocols are a well established model of computation by anonymous, identical finite-state agents. A protocol is well-specified if from every initial configuration, all fair executions of the protocol reach a common consensus. The central verification question for population protocols is the well-specification problem: deciding if a given protocol is well-specified. Esparza et al. have recently shown that this problem is decidable, but with very high complexity: it is at least as hard as the Petri net reachability problem, which is TOWER-hard, and for which only algorithms of non-primitive recursive complexity are currently known. In this paper we introduce the class [Formula: see text] of well-specified strongly-silent protocols and we prove that it is suitable for automatic verification. More precisely, we show that [Formula: see text] has the same computational power as general well-specified protocols, and captures standard protocols from the literature. Moreover, we show that the membership and correctness problems for [Formula: see text] reduce to solving boolean combinations of linear constraints over [Formula: see text] . This allowed us to develop the first software able to automatically prove correctness for all of the infinitely many possible inputs.