Program analysis as constraint solving | Synapse