{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,8,24]],"date-time":"2026-08-24T09:21:03Z","timestamp":1787563263992,"version":"build-2736575974"},"publisher-location":"Cham","reference-count":31,"publisher":"Springer International Publishing","isbn-type":[{"value":"9783030309411","type":"print"},{"value":"9783030309428","type":"electronic"}],"license":[{"start":{"date-parts":[[2019,1,1]],"date-time":"2019-01-01T00:00:00Z","timestamp":1546300800000},"content-version":"tdm","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2019]]},"DOI":"10.1007\/978-3-030-30942-8_20","type":"book-chapter","created":{"date-parts":[[2019,9,22]],"date-time":"2019-09-22T19:03:06Z","timestamp":1569178986000},"page":"319-336","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":18,"title":["Abstract Execution"],"prefix":"10.1007","author":[{"ORCID":"https:\/\/orcid.org\/0000-0003-4439-7129","authenticated-orcid":false,"given":"Dominic","family":"Steinh\u00f6fel","sequence":"first","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-8000-7613","authenticated-orcid":false,"given":"Reiner","family":"H\u00e4hnle","sequence":"additional","affiliation":[],"role":[{"vocabulary":"crossref","role":"author"}]}],"member":"297","published-online":{"date-parts":[[2019,9,23]]},"reference":[{"key":"20_CR1","series-title":"LNCS","doi-asserted-by":"publisher","DOI":"10.1007\/978-3-319-49812-6","volume-title":"Deductive Software Verification-The KeY Book: From Theory to Practice","year":"2016","unstructured":"Ahrendt, W., Beckert, B., Bubel, R., H\u00e4hnle, R., Schmitt, P., Ulbrich, M. (eds.): Deductive Software Verification-The KeY Book: From Theory to Practice. LNCS, vol. 10001. Springer, Heidelberg (2016). \nhttps:\/\/doi.org\/10.1007\/978-3-319-49812-6"},{"key":"20_CR2","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"200","DOI":"10.1007\/978-3-642-21437-0_17","volume-title":"FM 2011: Formal Methods","author":"G Barthe","year":"2011","unstructured":"Barthe, G., Crespo, J.M., Kunz, C.: Relational verification using product programs. In: Butler, M., Schulte, W. (eds.) FM 2011. LNCS, vol. 6664, pp. 200\u2013214. Springer, Heidelberg (2011). \nhttps:\/\/doi.org\/10.1007\/978-3-642-21437-0_17"},{"key":"20_CR3","unstructured":"Barthe, G., D\u2019Argenio, P.R., Rezk, T.: Secure information flow by self-composition. In: 17th IEEE Computer Security Foundations Workshop, CSFW-17, Pacific Grove, CA, USA, pp. 100\u2013114. IEEE Computer Society (2004)"},{"key":"20_CR4","doi-asserted-by":"crossref","unstructured":"Beckert, B., Ulbrich, M.: Trends in relational program verification. In: Principled Software Development - Essays Dedicated to Arnd Poetzsch-Heffter on the Occasion of his 60th Birthday, pp. 41\u201358 (2018)","DOI":"10.1007\/978-3-319-98047-8_3"},{"issue":"6","key":"20_CR5","doi-asserted-by":"publisher","first-page":"234","DOI":"10.1145\/390016.808445","volume":"10","author":"RS Boyer","year":"1975","unstructured":"Boyer, R.S., Elspas, B., Levitt, K.N.: SELECT\u2013a formal system for testing and debugging programs by symbolic execution. ACM SIGPLAN Not. 10(6), 234\u2013245 (1975)","journal-title":"ACM SIGPLAN Not."},{"key":"20_CR6","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"120","DOI":"10.1007\/978-3-662-45231-8_9","volume-title":"Leveraging Applications of Formal Methods, Verification and Validation. Specialized Techniques and Applications","author":"R Bubel","year":"2014","unstructured":"Bubel, R., H\u00e4hnle, R., Pelevina, M.: Fully abstract operation contracts. In: Margaria, T., Steffen, B. (eds.) ISoLA 2014. LNCS, vol. 8803, pp. 120\u2013134. Springer, Heidelberg (2014). \nhttps:\/\/doi.org\/10.1007\/978-3-662-45231-8_9"},{"issue":"1","key":"20_CR7","doi-asserted-by":"publisher","first-page":"41","DOI":"10.1093\/comjnl\/12.1.41","volume":"12","author":"RM Burstall","year":"1969","unstructured":"Burstall, R.M.: Proving properties of programs by structural induction. Comput. J. 12(1), 41\u201348 (1969)","journal-title":"Comput. J."},{"key":"20_CR8","unstructured":"Burstall, R.M.: Program proving as hand simulation with a little induction. In: Information Processing 1974, pp. 308\u2013312. Elsevier\/North-Holland (1974)"},{"key":"20_CR9","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"193","DOI":"10.1007\/978-3-540-32004-3_20","volume-title":"Security in Pervasive Computing","author":"\u00c1 Darvas","year":"2005","unstructured":"Darvas, \u00c1., H\u00e4hnle, R., Sands, D.: A theorem proving approach to analysis of secure information flow. In: Hutter, D., Ullmann, M. (eds.) SPC 2005. LNCS, vol. 3450, pp. 193\u2013209. Springer, Heidelberg (2005). \nhttps:\/\/doi.org\/10.1007\/978-3-540-32004-3_20"},{"key":"20_CR10","doi-asserted-by":"crossref","unstructured":"Eilertsen, A.M., Bagge, A.H., Stolz, V.: Safer refactorings. In: Proceedings of 7th International Symposium on Leveraging Applications of Formal Methods, ISoLA, pp. 517\u2013531 (2016)","DOI":"10.1007\/978-3-319-47166-2_36"},{"key":"20_CR11","unstructured":"Fowler, M.: Refactoring: Improving the Design of Existing Code. Object Technology Series. Addison-Wesley (1999)"},{"key":"20_CR12","unstructured":"Fowler, M.: Refactoring: Improving the Design of Existing Code. Addison-Wesley Signature Series, 2nd edn. Addison-Wesley Professional (2018)"},{"key":"20_CR13","doi-asserted-by":"crossref","unstructured":"Garrido, A., Meseguer, J.: Formal specification and verification of Java refactorings. In: Proceedings of 6th IEEE International Workshop on Source Code Analysis and Manipulation, SCAM 2006, pp. 165\u2013174. IEEE Computer Society (2006)","DOI":"10.1109\/SCAM.2006.16"},{"issue":"3","key":"20_CR14","doi-asserted-by":"publisher","first-page":"241","DOI":"10.1002\/stvr.1472","volume":"23","author":"B Godlin","year":"2013","unstructured":"Godlin, B., Strichman, O.: Regression verification: proving the equivalence of similar programs. Softw. Test. Verif. Reliab. 23(3), 241\u2013258 (2013)","journal-title":"Softw. Test. Verif. Reliab."},{"key":"20_CR15","series-title":"Lecture Notes in Computer Science (Lecture Notes in Artificial Intelligence)","doi-asserted-by":"publisher","first-page":"300","DOI":"10.1007\/978-3-642-38574-2_21","volume-title":"Automated Deduction \u2013 CADE-24","author":"R H\u00e4hnle","year":"2013","unstructured":"H\u00e4hnle, R., Schaefer, I., Bubel, R.: Reuse in software verification by abstract method calls. In: Bonacina, M.P. (ed.) CADE 2013. LNCS (LNAI), vol. 7898, pp. 300\u2013314. Springer, Heidelberg (2013). \nhttps:\/\/doi.org\/10.1007\/978-3-642-38574-2_21"},{"issue":"3","key":"20_CR16","doi-asserted-by":"publisher","first-page":"337","DOI":"10.1007\/s10817-017-9433-5","volume":"60","author":"M Kiefer","year":"2018","unstructured":"Kiefer, M., Klebanov, V., Ulbrich, M.: Relational program reasoning using compiler ir - combining static verification and dynamic analysis. J. Autom. Reas. 60(3), 337\u2013363 (2018)","journal-title":"J. Autom. Reas."},{"issue":"7","key":"20_CR17","doi-asserted-by":"publisher","first-page":"385","DOI":"10.1145\/360248.360252","volume":"19","author":"JC King","year":"1976","unstructured":"King, J.C.: Symbolic execution and program testing. Commun. ACM 19(7), 385\u2013394 (1976)","journal-title":"Commun. ACM"},{"key":"20_CR18","doi-asserted-by":"publisher","first-page":"327","DOI":"10.1145\/1542476.1542513","volume":"2009","author":"S Kundu","year":"2009","unstructured":"Kundu, S., Tatlock, Z., Lerner, S.: Proving optimizations correct using parameterized program equivalence. Proc. PLDI 2009, 327\u2013337 (2009)","journal-title":"Proc. PLDI"},{"key":"20_CR19","unstructured":"Lanzinger, F.: A divide-and-conquer strategy with block and loop contracts for deductive program verification. Bachelor thesis, Institute of Theoretical Informatics, Karlsruhe Institute of Technology, April 2018"},{"key":"20_CR20","unstructured":"Leavens, G.T., et al.: JML reference manual, draft revision 2344, May 2013. \nhttp:\/\/www.eecs.ucf.edu\/ leavens\/JML\/\/OldReleases\/jmlrefman.pdf"},{"issue":"7","key":"20_CR21","doi-asserted-by":"publisher","first-page":"107","DOI":"10.1145\/1538788.1538814","volume":"52","author":"X Leroy","year":"2009","unstructured":"Leroy, X.: Formal verification of a realistic compiler. Commun. ACM 52(7), 107\u2013115 (2009)","journal-title":"Commun. ACM"},{"key":"20_CR22","doi-asserted-by":"crossref","unstructured":"London, R.L.: Correctness of a compiler for a LISP subset. In: Proceedings of ACM Conference on Proving Assertions About Programs, pp. 121\u2013127. ACM (1972)","DOI":"10.1145\/942580.807080"},{"issue":"2","key":"20_CR23","doi-asserted-by":"publisher","first-page":"84","DOI":"10.1145\/3166064","volume":"61","author":"NP Lopes","year":"2018","unstructured":"Lopes, N.P., Menendez, D., Nagarakatte, S., Regehr, J.: Practical verification of peephole optimizations with alive. Commun. ACM 61(2), 84\u201391 (2018)","journal-title":"Commun. ACM"},{"key":"20_CR24","doi-asserted-by":"publisher","first-page":"33","DOI":"10.1090\/psapm\/019\/0242403","volume":"1","author":"J McCarthy","year":"1967","unstructured":"McCarthy, J., Painter, J.: Correctness of a compiler for arithmetic expressions. Math. Aspects Comput. Sci. 1, 33\u201341 (1967)","journal-title":"Math. Aspects Comput. Sci."},{"key":"20_CR25","doi-asserted-by":"crossref","unstructured":"Mechtaev, S., Griggio, A., Cimatti, A., Roychoudhury, A.: Symbolic execution with existential second-order constraints. In: Proceedings of 2018 Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software Engineering, pp. 389\u2013399 (2018)","DOI":"10.1145\/3236024.3236049"},{"key":"20_CR26","doi-asserted-by":"crossref","unstructured":"Necula, G.C.: Proof-carrying code. In: Proceedings of 24th ACM Symposium on Principles of Programming Languages, Paris, France, pp. 106\u2013119. ACM Press, January 1997","DOI":"10.1145\/263699.263712"},{"key":"20_CR27","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"57","DOI":"10.1007\/978-3-319-47846-3_5","volume-title":"Formal Methods and Software Engineering","author":"D Scheurer","year":"2016","unstructured":"Scheurer, D., H\u00e4hnle, R., Bubel, R.: A general lattice model for merging symbolic execution branches. In: Ogata, K., Lawford, M., Liu, S. (eds.) ICFEM 2016. LNCS, vol. 10009, pp. 57\u201373. Springer, Cham (2016). \nhttps:\/\/doi.org\/10.1007\/978-3-319-47846-3_5"},{"key":"20_CR28","doi-asserted-by":"crossref","unstructured":"Srivastava, S., Gulwani, S., Foster, J.S.: From program verification to program synthesis. In: Proceedings of 37th POPL, pp. 313\u2013326 (2010)","DOI":"10.1145\/1707801.1706337"},{"key":"20_CR29","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"424","DOI":"10.1007\/978-3-030-03418-4_25","volume-title":"Leveraging Applications of Formal Methods, Verification and Validation. Modeling","author":"D Steinh\u00f6fel","year":"2018","unstructured":"Steinh\u00f6fel, D., H\u00e4hnle, R.: Modular, correct compilation with automatic soundness proofs. In: Margaria, T., Steffen, B. (eds.) ISoLA 2018. LNCS, vol. 11244, pp. 424\u2013447. Springer, Cham (2018). \nhttps:\/\/doi.org\/10.1007\/978-3-030-03418-4_25"},{"key":"20_CR30","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"279","DOI":"10.1007\/978-3-319-66845-1_18","volume-title":"Integrated Formal Methods","author":"D Steinh\u00f6fel","year":"2017","unstructured":"Steinh\u00f6fel, D., Wasser, N.: A new invariant rule for the analysis of loops with non-standard control flows. In: Polikarpova, N., Schneider, S. (eds.) IFM 2017. LNCS, vol. 10510, pp. 279\u2013294. Springer, Cham (2017). \nhttps:\/\/doi.org\/10.1007\/978-3-319-66845-1_18"},{"key":"20_CR31","doi-asserted-by":"crossref","unstructured":"Tan, Y.K., Myreen, M.O., Kumar, R., Fox, A., Owens, S., Norrish, M.: A new verified compiler backend for CakeML. In: Proceedings of 21st International Conference on Functional Programming, pp. 60\u201373. ACM (2016)","DOI":"10.1145\/3022670.2951924"}],"container-title":["Lecture Notes in Computer Science","Formal Methods \u2013 The Next 30 Years"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-030-30942-8_20","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2020,5,5]],"date-time":"2020-05-05T02:09:01Z","timestamp":1588644541000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-030-30942-8_20"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2019]]},"ISBN":["9783030309411","9783030309428"],"references-count":31,"URL":"https:\/\/doi.org\/10.1007\/978-3-030-30942-8_20","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"value":"0302-9743","type":"print"},{"value":"1611-3349","type":"electronic"}],"subject":[],"published":{"date-parts":[[2019]]},"assertion":[{"value":"23 September 2019","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"FM","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"International Symposium on Formal Methods","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Porto","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Portugal","order":4,"name":"conference_country","label":"Conference Country","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2019","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"7 October 2019","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"11 October 2019","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"3","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"fm2019","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"http:\/\/formalmethods2019.inesctec.pt\/","order":11,"name":"conference_url","label":"Conference URL","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Single-blind","order":1,"name":"type","label":"Type","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"EasyChair","order":2,"name":"conference_management_system","label":"Conference Management System","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"129","order":3,"name":"number_of_submissions_sent_for_review","label":"Number of Submissions Sent for Review","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"44","order":4,"name":"number_of_full_papers_accepted","label":"Number of Full Papers Accepted","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"7","order":5,"name":"number_of_short_papers_accepted","label":"Number of Short Papers Accepted","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"34% - The value is computed by the equation \"Number of Full Papers Accepted \/ Number of Submissions Sent for Review * 100\" and then rounded to a whole number.","order":6,"name":"acceptance_rate_of_full_papers","label":"Acceptance Rate of Full Papers","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"4","order":7,"name":"average_number_of_reviews_per_paper","label":"Average Number of Reviews per Paper","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"5,5","order":8,"name":"average_number_of_papers_per_reviewer","label":"Average Number of Papers per Reviewer","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"No","order":9,"name":"external_reviewers_involved","label":"External Reviewers Involved","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}}]}}