Teaching
CSC 890: Quantum Computing (Spring 2023)
Introduction to quantum computing and quantum information science. Topics include quantum circuit model of computation, quantum algorithms, and quantum protocols.
CSC 890: Advanced Artificial Intelligence (Fall 2022)
Introduction to probabilistic machine learning. Special topics include applications of probabilistic models to modeling atomistic systems.
CSC 825: Formal Models and Semantics (Spring 2022)
Introduction to the Coq Proof Assistant to write mechanically-checkable proofs. Models of computation covered include finite automata, Turing machines, and lambda calculus. Topics include small-step semantics, big-step semantics, axiomatic-semantics, type-systems, type-inference, and logical-relations.
CSC 600: Programming Languages and Paradigms [course]
Introduction to functional programming with TypeScript. Advanced topics include domain-specific languages, concurrency, and laziness. Exposure to interpreters and compilers.