Automating Abstract Interpretation