{"id":"https://openalex.org/W4220734608","doi":"https://doi.org/10.1109/cgo53902.2022.9741286","title":"A Compiler for Sound Floating-Point Computations using Affine Arithmetic","display_name":"A Compiler for Sound Floating-Point Computations using Affine Arithmetic","publication_year":2022,"publication_date":"2022-03-29","ids":{"openalex":"https://openalex.org/W4220734608","doi":"https://doi.org/10.1109/cgo53902.2022.9741286"},"language":"en","primary_location":{"id":"doi:10.1109/cgo53902.2022.9741286","is_oa":false,"landing_page_url":"https://doi.org/10.1109/cgo53902.2022.9741286","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"2022 IEEE/ACM International Symposium on Code Generation and Optimization (CGO)","raw_type":"proceedings-article"},"type":"conference-paper","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/A5053101985","display_name":"Joao Rivera","orcid":"https://orcid.org/0000-0002-3261-0642"},"institutions":[{"id":"https://openalex.org/I35440088","display_name":"ETH Zurich","ror":"https://ror.org/05a28rw58","country_code":"CH","type":"education","lineage":["https://openalex.org/I2799323385","https://openalex.org/I35440088"]}],"countries":["CH"],"is_corresponding":false,"raw_author_name":"Joao Rivera","raw_affiliation_strings":["ETH Zurich,Computer Science,Switzerland","Computer Science, ETH Zurich, Switzerland"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"ETH Zurich,Computer Science,Switzerland","institution_ids":["https://openalex.org/I35440088"]},{"raw_affiliation_string":"Computer Science, ETH Zurich, Switzerland","institution_ids":["https://openalex.org/I35440088"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5062806943","display_name":"Franz Franchetti","orcid":"https://orcid.org/0000-0002-3529-8973"},"institutions":[{"id":"https://openalex.org/I74973139","display_name":"Carnegie Mellon University","ror":"https://ror.org/05x2bcf33","country_code":"US","type":"education","lineage":["https://openalex.org/I74973139"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Franz Franchetti","raw_affiliation_strings":["Carnegie Mellon University,Electrical and Computer Engineering,USA","Electrical and Computer Engineering, Carnegie Mellon University, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Carnegie Mellon University,Electrical and Computer Engineering,USA","institution_ids":["https://openalex.org/I74973139"]},{"raw_affiliation_string":"Electrical and Computer Engineering, Carnegie Mellon University, USA","institution_ids":["https://openalex.org/I74973139"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5076407181","display_name":"Markus P\u00fcschel","orcid":"https://orcid.org/0000-0001-8834-8551"},"institutions":[{"id":"https://openalex.org/I35440088","display_name":"ETH Zurich","ror":"https://ror.org/05a28rw58","country_code":"CH","type":"education","lineage":["https://openalex.org/I2799323385","https://openalex.org/I35440088"]}],"countries":["CH"],"is_corresponding":false,"raw_author_name":"Markus Puschel","raw_affiliation_strings":["ETH Zurich,Computer Science,Switzerland","Computer Science, ETH Zurich, Switzerland"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"ETH Zurich,Computer Science,Switzerland","institution_ids":["https://openalex.org/I35440088"]},{"raw_affiliation_string":"Computer Science, ETH Zurich, Switzerland","institution_ids":["https://openalex.org/I35440088"]}]}],"institutions":[],"countries_distinct_count":2,"institutions_distinct_count":2,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":null,"has_fulltext":false,"cited_by_count":3,"citation_normalized_percentile":null,"cited_by_percentile_year":null,"biblio":{"volume":null,"issue":null,"first_page":"66","last_page":"78"},"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.9966999888420105,"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.9940999746322632,"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/compiler","display_name":"Compiler","score":0.7922816276550293},{"id":"https://openalex.org/keywords/affine-arithmetic","display_name":"Affine arithmetic","score":0.7195504903793335},{"id":"https://openalex.org/keywords/floating-point","display_name":"Floating point","score":0.673553466796875},{"id":"https://openalex.org/keywords/arithmetic","display_name":"Arithmetic","score":0.6696157455444336},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.6601152420043945},{"id":"https://openalex.org/keywords/floating-point-unit","display_name":"Floating-point unit","score":0.6359950304031372},{"id":"https://openalex.org/keywords/computation","display_name":"Computation","score":0.5821222066879272},{"id":"https://openalex.org/keywords/affine-transformation","display_name":"Affine transformation","score":0.4725731909275055},{"id":"https://openalex.org/keywords/saturation-arithmetic","display_name":"Saturation arithmetic","score":0.46778404712677},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.456865519285202},{"id":"https://openalex.org/keywords/arbitrary-precision-arithmetic","display_name":"Arbitrary-precision arithmetic","score":0.4082115888595581},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.3454935550689697},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.2544507384300232}],"concepts":[{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.7922816276550293},{"id":"https://openalex.org/C167315692","wikidata":"https://www.wikidata.org/wiki/Q3622729","display_name":"Affine arithmetic","level":3,"score":0.7195504903793335},{"id":"https://openalex.org/C84211073","wikidata":"https://www.wikidata.org/wiki/Q117879","display_name":"Floating point","level":2,"score":0.673553466796875},{"id":"https://openalex.org/C94375191","wikidata":"https://www.wikidata.org/wiki/Q11205","display_name":"Arithmetic","level":1,"score":0.6696157455444336},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.6601152420043945},{"id":"https://openalex.org/C110305270","wikidata":"https://www.wikidata.org/wiki/Q733507","display_name":"Floating-point unit","level":3,"score":0.6359950304031372},{"id":"https://openalex.org/C45374587","wikidata":"https://www.wikidata.org/wiki/Q12525525","display_name":"Computation","level":2,"score":0.5821222066879272},{"id":"https://openalex.org/C92757383","wikidata":"https://www.wikidata.org/wiki/Q382497","display_name":"Affine transformation","level":2,"score":0.4725731909275055},{"id":"https://openalex.org/C182775192","wikidata":"https://www.wikidata.org/wiki/Q913725","display_name":"Saturation arithmetic","level":3,"score":0.46778404712677},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.456865519285202},{"id":"https://openalex.org/C83581934","wikidata":"https://www.wikidata.org/wiki/Q527381","display_name":"Arbitrary-precision arithmetic","level":2,"score":0.4082115888595581},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.3454935550689697},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.2544507384300232},{"id":"https://openalex.org/C202444582","wikidata":"https://www.wikidata.org/wiki/Q837863","display_name":"Pure mathematics","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1109/cgo53902.2022.9741286","is_oa":false,"landing_page_url":"https://doi.org/10.1109/cgo53902.2022.9741286","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"2022 IEEE/ACM International Symposium on Code Generation and Optimization (CGO)","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[{"score":0.5099999904632568,"id":"https://metadata.un.org/sdg/17","display_name":"Partnerships for the goals"}],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":49,"referenced_works":["https://openalex.org/W1518592224","https://openalex.org/W1849426162","https://openalex.org/W1969213662","https://openalex.org/W1970147231","https://openalex.org/W1986969990","https://openalex.org/W1994417982","https://openalex.org/W1999470254","https://openalex.org/W2000562608","https://openalex.org/W2013561507","https://openalex.org/W2041313350","https://openalex.org/W2061091230","https://openalex.org/W2088861915","https://openalex.org/W2107996047","https://openalex.org/W2115525758","https://openalex.org/W2121050107","https://openalex.org/W2121344286","https://openalex.org/W2129891179","https://openalex.org/W2130084210","https://openalex.org/W2131798279","https://openalex.org/W2132661148","https://openalex.org/W2156268697","https://openalex.org/W2183393188","https://openalex.org/W2207050309","https://openalex.org/W2226528584","https://openalex.org/W2227234579","https://openalex.org/W2287505824","https://openalex.org/W2299696796","https://openalex.org/W2320468364","https://openalex.org/W2552835512","https://openalex.org/W2593881468","https://openalex.org/W2595625343","https://openalex.org/W2735413273","https://openalex.org/W2778880616","https://openalex.org/W2890472662","https://openalex.org/W2900153411","https://openalex.org/W2904117297","https://openalex.org/W3005181937","https://openalex.org/W3012209426","https://openalex.org/W3127395865","https://openalex.org/W3129647355","https://openalex.org/W3136607002","https://openalex.org/W3136820792","https://openalex.org/W3138624857","https://openalex.org/W3161705672","https://openalex.org/W3210373155","https://openalex.org/W6685885234","https://openalex.org/W6754619240","https://openalex.org/W6774782742","https://openalex.org/W6790537298"],"related_works":["https://openalex.org/W4220734608","https://openalex.org/W2145443674","https://openalex.org/W2014186618","https://openalex.org/W1656092346","https://openalex.org/W2569747052","https://openalex.org/W1978352992","https://openalex.org/W1977231030","https://openalex.org/W2187058024","https://openalex.org/W2037029451","https://openalex.org/W1500512458"],"abstract_inverted_index":{"Floating-point":[0],"arithmetic":[1,16,60,114,123],"is":[2,17,78,173],"extensively":[3],"used":[4],"in":[5,93,108,159],"scientific":[6],"and":[7,36,162],"engineering":[8],"applications":[9],"to":[10,61,80,121,143],"approximate":[11],"real":[12,23,94],"arithmetic.":[13,95],"Unfortunately,":[14],"floating-point":[15,59],"not":[18,32],"a":[19,49,54,99,137,148,195],"sound":[20],"implementation":[21],"of":[22,85,105,140,191],"arithmetic,":[24],"i.e.,":[25,71],"it":[26,72,89,97],"may":[27],"produce":[28],"different":[29],"results,":[30],"does":[31],"provide":[33],"error":[34,75],"guarantees,":[35],"the":[37,67,82,86,103,109,160],"errors":[38],"can":[39,163,186],"become":[40],"arbitrarily":[41],"large.":[42],"In":[43],"this":[44],"paper,":[45],"we":[46],"introduce":[47],"SafeGen,":[48],"source-to-source":[50],"compiler":[51],"that":[52,77,116,170],"rewrites":[53],"given":[55],"C":[56,64],"program":[57,65,87],"using":[58,181],"an":[62,74],"efficient":[63],"performing":[66],"same":[68],"computation":[69],"soundly,":[70],"returns":[73],"bound":[76],"guaranteed":[79],"contain":[81],"correct":[83,106],"result":[84],"if":[88],"had":[90],"been":[91],"executed":[92],"Equivalently,":[96,184],"gives":[98],"precision":[100],"certificate":[101],"on":[102],"number":[104],"bits":[107,190],"result.":[110],"SafeGen":[111,135,155,185],"uses":[112],"affine":[113],"(AA)":[115],"keeps":[117],"accuracy":[118,193],"high":[119,133],"compared":[120],"interval":[122],"by":[124],"preserving":[125],"linear":[126],"correlations":[127,146],"between":[128],"variables.":[129],"To":[130],"mitigate":[131],"its":[132],"cost,":[134],"combines":[136],"novel":[138],"form":[139],"static":[141],"analysis":[142],"identify":[144],"these":[145],"with":[147],"flexible":[149],"policy-based":[150],"approach":[151],"for":[152],"their":[153],"selection.":[154],"supports":[156],"SIMD":[157],"intrinsics":[158],"input":[161],"output":[164],"SIMDoptimized":[165],"code.":[166],"Our":[167],"results":[168],"show":[169],"SafeGen-generated":[171],"code":[172,180],"30\u201370":[174],"times":[175],"faster":[176],"than":[177],"manually":[178],"rewritten":[179],"AA":[182],"libraries.":[183],"offer":[187],"many":[188],"more":[189],"certified":[192],"within":[194],"reduced":[196],"time":[197],"budget.":[198]},"counts_by_year":[{"year":2025,"cited_by_count":1},{"year":2024,"cited_by_count":1},{"year":2023,"cited_by_count":1}],"updated_date":"2026-07-14T23:27:15.235271","created_date":"2025-10-10T00:00:00"}
