https://www.dagstuhl.de/20251

June 14 – 19 , 2020, Dagstuhl Seminar 20251

Theoretical Advances and Emerging Applications in Abstract Interpretation

Organizers

Arie Gurfinkel (University of Waterloo, CA)
Francesco Logozzo (Facebook – Seattle, US)
Isabella Mastroeni (University of Verona, IT)
Antoine Miné (Sorbonne University – Paris, FR)
Peter Müller (ETH Zürich, CH)

For support, please contact

Annette Beyer for administrative matters

Shida Kunz for scientific matters

Motivation

Abstract Interpretation has been introduced in the late 70s as a general theory to approximate the possible behaviors of computer programs. Abstract Interpretation has since evolved into a very general theory to describe and compare formal semantics of programs and systems.

Abstract Interpretation introduces a formal notion of approximation and rules to develop and design static program analyzers. Such analyzers run fully automatically (without user intervention), directly on the source code (not a model developed separately), and reason at an abstract level that forgets about irrelevant details to achieve an efficient analysis. Abstract Interpretation provides mathematical tools to design abstractions that are sound by construction: Despite unavoidable loss of precision (incompleteness) caused by abstractions, analysis results are always trustworthy. Abstract Interpretation promotes the design of reusable analysis building blocks, so-called abstract domains, and gives a principled, practical, and scalable framework for static analysis design.

Designing new static analyses is challenging and involves both theoretical research and software engineering: It requires the study of new abstract domains, tied to an application context (as there does not exist an all-purpose abstraction), and the design of efficient tools, finding the appropriate balance between cost and precision.

Indeed, various developments in the last two decades have demonstrated that static analysis by Abstract Interpretation works well also in practice. We have seen the emergence of commercially-available Abstract Interpretation based static analysis tools. Automation and efficiency make Abstract Interpretation based static analysis very attractive in such contexts. Moreover, soundness is also mandated by official documents (e.g., DO-333 in avionics). Nevertheless, early results on reachability analysis and a focus on embedded critical software (which have a simpler structure than typical consumer software) may propagate the false idea that Abstract Interpretation is limited to detecting run-time errors in embedded code, while it is in fact far much more general.

Now that Abstract Interpretation has demonstrated its strengths in certain application domains, it is time to plan the future of Abstract Interpretation, in particular, to widen its field of use beyond safety and static languages, and to bridge the gap between current theoretical results and practical applications by identifying key challenges, such as at targeting new languages, new classes of properties, and scalability to very large systems. Hence, this Dagstuhl Seminar aims at collecting new ideas and new perspectives on the potential of Abstract Interpretation in order to pave the way for new applications of Abstract Interpretation.

The objectives of the seminar are to:

  • Bring together static analysis specialists from academia and industry to cover a wide spectrum from pure Abstract Interpretation theory to industrial tools.
  • Discuss the current state of Abstract Interpretation theory and applications, recent advances, and roadblocks.
  • Reconcile theoretical results and practical needs.
  • Evaluate the most promising directions to drive forward fundamental research in Abstract Interpretation and to push theoretic advances into practical tools.
  • Take action to spread awareness of Abstract Interpretation in universities, engineering schools, and in industry.

Motivation text license
  Creative Commons BY 3.0 DE
  Arie Gurfinkel, Francesco Logozzo, Isabella Mastroeni, Antoine Miné, and Peter Müller

Classification

  • Semantics / Formal Methods
  • Verification / Logic

Keywords

  • Abstract Interpretation
  • Abstract domains
  • Static program Analysis
  • Program verification
  • Program semantics

Documentation

In the series Dagstuhl Reports each Dagstuhl Seminar and Dagstuhl Perspectives Workshop is documented. The seminar organizers, in cooperation with the collector, prepare a report that includes contributions from the participants' talks together with a summary of the seminar.

 

Download overview leaflet (PDF).

Publications

Furthermore, a comprehensive peer-reviewed collection of research papers can be published in the series Dagstuhl Follow-Ups.

Dagstuhl's Impact

Please inform us when a publication was published as a result from your seminar. These publications are listed in the category Dagstuhl's Impact and are presented on a special shelf on the ground floor of the library.