{"id":"https://openalex.org/W2965156518","doi":"https://doi.org/10.1145/3341690","title":"Equations reloaded: high-level dependently-typed functional programming and proving in Coq","display_name":"Equations reloaded: high-level dependently-typed functional programming and proving in Coq","publication_year":2019,"publication_date":"2019-07-26","ids":{"openalex":"https://openalex.org/W2965156518","doi":"https://doi.org/10.1145/3341690","mag":"2965156518"},"language":"en","primary_location":{"id":"doi:10.1145/3341690","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3341690","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3341690","source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"diamond","oa_url":"https://dl.acm.org/doi/pdf/10.1145/3341690","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5065124885","display_name":"Matthieu Sozeau","orcid":"https://orcid.org/0000-0001-6452-8806"},"institutions":[{"id":"https://openalex.org/I169173203","display_name":"D\u00e9l\u00e9gation Paris 7","ror":"https://ror.org/00bw5n526","country_code":"FR","type":"government","lineage":["https://openalex.org/I154526488","https://openalex.org/I169173203"]},{"id":"https://openalex.org/I204730241","display_name":"Universit\u00e9 Paris Cit\u00e9","ror":"https://ror.org/05f82e368","country_code":"FR","type":"education","lineage":["https://openalex.org/I204730241"]},{"id":"https://openalex.org/I4210117673","display_name":"Institut de Recherche en Informatique Fondamentale","ror":"https://ror.org/02krdtz55","country_code":"FR","type":"facility","lineage":["https://openalex.org/I1294671590","https://openalex.org/I1294671590","https://openalex.org/I204730241","https://openalex.org/I4210089394","https://openalex.org/I4210117673","https://openalex.org/I4210139971"]}],"countries":["FR"],"is_corresponding":false,"raw_author_name":"Matthieu Sozeau","raw_affiliation_strings":["Inria, France / IRIF, France / University of Paris Diderot, France","IRIF (UMR_8243) - Institut de Recherche en Informatique Fondamentale (Universit\u00e9 de Paris\r\nB\u00e2timent Sophie Germain, Case courrier 7014\r\n8 Place Aur\u00e9lie Nemours\r\n75205 Paris Cedex 13  - France)","PI.R2 - Design, study and implementation of languages for proofs and programs (France)"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Inria, France / IRIF, France / University of Paris Diderot, France","institution_ids":["https://openalex.org/I169173203","https://openalex.org/I204730241"]},{"raw_affiliation_string":"IRIF (UMR_8243) - Institut de Recherche en Informatique Fondamentale (Universit\u00e9 de Paris\r\nB\u00e2timent Sophie Germain, Case courrier 7014\r\n8 Place Aur\u00e9lie Nemours\r\n75205 Paris Cedex 13  - France)","institution_ids":["https://openalex.org/I204730241","https://openalex.org/I4210117673"]},{"raw_affiliation_string":"PI.R2 - Design, study and implementation of languages for proofs and programs (France)","institution_ids":[]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5023514858","display_name":"Cyprien Mangin","orcid":null},"institutions":[{"id":"https://openalex.org/I169173203","display_name":"D\u00e9l\u00e9gation Paris 7","ror":"https://ror.org/00bw5n526","country_code":"FR","type":"government","lineage":["https://openalex.org/I154526488","https://openalex.org/I169173203"]},{"id":"https://openalex.org/I204730241","display_name":"Universit\u00e9 Paris Cit\u00e9","ror":"https://ror.org/05f82e368","country_code":"FR","type":"education","lineage":["https://openalex.org/I204730241"]},{"id":"https://openalex.org/I4210117673","display_name":"Institut de Recherche en Informatique Fondamentale","ror":"https://ror.org/02krdtz55","country_code":"FR","type":"facility","lineage":["https://openalex.org/I1294671590","https://openalex.org/I1294671590","https://openalex.org/I204730241","https://openalex.org/I4210089394","https://openalex.org/I4210117673","https://openalex.org/I4210139971"]}],"countries":["FR"],"is_corresponding":false,"raw_author_name":"Cyprien Mangin","raw_affiliation_strings":["Inria, France / IRIF, France / University of Paris Diderot, France","IRIF (UMR_8243) - Institut de Recherche en Informatique Fondamentale (Universit\u00e9 de Paris\r\nB\u00e2timent Sophie Germain, Case courrier 7014\r\n8 Place Aur\u00e9lie Nemours\r\n75205 Paris Cedex 13  - France)","PI.R2 - Design, study and implementation of languages for proofs and programs (France)"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Inria, France / IRIF, France / University of Paris Diderot, France","institution_ids":["https://openalex.org/I169173203","https://openalex.org/I204730241"]},{"raw_affiliation_string":"IRIF (UMR_8243) - Institut de Recherche en Informatique Fondamentale (Universit\u00e9 de Paris\r\nB\u00e2timent Sophie Germain, Case courrier 7014\r\n8 Place Aur\u00e9lie Nemours\r\n75205 Paris Cedex 13  - France)","institution_ids":["https://openalex.org/I204730241","https://openalex.org/I4210117673"]},{"raw_affiliation_string":"PI.R2 - Design, study and implementation of languages for proofs and programs (France)","institution_ids":[]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":3,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":4.4357,"has_fulltext":true,"cited_by_count":44,"citation_normalized_percentile":{"value":0.95345121,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":97,"max":99},"biblio":{"volume":"3","issue":"ICFP","first_page":"1","last_page":"29"},"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.9998999834060669,"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.9998999834060669,"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.994700014591217,"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/T11424","display_name":"Security and Verification in Computing","score":0.9901000261306763,"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/programming-language","display_name":"Programming language","score":0.7566263675689697},{"id":"https://openalex.org/keywords/proof-assistant","display_name":"Proof assistant","score":0.7399677634239197},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.7076606154441833},{"id":"https://openalex.org/keywords/notation","display_name":"Notation","score":0.5693901777267456},{"id":"https://openalex.org/keywords/functional-programming","display_name":"Functional programming","score":0.5610365271568298},{"id":"https://openalex.org/keywords/metaprogramming","display_name":"Metaprogramming","score":0.549582302570343},{"id":"https://openalex.org/keywords/recursion","display_name":"Recursion (computer science)","score":0.5287135243415833},{"id":"https://openalex.org/keywords/property","display_name":"Property (philosophy)","score":0.47424501180648804},{"id":"https://openalex.org/keywords/extension","display_name":"Extension (predicate logic)","score":0.44318100810050964},{"id":"https://openalex.org/keywords/function","display_name":"Function (biology)","score":0.41795504093170166},{"id":"https://openalex.org/keywords/calculus","display_name":"Calculus (dental)","score":0.3490751385688782},{"id":"https://openalex.org/keywords/algebra-over-a-field","display_name":"Algebra over a field","score":0.3428802490234375},{"id":"https://openalex.org/keywords/mathematical-proof","display_name":"Mathematical proof","score":0.25017768144607544},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.23807761073112488},{"id":"https://openalex.org/keywords/arithmetic","display_name":"Arithmetic","score":0.1239641010761261},{"id":"https://openalex.org/keywords/pure-mathematics","display_name":"Pure mathematics","score":0.1062164306640625}],"concepts":[{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.7566263675689697},{"id":"https://openalex.org/C203265346","wikidata":"https://www.wikidata.org/wiki/Q11387554","display_name":"Proof assistant","level":3,"score":0.7399677634239197},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7076606154441833},{"id":"https://openalex.org/C45357846","wikidata":"https://www.wikidata.org/wiki/Q2001982","display_name":"Notation","level":2,"score":0.5693901777267456},{"id":"https://openalex.org/C42383842","wikidata":"https://www.wikidata.org/wiki/Q193076","display_name":"Functional programming","level":2,"score":0.5610365271568298},{"id":"https://openalex.org/C35390924","wikidata":"https://www.wikidata.org/wiki/Q661075","display_name":"Metaprogramming","level":2,"score":0.549582302570343},{"id":"https://openalex.org/C168773036","wikidata":"https://www.wikidata.org/wiki/Q264164","display_name":"Recursion (computer science)","level":2,"score":0.5287135243415833},{"id":"https://openalex.org/C189950617","wikidata":"https://www.wikidata.org/wiki/Q937228","display_name":"Property (philosophy)","level":2,"score":0.47424501180648804},{"id":"https://openalex.org/C2778029271","wikidata":"https://www.wikidata.org/wiki/Q5421931","display_name":"Extension (predicate logic)","level":2,"score":0.44318100810050964},{"id":"https://openalex.org/C14036430","wikidata":"https://www.wikidata.org/wiki/Q3736076","display_name":"Function (biology)","level":2,"score":0.41795504093170166},{"id":"https://openalex.org/C2777686260","wikidata":"https://www.wikidata.org/wiki/Q144037","display_name":"Calculus (dental)","level":2,"score":0.3490751385688782},{"id":"https://openalex.org/C136119220","wikidata":"https://www.wikidata.org/wiki/Q1000660","display_name":"Algebra over a field","level":2,"score":0.3428802490234375},{"id":"https://openalex.org/C108710211","wikidata":"https://www.wikidata.org/wiki/Q11538","display_name":"Mathematical proof","level":2,"score":0.25017768144607544},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.23807761073112488},{"id":"https://openalex.org/C94375191","wikidata":"https://www.wikidata.org/wiki/Q11205","display_name":"Arithmetic","level":1,"score":0.1239641010761261},{"id":"https://openalex.org/C202444582","wikidata":"https://www.wikidata.org/wiki/Q837863","display_name":"Pure mathematics","level":1,"score":0.1062164306640625},{"id":"https://openalex.org/C2524010","wikidata":"https://www.wikidata.org/wiki/Q8087","display_name":"Geometry","level":1,"score":0.0},{"id":"https://openalex.org/C199343813","wikidata":"https://www.wikidata.org/wiki/Q12128","display_name":"Dentistry","level":1,"score":0.0},{"id":"https://openalex.org/C86803240","wikidata":"https://www.wikidata.org/wiki/Q420","display_name":"Biology","level":0,"score":0.0},{"id":"https://openalex.org/C111472728","wikidata":"https://www.wikidata.org/wiki/Q9471","display_name":"Epistemology","level":1,"score":0.0},{"id":"https://openalex.org/C71924100","wikidata":"https://www.wikidata.org/wiki/Q11190","display_name":"Medicine","level":0,"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/C78458016","wikidata":"https://www.wikidata.org/wiki/Q840400","display_name":"Evolutionary biology","level":1,"score":0.0}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.1145/3341690","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3341690","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3341690","source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"},{"id":"pmh:oai:HAL:hal-01671777v3","is_oa":true,"landing_page_url":"https://inria.hal.science/hal-01671777","pdf_url":null,"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":"Proceedings of the ACM on Programming Languages, 2019, 3 (ICFP), pp.1-29. &#x27E8;10.1145/3341690&#x27E9;","raw_type":"info:eu-repo/semantics/article"}],"best_oa_location":{"id":"doi:10.1145/3341690","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3341690","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3341690","source":{"id":"https://openalex.org/S4210216081","display_name":"Proceedings of the ACM on Programming Languages","issn_l":"2475-1421","issn":["2475-1421"],"is_oa":true,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310319798","host_organization_name":"Association for Computing Machinery","host_organization_lineage":["https://openalex.org/P4310319798"],"host_organization_lineage_names":["Association for Computing Machinery"],"type":"journal"},"license":"cc-by","license_id":"https://openalex.org/licenses/cc-by","version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"},"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"grobid_xml":true,"pdf":true},"content_urls":{"pdf":"https://content.openalex.org/works/W2965156518.pdf","grobid_xml":"https://content.openalex.org/works/W2965156518.grobid-xml"},"referenced_works_count":33,"referenced_works":["https://openalex.org/W16315125","https://openalex.org/W158437490","https://openalex.org/W1505308924","https://openalex.org/W1532322885","https://openalex.org/W1569975162","https://openalex.org/W1570978294","https://openalex.org/W1716456307","https://openalex.org/W2005917745","https://openalex.org/W2062887328","https://openalex.org/W2077213360","https://openalex.org/W2097281451","https://openalex.org/W2098691999","https://openalex.org/W2133629640","https://openalex.org/W2158830522","https://openalex.org/W2171496589","https://openalex.org/W2188068291","https://openalex.org/W2286356426","https://openalex.org/W2561675875","https://openalex.org/W2562932989","https://openalex.org/W2745584927","https://openalex.org/W2751092273","https://openalex.org/W2751878617","https://openalex.org/W2769582192","https://openalex.org/W2777364118","https://openalex.org/W2799446534","https://openalex.org/W2886328560","https://openalex.org/W2888153140","https://openalex.org/W2951532718","https://openalex.org/W2965156518","https://openalex.org/W3034032594","https://openalex.org/W3100912421","https://openalex.org/W3103850025","https://openalex.org/W4252547602"],"related_works":["https://openalex.org/W2053093724","https://openalex.org/W2729966571","https://openalex.org/W2018501482","https://openalex.org/W2048147817","https://openalex.org/W2889230297","https://openalex.org/W1530078320","https://openalex.org/W2913635267","https://openalex.org/W2163981019","https://openalex.org/W2941163361","https://openalex.org/W2073905442"],"abstract_inverted_index":{"Equations":[0],"is":[1,79],"a":[2,11,51,58,66,80],"plugin":[3],"for":[4,13,31,83],"the":[5,39,43,70,74,77,92],"Coq":[6,71],"proof":[7,29],"assistant":[8],"which":[9],"provides":[10,57],"notation":[12],"defining":[14],"programs":[15],"by":[16],"dependent":[17,84],"pattern-matching":[18],"and":[19,45,54,60],"structural":[20],"or":[21],"well-founded":[22],"recursion.":[23],"It":[24],"additionally":[25],"derives":[26],"useful":[27],"high-level":[28],"principles":[30],"demonstrating":[32],"properties":[33],"about":[34],"them,":[35],"abstracting":[36],"away":[37],"from":[38],"implementation":[40,55],"details":[41],"of":[42,76,91,95],"function":[44,62],"its":[46],"compiled":[47],"form.":[48],"We":[49],"present":[50],"general":[52],"design":[53],"that":[56],"robust":[59],"expressive":[61],"definition":[63],"package":[64],"as":[65],"definitional":[67],"extension":[68],"to":[69],"kernel.":[72],"At":[73],"core":[75],"system":[78],"new":[81],"simplifier":[82],"equalities":[85],"based":[86],"on":[87],"an":[88],"original":[89],"handling":[90],"no-confusion":[93],"property":[94],"constructors.":[96]},"counts_by_year":[{"year":2026,"cited_by_count":2},{"year":2025,"cited_by_count":5},{"year":2024,"cited_by_count":4},{"year":2023,"cited_by_count":5},{"year":2022,"cited_by_count":9},{"year":2021,"cited_by_count":7},{"year":2020,"cited_by_count":8},{"year":2019,"cited_by_count":4}],"updated_date":"2026-07-28T07:46:37.118299","created_date":"2019-08-13T00:00:00"}
