Abstract Interpretation
La interpretación abstracta aproxima la semántica del programa sobre un dominio abstracto, probando de forma fiable propiedades del programa (ausencia de división por cero, accesos fuera de rango).
Propósito
Probar de forma fiable que un programa carece de cierta clase de defectos, un método de aproximación práctica para verificación formal.
Mecanismo
Mapea la semántica concreta a un dominio abstracto (intervalos, signos, octógonos) y calcula el punto fijo en el dominio abstracto. La sobreaproximación garantiza solidez (reporta defectos reales pero puede tener falsos positivos). Sonar y Astrée analizan software de control de vuelo con este método.
Casos de uso
- Verificación formal
- Prueba de defectos
- Software crítico de seguridad