{"id":"https://openalex.org/W4283462359","doi":"https://doi.org/10.1145/3563295","title":"Scalable linear invariant generation with Farkas\u2019 lemma","display_name":"Scalable linear invariant generation with Farkas\u2019 lemma","publication_year":2022,"publication_date":"2022-10-31","ids":{"openalex":"https://openalex.org/W4283462359","doi":"https://doi.org/10.1145/3563295"},"language":"en","primary_location":{"id":"doi:10.1145/3563295","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3563295","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3563295","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":["crossref"],"open_access":{"is_oa":true,"oa_status":"diamond","oa_url":"https://dl.acm.org/doi/pdf/10.1145/3563295","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5100369960","display_name":"Hongming Liu","orcid":"https://orcid.org/0000-0001-8987-596X"},"institutions":[{"id":"https://openalex.org/I183067930","display_name":"Shanghai Jiao Tong University","ror":"https://ror.org/0220qvk04","country_code":"CN","type":"education","lineage":["https://openalex.org/I183067930"]}],"countries":["CN"],"is_corresponding":true,"raw_author_name":"Hongming Liu","raw_affiliation_strings":["Shanghai Jiao Tong University, China"],"raw_orcid":"https://orcid.org/0000-0001-8987-596X","affiliations":[{"raw_affiliation_string":"Shanghai Jiao Tong University, China","institution_ids":["https://openalex.org/I183067930"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5031020748","display_name":"Hongfei Fu","orcid":"https://orcid.org/0000-0002-7947-3446"},"institutions":[{"id":"https://openalex.org/I183067930","display_name":"Shanghai Jiao Tong University","ror":"https://ror.org/0220qvk04","country_code":"CN","type":"education","lineage":["https://openalex.org/I183067930"]}],"countries":["CN"],"is_corresponding":false,"raw_author_name":"Hongfei Fu","raw_affiliation_strings":["Shanghai Jiao Tong University, China"],"raw_orcid":"https://orcid.org/0000-0002-7947-3446","affiliations":[{"raw_affiliation_string":"Shanghai Jiao Tong University, China","institution_ids":["https://openalex.org/I183067930"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5014189051","display_name":"Zhiyong Yu","orcid":null},"institutions":[{"id":"https://openalex.org/I183067930","display_name":"Shanghai Jiao Tong University","ror":"https://ror.org/0220qvk04","country_code":"CN","type":"education","lineage":["https://openalex.org/I183067930"]}],"countries":["CN"],"is_corresponding":false,"raw_author_name":"Zhiyong Yu","raw_affiliation_strings":["Shanghai Jiao Tong University, China"],"raw_orcid":"https://orcid.org/0000-0001-9756-9540","affiliations":[{"raw_affiliation_string":"Shanghai Jiao Tong University, China","institution_ids":["https://openalex.org/I183067930"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5038461244","display_name":"Jiaxin Song","orcid":"https://orcid.org/0000-0002-4847-9183"},"institutions":[{"id":"https://openalex.org/I183067930","display_name":"Shanghai Jiao Tong University","ror":"https://ror.org/0220qvk04","country_code":"CN","type":"education","lineage":["https://openalex.org/I183067930"]}],"countries":["CN"],"is_corresponding":false,"raw_author_name":"Jiaxin Song","raw_affiliation_strings":["Shanghai Jiao Tong University, China"],"raw_orcid":"https://orcid.org/0000-0002-4847-9183","affiliations":[{"raw_affiliation_string":"Shanghai Jiao Tong University, China","institution_ids":["https://openalex.org/I183067930"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5100354142","display_name":"Guoqiang Li","orcid":"https://orcid.org/0000-0001-9005-7112"},"institutions":[{"id":"https://openalex.org/I183067930","display_name":"Shanghai Jiao Tong University","ror":"https://ror.org/0220qvk04","country_code":"CN","type":"education","lineage":["https://openalex.org/I183067930"]}],"countries":["CN"],"is_corresponding":false,"raw_author_name":"Guoqiang Li","raw_affiliation_strings":["Shanghai Jiao Tong University, China"],"raw_orcid":"https://orcid.org/0000-0001-9005-7112","affiliations":[{"raw_affiliation_string":"Shanghai Jiao Tong University, China","institution_ids":["https://openalex.org/I183067930"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":5,"corresponding_author_ids":["https://openalex.org/A5100369960"],"corresponding_institution_ids":["https://openalex.org/I183067930"],"apc_list":null,"apc_paid":null,"fwci":1.6744,"has_fulltext":true,"cited_by_count":13,"citation_normalized_percentile":{"value":0.85768529,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":94,"max":99},"biblio":{"volume":"6","issue":"OOPSLA2","first_page":"204","last_page":"232"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10142","display_name":"Formal Methods in Verification","score":0.9991999864578247,"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/T10142","display_name":"Formal Methods in Verification","score":0.9991999864578247,"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/T10126","display_name":"Logic, programming, and type systems","score":0.9965999722480774,"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/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9918000102043152,"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/quantifier-elimination","display_name":"Quantifier elimination","score":0.6636056900024414},{"id":"https://openalex.org/keywords/heuristics","display_name":"Heuristics","score":0.6555750370025635},{"id":"https://openalex.org/keywords/scalability","display_name":"Scalability","score":0.646547794342041},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.6039906740188599},{"id":"https://openalex.org/keywords/affine-transformation","display_name":"Affine transformation","score":0.5850787162780762},{"id":"https://openalex.org/keywords/leverage","display_name":"Leverage (statistics)","score":0.5632827281951904},{"id":"https://openalex.org/keywords/invariant","display_name":"Invariant (physics)","score":0.5393334627151489},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.5037569403648376},{"id":"https://openalex.org/keywords/bottleneck","display_name":"Bottleneck","score":0.499375581741333},{"id":"https://openalex.org/keywords/lemma","display_name":"Lemma (botany)","score":0.4822169542312622},{"id":"https://openalex.org/keywords/computation","display_name":"Computation","score":0.46261125802993774},{"id":"https://openalex.org/keywords/algorithm","display_name":"Algorithm","score":0.36068958044052124},{"id":"https://openalex.org/keywords/mathematical-optimization","display_name":"Mathematical optimization","score":0.326251745223999},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.265235036611557},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.2312358021736145},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.15165764093399048}],"concepts":[{"id":"https://openalex.org/C32278780","wikidata":"https://www.wikidata.org/wiki/Q1849020","display_name":"Quantifier elimination","level":2,"score":0.6636056900024414},{"id":"https://openalex.org/C127705205","wikidata":"https://www.wikidata.org/wiki/Q5748245","display_name":"Heuristics","level":2,"score":0.6555750370025635},{"id":"https://openalex.org/C48044578","wikidata":"https://www.wikidata.org/wiki/Q727490","display_name":"Scalability","level":2,"score":0.646547794342041},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.6039906740188599},{"id":"https://openalex.org/C92757383","wikidata":"https://www.wikidata.org/wiki/Q382497","display_name":"Affine transformation","level":2,"score":0.5850787162780762},{"id":"https://openalex.org/C153083717","wikidata":"https://www.wikidata.org/wiki/Q6535263","display_name":"Leverage (statistics)","level":2,"score":0.5632827281951904},{"id":"https://openalex.org/C190470478","wikidata":"https://www.wikidata.org/wiki/Q2370229","display_name":"Invariant (physics)","level":2,"score":0.5393334627151489},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.5037569403648376},{"id":"https://openalex.org/C2780513914","wikidata":"https://www.wikidata.org/wiki/Q18210350","display_name":"Bottleneck","level":2,"score":0.499375581741333},{"id":"https://openalex.org/C2777759810","wikidata":"https://www.wikidata.org/wiki/Q149316","display_name":"Lemma (botany)","level":3,"score":0.4822169542312622},{"id":"https://openalex.org/C45374587","wikidata":"https://www.wikidata.org/wiki/Q12525525","display_name":"Computation","level":2,"score":0.46261125802993774},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.36068958044052124},{"id":"https://openalex.org/C126255220","wikidata":"https://www.wikidata.org/wiki/Q141495","display_name":"Mathematical optimization","level":1,"score":0.326251745223999},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.265235036611557},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.2312358021736145},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.15165764093399048},{"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/C86803240","wikidata":"https://www.wikidata.org/wiki/Q420","display_name":"Biology","level":0,"score":0.0},{"id":"https://openalex.org/C149635348","wikidata":"https://www.wikidata.org/wiki/Q193040","display_name":"Embedded system","level":1,"score":0.0},{"id":"https://openalex.org/C77088390","wikidata":"https://www.wikidata.org/wiki/Q8513","display_name":"Database","level":1,"score":0.0},{"id":"https://openalex.org/C46757340","wikidata":"https://www.wikidata.org/wiki/Q43238","display_name":"Poaceae","level":2,"score":0.0},{"id":"https://openalex.org/C202444582","wikidata":"https://www.wikidata.org/wiki/Q837863","display_name":"Pure mathematics","level":1,"score":0.0},{"id":"https://openalex.org/C37914503","wikidata":"https://www.wikidata.org/wiki/Q156495","display_name":"Mathematical physics","level":1,"score":0.0},{"id":"https://openalex.org/C18903297","wikidata":"https://www.wikidata.org/wiki/Q7150","display_name":"Ecology","level":1,"score":0.0}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.1145/3563295","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3563295","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3563295","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:HAL:hal-03463338v2","is_oa":true,"landing_page_url":"https://hal.science/hal-03463338","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":"other-oa","license_id":"https://openalex.org/licenses/other-oa","version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"2022","raw_type":"Preprints, Working Papers, ..."}],"best_oa_location":{"id":"doi:10.1145/3563295","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3563295","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3563295","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":[],"funders":[{"id":"https://openalex.org/F4320321001","display_name":"National Natural Science Foundation of China","ror":"https://ror.org/01h0zpd94"}],"has_content":{"pdf":true,"grobid_xml":true},"content_urls":{"pdf":"https://content.openalex.org/works/W4283462359.pdf","grobid_xml":"https://content.openalex.org/works/W4283462359.grobid-xml"},"referenced_works_count":75,"referenced_works":["https://openalex.org/W36793001","https://openalex.org/W145069693","https://openalex.org/W1212796596","https://openalex.org/W1487657751","https://openalex.org/W1495570069","https://openalex.org/W1502028089","https://openalex.org/W1505135855","https://openalex.org/W1513694581","https://openalex.org/W1517192598","https://openalex.org/W1523037784","https://openalex.org/W1530375435","https://openalex.org/W1540180001","https://openalex.org/W1558356971","https://openalex.org/W1563374593","https://openalex.org/W1580495911","https://openalex.org/W1589297860","https://openalex.org/W1597204268","https://openalex.org/W1608799719","https://openalex.org/W1611084195","https://openalex.org/W1729037535","https://openalex.org/W1786112247","https://openalex.org/W1848981483","https://openalex.org/W1877129949","https://openalex.org/W1908927309","https://openalex.org/W1925669739","https://openalex.org/W1948975400","https://openalex.org/W1967845657","https://openalex.org/W1970168990","https://openalex.org/W1982538489","https://openalex.org/W2003141394","https://openalex.org/W2016056788","https://openalex.org/W2039205672","https://openalex.org/W2043100293","https://openalex.org/W2067705970","https://openalex.org/W2093850840","https://openalex.org/W2095551467","https://openalex.org/W2098022036","https://openalex.org/W2098045685","https://openalex.org/W2099629271","https://openalex.org/W2108776051","https://openalex.org/W2132661148","https://openalex.org/W2136333450","https://openalex.org/W2146178292","https://openalex.org/W2166071597","https://openalex.org/W2184410169","https://openalex.org/W2185676247","https://openalex.org/W2311603331","https://openalex.org/W2398327122","https://openalex.org/W2410019603","https://openalex.org/W2416392025","https://openalex.org/W2522017073","https://openalex.org/W2548604229","https://openalex.org/W2549200807","https://openalex.org/W2612425693","https://openalex.org/W2625924363","https://openalex.org/W2780276625","https://openalex.org/W2910565741","https://openalex.org/W2960656136","https://openalex.org/W2963164018","https://openalex.org/W2963258324","https://openalex.org/W2980978064","https://openalex.org/W3032926390","https://openalex.org/W3033229382","https://openalex.org/W3033642953","https://openalex.org/W3033865919","https://openalex.org/W3046796804","https://openalex.org/W3102168869","https://openalex.org/W3120927816","https://openalex.org/W3140308147","https://openalex.org/W3176250057","https://openalex.org/W4213255380","https://openalex.org/W4214903638","https://openalex.org/W4239558088","https://openalex.org/W4281638823","https://openalex.org/W6827529600"],"related_works":["https://openalex.org/W1657880117","https://openalex.org/W2595172197","https://openalex.org/W3095068681","https://openalex.org/W2127970246","https://openalex.org/W2084856301","https://openalex.org/W2035631589","https://openalex.org/W1001352512","https://openalex.org/W4382618745","https://openalex.org/W2885125400","https://openalex.org/W1989889224"],"abstract_inverted_index":{"Invariant":[0],"generation":[1,328],"is":[2,57,94,143,231],"a":[3,39,155,173,181,232],"classical":[4],"problem":[5,23,56],"to":[6,10,53,90,136,147,180,198,206,211],"automatically":[7],"generate":[8,77,148],"invariants":[9,81,149,162,282],"aid":[11],"the":[12,22,44,46,83,87,95,111,138,144,161,186,195,202,214,218,237,255,259,270,288,291,301,307,318],"formal":[13],"analysis":[14],"of":[15,24,85,290,297],"programs.":[16],"In":[17,43],"this":[18,55],"work,":[19],"we":[20],"consider":[21],"generating":[25],"tight":[26],"linear-invariants":[27],"over":[28],"affine":[29,34],"programs":[30,32],"(i.e.,":[31],"with":[33,126],"guards":[35],"and":[36,50,62,129,133,262],"updates)":[37],"without":[38],"prescribed":[40],"goal":[41],"property.":[42],"literature,":[45],"only":[47,112],"known":[48],"sound":[49],"complete":[51],"characterization":[52],"solve":[54],"via":[58],"Farkas\u2019":[59],"Lemma":[60],"(FL),":[61],"has":[63,254],"been":[64],"implemented":[65],"through":[66],"either":[67,100],"quantifier":[68],"elimination":[69],"or":[70,103],"reasonable":[71,127],"heuristics.":[72],"Although":[73],"FL-based":[74,114,323],"approaches":[75,93,324],"can":[76],"highly":[78],"accurate":[79],"linear":[80,281,326],"from":[82],"completeness":[84],"FL,":[86],"main":[88],"bottleneck":[89],"applying":[91],"these":[92],"scalability":[96],"issue":[97],"caused":[98],"by":[99,193,294],"non-linear":[101],"constraints":[102],"combinatorial":[104,215],"explosion.":[105],"We":[106,248],"base":[107],"our":[108,252,285,315],"approach":[109,115,253,286,316],"on":[110,269,276],"practical":[113],"[Sankaranarayanan":[116,221],"\u200d":[117,222],"et":[118,223],"al.":[119,224],",":[120,225],"SAS":[121,226],"2004]":[122],"that":[123,160,184,240,251,284,304],"applies":[124],"FL":[125],"heuristics,":[128],"develop":[130,207],"two":[131,331],"novel":[132,145],"independent":[134],"improvements":[135,210],"leverage":[137],"scalability.":[139],"The":[140,228],"first":[141,319],"improvement":[142,230,321],"idea":[146,177,203],"at":[150],"one":[151],"program":[152,191,312],"location":[153,165],"in":[154,172,217,236,246,300,322],"single":[156,174],"invariant-generation":[157,187],"process,":[158],"so":[159],"for":[163,189,310,325],"each":[164],"are":[166],"generated":[167,271],"separately":[168,197],"rather":[169],"than":[170],"together":[171],"computation.":[175],"This":[176],"naturally":[178],"leads":[179],"parallel":[182],"processing":[183],"divides":[185],"task":[188],"all":[190,311],"locations":[192,196],"assigning":[194],"multiple":[199],"processors.":[200],"Moreover,":[201,273],"enables":[204],"us":[205],"detailed":[208],"technical":[209],"further":[212],"reduce":[213],"explosion":[216],"original":[219,260,292],"work":[220,261,293],"2004].":[227],"second":[229],"segmented":[233],"subsumption":[234],"testing":[235],"CNF-to-DNF":[238],"expansion":[239],"allows":[241],"discovering":[242],"more":[243],"local":[244],"subsumptions":[245],"advance.":[247],"formally":[249],"prove":[250],"same":[256],"accuracy":[257,267],"as":[258],"thus":[263],"does":[264],"not":[265],"incur":[266],"loss":[268],"invariants.":[272],"experimental":[274],"results":[275],"representative":[277],"benchmarks":[278],"involving":[279],"non-trivial":[280],"demonstrate":[283],"improves":[287],"runtime":[289],"several":[295],"orders":[296],"magnitude,":[298],"even":[299],"non-parallel":[302],"scenario":[303],"sums":[305],"up":[306],"execution":[308],"time":[309],"locations.":[313],"Hence,":[314],"constitutes":[317],"significant":[320],"invariant":[327],"after":[329],"almost":[330],"decades.":[332]},"counts_by_year":[{"year":2026,"cited_by_count":2},{"year":2025,"cited_by_count":4},{"year":2024,"cited_by_count":5},{"year":2023,"cited_by_count":2}],"updated_date":"2026-05-21T06:26:12.895304","created_date":"2025-10-10T00:00:00"}
