{"title":"Formally modeling and verifying Ricart&Agrawala distributed mutual exclusion algorithm","authors":"K. Ogata, K. Futatsugi","doi":"10.1109/APAQS.2001.990041","DOIUrl":null,"url":null,"abstract":"One of the promising approaches to creating quality software is to formally model systems, describe the models in a formal specification language, and verify that the systems have some desirable properties based on the formal documents with an automatic model checker or an interactive theorem prover before the systems are implemented in a programming language. The more complicated the systems are, such as distributed systems, the more important the approach is. We have applied the approach to the Ricart&Agrawala distributed mutual exclusion algorithm (G. Ricart and A. K. Agrawala, 1981). We have modeled the algorithm as a UNITY computational model, described the model in CafeOBJ, and verified that the algorithm is actually mutually exclusive based on the CafeOBJ document with the help of the CafeOBJ system.","PeriodicalId":145151,"journal":{"name":"Proceedings Second Asia-Pacific Conference on Quality Software","volume":"36 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2001-12-10","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"10","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Proceedings Second Asia-Pacific Conference on Quality Software","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/APAQS.2001.990041","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 10
Abstract
One of the promising approaches to creating quality software is to formally model systems, describe the models in a formal specification language, and verify that the systems have some desirable properties based on the formal documents with an automatic model checker or an interactive theorem prover before the systems are implemented in a programming language. The more complicated the systems are, such as distributed systems, the more important the approach is. We have applied the approach to the Ricart&Agrawala distributed mutual exclusion algorithm (G. Ricart and A. K. Agrawala, 1981). We have modeled the algorithm as a UNITY computational model, described the model in CafeOBJ, and verified that the algorithm is actually mutually exclusive based on the CafeOBJ document with the help of the CafeOBJ system.
创建高质量软件的一种很有前途的方法是对系统进行形式化建模,用形式化规范语言描述模型,并在系统用编程语言实现之前,使用自动模型检查器或交互式定理证明器验证系统具有基于形式化文档的一些理想属性。系统越复杂,比如分布式系统,这种方法就越重要。我们已经将该方法应用于Ricart&Agrawala分布式互斥算法(G. Ricart and A. K. Agrawala, 1981)。我们将该算法建模为一个UNITY计算模型,在CafeOBJ中描述该模型,并借助CafeOBJ系统,基于CafeOBJ文档验证该算法实际上是互斥的。