{"id":"https://openalex.org/W2949241294","doi":"https://doi.org/10.1145/3341692","title":"Approximate normalization for gradual dependent types","display_name":"Approximate normalization for gradual dependent types","publication_year":2019,"publication_date":"2019-07-26","ids":{"openalex":"https://openalex.org/W2949241294","doi":"https://doi.org/10.1145/3341692","mag":"2949241294"},"language":"en","primary_location":{"id":"doi:10.1145/3341692","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3341692","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3341692","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":["arxiv","crossref"],"open_access":{"is_oa":true,"oa_status":"diamond","oa_url":"https://dl.acm.org/doi/pdf/10.1145/3341692","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":null,"display_name":"Joseph Eremondi","orcid":null},"institutions":[{"id":"https://openalex.org/I141945490","display_name":"University of British Columbia","ror":"https://ror.org/03rmrcq20","country_code":"CA","type":"education","lineage":["https://openalex.org/I141945490"]}],"countries":["CA"],"is_corresponding":true,"raw_author_name":"Joseph Eremondi","raw_affiliation_strings":["University of British Columbia, Canada"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of British Columbia, Canada","institution_ids":["https://openalex.org/I141945490"]}]},{"author_position":"middle","author":{"id":null,"display_name":"\u00c9ric Tanter","orcid":null},"institutions":[{"id":"https://openalex.org/I69737025","display_name":"University of Chile","ror":"https://ror.org/047gc3g35","country_code":"CL","type":"education","lineage":["https://openalex.org/I69737025"]},{"id":"https://openalex.org/I4210128776","display_name":"Inria Chile","ror":"https://ror.org/03c3zes23","country_code":"CL","type":"facility","lineage":["https://openalex.org/I4210128776"]}],"countries":["CL"],"is_corresponding":false,"raw_author_name":"\u00c9ric Tanter","raw_affiliation_strings":["University of Chile, Chile / Inria, France"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Chile, Chile / Inria, France","institution_ids":["https://openalex.org/I4210128776","https://openalex.org/I69737025"]}]},{"author_position":"last","author":{"id":null,"display_name":"Ronald Garcia","orcid":null},"institutions":[{"id":"https://openalex.org/I141945490","display_name":"University of British Columbia","ror":"https://ror.org/03rmrcq20","country_code":"CA","type":"education","lineage":["https://openalex.org/I141945490"]}],"countries":["CA"],"is_corresponding":false,"raw_author_name":"Ronald Garcia","raw_affiliation_strings":["University of British Columbia, Canada"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of British Columbia, Canada","institution_ids":["https://openalex.org/I141945490"]}]}],"institutions":[],"countries_distinct_count":2,"institutions_distinct_count":3,"corresponding_author_ids":[],"corresponding_institution_ids":["https://openalex.org/I141945490"],"apc_list":null,"apc_paid":null,"fwci":1.4518,"has_fulltext":true,"cited_by_count":17,"citation_normalized_percentile":{"value":0.86633819,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":98},"biblio":{"volume":"3","issue":"ICFP","first_page":"1","last_page":"30"},"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.9516000151634216,"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.9516000151634216,"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/T10260","display_name":"Software Engineering Research","score":0.01850000023841858,"subfield":{"id":"https://openalex.org/subfields/1710","display_name":"Information Systems"},"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/T11450","display_name":"Model-Driven Software Engineering Techniques","score":0.005799999926239252,"subfield":{"id":"https://openalex.org/subfields/1712","display_name":"Software"},"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/normalization","display_name":"Normalization (sociology)","score":0.7890999913215637},{"id":"https://openalex.org/keywords/soundness","display_name":"Soundness","score":0.7229999899864197},{"id":"https://openalex.org/keywords/decidability","display_name":"Decidability","score":0.6301000118255615},{"id":"https://openalex.org/keywords/type-inference","display_name":"Type inference","score":0.5501000285148621},{"id":"https://openalex.org/keywords/static-analysis","display_name":"Static analysis","score":0.5357000231742859},{"id":"https://openalex.org/keywords/type","display_name":"Type (biology)","score":0.43849998712539673},{"id":"https://openalex.org/keywords/program-analysis","display_name":"Program analysis","score":0.4246000051498413},{"id":"https://openalex.org/keywords/type-theory","display_name":"Type theory","score":0.40529999136924744},{"id":"https://openalex.org/keywords/data-type","display_name":"Data type","score":0.3971000015735626}],"concepts":[{"id":"https://openalex.org/C136886441","wikidata":"https://www.wikidata.org/wiki/Q926129","display_name":"Normalization (sociology)","level":2,"score":0.7890999913215637},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.739799976348877},{"id":"https://openalex.org/C39920170","wikidata":"https://www.wikidata.org/wiki/Q693083","display_name":"Soundness","level":2,"score":0.7229999899864197},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6437000036239624},{"id":"https://openalex.org/C153269930","wikidata":"https://www.wikidata.org/wiki/Q430001","display_name":"Decidability","level":2,"score":0.6301000118255615},{"id":"https://openalex.org/C198370458","wikidata":"https://www.wikidata.org/wiki/Q586459","display_name":"Type inference","level":3,"score":0.5501000285148621},{"id":"https://openalex.org/C97686452","wikidata":"https://www.wikidata.org/wiki/Q7604153","display_name":"Static analysis","level":2,"score":0.5357000231742859},{"id":"https://openalex.org/C2777299769","wikidata":"https://www.wikidata.org/wiki/Q3707858","display_name":"Type (biology)","level":2,"score":0.43849998712539673},{"id":"https://openalex.org/C98183937","wikidata":"https://www.wikidata.org/wiki/Q2112188","display_name":"Program analysis","level":2,"score":0.4246000051498413},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.41780000925064087},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.4154999852180481},{"id":"https://openalex.org/C93682546","wikidata":"https://www.wikidata.org/wiki/Q1056428","display_name":"Type theory","level":3,"score":0.40529999136924744},{"id":"https://openalex.org/C138958017","wikidata":"https://www.wikidata.org/wiki/Q190087","display_name":"Data type","level":2,"score":0.3971000015735626},{"id":"https://openalex.org/C44779574","wikidata":"https://www.wikidata.org/wiki/Q736866","display_name":"Type safety","level":2,"score":0.37860000133514404},{"id":"https://openalex.org/C202973057","wikidata":"https://www.wikidata.org/wiki/Q7380130","display_name":"Runtime verification","level":3,"score":0.3546000123023987},{"id":"https://openalex.org/C42383842","wikidata":"https://www.wikidata.org/wiki/Q193076","display_name":"Functional programming","level":2,"score":0.33820000290870667},{"id":"https://openalex.org/C207390915","wikidata":"https://www.wikidata.org/wiki/Q1230525","display_name":"Divergence (linguistics)","level":2,"score":0.33550000190734863},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.33230000734329224},{"id":"https://openalex.org/C72169020","wikidata":"https://www.wikidata.org/wiki/Q194404","display_name":"Monotonic function","level":2,"score":0.3228999972343445},{"id":"https://openalex.org/C152124472","wikidata":"https://www.wikidata.org/wiki/Q1204361","display_name":"Redundancy (engineering)","level":2,"score":0.3190000057220459},{"id":"https://openalex.org/C30128091","wikidata":"https://www.wikidata.org/wiki/Q291929","display_name":"Predicate transformer semantics","level":4,"score":0.30090001225471497},{"id":"https://openalex.org/C187691185","wikidata":"https://www.wikidata.org/wiki/Q2020720","display_name":"Grid","level":2,"score":0.2962999939918518},{"id":"https://openalex.org/C2780654840","wikidata":"https://www.wikidata.org/wiki/Q333341","display_name":"Abstract interpretation","level":2,"score":0.27559998631477356},{"id":"https://openalex.org/C20528804","wikidata":"https://www.wikidata.org/wiki/Q997433","display_name":"Dependent type","level":3,"score":0.27000001072883606},{"id":"https://openalex.org/C43126263","wikidata":"https://www.wikidata.org/wiki/Q128751","display_name":"Source code","level":2,"score":0.2542000114917755}],"mesh":[],"locations_count":3,"locations":[{"id":"doi:10.1145/3341692","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3341692","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3341692","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:arXiv.org:1906.06469","is_oa":true,"landing_page_url":"http://arxiv.org/abs/1906.06469","pdf_url":"https://arxiv.org/pdf/1906.06469","source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I205783295","host_organization_name":"Cornell University","host_organization_lineage":["https://openalex.org/I205783295"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"text"},{"id":"pmh:oai:HAL:hal-02399594v1","is_oa":false,"landing_page_url":"https://hal.science/hal-02399594","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":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Proceedings of the ACM on Programming Languages, 2019, 3 (ICFP), pp.1-30. &#x27E8;10.1145/3341692&#x27E9;","raw_type":"Journal articles"}],"best_oa_location":{"id":"doi:10.1145/3341692","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3341692","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3341692","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":[{"id":"https://openalex.org/G5866962442","display_name":null,"funder_award_id":"1190058","funder_id":"https://openalex.org/F4320334812","funder_display_name":"Comisi\u00f3n Nacional de Investigaci\u00f3n Cient\u00edfica y Tecnol\u00f3gica"},{"id":"https://openalex.org/G8376884652","display_name":null,"funder_award_id":"715753","funder_id":"https://openalex.org/F4320338352","funder_display_name":"FP7 Ideas: European Research Council"}],"funders":[{"id":"https://openalex.org/F4320334593","display_name":"Natural Sciences and Engineering Research Council of Canada","ror":"https://ror.org/01h531d29"},{"id":"https://openalex.org/F4320334812","display_name":"Comisi\u00f3n Nacional de Investigaci\u00f3n Cient\u00edfica y Tecnol\u00f3gica","ror":"https://ror.org/02ap3w078"},{"id":"https://openalex.org/F4320338352","display_name":"FP7 Ideas: European Research Council","ror":"https://ror.org/0472cxd90"}],"has_content":{"grobid_xml":true,"pdf":true},"content_urls":{"pdf":"https://content.openalex.org/works/W2949241294.pdf","grobid_xml":"https://content.openalex.org/works/W2949241294.grobid-xml"},"referenced_works_count":36,"referenced_works":["https://openalex.org/W1553511155","https://openalex.org/W1581253965","https://openalex.org/W1632691573","https://openalex.org/W1974190112","https://openalex.org/W1982209843","https://openalex.org/W1986402635","https://openalex.org/W1990204174","https://openalex.org/W1990946582","https://openalex.org/W2005192022","https://openalex.org/W2034355944","https://openalex.org/W2036676170","https://openalex.org/W2048536148","https://openalex.org/W2051748913","https://openalex.org/W2102259218","https://openalex.org/W2134801812","https://openalex.org/W2145108549","https://openalex.org/W2147137665","https://openalex.org/W2150998213","https://openalex.org/W2243212299","https://openalex.org/W2267469130","https://openalex.org/W2293786458","https://openalex.org/W2295283668","https://openalex.org/W2413556709","https://openalex.org/W2561537655","https://openalex.org/W2613133382","https://openalex.org/W2736821074","https://openalex.org/W2767557842","https://openalex.org/W2886526538","https://openalex.org/W2904756193","https://openalex.org/W2949241294","https://openalex.org/W2963218353","https://openalex.org/W3102406088","https://openalex.org/W4233840857","https://openalex.org/W4252361379","https://openalex.org/W4252547602","https://openalex.org/W6727148885"],"related_works":[],"abstract_inverted_index":{"Dependent":[0,62],"types":[1,47,55,90,134],"help":[2],"programmers":[3],"write":[4,20],"highly":[5],"reliable":[6],"code.":[7],"However,":[8,53],"this":[9,51],"reliability":[10],"comes":[11],"at":[12],"a":[13,104,245],"cost:":[14],"it":[15],"can":[16,73],"be":[17,145],"challenging":[18],"to":[19,132,144,151,243,259],"new":[21],"prototypes":[22],"in":[23,147],"(or":[24],"migrate":[25],"old":[26],"code":[27,72],"to)":[28],"dependently-typed":[29,106,111,120],"programming":[30,98],"languages.":[31,206],"Gradual":[32],"typing":[33],"makes":[34],"static":[35,212],"type":[36,76,148,158,218,224,234],"disciplines":[37],"more":[38],"flexible,":[39],"so":[40,91],"an":[41,117],"appropriate":[42],"notion":[43],"of":[44,67,204,232,254],"gradual":[45,60,105,133,137,205,215,248],"dependent":[46,54,89],"could":[48],"fruitfully":[49],"lower":[50],"cost.":[52],"raise":[56],"unique":[57],"challenges":[58],"for":[59,124,162],"typing.":[61],"typechecking":[63,197],"involves":[64],"the":[65,84,96,128,142,201,211,252],"execution":[66,182],"program":[68,229],"code,":[69],"but":[70,178,186],"gradually-typed":[71],"signal":[74],"runtime":[75,81,155,181],"errors":[77,82],"or":[78,189],"diverge.":[79,190],"These":[80],"threaten":[83],"soundness":[85],"guarantees":[86],"that":[87,108,193,250],"make":[88],"attractive,":[92],"while":[93,180],"divergence":[94],"spoils":[95],"type-driven":[97],"experience.":[99],"This":[100],"paper":[101],"presents":[102],"GDTL,":[103],"language":[107],"emphasizes":[109],"pragmatic":[110],"programming.":[112],"GDTL":[113,194,209],"fully":[114],"embeds":[115],"both":[116],"untyped":[118],"and":[119,122,150,164,171,198,213,222],"language,":[121],"allows":[123],"smooth":[125],"transitions":[126],"between":[127,168],"two.":[129],"In":[130,207],"addition":[131],"we":[135,166,240],"introduce":[136],"terms":[138],",":[139,185],"which":[140],"allow":[141],"user":[143],"imprecise":[146],"indices":[149],"omit":[152],"proof":[153],"terms;":[154],"checks":[156],"ensure":[157],"safety.":[159],"To":[160,236],"account":[161],"nontermination":[163],"failure,":[165],"distinguish":[167],"compile-time":[169,174],"normalization":[170,175,247,256],"run-time":[172],"execution:":[173],"is":[176,183],"approximate":[177,255],"total,":[179],"exact":[184],"may":[187],"fail":[188],"We":[191],"prove":[192,237],"has":[195],"decidable":[196],"satisfies":[199,210],"all":[200],"expected":[202],"properties":[203],"particular,":[208],"dynamic":[214,233],"guarantees:":[216],"reducing":[217],"precision":[219,225],"preserves":[220],"typedness,":[221],"altering":[223],"does":[226],"not":[227],"change":[228],"behavior":[230],"outside":[231],"failures.":[235],"these":[238],"properties,":[239],"were":[241],"led":[242],"establish":[244],"novel":[246],"guarantee":[249],"captures":[251],"monotonicity":[253],"with":[257],"respect":[258],"imprecision.":[260]},"counts_by_year":[{"year":2025,"cited_by_count":1},{"year":2024,"cited_by_count":2},{"year":2023,"cited_by_count":4},{"year":2022,"cited_by_count":4},{"year":2021,"cited_by_count":4},{"year":2020,"cited_by_count":1},{"year":2019,"cited_by_count":1}],"updated_date":"2026-05-07T13:39:58.223016","created_date":"2019-06-27T00:00:00"}
