Ultimate
Ultimate is a model checker for Boogie programs based on abstraction-refinement loop and interpolation. The Boogie language is an intermediate language for verification. Using existing frontends like VCC or Spec-# it is possible to verify C and C# programs. In the long run Ultimate should incorporate invariant generation, termination checking, and modular verification for multi-threaded programs. For more information, go to