These instructions are essentially those available at https://github.com/eth-sri/eran with additional comments on how to circumvent some hiccups that may arise. We will use anaconda to install various tools required to get "eran" up and running. Installing Anaconda: Either go to https://docs.anaconda.com/free/anaconda/install/linux/ and follow the detailed instructions to install anaconda. Alternatively, follow the instructions given below from a Linux shell. 1. Type "wget https://repo.anaconda.com/archive/Anaconda3-2023.07-1-Linux-x86_64.sh" 2. Type "bash Anaconda3-2023.07-1-Linux-x86_64.sh" 3. Press "Enter" to review the license agreement. Then press and hold Enter to scroll 4. Enter "yes" to agree to the license agreement. 5. Use Enter to accept the default install location. 6. Enter "yes" to initialize Anaconda Distribution by running conda init 7. Type "conda init" to activate conda package or run the command "source ~/anaconda3/bin/activate" Instructions to install ERAN: 1. Create the anaconda envirement variable "eran" with python 3.6 by following commands: conda create -n eran python=3.6 2. Activate the envirement variable "eran" by following commands: conda activate eran 3. Clone the ERAN from git by following commands: git clone https://github.com/eth-sri/ERAN.git cd ERAN 4. Install the basic linux packages from the following commands: sudo apt-get install m4 sudo apt-get install build-essential sudo apt-get install autoconf sudo apt-get install libtool sudo apt-get install texlive-latex-base sudo snap install cmake --classic 5. Install gmp (Note that command "make install" in steps 5,6,7,and 10 may fail due to permission issue, in that case one has to run the command sudo make install): wget https://gmplib.org/download/gmp/gmp-6.1.2.tar.xz tar -xvf gmp-6.1.2.tar.xz cd gmp-6.1.2 ./configure --enable-cxx make make install cd .. rm gmp-6.1.2.tar.xz 6. Install mpfr: wget https://files.sri.inf.ethz.ch/eran/mpfr/mpfr-4.1.0.tar.xz tar -xvf mpfr-4.1.0.tar.xz cd mpfr-4.1.0 ./configure make make install cd .. rm mpfr-4.1.0.tar.xz 7. Install cddlib: wget https://github.com/cddlib/cddlib/releases/download/0.94m/cddlib-0.94m.tar.gz tar zxf cddlib-0.94m.tar.gz rm cddlib-0.94m.tar.gz cd cddlib-0.94m ./configure make make install cd .. 8. Install Gurobi: wget https://packages.gurobi.com/9.1/gurobi9.1.2_linux64.tar.gz tar -xvf gurobi9.1.2_linux64.tar.gz cd gurobi912/linux64/src/build sed -ie 's/^C++FLAGS =.*$/& -fPIC/' Makefile make cp libgurobi_c++.a ../../lib/ cd ../../ cp lib/libgurobi91.so /usr/local/lib #if this command fails due to permission related issues, then one has to run with sudo privilege python3 setup.py install #if this command gives you permission related errors, then change the permission of gurobi912 directory recursively to local user. cd ../../ 9. Update environment variables: export GUROBI_HOME="$PWD/gurobi912/linux64" export PATH="$PATH:${GUROBI_HOME}/bin" export CPATH="$CPATH:${GUROBI_HOME}/include" export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib:${GUROBI_HOME}/lib 10. Install ELINA: git clone https://github.com/eth-sri/ELINA.git cd ELINA if you have gpu ./configure -use-deeppoly -use-gurobi -use-fconv -use-cuda cd ./gpupoly/ cmake . cd .. else #for cpu only ./configure -use-deeppoly -use-gurobi -use-fconv make make install cd .. 11. Install DeepG: git clone https://github.com/eth-sri/deepg.git cd deepg/code mkdir build make shared_object cp ./build/libgeometric.so /usr/lib #If this command failed due to permission issue then one has to run with sudo previllage cd ../.. 12. pip3 install -r requirements.txt 13. Get free academic license for gurobi from https://user.gurobi.com/download/licenses/free-academic. One can download example networks to check local robustness properties from https://github.com/eth-sri/eran. You need to download some of these networks explicitly in .onnx format before running eran. They are not automatically downloaded when you clone the "eran" repository from github Command to run the tool (in the eran environment created using anaconda): Change your directory to tf_verify. Then run python3 . --netname downloaded_network_path --epsilon 0.1 --domain deeppoly --dataset mnist Suppose my network path is: ~/Downloads/mnist_relu_3_50.onnx python3 . --netname ~/Downloads/mnist_relu_3_50.onnx --epsilon 0.1 --domain deeppoly --dataset mnist