{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2025,3,25]],"date-time":"2025-03-25T14:46:46Z","timestamp":1742914006764,"version":"3.40.3"},"publisher-location":"Cham","reference-count":28,"publisher":"Springer International Publishing","isbn-type":[{"type":"print","value":"9783030908690"},{"type":"electronic","value":"9783030908706"}],"license":[{"start":{"date-parts":[[2021,1,1]],"date-time":"2021-01-01T00:00:00Z","timestamp":1609459200000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springer.com\/tdm"},{"start":{"date-parts":[[2021,1,1]],"date-time":"2021-01-01T00:00:00Z","timestamp":1609459200000},"content-version":"vor","delay-in-days":0,"URL":"https:\/\/www.springer.com\/tdm"}],"content-domain":{"domain":["link.springer.com"],"crossmark-restriction":false},"short-container-title":[],"published-print":{"date-parts":[[2021]]},"DOI":"10.1007\/978-3-030-90870-6_14","type":"book-chapter","created":{"date-parts":[[2021,11,10]],"date-time":"2021-11-10T00:06:44Z","timestamp":1636502804000},"page":"255-272","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":3,"title":["Integrating ADTs in KeY and Their Application to History-Based Reasoning"],"prefix":"10.1007","author":[{"ORCID":"https:\/\/orcid.org\/0000-0001-5003-598X","authenticated-orcid":false,"given":"Jinting","family":"Bian","sequence":"first","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0001-9677-6644","authenticated-orcid":false,"given":"Hans-Dieter A.","family":"Hiep","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"given":"Frank S.","family":"de Boer","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]},{"ORCID":"https:\/\/orcid.org\/0000-0003-2964-6844","authenticated-orcid":false,"given":"Stijn","family":"de Gouw","sequence":"additional","affiliation":[],"role":[{"role":"author","vocabulary":"crossref"}]}],"member":"297","published-online":{"date-parts":[[2021,11,10]]},"reference":[{"key":"14_CR1","doi-asserted-by":"crossref","unstructured":"Ahrendt, W., Beckert, B., Bubel, R., H\u00e4hnle, R., Schmitt, P.H., Ulbrich, M.: Deductive Software Verification\u2013The KeY, vol. 10001. LNCS. Springer, Cham (2016)","DOI":"10.1007\/978-3-319-49812-6"},{"key":"14_CR2","doi-asserted-by":"crossref","unstructured":"Banerjee, A., Naumann, D.A., Nikouei, M.: A logical analysis of framing for specifications with pure method calls. ACM Trans. Program. Lang. Syst. 40(2) (2018)","DOI":"10.1145\/3174801"},{"key":"14_CR3","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"35","DOI":"10.1007\/978-3-319-72308-2_3","volume-title":"Verified Software. Theories, Tools, and Experiments","author":"B Beckert","year":"2017","unstructured":"Beckert, B., Schiffl, J., Schmitt, P.H., Ulbrich, M.: Proving JDK\u2019s dual pivot quicksort correct. In: Paskevich, A., Wies, T. (eds.) VSTTE 2017. LNCS, vol. 10712, pp. 35\u201348. Springer, Cham (2017). https:\/\/doi.org\/10.1007\/978-3-319-72308-2_3"},{"key":"14_CR4","doi-asserted-by":"publisher","unstructured":"Bian, J., Hiep, H.A.: Integrating ADTs in KeY and their application to history-based reasoning: video material. FigShare (2021). https:\/\/doi.org\/10.6084\/m9.figshare.c.5413263","DOI":"10.6084\/m9.figshare.c.5413263"},{"key":"14_CR5","doi-asserted-by":"publisher","unstructured":"Bian, J., Hiep, H.A., de Boer, F.S., de Gouw, S.: Integrating ADTs in KeY and their application to history-based reasoning: proof files. Zenodo (2021). https:\/\/doi.org\/10.5281\/zenodo.4744268","DOI":"10.5281\/zenodo.4744268"},{"key":"14_CR6","unstructured":"Biendarra, J., Blanchette, J.C., Desharnais, M., Panny, L., Popescu, A., Traytel, D.: Defining (co)datatypes and primitively (co)recursive functions in Isabelle\/HOL (2016). https:\/\/isabelle.in.tum.de\/doc\/datatypes.pdf"},{"issue":"3","key":"14_CR7","doi-asserted-by":"publisher","first-page":"212","DOI":"10.1007\/s10009-004-0167-4","volume":"7","author":"L Burdy","year":"2005","unstructured":"Burdy, L., et al.: An overview of JML tools and applications. Int. J. Softw. Tools Technol. Transf. 7(3), 212\u2013232 (2005)","journal-title":"Int. J. Softw. Tools Technol. Transf."},{"key":"14_CR8","doi-asserted-by":"crossref","unstructured":"Costa, D., Andrzejak, A., Seboek, J., Lo, D.: Empirical study of usage and performance of Java collections. In: 8th Conference on Performance Engineering, pp. 389\u2013400. ACM (2017)","DOI":"10.1145\/3030207.3030221"},{"key":"14_CR9","doi-asserted-by":"crossref","unstructured":"Darvas, A., M\u00fcller, P.: Faithful mapping of model classes to mathematical structures. In: 2007 Conference on Specification and Verification of Component-Based Systems (SAVCBS), pp. 31\u201338. ACM (2007)","DOI":"10.1145\/1292316.1292320"},{"issue":"2","key":"14_CR10","doi-asserted-by":"publisher","first-page":"129","DOI":"10.1007\/s10817-013-9300-y","volume":"53","author":"S de Gouw","year":"2014","unstructured":"de Gouw, S., de Boer, F.S., Rot, J.: Proof pearl: the key to correct and stable sorting. J. Autom. Reason. 53(2), 129\u2013139 (2014)","journal-title":"J. Autom. Reason."},{"key":"14_CR11","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"273","DOI":"10.1007\/978-3-319-21690-4_16","volume-title":"Computer Aided Verification","author":"S de Gouw","year":"2015","unstructured":"de Gouw, S., Rot, J., de Boer, F.S., Bubel, R., H\u00e4hnle, R.: OpenJDK\u2019s Java.utils.Collection.sort() is broken: the good, the bad and the worst case. In: Kroening, D., P\u0103s\u0103reanu, C.S. (eds.) CAV 2015. LNCS, vol. 9206, pp. 273\u2013289. Springer, Cham (2015). https:\/\/doi.org\/10.1007\/978-3-319-21690-4_16"},{"key":"14_CR12","doi-asserted-by":"crossref","unstructured":"Distefano, D., Parkinson, M.J.: jStar: towards practical verification for Java. In: 23rd Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), pp. 213\u2013226. ACM (2008)","DOI":"10.1145\/1449764.1449782"},{"key":"14_CR13","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"125","DOI":"10.1007\/978-3-642-37036-6_8","volume-title":"Programming Languages and Systems","author":"J-C Filli\u00e2tre","year":"2013","unstructured":"Filli\u00e2tre, J.-C., Paskevich, A.: Why3 \u2014 where programs meet provers. In: Felleisen, M., Gardner, P. (eds.) ESOP 2013. LNCS, vol. 7792, pp. 125\u2013128. Springer, Heidelberg (2013). https:\/\/doi.org\/10.1007\/978-3-642-37036-6_8"},{"key":"14_CR14","doi-asserted-by":"publisher","first-page":"67","DOI":"10.1016\/j.entcs.2004.09.014","volume":"103","author":"M Giese","year":"2004","unstructured":"Giese, M.: Taclets and the KeY prover. Electron. Notes Theor. Comput. Sci. 103, 67\u201379 (2004)","journal-title":"Electron. Notes Theor. Comput. Sci."},{"key":"14_CR15","unstructured":"Habermalz, E.: Ein dynamisches automatisierbares interaktives Kalk\u00fcl f\u00fcr schematische theorie spezifische Regeln. Ph.D. thesis, University of Karlsruhe (2000)"},{"key":"14_CR16","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"199","DOI":"10.1007\/978-3-030-63461-2_11","volume-title":"Integrated Formal Methods","author":"H-DA Hiep","year":"2020","unstructured":"Hiep, H.-D.A., Bian, J., de Boer, F.S., de Gouw, S.: History-based specification and verification of Java collections in KeY. In: Dongol, B., Troubitsyna, E. (eds.) IFM 2020. LNCS, vol. 12546, pp. 199\u2013217. Springer, Cham (2020). https:\/\/doi.org\/10.1007\/978-3-030-63461-2_11"},{"key":"14_CR17","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"217","DOI":"10.1007\/978-3-030-45237-7_13","volume-title":"Tools and Algorithms for the Construction and Analysis of Systems","author":"H-DA Hiep","year":"2020","unstructured":"Hiep, H.-D.A., Maathuis, O., Bian, J., de Boer, F.S., van Eekelen, M., de Gouw, S.: Verifying OpenJDK\u2019s LinkedList using KeY. In: TACAS 2020. LNCS, vol. 12079, pp. 217\u2013234. Springer, Cham (2020). https:\/\/doi.org\/10.1007\/978-3-030-45237-7_13"},{"key":"14_CR18","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"175","DOI":"10.1007\/3-540-45442-X_11","volume-title":"Mathematics of Program Construction","author":"M Huisman","year":"2002","unstructured":"Huisman, M.: Verification of Java\u2019s AbstractCollection class: a case study. In: Boiten, E.A., M\u00f6ller, B. (eds.) MPC 2002. LNCS, vol. 2386, pp. 175\u2013194. Springer, Heidelberg (2002). https:\/\/doi.org\/10.1007\/3-540-45442-X_11"},{"issue":"3","key":"14_CR19","doi-asserted-by":"publisher","first-page":"332","DOI":"10.1007\/s100090100047","volume":"3","author":"M Huisman","year":"2001","unstructured":"Huisman, M., Jacobs, B., van den Berg, J.: A case study in class library verification: Java\u2019s Vector class. Int. J. Softw. Tools Technol. Transf. 3(3), 332\u2013352 (2001)","journal-title":"Int. J. Softw. Tools Technol. Transf."},{"key":"14_CR20","doi-asserted-by":"crossref","unstructured":"Kn\u00fcppel, A., Th\u00fcm, T., Pardylla, C., Schaefer, I.: Experience report on formally verifying parts of OpenJDK\u2019s API with KeY. In: F-IDE 2018: Formal Integrated Development Environment, volume 284 of EPTCS, pp. 53\u201370. OPA (2018)","DOI":"10.4204\/EPTCS.284.5"},{"key":"14_CR21","unstructured":"Leavens, G.T., Cheon, Y.: Design by contract with JML (2006). http:\/\/www.cs.utep.edu\/cheon\/cs3331\/data\/jmldbc.pdf"},{"key":"14_CR22","series-title":"Lecture Notes in Computer Science (Lecture Notes in Artificial Intelligence)","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":"KRM Leino","year":"2010","unstructured":"Leino, K.R.M.: Dafny: an automatic program verifier for functional correctness. In: Clarke, E.M., Voronkov, A. (eds.) LPAR 2010. LNCS (LNAI), vol. 6355, pp. 348\u2013370. Springer, Heidelberg (2010). https:\/\/doi.org\/10.1007\/978-3-642-17511-4_20"},{"key":"14_CR23","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":"KRM Leino","year":"2008","unstructured":"Leino, K.R.M., M\u00fcller, P.: Verification of equivalent-results methods. In: Drossopoulou, S. (ed.) ESOP 2008. LNCS, vol. 4960, pp. 307\u2013321. Springer, Heidelberg (2008). https:\/\/doi.org\/10.1007\/978-3-540-78739-6_24"},{"issue":"4","key":"14_CR24","doi-asserted-by":"publisher","first-page":"50","DOI":"10.1145\/942572.807045","volume":"9","author":"B Liskov","year":"1974","unstructured":"Liskov, B., Zilles, S.: Programming with abstract data types. ACM SIGPLAN Not. 9(4), 50\u201359 (1974)","journal-title":"ACM SIGPLAN Not."},{"key":"14_CR25","doi-asserted-by":"publisher","unstructured":"Nipkow, T., Paulson, L.C., Wenzel, M.: Isabelle\/HOL: A Proof Assistant for Higher-Order Logic, vol. 2283. LNCS. Springer, Heidelberg (2002). https:\/\/doi.org\/10.1007\/3-540-45949-9","DOI":"10.1007\/3-540-45949-9"},{"key":"14_CR26","unstructured":"Reynolds, J.C.: Separation logic: a logic for shared mutable data structures. In: 17th Symposium on Logic in Computer Science (LICS), pp. 55\u201374. IEEE (2002)"},{"key":"14_CR27","doi-asserted-by":"publisher","unstructured":"Sannella, D., Tarlecki, A.: Foundations of Algebraic Specification and Formal Software Development. Monographs in Theoretical Computer Science. Springer, Heidelberg (2012). https:\/\/doi.org\/10.1007\/978-3-642-17336-3","DOI":"10.1007\/978-3-642-17336-3"},{"key":"14_CR28","doi-asserted-by":"crossref","unstructured":"Traytel, D., Popescu, A., Blanchette, J.C.: Foundational, compositional (co)datatypes for higher-order logic: category theory applied to theorem proving. In: 27th Symposium on Logic in Computer Science (LICS), pp. 596\u2013605. IEEE (2012)","DOI":"10.1109\/LICS.2012.75"}],"container-title":["Lecture Notes in Computer Science","Formal Methods"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-030-90870-6_14","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2021,11,10]],"date-time":"2021-11-10T00:09:25Z","timestamp":1636502965000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/978-3-030-90870-6_14"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2021]]},"ISBN":["9783030908690","9783030908706"],"references-count":28,"URL":"https:\/\/doi.org\/10.1007\/978-3-030-90870-6_14","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"type":"print","value":"0302-9743"},{"type":"electronic","value":"1611-3349"}],"subject":[],"published":{"date-parts":[[2021]]},"assertion":[{"value":"10 November 2021","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":"2021","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"20 November 2021","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"26 November 2021","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"24","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"fm2021","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"http:\/\/formalmethods2021.csp.escience.cn\/dct\/page\/1","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":"131","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":"40","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":"2","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":"31% - 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":"3","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":"9","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":"Yes","order":9,"name":"external_reviewers_involved","label":"External Reviewers Involved","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}},{"value":"Additionally, this includes 4 invited full papers.","order":10,"name":"additional_info_on_review_process","label":"Additional Info on Review Process","group":{"name":"ConfEventPeerReviewInformation","label":"Peer Review Information (provided by the conference organizers)"}}]}}