Problem: zur exakten Beantwortung müßte man Code ausführen. (Bsp: Verzweigungen, Schleifen)
while ( .. ) {
int x = 3; int y;
if ( .. ) { x = 2 * y; } // ??
else { y = 2 * x; }
}
Ausweg: Approximation (sichere Vereinfachung) durch abstrakte Interpretation, die Mengen der initialisierten/benutzten/geänderten Variablen je Block berechnet (d. h. als Attribut in Syntaxbaum schreibt)
z. B. bei Verzweigungen beide Wege ,,gleichzeitig`` nehmen
weiteres Beisp. f. abst. Interpretation: Typprüfung