{"id":"https://openalex.org/W2767683523","doi":"https://doi.org/10.23919/fmcad.2017.8102241","title":"Z3str3: A String Solver with Theory-aware Heuristics","display_name":"Z3str3: A String Solver with Theory-aware Heuristics","publication_year":2017,"publication_date":"2017-10-01","ids":{"openalex":"https://openalex.org/W2767683523","doi":"https://doi.org/10.23919/fmcad.2017.8102241","mag":"2767683523"},"language":"en","primary_location":{"id":"doi:10.23919/fmcad.2017.8102241","is_oa":false,"landing_page_url":"https://doi.org/10.23919/fmcad.2017.8102241","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"2017 Formal Methods in Computer Aided Design (FMCAD)","raw_type":"proceedings-article"},"type":"article","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/A5000594912","display_name":"Murphy Berzish","orcid":null},"institutions":[{"id":"https://openalex.org/I151746483","display_name":"University of Waterloo","ror":"https://ror.org/01aff2v68","country_code":"CA","type":"education","lineage":["https://openalex.org/I151746483"]}],"countries":["CA"],"is_corresponding":false,"raw_author_name":"Murphy Berzish","raw_affiliation_strings":["University of Waterloo, Waterloo, Canada"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Waterloo, Waterloo, Canada","institution_ids":["https://openalex.org/I151746483"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5052292970","display_name":"Vijay Ganesh","orcid":"https://orcid.org/0000-0002-6029-2047"},"institutions":[{"id":"https://openalex.org/I151746483","display_name":"University of Waterloo","ror":"https://ror.org/01aff2v68","country_code":"CA","type":"education","lineage":["https://openalex.org/I151746483"]}],"countries":["CA"],"is_corresponding":false,"raw_author_name":"Vijay Ganesh","raw_affiliation_strings":["University of Waterloo, Waterloo, Canada"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"University of Waterloo, Waterloo, Canada","institution_ids":["https://openalex.org/I151746483"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5039824895","display_name":"Yunhui Zheng","orcid":"https://orcid.org/0000-0002-6794-3199"},"institutions":[{"id":"https://openalex.org/I1341412227","display_name":"IBM (United States)","ror":"https://ror.org/05hh8d621","country_code":"US","type":"company","lineage":["https://openalex.org/I1341412227"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Yunhui Zheng","raw_affiliation_strings":["IBM Research, Yorktown Heights, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"IBM Research, Yorktown Heights, USA","institution_ids":["https://openalex.org/I1341412227"]}]}],"institutions":[],"countries_distinct_count":2,"institutions_distinct_count":3,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":20.2559,"has_fulltext":false,"cited_by_count":96,"citation_normalized_percentile":{"value":0.99299335,"is_in_top_1_percent":true,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":95,"max":100},"biblio":{"volume":null,"issue":null,"first_page":"55","last_page":"59"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T12479","display_name":"Web Application Security Vulnerabilities","score":0.9997000098228455,"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"}},"topics":[{"id":"https://openalex.org/T12479","display_name":"Web Application Security Vulnerabilities","score":0.9997000098228455,"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/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9980000257492065,"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"}},{"id":"https://openalex.org/T10237","display_name":"Cryptography and Data Security","score":0.9916999936103821,"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/dpll-algorithm","display_name":"DPLL algorithm","score":0.7508449554443359},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.6479355096817017},{"id":"https://openalex.org/keywords/heuristics","display_name":"Heuristics","score":0.5693076848983765},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.5643786787986755},{"id":"https://openalex.org/keywords/solver","display_name":"Solver","score":0.5335386991500854},{"id":"https://openalex.org/keywords/heuristic","display_name":"Heuristic","score":0.5300315022468567},{"id":"https://openalex.org/keywords/predicate-abstraction","display_name":"Predicate abstraction","score":0.46951693296432495},{"id":"https://openalex.org/keywords/branching","display_name":"Branching (polymer chemistry)","score":0.42397382855415344},{"id":"https://openalex.org/keywords/algorithm","display_name":"Algorithm","score":0.37900906801223755},{"id":"https://openalex.org/keywords/discrete-mathematics","display_name":"Discrete mathematics","score":0.3570767343044281},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.3251282870769501},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.22513216733932495},{"id":"https://openalex.org/keywords/model-checking","display_name":"Model checking","score":0.18836712837219238},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.15960127115249634}],"concepts":[{"id":"https://openalex.org/C143936061","wikidata":"https://www.wikidata.org/wiki/Q2030088","display_name":"DPLL algorithm","level":4,"score":0.7508449554443359},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.6479355096817017},{"id":"https://openalex.org/C127705205","wikidata":"https://www.wikidata.org/wiki/Q5748245","display_name":"Heuristics","level":2,"score":0.5693076848983765},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.5643786787986755},{"id":"https://openalex.org/C2778770139","wikidata":"https://www.wikidata.org/wiki/Q1966904","display_name":"Solver","level":2,"score":0.5335386991500854},{"id":"https://openalex.org/C173801870","wikidata":"https://www.wikidata.org/wiki/Q201413","display_name":"Heuristic","level":2,"score":0.5300315022468567},{"id":"https://openalex.org/C2779907942","wikidata":"https://www.wikidata.org/wiki/Q7239630","display_name":"Predicate abstraction","level":3,"score":0.46951693296432495},{"id":"https://openalex.org/C206175624","wikidata":"https://www.wikidata.org/wiki/Q595731","display_name":"Branching (polymer chemistry)","level":2,"score":0.42397382855415344},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.37900906801223755},{"id":"https://openalex.org/C118615104","wikidata":"https://www.wikidata.org/wiki/Q121416","display_name":"Discrete mathematics","level":1,"score":0.3570767343044281},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.3251282870769501},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.22513216733932495},{"id":"https://openalex.org/C110251889","wikidata":"https://www.wikidata.org/wiki/Q1569697","display_name":"Model checking","level":2,"score":0.18836712837219238},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.15960127115249634},{"id":"https://openalex.org/C159985019","wikidata":"https://www.wikidata.org/wiki/Q181790","display_name":"Composite material","level":1,"score":0.0},{"id":"https://openalex.org/C134652429","wikidata":"https://www.wikidata.org/wiki/Q1052698","display_name":"Jitter","level":2,"score":0.0},{"id":"https://openalex.org/C76155785","wikidata":"https://www.wikidata.org/wiki/Q418","display_name":"Telecommunications","level":1,"score":0.0},{"id":"https://openalex.org/C111919701","wikidata":"https://www.wikidata.org/wiki/Q9135","display_name":"Operating system","level":1,"score":0.0},{"id":"https://openalex.org/C192562407","wikidata":"https://www.wikidata.org/wiki/Q228736","display_name":"Materials science","level":0,"score":0.0},{"id":"https://openalex.org/C12707504","wikidata":"https://www.wikidata.org/wiki/Q52637","display_name":"Phase-locked loop","level":3,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.23919/fmcad.2017.8102241","is_oa":false,"landing_page_url":"https://doi.org/10.23919/fmcad.2017.8102241","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"2017 Formal Methods in Computer Aided Design (FMCAD)","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[{"id":"https://metadata.un.org/sdg/9","score":0.6600000262260437,"display_name":"Industry, innovation and infrastructure"}],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":25,"referenced_works":["https://openalex.org/W82625556","https://openalex.org/W169672073","https://openalex.org/W254881558","https://openalex.org/W962336087","https://openalex.org/W984481437","https://openalex.org/W1023119160","https://openalex.org/W1480909796","https://openalex.org/W1599228120","https://openalex.org/W1668114645","https://openalex.org/W1973650063","https://openalex.org/W1987647365","https://openalex.org/W2008158744","https://openalex.org/W2017035494","https://openalex.org/W2023887108","https://openalex.org/W2094568767","https://openalex.org/W2110318050","https://openalex.org/W2113531724","https://openalex.org/W2117402063","https://openalex.org/W2142785340","https://openalex.org/W2164622707","https://openalex.org/W2482729551","https://openalex.org/W2565985959","https://openalex.org/W2602879550","https://openalex.org/W4241297471","https://openalex.org/W6731400335"],"related_works":["https://openalex.org/W4362575217","https://openalex.org/W2187634947","https://openalex.org/W2188204860","https://openalex.org/W2370449963","https://openalex.org/W2022846948","https://openalex.org/W4235773363","https://openalex.org/W2131367934","https://openalex.org/W2118613560","https://openalex.org/W2048447692","https://openalex.org/W2767683523"],"abstract_inverted_index":{"We":[0],"present":[1],"a":[2,21,57,146],"new":[3],"string":[4,35],"SMT":[5],"solver,":[6],"Z3str3,":[7],"that":[8],"is":[9,56,92],"faster":[10],"than":[11,143,152],"its":[12,141,153],"competitors":[13],"Z3str2,":[14],"Norn,":[15],"CVC4,":[16],"S3,":[17],"and":[18,30,42],"S3P":[19],"over":[20,39,105],"majority":[22],"of":[23,54,75,89,100,122],"three":[24],"industrial-strength":[25],"benchmarks,":[26],"namely,":[27],"Kaluza,":[28],"PISA,":[29],"IBM":[31],"AppScan.":[32],"Z3str3":[33,55,148],"supports":[34],"equations,":[36],"linear":[37],"arithmetic":[38],"length":[40],"function,":[41],"regular":[43],"language":[44],"membership":[45],"predicate.":[46],"The":[47],"key":[48],"algorithmic":[49],"innovation":[50],"behind":[51],"the":[52,73,83,87,95,101,106,112,120,126],"efficiency":[53],"technique":[58,114],"we":[59,64],"call":[60],"theory-aware":[61,113],"branching,":[62],"wherein":[63],"modify":[65],"Z3's":[66],"branching":[67,80,130],"heuristic":[68],"to":[69,78,125,135],"take":[70],"into":[71],"account":[72],"structure":[74,88,121],"theory":[76,90,108,123],"literals":[77,91,124],"compute":[79],"activities.":[81],"In":[82],"traditional":[84],"DPLL(T)":[85,96,127],"architecture,":[86],"hidden":[93],"from":[94],"SAT":[97,128],"solver":[98],"because":[99],"Boolean":[102],"abstraction":[103],"constructed":[104],"input":[107],"formula.":[109],"By":[110],"contrast,":[111],"presented":[115],"in":[116],"this":[117],"paper":[118],"exposes":[119],"solver's":[129],"heuristic,":[131],"thus":[132],"enabling":[133],"it":[134],"make":[136],"much":[137],"smarter":[138],"decisions":[139],"during":[140],"search":[142],"otherwise.":[144],"As":[145],"consequence,":[147],"has":[149],"better":[150],"performance":[151],"competitors.":[154]},"counts_by_year":[{"year":2026,"cited_by_count":1},{"year":2025,"cited_by_count":15},{"year":2024,"cited_by_count":3},{"year":2023,"cited_by_count":11},{"year":2022,"cited_by_count":10},{"year":2021,"cited_by_count":16},{"year":2020,"cited_by_count":23},{"year":2019,"cited_by_count":7},{"year":2018,"cited_by_count":10}],"updated_date":"2026-06-11T09:08:48.828518","created_date":"2025-10-10T00:00:00"}
