2016 International Conference on Frontiers of Information Technology (FIT) (2016)
Dec. 19, 2016 to Dec. 21, 2016
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/FIT.2016.043
Analysis and finding errors in concurrent software/system particularly when it is used in safety or industrial critical systems is gaining more and more attention. Software testing is an important technique for finding errors, however for concurrent algorithms, testing often does not ensure correctness or absence of errors. The model checker SPIN is widely and successfully used to formally verify the correctness requirements for systems of concurrently executing processes. Software/system model is first developed in PROMELA modeling language and SPIN model checker accepts correctness claims that are declared as linear temporal logic (LTL) formulas. In this article, two famous concurrent algorithms for mutual exclusion problem (Bakery algorithm and Dekker algorithm) are analyzed and formally verified in SPIN. Mutual exclusion for both algorithms is verified with in-line assertion and as correctness claims with the help of LTL formulas. Furthermore, safety and liveness properties of both algorithms are verified with LTL formulas.
Computational modeling, Algorithm design and analysis, Software algorithms, Safety, Model checking, Automata, Mathematical model
M. S. Nawaz, H. Ali and M. I. Lali, "Concurrent Algorithms in SPIN Model Checker," 2016 International Conference on Frontiers of Information Technology (FIT), Islamabad, Pakistan, 2016, pp. 193-198.