abstract contract synthesis and verification in the symbolic k framework ∗ .
Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints