{"id":"https://openalex.org/W3140308147","doi":"https://doi.org/10.1109/icse.2012.6227149","title":"Using dynamic analysis to discover polynomial and array invariants","display_name":"Using dynamic analysis to discover polynomial and array invariants","publication_year":2012,"publication_date":"2012-06-01","ids":{"openalex":"https://openalex.org/W3140308147","doi":"https://doi.org/10.1109/icse.2012.6227149","mag":"3140308147"},"language":"en","primary_location":{"id":"doi:10.1109/icse.2012.6227149","is_oa":false,"landing_page_url":"https://doi.org/10.1109/icse.2012.6227149","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"2012 34th International Conference on Software Engineering (ICSE)","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/A5069411288","display_name":"ThanhVu Nguyen","orcid":"https://orcid.org/0000-0002-4255-4592"},"institutions":[{"id":"https://openalex.org/I169521973","display_name":"University of New Mexico","ror":"https://ror.org/05fs6jp91","country_code":"US","type":"education","lineage":["https://openalex.org/I169521973"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"ThanhVu Nguyen","raw_affiliation_strings":["Computer Science, University of New Mexico","Computer Science, University of New Mexico, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Computer Science, University of New Mexico","institution_ids":["https://openalex.org/I169521973"]},{"raw_affiliation_string":"Computer Science, University of New Mexico, USA","institution_ids":["https://openalex.org/I169521973"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5003856856","display_name":"Deepak Kapur","orcid":"https://orcid.org/0000-0003-2464-2895"},"institutions":[{"id":"https://openalex.org/I169521973","display_name":"University of New Mexico","ror":"https://ror.org/05fs6jp91","country_code":"US","type":"education","lineage":["https://openalex.org/I169521973"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Deepak Kapur","raw_affiliation_strings":["Computer Science, University of New Mexico","Computer Science, University of New Mexico, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Computer Science, University of New Mexico","institution_ids":["https://openalex.org/I169521973"]},{"raw_affiliation_string":"Computer Science, University of New Mexico, USA","institution_ids":["https://openalex.org/I169521973"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5083601969","display_name":"Westley Weimer","orcid":"https://orcid.org/0000-0001-6749-2204"},"institutions":[{"id":"https://openalex.org/I51556381","display_name":"University of Virginia","ror":"https://ror.org/0153tk833","country_code":"US","type":"education","lineage":["https://openalex.org/I51556381"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Westley Weimer","raw_affiliation_strings":["Computer Science, University of Virginia","Computer Science, University of Virginia, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Computer Science, University of Virginia","institution_ids":["https://openalex.org/I51556381"]},{"raw_affiliation_string":"Computer Science, University of Virginia, USA","institution_ids":["https://openalex.org/I51556381"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5114376382","display_name":"Stephanie Forrest","orcid":"https://orcid.org/0000-0002-5904-1646"},"institutions":[{"id":"https://openalex.org/I169521973","display_name":"University of New Mexico","ror":"https://ror.org/05fs6jp91","country_code":"US","type":"education","lineage":["https://openalex.org/I169521973"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Stephanie Forrest","raw_affiliation_strings":["Computer Science, University of New Mexico","Computer Science, University of New Mexico, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Computer Science, University of New Mexico","institution_ids":["https://openalex.org/I169521973"]},{"raw_affiliation_string":"Computer Science, University of New Mexico, USA","institution_ids":["https://openalex.org/I169521973"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":null,"has_fulltext":false,"cited_by_count":53,"citation_normalized_percentile":null,"cited_by_percentile_year":null,"biblio":{"volume":null,"issue":null,"first_page":"683","last_page":"693"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T11241","display_name":"Advanced Malware Detection Techniques","score":0.9998999834060669,"subfield":{"id":"https://openalex.org/subfields/1711","display_name":"Signal Processing"},"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/T11241","display_name":"Advanced Malware Detection Techniques","score":0.9998999834060669,"subfield":{"id":"https://openalex.org/subfields/1711","display_name":"Signal Processing"},"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/T11424","display_name":"Security and Verification in Computing","score":0.9997000098228455,"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.9969000220298767,"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/debugging","display_name":"Debugging","score":0.6770026683807373},{"id":"https://openalex.org/keywords/invariant","display_name":"Invariant (physics)","score":0.6512110233306885},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.6221439242362976},{"id":"https://openalex.org/keywords/polyhedron","display_name":"Polyhedron","score":0.5893852114677429},{"id":"https://openalex.org/keywords/code-refactoring","display_name":"Code refactoring","score":0.5503543615341187},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.47410255670547485},{"id":"https://openalex.org/keywords/polynomial","display_name":"Polynomial","score":0.47254490852355957},{"id":"https://openalex.org/keywords/algebra-over-a-field","display_name":"Algebra over a field","score":0.44656944274902344},{"id":"https://openalex.org/keywords/symbolic-computation","display_name":"Symbolic computation","score":0.44562235474586487},{"id":"https://openalex.org/keywords/nonlinear-system","display_name":"Nonlinear system","score":0.42359307408332825},{"id":"https://openalex.org/keywords/algorithm","display_name":"Algorithm","score":0.3729308545589447},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.28585395216941833},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.2742044925689697},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.1148960292339325},{"id":"https://openalex.org/keywords/pure-mathematics","display_name":"Pure mathematics","score":0.10791778564453125}],"concepts":[{"id":"https://openalex.org/C168065819","wikidata":"https://www.wikidata.org/wiki/Q845566","display_name":"Debugging","level":2,"score":0.6770026683807373},{"id":"https://openalex.org/C190470478","wikidata":"https://www.wikidata.org/wiki/Q2370229","display_name":"Invariant (physics)","level":2,"score":0.6512110233306885},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.6221439242362976},{"id":"https://openalex.org/C54829058","wikidata":"https://www.wikidata.org/wiki/Q172937","display_name":"Polyhedron","level":2,"score":0.5893852114677429},{"id":"https://openalex.org/C152752567","wikidata":"https://www.wikidata.org/wiki/Q116877","display_name":"Code refactoring","level":3,"score":0.5503543615341187},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.47410255670547485},{"id":"https://openalex.org/C90119067","wikidata":"https://www.wikidata.org/wiki/Q43260","display_name":"Polynomial","level":2,"score":0.47254490852355957},{"id":"https://openalex.org/C136119220","wikidata":"https://www.wikidata.org/wiki/Q1000660","display_name":"Algebra over a field","level":2,"score":0.44656944274902344},{"id":"https://openalex.org/C110812573","wikidata":"https://www.wikidata.org/wiki/Q175515","display_name":"Symbolic computation","level":2,"score":0.44562235474586487},{"id":"https://openalex.org/C158622935","wikidata":"https://www.wikidata.org/wiki/Q660848","display_name":"Nonlinear system","level":2,"score":0.42359307408332825},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.3729308545589447},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.28585395216941833},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.2742044925689697},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.1148960292339325},{"id":"https://openalex.org/C202444582","wikidata":"https://www.wikidata.org/wiki/Q837863","display_name":"Pure mathematics","level":1,"score":0.10791778564453125},{"id":"https://openalex.org/C121332964","wikidata":"https://www.wikidata.org/wiki/Q413","display_name":"Physics","level":0,"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/C62520636","wikidata":"https://www.wikidata.org/wiki/Q944","display_name":"Quantum mechanics","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/C2524010","wikidata":"https://www.wikidata.org/wiki/Q8087","display_name":"Geometry","level":1,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1109/icse.2012.6227149","is_oa":false,"landing_page_url":"https://doi.org/10.1109/icse.2012.6227149","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"2012 34th International Conference on Software Engineering (ICSE)","raw_type":"proceedings-article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":32,"referenced_works":["https://openalex.org/W1480119827","https://openalex.org/W1498946538","https://openalex.org/W1507199453","https://openalex.org/W1512563586","https://openalex.org/W1556604985","https://openalex.org/W1611084195","https://openalex.org/W1637866372","https://openalex.org/W1863722042","https://openalex.org/W1968482350","https://openalex.org/W1971043610","https://openalex.org/W1978367838","https://openalex.org/W2031373197","https://openalex.org/W2038053930","https://openalex.org/W2064934273","https://openalex.org/W2075913776","https://openalex.org/W2080573945","https://openalex.org/W2099866050","https://openalex.org/W2110908283","https://openalex.org/W2114676774","https://openalex.org/W2130711572","https://openalex.org/W2145913856","https://openalex.org/W2155330305","https://openalex.org/W2160363852","https://openalex.org/W3100198463","https://openalex.org/W4214494916","https://openalex.org/W4232022279","https://openalex.org/W4233319527","https://openalex.org/W4235788944","https://openalex.org/W4242138495","https://openalex.org/W4249898530","https://openalex.org/W4255079701","https://openalex.org/W4256285596"],"related_works":["https://openalex.org/W1578053891","https://openalex.org/W1948541244","https://openalex.org/W2768661791","https://openalex.org/W1965116753","https://openalex.org/W1515890570","https://openalex.org/W4240717694","https://openalex.org/W2012389508","https://openalex.org/W1980363707","https://openalex.org/W3105877772","https://openalex.org/W3021364813"],"abstract_inverted_index":{"Dynamic":[0],"invariant":[1,85],"analysis":[2,48],"identifies":[3],"likely":[4],"properties":[5,13],"over":[6,38,101],"variables":[7,40,109],"from":[8],"observed":[9],"program":[10,39,102],"traces.":[11],"These":[12],"can":[14],"aid":[15],"programmers":[16],"in":[17,53],"refactoring,":[18],"documenting,":[19],"and":[20,41,76,96,104,119],"debugging":[21],"tasks":[22],"by":[23],"making":[24],"dynamic":[25,47,84],"patterns":[26],"visible":[27],"statically.":[28],"Two":[29],"useful":[30],"forms":[31],"of":[32,110,122],"invariants":[33,52],"involve":[34],"relations":[35,42,106],"among":[36,43,98,107],"polynomials":[37,100],"array":[44,108],"variables.":[45],"Current":[46],"methods":[49],"support":[50],"such":[51],"only":[54],"very":[55],"limited":[56],"forms.":[57],"We":[58],"combine":[59],"mathematical":[60,117],"techniques":[61],"that":[62,127],"have":[63],"not":[64],"previously":[65],"been":[66],"applied":[67],"to":[68,79,83,93],"this":[69],"problem,":[70],"namely":[71],"equation":[72],"solving,":[73,78],"polyhedra":[74],"construction,":[75],"SMT":[77],"bring":[80],"new":[81],"capabilities":[82],"detection.":[86],"Using":[87],"these":[88,134],"methods,":[89],"we":[90],"show":[91],"how":[92],"find":[94],"equalities":[95],"inequalities":[97],"nonlinear":[99],"variables,":[103],"linear":[105],"multiple":[111],"dimensions.":[112],"Preliminary":[113],"experiments":[114],"on":[115],"24":[116],"algorithms":[118],"an":[120],"implementation":[121],"AES":[123],"encryption":[124],"provide":[125],"evidence":[126],"the":[128],"approach":[129],"is":[130],"effective":[131],"at":[132],"finding":[133],"invariants.":[135]},"counts_by_year":[{"year":2026,"cited_by_count":1},{"year":2025,"cited_by_count":6},{"year":2024,"cited_by_count":3},{"year":2022,"cited_by_count":8},{"year":2021,"cited_by_count":3},{"year":2020,"cited_by_count":4},{"year":2019,"cited_by_count":1},{"year":2018,"cited_by_count":2},{"year":2017,"cited_by_count":6},{"year":2016,"cited_by_count":3},{"year":2015,"cited_by_count":6},{"year":2014,"cited_by_count":3},{"year":2013,"cited_by_count":7}],"updated_date":"2026-07-14T23:27:15.235271","created_date":"2025-10-10T00:00:00"}
