Abstract Interpretation in Industry - Experience and Lessons Learned
summary
Commercialized two abstract-interpretation analyzers: aiT WCET Analyzer for worst-case execution time and Astrée for absence of runtime errors, built at absin and validated against hardware traces. Development costs about 15–20 person‑years for early prototypes, supports 25+ target architectures, and achieves ~15% WCET overestimation on analyzed processors. On large automotive projects (3–100M preprocessed LOC) analysis runs around a day, reports ~14 definite runtime errors per MLOC and ~733 general alarms per MLOC, and directive tuning cuts alarms ~20%.
AI-written summary · about
chapters (26)
- 0:00Introduction
- 1:28Company focus on abstract interpretation
- 4:14Commercializing abstract interpretation tools
- 6:01Worst-case execution time analysis
- 8:09Challenges in execution time bounds
- 9:13Tool architecture for execution time
- 12:47Cache analysis and timing prediction
- 15:59Fixpoint iteration in cache analysis
- 17:20Cache analysis limitations and hardware
- 18:43Speculative hardware and timing accidents
- 21:10Timing analysis methodology
- 22:14Pipeline analysis with speculative features
- 27:05Validation and certification of tools
- 33:49Commercializing AS3 stack tool
- 34:54AS3 development and usability
- 37:22AS3 initial capabilities
- 38:05AS3 usability and automation improvements
- 41:35AS3 for concurrent and cybersecurity
- 43:45Automotive software integration with AS3
- 47:40Results from automotive projects
- 51:34Market challenges for formal methods
- 53:24Safety norms and formal methods adoption
- 56:16Academic research versus industry standards
- 57:17Future challenges in software complexity
- 58:19Conclusion and lessons learned
- 59:48Q&A
