TY - JOUR
T1 - Ivy
T2 - Safety verification by interactive generalization
AU - Padon, Oded
AU - McMillan, Kenneth L.
AU - Panda, Aurojit
AU - Sagiv, Mooly
AU - Shoham, Sharon
N1 - Publisher Copyright:
© 2016 ACM.
PY - 2016/6
Y1 - 2016/6
N2 - Despite several decades of research, the problem of formal verification of infinite-state systems has resisted effective automation. We describe a system-Ivy-for interactively verifying safety of infinite-state systems. Ivy's key principle is that whenever verification fails, Ivy graphically displays a concrete counterexample to induction. The user then interactively guides generalization from this counterexample. This process continues until an inductive invariant is found. Ivy searches for universally quantified invariants, and uses a restricted modeling language. This ensures that all verification conditions can be checked algorithmically. All user interactions are performed using graphical models, easing the user's task. We describe our initial experience with verifying several distributed protocols.
AB - Despite several decades of research, the problem of formal verification of infinite-state systems has resisted effective automation. We describe a system-Ivy-for interactively verifying safety of infinite-state systems. Ivy's key principle is that whenever verification fails, Ivy graphically displays a concrete counterexample to induction. The user then interactively guides generalization from this counterexample. This process continues until an inductive invariant is found. Ivy searches for universally quantified invariants, and uses a restricted modeling language. This ensures that all verification conditions can be checked algorithmically. All user interactions are performed using graphical models, easing the user's task. We describe our initial experience with verifying several distributed protocols.
KW - counterexamples to induction
KW - distributed systems
KW - invariant inference
KW - safety verification
UR - http://www.scopus.com/inward/record.url?scp=85119302666&partnerID=8YFLogxK
U2 - 10.1145/2980983.2908118
DO - 10.1145/2980983.2908118
M3 - ???researchoutput.researchoutputtypes.contributiontojournal.article???
AN - SCOPUS:85119302666
VL - 51
SP - 614
EP - 630
JO - SIGPLAN Notices (ACM Special Interest Group on Programming Languages)
JF - SIGPLAN Notices (ACM Special Interest Group on Programming Languages)
SN - 1523-2867
IS - 6
ER -