Zum Inhalt springen
uencoder

Abstract Interpretation

Die abstrakte Interpretation approximiert die Programmsemantik auf einem abstrakten Bereich und beweist zuverlässig Programmeigenschaften (keine Division durch Null, keine Array-Bereichsverletzungen).

Zweck

Zuverlässig beweisen, dass ein Programm frei von einer bestimmten Fehlerklasse ist – eine praktische Approximationsmethode für formale Verifikation.

Mechanismus

Bildet die konkrete Semantik auf einen abstrakten Bereich (Intervalle, Vorzeichen, Oktagone) ab und berechnet den Fixpunkt im abstrakten Bereich. Die Überapproximation garantiert Korrektheit (meldet echte Fehler, kann aber falsche Positive haben). Sonar und Astrée analysieren Flugsteuerungssoftware mit dieser Methode.

Anwendungsfälle

  • Formale Verifikation
  • Fehlerbeweis
  • Sicherheitskritische Software

References