Presentation is loading. Please wait.

Presentation is loading. Please wait.

Calvinism A static analysis for multithreaded program verification.

Similar presentations


Presentation on theme: "Calvinism A static analysis for multithreaded program verification."— Presentation transcript:

1 Calvinism A static analysis for multithreaded program verification

2 Motive - Reformation Verification is important –Recall therac; recall mars rover Calvin was a really, really good idea but sort of complicated –Therefore difficult to reason about –Therefore difficult to see flaws in –Therefore difficult to build on Recall that most good ideas were simple to understand. (i.e. wp- djik; hoare logic; Entity model relationship (chen)

3 Recall ideas of Calvin Atomicity –Via reduction Via guard predicates Declare m; //m==0 * m==tid Declare count; //m==0 * m==tid acquire(m); j=count; j++; count = j; release(m);

4 Concrete difference Whereas Calvin goes in and sticks in asserts, and thread changes to simulate the changes of other threads and then sends the work off to a theorem prover Calvinism has a set of axioms which do the same thing.

5

6 Conclusion Limitations –Have to add function calls –Have to finish proof of Soundness Potential work –Static solution to the problem of non-atomic methods. (Show rule?)


Download ppt "Calvinism A static analysis for multithreaded program verification."

Similar presentations


Ads by Google