Floating-Point Neural Network Verification at the Software Level

Edoardo Manino, Bruno Farias, Rafael Sá Menezes, Fedor Shmarov, Lucas C. Cordeiro
10/27/2025
cs.SEcs.CRcs.LG

No confident code implementation found for this paper. 1 possible match can be shown below.

Abstract

The behaviour of neural network components must be proven correct before deployment in safety-critical systems. Unfortunately, existing neural network verification techniques cannot certify the absence of faults at the software level. In this paper, we show how to specify and verify that neural networks are safe, by explicitly reasoning about their floating-point implementation. In doing so, we construct NeuroCodeBench 2.0, a benchmark comprising 912 neural network verification examples that cover activation functions, common layers, and full neural networks of up to 170K parameters. Our verification suite is written in plain C and is compatible with the format of the International Competition on Software Verification (SV-COMP). Thanks to it, we can conduct the first rigorous evaluation of eight state-of-the-art software verifiers on neural network code. The results show that existing automated verification tools can correctly solve an average of 11% of our benchmark, while producing around 3% incorrect verdicts. At the same time, a historical analysis reveals that the release of our benchmark has already had a significantly positive impact on the latter.

View on arXivView PDF

Code Implementations

No confident code match yet

We couldn't find an author-owned or strongly-evidenced community implementation for this paper. 1 weaker match is hidden by default — verify before relying on them.

No code implementations found yet.

Know of an implementation? Let us know in the comments below!

Similar Papers

Cite this paper

@article{manino2025floatingpoint,
  title  = {Floating-Point Neural Network Verification at the Software Level},
  author = {Edoardo Manino and Bruno Farias and Rafael Sá Menezes and Fedor Shmarov and Lucas C. Cordeiro},
  year   = {2025},
  eprint = {2510.23389},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2510.23389v1}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2510.23389.svg)](https://codeofpaper.com/paper/2510.23389)

Discussion