Skip to content

GNNV Integration#294

Merged
ttj merged 18 commits intoverivital:masterfrom
atumlin:gnnv-integration
Jan 22, 2026
Merged

GNNV Integration#294
ttj merged 18 commits intoverivital:masterfrom
atumlin:gnnv-integration

Conversation

@atumlin
Copy link
Contributor

@atumlin atumlin commented Jan 16, 2026

Summary

This PR introduces initial support for formal verification for Graph Neural Networks (GNNs) in NNV,
enabling reachability analysis for GCN and GINE architectures.

Key Additions

  • GraphStar: Star set representation for node/edge feature uncertainty (engine/set/GraphStar.m)
  • GCNLayer: Graph Convolutional layer(engine/nn/layers/GCNLayer.m)
  • GINELayer: Graph Isomorphism Network layer with edge features (engine/nn/layers/GINELayer.m)
  • GNN: Wrapper class for multi-layer GNN verification (engine/nn/GNN.m)

Examples

Power Flow and Optimal Power Flow verification on IEEE bus systems (24, 39, 118):

  • run_pf_verification(bus_system, layer_type, epsilon) (examples/NN/GNN/PowerFlow/run_pf_verification.m)
  • run_opf_verification(bus_system, layer_type, epsilon) (examples/NN/GNN/OptimalPowerFlow/run_opf_verification.m)

Supports three modes: GCN, GINE, GINE_edge (with edge perturbation)

Tests

  • Unit tests for GCNLayer, GINELayer, GraphStar under tests/nn/

@ttj ttj merged commit 236ae62 into verivital:master Jan 22, 2026
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants