This repository contains code related to the SAS 2020 paper Abstract Neural Networks by Matthew Sotoudeh and Aditya V. Thakur.
This code assumes reasonably up-to-date versions of python3, numpy, and
pytest in order to run correctly. If you already have Python installed, you
can install the other two dependencies like so:
python3 -m pip install -r requirements.txtThe file abstract.py exposes a method abstract_layer_wise which corresponds
to Algorithm 3 in our paper. An example of its uses is provided in the file
test_abstract_intervals.py, corresponding to Example 6 (Section 5.1) in our
paper. To run it, and any other test cases, you can use:
python3 -m pytest *.pyin this directory.
Optionally, we support Bazel for reproducible runs and testing. After setting up bazel_python, you can run
bazel test //...to run all test cases, then
bazel run coverage_reportto produce an HTML coverage report in a new htmlcov directory.
@inproceedings{anns:sas20,
author = {Sotoudeh, Matthew and Thakur, Aditya V.},
title = {Abstract Neural Networks},
booktitle = {27th Static Analysis Symposium (SAS)},
year = {2020},
note = {To appear}
}