{"id":"https://openalex.org/W2299696796","doi":"https://doi.org/10.1145/3014426","title":"Towards a Compiler for Reals","display_name":"Towards a Compiler for Reals","publication_year":2017,"publication_date":"2017-03-10","ids":{"openalex":"https://openalex.org/W2299696796","doi":"https://doi.org/10.1145/3014426","mag":"2299696796"},"language":"en","primary_location":{"id":"doi:10.1145/3014426","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3014426","pdf_url":null,"source":{"id":"https://openalex.org/S41449414","display_name":"ACM Transactions on Programming Languages and Systems","issn_l":"0164-0925","issn":["0164-0925","1558-4593"],"is_oa":false,"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":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"ACM Transactions on Programming Languages and Systems","raw_type":"journal-article"},"type":"article","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"green","oa_url":"http://infoscience.epfl.ch/record/230807","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5053069388","display_name":"Eva Darulov\u00e1","orcid":"https://orcid.org/0000-0002-6848-3163"},"institutions":[{"id":"https://openalex.org/I5124864","display_name":"\u00c9cole Polytechnique F\u00e9d\u00e9rale de Lausanne","ror":"https://ror.org/02s376052","country_code":"CH","type":"education","lineage":["https://openalex.org/I2799323385","https://openalex.org/I5124864"]}],"countries":["CH"],"is_corresponding":true,"raw_author_name":"Eva Darulova","raw_affiliation_strings":["Ecole Polytechnique Federale de Lausanne"],"affiliations":[{"raw_affiliation_string":"Ecole Polytechnique Federale de Lausanne","institution_ids":["https://openalex.org/I5124864"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5008699657","display_name":"Viktor Kun\u010dak","orcid":"https://orcid.org/0000-0001-7044-9522"},"institutions":[{"id":"https://openalex.org/I5124864","display_name":"\u00c9cole Polytechnique F\u00e9d\u00e9rale de Lausanne","ror":"https://ror.org/02s376052","country_code":"CH","type":"education","lineage":["https://openalex.org/I2799323385","https://openalex.org/I5124864"]}],"countries":["CH"],"is_corresponding":false,"raw_author_name":"Viktor Kuncak","raw_affiliation_strings":["Ecole Polytechnique Federale de Lausanne, Lausanne, Switzerland"],"affiliations":[{"raw_affiliation_string":"Ecole Polytechnique Federale de Lausanne, Lausanne, Switzerland","institution_ids":["https://openalex.org/I5124864"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":["https://openalex.org/A5053069388"],"corresponding_institution_ids":["https://openalex.org/I5124864"],"apc_list":null,"apc_paid":null,"fwci":9.1378,"has_fulltext":false,"cited_by_count":89,"citation_normalized_percentile":{"value":0.98464314,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":96,"max":100},"biblio":{"volume":"39","issue":"2","first_page":"1","last_page":"28"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T11697","display_name":"Numerical Methods and Algorithms","score":0.9998999834060669,"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"}},"topics":[{"id":"https://openalex.org/T11697","display_name":"Numerical Methods and Algorithms","score":0.9998999834060669,"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/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9894000291824341,"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/T10363","display_name":"Low-power high-performance VLSI design","score":0.9790999889373779,"subfield":{"id":"https://openalex.org/subfields/2208","display_name":"Electrical and Electronic Engineering"},"field":{"id":"https://openalex.org/fields/22","display_name":"Engineering"},"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.845635175704956},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.8104159235954285},{"id":"https://openalex.org/keywords/floating-point","display_name":"Floating point","score":0.6320943236351013},{"id":"https://openalex.org/keywords/arbitrary-precision-arithmetic","display_name":"Arbitrary-precision arithmetic","score":0.5343161225318909},{"id":"https://openalex.org/keywords/algorithm","display_name":"Algorithm","score":0.4815945327281952},{"id":"https://openalex.org/keywords/bounding-overwatch","display_name":"Bounding overwatch","score":0.4807991087436676},{"id":"https://openalex.org/keywords/fixed-point-arithmetic","display_name":"Fixed-point arithmetic","score":0.4779224991798401},{"id":"https://openalex.org/keywords/classification-of-discontinuities","display_name":"Classification of discontinuities","score":0.429298996925354},{"id":"https://openalex.org/keywords/interval-arithmetic","display_name":"Interval arithmetic","score":0.42669203877449036},{"id":"https://openalex.org/keywords/point","display_name":"Point (geometry)","score":0.4210974872112274},{"id":"https://openalex.org/keywords/machine-epsilon","display_name":"Machine epsilon","score":0.42026636004447937},{"id":"https://openalex.org/keywords/computer-engineering","display_name":"Computer engineering","score":0.36250802874565125},{"id":"https://openalex.org/keywords/arithmetic","display_name":"Arithmetic","score":0.35154974460601807},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.21282991766929626},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.11104729771614075},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.0960966944694519}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.845635175704956},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.8104159235954285},{"id":"https://openalex.org/C84211073","wikidata":"https://www.wikidata.org/wiki/Q117879","display_name":"Floating point","level":2,"score":0.6320943236351013},{"id":"https://openalex.org/C83581934","wikidata":"https://www.wikidata.org/wiki/Q527381","display_name":"Arbitrary-precision arithmetic","level":2,"score":0.5343161225318909},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.4815945327281952},{"id":"https://openalex.org/C63584917","wikidata":"https://www.wikidata.org/wiki/Q333286","display_name":"Bounding overwatch","level":2,"score":0.4807991087436676},{"id":"https://openalex.org/C163973906","wikidata":"https://www.wikidata.org/wiki/Q649900","display_name":"Fixed-point arithmetic","level":3,"score":0.4779224991798401},{"id":"https://openalex.org/C15627037","wikidata":"https://www.wikidata.org/wiki/Q541961","display_name":"Classification of discontinuities","level":2,"score":0.429298996925354},{"id":"https://openalex.org/C191252586","wikidata":"https://www.wikidata.org/wiki/Q1671453","display_name":"Interval arithmetic","level":3,"score":0.42669203877449036},{"id":"https://openalex.org/C28719098","wikidata":"https://www.wikidata.org/wiki/Q44946","display_name":"Point (geometry)","level":2,"score":0.4210974872112274},{"id":"https://openalex.org/C203739276","wikidata":"https://www.wikidata.org/wiki/Q1780355","display_name":"Machine epsilon","level":2,"score":0.42026636004447937},{"id":"https://openalex.org/C113775141","wikidata":"https://www.wikidata.org/wiki/Q428691","display_name":"Computer engineering","level":1,"score":0.36250802874565125},{"id":"https://openalex.org/C94375191","wikidata":"https://www.wikidata.org/wiki/Q11205","display_name":"Arithmetic","level":1,"score":0.35154974460601807},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.21282991766929626},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.11104729771614075},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.0960966944694519},{"id":"https://openalex.org/C2524010","wikidata":"https://www.wikidata.org/wiki/Q8087","display_name":"Geometry","level":1,"score":0.0},{"id":"https://openalex.org/C134306372","wikidata":"https://www.wikidata.org/wiki/Q7754","display_name":"Mathematical analysis","level":1,"score":0.0},{"id":"https://openalex.org/C34388435","wikidata":"https://www.wikidata.org/wiki/Q2267362","display_name":"Bounded function","level":2,"score":0.0}],"mesh":[],"locations_count":3,"locations":[{"id":"doi:10.1145/3014426","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3014426","pdf_url":null,"source":{"id":"https://openalex.org/S41449414","display_name":"ACM Transactions on Programming Languages and Systems","issn_l":"0164-0925","issn":["0164-0925","1558-4593"],"is_oa":false,"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":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"ACM Transactions on Programming Languages and Systems","raw_type":"journal-article"},{"id":"pmh:oai:infoscience.epfl.ch:230807","is_oa":true,"landing_page_url":"http://infoscience.epfl.ch/record/230807","pdf_url":null,"source":{"id":"https://openalex.org/S4306400487","display_name":"Infoscience (Ecole Polytechnique F\u00e9d\u00e9rale de Lausanne)","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by-nc-nd","license_id":"https://openalex.org/licenses/cc-by-nc-nd","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":"Text"},{"id":"pmh:oai:infoscience.epfl.ch:255790","is_oa":true,"landing_page_url":"http://infoscience.epfl.ch/record/255790","pdf_url":null,"source":{"id":"https://openalex.org/S4306400487","display_name":"Infoscience (Ecole Polytechnique F\u00e9d\u00e9rale de Lausanne)","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by-nc-nd","license_id":"https://openalex.org/licenses/cc-by-nc-nd","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":"research article"}],"best_oa_location":{"id":"pmh:oai:infoscience.epfl.ch:230807","is_oa":true,"landing_page_url":"http://infoscience.epfl.ch/record/230807","pdf_url":null,"source":{"id":"https://openalex.org/S4306400487","display_name":"Infoscience (Ecole Polytechnique F\u00e9d\u00e9rale de Lausanne)","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":null,"host_organization_name":null,"host_organization_lineage":[],"host_organization_lineage_names":[],"type":"repository"},"license":"cc-by-nc-nd","license_id":"https://openalex.org/licenses/cc-by-nc-nd","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"","raw_type":"Text"},"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":56,"referenced_works":["https://openalex.org/W178079818","https://openalex.org/W364030612","https://openalex.org/W600821120","https://openalex.org/W854045167","https://openalex.org/W1480909796","https://openalex.org/W1492125336","https://openalex.org/W1493060511","https://openalex.org/W1518592224","https://openalex.org/W1521746323","https://openalex.org/W1528042415","https://openalex.org/W1533318258","https://openalex.org/W1574729653","https://openalex.org/W1608230613","https://openalex.org/W1716612759","https://openalex.org/W1824011918","https://openalex.org/W1849426162","https://openalex.org/W1910521375","https://openalex.org/W1986969990","https://openalex.org/W2020209480","https://openalex.org/W2020804487","https://openalex.org/W2021344963","https://openalex.org/W2023011641","https://openalex.org/W2027695912","https://openalex.org/W2031326024","https://openalex.org/W2058064470","https://openalex.org/W2080794684","https://openalex.org/W2081368694","https://openalex.org/W2096654515","https://openalex.org/W2098156778","https://openalex.org/W2103953062","https://openalex.org/W2107220315","https://openalex.org/W2114614628","https://openalex.org/W2115612093","https://openalex.org/W2121050107","https://openalex.org/W2122738744","https://openalex.org/W2131798279","https://openalex.org/W2139270441","https://openalex.org/W2141121064","https://openalex.org/W2151625871","https://openalex.org/W2153316377","https://openalex.org/W2156792823","https://openalex.org/W2156828397","https://openalex.org/W2159401583","https://openalex.org/W2169004268","https://openalex.org/W2170736936","https://openalex.org/W2207050309","https://openalex.org/W2295915207","https://openalex.org/W2412834532","https://openalex.org/W2610467942","https://openalex.org/W3022909171","https://openalex.org/W3098068395","https://openalex.org/W3100198463","https://openalex.org/W3105930569","https://openalex.org/W3125088515","https://openalex.org/W3138624857","https://openalex.org/W3141105696"],"related_works":["https://openalex.org/W2937715180","https://openalex.org/W2327954927","https://openalex.org/W2145443674","https://openalex.org/W1971540865","https://openalex.org/W2187058024","https://openalex.org/W2674200359","https://openalex.org/W3039927303","https://openalex.org/W1965905913","https://openalex.org/W1983325766","https://openalex.org/W1978352992"],"abstract_inverted_index":{"Numerical":[0],"software,":[1],"common":[2],"in":[3,18,183],"scientific":[4,169],"computing":[5,170],"or":[6,99],"embedded":[7,172],"systems,":[8],"inevitably":[9],"uses":[10],"a":[11,77,86,108,111,123,164],"finite-precision":[12,32],"approximation":[13],"of":[14,39,51,106,135,155,166,180],"the":[15,27,36,49,52,68,153,178,181],"real":[16],"arithmetic":[17,33,134],"which":[19],"most":[20],"algorithms":[21],"are":[22,34,57],"designed.":[23],"In":[24],"many":[25],"applications,":[26],"roundoff":[28,128],"errors":[29,46,129],"introduced":[30],"by":[31],"not":[35],"only":[37],"source":[38],"inaccuracy,":[40],"and":[41,43,66,92,115,132,151,171,196],"measurement":[42],"other":[44],"input":[45,85],"further":[47],"increase":[48],"uncertainty":[50],"computed":[53],"results.":[54],"Adequate":[55],"tools":[56],"needed":[58],"to":[59,177],"help":[60],"users":[61],"select":[62],"suitable":[63],"data":[64,101],"types":[65],"evaluate":[67,161],"provided":[69],"accuracy,":[70],"especially":[71],"for":[72,126,148],"safety-critical":[73],"applications.":[74],"We":[75,121,160],"present":[76],"source-to-source":[78],"compiler":[79,109],"called":[80],"Rosa":[81,162],"that":[82,188],"takes":[83],"as":[84],"real-valued":[87],"program":[88],"with":[89],"error":[90,119,185],"specifications":[91],"synthesizes":[93],"code":[94],"over":[95],"an":[96,191],"appropriate":[97],"floating-point":[98,131],"fixed-point":[100,133],"type.":[102],"The":[103,138],"main":[104],"challenge":[105],"such":[107],"is":[110],"fully":[112],"automated,":[113],"sound,":[114],"yet":[116],"accurate-enough":[117],"numerical":[118,158],"estimation.":[120],"introduce":[122],"unified":[124],"technique":[125,139],"bounding":[127],"from":[130,168],"various":[136],"precisions.":[137],"can":[140],"handle":[141],"nonlinear":[142],"arithmetic,":[143],"determine":[144],"closed-form":[145],"symbolic":[146],"invariants":[147],"unbounded":[149],"loops,":[150],"quantify":[152],"effects":[154],"discontinuities":[156],"on":[157,163],"errors.":[159],"number":[165],"benchmarks":[167],"systems":[173],"and,":[174],"comparing":[175],"it":[176,189],"state":[179],"art":[182],"automated":[184],"estimation,":[186],"show":[187],"presents":[190],"interesting":[192],"tradeoff":[193],"between":[194],"accuracy":[195],"performance.":[197]},"counts_by_year":[{"year":2025,"cited_by_count":10},{"year":2024,"cited_by_count":6},{"year":2023,"cited_by_count":10},{"year":2022,"cited_by_count":10},{"year":2021,"cited_by_count":11},{"year":2020,"cited_by_count":12},{"year":2019,"cited_by_count":14},{"year":2018,"cited_by_count":9},{"year":2017,"cited_by_count":4},{"year":2016,"cited_by_count":3}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
