Homepage
I am a sixth year PhD candidate in The Ohio State University’s Computer Science and Engineering department. I like to call my research interests gradual formal methods: Observe real software in situ to construct a principled model to drive decision-making. I’ve applied this technique to autonomous vehicle firmware, and more recently to deep learning frameworks. My advisors are Drs. Feng Qin and Christopher Stewart.
Recent Blog Posts
Using F* to Formally Verify Programs
Published:
Formal methods are currently not widely embraced due to their perceived difficulty. However, the landscape is changing with the emergence of new technologies that make formal methods more accessible than ever before. F*, developed by Microsoft Research, is a groundbreaking functional language that combines dependent types and proof-oriented features. By bridging the gap between programming and proving, F* facilitates a gradual adoption of formal methods by software engineers. In this post, I will provide an introduction to the basics of F* and demonstrate how we can leverage its capabilities to verify a solution to a LeetCode problem. I can’t cover all the background material needed to understand F* in this post. I assume that you have some experience in a language like Haskell or OCaml.
A LISP REPL Inside ChatGPT
Published:
TL;DR: ChatGPT is a LISP REPL.
Programming Puzzle: Optimal Pothole Repair
Published:
This post discusses how to efficiently schedule optimal pothole repair!