University of Colorado Boulder
- I am an assistant professor in the ECEE department at CU Boulder.
- My research areas are computer-aided verification and programming languages, recently with applications in networking, artificial intelligence, and software engineering. My focus is on program synthesis.
- I work with a great group of PhD students. We are members of CUPLV. I am looking for postdocs and PhD students who are enthusiastic about verification and programming languages.
- I teach undergraduate courses on (concurrent) programming and graduate courses on computer-aided verification and program synthesis.
Recent publications (complete list, DBLP, Google Scholar)
- Jedidiah McClurg (PhD, since 2013)
- Tianhan Lu (PhD, co-advised with Evan Chang, since 2015)
- Saeid Tizpaz Niari (PhD, since 2015)
- Nick Lewchenko (PhD, since 2016)
- Nilesh Jagnik. MS, Spring 2016. First employment: Google.
- Parker Evans. (Undergraduate) Discovery Learning Apprenticeship, 2013-14.
- Prabhash Krishnan (2015-16), Aniket Lata (2015-16), Krishna Sripada (2015-16), Vaibhav Singh (2014-15). Graduate Independent Study.
- Andrew Dudney (Fall 2016). Undergraduate Independent Study.
- Jedidiah McClurg. Computer Science Departmental Outstanding Research Award. 2017.
- Saeid Tizpaz Niari. Second prize, Microsoft Research Open Source Challenge. 2016.
We are looking for enthusiastic PhD students and postdocs to join CUPLV. Please send me an email if you are interested in research on program verification and program synthesis.
Courses at CU Boulder
- ECEN 1310: Programming for Engineers. Spring 2018.
- ECEN 5139, CSCI 5135: Computer-Aided Verification. Fall 2017.
- ECEN 4313, CSCI 4830: Concurrent Programming. Spring 2017.
- ECEN 5033, CSCI 7000-005: Program Synthesis. Fall 2016.
- ECEN 4003, CSCI 4830: Concurrent Programming. Spring 2016.
- ECEN 5033, CSCI 7000-005: Program Synthesis. Fall 2015.
- ECEN 4003, CSCI 4830: Concurrent Programming. Spring 2015.
- ECEN 5139, CSCI 5135: Computer-Aided Verification. Fall 2014.
- ECEN 5033, CSCI 7000-007: Concurrent Programming. Spring 2014.
- ECEN 5139, CSCI 5135: Computer-Aided Verification. Fall 2013.
- ECEN 5033, CSCI 7000-007: Program Synthesis. Spring 2013.
- Programming Paradigms for Concurrency. Co-instructor, Fall 2010, IST Austria and TU Wien.
- CIS 399: C++ programming. Instructor, Spring 2009, University of Pennsylvania.
- CSE 399: C/C++ programming. Co-instructor, Spring 2006, University of Pennsylvania.
- CIS 511: Theory of Computation. TA, Spring 2005, University of Pennsylvania.
- CSE 482: Logic in Computer Science. TA, Fall 2004, University of Pennsylvania.
- CAV 2018, PC member
- POPL 2018, PC member
- CAV 2016, PC member
- EC2 2016, workshop PC chair
- TACAS 2016, PC member
- POPL 2016, ERC member
- GandALF 2015, PC member
- SYNT 2015, workshop PC chair
- EC2 2015, PC member
- PLVNET 2015, workshop PC chair
- CAV 2014, PC member
- EMSOFT 2014, PC member
- SYNT 2014, workshop PC member
- MEMICS 2011, workshop PC member
- DARPA STAC program, PI. 2015-2019.
- NSF award on Practical Synthesis of Network Updates, PI. 2014-2018.
- NSF award on Travel and Registration Support for Computer Aided Verification 2016, PI.
Supported student participation at CAV 2016.
- DARPA MUSE program, co-PI. 2014-2018.
- Gift from the Intel Corporation for Automated Synthesis of High-Assurance Device Drivers, PI. 2013-2016.