{[ promptMessage ]}

Bookmark it

{[ promptMessage ]}

Patrick Cousot_Abstract Interpretation Based Formal Methods and Future Challenges

Patrick Cousot_Abstract Interpretation Based Formal Methods and Future Challenges

Info icon This preview shows pages 1–3. Sign up to view the full content.

View Full Document Right Arrow Icon
Abstract Interpretation Based Formal Methods and Future Challenges Patrick Cousot École normale supérieure, Département d’informatique, 45 rue d’Ulm, 75230 Paris cedex 05, France [email protected] http://www.di.ens.fr/˜cousot/ Abstract. In order to contribute to the solution of the software reliabil- ity problem, tools have been designed to analyze statically the run-time behavior of programs. Because the correctness problem is undecidable, some form of approximation is needed. The purpose of abstract interpre- tation is to formalize this idea of approximation . We illustrate informally the application of abstraction to the semantics of programming languages as well as to static program analysis . The main point is that in order to reason or compute about a complex system, some information must be lost, that is the observation of executions must be either partial or at a high level of abstraction. A few challenges for static program analysis by abstract interpretation are finally briefly discussed. The electronic version of this paper includes a comparison with other formal methods: typing , model-checking and deductive methods . 1 Introductory Motivations The evolution of hardware by a factor of 10 6 over the past 25 years has lead to the explosion of the size of programs in similar proportions. The scope of application of very large programs (from 1 to 40 millions of lines) is likely to widen rapidly in the next decade. Such big programs will have to be designed at a reasonable cost and then modified and maintained during their lifetime (which is often over 20 years). The size and efficiency of the programming and maintenance teams in charge of their design and follow-up cannot grow in similar proportions. At a not so uncommon (and often optimistic) rate of one bug per thousand lines such huge programs might rapidly become hardly manageable in particular for safety critical systems. Therefore in the next 10 years, the software reliability problem is likely to become a major concern and challenge to modern highly computer-dependent societies. In the past decade a lot of progress has been made both on thinking/method- ological tools (to enhance the human intellectual ability) to cope with complex software systems and mechanical tools (using the computer) to help the pro- grammer to reason about programs. Mechanical tools for computer aided program verification started by execut- ing or simulating the program in as much as possible environments. However
Image of page 1

Info icon This preview has intentionally blurred sections. Sign up to view the full version.

View Full Document Right Arrow Icon
132 Patrick Cousot debugging of compiled code or simulation of a model of the source program hardly scale up and often offer a low coverage of dynamic program behavior. Formal program verification methods attempt to mechanically prove that program execution is correct in all specified environments. This includes deduc- tive methods , model checking , program typing and static program analysis .
Image of page 2
Image of page 3
This is the end of the preview. Sign up to access the rest of the document.

{[ snackBarMessage ]}

What students are saying

  • Left Quote Icon

    As a current student on this bumpy collegiate pathway, I stumbled upon Course Hero, where I can find study resources for nearly all my courses, get online help from tutors 24/7, and even share my old projects, papers, and lecture notes with other students.

    Student Picture

    Kiran Temple University Fox School of Business ‘17, Course Hero Intern

  • Left Quote Icon

    I cannot even describe how much Course Hero helped me this summer. It’s truly become something I can always rely on and help me. In the end, I was not only able to survive summer classes, but I was able to thrive thanks to Course Hero.

    Student Picture

    Dana University of Pennsylvania ‘17, Course Hero Intern

  • Left Quote Icon

    The ability to access any university’s resources through Course Hero proved invaluable in my case. I was behind on Tulane coursework and actually used UCLA’s materials to help me move forward and get everything together on time.

    Student Picture

    Jill Tulane University ‘16, Course Hero Intern