La verificación simbólica de modelos es la verificación de modelos que funciona en estados simbólicos. Es decir, codifican los estados en representaciones simbólicas, típicamente diagramas de decisión binaria ordenados (OBDD).
La pregunta es qué hacen y cómo funcionan.
Primero tiene su código fuente para alguna aplicación. Luego transforma su código fuente en un gráfico de transición de estado como una Estructura de Kripke. Los estados están llenos de proposiciones atómicas que describen lo que es cierto en ese estado en particular. En la verificación simbólica del modelo, las proposiciones atómicas se codifican como OBDD para ahorrar espacio y mejorar el rendimiento.
Luego, el Comprobador de modelos comienza en algún estado inicial y explora los estados, buscando errores en el gráfico de transición de estado. Si encuentra un error, a menudo generará un caso de prueba que demuestre el error. Utiliza los OBDD simbólicos para navegar de manera óptima por el espacio de estado. Ojalá pudiera explicar más allí pero aún aprendiendo.
Pero eso es básicamente todo. Tiene un programa convertido en un modelo formal (gráfico de transición de estado), y luego utiliza optimizaciones simbólicas para navegar por el espacio de estado para buscar errores (comparándolo con una especificación LTL / CTL). Y si se encuentra un error, el Verificador de modelos le brinda algunas cosas para ayudar a documentarlo y resolverlo.