A framework for verifying deep neural networks. It can answer queries about a network's properties by transforming them into constraint satisfaction problems, accommodate networks with different activation functions and topologies, and perform high-level reasoning on the network to reduce search space and improve performance.