Neural Model Checking

Fuente: arXiv
Guardado en:
Detalles Bibliográficos
Autores principales: Giacobbe, Mirco, Kroening, Daniel, Pal, Abhinandan, Tautschnig, Michael
Formato: Preprint
Publicado: 2024
Materias:
Acceso en línea:
Etiquetas: Agregar Etiqueta
Sin Etiquetas, Sea el primero en etiquetar este registro!
_version_ 1866913568923844608
author Giacobbe, Mirco
Kroening, Daniel
Pal, Abhinandan
Tautschnig, Michael
author_facet Giacobbe, Mirco
Kroening, Daniel
Pal, Abhinandan
Tautschnig, Michael
contents We introduce a machine learning approach to model checking temporal logic, with application to formal hardware verification. Model checking answers the question of whether every execution of a given system satisfies a desired temporal logic specification. Unlike testing, model checking provides formal guarantees. Its application is expected standard in silicon design and the EDA industry has invested decades into the development of performant symbolic model checking algorithms. Our new approach combines machine learning and symbolic reasoning by using neural networks as formal proof certificates for linear temporal logic. We train our neural certificates from randomly generated executions of the system and we then symbolically check their validity using satisfiability solving which, upon the affirmative answer, establishes that the system provably satisfies the specification. We leverage the expressive power of neural networks to represent proof certificates as well as the fact that checking a certificate is much simpler than finding one. As a result, our machine learning procedure for model checking is entirely unsupervised, formally sound, and practically effective. We experimentally demonstrate that our method outperforms the state-of-the-art academic and commercial model checkers on a set of standard hardware designs written in SystemVerilog.
format Preprint
id arxiv_https___arxiv_org_abs_2410_23790
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle Neural Model Checking
Giacobbe, Mirco
Kroening, Daniel
Pal, Abhinandan
Tautschnig, Michael
Logic in Computer Science
Machine Learning
We introduce a machine learning approach to model checking temporal logic, with application to formal hardware verification. Model checking answers the question of whether every execution of a given system satisfies a desired temporal logic specification. Unlike testing, model checking provides formal guarantees. Its application is expected standard in silicon design and the EDA industry has invested decades into the development of performant symbolic model checking algorithms. Our new approach combines machine learning and symbolic reasoning by using neural networks as formal proof certificates for linear temporal logic. We train our neural certificates from randomly generated executions of the system and we then symbolically check their validity using satisfiability solving which, upon the affirmative answer, establishes that the system provably satisfies the specification. We leverage the expressive power of neural networks to represent proof certificates as well as the fact that checking a certificate is much simpler than finding one. As a result, our machine learning procedure for model checking is entirely unsupervised, formally sound, and practically effective. We experimentally demonstrate that our method outperforms the state-of-the-art academic and commercial model checkers on a set of standard hardware designs written in SystemVerilog.
title Neural Model Checking
topic Logic in Computer Science
Machine Learning
url https://arxiv.org/abs/2410.23790