Developer Guide

Guides for extending NNV to new architectures, set representations, and verification problems. Aimed at researchers who want to implement their own ideas within the NNV framework.


Architecture Overview

How NNV is structured: Computation Engine, Analyzer, directory layout, and how NN/GNN/NNCS compose layers.

Architecture Overview
Custom Verification

End-to-end workflows for verifying your own network: FFNN, CNN, GNN, NNCS, and custom safety specifications.

Custom Verification Workflows
Adding New Layers

How to implement a new layer type with evaluate and reach methods, and register it for ONNX import.

Adding New Layer Types
Adding New Set Types

How to implement a new set representation with the required interface for NNV’s reachability pipeline.

Adding New Set Types
Adding Reach Methods

How to add a new reachability method and integrate it with the existing layer dispatch.

Adding New Reachability Methods
Testing & CI/CD

Running the test suite, baseline management, code coverage, and GitHub Actions CI/CD pipeline.

Testing & CI/CD