Search For:

Displaying 1-5 out of 5 total
Verifying Linearizability via Optimized Refinement Checking
Found in: IEEE Transactions on Software Engineering
By Yang Liu,Wei Chen,Yanhong A. Liu,Jun Sun,Shao Jie Zhang,Jin Song Dong
Issue Date:July 2013
pp. 1018-1039
Linearizability is an important correctness criterion for implementations of concurrent objects. Automatic checking of linearizability is challenging because it requires checking that: 1) All executions of concurrent operations are serializable, and 2) the...
Graph-based detection of library API imitations
Found in: Software Maintenance, IEEE International Conference on
By Chengnian Sun,Siau-Cheng Khoo,Shao Jie Zhang
Issue Date:September 2011
pp. 183-192
It has been a common practice nowadays to employ third-party libraries in software projects. Software libraries encapsulate a large number of useful, well-tested and robust functions, so that they can help improve programmers' productivity and program qual...
An Automatic Approach to Model Checking UML State Machines
Found in: Secure Software Integration and Reliability Improvement Companion, IEEE International Conference on
By Shao Jie Zhang, Yang Liu
Issue Date:June 2010
pp. 1-6
UML has become the dominant modeling language in software engineering arena. In order to reduce cost induced by design issues, it is crucial to detect model-level errors in the initial phase of software development. In this paper, we focus on the formal ve...
Model Checking a Lazy Concurrent List-Based Set Algorithm
Found in: Secure System Integration and Reliability Improvement
By Shao Jie Zhang, Yang Liu
Issue Date:June 2010
pp. 43-52
Concurrent objects are notoriously difficult to design correctly, and high performance algorithms that make little or no use of locks even more so. In this paper, we present a formal verification of a lazy concurrent list-based set using model checking tec...
Scalable automatic linearizability checking
Found in: Proceeding of the 33rd international conference on Software engineering (ICSE '11)
By Shao Jie Zhang
Issue Date:May 2011
pp. 1185-1187
Concurrent data structures are widely used but notoriously difficult to implement correctly. Linearizability is one main correctness criterion of concurrent data structure algorithms. It guarantees that a concurrent data structure appears as a sequential o...