Systematic design of abstract interpretations