{"@context":{"@vocab":"https://cir.nii.ac.jp/schema/1.0/","rdfs":"http://www.w3.org/2000/01/rdf-schema#","dc":"http://purl.org/dc/elements/1.1/","dcterms":"http://purl.org/dc/terms/","foaf":"http://xmlns.com/foaf/0.1/","prism":"http://prismstandard.org/namespaces/basic/2.0/","cinii":"http://ci.nii.ac.jp/ns/1.0/","datacite":"https://schema.datacite.org/meta/kernel-4/","ndl":"http://ndl.go.jp/dcndl/terms/","jpcoar":"https://github.com/JPCOAR/schema/blob/master/2.0/"},"@id":"https://cir.nii.ac.jp/crid/1390001205222792320.json","@type":"Article","productIdentifier":[{"identifier":{"@type":"DOI","@value":"10.2197/ipsjdc.1.117"}},{"identifier":{"@type":"URI","@value":"http://www.jstage.jst.go.jp/article/ipsjdc/1/0/1_0_117/_pdf"}},{"identifier":{"@type":"NAID","@value":"130000022400"}}],"dc:title":[{"@language":"en","@value":"Verification of Concurrent Programs Using the Coq Proof Assistant: A Case Study"}],"dc:language":"en","description":[{"type":"abstract","notation":[{"@language":"en","@value":"We show how to model and verify a concurrent program using the Coq proof assistant. The program in question is an existing mail server written in Java. The approach we take is to use an original library that provides a language for modeling, a logic, and lemmas for verification of concurrent programs. First, we report on the modeling of the mail server. Using the language provided by the library, we build a model by (1) translating the original program and (2) building appropriate abstractions to model its environment. Second, we report on the verification of a property of the mail server. We compare this library-based approach with an alternative approach that directly appeals to the Coq language and logic for modeling and specification. We show that the library-based approach has many advantages. In particular, non-functional aspects (communications, non-determinism, multi-threading) are handled directly by the library and therefore do not require complicated modeling. Also, the model can be directly run using existing compilers or virtual machines, thus providing us with a certified implementation of the mail server."}],"abstractLicenseFlag":"disallow"}],"creator":[{"@id":"https://cir.nii.ac.jp/crid/1420001326220540800","@type":"Researcher","personIdentifier":[{"@type":"KAKEN_RESEARCHERS","@value":"40415641"},{"@type":"NRID","@value":"1000040415641"},{"@type":"NRID","@value":"9000243167528"},{"@type":"NRID","@value":"9000410006191"},{"@type":"NRID","@value":"9000411658454"},{"@type":"NRID","@value":"9000004378993"},{"@type":"NRID","@value":"9000021930411"},{"@type":"NRID","@value":"9000403560908"},{"@type":"NRID","@value":"9000311513777"},{"@type":"NRID","@value":"9000341529363"},{"@type":"NRID","@value":"9000258237935"},{"@type":"NRID","@value":"9000242898795"},{"@type":"NRID","@value":"9000391587557"},{"@type":"NRID","@value":"9000410199480"},{"@type":"NRID","@value":"9000241466627"},{"@type":"NRID","@value":"9000356875889"},{"@type":"NRID","@value":"9000258571283"},{"@type":"NRID","@value":"9000020871438"},{"@type":"NRID","@value":"9000379610594"},{"@type":"NRID","@value":"9000378076859"},{"@type":"NRID","@value":"9000409602720"},{"@type":"RESEARCHMAP","@value":"https://researchmap.jp/read0120509"}],"foaf:name":[{"@language":"en","@value":"Affeldt Reynald"}],"jpcoar:affiliationName":[{"@language":"en","@value":"Department of Computer Science, The University of Tokyo"}]},{"@id":"https://cir.nii.ac.jp/crid/1420282801203709312","@type":"Researcher","personIdentifier":[{"@type":"KAKEN_RESEARCHERS","@value":"00262155"},{"@type":"NRID","@value":"1000000262155"},{"@type":"NRID","@value":"9000258559604"},{"@type":"NRID","@value":"9000258237537"},{"@type":"NRID","@value":"9000413525779"},{"@type":"NRID","@value":"9000347535979"},{"@type":"NRID","@value":"9000347540440"},{"@type":"NRID","@value":"9000410022751"},{"@type":"NRID","@value":"9000408420511"},{"@type":"NRID","@value":"9000283468493"},{"@type":"NRID","@value":"9000409519535"},{"@type":"NRID","@value":"9000241842882"},{"@type":"NRID","@value":"9000020871446"},{"@type":"NRID","@value":"9000022143911"},{"@type":"RESEARCHMAP","@value":"https://researchmap.jp/naokikob"}],"foaf:name":[{"@language":"en","@value":"Kobayashi Naoki"}],"jpcoar:affiliationName":[{"@language":"en","@value":"Department of Computer Science, Tokyo Institute of Technology"}]},{"@id":"https://cir.nii.ac.jp/crid/1410001205222792322","@type":"Researcher","personIdentifier":[{"@type":"NRID","@value":"9000020871453"}],"foaf:name":[{"@language":"en","@value":"Yonezawa Akinori"}],"jpcoar:affiliationName":[{"@language":"en","@value":"Department of Computer Science, The University of Tokyo"}]}],"publication":{"publicationIdentifier":[{"@type":"EISSN","@value":"13497456"},{"@type":"LISSN","@value":"13497456"}],"prism:publicationName":[{"@language":"en","@value":"IPSJ Digital Courier"},{"@language":"en","@value":"ipsjdc"}],"dc:publisher":[{"@language":"en","@value":"Information Processing Society of Japan"},{"@language":"ja","@value":"一般社団法人 情報処理学会"}],"prism:publicationDate":"2005","prism:volume":"1","prism:startingPage":"117","prism:endingPage":"127"},"reviewed":"false","dcterms:accessRights":"http://purl.org/coar/access_right/c_abf2","url":[{"@id":"http://www.jstage.jst.go.jp/article/ipsjdc/1/0/1_0_117/_pdf"}],"availableAt":"2005","foaf:topic":[{"@id":"https://cir.nii.ac.jp/all?q=General%20Economics,%20Econometrics%20and%20Finance","dc:title":"General Economics, Econometrics and Finance"}],"relatedProduct":[{"@id":"https://cir.nii.ac.jp/crid/1360011144257030784","@type":"Article","relationType":["references"],"jpcoar:relatedTitle":[{"@value":"Simple Mail Transfer Protocol"}]},{"@id":"https://cir.nii.ac.jp/crid/1360011144494854656","@type":"Article","relationType":["references"],"jpcoar:relatedTitle":[{"@value":"Formal verification of concurrent programs using the Larch prover"}]},{"@id":"https://cir.nii.ac.jp/crid/1360011146181297408","@type":"Article","relationType":["references"],"jpcoar:relatedTitle":[{"@value":"Inductive definitions in the system Coq rules and properties"}]},{"@id":"https://cir.nii.ac.jp/crid/1361137044790138880","@type":"Article","relationType":["references"],"jpcoar:relatedTitle":[{"@value":"π-calculus in (Co)inductive-type theory"}]},{"@id":"https://cir.nii.ac.jp/crid/1361699995560389632","@type":"Article","relationType":["references"],"jpcoar:relatedTitle":[{"@value":"A modular coding of UNITY in COQ"}]},{"@id":"https://cir.nii.ac.jp/crid/1361981468717197696","@type":"Article","relationType":["references"],"jpcoar:relatedTitle":[{"@value":"Anytime, anywhere"}]},{"@id":"https://cir.nii.ac.jp/crid/1362544419682077056","@type":"Article","relationType":["references"],"jpcoar:relatedTitle":[{"@value":"AnZenMail: A Secure and Certified E-mail System"}]},{"@id":"https://cir.nii.ac.jp/crid/1363388843497985152","@type":"Article","relationType":["references"],"jpcoar:relatedTitle":[{"@value":"Mechanizing a theory of program composition for UNITY"}]},{"@id":"https://cir.nii.ac.jp/crid/1363388845390295424","@type":"Article","relationType":["references"],"jpcoar:relatedTitle":[{"@value":"Formal methods"}]}],"dataSourceIdentifier":[{"@type":"JALC","@value":"oai:japanlinkcenter.org:0024505859"},{"@type":"CROSSREF","@value":"10.2197/ipsjdc.1.117"},{"@type":"CIA","@value":"130000022400"},{"@type":"OPENAIRE","@value":"doi_dedup___::af2442240174affe0c5c0dbf2312b907"}]}