{"id":"https://openalex.org/W3099341715","doi":"https://doi.org/10.1145/3460945.3464954","title":"ControlFlag: a self-supervised idiosyncratic pattern detection system for software control structures","display_name":"ControlFlag: a self-supervised idiosyncratic pattern detection system for software control structures","publication_year":2021,"publication_date":"2021-06-18","ids":{"openalex":"https://openalex.org/W3099341715","doi":"https://doi.org/10.1145/3460945.3464954","mag":"3099341715"},"language":"en","primary_location":{"id":"doi:10.1145/3460945.3464954","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3460945.3464954","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 5th ACM SIGPLAN International Symposium on Machine Programming","raw_type":"proceedings-article"},"type":"conference-paper","indexed_in":["arxiv","crossref","datacite"],"open_access":{"is_oa":true,"oa_status":"green","oa_url":"https://arxiv.org/pdf/2011.03616","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5071259938","display_name":"Niranjan Hasabnis","orcid":"https://orcid.org/0009-0004-4010-7213"},"institutions":[{"id":"https://openalex.org/I1343180700","display_name":"Intel (United States)","ror":"https://ror.org/01ek73717","country_code":"US","type":"company","lineage":["https://openalex.org/I1343180700"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Niranjan Hasabnis","raw_affiliation_strings":["Intel Labs, USA"],"raw_orcid":null,"affiliations":[{"raw_affiliation_string":"Intel Labs, USA","institution_ids":["https://openalex.org/I1343180700"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5005286439","display_name":"Justin Gottschlich","orcid":"https://orcid.org/0000-0003-2742-9205"},"institutions":[{"id":"https://openalex.org/I1343180700","display_name":"Intel (United States)","ror":"https://ror.org/01ek73717","country_code":"US","type":"company","lineage":["https://openalex.org/I1343180700"]},{"id":"https://openalex.org/I79576946","display_name":"University of Pennsylvania","ror":"https://ror.org/00b30xv10","country_code":"US","type":"education","lineage":["https://openalex.org/I79576946"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Justin Gottschlich","raw_affiliation_strings":["Intel Labs, USA / University of Pennsylvania, USA"],"raw_orcid":"https://orcid.org/0000-0003-2742-9205","affiliations":[{"raw_affiliation_string":"Intel Labs, USA / University of Pennsylvania, USA","institution_ids":["https://openalex.org/I1343180700","https://openalex.org/I79576946"]}]}],"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":true,"cited_by_count":2,"citation_normalized_percentile":null,"cited_by_percentile_year":null,"biblio":{"volume":null,"issue":null,"first_page":"32","last_page":"42"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9998000264167786,"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/T10260","display_name":"Software Engineering Research","score":0.9998000264167786,"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/T11241","display_name":"Advanced Malware Detection Techniques","score":0.9984999895095825,"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/T12127","display_name":"Software System Performance and Reliability","score":0.9984999895095825,"subfield":{"id":"https://openalex.org/subfields/1705","display_name":"Computer Networks and Communications"},"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.8931196331977844},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.7176289558410645},{"id":"https://openalex.org/keywords/software-engineering","display_name":"Software engineering","score":0.584450900554657},{"id":"https://openalex.org/keywords/software-bug","display_name":"Software bug","score":0.5735923051834106},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.5496540665626526},{"id":"https://openalex.org/keywords/automation","display_name":"Automation","score":0.5185288190841675},{"id":"https://openalex.org/keywords/software-quality","display_name":"Software quality","score":0.5122138857841492},{"id":"https://openalex.org/keywords/software-development","display_name":"Software development","score":0.49705103039741516},{"id":"https://openalex.org/keywords/software-construction","display_name":"Software construction","score":0.46433863043785095},{"id":"https://openalex.org/keywords/quality","display_name":"Quality (philosophy)","score":0.4112764298915863},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.26716887950897217},{"id":"https://openalex.org/keywords/engineering","display_name":"Engineering","score":0.14391231536865234}],"concepts":[{"id":"https://openalex.org/C168065819","wikidata":"https://www.wikidata.org/wiki/Q845566","display_name":"Debugging","level":2,"score":0.8931196331977844},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.7176289558410645},{"id":"https://openalex.org/C115903868","wikidata":"https://www.wikidata.org/wiki/Q80993","display_name":"Software engineering","level":1,"score":0.584450900554657},{"id":"https://openalex.org/C1009929","wikidata":"https://www.wikidata.org/wiki/Q179550","display_name":"Software bug","level":3,"score":0.5735923051834106},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.5496540665626526},{"id":"https://openalex.org/C115901376","wikidata":"https://www.wikidata.org/wiki/Q184199","display_name":"Automation","level":2,"score":0.5185288190841675},{"id":"https://openalex.org/C117447612","wikidata":"https://www.wikidata.org/wiki/Q1412670","display_name":"Software quality","level":4,"score":0.5122138857841492},{"id":"https://openalex.org/C529173508","wikidata":"https://www.wikidata.org/wiki/Q638608","display_name":"Software development","level":3,"score":0.49705103039741516},{"id":"https://openalex.org/C186846655","wikidata":"https://www.wikidata.org/wiki/Q3398377","display_name":"Software construction","level":4,"score":0.46433863043785095},{"id":"https://openalex.org/C2779530757","wikidata":"https://www.wikidata.org/wiki/Q1207505","display_name":"Quality (philosophy)","level":2,"score":0.4112764298915863},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.26716887950897217},{"id":"https://openalex.org/C127413603","wikidata":"https://www.wikidata.org/wiki/Q11023","display_name":"Engineering","level":0,"score":0.14391231536865234},{"id":"https://openalex.org/C138885662","wikidata":"https://www.wikidata.org/wiki/Q5891","display_name":"Philosophy","level":0,"score":0.0},{"id":"https://openalex.org/C111472728","wikidata":"https://www.wikidata.org/wiki/Q9471","display_name":"Epistemology","level":1,"score":0.0},{"id":"https://openalex.org/C78519656","wikidata":"https://www.wikidata.org/wiki/Q101333","display_name":"Mechanical engineering","level":1,"score":0.0}],"mesh":[],"locations_count":6,"locations":[{"id":"doi:10.1145/3460945.3464954","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3460945.3464954","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 5th ACM SIGPLAN International Symposium on Machine Programming","raw_type":"proceedings-article"},{"id":"pmh:oai:arXiv.org:2011.03616","is_oa":true,"landing_page_url":"http://arxiv.org/abs/2011.03616","pdf_url":"https://arxiv.org/pdf/2011.03616","source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I205783295","host_organization_name":"Cornell University","host_organization_lineage":["https://openalex.org/I205783295"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"text"},{"id":"pmh:oai:repository.upenn.edu:cps_machine_programming-1003","is_oa":false,"landing_page_url":"https://repository.upenn.edu/cgi/viewcontent.cgi?article=1003&context=cps_machine_programming","pdf_url":null,"source":{"id":"https://openalex.org/S4377196331","display_name":"Scholarly Commons (University of Pennsylvania)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I79576946","host_organization_name":"University of Pennsylvania","host_organization_lineage":["https://openalex.org/I79576946"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"Machine Programming","raw_type":"text"},{"id":"pmh:oai:repository.upenn.edu:20.500.14332/8490","is_oa":false,"landing_page_url":"https://repository.upenn.edu/handle/20.500.14332/8490","pdf_url":null,"source":{"id":"https://openalex.org/S4306402083","display_name":"ScholarlyCommons (University of Pennsylvania)","issn_l":null,"issn":null,"is_oa":false,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I79576946","host_organization_name":"University of Pennsylvania","host_organization_lineage":["https://openalex.org/I79576946"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":"published","raw_type":"Presentation"},{"id":"doi:10.48550/arxiv.2011.03616","is_oa":true,"landing_page_url":"https://doi.org/10.48550/arxiv.2011.03616","pdf_url":null,"source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I205783295","host_organization_name":"Cornell University","host_organization_lineage":["https://openalex.org/I205783295"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":null,"is_accepted":false,"is_published":null,"raw_source_name":null,"raw_type":"Preprint"},{"id":"mag:3099341715","is_oa":false,"landing_page_url":null,"pdf_url":null,"source":null,"license":null,"license_id":null,"version":null,"is_accepted":false,"is_published":null,"raw_source_name":null,"raw_type":null}],"best_oa_location":{"id":"pmh:oai:arXiv.org:2011.03616","is_oa":true,"landing_page_url":"http://arxiv.org/abs/2011.03616","pdf_url":"https://arxiv.org/pdf/2011.03616","source":{"id":"https://openalex.org/S4306400194","display_name":"arXiv (Cornell University)","issn_l":null,"issn":null,"is_oa":true,"is_in_doaj":false,"is_core":false,"host_organization":"https://openalex.org/I205783295","host_organization_name":"Cornell University","host_organization_lineage":["https://openalex.org/I205783295"],"host_organization_lineage_names":[],"type":"repository"},"license":null,"license_id":null,"version":"submittedVersion","is_accepted":false,"is_published":false,"raw_source_name":null,"raw_type":"text"},"sustainable_development_goals":[],"awards":[],"funders":[],"has_content":{"grobid_xml":true,"pdf":true},"content_urls":{"pdf":"https://content.openalex.org/works/W3099341715.pdf","grobid_xml":"https://content.openalex.org/works/W3099341715.grobid-xml"},"referenced_works_count":62,"referenced_works":["https://openalex.org/W1507039213","https://openalex.org/W1584735725","https://openalex.org/W1657461476","https://openalex.org/W1978230208","https://openalex.org/W2059215200","https://openalex.org/W2062068644","https://openalex.org/W2101728371","https://openalex.org/W2106259924","https://openalex.org/W2107376583","https://openalex.org/W2116272605","https://openalex.org/W2124666592","https://openalex.org/W2129638514","https://openalex.org/W2133378824","https://openalex.org/W2152083960","https://openalex.org/W2156841542","https://openalex.org/W2308618763","https://openalex.org/W2328210346","https://openalex.org/W2412440871","https://openalex.org/W2547212960","https://openalex.org/W2547390950","https://openalex.org/W2801200039","https://openalex.org/W2802401630","https://openalex.org/W2806718802","https://openalex.org/W2894923858","https://openalex.org/W2902618648","https://openalex.org/W2914933759","https://openalex.org/W2947703459","https://openalex.org/W2955270045","https://openalex.org/W2963499994","https://openalex.org/W2970417003","https://openalex.org/W2970490744","https://openalex.org/W2971291256","https://openalex.org/W2980902799","https://openalex.org/W2982540258","https://openalex.org/W2994962993","https://openalex.org/W2996248296","https://openalex.org/W2998011150","https://openalex.org/W3004289083","https://openalex.org/W3027453785","https://openalex.org/W3033163100","https://openalex.org/W3034313155","https://openalex.org/W3043281046","https://openalex.org/W3082991350","https://openalex.org/W3094459920","https://openalex.org/W3097664220","https://openalex.org/W3100026183","https://openalex.org/W3102139284","https://openalex.org/W3102935281","https://openalex.org/W3111129509","https://openalex.org/W3121414853","https://openalex.org/W3136091943","https://openalex.org/W3183121011","https://openalex.org/W3195897903","https://openalex.org/W6675505735","https://openalex.org/W6682598049","https://openalex.org/W6715465201","https://openalex.org/W6745034332","https://openalex.org/W6751252031","https://openalex.org/W6751483195","https://openalex.org/W6761096779","https://openalex.org/W6776653124","https://openalex.org/W6805912654"],"related_works":["https://openalex.org/W2284072287","https://openalex.org/W3105533111","https://openalex.org/W1993139624","https://openalex.org/W2055031313","https://openalex.org/W3207786388","https://openalex.org/W2157766445","https://openalex.org/W1590932173","https://openalex.org/W1885835230","https://openalex.org/W2125447243","https://openalex.org/W2951417529","https://openalex.org/W177850871","https://openalex.org/W2109943281","https://openalex.org/W3096156304","https://openalex.org/W2160761160","https://openalex.org/W2894917785","https://openalex.org/W347546848","https://openalex.org/W2399993634","https://openalex.org/W2166227371","https://openalex.org/W3109908453","https://openalex.org/W2057494692"],"abstract_inverted_index":{"Software":[0],"debugging":[1,38,54],"has":[2,28,111,119],"been":[3,120],"shown":[4],"to":[5,52,57],"utilize":[6],"upwards":[7],"of":[8,10,23,90,132],"half":[9],"developers\u2019":[11],"time.":[12],"Yet,":[13],"machine":[14],"programming":[15,96],"(MP),":[16],"the":[17,21,72],"field":[18],"concerned":[19],"with":[20],"automation":[22],"software":[24,63,108],"(and":[25],"hardware)":[26],"development,":[27],"recently":[29],"made":[30],"strides":[31],"in":[32,62,71,93,98,116],"both":[33],"research":[34],"and":[35,83,88,122],"production-quality":[36,99],"automated":[37],"systems.":[39],"In":[40],"this":[41],"paper":[42],"we":[43],"present":[44,80],"ControlFlag,":[45],"a":[46,102],"self-supervised":[47],"MP":[48],"system":[49],"that":[50,118],"aims":[51],"improve":[53],"by":[55,124],"attempting":[56],"detect":[58],"idiosyncratic":[59],"pattern":[60,76],"violations":[61],"control":[64],"structures.":[65],"ControlFlag":[66,110],"also":[67,128],"suggests":[68],"possible":[69],"corrections":[70],"event":[73],"an":[74,85,114],"anomalous":[75],"is":[77],"detected.":[78],"We":[79,127],"ControlFlag\u2019s":[81],"design":[82],"provide":[84],"experimental":[86],"evaluation":[87],"analysis":[89],"its":[91,125],"efficacy":[92],"identifying":[94],"potential":[95],"errors":[97],"software.":[100],"As":[101],"first":[103],"concrete":[104],"evidence":[105],"towards":[106],"improving":[107],"quality,":[109],"already":[112],"found":[113],"anomaly":[115],"CURL":[117],"acknowledged":[121],"fixed":[123],"developers.":[126],"discuss":[129],"future":[130],"extensions":[131],"ControlFlag.":[133]},"counts_by_year":[{"year":2023,"cited_by_count":1},{"year":2021,"cited_by_count":1}],"updated_date":"2026-07-14T23:27:15.235271","created_date":"2025-10-10T00:00:00"}
