{"id":"https://openalex.org/W2737936389","doi":"https://doi.org/10.1134/s0361768817040041","title":"SharpChecker: Static analysis tool for C# programs","display_name":"SharpChecker: Static analysis tool for C# programs","publication_year":2017,"publication_date":"2017-07-01","ids":{"openalex":"https://openalex.org/W2737936389","doi":"https://doi.org/10.1134/s0361768817040041","mag":"2737936389"},"language":"en","primary_location":{"id":"doi:10.1134/s0361768817040041","is_oa":false,"landing_page_url":"https://doi.org/10.1134/s0361768817040041","pdf_url":null,"source":{"id":"https://openalex.org/S150218641","display_name":"Programming and Computer Software","issn_l":"0361-7688","issn":["0361-7688","1608-3261"],"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/P4310320267","host_organization_name":"Pleiades Publishing","host_organization_lineage":["https://openalex.org/P4310320267","https://openalex.org/P4310319965"],"host_organization_lineage_names":["Pleiades Publishing","Springer Nature"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Programming and Computer Software","raw_type":"journal-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/A5032217919","display_name":"V. Koshelev","orcid":null},"institutions":[{"id":"https://openalex.org/I4210101868","display_name":"Institute for System Programming","ror":"https://ror.org/017ef8252","country_code":"RU","type":"facility","lineage":["https://openalex.org/I1313323035","https://openalex.org/I4210101868","https://openalex.org/I4210124601"]}],"countries":["RU"],"is_corresponding":true,"raw_author_name":"V. K. Koshelev","raw_affiliation_strings":["Institute for System Programming, Russian Academy of Sciences, ul. Solzhenitsyna 25, Moscow, Russia"],"affiliations":[{"raw_affiliation_string":"Institute for System Programming, Russian Academy of Sciences, ul. Solzhenitsyna 25, Moscow, Russia","institution_ids":["https://openalex.org/I4210101868"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5055524068","display_name":"Valery Ignatiev","orcid":null},"institutions":[{"id":"https://openalex.org/I4210101868","display_name":"Institute for System Programming","ror":"https://ror.org/017ef8252","country_code":"RU","type":"facility","lineage":["https://openalex.org/I1313323035","https://openalex.org/I4210101868","https://openalex.org/I4210124601"]}],"countries":["RU"],"is_corresponding":false,"raw_author_name":"V. N. Ignatiev","raw_affiliation_strings":["Institute for System Programming, Russian Academy of Sciences, ul. Solzhenitsyna 25, Moscow, Russia"],"affiliations":[{"raw_affiliation_string":"Institute for System Programming, Russian Academy of Sciences, ul. Solzhenitsyna 25, Moscow, Russia","institution_ids":["https://openalex.org/I4210101868"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5047103200","display_name":"Artem Borzilov","orcid":null},"institutions":[{"id":"https://openalex.org/I4210101868","display_name":"Institute for System Programming","ror":"https://ror.org/017ef8252","country_code":"RU","type":"facility","lineage":["https://openalex.org/I1313323035","https://openalex.org/I4210101868","https://openalex.org/I4210124601"]}],"countries":["RU"],"is_corresponding":false,"raw_author_name":"A. I. Borzilov","raw_affiliation_strings":["Institute for System Programming, Russian Academy of Sciences, ul. Solzhenitsyna 25, Moscow, Russia"],"affiliations":[{"raw_affiliation_string":"Institute for System Programming, Russian Academy of Sciences, ul. Solzhenitsyna 25, Moscow, Russia","institution_ids":["https://openalex.org/I4210101868"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5065191857","display_name":"Andrey Belevantsev","orcid":"https://orcid.org/0000-0003-2817-0397"},"institutions":[{"id":"https://openalex.org/I4210101868","display_name":"Institute for System Programming","ror":"https://ror.org/017ef8252","country_code":"RU","type":"facility","lineage":["https://openalex.org/I1313323035","https://openalex.org/I4210101868","https://openalex.org/I4210124601"]},{"id":"https://openalex.org/I19880235","display_name":"Lomonosov Moscow State University","ror":"https://ror.org/010pmpe69","country_code":"RU","type":"education","lineage":["https://openalex.org/I19880235"]}],"countries":["RU"],"is_corresponding":false,"raw_author_name":"A. A. Belevantsev","raw_affiliation_strings":["Institute for System Programming, Russian Academy of Sciences, ul. Solzhenitsyna 25, Moscow, Russia","Moscow State University, Moscow, Russia"],"affiliations":[{"raw_affiliation_string":"Institute for System Programming, Russian Academy of Sciences, ul. Solzhenitsyna 25, Moscow, Russia","institution_ids":["https://openalex.org/I4210101868"]},{"raw_affiliation_string":"Moscow State University, Moscow, Russia","institution_ids":["https://openalex.org/I19880235"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":4,"corresponding_author_ids":["https://openalex.org/A5032217919"],"corresponding_institution_ids":["https://openalex.org/I4210101868"],"apc_list":null,"apc_paid":null,"fwci":3.0527,"has_fulltext":false,"cited_by_count":22,"citation_normalized_percentile":{"value":0.92000835,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":89,"max":98},"biblio":{"volume":"43","issue":"4","first_page":"268","last_page":"276"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T12423","display_name":"Software Reliability and Analysis Research","score":0.9987999796867371,"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"}},"topics":[{"id":"https://openalex.org/T12423","display_name":"Software Reliability and Analysis Research","score":0.9987999796867371,"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/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9983000159263611,"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/T10260","display_name":"Software Engineering Research","score":0.9970999956130981,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/dataflow","display_name":"Dataflow","score":0.8944269418716431},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8809225559234619},{"id":"https://openalex.org/keywords/static-analysis","display_name":"Static analysis","score":0.7494992613792419},{"id":"https://openalex.org/keywords/symbolic-execution","display_name":"Symbolic execution","score":0.6747578382492065},{"id":"https://openalex.org/keywords/call-graph","display_name":"Call graph","score":0.6260877847671509},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.6081171035766602},{"id":"https://openalex.org/keywords/data-flow-analysis","display_name":"Data-flow analysis","score":0.6055330038070679},{"id":"https://openalex.org/keywords/control-flow-graph","display_name":"Control flow graph","score":0.5951693058013916},{"id":"https://openalex.org/keywords/power-graph-analysis","display_name":"Power graph analysis","score":0.576772928237915},{"id":"https://openalex.org/keywords/program-analysis","display_name":"Program analysis","score":0.5686483383178711},{"id":"https://openalex.org/keywords/static-timing-analysis","display_name":"Static timing analysis","score":0.5583497881889343},{"id":"https://openalex.org/keywords/critical-path-method","display_name":"Critical path method","score":0.515315055847168},{"id":"https://openalex.org/keywords/graph","display_name":"Graph","score":0.5079367756843567},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.48963767290115356},{"id":"https://openalex.org/keywords/abstract-interpretation","display_name":"Abstract interpretation","score":0.4775617718696594},{"id":"https://openalex.org/keywords/control-flow","display_name":"Control flow","score":0.47196874022483826},{"id":"https://openalex.org/keywords/model-checking","display_name":"Model checking","score":0.47132447361946106},{"id":"https://openalex.org/keywords/set","display_name":"Set (abstract data type)","score":0.463010311126709},{"id":"https://openalex.org/keywords/focus","display_name":"Focus (optics)","score":0.4424991011619568},{"id":"https://openalex.org/keywords/symbolic-data-analysis","display_name":"Symbolic data analysis","score":0.42577964067459106},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.40651336312294006},{"id":"https://openalex.org/keywords/data-flow-diagram","display_name":"Data flow diagram","score":0.3040087819099426},{"id":"https://openalex.org/keywords/embedded-system","display_name":"Embedded system","score":0.14002612233161926}],"concepts":[{"id":"https://openalex.org/C96324660","wikidata":"https://www.wikidata.org/wiki/Q205446","display_name":"Dataflow","level":2,"score":0.8944269418716431},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8809225559234619},{"id":"https://openalex.org/C97686452","wikidata":"https://www.wikidata.org/wiki/Q7604153","display_name":"Static analysis","level":2,"score":0.7494992613792419},{"id":"https://openalex.org/C2779639559","wikidata":"https://www.wikidata.org/wiki/Q7661178","display_name":"Symbolic execution","level":3,"score":0.6747578382492065},{"id":"https://openalex.org/C102379954","wikidata":"https://www.wikidata.org/wiki/Q2589940","display_name":"Call graph","level":2,"score":0.6260877847671509},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.6081171035766602},{"id":"https://openalex.org/C88468194","wikidata":"https://www.wikidata.org/wiki/Q1172416","display_name":"Data-flow analysis","level":3,"score":0.6055330038070679},{"id":"https://openalex.org/C27458966","wikidata":"https://www.wikidata.org/wiki/Q1187693","display_name":"Control flow graph","level":2,"score":0.5951693058013916},{"id":"https://openalex.org/C106937863","wikidata":"https://www.wikidata.org/wiki/Q7236518","display_name":"Power graph analysis","level":3,"score":0.576772928237915},{"id":"https://openalex.org/C98183937","wikidata":"https://www.wikidata.org/wiki/Q2112188","display_name":"Program analysis","level":2,"score":0.5686483383178711},{"id":"https://openalex.org/C93682380","wikidata":"https://www.wikidata.org/wiki/Q2025226","display_name":"Static timing analysis","level":2,"score":0.5583497881889343},{"id":"https://openalex.org/C115874739","wikidata":"https://www.wikidata.org/wiki/Q825377","display_name":"Critical path method","level":2,"score":0.515315055847168},{"id":"https://openalex.org/C132525143","wikidata":"https://www.wikidata.org/wiki/Q141488","display_name":"Graph","level":2,"score":0.5079367756843567},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.48963767290115356},{"id":"https://openalex.org/C2780654840","wikidata":"https://www.wikidata.org/wiki/Q333341","display_name":"Abstract interpretation","level":2,"score":0.4775617718696594},{"id":"https://openalex.org/C160191386","wikidata":"https://www.wikidata.org/wiki/Q868299","display_name":"Control flow","level":2,"score":0.47196874022483826},{"id":"https://openalex.org/C110251889","wikidata":"https://www.wikidata.org/wiki/Q1569697","display_name":"Model checking","level":2,"score":0.47132447361946106},{"id":"https://openalex.org/C177264268","wikidata":"https://www.wikidata.org/wiki/Q1514741","display_name":"Set (abstract data type)","level":2,"score":0.463010311126709},{"id":"https://openalex.org/C192209626","wikidata":"https://www.wikidata.org/wiki/Q190909","display_name":"Focus (optics)","level":2,"score":0.4424991011619568},{"id":"https://openalex.org/C65620979","wikidata":"https://www.wikidata.org/wiki/Q7661176","display_name":"Symbolic data analysis","level":2,"score":0.42577964067459106},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.40651336312294006},{"id":"https://openalex.org/C489000","wikidata":"https://www.wikidata.org/wiki/Q747385","display_name":"Data flow diagram","level":2,"score":0.3040087819099426},{"id":"https://openalex.org/C149635348","wikidata":"https://www.wikidata.org/wiki/Q193040","display_name":"Embedded system","level":1,"score":0.14002612233161926},{"id":"https://openalex.org/C120665830","wikidata":"https://www.wikidata.org/wiki/Q14620","display_name":"Optics","level":1,"score":0.0},{"id":"https://openalex.org/C201995342","wikidata":"https://www.wikidata.org/wiki/Q682496","display_name":"Systems engineering","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/C127413603","wikidata":"https://www.wikidata.org/wiki/Q11023","display_name":"Engineering","level":0,"score":0.0},{"id":"https://openalex.org/C121332964","wikidata":"https://www.wikidata.org/wiki/Q413","display_name":"Physics","level":0,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1134/s0361768817040041","is_oa":false,"landing_page_url":"https://doi.org/10.1134/s0361768817040041","pdf_url":null,"source":{"id":"https://openalex.org/S150218641","display_name":"Programming and Computer Software","issn_l":"0361-7688","issn":["0361-7688","1608-3261"],"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/P4310320267","host_organization_name":"Pleiades Publishing","host_organization_lineage":["https://openalex.org/P4310320267","https://openalex.org/P4310319965"],"host_organization_lineage_names":["Pleiades Publishing","Springer Nature"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Programming and Computer Software","raw_type":"journal-article"}],"best_oa_location":null,"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":5,"referenced_works":["https://openalex.org/W1491178396","https://openalex.org/W1662203549","https://openalex.org/W1974608873","https://openalex.org/W1997256875","https://openalex.org/W2154746918"],"related_works":["https://openalex.org/W2162436812","https://openalex.org/W2166895275","https://openalex.org/W2998775986","https://openalex.org/W2373671022","https://openalex.org/W1971022286","https://openalex.org/W3002464080","https://openalex.org/W2388522952","https://openalex.org/W4200059639","https://openalex.org/W2081768685","https://openalex.org/W2737936389"],"abstract_inverted_index":{"This":[0,191],"paper":[1,192],"considers":[2,194],"various":[3,195],"aspects":[4],"of":[5,8,18,28,43,57,62,124,149,160,171,201,211,241,251],"static":[6,30,232],"analysis":[7,31,116,148,165,233],"C#":[9,45,58],"programs":[10],"in":[11,21,158,221,229],"order":[12],"to":[13,94,120,141,155,197,247],"detect":[14],"the":[15,35,41,44,91,95,101,142,187,199,224,230],"maximum":[16],"number":[17,170,240],"software":[19,29],"bugs":[20],"an":[22,113],"acceptable":[23],"time.":[24],"A":[25,81,106,136],"complete":[26],"cycle":[27],"is":[32,85,88,109,139],"described":[33,110],"with":[34,128],"main":[36],"focus":[37],"being":[38],"placed":[39],"on":[40,90,205,218,238],"specifics":[42],"language.":[46],"Some":[47],"methods":[48],"are":[49,131,179,227,236],"discussed":[50,225],"that":[51,111,144],"take":[52],"into":[53],"account":[54],"popular":[55],"features":[56],"at":[59],"all":[60],"levels":[61],"analysis:":[63],"call":[64],"graph":[65,69],"and":[66,77,100,117,235],"control":[67],"flow":[68],"construction,":[70],"dataflow":[71],"analysis,":[72,215],"as":[73,75,186],"well":[74],"context-":[76],"path-sensitive":[78,147,163],"interprocedural":[79,134,164],"analysis.":[80,135],"symbolic":[82],"execution":[83],"method":[84],"proposed,":[86],"which":[87,130],"based":[89,204,217],"works":[92],"devoted":[93],"Bounded":[96],"Model":[97],"Checking":[98],"(BMC)":[99],"Saturn":[102],"Software":[103],"Analysis":[104],"Project.":[105],"memory":[107],"model":[108],"enables":[112],"accurate":[114],"intraprocedural":[115],"allows":[118],"one":[119],"create":[121],"compact":[122],"representations":[123],"error":[125,150],"conditions":[126,153,172,178],"associated":[127],"functions,":[129],"essential":[132],"for":[133,173,214],"special":[137],"attention":[138],"paid":[140],"optimizations":[143],"occur":[145],"during":[146],"conditions.":[151],"The":[152,177],"need":[154],"be":[156],"optimized":[157],"terms":[159],"size,":[161],"because":[162],"requires":[166],"saving":[167],"a":[168,206,209,239],"large":[169],"each":[174],"analyzed":[175],"function.":[176],"resolved":[180],"using":[181],"advanced":[182],"SMT":[183],"solvers":[184],"(such":[185],"Microsoft":[188],"Z3":[189],"Prover).":[190],"also":[193],"approaches":[196],"modeling":[198],"behavior":[200],"library":[202],"functions:":[203],"summary":[207],"containing":[208],"set":[210],"properties":[212],"required":[213],"or":[216],"simplified":[219],"implementations":[220],"C#.":[222],"All":[223],"solutions":[226],"implemented":[228],"SharpChecker":[231],"tool":[234],"tested":[237],"open-source":[242],"projects":[243],"from":[244],"1.5":[245],"thousand":[246],"1.35":[248],"million":[249],"lines":[250],"code.":[252]},"counts_by_year":[{"year":2025,"cited_by_count":1},{"year":2024,"cited_by_count":3},{"year":2023,"cited_by_count":1},{"year":2022,"cited_by_count":4},{"year":2021,"cited_by_count":4},{"year":2020,"cited_by_count":3},{"year":2019,"cited_by_count":1},{"year":2018,"cited_by_count":5}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
