The use of automated theorem proving for error analysis and removal in safety critical embedded system specifications

As embedded systems increase in complexity, more and more functionality is being migrated to software. Much of the migrated software is critical to the well-being of the system and users. Thus, methods to produce high quality software are needed. Software development today focuses on taking requirements and producing software as fast as possible. Traditional methods have been augmented or replaced with new, agile methods (like SCRUM) designed to produce bits of code as quickly and cheaply as possible. Unfortunately many of these methods ignore standard testing procedures and rely on reported errors to drive corrections in future releases. Traditional methods require exhaustive testing to eliminate a majority of errors. Both processes are time intensive and in the long run cost the project more to correct errors. This paper demonstrates that errors in requirements and design can be discovered and eliminated prior to implementation with the use of automated theorem provers for formal methods. This illustration is key to saving time and costs in the software development life cycle.

[1]  Philip A. Wilsey,et al.  Error analysis and reliability metrics for software in safety critical systems , 2016, 2016 IEEE 59th International Midwest Symposium on Circuits and Systems (MWSCAS).

[2]  Jan van Katwijk,et al.  Application and benefits of formal methods in software development , 1992, Softw. Eng. J..

[3]  Philip Wilsey,et al.  Formal methods for safety critical system specification , 2014, 2014 IEEE 57th International Midwest Symposium on Circuits and Systems (MWSCAS).

[4]  Victor R. Basili,et al.  Software errors and complexity: an empirical investigation , 1993 .

[5]  Maria Teresa Speziale Solutions to exercises chapters 6 - 9 , 2012 .

[6]  John D. Musa,et al.  A theory of software reliability and its application , 1975, IEEE Transactions on Software Engineering.

[7]  Jonathan Jacky The Way of Z: Safety-critical protection system , 1996 .

[8]  M. Kaufman Some Key Research Problems in Automated Theorem Proving for Hardware and Software Verification , 2004 .

[9]  Klaus Havelund,et al.  Model checking programs , 2000, Proceedings ASE 2000. Fifteenth IEEE International Conference on Automated Software Engineering.

[10]  D. Drake,et al.  Reliability theory applied to software testing , 1987, FJCC.

[11]  Edmund M. Clarke,et al.  Formal Methods: State of the Art and Future Directions Working Group Members , 1996 .

[12]  Shunji Osaki Stochastic Models in Reliability and Maintenance , 2002 .

[13]  Brian Hutchison,et al.  Getting started. , 2019, Healthcare policy = Politiques de sante.

[14]  E. Vianello,et al.  Bio-Inspired Stochastic Computing Using Binary CBRAM Synapses , 2013, IEEE Transactions on Electron Devices.

[15]  Charles G. Morgan,et al.  Methods for Automated Theorem Proving in Nonclassical Logics , 1976, IEEE Transactions on Computers.

[16]  Anne Elisabeth Haxthausen,et al.  An Introduction to Formal Methods for the Development of Safety-critical Applications , 2010 .

[17]  Miroslav Popovic,et al.  A formal software verification concept based on automated theorem proving and reverse engineering , 2002, Proceedings Ninth Annual IEEE International Conference and Workshop on the Engineering of Computer-Based Systems.

[18]  Harald Ganzinger,et al.  Chaining techniques for automated theorem proving in many-valued logics , 2000, Proceedings 30th IEEE International Symposium on Multiple-Valued Logic (ISMVL 2000).

[19]  John M. Rushby,et al.  Harnessing Disruptive Innovation in Formal Verification , 2006, Fourth IEEE International Conference on Software Engineering and Formal Methods (SEFM'06).

[20]  Armin Alaghi,et al.  The Logic of Random Pulses: Stochastic Computing , 2015 .

[21]  尾崎 俊治,et al.  Stochastic models in reliability and maintenance , 2002 .

[22]  Victor R. Basili,et al.  Software errors and complexity: an empirical investigation0 , 1984, CACM.

[23]  A. A. Larionov,et al.  Theorem proving software, based on method of positively-constructed formulae , 2011, 2011 Proceedings of the 34th International Convention MIPRO.

[24]  Jonathan P. Bowen,et al.  Safety-critical methods and systems , formal standards , 2004 .