SMT-based formal verification of safety properties in neural networks

dc.contributor.author Righi, Bailey
dc.contributor.department Electrical and Computer Engineering
dc.contributor.majorProfessor Samik Basu
dc.date 2021-09-01T04:45:29.000
dc.date.accessioned 2021-09-09T16:54:14Z
dc.date.available 2021-09-09T16:54:14Z
dc.date.copyright Fri Jan 01 00:00:00 UTC 2021
dc.date.embargo 2021-04-21
dc.date.issued 2021-01-01
dc.description.abstract <p>Though they have been around since the late 1950s, artificial neural networks, or just neural networks (NNs), were not commonly considered as a potential (practical to implement) solution to real-world problems until the last couple of decades, when the dive into deep learning and big data started to produce significant benefits. In this case, a real-world problem refers to one that is common outside the realm of scientific exploration and research. Applications of NNs continue to increase in number and variety. As implementations of these ideas become more practical, their applications reach safety-critical systems (e.g., autonomous vehicles), making the verification of their conformity to safety requirements more critical. One of the benefits of a NN is that its internals need not be explicitly coded in order to produce reasonable outputs, demonstrating the ``learning'' aspect of machine learning. However, this creates new issues with verification. There are many established formal methods of software verification, such as bounded model checking and counterexample guided abstraction refinement (CEGAR), but these do not directly translate to NN verification. When the behavior of a machine cannot be stored explicitly as every possible path from input to output, it is not trivial to ensure it functions properly. Enumeration of NN behavior is prohibitively expensive because of the nature and number of computations it performs. This is largely because NNs typically cannot be exhaustively tested in a practical, efficient, computation-friendly way. Fortunately, in recent years, scholars have found ways to bring traditional verification techniques into the world of NNs. This paper reviews three such methods, compares them, and analyzes their potential for future use. These methods are: abstraction refinement due to Pulina and Tacchella, pure-SMT solving due to Huang et al., and Reluplex due to Katz et al.</p>
dc.format.mimetype PDF
dc.identifier archive/lib.dr.iastate.edu/creativecomponents/881/
dc.identifier.articleid 1862
dc.identifier.contextkey 22595344
dc.identifier.s3bucket isulib-bepress-aws-west
dc.identifier.submissionpath creativecomponents/881
dc.identifier.uri https://dr.lib.iastate.edu/handle/20.500.12876/Nr1VKxnz
dc.source.bitstream archive/lib.dr.iastate.edu/creativecomponents/881/599ccWriteup.pdf|||Sat Jan 15 02:17:35 UTC 2022
dc.subject.disciplines Software Engineering
dc.subject.keywords Formal Methods
dc.subject.keywords Neural Networks
dc.subject.keywords SMT
dc.subject.keywords Abstraction Refinement
dc.subject.keywords Simplex
dc.title SMT-based formal verification of safety properties in neural networks
dc.type article
dc.type.genre creativecomponent
dspace.entity.type Publication
relation.isOrgUnitOfPublication a75a044c-d11e-44cd-af4f-dab1d83339ff
thesis.degree.discipline Computer Engineering
thesis.degree.level creativecomponent
File
Original bundle
Now showing 1 - 1 of 1
No Thumbnail Available
Name:
599ccWriteup.pdf
Size:
256.69 KB
Format:
Adobe Portable Document Format
Description: