Buch, Englisch, 177 Seiten, Format (B × H): 155 mm x 235 mm, Gewicht: 306 g
Flow Analysis of Sequential and Parallel Programs
Buch, Englisch, 177 Seiten, Format (B × H): 155 mm x 235 mm, Gewicht: 306 g
Reihe: Programming and Software Engineering
ISBN: 978-3-540-45385-7
Verlag: Springer Berlin Heidelberg
Program analysis is concerned with techniques that automatically determine run-time properties of given programs prior to run-time. It is used for validation in order to ensure that programs serve their intended purpose and in further processing for efficient execution such as in optimizing compilers. Optimal program analysis provides a guarantee about the precision of the computed results.
This monograph, a revised version of the author's habilitation thesis, focusses on optimal flow analysis of sequential and parallel programs. It studies algorithmic properties of various versions of the well-known constant-propagation problem. In order to come to grips with the variants considered, it combines techniques from different areas such as linear algebra, computable ring theory, abstract interpretation, program verification, complexity theory, etc. Combination of techniques is the key to further progress in automatic analysis and constant-propagation allows us to illustrate this point in a theoretical study.
After a general overview, the monograph consists of three essentially self-contained parts that can be read independently of each other. These parts study: a hierarchy of constants in sequential programs, inherent limits of flow analysis of parallel programs, and how to overcome these limits by abandoning a classic atomic execution assumption.
Zielgruppe
Research
Autoren/Hrsg.
Fachgebiete
- Mathematik | Informatik EDV | Informatik Programmierung | Softwareentwicklung Programmierung: Methoden und Allgemeines
- Mathematik | Informatik Mathematik Mathematik Interdisziplinär Systemtheorie
- Mathematik | Informatik EDV | Informatik Informatik Logik, formale Sprachen, Automaten
- Interdisziplinäres Wissenschaften Wissenschaften: Forschung und Information Kybernetik, Systemtheorie, Komplexe Systeme
- Mathematik | Informatik EDV | Informatik Programmierung | Softwareentwicklung Prozedurale Programmierung
- Mathematik | Informatik EDV | Informatik Programmierung | Softwareentwicklung Software Engineering Objektorientierte Softwareentwicklung
Weitere Infos & Material
1. Introduction.- 2. A Hierarchy of Constants.- 3. Deciding Constants by Effective Weakest Preconditions.- 4. Limits of Parallel Flow Analysis.- 5. Parallel Flow Graphs.- 6. Non-atomic Execution.- 7. Dependence Traces.- 8. Detecting Copy Constants and Eliminating Faint Code.- 9. Complexity in the Non-atomic Scenario.- 10. Conclusion.- A. A Primer on Constraint-Based Program Analysis.