Assistant Professor of Computer Science
I am an assistant professor in the Computer Science (CSC) Department at NC State, where I direct the Principles of Expressive Machines (POEM) Lab. My interests span programming languages, automated reasoning (logic/symbolic AI), and computational media (digital games and interactive storytelling).
See my publications.
I am broadly interested in using formal reasoning tools to interface with (amplify, analyze, or augment) human cognition, including social reasoning, creativity, and communication. Like poems (the namesake of my lab), my projects generally explore the relationship between syntax and semantics, between formal structure and expressive affordances. Examples include generating stories and conversations with linear logic; using dynamic epistemic logic to give a theory of mind to agents that can play communicative, social games; using constraint solving and static analysis to generate games that communicate specific ideas through interactive processes; examining interfaces to virtual worlds through the lens of programming languages; generating puzzle game levels that facilitate robust mental models; and developing authoring tools for autonomous virtual characters that assist with sound reasoning about emergent behavior. My mission is to enable more diverse creators (programmers, storytellers, artists, etc.) to achieve their most ambitious expressive and creative goals.
For more information on current projects and opportunities for students, see the POEM Lab webpage.
Please read this before you email me.
Fall 2019: CSC 503 (masters/PhD) - Computational Applied Logic
Spring 2019: CSC 582 (masters/PhD) - Computational Models of Narrative
Spring 2017, 2018: CSC 281 (undergraduate) - Foundations of Interactive Game Design
Fall 2016, 2017, 2018: CSC 791 (masters/PhD) - Generative Methods for Game Design
Outside of NC State, you may also be interested in the research of Anne-Gwenn Bosser, who led the charge on applying linear logic to interactive storytelling.