Blaming the Client: On Data Refinement in the Presence of Pointers

Cited 7 time in webofscience Cited 0 time in scopus
  • Hit : 216
  • Download : 0
DC FieldValueLanguage
dc.contributor.authorFilipovic, Ivanako
dc.contributor.authorO'Hearn, Peterko
dc.contributor.authorTorp-Smith, Noahko
dc.contributor.authorYang, Hongseokko
dc.date.accessioned2017-08-08T06:54:33Z-
dc.date.available2017-08-08T06:54:33Z-
dc.date.created2017-08-02-
dc.date.created2017-08-02-
dc.date.created2017-08-02-
dc.date.created2017-08-02-
dc.date.issued2010-09-
dc.identifier.citationFORMAL ASPECTS OF COMPUTING, v.22, no.5, pp.547 - 583-
dc.identifier.issn0934-5043-
dc.identifier.urihttp://hdl.handle.net/10203/225287-
dc.description.abstractData refinement is a common approach to reasoning about programs, based on establishing that a concrete program indeed satisfies all the required properties imposed by an intended abstract pattern. Reasoning about programs in this setting becomes complex when use of pointers is assumed and, moreover, a well-known method for proving data refinement, namely the forward simulation method, becomes unsound in presence of pointers. The reason for unsoundness is the failure of the "lifting theorem" for simulations: that a simulation between abstract and concrete modules can be lifted to all client programs. The result is that simulation does not imply that a concrete can replace an abstract module in all contexts. Our diagnosis of this problem is that unsoundness is due to interference from the client programs. Rather than blame a module for the unsoundness of lifting simulations, our analysis places the blame on the client programs which cause the interference: when interference is not present, soundness is recovered. Technically, we present a novel instrumented semantics which is capable of detecting interference between a module and its client. With use of special simulation relations, namely growing relations, and interpreting the simulation method using the instrumented semantics, we obtain a lifting theorem. We then show situations under which simulation does indeed imply refinement.-
dc.languageEnglish-
dc.publisherSPRINGER-
dc.titleBlaming the Client: On Data Refinement in the Presence of Pointers-
dc.typeArticle-
dc.identifier.wosid000282102100004-
dc.identifier.scopusid2-s2.0-79957993477-
dc.type.rimsART-
dc.citation.volume22-
dc.citation.issue5-
dc.citation.beginningpage547-
dc.citation.endingpage583-
dc.citation.publicationnameFORMAL ASPECTS OF COMPUTING-
dc.identifier.doi10.1007/s00165-009-0125-8-
dc.contributor.localauthorYang, Hongseok-
dc.contributor.nonIdAuthorFilipovic, Ivana-
dc.contributor.nonIdAuthorO'Hearn, Peter-
dc.contributor.nonIdAuthorTorp-Smith, Noah-
dc.description.isOpenAccessN-
dc.type.journalArticleArticle-
dc.subject.keywordAuthorData refinement-
dc.subject.keywordAuthorSeparation logic-
dc.subject.keywordAuthorPointer aliasing-
dc.subject.keywordAuthorInterference-
dc.subject.keywordPlusOBJECT-ORIENTED PROGRAMS-
dc.subject.keywordPlusENCAPSULATION-
dc.subject.keywordPlusINVARIANTS-
dc.subject.keywordPlusOPERATIONS-
dc.subject.keywordPlusOWNERSHIP-
dc.subject.keywordPlusRESOURCES-
dc.subject.keywordPlusSEMANTICS-
dc.subject.keywordPlusLOGIC-
Appears in Collection
CS-Journal Papers(저널논문)
Files in This Item
There are no files associated with this item.
This item is cited by other documents in WoS
⊙ Detail Information in WoSⓡ Click to see webofscience_button
⊙ Cited 7 items in WoS Click to see citing articles in records_button

qr_code

  • mendeley

    citeulike


rss_1.0 rss_2.0 atom_1.0