{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2024,9,5]],"date-time":"2024-09-05T17:55:54Z","timestamp":1725558954878},"publisher-location":"Berlin, Heidelberg","reference-count":20,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"type":"print","value":"9783540254201"},{"type":"electronic","value":"9783540319849"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2005]]},"DOI":"10.1007\/978-3-540-31984-9_15","type":"book-chapter","created":{"date-parts":[[2010,7,13]],"date-time":"2010-07-13T14:26:18Z","timestamp":1279031178000},"page":"190-204","source":"Crossref","is-referenced-by-count":9,"title":["Observational Purity and Encapsulation"],"prefix":"10.1007","author":[{"given":"David A.","family":"Naumann","sequence":"first","affiliation":[]}],"member":"297","reference":[{"key":"15_CR1","first-page":"1","volume-title":"ECOOP 2004 \u2013 Object-Oriented Programming","author":"Jonathan Aldrich","year":"2004","unstructured":"Aldrich, J., Chambers, C.: Ownership domains: Separating aliasing policy from mechanism. In: European Conference on Object-Oriented Programming, pp. 1\u201325 (2004)"},{"key":"#cr-split#-15_CR2.1","unstructured":"Banerjee, A., Naumann, D.A.: Ownership confinement ensures representation independence for object-oriented programs. Journal of the ACM (2002);"},{"key":"#cr-split#-15_CR2.2","unstructured":"Accepted, revision pending. Extended version of [3]"},{"key":"15_CR3","doi-asserted-by":"crossref","unstructured":"Banerjee, A., Naumann, D.A.: Representation independence, confinement and access control. In: ACM Symp. on Princ. of Program. Lang (POPL), pp. 166\u2013177 (2002)","DOI":"10.1145\/565816.503289"},{"key":"15_CR4","doi-asserted-by":"crossref","unstructured":"Banerjee, A., Naumann, D.A.: State based ownership, reentrance, and encapsulation. Submitted (December 2004)","DOI":"10.1007\/11531142_17"},{"issue":"6","key":"15_CR5","doi-asserted-by":"publisher","first-page":"27","DOI":"10.5381\/jot.2004.3.6.a2","volume":"3","author":"M. Barnett","year":"2004","unstructured":"Barnett, M., DeLine, R., F\u00e4hndrich, M., Leino, K.R.M., Schulte, W.: Verification of objectoriented programs with invariants. Journal of Object Technology\u00a03(6), 27\u201356 (2004)","journal-title":"Journal of Object Technology"},{"key":"15_CR6","unstructured":"Barnett, M., Naumann, D.A., Schulte, W., Sun, Q.: 99.44% pure: Useful abstractions in specifications. In: ECOOP workshop on Formal Techniques for Java-like Programs (FTfJP), Technical Report NIII-R0426, University of Nijmegen (2004)"},{"issue":"3","key":"15_CR7","doi-asserted-by":"publisher","first-page":"557","DOI":"10.1016\/S0304-3975(02)00868-X","volume":"298","author":"C. Calcagno","year":"2003","unstructured":"Calcagno, C., O\u2019Hearn, P., Bornat, R.: Program logic and equivalence in the presence of garbage collection. Theoretical Comput. Sci.\u00a0298(3), 557\u2013581 (2003)","journal-title":"Theoretical Comput. Sci."},{"key":"15_CR8","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"471","DOI":"10.1007\/3-540-45614-7_27","volume-title":"FME 2002: Formal Methods - Getting IT Right","author":"A. Cavalcanti","year":"2002","unstructured":"Cavalcanti, A.L.C, Naumann, D.A.: Forward simulation for data refinement of classes. In: Eriksson, L.-H., Lindsay, P.A. (eds.) FME 2002. LNCS, vol.\u00a02391, pp. 471\u2013490. Springer, Heidelberg (2002)"},{"issue":"11","key":"15_CR9","doi-asserted-by":"crossref","first-page":"292","DOI":"10.1145\/583854.582447","volume":"37","author":"Dave Clarke","year":"2002","unstructured":"Clarke, D., Drossopoulou, S.: Ownership, encapsulation and the disjointness of type and effect. In: OOPSLA, pp. 292\u2013310 (November 2002)","journal-title":"ACM SIGPLAN Notices"},{"volume-title":"Data Refinement: Model-Oriented Proof Methods and their Comparison","year":"1998","key":"15_CR10","unstructured":"de Roever, W.-P., Engelhardt., K. (eds.): Data Refinement: Model-Oriented Proof Methods and their Comparison. Cambridge University Press, Cambridge (1998)"},{"key":"15_CR11","doi-asserted-by":"crossref","unstructured":"Flanagan, C., Leino, K.R.M., Lillibridge, M., Nelson, G., Saxe, J.B., Stata, R.: Extended static checking for Java. In: ACM Conf. on Program. Lang. Design and Implementation (PLDI), pp. 234\u2013245 (2002)","DOI":"10.1145\/543552.512558"},{"key":"15_CR12","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"262","DOI":"10.1007\/978-3-540-39656-7_11","volume-title":"Formal Methods for Components and Objects","author":"G.T. Leavens","year":"2003","unstructured":"Leavens, G.T., Cheon, Y., Clifton, C., Ruby, C., Cok, D.R.: How the design of JML accommodates both runtime assertion checking and formal verification. In: de Boer, F.S., Bonsangue, M.M., Graf, S., de Roever, W.-P. (eds.) FMCO 2002. LNCS, vol.\u00a02852, pp. 262\u2013284. Springer, Heidelberg (2003)"},{"key":"15_CR13","volume-title":"Object-oriented Software Construction","author":"B. Meyer","year":"1997","unstructured":"Meyer, B.: Object-oriented Software Construction, 2nd edn. Prentice Hall, NewYork (1997)","edition":"2"},{"key":"15_CR14","volume-title":"Foundations for Programming Languages","author":"J.C. Mitchell","year":"1996","unstructured":"Mitchell, J.C.: Foundations for Programming Languages. MIT Press, Cambridge (1996)"},{"key":"15_CR15","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","DOI":"10.1007\/3-540-45651-1","volume-title":"Modular Specification and Verification of Object-Oriented Programs","author":"P. M\u00fcller","year":"2002","unstructured":"M\u00fcller, P.: Modular Specification and Verification of Object-Oriented Programs. In: M\u00fcller, P. (ed.) Modular Specification and Verification of Object-Oriented Programs. LNCS, vol.\u00a02262. Springer, Heidelberg (2002)"},{"key":"15_CR16","doi-asserted-by":"crossref","unstructured":"Naumann, D.A., Barnett, M.: Towards imperative modules: Reasoning about invariants and sharing of mutable state (extended abstract). In: IEEE Symp. on Logic in Computer Science (LICS), pp. 313\u2013323 (2004)","DOI":"10.1109\/LICS.2004.1319626"},{"key":"15_CR17","unstructured":"Pierik, C., Clarke, D., de Boer, F.S.: Creational invariants. In: Proceedings of ECOOP workshop on Formal Techniques for Java-like Programs (FTfJP), Technical Report NIII-R0426, University of Nijmegen (2004)"},{"issue":"1","key":"15_CR18","doi-asserted-by":"publisher","first-page":"5","DOI":"10.1109\/JSAC.2002.806121","volume":"21","author":"A. Sabelfeld","year":"2003","unstructured":"Sabelfeld, A., Myers, A.C.: Language-based information-flow security. IEEE J. Selected Areas in Communications\u00a021(1), 5\u201319 (2003)","journal-title":"IEEE J. Selected Areas in Communications"},{"key":"15_CR19","doi-asserted-by":"crossref","unstructured":"S\u0103lcianu, A., Rinard, M.: A combined pointer and purity analysis for Java programs. Technical Report MIT-CSAIL-TR-949, Department of Computer Science, Massachusetts Institute of Technology (May 2004)","DOI":"10.1007\/978-3-540-30579-8_14"}],"container-title":["Lecture Notes in Computer Science","Fundamental Approaches to Software Engineering"],"original-title":[],"link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-540-31984-9_15.pdf","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2021,10,31]],"date-time":"2021-10-31T09:50:41Z","timestamp":1635673841000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-540-31984-9_15"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2005]]},"ISBN":["9783540254201","9783540319849"],"references-count":20,"URL":"https:\/\/doi.org\/10.1007\/978-3-540-31984-9_15","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2005]]}}}