{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,3,27]],"date-time":"2025-03-27T01:22:16Z","timestamp":1743038536713,"version":"3.40.3"},"publisher-location":"Berlin, Heidelberg","reference-count":28,"publisher":"Springer Berlin Heidelberg","isbn-type":[{"type":"print","value":"9783642357459"},{"type":"electronic","value":"9783642357466"}],"license":[{"start":{"date-parts":[[2012,1,1]],"date-time":"2012-01-01T00:00:00Z","timestamp":1325376000000},"content-version":"unspecified","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":[],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2012]]},"DOI":"10.1007\/978-3-642-35746-6_5","type":"book-chapter","created":{"date-parts":[[2012,12,13]],"date-time":"2012-12-13T20:38:40Z","timestamp":1355431120000},"page":"133-155","source":"Crossref","is-referenced-by-count":11,"title":["Automatic Verification of Advanced Object-Oriented Features: The AutoProof Approach"],"prefix":"10.1007","author":[{"given":"Julian","family":"Tschannen","sequence":"first","affiliation":[]},{"given":"Carlo Alberto","family":"Furia","sequence":"additional","affiliation":[]},{"given":"Martin","family":"Nordio","sequence":"additional","affiliation":[]},{"given":"Bertrand","family":"Meyer","sequence":"additional","affiliation":[]}],"member":"297","reference":[{"key":"5_CR1","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"387","DOI":"10.1007\/978-3-540-70592-5_17","volume-title":"ECOOP 2008 \u2013 Object-Oriented Programming","author":"A. Banerjee","year":"2008","unstructured":"Banerjee, A., Naumann, D.A., Rosenberg, S.: Regional Logic for Local Reasoning about Global Invariants. In: Dell\u2019Acqua, P. (ed.) ECOOP 2008. LNCS, vol.\u00a05142, pp. 387\u2013411. Springer, Heidelberg (2008)"},{"key":"5_CR2","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"49","DOI":"10.1007\/978-3-540-30569-9_3","volume-title":"Construction and Analysis of Safe, Secure, and Interoperable Smart Devices","author":"M. Barnett","year":"2005","unstructured":"Barnett, M., Leino, K.R.M., Schulte, W.: The Spec# Programming System: An Overview. In: Barthe, G., Burdy, L., Huisman, M., Lanet, J.-L., Muntean, T. (eds.) CASSIS 2004. LNCS, vol.\u00a03362, pp. 49\u201369. Springer, Heidelberg (2005)"},{"key":"5_CR3","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"336","DOI":"10.1007\/978-3-540-71289-3_26","volume-title":"Fundamental Approaches to Software Engineering","author":"\u00c1. Darvas","year":"2007","unstructured":"Darvas, \u00c1., Leino, K.R.M.: Practical Reasoning About Invocations and Implementations of Pure Methods. In: Dwyer, M.B., Lopes, A. (eds.) FASE 2007. LNCS, vol.\u00a04422, pp. 336\u2013351. Springer, Heidelberg (2007)"},{"key":"5_CR4","doi-asserted-by":"crossref","unstructured":"Distefano, D., Parkinson, M.J.: jStar: Towards Practical Verification for Java. In: Proceedings of OOPSLA, pp. 213\u2013226 (2008)","DOI":"10.1145\/1449955.1449782"},{"key":"5_CR5","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: PLDI, pp. 234\u2013245. ACM (2002)","DOI":"10.1145\/543552.512558"},{"key":"5_CR6","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"277","DOI":"10.1007\/978-3-642-15025-8_15","volume-title":"Fields of Logic and Computation","author":"C.A. Furia","year":"2010","unstructured":"Furia, C.A., Meyer, B.: Inferring Loop Invariants Using Postconditions. In: Blass, A., Dershowitz, N., Reisig, W. (eds.) Fields of Logic and Computation. LNCS, vol.\u00a06300, pp. 277\u2013300. Springer, Heidelberg (2010)"},{"key":"5_CR7","unstructured":"Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison Wesley (1994)"},{"key":"5_CR8","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"304","DOI":"10.1007\/978-3-642-17164-2_21","volume-title":"Programming Languages and Systems","author":"B. Jacobs","year":"2010","unstructured":"Jacobs, B., Smans, J., Piessens, F.: A Quick Tour of the VeriFast Program Verifier. In: Ueda, K. (ed.) APLAS 2010. LNCS, vol.\u00a06461, pp. 304\u2013311. Springer, Heidelberg (2010)"},{"issue":"2","key":"5_CR9","doi-asserted-by":"publisher","first-page":"159","DOI":"10.1007\/s00165-007-0026-7","volume":"19","author":"G.T. Leavens","year":"2007","unstructured":"Leavens, G.T., Leino, K.R.M., M\u00fcller, P.: Specification and verification challenges for sequential object-oriented programs. Formal Aspects of Computing\u00a019(2), 159\u2013189 (2007)","journal-title":"Formal Aspects of Computing"},{"key":"5_CR10","unstructured":"Leino, K.R.M.: This is Boogie 2. Technical report, Microsoft Research (2008)"},{"key":"5_CR11","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"348","DOI":"10.1007\/978-3-642-17511-4_20","volume-title":"Logic for Programming, Artificial Intelligence, and Reasoning","author":"K.R.M. Leino","year":"2010","unstructured":"Leino, K.R.M.: Dafny: An Automatic Program Verifier for Functional Correctness. In: Clarke, E.M., Voronkov, A. (eds.) LPAR-16 2010. LNCS, vol.\u00a06355, pp. 348\u2013370. Springer, Heidelberg (2010)"},{"key":"5_CR12","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"307","DOI":"10.1007\/978-3-540-78739-6_24","volume-title":"Programming Languages and Systems","author":"K.R.M. Leino","year":"2008","unstructured":"Leino, K.R.M., M\u00fcller, P.: Verification of Equivalent-Results Methods. In: Drossopoulou, S. (ed.) ESOP 2008. LNCS, vol.\u00a04960, pp. 307\u2013321. Springer, Heidelberg (2008)"},{"key":"5_CR13","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"378","DOI":"10.1007\/978-3-642-00590-9_27","volume-title":"Programming Languages and Systems","author":"K.R.M. Leino","year":"2009","unstructured":"Leino, K.R.M., M\u00fcller, P.: A Basis for Verifying Multi-threaded Programs. In: Castagna, G. (ed.) ESOP 2009. LNCS, vol.\u00a05502, pp. 378\u2013393. Springer, Heidelberg (2009)"},{"key":"5_CR14","unstructured":"Meyer, B.: Object-Oriented Software Construction, 2nd edn. Prentice Hall (1997)"},{"key":"5_CR15","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"crossref","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. LNCS, vol.\u00a02262. Springer, Heidelberg (2002)"},{"key":"5_CR16","doi-asserted-by":"crossref","unstructured":"M\u00fcller, P., Nordio, M.: Proof-transforming compilation of programs with abrupt termination. In: SAVCBS 2007: Proceedings of the 2007 Conference on Specification and Verification of Component-Based Systems, pp. 39\u201346 (2007)","DOI":"10.1145\/1292316.1292321"},{"key":"5_CR17","unstructured":"Nordio, M.: Proofs and Proof Transformations for Object-Oriented Programs. PhD thesis, ETH Zurich, Switzerland (2009)"},{"key":"5_CR18","unstructured":"Nordio, M., Calcagno, C., Meyer, B., M\u00fcller, P.: Reasoning about Function Objects. Technical Report 615, ETH Zurich (2008)"},{"key":"5_CR19","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"79","DOI":"10.1007\/978-3-642-13953-6_5","volume-title":"Objects, Models, Components, Patterns","author":"M. Nordio","year":"2010","unstructured":"Nordio, M., Calcagno, C., Meyer, B., M\u00fcller, P., Tschannen, J.: Reasoning about Function Objects. In: Vitek, J. (ed.) TOOLS 2010. LNCS, vol.\u00a06141, pp. 79\u201396. Springer, Heidelberg (2010)"},{"key":"5_CR20","series-title":"LNBIP","doi-asserted-by":"publisher","first-page":"195","DOI":"10.1007\/978-3-642-02571-6_12","volume-title":"Objects, Components, Models and Patterns","author":"M. Nordio","year":"2009","unstructured":"Nordio, M., Calcagno, C., M\u00fcller, P., Meyer, B.: A Sound and Complete Program Logic for Eiffel. In: Oriol, M., Meyer, B. (eds.) TOOLS EUROPE 2009. LNBIP, vol.\u00a033, pp. 195\u2013214. Springer, Heidelberg (2009)"},{"key":"5_CR21","unstructured":"Nordio, M., Estler, H.-C., Furia, C.A., Meyer, B.: Collaborative software development on the web, arXiv:1105.0768v3 (2011)"},{"key":"5_CR22","series-title":"LNBIP","first-page":"316","volume-title":"TOOLS-EUROPE 2008","author":"M. Nordio","year":"2008","unstructured":"Nordio, M., M\u00fcller, P., Meyer, B.: Proof-Transforming Compilation of Eiffel Programs. In: Paige, R.F., Meyer, B. (eds.) TOOLS-EUROPE 2008. LNBIP, vol.\u00a011, pp. 316\u2013335. Springer, Heidelberg (2008)"},{"key":"5_CR23","doi-asserted-by":"crossref","unstructured":"O\u2019Hearn, P.W., Yang, H., Reynolds, J.C.: Separation and information hiding. In: POPL 2004, pp. 268\u2013280 (2004)","DOI":"10.1145\/982962.964024"},{"key":"5_CR24","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"127","DOI":"10.1007\/978-3-642-15057-9_9","volume-title":"Verified Software: Theories, Tools, Experiments","author":"N. Polikarpova","year":"2010","unstructured":"Polikarpova, N., Furia, C.A., Meyer, B.: Specifying Reusable Components. In: Leavens, G.T., O\u2019Hearn, P., Rajamani, S.K. (eds.) VSTTE 2010. LNCS, vol.\u00a06217, pp. 127\u2013141. Springer, Heidelberg (2010)"},{"key":"5_CR25","unstructured":"Tschannen, J.: Automatic verification of Eiffel programs. Master\u2019s thesis, Chair of Software Engineering, ETH Zurich (2009)"},{"key":"5_CR26","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"382","DOI":"10.1007\/978-3-642-24690-6_26","volume-title":"Software Engineering and Formal Methods","author":"J. Tschannen","year":"2011","unstructured":"Tschannen, J., Furia, C.A., Nordio, M., Meyer, B.: Usable Verification of Object-Oriented Programs by Combining Static and Dynamic Techniques. In: Barthe, G., Pardo, A., Schneider, G. (eds.) SEFM 2011. LNCS, vol.\u00a07041, pp. 382\u2013398. Springer, Heidelberg (2011)"},{"key":"5_CR27","unstructured":"Tschannen, J., Furia, C.A., Nordio, M., Meyer, B.: Verifying Eiffel programs with Boogie. In: First International Workshop on Intermediate Verification Languages, BOOGIE (2011), \n                  \n                    http:\/\/arxiv.org\/abs\/1106.4700"},{"key":"5_CR28","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"151","DOI":"10.1007\/978-3-642-14107-2_8","volume-title":"ECOOP 2010 \u2013 Object-Oriented Programming","author":"S. Staden van","year":"2010","unstructured":"van Staden, S., Calcagno, C., Meyer, B.: Verifying Executable Object-Oriented Specifications with Separation Logic. In: D\u2019Hondt, T. (ed.) ECOOP 2010. LNCS, vol.\u00a06183, pp. 151\u2013174. Springer, Heidelberg (2010)"}],"container-title":["Lecture Notes in Computer Science","Tools for Practical Software Verification"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-642-35746-6_5","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2019,5,19]],"date-time":"2019-05-19T21:36:57Z","timestamp":1558301817000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-642-35746-6_5"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2012]]},"ISBN":["9783642357459","9783642357466"],"references-count":28,"URL":"https:\/\/doi.org\/10.1007\/978-3-642-35746-6_5","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2012]]}}}