{"id":"https://openalex.org/W3109871389","doi":"https://doi.org/10.1145/3408877.3432537","title":"Discrete Math with Programming","display_name":"Discrete Math with Programming","publication_year":2021,"publication_date":"2021-03-03","ids":{"openalex":"https://openalex.org/W3109871389","doi":"https://doi.org/10.1145/3408877.3432537","mag":"3109871389"},"language":"en","primary_location":{"id":"doi:10.1145/3408877.3432537","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3408877.3432537","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 52nd ACM Technical Symposium on Computer Science Education","raw_type":"proceedings-article"},"type":"preprint","indexed_in":["arxiv","crossref"],"open_access":{"is_oa":true,"oa_status":"green","oa_url":"https://arxiv.org/pdf/2011.14059","any_repository_has_fulltext":true},"authorships":[{"author_position":"first","author":{"id":"https://openalex.org/A5068274526","display_name":"Yanhong A. Liu","orcid":"https://orcid.org/0000-0002-5742-6489"},"institutions":[{"id":"https://openalex.org/I59553526","display_name":"Stony Brook University","ror":"https://ror.org/05qghxh33","country_code":"US","type":"education","lineage":["https://openalex.org/I59553526"]}],"countries":["US"],"is_corresponding":true,"raw_author_name":"Yanhong A. Liu","raw_affiliation_strings":["Stony Brook University, Stony Brook, NY, USA"],"affiliations":[{"raw_affiliation_string":"Stony Brook University, Stony Brook, NY, USA","institution_ids":["https://openalex.org/I59553526"]}]},{"author_position":"last","author":{"id":"https://openalex.org/A5035785948","display_name":"Matthew S. Castellana","orcid":"https://orcid.org/0009-0005-0807-3487"},"institutions":[{"id":"https://openalex.org/I59553526","display_name":"Stony Brook University","ror":"https://ror.org/05qghxh33","country_code":"US","type":"education","lineage":["https://openalex.org/I59553526"]}],"countries":["US"],"is_corresponding":false,"raw_author_name":"Matthew Castellana","raw_affiliation_strings":["Stony Brook University, Stony Brook, NY, USA"],"affiliations":[{"raw_affiliation_string":"Stony Brook University, Stony Brook, NY, USA","institution_ids":["https://openalex.org/I59553526"]}]}],"institutions":[],"countries_distinct_count":1,"institutions_distinct_count":2,"corresponding_author_ids":["https://openalex.org/A5068274526"],"corresponding_institution_ids":["https://openalex.org/I59553526"],"apc_list":null,"apc_paid":null,"fwci":0.28,"has_fulltext":false,"cited_by_count":5,"citation_normalized_percentile":{"value":0.61121988,"is_in_top_1_percent":false,"is_in_top_10_percent":false},"cited_by_percentile_year":{"min":90,"max":98},"biblio":{"volume":null,"issue":null,"first_page":"1156","last_page":"1162"},"is_retracted":false,"is_paratext":false,"is_xpac":false,"primary_topic":{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.9972000122070312,"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"}},"topics":[{"id":"https://openalex.org/T10126","display_name":"Logic, programming, and type systems","score":0.9972000122070312,"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"}},{"id":"https://openalex.org/T10054","display_name":"Parallel Computing and Optimization Techniques","score":0.994700014591217,"subfield":{"id":"https://openalex.org/subfields/1708","display_name":"Hardware and Architecture"},"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/T12002","display_name":"Computability, Logic, AI Algorithms","score":0.9911999702453613,"subfield":{"id":"https://openalex.org/subfields/1703","display_name":"Computational Theory and Mathematics"},"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/programming-language","display_name":"Programming language","score":0.7403302192687988},{"id":"https://openalex.org/keywords/computer-science","display_name":"Computer science","score":0.6882947087287903},{"id":"https://openalex.org/keywords/answer-set-programming","display_name":"Answer set programming","score":0.6118660569190979},{"id":"https://openalex.org/keywords/executable","display_name":"Executable","score":0.5961518883705139},{"id":"https://openalex.org/keywords/python","display_name":"Python (programming language)","score":0.5774092674255371},{"id":"https://openalex.org/keywords/declarative-programming","display_name":"Declarative programming","score":0.5737248063087463},{"id":"https://openalex.org/keywords/logic-programming","display_name":"Logic programming","score":0.5529888272285461},{"id":"https://openalex.org/keywords/fifth-generation-programming-language","display_name":"Fifth-generation programming language","score":0.4923347234725952},{"id":"https://openalex.org/keywords/functional-logic-programming","display_name":"Functional logic programming","score":0.4687616527080536},{"id":"https://openalex.org/keywords/compiler","display_name":"Compiler","score":0.46771565079689026},{"id":"https://openalex.org/keywords/procedural-programming","display_name":"Procedural programming","score":0.44586315751075745},{"id":"https://openalex.org/keywords/notation","display_name":"Notation","score":0.4444361925125122},{"id":"https://openalex.org/keywords/inductive-programming","display_name":"Inductive programming","score":0.44273343682289124},{"id":"https://openalex.org/keywords/programming-paradigm","display_name":"Programming paradigm","score":0.4174405336380005},{"id":"https://openalex.org/keywords/theoretical-computer-science","display_name":"Theoretical computer science","score":0.39135825634002686},{"id":"https://openalex.org/keywords/mathematics","display_name":"Mathematics","score":0.22903013229370117}],"concepts":[{"id":"https://openalex.org/C199360897","wikidata":"https://www.wikidata.org/wiki/Q9143","display_name":"Programming language","level":1,"score":0.7403302192687988},{"id":"https://openalex.org/C41008148","wikidata":"https://www.wikidata.org/wiki/Q21198","display_name":"Computer science","level":0,"score":0.6882947087287903},{"id":"https://openalex.org/C182620335","wikidata":"https://www.wikidata.org/wiki/Q2852531","display_name":"Answer set programming","level":3,"score":0.6118660569190979},{"id":"https://openalex.org/C160145156","wikidata":"https://www.wikidata.org/wiki/Q778586","display_name":"Executable","level":2,"score":0.5961518883705139},{"id":"https://openalex.org/C519991488","wikidata":"https://www.wikidata.org/wiki/Q28865","display_name":"Python (programming language)","level":2,"score":0.5774092674255371},{"id":"https://openalex.org/C146206909","wikidata":"https://www.wikidata.org/wiki/Q531152","display_name":"Declarative programming","level":4,"score":0.5737248063087463},{"id":"https://openalex.org/C128838566","wikidata":"https://www.wikidata.org/wiki/Q275603","display_name":"Logic programming","level":2,"score":0.5529888272285461},{"id":"https://openalex.org/C199305712","wikidata":"https://www.wikidata.org/wiki/Q3205914","display_name":"Fifth-generation programming language","level":3,"score":0.4923347234725952},{"id":"https://openalex.org/C96315309","wikidata":"https://www.wikidata.org/wiki/Q5508829","display_name":"Functional logic programming","level":4,"score":0.4687616527080536},{"id":"https://openalex.org/C169590947","wikidata":"https://www.wikidata.org/wiki/Q47506","display_name":"Compiler","level":2,"score":0.46771565079689026},{"id":"https://openalex.org/C120558287","wikidata":"https://www.wikidata.org/wiki/Q1418502","display_name":"Procedural programming","level":4,"score":0.44586315751075745},{"id":"https://openalex.org/C45357846","wikidata":"https://www.wikidata.org/wiki/Q2001982","display_name":"Notation","level":2,"score":0.4444361925125122},{"id":"https://openalex.org/C50033165","wikidata":"https://www.wikidata.org/wiki/Q15712089","display_name":"Inductive programming","level":3,"score":0.44273343682289124},{"id":"https://openalex.org/C34165917","wikidata":"https://www.wikidata.org/wiki/Q188267","display_name":"Programming paradigm","level":2,"score":0.4174405336380005},{"id":"https://openalex.org/C80444323","wikidata":"https://www.wikidata.org/wiki/Q2878974","display_name":"Theoretical computer science","level":1,"score":0.39135825634002686},{"id":"https://openalex.org/C33923547","wikidata":"https://www.wikidata.org/wiki/Q395","display_name":"Mathematics","level":0,"score":0.22903013229370117},{"id":"https://openalex.org/C94375191","wikidata":"https://www.wikidata.org/wiki/Q11205","display_name":"Arithmetic","level":1,"score":0.0}],"mesh":[],"locations_count":2,"locations":[{"id":"doi:10.1145/3408877.3432537","is_oa":false,"landing_page_url":"https://doi.org/10.1145/3408877.3432537","pdf_url":null,"source":null,"license":null,"license_id":null,"version":"publishedVersion","is_accepted":true,"is_published":true,"raw_source_name":"Proceedings of the 52nd ACM Technical Symposium on Computer Science Education","raw_type":"proceedings-article"},{"id":"pmh:oai:arXiv.org:2011.14059","is_oa":true,"landing_page_url":"http://arxiv.org/abs/2011.14059","pdf_url":"https://arxiv.org/pdf/2011.14059","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"}],"best_oa_location":{"id":"pmh:oai:arXiv.org:2011.14059","is_oa":true,"landing_page_url":"http://arxiv.org/abs/2011.14059","pdf_url":"https://arxiv.org/pdf/2011.14059","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":[{"display_name":"Quality Education","score":0.7200000286102295,"id":"https://metadata.un.org/sdg/4"}],"awards":[{"id":"https://openalex.org/G449814294","display_name":null,"funder_award_id":"CCF-1414078 and CCF-1954837","funder_id":"https://openalex.org/F4320306076","funder_display_name":"National Science Foundation"},{"id":"https://openalex.org/G5390949000","display_name":null,"funder_award_id":"N00014-20-1-2751","funder_id":"https://openalex.org/F4320337345","funder_display_name":"Office of Naval Research"}],"funders":[{"id":"https://openalex.org/F4320306076","display_name":"National Science Foundation","ror":"https://ror.org/021nxhr62"},{"id":"https://openalex.org/F4320337345","display_name":"Office of Naval Research","ror":"https://ror.org/00rk2pe57"}],"has_content":{"grobid_xml":false,"pdf":false},"content_urls":null,"referenced_works_count":29,"referenced_works":["https://openalex.org/W560306688","https://openalex.org/W1796185062","https://openalex.org/W1982072940","https://openalex.org/W2007748792","https://openalex.org/W2012413264","https://openalex.org/W2018021851","https://openalex.org/W2023869796","https://openalex.org/W2037444165","https://openalex.org/W2045604116","https://openalex.org/W2047359244","https://openalex.org/W2081857589","https://openalex.org/W2089171884","https://openalex.org/W2096274181","https://openalex.org/W2112104352","https://openalex.org/W2152100158","https://openalex.org/W2400908863","https://openalex.org/W2493828149","https://openalex.org/W2557712839","https://openalex.org/W2616752252","https://openalex.org/W2617632007","https://openalex.org/W2950923141","https://openalex.org/W2990164118","https://openalex.org/W2997003412","https://openalex.org/W3009842985","https://openalex.org/W3010437763","https://openalex.org/W3213211343","https://openalex.org/W4213049518","https://openalex.org/W4255468738","https://openalex.org/W4298046864"],"related_works":["https://openalex.org/W4239436350","https://openalex.org/W2161156675","https://openalex.org/W307044906","https://openalex.org/W4297858271","https://openalex.org/W1505955281","https://openalex.org/W4252624629","https://openalex.org/W2089642402","https://openalex.org/W4248411942","https://openalex.org/W4287829362","https://openalex.org/W2408139262"],"abstract_inverted_index":{"Discrete":[0],"mathematics":[1],"is":[2,29,50,81],"the":[3,84,92,150,159],"foundation":[4],"of":[5,59,86],"computer":[6],"science.":[7],"It":[8,21,80],"focuses":[9],"on":[10,83,138],"concepts":[11,36,58],"and":[12,37,40,66,102,116,120,123,134,158],"reasoning":[13],"methods":[14,39],"that":[15,26,54,64,90],"are":[16],"studied":[17],"using":[18,156],"math":[19,28,69],"notations.":[20],"has":[22,47],"long":[23],"been":[24,48],"argued":[25],"discrete":[27,60],"better":[30],"taught":[31],"with":[32,71,96,145],"programming,":[33],"which":[34],"takes":[35],"computing":[38],"turns":[41],"them":[42],"into":[43],"executable":[44,72],"programs.":[45,73],"What":[46],"lacking":[49],"a":[51,87,131,139],"principled":[52],"approach":[53],"supports":[55],"all":[56],"central":[57],"math---especially":[61],"predicate":[62],"logic---and":[63],"directly":[65,137],"precisely":[67,129],"connects":[68],"notations":[70],"This":[74],"paper":[75],"introduces":[76],"such":[77],"an":[78],"approach.":[79],"based":[82],"use":[85],"powerful":[88],"language":[89,95],"extends":[91],"Python":[93],"programming":[94,143],"proper":[97],"logic":[98],"quantification":[99],"(\"for":[100],"all''":[101],"\"exists":[103],"some''),":[104],"as":[105,107,113],"well":[106],"declarative":[108,142],"set":[109,114],"comprehension":[110],"(also":[111],"known":[112],"builder)":[115],"aggregation":[117],"(e.g.,":[118],"sum":[119],"product).":[121],"Math":[122],"logical":[124],"statements":[125],"can":[126],"be":[127,135],"expressed":[128],"at":[130],"high":[132],"level":[133],"executed":[136],"computer,":[140],"encouraging":[141],"together":[144],"algorithmic":[146],"programming.":[147],"We":[148],"describe":[149],"approach,":[151],"detailed":[152],"examples,":[153],"experience":[154],"in":[155],"it,":[157],"lessons":[160],"learned.":[161]},"counts_by_year":[{"year":2026,"cited_by_count":1},{"year":2025,"cited_by_count":2},{"year":2024,"cited_by_count":1},{"year":2023,"cited_by_count":1}],"updated_date":"2026-04-16T08:26:57.006410","created_date":"2020-12-07T00:00:00"}
