Formal Verification of Lock-Free Algorithms
Formal Verification of Lock-Free Algorithms
Formal Verification of Lock-Free Algorithms
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
[37] H. Gao, J.F. Groote, and W. H. Hesselink,“<strong>Lock</strong>-free parallel<br />
and concurrent garbage collection by mark&sweep,” Sci.<br />
Comput. Program., vol. 64, no. 3, pp. 341–374, 2007.<br />
[38] R. Colvin, S. Doherty, and L. Groves, “Verifying concurrent<br />
data structures by simulation,” ENTCS, vol. 137, pp. 93–110,<br />
2005.<br />
[39] L. Groves and R. Colvin, “Derivation <strong>of</strong> a scalable lock-free<br />
stack algorithm,” Electron. Notes Theor. Comput. Sci., vol.<br />
187, pp. 55–74, 2007.<br />
[40] L. Groves and R. Colvin, “Trace-based derivation <strong>of</strong> a scalable<br />
lock-free stack algorithm,” <strong>Formal</strong> Aspects <strong>of</strong> Computing<br />
(FAC), vol. 21, no. 1–2, pp. 187–223, 2009.<br />
[41] R. Colvin and B. Dongol, “A general technique for proving<br />
lock-freedom,” Sci. Comput. Program., vol. 74, no. 3, pp.<br />
143–165, 2009.<br />
[42] V. Vafeiadis, M. Herlihy, T. Hoare, and M. Shapiro, “Proving<br />
correctness <strong>of</strong> highly-concurrent linearisable objects,” in<br />
PPoPP ’06: Proceedings <strong>of</strong> the eleventh ACM SIGPLAN symposium<br />
on Principles and practice <strong>of</strong> parallel programming.<br />
New York, NY, USA: ACM, 2006, pp. 129–136.<br />
[43] C. Calcagno, M. J. Parkinson, and V. Vafeiadis, “Modular<br />
safety checking for fine-grained concurrency,” in SAS, ser.<br />
Lecture Notes in Computer Science, H. R. Nielson and<br />
G. Filé, Eds., vol. 4634. Springer, 2007, pp. 233–248.<br />
[44] V. Vafeiadis and M. J. Parkinson, “A marriage <strong>of</strong><br />
rely/guarantee and separation logic,” in CONCUR, ser. Lecture<br />
Notes in Computer Science, L. Caires and V. T. Vasconcelos,<br />
Eds., vol. 4703. Springer, 2007, pp. 256–271.<br />
[45] V. Vafeiadis, “Shape-value abstraction for verifying linearizability,”<br />
in Proceedings VMCAI 2009, ser. LNCS, vol. 5403.<br />
Springer, 2009.<br />
[46] A. Gotsman, B. Cook, M. Parkinson, and V. Vafeiadis, “Proving<br />
that nonblocking algorithms don’t block,” in Principles <strong>of</strong><br />
Programming Languages. ACM, 2009, pp. 16–28.<br />
[47] J. C. Reynolds, “Separation logic: A logic for shared mutable<br />
data structures,” in LICS ’02: Proceedings <strong>of</strong> the 17th Annual<br />
IEEE Symposium on Logic in Computer Science. Washington,<br />
DC, USA: IEEE Computer Society, 2002, pp. 55–74.<br />
[48] D. Distefano, P. O’Hearn, and H. Yang, “A local shape<br />
analysis based on separation logic,” in TACAS, vol. 3920.<br />
Springer, 2006, pp. 287–302.<br />
[49] D. Amit, N. Rinetzky, T. W. Reps, M. Sagiv, and E. Yahav,<br />
“Comparison under abstraction for verifying linearizability,”<br />
in CAV, ser. Lecture Notes in Computer Science, W. Damm<br />
and H. Hermanns, Eds., vol. 4590. Springer, 2007, pp. 477–<br />
490.<br />
[50] J. Berdine, T. Lev-Ami, R. Manevich, G. Ramalingam, and<br />
M. Sagiv, “Thread quantification for concurrent shape analysis,”<br />
in CAV’08: 20th International Conference on Computer<br />
Aided <strong>Verification</strong>. Springer, 2008.<br />
18<br />
Authorized licensed use limited to: Technische Universitat Kaiserslautern. Downloaded on January 18, 2010 at 11:43 from IEEE Xplore. Restrictions apply.