{"id":"https://openalex.org/W2141059677","doi":"https://doi.org/10.1145/1069774.1069792","title":"Formal validation of pattern matching code","display_name":"Formal validation of pattern matching code","publication_year":2005,"publication_date":"2005-07-11","ids":{"openalex":"https://openalex.org/W2141059677","doi":"https://doi.org/10.1145/1069774.1069792","mag":"2141059677"},"language":"en","primary_location":{"id":"doi:10.1145/1069774.1069792","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1069774.1069792","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 7th ACM SIGPLAN international conference on Principles and practice of declarative programming","raw_type":"proceedings-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":false,"oa_status":"closed","oa_url":null,"any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5055776480","display_name":"Claude Kirchner","orcid":"https://orcid.org/0009-0001-6778-1791"},"institutions":[{"id":"https://openalex.org/I1326498283","display_name":"Institut national de recherche en sciences et technologies du num\u00e9rique","ror":"https://ror.org/02kvxyf05","country_code":"FR","type":"government","lineage":["https://openalex.org/I1326498283"]},{"id":"https://openalex.org/I4210121838","display_name":"Laboratoire Lorrain de Recherche en Informatique et ses Applications","ror":"https://ror.org/02vnf0c38","country_code":"FR","type":"facility","lineage":["https://openalex.org/I1294671590","https://openalex.org/I1294671590","https://openalex.org/I1326498283","https://openalex.org/I277688954","https://openalex.org/I4210107720","https://openalex.org/I4210121838","https://openalex.org/I4210159245","https://openalex.org/I90183372"]}],"countries":["FR"],"is_corresponding":true,"raw_author_name":"Claude Kirchner","raw_affiliation_strings":["INRIA &amp; LORIA, Nancy, France","INRIA & LORIA, Nancy, France#TAB#"],"affiliations":[{"raw_affiliation_string":"INRIA &amp; LORIA, Nancy, France","institution_ids":["https://openalex.org/I1326498283","https://openalex.org/I4210121838"]},{"raw_affiliation_string":"INRIA & LORIA, Nancy, France#TAB#","institution_ids":["https://openalex.org/I1326498283","https://openalex.org/I4210121838"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5110500949","display_name":"Pierre\u2010Etienne Moreau","orcid":null},"institutions":[{"id":"https://openalex.org/I1326498283","display_name":"Institut national de recherche en sciences et technologies du num\u00e9rique","ror":"https://ror.org/02kvxyf05","country_code":"FR","type":"government","lineage":["https://openalex.org/I1326498283"]},{"id":"https://openalex.org/I4210121838","display_name":"Laboratoire Lorrain de Recherche en Informatique et ses Applications","ror":"https://ror.org/02vnf0c38","country_code":"FR","type":"facility","lineage":["https://openalex.org/I1294671590","https://openalex.org/I1294671590","https://openalex.org/I1326498283","https://openalex.org/I277688954","https://openalex.org/I4210107720","https://openalex.org/I4210121838","https://openalex.org/I4210159245","https://openalex.org/I90183372"]}],"countries":["FR"],"is_corresponding":false,"raw_author_name":"Pierre-Etienne Moreau","raw_affiliation_strings":["INRIA &amp; LORIA, Nancy, France","INRIA & LORIA, Nancy, France#TAB#"],"affiliations":[{"raw_affiliation_string":"INRIA &amp; LORIA, Nancy, France","institution_ids":["https://openalex.org/I1326498283","https://openalex.org/I4210121838"]},{"raw_affiliation_string":"INRIA & LORIA, Nancy, France#TAB#","institution_ids":["https://openalex.org/I1326498283","https://openalex.org/I4210121838"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5067967216","display_name":"Antoine Reilles","orcid":null},"institutions":[{"id":"https://openalex.org/I1294671590","display_name":"Centre National de la Recherche Scientifique","ror":"https://ror.org/02feahw73","country_code":"FR","type":"government","lineage":["https://openalex.org/I1294671590"]},{"id":"https://openalex.org/I4210121838","display_name":"Laboratoire Lorrain de Recherche en Informatique et ses Applications","ror":"https://ror.org/02vnf0c38","country_code":"FR","type":"facility","lineage":["https://openalex.org/I1294671590","https://openalex.org/I1294671590","https://openalex.org/I1326498283","https://openalex.org/I277688954","https://openalex.org/I4210107720","https://openalex.org/I4210121838","https://openalex.org/I4210159245","https://openalex.org/I90183372"]}],"countries":["FR"],"is_corresponding":false,"raw_author_name":"Antoine Reilles","raw_affiliation_strings":["CNRS &amp; LORIA, Nancy, France","CNRS & Loria, Nancy, France#TAB#"],"affiliations":[{"raw_affiliation_string":"CNRS &amp; LORIA, Nancy, France","institution_ids":["https://openalex.org/I4210121838","https://openalex.org/I1294671590"]},{"raw_affiliation_string":"CNRS & Loria, Nancy, France#TAB#","institution_ids":["https://openalex.org/I1294671590","https://openalex.org/I4210121838"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":3,"corresponding_author_ids":["https://openalex.org/A5055776480"],"corresponding_institution_ids":["https://openalex.org/I1326498283","https://openalex.org/I4210121838"],"apc_list":null,"apc_paid":null,"fwci":12.3672,"has_fulltext":false,"cited_by_count":29,"citation_normalized_percentile":{"value":0.98587236,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":90,"max":94},"biblio":{"volume":null,"issue":null,"first_page":"187","last_page":"197"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":1.0,"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":1.0,"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/T10142","display_name":"Formal Methods in Verification","score":0.9987000226974487,"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"}},{"id":"https://openalex.org/T10639","display_name":"Advanced Software Engineering Methodologies","score":0.998199999332428,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8468453288078308},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.8298605680465698},{"id":"https://openalex.org/keywords/correctness","display_name":"Correctness","score":0.7654718160629272},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.6879891753196716},{"id":"https://openalex.org/keywords/equivalence","display_name":"Equivalence (formal languages)","score":0.505596399307251},{"id":"https://openalex.org/keywords/java","display_name":"Java","score":0.49755004048347473},{"id":"https://openalex.org/keywords/pattern-matching","display_name":"Pattern matching","score":0.4828372597694397},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.46456730365753174},{"id":"https://openalex.org/keywords/matching","display_name":"Matching (statistics)","score":0.46162253618240356},{"id":"https://openalex.org/keywords/context","display_name":"Context (archaeology)","score":0.43730318546295166},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.3916969895362854},{"id":"https://openalex.org/keywords/set","display_name":"Set (abstract data type)","score":0.14064684510231018},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.10335731506347656},{"id":"https://openalex.org/keywords/discrete-mathematics","display_name":"Discrete mathematics","score":0.07512021064758301}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8468453288078308},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.8298605680465698},{"id":"https://openalex.org/C55439883","wikidata":"https://www.wikidata.org/wiki/Q360812","display_name":"Correctness","level":2,"score":0.7654718160629272},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.6879891753196716},{"id":"https://openalex.org/C2780069185","wikidata":"https://www.wikidata.org/wiki/Q7977945","display_name":"Equivalence (formal languages)","level":2,"score":0.505596399307251},{"id":"https://openalex.org/C548217200","wikidata":"https://www.wikidata.org/wiki/Q251","display_name":"Java","level":2,"score":0.49755004048347473},{"id":"https://openalex.org/C68859911","wikidata":"https://www.wikidata.org/wiki/Q1503724","display_name":"Pattern matching","level":2,"score":0.4828372597694397},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.46456730365753174},{"id":"https://openalex.org/C165064840","wikidata":"https://www.wikidata.org/wiki/Q1321061","display_name":"Matching (statistics)","level":2,"score":0.46162253618240356},{"id":"https://openalex.org/C2779343474","wikidata":"https://www.wikidata.org/wiki/Q3109175","display_name":"Context (archaeology)","level":2,"score":0.43730318546295166},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.3916969895362854},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.14064684510231018},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.10335731506347656},{"id":"https://openalex.org/C118615104","wikidata":"https://www.wikidata.org/wiki/Q121416","display_name":"Discrete mathematics","level":1,"score":0.07512021064758301},{"id":"https://openalex.org/C86803240","wikidata":"https://www.wikidata.org/wiki/Q420","display_name":"Biology","level":0,"score":0.0},{"id":"https://openalex.org/C151730666","wikidata":"https://www.wikidata.org/wiki/Q7205","display_name":"Paleontology","level":1,"score":0.0},{"id":"https://openalex.org/C105795698","wikidata":"https://www.wikidata.org/wiki/Q12483","display_name":"Statistics","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/1069774.1069792","is_oa":false,"landing_page_url":"https://doi.org/10.1145/1069774.1069792","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 7th ACM SIGPLAN international conference on Principles and practice of declarative programming","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[{"display_name":"Quality Education","id":"https://metadata.un.org/sdg/4","score":0.47999998927116394}],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":24,"referenced_works":["https://openalex.org/W1504529212","https://openalex.org/W1505627668","https://openalex.org/W1529372568","https://openalex.org/W1583295953","https://openalex.org/W1593280365","https://openalex.org/W1928673936","https://openalex.org/W1939467000","https://openalex.org/W2003848320","https://openalex.org/W2007455965","https://openalex.org/W2012426706","https://openalex.org/W2034711041","https://openalex.org/W2051632385","https://openalex.org/W2057405511","https://openalex.org/W2065635796","https://openalex.org/W2088514859","https://openalex.org/W2101310909","https://openalex.org/W2114980032","https://openalex.org/W2115472920","https://openalex.org/W2151894250","https://openalex.org/W2911450990","https://openalex.org/W2912966344","https://openalex.org/W2914260883","https://openalex.org/W3000114288","https://openalex.org/W4233252967"],"related_works":["https://openalex.org/W1667647204","https://openalex.org/W2404647514","https://openalex.org/W4247536566","https://openalex.org/W4241418540","https://openalex.org/W2018477250","https://openalex.org/W3119814709","https://openalex.org/W4252501555","https://openalex.org/W2003848320","https://openalex.org/W4224026286","https://openalex.org/W2114177167"],"abstract_inverted_index":{"When":[0],"addressing":[1],"the":[2,15,23,32,93,100,115,146,151,164,171,176],"formal":[3],"validation":[4],"of":[5,17,34,44,95,102,117,150,163,175],"generated":[6,24],"software,":[7],"two":[8],"main":[9],"alternatives":[10],"consist":[11],"either":[12],"to":[13,20,65,107,113,145,169],"prove":[14,114],"correctness":[16,33,101,120],"compilers":[18],"or":[19,48,56,81,135],"directly":[21,30],"validate":[22,170],"code.":[25],"Here,":[26],"we":[27,91],"focus":[28],"on":[29,161],"proving":[31],"compiled":[35,96,103,118],"code":[36,97,104,119,174],"issued":[37],"from":[38],"powerful":[39,88],"pattern":[40],"matching":[41,173],"constructions":[42],"typical":[43],"ML":[45,152],"like":[46,78,153],"languages":[47,51,77],"rewrite":[49],"based":[50],"such":[52],"as":[53],"ELAN,":[54],"Maude":[55],"Tom.":[57],"In":[58],"this":[59],"context,":[60],"our":[61],"first":[62],"contribution":[63],"is":[64],"define":[66,99],"a":[67,85,122,132],"general":[68],"framework":[69],"for":[70],"anchoring":[71],"algebraic":[72],"pattern-matching":[73,108],"capabilities":[74],"in":[75],"existing":[76],"C,":[79],"Java":[80],"ML.":[82],"Then,":[83],"using":[84],"just":[86],"enough":[87],"intermediate":[89],"language,":[90],"formalize":[92],"behavior":[94],"and":[98,167],"with":[105,121],"respect":[106],"behavior.":[109],"This":[110],"allows":[111],"us":[112],"equivalence":[116],"generic":[123],"first-order":[124],"proposition":[125],"whose":[126],"proof":[127,133],"could":[128],"be":[129],"achieved":[130],"via":[131],"assistant":[134],"an":[136],"automated":[137],"theorem":[138],"prover.":[139],"We":[140],"then":[141],"extend":[142],"these":[143],"results":[144],"multi-match":[147],"situation":[148],"characteristic":[149],"languages.":[154],"The":[155],"whole":[156],"approach":[157],"has":[158],"been":[159],"implemented":[160],"top":[162],"Tom":[165,177],"compiler":[166,178],"used":[168],"syntactic":[172],"itself.":[179]},"counts_by_year":[{"year":2024,"cited_by_count":1}],"updated_date":"2026-03-24T08:02:53.985720","created_date":"2025-10-10T00:00:00"}
