{"id":"https://openalex.org/W2042220347","doi":"https://doi.org/10.1145/1542476.1542512","title":"Verified validation of lazy code motion","display_name":"Verified validation of lazy code motion","publication_year":2009,"publication_date":"2009-06-15","ids":{"openalex":"https://openalex.org/W2042220347","doi":"https://doi.org/10.1145/1542476.1542512","mag":"2042220347"},"language":"en","primary_location":{"id":"doi:10.1145/1542476.1542512","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1542476.1542512","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 30th ACM SIGPLAN Conference on Programming Language Design and Implementation","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"green","oa_url":"https://inria.hal.science/inria-00415865/document","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5031329578","display_name":"Jean-Baptiste Tristan","orcid":"https://orcid.org/0000-0003-2574-7883"},"institutions":[{"id":"https://openalex.org/I1326498283","display_name":"Institut national de recherche en informatique et en automatique","ror":"https://ror.org/02kvxyf05","country_code":"FR","type":"funder","lineage":["https://openalex.org/I1326498283"]}],"countries":["FR"],"is_corresponding":true,"raw_author_name":"Jean-Baptiste Tristan","raw_affiliation_strings":["INRIA Paris-Rocquencourt, Rocquencourt, France","INRIA, Paris Rocquencourt, Rocquencourt, France#TAB#"],"affiliations":[{"raw_affiliation_string":"INRIA Paris-Rocquencourt, Rocquencourt, France","institution_ids":["https://openalex.org/I1326498283"]},{"raw_affiliation_string":"INRIA, Paris Rocquencourt, Rocquencourt, France#TAB#","institution_ids":["https://openalex.org/I1326498283"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5058330133","display_name":"Xavier Leroy","orcid":"https://orcid.org/0000-0002-8971-9171"},"institutions":[{"id":"https://openalex.org/I1326498283","display_name":"Institut national de recherche en informatique et en automatique","ror":"https://ror.org/02kvxyf05","country_code":"FR","type":"funder","lineage":["https://openalex.org/I1326498283"]}],"countries":["FR"],"is_corresponding":false,"raw_author_name":"Xavier Leroy","raw_affiliation_strings":["INRIA Paris-Rocquencourt, Rocquencourt, France","INRIA, Paris Rocquencourt, Rocquencourt, France#TAB#"],"affiliations":[{"raw_affiliation_string":"INRIA Paris-Rocquencourt, Rocquencourt, France","institution_ids":["https://openalex.org/I1326498283"]},{"raw_affiliation_string":"INRIA, Paris Rocquencourt, Rocquencourt, France#TAB#","institution_ids":["https://openalex.org/I1326498283"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":["https://openalex.org/A5031329578"],"corresponding_institution_ids":["https://openalex.org/I1326498283"],"apc_list":null,"apc_paid":null,"fwci":9.4607,"has_fulltext":true,"cited_by_count":61,"citation_normalized_percentile":{"value":0.97979995,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":89,"max":99},"biblio":{"volume":null,"issue":null,"first_page":"316","last_page":"326"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.9995999932289124,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},"topics":[{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.9995999932289124,"subfield":{"id":"https://openalex.org/subfields/1702","display_name":"Artificial Intelligence"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9988999962806702,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}},{"id":"https://openalex.org/T10142","display_name":"Formal Methods in Verification","score":0.9954000115394592,"subfield":{"id":"https://openalex.org/subfields/1703","display_name":"Computational Theory and Mathematics"},"field":{"id":"https://openalex.org/fields/17","display_name":"Computer Science"},"domain":{"id":"https://openalex.org/domains/3","display_name":"Physical Sciences"}}],"keywords":[{"id":"https://openalex.org/keywords/validator","display_name":"Validator","score":0.9080685377120972},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8497687578201294},{"id":"https://openalex.org/keywords/correctness","display_name":"Correctness","score":0.7920604944229126},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.6482639312744141},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.641991376876831},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.5184333324432373},{"id":"https://openalex.org/keywords/semantics","display_name":"Semantics (computer science)","score":0.47983548045158386},{"id":"https://openalex.org/keywords/translation","display_name":"Translation (biology)","score":0.47148820757865906},{"id":"https://openalex.org/keywords/a-priori-and-a-posteriori","display_name":"A priori and a posteriori","score":0.47027045488357544},{"id":"https://openalex.org/keywords/transformation","display_name":"Transformation (genetics)","score":0.42960721254348755},{"id":"https://openalex.org/keywords/computation","display_name":"Computation","score":0.42247554659843445},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.3820115327835083},{"id":"https://openalex.org/keywords/algorithm","display_name":"Algorithm","score":0.3657267689704895}],"concepts":[{"id":"https://openalex.org/C35292069","wikidata":"https://www.wikidata.org/wiki/Q1575458","display_name":"Validator","level":2,"score":0.9080685377120972},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8497687578201294},{"id":"https://openalex.org/C55439883","wikidata":"https://www.wikidata.org/wiki/Q360812","display_name":"Correctness","level":2,"score":0.7920604944229126},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.6482639312744141},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.641991376876831},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.5184333324432373},{"id":"https://openalex.org/C184337299","wikidata":"https://www.wikidata.org/wiki/Q1437428","display_name":"Semantics (computer science)","level":2,"score":0.47983548045158386},{"id":"https://openalex.org/C149364088","wikidata":"https://www.wikidata.org/wiki/Q185917","display_name":"Translation (biology)","level":4,"score":0.47148820757865906},{"id":"https://openalex.org/C75553542","wikidata":"https://www.wikidata.org/wiki/Q178161","display_name":"A priori and a posteriori","level":2,"score":0.47027045488357544},{"id":"https://openalex.org/C204241405","wikidata":"https://www.wikidata.org/wiki/Q461499","display_name":"Transformation (genetics)","level":3,"score":0.42960721254348755},{"id":"https://openalex.org/C45374587","wikidata":"https://www.wikidata.org/wiki/Q12525525","display_name":"Computation","level":2,"score":0.42247554659843445},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.3820115327835083},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.3657267689704895},{"id":"https://openalex.org/C111472728","wikidata":"https://www.wikidata.org/wiki/Q9471","display_name":"Epistemology","level":1,"score":0.0},{"id":"https://openalex.org/C104317684","wikidata":"https://www.wikidata.org/wiki/Q7187","display_name":"Gene","level":2,"score":0.0},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.0},{"id":"https://openalex.org/C138885662","wikidata":"https://www.wikidata.org/wiki/Q5891","display_name":"Philosophy","level":0,"score":0.0},{"id":"https://openalex.org/C55493867","wikidata":"https://www.wikidata.org/wiki/Q7094","display_name":"Biochemistry","level":1,"score":0.0},{"id":"https://openalex.org/C105580179","wikidata":"https://www.wikidata.org/wiki/Q188928","display_name":"Messenger RNA","level":3,"score":0.0},{"id":"https://openalex.org/C185592680","wikidata":"https://www.wikidata.org/wiki/Q2329","display_name":"Chemistry","level":0,"score":0.0},{"id":"https://openalex.org/C136764020","wikidata":"https://www.wikidata.org/wiki/Q466","display_name":"World Wide Web","level":1,"score":0.0}],"mesh":[],"locations_count":6,"locations":[{"id":"doi:10.1145/1542476.1542512","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1542476.1542512","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 30th ACM SIGPLAN Conference on Programming Language Design and Implementation","raw_type":"proceedings-article"},{"id":"pmh:oai:HAL:inria-00415865v1","is_oa":true,"landing_page_url":"https://inria.hal.science/inria-00415865","pdf_url":"https://inria.hal.science/inria-00415865/document","source":{"id":"https://openalex.org/S4306402512","display_name":"HAL (Le Centre pour la Communication Scientifique Directe)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I1294671590","host_organization_name":"Centre National de la Recherche Scientifique","host_organization_lineage":["https://openalex.org/I1294671590"],"host_organization_lineage_names":[],"type":"repository"},"license":"other-oa","license_id":"https://openalex.org/licenses/other-oa","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"ACM SIGPLAN conference on Programming Language Design and Implementation (PLDI), Jun 2009, Dublin, Ireland. pp.316-326, &#x27E8;10.1145/1542476.1542512&#x27E9;","raw_type":"Conference papers"},{"id":"pmh:oai:CiteSeerX.psu:10.1.1.140.3595","is_oa":false,"landing_page_url":"http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.140.3595","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"http://cristal.inria.fr/~xleroy/publi/validation-LCM.pdf","raw_type":"text"},{"id":"pmh:oai:CiteSeerX.psu:10.1.1.156.2667","is_oa":false,"landing_page_url":"http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.156.2667","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"http://gallium.inria.fr/~xleroy/publi/validation-LCM.pdf","raw_type":"text"},{"id":"pmh:oai:CiteSeerX.psu:10.1.1.229.1504","is_oa":false,"landing_page_url":"http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.229.1504","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"http://hal.inria.fr/docs/00/41/58/65/PDF/validation-LCM.pdf","raw_type":"text"},{"id":"pmh:oai:CiteSeerX.psu:10.1.1.368.2566","is_oa":false,"landing_page_url":"http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.368.2566","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"http://john-tristan.appspot.com/pubs/lcm.pdf","raw_type":"text"}],"best_oa_location":{"id":"pmh:oai:HAL:inria-00415865v1","is_oa":true,"landing_page_url":"https://inria.hal.science/inria-00415865","pdf_url":"https://inria.hal.science/inria-00415865/document","source":{"id":"https://openalex.org/S4306402512","display_name":"HAL (Le Centre pour la Communication Scientifique Directe)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I1294671590","host_organization_name":"Centre National de la Recherche Scientifique","host_organization_lineage":["https://openalex.org/I1294671590"],"host_organization_lineage_names":[],"type":"repository"},"license":"other-oa","license_id":"https://openalex.org/licenses/other-oa","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"ACM SIGPLAN conference on Programming Language Design and Implementation (PLDI), Jun 2009, Dublin, Ireland. pp.316-326, &#x27E8;10.1145/1542476.1542512&#x27E9;","raw_type":"Conference papers"},"sustainable_development_goals":[],"awards":[{"id":"https://openalex.org/G416790429","display_name":null,"funder_award_id":"ANR-05-SSIA-0019","funder_id":"https://openalex.org/F4320320883","funder_display_name":"Agence Nationale de la Recherche"},{"id":"https://openalex.org/G766923599","display_name":null,"funder_award_id":"ANR-05","funder_id":"https://openalex.org/F4320320883","funder_display_name":"Agence Nationale de la Recherche"}],"funders":[{"id":"https://openalex.org/F4320320883","display_name":"Agence Nationale de la Recherche","ror":"https://ror.org/00rbzpz17"}],"has_content":{"grobid_xml":true,"pdf":true},"content_urls":{"pdf":"https://content.openalex.org/works/W2042220347.pdf","grobid_xml":"https://content.openalex.org/works/W2042220347.grobid-xml"},"referenced_works_count":26,"referenced_works":["https://openalex.org/W1508641834","https://openalex.org/W1553511155","https://openalex.org/W1575176197","https://openalex.org/W1587844310","https://openalex.org/W1594713566","https://openalex.org/W1604147565","https://openalex.org/W1774384314","https://openalex.org/W1981899763","https://openalex.org/W1983166063","https://openalex.org/W1994939977","https://openalex.org/W2025317174","https://openalex.org/W2040856861","https://openalex.org/W2052735108","https://openalex.org/W2058360616","https://openalex.org/W2087086761","https://openalex.org/W2088514859","https://openalex.org/W2098293014","https://openalex.org/W2116461111","https://openalex.org/W2125346056","https://openalex.org/W2129695855","https://openalex.org/W2140529677","https://openalex.org/W2144387778","https://openalex.org/W2149590446","https://openalex.org/W2154942048","https://openalex.org/W2911450990","https://openalex.org/W4247332426"],"related_works":["https://openalex.org/W4318683744","https://openalex.org/W2910132097","https://openalex.org/W4375842390","https://openalex.org/W2383224865","https://openalex.org/W3136330736","https://openalex.org/W4401490379","https://openalex.org/W1600705311","https://openalex.org/W4392754416","https://openalex.org/W4252501555","https://openalex.org/W2003848320"],"abstract_inverted_index":{"Translation":[0],"validation":[1,26,41,94],"establishes":[2],"a":[3,8,11,45,74,87,112],"posteriori":[4],"the":[5,29,93,97,123],"correctness":[6,91],"of":[7,10,90,92,108],"run":[9],"compilation":[12],"pass":[13,114],"or":[14],"other":[15],"program":[16],"transformation.":[17],"In":[18],"this":[19],"paper,":[20],"we":[21,110],"develop":[22],"an":[23,37,105],"efficient":[24],"translation":[25],"algorithm":[27],"for":[28,40,77],"Lazy":[30],"Code":[31],"Motion":[32],"(LCM)":[33],"optimization.":[34],"LCM":[35,113],"is":[36,44,116],"interesting":[38],"challenge":[39],"because":[42],"it":[43],"global":[46],"optimization":[47],"that":[48,62,67,115],"moves":[49],"code":[50],"across":[51],"loops.":[52],"Consequently,":[53],"care":[54],"must":[55],"be":[56],"taken":[57],"not":[58,69],"to":[59,79],"move":[60],"computations":[61],"may":[63,68],"fail":[64],"before":[65],"loops":[66],"terminate.":[70],"Our":[71],"validator":[72,103],"includes":[73],"specific":[75],"check":[76],"anticipability":[78],"rule":[80],"out":[81],"such":[82],"incorrect":[83],"moves.":[84],"We":[85],"present":[86],"mechanically-checked":[88],"proof":[89,99],"algorithm,":[95],"using":[96],"Coq":[98],"assistant.":[100],"Combining":[101],"our":[102],"with":[104],"unverified":[106],"implementation":[107],"LCM,":[109],"obtain":[111],"provably":[117],"semantics-preserving":[118],"and":[119],"was":[120],"integrated":[121],"in":[122],"CompCert":[124],"formally":[125],"verified":[126],"compiler.":[127]},"counts_by_year":[{"year":2025,"cited_by_count":1},{"year":2024,"cited_by_count":3},{"year":2023,"cited_by_count":1},{"year":2022,"cited_by_count":3},{"year":2021,"cited_by_count":8},{"year":2020,"cited_by_count":1},{"year":2019,"cited_by_count":3},{"year":2018,"cited_by_count":4},{"year":2016,"cited_by_count":2},{"year":2015,"cited_by_count":4},{"year":2014,"cited_by_count":5},{"year":2013,"cited_by_count":5},{"year":2012,"cited_by_count":6}],"updated_date":"2026-04-04T16:13:02.066488","created_date":"2025-10-10T00:00:00"}
