Saltar al contenido
uencoder

Model Checking

La verificación de modelos comprueba exhaustivamente si todos los estados de un sistema satisfacen propiedades de lógica temporal, encontrando automáticamente estados contraejemplo que las violan.

Propósito

Verificar exhaustivamente la seguridad y viveza de sistemas concurrentes, descubriendo automáticamente interbloqueos y carreras de datos.

Mecanismo

Se modela el sistema como una máquina de estados y se expresan las propiedades en lógica temporal (LTL/CTL). La enumeración explícita de estados o los BDD simbólicos recorren todos los estados. Si una propiedad falla, se produce un camino contraejemplo. SPIN y NuSMV son herramientas habituales.

Casos de uso

  • Verificación de concurrencia
  • Verificación de protocolos
  • Verificación de hardware

References