TY - GEN
T1 - On composing and proving the correctness of reactive behavior
AU - Harel, David
AU - Kantor, Amir
AU - Katz, Guy
AU - Marron, Assaf
AU - Mizrahi, Lior
AU - Weiss, Gera
PY - 2013
Y1 - 2013
N2 - We present a method and a tool for composing a reactive system and for accompanying the development and documentation process with a proof of its correctness. The approach is based on behavioral programming (BP) and the Z3 SMT solver. We show how program verification can be automated and streamlined by combining properties of individual modules, specified and verified separately, with application-independent specifications both of the BP semantics and of general theories. The method may yield an exponential acceleration of the verification process when compared with model-checking the composite application. We show that formalization of properties of independent modules in preparation for the correctness proofs can be useful as documentation for future development. We view this work as a further step towards making formal correctness proofs standard practice in the development of reactive systems, and carried out by programmers at large.
AB - We present a method and a tool for composing a reactive system and for accompanying the development and documentation process with a proof of its correctness. The approach is based on behavioral programming (BP) and the Z3 SMT solver. We show how program verification can be automated and streamlined by combining properties of individual modules, specified and verified separately, with application-independent specifications both of the BP semantics and of general theories. The method may yield an exponential acceleration of the verification process when compared with model-checking the composite application. We show that formalization of properties of independent modules in preparation for the correctness proofs can be useful as documentation for future development. We view this work as a further step towards making formal correctness proofs standard practice in the development of reactive systems, and carried out by programmers at large.
UR - http://www.scopus.com/inward/record.url?scp=84892650841&partnerID=8YFLogxK
U2 - 10.1109/EMSOFT.2013.6658591
DO - 10.1109/EMSOFT.2013.6658591
M3 - ???researchoutput.researchoutputtypes.contributiontobookanthology.conference???
AN - SCOPUS:84892650841
SN - 9781479914432
T3 - 2013 Proceedings of the International Conference on Embedded Software, EMSOFT 2013
BT - 2013 Proceedings of the International Conference on Embedded Software, EMSOFT 2013
PB - IEEE Computer Society
T2 - 13th International Conference on Embedded Software, EMSOFT 2013
Y2 - 29 September 2013 through 4 October 2013
ER -