{"id":"https://openalex.org/W2979368354","doi":"https://doi.org/10.1145/3360614","title":"Automatic and scalable detection of logical errors in functional programming assignments","display_name":"Automatic and scalable detection of logical errors in functional programming assignments","publication_year":2019,"publication_date":"2019-10-10","ids":{"openalex":"https://openalex.org/W2979368354","doi":"https://doi.org/10.1145/3360614","mag":"2979368354"},"language":"en","primary_location":{"id":"doi:10.1145/3360614","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3360614","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3360614","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":null,"license_id":null,"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/3360614","any_repository_has_fulltext":false},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5070720457","display_name":"Dowon Song","orcid":null},"institutions":[{"id":"https://openalex.org/I197347611","display_name":"Korea University","ror":"https://ror.org/047dqcg40","country_code":"KR","type":"education","lineage":["https://openalex.org/I197347611"]}],"countries":["KR"],"is_corresponding":true,"raw_author_name":"Dowon Song","raw_affiliation_strings":["Korea University, South Korea"],"affiliations":[{"raw_affiliation_string":"Korea University, South Korea","institution_ids":["https://openalex.org/I197347611"]}]},{"author_position":"middle","author":{"id":"https://openalex.org/A5101699334","display_name":"Myungho Lee","orcid":"https://orcid.org/0000-0003-4383-6425"},"institutions":[{"id":"https://openalex.org/I197347611","display_name":"Korea University","ror":"https://ror.org/047dqcg40","country_code":"KR","type":"education","lineage":["https://openalex.org/I197347611"]}],"countries":["KR"],"is_corresponding":false,"raw_author_name":"Myungho Lee","raw_affiliation_strings":["Korea University, South Korea"],"affiliations":[{"raw_affiliation_string":"Korea University, South Korea","institution_ids":["https://openalex.org/I197347611"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5042036026","display_name":"Hakjoo Oh","orcid":"https://orcid.org/0000-0002-1900-7654"},"institutions":[{"id":"https://openalex.org/I197347611","display_name":"Korea University","ror":"https://ror.org/047dqcg40","country_code":"KR","type":"education","lineage":["https://openalex.org/I197347611"]}],"countries":["KR"],"is_corresponding":false,"raw_author_name":"Hakjoo Oh","raw_affiliation_strings":["Korea University, South Korea"],"affiliations":[{"raw_affiliation_string":"Korea University, South Korea","institution_ids":["https://openalex.org/I197347611"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":3,"corresponding_author_ids":["https://openalex.org/A5070720457"],"corresponding_institution_ids":["https://openalex.org/I197347611"],"apc_list":null,"apc_paid":null,"fwci":1.9767,"has_fulltext":true,"cited_by_count":16,"citation_normalized_percentile":{"value":0.87121849,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":89,"max":98},"biblio":{"volume":"3","issue":"OOPSLA","first_page":"1","last_page":"30"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9998999834060669,"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/T10743","display_name":"Software Testing and Debugging Techniques","score":0.9998999834060669,"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.9991000294685364,"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/T12423","display_name":"Software Reliability and Analysis Research","score":0.9965000152587891,"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/computer-science","display_name":"Computer science","score":0.8396569490432739},{"id":"https://openalex.org/keywords/test-suite","display_name":"Test suite","score":0.7249961495399475},{"id":"https://openalex.org/keywords/novelty","display_name":"Novelty","score":0.675321638584137},{"id":"https://openalex.org/keywords/process","display_name":"Process (computing)","score":0.5280153155326843},{"id":"https://openalex.org/keywords/syntax","display_name":"Syntax","score":0.5220720171928406},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.5168350338935852},{"id":"https://openalex.org/keywords/context","display_name":"Context (archaeology)","score":0.49832749366760254},{"id":"https://openalex.org/keywords/scalability","display_name":"Scalability","score":0.4740564525127411},{"id":"https://openalex.org/keywords/test","display_name":"Test (biology)","score":0.46693792939186096},{"id":"https://openalex.org/keywords/novelty-detection","display_name":"Novelty detection","score":0.46004369854927063},{"id":"https://openalex.org/keywords/symbolic-execution","display_name":"Symbolic execution","score":0.4460076093673706},{"id":"https://openalex.org/keywords/test-case","display_name":"Test case","score":0.44555145502090454},{"id":"https://openalex.org/keywords/key","display_name":"Key (lock)","score":0.42974650859832764},{"id":"https://openalex.org/keywords/property","display_name":"Property (philosophy)","score":0.4258635640144348},{"id":"https://openalex.org/keywords/data-mining","display_name":"Data mining","score":0.39427271485328674},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.3915947675704956},{"id":"https://openalex.org/keywords/machine-learning","display_name":"Machine learning","score":0.37015536427497864},{"id":"https://openalex.org/keywords/software","display_name":"Software","score":0.16694140434265137},{"id":"https://openalex.org/keywords/database","display_name":"Database","score":0.11855781078338623}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8396569490432739},{"id":"https://openalex.org/C151552104","wikidata":"https://www.wikidata.org/wiki/Q7705809","display_name":"Test suite","level":4,"score":0.7249961495399475},{"id":"https://openalex.org/C2778738651","wikidata":"https://www.wikidata.org/wiki/Q16546687","display_name":"Novelty","level":2,"score":0.675321638584137},{"id":"https://openalex.org/C98045186","wikidata":"https://www.wikidata.org/wiki/Q205663","display_name":"Process (computing)","level":2,"score":0.5280153155326843},{"id":"https://openalex.org/C60048249","wikidata":"https://www.wikidata.org/wiki/Q37437","display_name":"Syntax","level":2,"score":0.5220720171928406},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.5168350338935852},{"id":"https://openalex.org/C2779343474","wikidata":"https://www.wikidata.org/wiki/Q3109175","display_name":"Context (archaeology)","level":2,"score":0.49832749366760254},{"id":"https://openalex.org/C48044578","wikidata":"https://www.wikidata.org/wiki/Q727490","display_name":"Scalability","level":2,"score":0.4740564525127411},{"id":"https://openalex.org/C2777267654","wikidata":"https://www.wikidata.org/wiki/Q3519023","display_name":"Test (biology)","level":2,"score":0.46693792939186096},{"id":"https://openalex.org/C2778924833","wikidata":"https://www.wikidata.org/wiki/Q7064603","display_name":"Novelty detection","level":3,"score":0.46004369854927063},{"id":"https://openalex.org/C2779639559","wikidata":"https://www.wikidata.org/wiki/Q7661178","display_name":"Symbolic execution","level":3,"score":0.4460076093673706},{"id":"https://openalex.org/C128942645","wikidata":"https://www.wikidata.org/wiki/Q1568346","display_name":"Test case","level":3,"score":0.44555145502090454},{"id":"https://openalex.org/C26517878","wikidata":"https://www.wikidata.org/wiki/Q228039","display_name":"Key (lock)","level":2,"score":0.42974650859832764},{"id":"https://openalex.org/C189950617","wikidata":"https://www.wikidata.org/wiki/Q937228","display_name":"Property (philosophy)","level":2,"score":0.4258635640144348},{"id":"https://openalex.org/C124101348","wikidata":"https://www.wikidata.org/wiki/Q172491","display_name":"Data mining","level":1,"score":0.39427271485328674},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.3915947675704956},{"id":"https://openalex.org/C119857082","wikidata":"https://www.wikidata.org/wiki/Q2539","display_name":"Machine learning","level":1,"score":0.37015536427497864},{"id":"https://openalex.org/C2777904410","wikidata":"https://www.wikidata.org/wiki/Q7397","display_name":"Software","level":2,"score":0.16694140434265137},{"id":"https://openalex.org/C77088390","wikidata":"https://www.wikidata.org/wiki/Q8513","display_name":"Database","level":1,"score":0.11855781078338623},{"id":"https://openalex.org/C38652104","wikidata":"https://www.wikidata.org/wiki/Q3510521","display_name":"Computer security","level":1,"score":0.0},{"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/C86803240","wikidata":"https://www.wikidata.org/wiki/Q420","display_name":"Biology","level":0,"score":0.0},{"id":"https://openalex.org/C27206212","wikidata":"https://www.wikidata.org/wiki/Q34178","display_name":"Theology","level":1,"score":0.0},{"id":"https://openalex.org/C151730666","wikidata":"https://www.wikidata.org/wiki/Q7205","display_name":"Paleontology","level":1,"score":0.0},{"id":"https://openalex.org/C152877465","wikidata":"https://www.wikidata.org/wiki/Q208042","display_name":"Regression analysis","level":2,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1145/3360614","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3360614","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3360614","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":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the ACM on Programming Languages","raw_type":"journal-article"}],"best_oa_location":{"id":"doi:10.1145/3360614","is_oa":true,"landing_page_url":"https://doi.org/10.1145/3360614","pdf_url":"https://dl.acm.org/doi/pdf/10.1145/3360614","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":null,"license_id":null,"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":[{"display_name":"Quality Education","score":0.6600000262260437,"id":"https://metadata.un.org/sdg/4"}],"awards":[{"id":"https://openalex.org/G342704958","display_name":null,"funder_award_id":"funded","funder_id":"https://openalex.org/F4320322120","funder_display_name":"National Research Foundation of Korea"}],"funders":[{"id":"https://openalex.org/F4320320671","display_name":"National Research Foundation","ror":"https://ror.org/05s0g1g46"},{"id":"https://openalex.org/F4320322120","display_name":"National Research Foundation of Korea","ror":"https://ror.org/013aysd81"},{"id":"https://openalex.org/F4320332195","display_name":"Samsung","ror":"https://ror.org/04w3jy968"}],"has_content":{"grobid_xml":true,"pdf":true},"content_urls":{"pdf":"https://content.openalex.org/works/W2979368354.pdf","grobid_xml":"https://content.openalex.org/works/W2979368354.grobid-xml"},"referenced_works_count":56,"referenced_works":["https://openalex.org/W1480909796","https://openalex.org/W1578246685","https://openalex.org/W1623496080","https://openalex.org/W1710734607","https://openalex.org/W1720848645","https://openalex.org/W1858945639","https://openalex.org/W1905591175","https://openalex.org/W2011367000","https://openalex.org/W2012312630","https://openalex.org/W2013596093","https://openalex.org/W2016027000","https://openalex.org/W2054410248","https://openalex.org/W2061575154","https://openalex.org/W2063019130","https://openalex.org/W2076719273","https://openalex.org/W2081841061","https://openalex.org/W2091385303","https://openalex.org/W2093535699","https://openalex.org/W2097444001","https://openalex.org/W2098456636","https://openalex.org/W2101512909","https://openalex.org/W2119717320","https://openalex.org/W2122947685","https://openalex.org/W2125126351","https://openalex.org/W2126071695","https://openalex.org/W2128303158","https://openalex.org/W2145124323","https://openalex.org/W2153036969","https://openalex.org/W2162960800","https://openalex.org/W2263738566","https://openalex.org/W2274071363","https://openalex.org/W2474318526","https://openalex.org/W2476059279","https://openalex.org/W2490045363","https://openalex.org/W2532737545","https://openalex.org/W2550100435","https://openalex.org/W2561055248","https://openalex.org/W2605202003","https://openalex.org/W2626990892","https://openalex.org/W2729767053","https://openalex.org/W2734788368","https://openalex.org/W2735571786","https://openalex.org/W2741328617","https://openalex.org/W2762513422","https://openalex.org/W2794832431","https://openalex.org/W2798628553","https://openalex.org/W2807847220","https://openalex.org/W2886081451","https://openalex.org/W2898182742","https://openalex.org/W2898319337","https://openalex.org/W2952270548","https://openalex.org/W3099703838","https://openalex.org/W4238083723","https://openalex.org/W4242364663","https://openalex.org/W4244488020","https://openalex.org/W4388917161"],"related_works":["https://openalex.org/W2064636555","https://openalex.org/W2585503716","https://openalex.org/W1939982668","https://openalex.org/W2105014086","https://openalex.org/W2076090200","https://openalex.org/W3025682415","https://openalex.org/W2081173909","https://openalex.org/W4382317424","https://openalex.org/W4389009659","https://openalex.org/W2009637593"],"abstract_inverted_index":{"We":[0,68,169],"present":[1],"a":[2,25,42,83,87,93,128],"new":[3],"technique":[4,91,137,176],"for":[5,79],"automatically":[6,75],"detecting":[7,20],"logical":[8,21],"errors":[9,22,56,144],"in":[10,127,177],"functional":[11,80],"programming":[12],"assignments.":[13],"Compared":[14],"to":[15,53,70,140,188],"syntax":[16],"or":[17],"type":[18],"errors,":[19],"remains":[23],"largely":[24],"manual":[26,48,106],"process":[27],"that":[28,95,119,135,151],"requires":[29],"hand-made":[30],"test":[31,36,49,77,149],"cases.":[32],"However,":[33],"designing":[34],"proper":[35],"cases":[37,50,63,78,150],"is":[38,114,138],"nontrivial":[39],"and":[40,86,123,160],"involves":[41],"lot":[43],"of":[44,64,100,174,180],"human":[45],"effort.":[46,107],"Furthermore,":[47],"are":[51],"unlikely":[52],"catch":[54],"diverse":[55,65],"because":[57],"instructors":[58],"cannot":[59],"predict":[60],"all":[61],"corner":[62],"student":[66],"submissions.":[67],"aim":[69],"reduce":[71],"this":[72],"burden":[73],"by":[74,147],"generating":[76],"programs.":[81],"Given":[82],"reference":[84],"program":[85,182],"student's":[88],"submission,":[89],"our":[90,112,136,175],"generates":[92],"counter-example":[94,116],"captures":[96],"the":[97,101,115,156,164,172,178],"semantic":[98],"difference":[99],"two":[102],"programs":[103],"without":[104],"any":[105],"The":[108,131],"key":[109],"novelty":[110],"behind":[111],"approach":[113],"generation":[117],"algorithm":[118],"combines":[120],"enumerative":[121],"search":[122],"symbolic":[124],"verification":[125],"techniques":[126],"synergistic":[129],"way.":[130],"experimental":[132],"results":[133],"show":[134],"able":[139],"detect":[141],"88":[142],"more":[143],"not":[145],"found":[146],"mature":[148],"have":[152],"been":[153],"improved":[154],"over":[155],"past":[157],"few":[158],"years,":[159],"performs":[161],"better":[162],"than":[163],"existing":[165],"property-based":[166],"testing":[167],"techniques.":[168],"also":[170],"demonstrate":[171],"usefulness":[173],"context":[179],"automated":[181],"repair,":[183],"where":[184],"it":[185],"effectively":[186],"helps":[187],"eliminate":[189],"test-suite-overfitted":[190],"patches.":[191]},"counts_by_year":[{"year":2025,"cited_by_count":2},{"year":2024,"cited_by_count":5},{"year":2023,"cited_by_count":3},{"year":2022,"cited_by_count":2},{"year":2021,"cited_by_count":3},{"year":2020,"cited_by_count":1}],"updated_date":"2026-04-10T15:06:20.359241","created_date":"2025-10-10T00:00:00"}
