Christopher Johannsen

About Me

I'm a Computer Science PhD candidate at Iowa State University in the Laboratory for Temporal Logic, advised by Kristin Yvonne Rozier. My work builds tools for delivering trust in high-assurance hardware and software systems: from design-time verification that catches bugs early to runtime monitoring that flags dangerous behavior during deployment. I hold an M.S. in Computer Science and a B.S. in Computer Engineering and Philosophy, both from Iowa State, and expect to complete my PhD in May 2027.

Research Interests

My research focuses on formal methods for high-assurance systems, spanning model checking and runtime verification of real-time, resource-constrained hardware and software platforms. I develop tools that make writing and debugging specifications easier, and algorithms that scale verification to large or infinite-state systems. These include a specification compiler used by NASA and Collins Aerospace, an intermediate language for symbolic model checking, and high-throughput monitors for temporal logic formulas. Looking ahead, I'm interested in adapting these techniques to security and privacy policies, hardware verification, and to verification artifacts, especially for Aerospace system certification (e.g., DO-333).

Teaching Interests

With a background spanning Computer Engineering and Computer Science, I'm interested in teaching a wide range of courses across the hardware-software spectrum, from introductory programming and discrete math to computer architecture and formal verification. I'm also interested in developing courses that survey formal techniques and hardware verification approaches through practical projects. I have lectured for two courses across six total semesters, one an introductory programming course for non-CS majors (AERE 361) and another a graduate-level formal methods course (AERE/COMS 407/507).