Skip to content

SVF-tools/ACT

Repository files navigation

Abstract Constraint Transformation (ACT)

A testing and verification framework for AI models based on neural networks, built on a three-tier architecture (front-end, back-end, and pipeline), with native PyTorch support and an ACT intermediate representation (IR) that enables refinement-based precision and supports diverse model architectures, input formats, and specification types.

Quick Start

0. Preparation

Install Miniconda and create a running environment.

conda env create -f environment.yml    # Install required lib packages to run ACT
conda activate act-py312 # Activate an environment (python-3.12)  # Activate the environment 

1. Clone repository

git clone --recursive https://github.com/SVF-tools/ACT.git
cd ACT

2. Apply and download the Gurobi license (Optional for MILP optimization)

cp /path/to/your/gurobi.lic ./modules/gurobi/gurobi.lic  # put gurobi.lic file in ./modules/gurobi/ directory

3. Run ACT phases

python -m act.pipeline --help

4. Small Jupyter notebook demos

Pubs and Docs

License

ACT is licensed under the GNU Affero General Public License v3.0 (AGPL-3.0).

Acknowledgements

This project was developed with the assistance of GitHub Copilot to enhance code readability and efficiency. AI-generated suggestions were reviewed and tested by the contributors before inclusion.