{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,2,5]],"date-time":"2026-02-05T13:08:41Z","timestamp":1770296921422,"version":"3.49.0"},"publisher-location":"Cham","reference-count":24,"publisher":"Springer International Publishing","isbn-type":[{"value":"9783030634056","type":"print"},{"value":"9783030634063","type":"electronic"}],"license":[{"start":{"date-parts":[[2020,1,1]],"date-time":"2020-01-01T00:00:00Z","timestamp":1577836800000},"content-version":"tdm","delay-in-days":0,"URL":"http:\/\/www.springer.com\/tdm"},{"start":{"date-parts":[[2020,1,1]],"date-time":"2020-01-01T00:00:00Z","timestamp":1577836800000},"content-version":"vor","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":[[2020]]},"DOI":"10.1007\/978-3-030-63406-3_4","type":"book-chapter","created":{"date-parts":[[2020,12,18]],"date-time":"2020-12-18T16:05:19Z","timestamp":1608307519000},"page":"55-72","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":3,"title":["Verification of Programs with Pointers in SPARK"],"prefix":"10.1007","author":[{"given":"Georges-Axel","family":"Jaloyan","sequence":"first","affiliation":[]},{"given":"Claire","family":"Dross","sequence":"additional","affiliation":[]},{"given":"Maroua","family":"Maalej","sequence":"additional","affiliation":[]},{"given":"Yannick","family":"Moy","sequence":"additional","affiliation":[]},{"given":"Andrei","family":"Paskevich","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2020,12,19]]},"reference":[{"key":"4_CR1","doi-asserted-by":"publisher","DOI":"10.1017\/CBO9781139629294","volume-title":"Building High Integrity Applications with SPARK","author":"J McCormick","year":"2015","unstructured":"McCormick, J., Chapin, P.: Building High Integrity Applications with SPARK. Cambridge University Press, Cambridge (2015)"},{"issue":"3","key":"4_CR2","doi-asserted-by":"publisher","first-page":"573","DOI":"10.1007\/s00165-014-0326-7","volume":"27","author":"F Kirchner","year":"2015","unstructured":"Kirchner, F., Kosmatov, N., Prevosto, V., Signoles, J., Yakobowski, B.: Frama-C: a software analysis perspective. Formal Aspects Comput. 27(3), 573\u2013609 (2015). https:\/\/doi.org\/10.1007\/s00165-014-0326-7","journal-title":"Formal Aspects Comput."},{"key":"4_CR3","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"37","DOI":"10.1007\/978-3-319-92432-8_3","volume-title":"Reliable Software Technologies \u2013 Ada-Europe 2018","author":"M Maalej","year":"2018","unstructured":"Maalej, M., Taft, T., Moy, Y.: Safe dynamic memory management in ada and SPARK. In: Casimiro, A., Ferreira, P.M. (eds.) Ada-Europe 2018. LNCS, vol. 10873, pp. 37\u201352. Springer, Cham (2018). https:\/\/doi.org\/10.1007\/978-3-319-92432-8_3"},{"key":"4_CR4","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"178","DOI":"10.1007\/978-3-030-53291-8_11","volume-title":"Computer Aided Verification","author":"C Dross","year":"2020","unstructured":"Dross, C., Kanig, J.: Recursive data structures in SPARK. In: Lahiri, S.K., Wang, C. (eds.) CAV 2020. LNCS, vol. 12225, pp. 178\u2013189. Springer, Cham (2020). https:\/\/doi.org\/10.1007\/978-3-030-53291-8_11"},{"key":"4_CR5","unstructured":"Dross, C.: Using pointers in spark (2019). https:\/\/blog.adacore.com\/using-pointers-in-spark"},{"key":"4_CR6","unstructured":"Dross, C.: Pointer based data-structures in spark (2019). https:\/\/blog.adacore.com\/pointer-based-data-structures-in-spark"},{"key":"4_CR7","unstructured":"Jaloyan, G.A.: Internship report: safe pointers in SPARK 2014 (2017). https:\/\/arxiv.org\/pdf\/1710.07047"},{"issue":"1","key":"4_CR8","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1016\/0304-3975(87)90045-4","volume":"50","author":"JY Girard","year":"1987","unstructured":"Girard, J.Y.: Linear logic. Theoret. Comput. Sci. 50(1), 1\u2013101 (1987)","journal-title":"Theoret. Comput. Sci."},{"key":"4_CR9","unstructured":"AdaLRM: Reference manual for the Ada(R) programming language. ANSI\/MIL-STD-1815A-1983 (1983)"},{"issue":"1","key":"4_CR10","doi-asserted-by":"publisher","first-page":"45","DOI":"10.1145\/199818.199860","volume":"30","author":"H Baker","year":"1995","unstructured":"Baker, H.: \u2018Use-once\u2019 variables and linear objects: storage management, reflection and multi-threading. SIGPLAN Not. 30(1), 45\u201352 (1995)","journal-title":"SIGPLAN Not."},{"key":"4_CR11","doi-asserted-by":"crossref","unstructured":"Clarke, D., Potter, J., Noble, J.: Ownership types for flexible alias protection. In: Proceedings of the 13th ACM SIGPLAN Conference on Object-oriented Programming, Systems, Languages, and Applications, pp. 48\u201364. ACM, New York (1998)","DOI":"10.1145\/286936.286947"},{"key":"4_CR12","doi-asserted-by":"crossref","unstructured":"Tschantz, M., Ernst, M.: Javari: adding reference immutability to Java. In: Proceedings of the 20th Annual ACM SIGPLAN Conference on Object-oriented Programming, Systems, Languages, and Applications, pp. 211\u2013230. ACM, New York (2005)","DOI":"10.1145\/1103845.1094828"},{"key":"4_CR13","doi-asserted-by":"crossref","unstructured":"Ma, K.K., Foster, J.: Inferring aliasing and encapsulation properties for Java. In: Proceedings of the 22nd Annual ACM SIGPLAN Conference on Object-oriented Programming Systems and Applications, pp. 423\u2013440. ACM, New York (2007)","DOI":"10.1145\/1297105.1297059"},{"key":"4_CR14","unstructured":"Reynolds, J.: Separation logic: a logic for shared mutable data structures. In: Proceedings of the 17th Annual IEEE Symposium on Logic in Computer Science, Washington, DC, USA, pp. 55\u201374. IEEE Computer Society (2002)"},{"key":"4_CR15","doi-asserted-by":"crossref","unstructured":"Distefano, D., Parkinson, M.: jStar: towards practical verification for Java. In: Proceedings of the 23rd ACM SIGPLAN Conference on Object-oriented Programming Systems Languages and Applications, pp. 213\u2013226. ACM, New York (2008)","DOI":"10.1145\/1449955.1449782"},{"key":"4_CR16","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"65","DOI":"10.1007\/978-3-662-49122-5_3","volume-title":"Verification, Model Checking, and Abstract Interpretation","author":"A Bakst","year":"2016","unstructured":"Bakst, A., Jhala, R.: Predicate abstraction for linked data structures. In: Jobstmann, B., Leino, K.R.M. (eds.) VMCAI 2016. LNCS, vol. 9583, pp. 65\u201384. Springer, Heidelberg (2016). https:\/\/doi.org\/10.1007\/978-3-662-49122-5_3"},{"issue":"5","key":"4_CR17","doi-asserted-by":"publisher","first-page":"282","DOI":"10.1145\/543552.512563","volume":"37","author":"D Grossman","year":"2002","unstructured":"Grossman, D., Morrisett, G., Jim, T., Hicks, M., Wang, Y., Cheney, J.: Region-based memory management in Cyclone. SIGPLAN Not. 37(5), 282\u2013293 (2002)","journal-title":"SIGPLAN Not."},{"issue":"1","key":"4_CR18","doi-asserted-by":"publisher","first-page":"94","DOI":"10.1145\/3139645.3139660","volume":"51","author":"A Balasubramanian","year":"2017","unstructured":"Balasubramanian, A., Baranowski, M., Burtsev, A., Panda, A., Rakamari\u0107, Z., Ruzhyk, L.: System programming in rust: beyond safety. SIGOPS Oper. Syst. Rev. 51(1), 94\u201399 (2017)","journal-title":"SIGOPS Oper. Syst. Rev."},{"issue":"POPL","key":"4_CR19","doi-asserted-by":"publisher","first-page":"66:1","DOI":"10.1145\/3158154","volume":"2","author":"R Jung","year":"2018","unstructured":"Jung, R., Jourdan, J.H., Krebbers, R., Dreyer, D.: RustBelt: securing the foundations of the rust programming language. Proc. ACM Program. Lang. 2(POPL), 66:1\u201366:34 (2018)","journal-title":"Proc. ACM Program. Lang."},{"key":"4_CR20","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":"4_CR21","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"364","DOI":"10.1007\/11804192_17","volume-title":"Formal Methods for Components and Objects","author":"M Barnett","year":"2006","unstructured":"Barnett, M., Chang, B.-Y.E., DeLine, R., Jacobs, B., Leino, K.R.M.: Boogie: a modular reusable verifier for object-oriented programs. In: de Boer, F.S., Bonsangue, M.M., Graf, S., de Roever, W.-P. (eds.) FMCO 2005. LNCS, vol. 4111, pp. 364\u2013387. Springer, Heidelberg (2006). https:\/\/doi.org\/10.1007\/11804192_17"},{"key":"4_CR22","unstructured":"AdaCore and Altran UK Ltd: SPARK 2014 Reference Manual (2019)"},{"key":"4_CR23","doi-asserted-by":"crossref","unstructured":"Astrauskas, V., M\u00fcller, P., Poli, F., Summers, A.J.: Leveraging rust types for modular specification and verification. Technical report, ETH Zurich (2018)","DOI":"10.1145\/3360573"},{"issue":"2","key":"4_CR24","doi-asserted-by":"publisher","first-page":"284","DOI":"10.1016\/j.ic.2007.12.004","volume":"207","author":"X Leroy","year":"2009","unstructured":"Leroy, X., Grall, H.: Coinductive big-step operational semantics. Inf. Comput. 207(2), 284\u2013304 (2009)","journal-title":"Inf. Comput."}],"container-title":["Lecture Notes in Computer Science","Formal Methods and Software Engineering"],"original-title":[],"language":"en","link":[{"URL":"http:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-030-63406-3_4","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2021,2,24]],"date-time":"2021-02-24T14:29:19Z","timestamp":1614176959000},"score":1,"resource":{"primary":{"URL":"http:\/\/link.springer.com\/10.1007\/978-3-030-63406-3_4"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2020]]},"ISBN":["9783030634056","9783030634063"],"references-count":24,"URL":"https:\/\/doi.org\/10.1007\/978-3-030-63406-3_4","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"value":"0302-9743","type":"print"},{"value":"1611-3349","type":"electronic"}],"subject":[],"published":{"date-parts":[[2020]]},"assertion":[{"value":"19 December 2020","order":1,"name":"first_online","label":"First Online","group":{"name":"ChapterHistory","label":"Chapter History"}},{"value":"ICFEM","order":1,"name":"conference_acronym","label":"Conference Acronym","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"International Conference on Formal Engineering Methods","order":2,"name":"conference_name","label":"Conference Name","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Singapore","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Singapore","order":4,"name":"conference_country","label":"Conference Country","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2020","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"1 March 2020","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"3 March 2020","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"22","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"icfem2020","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"https:\/\/formal-analysis.com\/icfem\/2020\/","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":"41","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":"16","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":"4","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":"39% - 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":"2","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)"}},{"value":"1 Doctoral symposium paper in the back matter","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)"}}]}}