{"id":"https://openalex.org/W3160180849","doi":"https://doi.org/10.1017/s0956796821000083","title":"Explainable dynamic programming","display_name":"Explainable dynamic programming","publication_year":2021,"publication_date":"2021-01-01","ids":{"openalex":"https://openalex.org/W3160180849","doi":"https://doi.org/10.1017/s0956796821000083","mag":"3160180849"},"language":"en","primary_location":{"id":"doi:10.1017/s0956796821000083","is_oa":false,"landing_page_url":"https://doi.org/10.1017/s0956796821000083","pdf_url":null,"source":{"id":"https://openalex.org/S12266929","display_name":"Journal of Functional Programming","issn_l":"0956-7968","issn":["0956-7968","1469-7653"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310311721","host_organization_name":"Cambridge University Press","host_organization_lineage":["https://openalex.org/P4310311721","https://openalex.org/P4310311702"],"host_organization_lineage_names":["Cambridge University Press","University of Cambridge"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Journal of Functional Programming","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/A5078733350","display_name":"Martin Erwig","orcid":"https://orcid.org/0000-0002-7471-4554"},"institutions":[{"id":"https://openalex.org/I131249849","display_name":"Oregon State University","ror":"https://ror.org/00ysfqy60","country_code":"US","type":"education","lineage":["https://openalex.org/I131249849"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"MARTIN ERWIG","raw_affiliation_strings":["School of EECS, Kelley Engineering Center 3047, Oregon State University, Corvallis, Oregon, 97331, USA e-mails:","[OREGON STATE UNIVERSITY]"],"affiliations":[{"raw_affiliation_string":"School of EECS, Kelley Engineering Center 3047, Oregon State University, Corvallis, Oregon, 97331, USA e-mails:","institution_ids":["https://openalex.org/I131249849"]},{"raw_affiliation_string":"[OREGON STATE UNIVERSITY]","institution_ids":["https://openalex.org/I131249849"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5103886740","display_name":"Prashant Kumar","orcid":null},"institutions":[{"id":"https://openalex.org/I131249849","display_name":"Oregon State University","ror":"https://ror.org/00ysfqy60","country_code":"US","type":"education","lineage":["https://openalex.org/I131249849"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"PRASHANT KUMAR","raw_affiliation_strings":["School of EECS, Kelley Engineering Center 3047, Oregon State University, Corvallis, Oregon, 97331, USA e-mails:","[OREGON STATE UNIVERSITY]"],"affiliations":[{"raw_affiliation_string":"School of EECS, Kelley Engineering Center 3047, Oregon State University, Corvallis, Oregon, 97331, USA e-mails:","institution_ids":["https://openalex.org/I131249849"]},{"raw_affiliation_string":"[OREGON STATE UNIVERSITY]","institution_ids":["https://openalex.org/I131249849"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":["https://openalex.org/A5078733350"],"corresponding_institution_ids":["https://openalex.org/I131249849"],"apc_list":null,"apc_paid":null,"fwci":3.7484,"has_fulltext":false,"cited_by_count":9,"citation_normalized_percentile":{"value":0.9438408,"is_in_top_1_percent":false,"is_in_top_10_percent":true},"cited_by_percentile_year":{"min":89,"max":97},"biblio":{"volume":"31","issue":null,"first_page":null,"last_page":null},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T11986","display_name":"Scientific Computing and Data Management","score":0.9983000159263611,"subfield":{"id":"https://openalex.org/subfields/1802","display_name":"Information Systems and Management"},"field":{"id":"https://openalex.org/fields/18","display_name":"Decision Sciences"},"domain":{"id":"https://openalex.org/domains/2","display_name":"Social Sciences"}},"topics":[{"id":"https://openalex.org/T11986","display_name":"Scientific Computing and Data Management","score":0.9983000159263611,"subfield":{"id":"https://openalex.org/subfields/1802","display_name":"Information Systems and Management"},"field":{"id":"https://openalex.org/fields/18","display_name":"Decision Sciences"},"domain":{"id":"https://openalex.org/domains/2","display_name":"Social Sciences"}},{"id":"https://openalex.org/T10260","display_name":"Software Engineering Research","score":0.9957000017166138,"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/T12535","display_name":"Machine Learning and Data Classification","score":0.994700014591217,"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"}}],"keywords":[{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.8824838399887085},{"id":"https://openalex.org/keywords/correctness","display_name":"Correctness","score":0.8154879212379456},{"id":"https://openalex.org/keywords/haskell","display_name":"Haskell","score":0.7295664548873901},{"id":"https://openalex.org/keywords/representation","display_name":"Representation (politics)","score":0.6366094946861267},{"id":"https://openalex.org/keywords/dynamic-programming","display_name":"Dynamic programming","score":0.6084330081939697},{"id":"https://openalex.org/keywords/implementation","display_name":"Implementation","score":0.5866687893867493},{"id":"https://openalex.org/keywords/programming-language","display_name":"Programming language","score":0.5601776838302612},{"id":"https://openalex.org/keywords/class","display_name":"Class (philosophy)","score":0.527091383934021},{"id":"https://openalex.org/keywords/reactive-programming","display_name":"Reactive programming","score":0.4399052560329437},{"id":"https://openalex.org/keywords/inductive-programming","display_name":"Inductive programming","score":0.4154696464538574},{"id":"https://openalex.org/keywords/programming-paradigm","display_name":"Programming paradigm","score":0.41207030415534973},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.41098806262016296},{"id":"https://openalex.org/keywords/functional-programming","display_name":"Functional programming","score":0.2200683355331421},{"id":"https://openalex.org/keywords/algorithm","display_name":"Algorithm","score":0.2088150680065155},{"id":"https://openalex.org/keywords/artificial-intelligence","display_name":"Artificial intelligence","score":0.20415112376213074}],"concepts":[{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.8824838399887085},{"id":"https://openalex.org/C55439883","wikidata":"https://www.wikidata.org/wiki/Q360812","display_name":"Correctness","level":2,"score":0.8154879212379456},{"id":"https://openalex.org/C2780624054","wikidata":"https://www.wikidata.org/wiki/Q34010","display_name":"Haskell","level":3,"score":0.7295664548873901},{"id":"https://openalex.org/C2776359362","wikidata":"https://www.wikidata.org/wiki/Q2145286","display_name":"Representation (politics)","level":3,"score":0.6366094946861267},{"id":"https://openalex.org/C37404715","wikidata":"https://www.wikidata.org/wiki/Q380679","display_name":"Dynamic programming","level":2,"score":0.6084330081939697},{"id":"https://openalex.org/C26713055","wikidata":"https://www.wikidata.org/wiki/Q245962","display_name":"Implementation","level":2,"score":0.5866687893867493},{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.5601776838302612},{"id":"https://openalex.org/C2777212361","wikidata":"https://www.wikidata.org/wiki/Q5127848","display_name":"Class (philosophy)","level":2,"score":0.527091383934021},{"id":"https://openalex.org/C150762246","wikidata":"https://www.wikidata.org/wiki/Q4354073","display_name":"Reactive programming","level":4,"score":0.4399052560329437},{"id":"https://openalex.org/C50033165","wikidata":"https://www.wikidata.org/wiki/Q15712089","display_name":"Inductive programming","level":3,"score":0.4154696464538574},{"id":"https://openalex.org/C34165917","wikidata":"https://www.wikidata.org/wiki/Q188267","display_name":"Programming paradigm","level":2,"score":0.41207030415534973},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.41098806262016296},{"id":"https://openalex.org/C42383842","wikidata":"https://www.wikidata.org/wiki/Q193076","display_name":"Functional programming","level":2,"score":0.2200683355331421},{"id":"https://openalex.org/C11413529","wikidata":"https://www.wikidata.org/wiki/Q8366","display_name":"Algorithm","level":1,"score":0.2088150680065155},{"id":"https://openalex.org/C154945302","wikidata":"https://www.wikidata.org/wiki/Q11660","display_name":"Artificial intelligence","level":1,"score":0.20415112376213074},{"id":"https://openalex.org/C17744445","wikidata":"https://www.wikidata.org/wiki/Q36442","display_name":"Political science","level":0,"score":0.0},{"id":"https://openalex.org/C199539241","wikidata":"https://www.wikidata.org/wiki/Q7748","display_name":"Law","level":1,"score":0.0},{"id":"https://openalex.org/C94625758","wikidata":"https://www.wikidata.org/wiki/Q7163","display_name":"Politics","level":2,"score":0.0}],"mesh":[],"locations_count":1,"locations":[{"id":"doi:10.1017/s0956796821000083","is_oa":false,"landing_page_url":"https://doi.org/10.1017/s0956796821000083","pdf_url":null,"source":{"id":"https://openalex.org/S12266929","display_name":"Journal of Functional Programming","issn_l":"0956-7968","issn":["0956-7968","1469-7653"],"is_oa":false,"is_in_doaj":false,"is_core":true,"host_organization":"https://openalex.org/P4310311721","host_organization_name":"Cambridge University Press","host_organization_lineage":["https://openalex.org/P4310311721","https://openalex.org/P4310311702"],"host_organization_lineage_names":["Cambridge University Press","University of Cambridge"],"type":"journal"},"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Journal of Functional Programming","raw_type":"journal-article"}],"best_oa_location":null,"sustainable_development_goals":[{"score":0.49000000953674316,"id":"https://metadata.un.org/sdg/16","display_name":"Peace, Justice and strong institutions"}],"awards":[],"funders":[],"has_content":{"pdf":false,"grobid_xml":false},"content_urls":null,"referenced_works_count":44,"referenced_works":["https://openalex.org/W20689310","https://openalex.org/W189498254","https://openalex.org/W1534285741","https://openalex.org/W1605883805","https://openalex.org/W1798975336","https://openalex.org/W1965784613","https://openalex.org/W1970810328","https://openalex.org/W1998265754","https://openalex.org/W2002530879","https://openalex.org/W2002531683","https://openalex.org/W2038856365","https://openalex.org/W2052344580","https://openalex.org/W2058003313","https://openalex.org/W2060322444","https://openalex.org/W2067436653","https://openalex.org/W2068136274","https://openalex.org/W2076337359","https://openalex.org/W2096001571","https://openalex.org/W2101114811","https://openalex.org/W2112351052","https://openalex.org/W2121081915","https://openalex.org/W2121840944","https://openalex.org/W2125528794","https://openalex.org/W2136834093","https://openalex.org/W2143658255","https://openalex.org/W2154833931","https://openalex.org/W2157922094","https://openalex.org/W2162468176","https://openalex.org/W2167541073","https://openalex.org/W2227557434","https://openalex.org/W2293299776","https://openalex.org/W2336425598","https://openalex.org/W2341171179","https://openalex.org/W2619214761","https://openalex.org/W2911246871","https://openalex.org/W3022065957","https://openalex.org/W3022096899","https://openalex.org/W3112048907","https://openalex.org/W3150176278","https://openalex.org/W4213060883","https://openalex.org/W4231827019","https://openalex.org/W6669402789","https://openalex.org/W6679317074","https://openalex.org/W6758130239"],"related_works":["https://openalex.org/W2022585506","https://openalex.org/W3004782279","https://openalex.org/W4387445043","https://openalex.org/W4296878212","https://openalex.org/W1943224404","https://openalex.org/W2039406101","https://openalex.org/W2110317952","https://openalex.org/W1988273104","https://openalex.org/W4248653691","https://openalex.org/W2378928660"],"abstract_inverted_index":{"Abstract":[0],"In":[1],"this":[2],"paper,":[3],"we":[4,190],"present":[5],"a":[6,24,82,87,127],"method":[7],"for":[8,130],"explaining":[9],"the":[10,41,60,63,76,106,113,124,156,168],"results":[11,200],"produced":[12],"by":[13,75,145],"dynamic":[14,71,79,116,131,157],"programming":[15,72,80,117,132],"(DP)":[16],"algorithms.":[17],"Our":[18,68],"approach":[19,84],"is":[20,73,102],"based":[21,96],"on":[22,70,97],"retaining":[23],"granular":[25,42,107,183],"representation":[26,108,184],"of":[27,47,54,65,90,126],"values":[28],"that":[29,37,78,105,115,133,173,179],"are":[30,38,152],"aggregated":[31,98],"during":[32],"program":[33,66,199],"execution.":[34],"The":[35],"explanations":[36,206],"created":[39],"from":[40,148,171],"representations":[43],"can":[44,58,109,118,159,180],"answer":[45],"questions":[46,197],"why":[48],"one":[49],"result":[50,176],"was":[51],"obtained":[52],"instead":[53],"another":[55],"and":[56,185,201],"therefore":[57],"increase":[59],"confidence":[61],"in":[62,208],"correctness":[64],"results.":[67],"focus":[69],"motivated":[74],"fact":[77,114],"offers":[81],"systematic":[83],"to":[85,142,177,194,203],"implementing":[86],"large":[88],"class":[89],"optimization":[91],"algorithms":[92],"which":[93,149,166],"produce":[94,175,187,204],"decisions":[95,104],"value":[99],"comparisons.":[100],"It":[101],"those":[103],"help":[110],"explain.":[111],"Moreover,":[112],"be":[119,160],"formalized":[120],"using":[121],"semirings":[122],"supports":[123,167],"creation":[125],"Haskell":[128],"library":[129],"has":[134],"two":[135],"important":[136],"features.":[137],"First,":[138],"it":[139],"allows":[140],"programmers":[141],"specify":[143],"programs":[144,158,172,178],"recurrence":[146],"relationships":[147],"efficient":[150],"implementations":[151],"derived":[153],"automatically.":[154],"Second,":[155],"formulated":[161],"generically":[162],"(as":[163],"type":[164],"classes),":[165],"smooth":[169],"transition":[170],"only":[174],"run":[181],"with":[182],"also":[186,191],"explanations.":[188],"Finally,":[189],"demonstrate":[192],"how":[193,202],"anticipate":[195],"user":[196],"about":[198],"corresponding":[205],"automatically":[207],"advance.":[209]},"counts_by_year":[{"year":2025,"cited_by_count":1},{"year":2024,"cited_by_count":2},{"year":2023,"cited_by_count":3},{"year":2022,"cited_by_count":1},{"year":2021,"cited_by_count":2}],"updated_date":"2025-11-06T03:46:38.306776","created_date":"2025-10-10T00:00:00"}
