Tighter Abstract Queries in Neural Networks Verification Cohen, Elboher, Barrett and Katz
recent years, and many different verifiers have been proposed [24–26,46,48,62,67,83]. However,
scalability remains a fundamental barrier, both theoretical and practical, which limits the use
of NNV engines: generally, increasing the number of neurons of the verified neural network
implies an exponential increase in the complexity of the verification problem [40,46].
In order to alleviate this scalability limitation, recently there have been attempts to apply
abstraction techniques within NNV [11,27,28,57,69,76], often focusing on the counter-example
guided abstraction refinement (CEGAR) framework [21]. CEGAR is a well-known approach,
aimed at expediting the solving of complex verification queries, by abstracting the model being
verified into a simpler one — in such a way that if the simpler model is safe, i.e. the query
is UNSAT, then so is the original model. In case of a SAT answer from the verifier, we check
whether the satisfying assignment of the abstract model is also a satisfying assignment of the
original. If so, the original query is declared SAT, the satisfying assignment is returned, and the
process ends. Otherwise, the satisfying assignment is called spurious (or erroneous), indicating
that the abstract query is too coarse, and should be refined into a slightly “less abstract” query,
which is a bit closer to the original model (but is hopefully still smaller). CEGAR has been
successfully used in various formal method applications [9,15,42,65,73], and also in the context
of NNV [27,28,57]. Typically, these approaches generate an abstract neural network, which is
smaller than the original, and is created by the merging of neurons of the original network. The
refinement, accordingly, is performed by splitting previously merged neurons. Other related
approaches have also considered abstracting the ranges of values obtained by neurons in the
network [11,69,70,76].
The general motivation for abstraction schemes is that smaller, abstract networks are easier
to verify. While this is often true, smaller networks tend to be far less precise, and verifying them
often requires multiple refinement steps [28,70]. In extreme cases, these multiple refinement
steps can render the verification process slower than directly verifying the original network [28].
Here, we seek to tackle this problem, by improving the abstract verification queries. We propose
a novel verification scheme for DNNs, wherein abstraction and refinement operations include
altering not only the network (as in [21,27,28,57,70]), but also the property being verified.
The motivation is to render the abstract properties more restrictive, in a way that will reduce
the number of spurious counter-examples encountered during the verification process; but at
the same time, ensure that the abstract queries still maintain the over-approximation property:
if the abstract query is UNSAT, the original query is UNSAT too. The key idea on which our
approach is based is to compute a minimal difference between the outputs of the abstract
network and the original network, and then use this minimal difference to tighten the property
being verified, in a sound manner.
Our approach is not coupled to any specific DNN verification method, and can use multiple
DNN verifiers as black-box backends. For evaluation purposes, we implemented it on top of the
Marabou DNN verifier [48]. We then tested our approach on the ACAS-Xu benchmarks [44]
for airborne collision avoidance, and also on MNIST benchmarks for digit recognition [54].
Our results indicate that property abstraction affords a significant increase in the number of
queries that can be verified within a given timeout, as well as a sharp decrease in the number
of refinement steps performed.
To summarize, our contributions are as follows: (i) we present CEGARETTE, a novel CEGAR
framework for DNN verification, that abstracts not only the network but also the property being
verified; (ii) we provide a publicly available implementation of our approach, CEGARETTE-NN;
and (iii) we use our implementation to demonstrate the practical usefulness of our approach.
The rest of this paper is organized as follows. In Section 2, we provide a brief background
on neural networks and their verification, followed by an explanation of the CEGAR framework
2