{"type":"ScholarlyArticle","title":"Semantic Representation of Data Science Programs","authors":[{"name":"Evan Patterson","slug":"evan-patterson","given":"Evan","family":"Patterson","affiliation":"Stanford University; IBM Research AI"},{"name":"Ioana Baldini","slug":"ioana-baldini","given":"Ioana","family":"Baldini","affiliation":"IBM Research AI"},{"name":"Aleksandra Mojsilović","slug":"aleksandra-mojsilovic","given":"Aleksandra","family":"Mojsilović","affiliation":"IBM Research AI"},{"name":"Kush R. Varshney","slug":"kush-r-varshney","given":"Kush R.","family":"Varshney","affiliation":"IBM Research AI"}],"abstract":"Your computer is continuously executing programs, but does it really understand them? Not in any meaningful sense. That burden falls upon human knowledge workers, who are increasingly asked to write and understand code. They would benefit greatly from intelligent tools that reveal the connections between their code and its subject matter. Towards this prospect, we present an AI system that forms semantic representations of computer programs, using techniques from knowledge representation and program analysis. These representations are created through a novel algorithm for the semantic enrichment of dataflow graphs. We illustrate its workings with examples from the field of data science. The algorithm is undergirded by a new ontology language for modeling computer programs and a new ontology about data science, written in this language.","doi":"10.24963/ijcai.2018/858","url":"https://ijcai.org/proceedings/2018/858","pdf":"https://ijcai.org/proceedings/2018/0858.pdf","markdown":"https://ijcai.org/proceedings/2018/858.md","bibtex":"https://ijcai.org/proceedings/2018/bibtex/858","volume":{"slug":"2018","title":"Proceedings of the Twenty-Seventh International Joint Conference on Artificial Intelligence","short_title":"IJCAI 2018","url":"https://ijcai.org/proceedings/2018/","year":2018,"location":"Stockholm","dates":"13-19 July 2018","editors":"Jérôme Lang","isbn":"978-0-9992411-2-7","publisher":"International Joint Conferences on Artificial Intelligence Organization","doi_prefix":"10.24963/ijcai.2018"},"section":"Demos","track":"Demos","number":858,"pages":{"first":5847,"last":5849},"keywords":["Multidisciplinary Topics and Applications: Knowledge-based Software Engineering","Machine Learning: Interpretability","Knowledge Representation, Reasoning, and Logic: Knowledge Representation Languages"],"videos":[],"references":[{"position":1,"raw":"[Crole, 1993] Roy L. Crole. Categories for Types. Cam- bridge University Press, 1993.","title":"Categories for Types","authors":"Roy L Crole","year":"1993","venue":null,"doi":null,"url":null,"internal_url":null},{"position":2,"raw":"[Devanbu et al., 1991] Prem Devanbu, Ron Brachman, Pe- ter G. Selfridge, and Bruce W. Ballard. LaSSIE: A knowledge-based software information system. Commu- nications of the ACM, 34(5):34-49, 1991.","title":"LaSSIE: A knowledge-based software information system","authors":"Prem Devanbu, Ron Brachman, Peter G Selfridge, Bruce W Ballard","year":"1991","venue":"Communications of the ACM","doi":null,"url":null,"internal_url":null},{"position":3,"raw":"[Harandi and Ning, 1990] Mehdi T. Harandi and Jim Q. Ning. Knowledge-based program analysis. IEEE Soft- ware, 7(1):74-81, 1990.","title":"Knowledge-based program analysis","authors":"T Mehdi, Jim Q Harandi, Ning","year":"1990","venue":"IEEE Software","doi":null,"url":null,"internal_url":null},{"position":4,"raw":"[Jacobs, 1999] Bart Jacobs. Categorical logic and type the- ory, volume 141 of Studies in Logic and the Foundations of Mathematics. Elsevier, 1999.","title":"Categorical logic and type theory","authors":"Bart Jacobs","year":"1999","venue":"Studies in Logic and the Foundations of Mathematics","doi":null,"url":null,"internal_url":null},{"position":5,"raw":"[Johnson and Soloway, 1985] W. Lewis Johnson and Elliot Soloway. PROUST: Knowledge-based program under- standing. IEEE Transactions on Software Engineering, (3):267-275, 1985.","title":"PROUST: Knowledge-based program understanding","authors":"W, Lewis Johnson, Elliot Soloway","year":"1985","venue":"IEEE Transactions on Software Engineering","doi":null,"url":null,"internal_url":null},{"position":6,"raw":"[Patterson et al., 2017] Evan Patterson, Robert McBurney, Holly Schmidt, Ioana Baldini, Aleksandra Mojsilović, and Kush R. Varshney. Dataflow representation of data anal- yses: Towards a platform for collaborative data science. IBM Journal of Research and Development, 61(6):9:1- 9:13, 2017.","title":"Dataflow representation of data analyses: Towards a platform for collaborative data science","authors":"Evan Patterson, Robert Mcburney, Holly Schmidt, Ioana Baldini, Aleksandra Mojsilović, Kush R Varshney","year":"2017","venue":"IBM Journal of Research and Development","doi":null,"url":null,"internal_url":null},{"position":7,"raw":"[Patterson, 2017] Evan Patterson. Knowledge representation in bicategories of relations. arXiv:1706.00526, 2017.","title":"Knowledge representation in bicategories of relations","authors":"Evan Patterson","year":"2017","venue":null,"doi":null,"url":null,"internal_url":null},{"position":8,"raw":"[Reynolds, 1980] John C. Reynolds. Using category theory to design implicit conversions and generic operators. In International Workshop on Semantics-Directed Compiler Generation, pages 211-258, 1980.","title":"Using category theory to design implicit conversions and generic operators","authors":"John C Reynolds","year":"1980","venue":"International Workshop on Semantics-Directed Compiler Generation","doi":null,"url":null,"internal_url":null},{"position":9,"raw":"[Selinger, 2010] Peter Selinger. A survey of graphical lan- guages for monoidal categories. In New Structures for Physics, pages 289-355. Springer, 2010.","title":"A survey of graphical languages for monoidal categories","authors":"Peter Selinger","year":"2010","venue":"New Structures for Physics","doi":null,"url":null,"internal_url":null},{"position":10,"raw":"[Spivak and Kent, 2012] David Spivak and Robert Kent. Ologs: a categorical framework for knowledge represen- tation. PLoS One, 7(1), 2012.","title":"Ologs: a categorical framework for knowledge representation","authors":"Kent ; Spivak, David Spivak, Robert Kent","year":"2012","venue":"PLoS One","doi":null,"url":null,"internal_url":null},{"position":11,"raw":"[Welty, 2007] Christopher A. Welty. Software engineering. In Franz Baader, Diego Calvanese, Deborah L. McGuin- ness, Daniele Nardi, and Peter F. Patel-Schneider, editors, The Description Logic Handbook: Theory, Implementa- tion and Applications, chapter 11, pages 402-416. Cam- bridge University Press, 2 edition, 2007.","title":"Software engineering","authors":"Christopher A Welty","year":"2007","venue":"The Description Logic Handbook: Theory, Implementation and Applications","doi":null,"url":null,"internal_url":null},{"position":12,"raw":"[Wills, 1992] Linda M. Wills. Automated program recog- nition by graph parsing. Technical report, MIT Artificial Intelligence Laboratory, 1992.","title":"Automated program recognition by graph parsing","authors":"Linda M Wills","year":"1992","venue":null,"doi":null,"url":null,"internal_url":null}],"license_note":"Copyright International Joint Conferences on Artificial Intelligence."}