Abstract
Among existing techniques used to improve software reliability symbolic execution plays an important role. Symbolic testing is potentially more effective than numeric testing, since a symbolic execution represents a class of numeric executions. Symbolic execution can also be used to generate the necessary verification conditions that ensure program (partial) correctness, by adding to the program first order predicates describing its logical properties. Several tools have been built to provide environments in which symbolic execution can be performed. However all of these tools are quite unsatisfactory when dealing with programs that use arrays and/or pointers.In this paper we present a tool (SYMBAD) that provides an environment in which it is possible to perform both symbolic testing and verification on sequential Ada components. Furthermore SYMBAD can be used to find out which restrictions must be placed on input variables of a program in order to execute a particular path.SYMBAD has been designed and implemented at Dipartimento di Elettronica of Politecnico di Milano; it runs under Unix operating system and it is written in C and Lisp.The main SYMBAD features are presented; problems encountered in dealing with arrays and pointers and the adopted solutions are discussed; finally an example of a SYMBAD session is reported.
Talk to us
Join us for a 30 min session where you can share your feedback and ask us any queries you have
Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.