1. In association with a computer program comprising one or more basic blocks, and concrete data structures that each pertains to a basic block, a computer implemented method comprising the steps of: identifying one or more invariants, wherein each invariant is associated with one of the concrete data structures; determining at specified times whether an invariant has been violated; and responsive to detecting a violation of one of the invariants, flagging the detected violation as an anomaly.