{"id":"https://openalex.org/W7168043802","doi":"https://doi.org/10.1145/3786583.3786878","title":"Foiegras: Source Code Based Software Composition Analysis For C/C++ Applications","display_name":"Foiegras: Source Code Based Software Composition Analysis For C/C++ Applications","publication_year":2026,"publication_date":"2026-04-12","ids":{"openalex":"https://openalex.org/W7168043802","doi":"https://doi.org/10.1145/3786583.3786878"},"language":null,"primary_location":{"id":"doi:10.1145/3786583.3786878","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3786583.3786878","pdf_url":null,"source":null,"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 IEEE/ACM 48th International Conference on Software Engineering: Software Engineering in Practice","raw_type":"proceedings-article"},"type":"conference-paper","indexed_in":["crossref"],"open_access":{"is_oa":true,"oa_status":"gold","oa_url":"https://doi.org/10.1145/3786583.3786878","any_repository_has_fulltext":null},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5043864604","display_name":"Georgios Gousios","orcid":"https://orcid.org/0000-0002-8495-7939"},"institutions":[{"id":"https://openalex.org/I4210103266","display_name":"Deltares","ror":"https://ror.org/01deh9c76","country_code":"NL","type":"facility","lineage":["https://openalex.org/I4210103266"]}],"countries":["NL"],"is_corresponding":false,"raw_author_name":"Georgios Gousios","raw_affiliation_strings":["Endor Labs, Delft, Netherlands"],"raw_orcid":"https://orcid.org/0000-0002-8495-7939","affiliations":[{"raw_affiliation_string":"Endor Labs, Delft, Netherlands","institution_ids":["https://openalex.org/I4210103266"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5140478792","display_name":"Philip Hamer","orcid":"https://orcid.org/0009-0008-0846-7322"},"institutions":[{"id":"https://openalex.org/I4210136680","display_name":"Pain Care Labs (United States)","ror":"https://ror.org/041wapp49","country_code":"US","type":"company","lineage":["https://openalex.org/I4210136680"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Philip Hamer","raw_affiliation_strings":["Endor Labs, Atlanta, Georgia, USA"],"raw_orcid":"https://orcid.org/0009-0008-0846-7322","affiliations":[{"raw_affiliation_string":"Endor Labs, Atlanta, Georgia, USA","institution_ids":["https://openalex.org/I4210136680"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5122258607","display_name":"Camilla Odlund","orcid":null},"institutions":[{"id":"https://openalex.org/I212119943","display_name":"University of Victoria","ror":"https://ror.org/04s5mat29","country_code":"CA","type":"education","lineage":["https://openalex.org/I212119943"]}],"countries":["CA"],"is_corresponding":false,"raw_author_name":"Camilla Odlund","raw_affiliation_strings":["Endor Labs, Victoria, Canada"],"raw_orcid":"https://orcid.org/0009-0008-6029-7658","affiliations":[{"raw_affiliation_string":"Endor Labs, Victoria, Canada","institution_ids":["https://openalex.org/I212119943"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5140473525","display_name":"Leandro Melo","orcid":"https://orcid.org/0009-0009-9429-1761"},"institutions":[{"id":"https://openalex.org/I3018999404","display_name":"Centro Universit\u00e1rio de Belo Horizonte","ror":"https://ror.org/04m3xd186","country_code":"BR","type":"education","lineage":["https://openalex.org/I3018999404"]}],"countries":["BR"],"is_corresponding":false,"raw_author_name":"Leandro Melo","raw_affiliation_strings":["Endor Labs, Belo Horizonte, Brazil"],"raw_orcid":"https://orcid.org/0009-0009-9429-1761","affiliations":[{"raw_affiliation_string":"Endor Labs, Belo Horizonte, Brazil","institution_ids":["https://openalex.org/I3018999404"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5079590222","display_name":"Joseph Hejderup","orcid":"https://orcid.org/0000-0002-3334-2133"},"institutions":[{"id":"https://openalex.org/I4210103266","display_name":"Deltares","ror":"https://ror.org/01deh9c76","country_code":"NL","type":"facility","lineage":["https://openalex.org/I4210103266"]}],"countries":["NL"],"is_corresponding":false,"raw_author_name":"Joseph Hejderup","raw_affiliation_strings":["Endor Labs, Delft, Netherlands"],"raw_orcid":"https://orcid.org/0000-0002-3334-2133","affiliations":[{"raw_affiliation_string":"Endor Labs, Delft, Netherlands","institution_ids":["https://openalex.org/I4210103266"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5011139678","display_name":"S. Muniraju","orcid":null},"institutions":[{"id":"https://openalex.org/I4210112589","display_name":"Biozeen (India)","ror":"https://ror.org/02ae11525","country_code":"IN","type":"company","lineage":["https://openalex.org/I4210112589"]}],"countries":["IN"],"is_corresponding":false,"raw_author_name":"Sridhara Muniraju","raw_affiliation_strings":["Endor Labs, Bangalore, India"],"raw_orcid":"https://orcid.org/0009-0007-9964-3987","affiliations":[{"raw_affiliation_string":"Endor Labs, Bangalore, India","institution_ids":["https://openalex.org/I4210112589"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5043941055","display_name":"Thomas Durieux","orcid":"https://orcid.org/0000-0002-1996-6134"},"institutions":[{"id":"https://openalex.org/I4210103266","display_name":"Deltares","ror":"https://ror.org/01deh9c76","country_code":"NL","type":"facility","lineage":["https://openalex.org/I4210103266"]}],"countries":["NL"],"is_corresponding":false,"raw_author_name":"Thomas Durieux","raw_affiliation_strings":["Endor Labs, Delft, Netherlands"],"raw_orcid":"https://orcid.org/0000-0002-1996-6134","affiliations":[{"raw_affiliation_string":"Endor Labs, Delft, Netherlands","institution_ids":["https://openalex.org/I4210103266"]}]}],"institutions":[],"countries_distinct_count":5,"institutions_distinct_count":5,"corresponding_author_ids":[],"corresponding_institution_ids":[],"apc_list":null,"apc_paid":null,"fwci":null,"has_fulltext":false,"cited_by_count":0,"citation_normalized_percentile":null,"cited_by_percentile_year":null,"biblio":{"volume":null,"issue":null,"first_page":"351","last_page":"361"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.6761000156402588,"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.6761000156402588,"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.19059999287128448,"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/T10743","display_name":"Software Testing and Debugging Techniques","score":0.055799998342990875,"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/source-code","display_name":"Source code","score":0.5938000082969666},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.5206000208854675},{"id":"https://openalex.org/keywords/mit-license","display_name":"MIT License","score":0.44830000400543213},{"id":"https://openalex.org/keywords/reuse","display_name":"Reuse","score":0.4339999854564667},{"id":"https://openalex.org/keywords/software-versioning","display_name":"Software versioning","score":0.42309999465942383},{"id":"https://openalex.org/keywords/precision-and-recall","display_name":"Precision and recall","score":0.37549999356269836},{"id":"https://openalex.org/keywords/static-program-analysis","display_name":"Static program analysis","score":0.3562999963760376},{"id":"https://openalex.org/keywords/software-system","display_name":"Software system","score":0.34790000319480896},{"id":"https://openalex.org/keywords/code","display_name":"Code (set theory)","score":0.3328000009059906}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8046000003814697},{"id":"https://openalex.org/C43126263","wikidata":"https://www.wikidata.org/wiki/Q128751","display_name":"Source code","level":2,"score":0.5938000082969666},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.5206000208854675},{"id":"https://openalex.org/C174183944","wikidata":"https://www.wikidata.org/wiki/Q334661","display_name":"MIT License","level":3,"score":0.44830000400543213},{"id":"https://openalex.org/C206588197","wikidata":"https://www.wikidata.org/wiki/Q846574","display_name":"Reuse","level":2,"score":0.4339999854564667},{"id":"https://openalex.org/C124101348","wikidata":"https://www.wikidata.org/wiki/Q172491","display_name":"Data mining","level":1,"score":0.4334000051021576},{"id":"https://openalex.org/C198140048","wikidata":"https://www.wikidata.org/wiki/Q10859422","display_name":"Software versioning","level":3,"score":0.42309999465942383},{"id":"https://openalex.org/C77088390","wikidata":"https://www.wikidata.org/wiki/Q8513","display_name":"Database","level":1,"score":0.38040000200271606},{"id":"https://openalex.org/C81669768","wikidata":"https://www.wikidata.org/wiki/Q2359161","display_name":"Precision and recall","level":2,"score":0.37549999356269836},{"id":"https://openalex.org/C137287247","wikidata":"https://www.wikidata.org/wiki/Q1329550","display_name":"Static program analysis","level":4,"score":0.3562999963760376},{"id":"https://openalex.org/C115903868","wikidata":"https://www.wikidata.org/wiki/Q80993","display_name":"Software engineering","level":1,"score":0.35600000619888306},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.3513999879360199},{"id":"https://openalex.org/C149091818","wikidata":"https://www.wikidata.org/wiki/Q2429814","display_name":"Software system","level":3,"score":0.34790000319480896},{"id":"https://openalex.org/C23123220","wikidata":"https://www.wikidata.org/wiki/Q816826","display_name":"Information retrieval","level":1,"score":0.3474999964237213},{"id":"https://openalex.org/C2776760102","wikidata":"https://www.wikidata.org/wiki/Q5139990","display_name":"Code (set theory)","level":3,"score":0.3328000009059906},{"id":"https://openalex.org/C36503486","wikidata":"https://www.wikidata.org/wiki/Q11235244","display_name":"Domain (mathematical analysis)","level":2,"score":0.33180001378059387},{"id":"https://openalex.org/C97250363","wikidata":"https://www.wikidata.org/wiki/Q235557","display_name":"File format","level":2,"score":0.3276999890804291},{"id":"https://openalex.org/C165064840","wikidata":"https://www.wikidata.org/wiki/Q1321061","display_name":"Matching (statistics)","level":2,"score":0.3246999979019165},{"id":"https://openalex.org/C133162039","wikidata":"https://www.wikidata.org/wiki/Q1061077","display_name":"Code generation","level":3,"score":0.2874999940395355},{"id":"https://openalex.org/C40231798","wikidata":"https://www.wikidata.org/wiki/Q1333743","display_name":"Composition (language)","level":2,"score":0.273499995470047},{"id":"https://openalex.org/C2780940931","wikidata":"https://www.wikidata.org/wiki/Q174989","display_name":"File system","level":2,"score":0.2662000060081482},{"id":"https://openalex.org/C55439883","wikidata":"https://www.wikidata.org/wiki/Q360812","display_name":"Correctness","level":2,"score":0.26440000534057617},{"id":"https://openalex.org/C34736171","wikidata":"https://www.wikidata.org/wiki/Q918333","display_name":"Preprocessor","level":2,"score":0.2637999951839447},{"id":"https://openalex.org/C529173508","wikidata":"https://www.wikidata.org/wiki/Q638608","display_name":"Software development","level":3,"score":0.2624000012874603},{"id":"https://openalex.org/C2776321320","wikidata":"https://www.wikidata.org/wiki/Q857525","display_name":"Annotation","level":2,"score":0.2563000023365021},{"id":"https://openalex.org/C205711294","wikidata":"https://www.wikidata.org/wiki/Q176953","display_name":"Rendering (computer graphics)","level":2,"score":0.2556000053882599},{"id":"https://openalex.org/C19768560","wikidata":"https://www.wikidata.org/wiki/Q320727","display_name":"Dependency (UML)","level":2,"score":0.2533000111579895}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3786583.3786878","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3786583.3786878","pdf_url":null,"source":null,"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 IEEE/ACM 48th International Conference on Software Engineering: Software Engineering in Practice","raw_type":"proceedings-article"}],"best_oa_location":{"id":"doi:10.1145/3786583.3786878","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3786583.3786878","pdf_url":null,"source":null,"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 IEEE/ACM 48th International Conference on Software Engineering: Software Engineering in Practice","raw_type":"proceedings-article"},"sustainable_development_goals":[{"id":"https://metadata.un.org/sdg/15","score":0.4886375069618225,"display_name":"Life in Land"}],"awards":[],"funders":[],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":12,"referenced_works":["https://openalex.org/W2065053490","https://openalex.org/W2128782367","https://openalex.org/W2138756793","https://openalex.org/W2766078311","https://openalex.org/W3160189022","https://openalex.org/W4297970754","https://openalex.org/W4301168982","https://openalex.org/W4384345724","https://openalex.org/W4391558392","https://openalex.org/W4394745954","https://openalex.org/W4394769278","https://openalex.org/W7118987074"],"related_works":[],"abstract_inverted_index":{"Software":[0],"Composition":[1],"Analysis":[2],"(SCA)":[3],"identifies":[4,124],"third-party":[5],"components":[6],"in":[7,195],"applications":[8,18,113],"for":[9,62,67,145,150,190],"vulnerability":[10],"management":[11],"and":[12,16,57,65,108,141,157,180],"license":[13],"compliance.":[14],"C":[15],"C++":[17],"often":[19],"rely":[20],"on":[21,103],"copy-based":[22],"code":[23,46],"reuse":[24],"without":[25],"maintaining":[26,59],"origin":[27],"information,":[28],"rendering":[29],"precise":[30],"SCA":[31,39,162,173],"generation":[32],"challenging.":[33],"We":[34,100],"present":[35],"Foiegras,":[36],"a":[37,104,160],"production":[38],"system":[40,50],"addressing":[41],"this":[42],"challenge":[43,93],"through":[44,81],"advanced":[45],"clone":[47],"detection.":[48,69],"The":[49],"segments":[51],"source":[52],"files":[53],"into":[54],"functions,":[55],"types,":[56],"licenses,":[58],"cryptographic":[60],"signatures":[61],"exact":[63,125,146],"matching":[64,148],"embeddings":[66],"similarity-based":[68],"Uniquely,":[70],"we":[71],"curate":[72],"an":[73],"index":[74],"of":[75,94,139,143,172,183],"1,700":[76],"authoritative":[77],"open-source":[78,111],"projects,":[79],"constructed":[80],"manual":[82],"annotation":[83],"by":[84],"13":[85],"domain":[86],"experts.":[87],"This":[88],"curation":[89,189],"addresses":[90],"the":[91,120,178,181],"fundamental":[92],"distinguishing":[95],"original":[96],"sources":[97],"from":[98],"copies.":[99],"evaluate":[101],"Foiegras":[102,123,164],"file-based":[105],"synthetic":[106],"dataset":[107],"28":[109],"high-profile":[110],"C/C++":[112],"with":[114,128,187],"manually":[115],"verified":[116],"ground":[117],"truth.":[118],"At":[119],"file":[121,126],"level,":[122],"versions":[127],"78%":[129],"average":[130],"precision.":[131],"In":[132],"real-world":[133],"applications,":[134],"it":[135],"achieves":[136],"mean":[137],"precision":[138],"0.7":[140],"recall":[142],"0.5":[144],"version":[147],"(0.79/0.71":[149],"library":[151],"name":[152],"matching),":[153],"approaching":[154],"state-of-the-art":[155],"performance":[156],"significantly":[158],"outperforming":[159],"commercial":[161],"platform.":[163],"is":[165],"deployed":[166],"at":[167],"Endor":[168],"Labs,":[169],"processing":[170],"thousands":[171],"requests":[174],"daily,":[175],"demonstrating":[176],"both":[177],"feasibility":[179],"necessity":[182],"combining":[184],"automated":[185],"analysis":[186,194],"expert":[188],"accurate":[191],"software":[192],"composition":[193],"ecosystems":[196],"lacking":[197],"modern":[198],"dependency":[199],"management.":[200]},"counts_by_year":[],"updated_date":"2026-07-14T23:27:15.235271","created_date":"2026-07-12T00:00:00"}
