{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2026,4,10]],"date-time":"2026-04-10T03:12:30Z","timestamp":1775790750213,"version":"3.50.1"},"publisher-location":"Cham","reference-count":21,"publisher":"Springer International Publishing","isbn-type":[{"value":"9783031172434","type":"print"},{"value":"9783031172441","type":"electronic"}],"license":[{"start":{"date-parts":[[2022,1,1]],"date-time":"2022-01-01T00:00:00Z","timestamp":1640995200000},"content-version":"tdm","delay-in-days":0,"URL":"https:\/\/www.springer.com\/tdm"},{"start":{"date-parts":[[2022,1,1]],"date-time":"2022-01-01T00:00:00Z","timestamp":1640995200000},"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":[[2022]]},"DOI":"10.1007\/978-3-031-17244-1_6","type":"book-chapter","created":{"date-parts":[[2022,10,9]],"date-time":"2022-10-09T19:33:23Z","timestamp":1665344003000},"page":"90-105","update-policy":"https:\/\/doi.org\/10.1007\/springer_crossmark_policy","source":"Crossref","is-referenced-by-count":42,"title":["Creusot: A\u00a0Foundry for\u00a0the\u00a0Deductive Verification of\u00a0Rust Programs"],"prefix":"10.1007","author":[{"ORCID":"https:\/\/orcid.org\/0000-0003-2530-8418","authenticated-orcid":false,"given":"Xavier","family":"Denis","sequence":"first","affiliation":[]},{"ORCID":"https:\/\/orcid.org\/0000-0002-9781-7097","authenticated-orcid":false,"given":"Jacques-Henri","family":"Jourdan","sequence":"additional","affiliation":[]},{"ORCID":"https:\/\/orcid.org\/0000-0003-3035-1269","authenticated-orcid":false,"given":"Claude","family":"March\u00e9","sequence":"additional","affiliation":[]}],"member":"297","published-online":{"date-parts":[[2022,10,10]]},"reference":[{"key":"6_CR1","doi-asserted-by":"publisher","unstructured":"Astrauskas, V., M\u00fcller, P., Poli, F., Summers, A.J.: Leveraging rust types for modular specification and verification. Proc. ACM Program. Lang. 3, 147:1\u2013147:30 (2019). https:\/\/doi.org\/10.1145\/3360573","DOI":"10.1145\/3360573"},{"key":"6_CR2","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"171","DOI":"10.1007\/978-3-642-22110-1_14","volume-title":"Computer Aided Verification","author":"C Barrett","year":"2011","unstructured":"Barrett, C., et al.: CVC4. In: Gopalakrishnan, G., Qadeer, S. (eds.) CAV 2011. LNCS, vol. 6806, pp. 171\u2013177. Springer, Heidelberg (2011). https:\/\/doi.org\/10.1007\/978-3-642-22110-1_14"},{"key":"6_CR3","unstructured":"Baudin, P., et al.: ACSL: ANSI\/ISO C Specification Language, version 1.16 (2020), https:\/\/frama-c.com\/html\/acsl.html"},{"issue":"6","key":"6_CR4","doi-asserted-by":"publisher","first-page":"709","DOI":"10.1007\/s10009-014-0314-5","volume":"17","author":"F Bobot","year":"2014","unstructured":"Bobot, F., Filli\u00e2tre, J.-C., March\u00e9, C., Paskevich, A.: Let\u2019s verify this with Why3. Int. J. Softw. Tools Technol. Transfer 17(6), 709\u2013727 (2014). https:\/\/doi.org\/10.1007\/s10009-014-0314-5","journal-title":"Int. J. Softw. Tools Technol. Transfer"},{"key":"6_CR5","doi-asserted-by":"publisher","first-page":"79","DOI":"10.4204\/EPTCS.149.8","volume":"149","author":"DR Cok","year":"2014","unstructured":"Cok, D.R.: OpenJML: software verification for java 7 using JML, OpenJDK, and Eclipse. Formal Integr. Dev. Env. 149, 79\u201392 (2014). https:\/\/doi.org\/10.4204\/EPTCS.149.8","journal-title":"Formal Integr. Dev. Env."},{"key":"6_CR6","unstructured":"Conchon, S., Coquereau, A., Iguernlala, M., Mebsout, A.: Alt-Ergo 2.2. In: Satisfiability Modulo Theories (2018). https:\/\/hal.inria.fr\/hal-01960203"},{"key":"6_CR7","doi-asserted-by":"publisher","unstructured":"Dailler, S., March\u00e9, C., Moy, Y.: Lightweight interactive proving inside an automatic program verifier. In: Formal Integrated Development Environment (2018). https:\/\/doi.org\/10.4204\/EPTCS.284.1","DOI":"10.4204\/EPTCS.284.1"},{"key":"6_CR8","unstructured":"Denis, X., Jourdan, J.H., March\u00e9, C.: The Creusot environment for the deductive verification of rust programs. Research report 9448, Inria Saclay - \u00cele de France (2021). https:\/\/hal.inria.fr\/hal-03526634"},{"key":"6_CR9","unstructured":"Filli\u00e2tre, J.C., Gondelman, L., Paskevich, A.: A pragmatic type system for deductive verification. Research report, Universit\u00e9 Paris Sud (2016). https:\/\/hal.archives-ouvertes.fr\/hal-01256434v3"},{"issue":"3","key":"6_CR10","doi-asserted-by":"publisher","first-page":"1","DOI":"10.1145\/2187671.2187678","volume":"44","author":"J Hatcliff","year":"2012","unstructured":"Hatcliff, J., Leavens, G.T., Leino, K.R.M., M\u00fcller, P., Parkinson, M.: Behavioral interface specification languages. ACM Comput. Surv. 44(3), 1\u201358 (2012). https:\/\/doi.org\/10.1145\/2187671.2187678","journal-title":"ACM Comput. Surv."},{"key":"6_CR11","doi-asserted-by":"publisher","unstructured":"Ho, S., Protzenko, J.: Aeneas: rust verification by functional translation (2022). https:\/\/doi.org\/10.48550\/ARXIV.2206.07185","DOI":"10.48550\/ARXIV.2206.07185"},{"key":"6_CR12","unstructured":"Hubert, T., March\u00e9, C.: Separation analysis for deductive verification. In: Heap Analysis and Verification, pp. 81\u201393 (2007). https:\/\/hal.inria.fr\/hal-03630177"},{"key":"6_CR13","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"55","DOI":"10.1007\/978-3-030-63406-3_4","volume-title":"Formal Methods and Software Engineering","author":"G-A Jaloyan","year":"2020","unstructured":"Jaloyan, G.-A., Dross, C., Maalej, M., Moy, Y., Paskevich, A.: Verification of programs with pointers in SPARK. In: Lin, S.-W., Hou, Z., Mahony, B. (eds.) ICFEM 2020. LNCS, vol. 12531, pp. 55\u201372. Springer, Cham (2020). https:\/\/doi.org\/10.1007\/978-3-030-63406-3_4"},{"key":"6_CR14","unstructured":"Leino, K.R.M., Moskal, M.: VACID-0: verification of ample correctness of invariants of data-structures, edition 0. In: Verified Software, Tools, Techniques and Experiments (2010)"},{"key":"6_CR15","doi-asserted-by":"publisher","unstructured":"Matsushita, Y., Denis, X., Jacques-Henri, J., Dreyer, D.: RustHornBelt: a semantic foundation for functional verification of rust programs with unsafe code. In: Programming Language Design and Implementation (2022). https:\/\/doi.org\/10.1145\/3519939.3523704","DOI":"10.1145\/3519939.3523704"},{"key":"6_CR16","doi-asserted-by":"publisher","unstructured":"Matsushita, Y., Tsukada, T., Kobayashi, N.: RustHorn: CHC-based verification for rust programs. ACM Trans. Progr. Lang. Syst. 43(4), 15:1\u201315:54 (2021). https:\/\/doi.org\/10.1145\/3462205","DOI":"10.1145\/3462205"},{"key":"6_CR17","doi-asserted-by":"publisher","DOI":"10.1017\/CBO9781139629294","volume-title":"Building High Integrity Applications with SPARK","author":"JW McCormick","year":"2015","unstructured":"McCormick, J.W., Chapin, P.C.: Building High Integrity Applications with SPARK. Cambridge University Press, Cambridge (2015)"},{"key":"6_CR18","unstructured":"Mol, M., other contributors: The Rosetta Code chrestomathy of programs, https:\/\/rosettacode.org"},{"key":"6_CR19","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"337","DOI":"10.1007\/978-3-540-78800-3_24","volume-title":"Tools and Algorithms for the Construction and Analysis of Systems","author":"L de Moura","year":"2008","unstructured":"de Moura, L., Bj\u00f8rner, N.: Z3: an efficient SMT solver. In: Ramakrishnan, C.R., Rehof, J. (eds.) TACAS 2008. LNCS, vol. 4963, pp. 337\u2013340. Springer, Heidelberg (2008). https:\/\/doi.org\/10.1007\/978-3-540-78800-3_24"},{"key":"6_CR20","series-title":"Lecture Notes in Computer Science","doi-asserted-by":"publisher","first-page":"148","DOI":"10.1007\/978-3-642-03013-0_8","volume-title":"ECOOP 2009 \u2013 Object-Oriented Programming","author":"J Smans","year":"2009","unstructured":"Smans, J., Jacobs, B., Piessens, F.: Implicit dynamic frames: combining dynamic frames and separation logic. In: Drossopoulou, S. (ed.) ECOOP 2009. LNCS, vol. 5653, pp. 148\u2013172. Springer, Heidelberg (2009). https:\/\/doi.org\/10.1007\/978-3-642-03013-0_8"},{"key":"6_CR21","unstructured":"The rust community: The std::cmp::Ord trait of Rust. https:\/\/doc.rust-lang.org\/std\/cmp\/trait.Ord.html"}],"container-title":["Lecture Notes in Computer Science","Formal Methods and Software Engineering"],"original-title":[],"language":"en","link":[{"URL":"https:\/\/link.springer.com\/content\/pdf\/10.1007\/978-3-031-17244-1_6","content-type":"unspecified","content-version":"vor","intended-application":"similarity-checking"}],"deposited":{"date-parts":[[2023,1,28]],"date-time":"2023-01-28T12:23:57Z","timestamp":1674908637000},"score":1,"resource":{"primary":{"URL":"https:\/\/link.springer.com\/10.1007\/978-3-031-17244-1_6"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2022]]},"ISBN":["9783031172434","9783031172441"],"references-count":21,"URL":"https:\/\/doi.org\/10.1007\/978-3-031-17244-1_6","relation":{},"ISSN":["0302-9743","1611-3349"],"issn-type":[{"value":"0302-9743","type":"print"},{"value":"1611-3349","type":"electronic"}],"subject":[],"published":{"date-parts":[[2022]]},"assertion":[{"value":"10 October 2022","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":"Madrid","order":3,"name":"conference_city","label":"Conference City","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"Spain","order":4,"name":"conference_country","label":"Conference Country","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"2022","order":5,"name":"conference_year","label":"Conference Year","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"24 October 2022","order":7,"name":"conference_start_date","label":"Conference Start Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"27 October 2022","order":8,"name":"conference_end_date","label":"Conference End Date","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"23","order":9,"name":"conference_number","label":"Conference Number","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"icfem2022","order":10,"name":"conference_id","label":"Conference ID","group":{"name":"ConferenceInfo","label":"Conference Information"}},{"value":"http:\/\/maude.ucm.es\/ICFEM22\/index.html","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":"61","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":"23","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":"0","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":"38% - 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":"3","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":"3 invited papers (two papers and one abstract)","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)"}}]}}