{"id":"https://openalex.org/W2108556169","doi":"https://doi.org/10.1145/2442516.2442529","title":"From relational verification to SIMD loop synthesis","display_name":"From relational verification to SIMD loop synthesis","publication_year":2013,"publication_date":"2013-02-23","ids":{"openalex":"https://openalex.org/W2108556169","doi":"https://doi.org/10.1145/2442516.2442529","mag":"2108556169"},"language":"en","primary_location":{"id":"doi:10.1145/2442516.2442529","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2442516.2442529","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 18th ACM SIGPLAN symposium on Principles and practice of parallel programming","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/A5075577852","display_name":"Gilles Barthe","orcid":"https://orcid.org/0000-0002-3853-1777"},"institutions":[{"id":"https://openalex.org/I105140100","display_name":"Madrid Institute for Advanced Studies","ror":"https://ror.org/027pk6j83","country_code":"ES","type":"education","lineage":["https://openalex.org/I105140100"]},{"id":"https://openalex.org/I4210162154","display_name":"IMDEA Software Institute","ror":"https://ror.org/04xvfkh51","country_code":"ES","type":"facility","lineage":["https://openalex.org/I105140100","https://openalex.org/I4210162154"]}],"countries":["ES"],"is_corresponding":false,"raw_author_name":"Gilles Barthe","raw_affiliation_strings":["IMDEA Software Institute, Madrid, Spain","IMDEA Software Institute, Madrid, Spain#TAB#"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"IMDEA Software Institute, Madrid, Spain","institution_ids":["https://openalex.org/I4210162154"]},{"raw_affiliation_string":"IMDEA Software Institute, Madrid, Spain#TAB#","institution_ids":["https://openalex.org/I105140100"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5104029779","display_name":"Juan Manuel Crespo","orcid":null},"institutions":[{"id":"https://openalex.org/I105140100","display_name":"Madrid Institute for Advanced Studies","ror":"https://ror.org/027pk6j83","country_code":"ES","type":"education","lineage":["https://openalex.org/I105140100"]},{"id":"https://openalex.org/I4210162154","display_name":"IMDEA Software Institute","ror":"https://ror.org/04xvfkh51","country_code":"ES","type":"facility","lineage":["https://openalex.org/I105140100","https://openalex.org/I4210162154"]}],"countries":["ES"],"is_corresponding":false,"raw_author_name":"Juan Manuel Crespo","raw_affiliation_strings":["IMDEA Software Institute, Madrid, Spain","IMDEA Software Institute, Madrid, Spain#TAB#"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"IMDEA Software Institute, Madrid, Spain","institution_ids":["https://openalex.org/I4210162154"]},{"raw_affiliation_string":"IMDEA Software Institute, Madrid, Spain#TAB#","institution_ids":["https://openalex.org/I105140100"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5011543162","display_name":"Sumit Gulwani","orcid":"https://orcid.org/0000-0002-9226-9634"},"institutions":[{"id":"https://openalex.org/I1290206253","display_name":"Microsoft (United States)","ror":"https://ror.org/00d0nc645","country_code":"US","type":"company","lineage":["https://openalex.org/I1290206253"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Sumit Gulwani","raw_affiliation_strings":["Microsoft Research, Redmond, WA, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Microsoft Research, Redmond, WA, USA","institution_ids":["https://openalex.org/I1290206253"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5004667371","display_name":"C\u00e9sar Kunz","orcid":null},"institutions":[{"id":"https://openalex.org/I105140100","display_name":"Madrid Institute for Advanced Studies","ror":"https://ror.org/027pk6j83","country_code":"ES","type":"education","lineage":["https://openalex.org/I105140100"]},{"id":"https://openalex.org/I4210162154","display_name":"IMDEA Software Institute","ror":"https://ror.org/04xvfkh51","country_code":"ES","type":"facility","lineage":["https://openalex.org/I105140100","https://openalex.org/I4210162154"]}],"countries":["ES"],"is_corresponding":false,"raw_author_name":"Cesar Kunz","raw_affiliation_strings":["IMDEA Software Institute, Madrid, Spain","IMDEA Software Institute, Madrid, Spain#TAB#"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"IMDEA Software Institute, Madrid, Spain","institution_ids":["https://openalex.org/I4210162154"]},{"raw_affiliation_string":"IMDEA Software Institute, Madrid, Spain#TAB#","institution_ids":["https://openalex.org/I105140100"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5024427812","display_name":"Mark Marron","orcid":"https://orcid.org/0000-0003-3589-4860"},"institutions":[{"id":"https://openalex.org/I105140100","display_name":"Madrid Institute for Advanced Studies","ror":"https://ror.org/027pk6j83","country_code":"ES","type":"education","lineage":["https://openalex.org/I105140100"]},{"id":"https://openalex.org/I4210162154","display_name":"IMDEA Software Institute","ror":"https://ror.org/04xvfkh51","country_code":"ES","type":"facility","lineage":["https://openalex.org/I105140100","https://openalex.org/I4210162154"]}],"countries":["ES"],"is_corresponding":false,"raw_author_name":"Mark Marron","raw_affiliation_strings":["IMDEA Software Institute, Madrid, Spain","IMDEA Software Institute, Madrid, Spain#TAB#"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"IMDEA Software Institute, Madrid, Spain","institution_ids":["https://openalex.org/I4210162154"]},{"raw_affiliation_string":"IMDEA Software Institute, Madrid, Spain#TAB#","institution_ids":["https://openalex.org/I105140100"]}]}],"institutions":[],"countries_distinct_count":2,"institutions_distinct_count":3,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":5.5591,"has_fulltext":false,"cited_by_count":64,"citation_normalized_percentile":{"value":0.96925241,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":94,"max":99},"biblio":{"volume":null,"issue":null,"first_page":"123","last_page":"134"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9997000098228455,"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"}},"topics":[{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.9997000098228455,"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/T10904","display_name":"Embedded Systems Design Techniques","score":0.9997000098228455,"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/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9995999932289124,"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/computer-science","display_name":"Computer science","score":0.8626613616943359},{"id":"https://openalex.org/keywords/simd","display_name":"SIMD","score":0.8348054885864258},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.7374246716499329},{"id":"https://openalex.org/keywords/correctness","display_name":"Correctness","score":0.6662610173225403},{"id":"https://openalex.org/keywords/parallel-computing","display_name":"Parallel computing","score":0.6629013419151306},{"id":"https://openalex.org/keywords/code-generation","display_name":"Code generation","score":0.611611008644104},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.5598066449165344},{"id":"https://openalex.org/keywords/loop","display_name":"Loop (graph theory)","score":0.5407910346984863},{"id":"https://openalex.org/keywords/implementation","display_name":"Implementation","score":0.42544299364089966},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.3808538615703583},{"id":"https://openalex.org/keywords/key","display_name":"Key (lock)","score":0.13922634720802307},{"id":"https://openalex.org/keywords/set","display_name":"Set (abstract data type)","score":0.07683172821998596},{"id":"https://openalex.org/keywords/operating-system","display_name":"Operating system","score":0.07219132781028748}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8626613616943359},{"id":"https://openalex.org/C150552126","wikidata":"https://www.wikidata.org/wiki/Q339387","display_name":"SIMD","level":2,"score":0.8348054885864258},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.7374246716499329},{"id":"https://openalex.org/C55439883","wikidata":"https://www.wikidata.org/wiki/Q360812","display_name":"Correctness","level":2,"score":0.6662610173225403},{"id":"https://openalex.org/C173608175","wikidata":"https://www.wikidata.org/wiki/Q232661","display_name":"Parallel computing","level":1,"score":0.6629013419151306},{"id":"https://openalex.org/C133162039","wikidata":"https://www.wikidata.org/wiki/Q1061077","display_name":"Code generation","level":3,"score":0.611611008644104},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.5598066449165344},{"id":"https://openalex.org/C184670325","wikidata":"https://www.wikidata.org/wiki/Q512604","display_name":"Loop (graph theory)","level":2,"score":0.5407910346984863},{"id":"https://openalex.org/C26713055","wikidata":"https://www.wikidata.org/wiki/Q245962","display_name":"Implementation","level":2,"score":0.42544299364089966},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.3808538615703583},{"id":"https://openalex.org/C26517878","wikidata":"https://www.wikidata.org/wiki/Q228039","display_name":"Key (lock)","level":2,"score":0.13922634720802307},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.07683172821998596},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.07219132781028748},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.0},{"id":"https://openalex.org/C114614502","wikidata":"https://www.wikidata.org/wiki/Q76592","display_name":"Combinatorics","level":1,"score":0.0}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.1145/2442516.2442529","is_oa":false,"landing_page_url":"https://doi.org/10.1145/2442516.2442529","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 18th ACM SIGPLAN symposium on Principles and practice of parallel programming","raw_type":"proceedings-article"},{"id":"pmh:oai:CiteSeerX.psu:10.1.1.650.4864","is_oa":false,"landing_page_url":"http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.650.4864","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"http://software.imdea.org/~jmcrespo/docs/PPOPP2013.pdf","raw_type":"text"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":52,"referenced_works":["https://openalex.org/W5424990","https://openalex.org/W57185801","https://openalex.org/W1494930385","https://openalex.org/W1587844310","https://openalex.org/W1966324811","https://openalex.org/W1973831620","https://openalex.org/W1997199152","https://openalex.org/W2007920703","https://openalex.org/W2009489720","https://openalex.org/W2013156670","https://openalex.org/W2034711041","https://openalex.org/W2065394549","https://openalex.org/W2076285066","https://openalex.org/W2079834329","https://openalex.org/W2084845478","https://openalex.org/W2090268225","https://openalex.org/W2095840868","https://openalex.org/W2096449544","https://openalex.org/W2098293014","https://openalex.org/W2099059741","https://openalex.org/W2101432564","https://openalex.org/W2104658241","https://openalex.org/W2111394443","https://openalex.org/W2114012357","https://openalex.org/W2115007594","https://openalex.org/W2117165009","https://openalex.org/W2118031182","https://openalex.org/W2134734244","https://openalex.org/W2139672538","https://openalex.org/W2148778288","https://openalex.org/W2149996206","https://openalex.org/W2150769115","https://openalex.org/W2150871888","https://openalex.org/W2152570960","https://openalex.org/W2153530968","https://openalex.org/W2158615804","https://openalex.org/W2160145830","https://openalex.org/W2161363082","https://openalex.org/W2162726111","https://openalex.org/W2162960800","https://openalex.org/W2276356546","https://openalex.org/W2911450990","https://openalex.org/W4237492309","https://openalex.org/W4239625798","https://openalex.org/W4242364663","https://openalex.org/W4242912959","https://openalex.org/W4244894488","https://openalex.org/W4245234767","https://openalex.org/W4246430693","https://openalex.org/W4301666354","https://openalex.org/W6682478818","https://openalex.org/W6683620417"],"related_works":["https://openalex.org/W2111180768","https://openalex.org/W2162270818","https://openalex.org/W650988184","https://openalex.org/W2162410319","https://openalex.org/W2137356287","https://openalex.org/W4321184925","https://openalex.org/W2255990315","https://openalex.org/W60915090","https://openalex.org/W2025840053","https://openalex.org/W2161692994"],"abstract_inverted_index":{"Existing":[0],"pattern-based":[1],"compiler":[2],"technology":[3],"is":[4,32,64,104],"unable":[5],"to":[6,34,106,112],"effectively":[7],"exploit":[8],"the":[9,50,131],"full":[10],"potential":[11],"of":[12,38,68,95,122],"SIMD":[13,43,109,128],"architectures.":[14],"We":[15],"present":[16],"a":[17,35,65,76,99,119],"new":[18,77],"program":[19],"synthesis":[20,30,54,72,79,88],"based":[21],"technique":[22,31,103],"for":[23,49,81,118],"auto-vectorizing":[24],"performance":[25],"critical":[26],"innermost":[27],"loops.":[28],"Our":[29,102],"applicable":[33],"wide":[36,120],"range":[37,121],"loops,":[39],"consistently":[40],"produces":[41],"performant":[42],"code,":[44],"and":[45,75],"generates":[46],"correctness":[47],"proofs":[48],"output":[51],"code.":[52],"The":[53,86,126],"technique,":[55],"which":[56],"leverages":[57],"existing":[58],"work":[59],"on":[60],"relational":[61],"verification":[62],"methods,":[63],"novel":[66],"combination":[67],"deductive":[69],"loop":[70],"restructuring,":[71],"condition":[73],"generation":[74],"inductive":[78,87],"algorithm":[80,89],"producing":[82],"loop-free":[83],"code":[84,96],"fragments.":[85],"wraps":[90],"an":[91],"optimized":[92],"depth-first":[93],"exploration":[94],"sequences":[97],"inside":[98],"CEGIS":[100],"loop.":[101],"able":[105],"quickly":[107],"produce":[108],"implementations":[110,129],"(up":[111],"9":[113],"instructions":[114],"in":[115],"0.12":[116],"seconds)":[117],"fundamental":[123],"looping":[124],"structures.":[125],"resulting":[127],"outperform":[130],"original":[132],"loops":[133],"by":[134],"2.0x-3.7x.":[135]},"counts_by_year":[{"year":2025,"cited_by_count":2},{"year":2024,"cited_by_count":3},{"year":2023,"cited_by_count":3},{"year":2022,"cited_by_count":2},{"year":2021,"cited_by_count":5},{"year":2020,"cited_by_count":4},{"year":2019,"cited_by_count":5},{"year":2018,"cited_by_count":5},{"year":2017,"cited_by_count":2},{"year":2016,"cited_by_count":11},{"year":2015,"cited_by_count":6},{"year":2014,"cited_by_count":9},{"year":2013,"cited_by_count":5},{"year":2012,"cited_by_count":2}],"updated_date":"2026-07-29T14:22:42.915294","created_date":"2025-10-10T00:00:00"}
