I'm a member of the madPL group and I am looking for talented students/postdocs to work on the following projects. Email your CV if interested.
My research is about developing cool formal method techniques to solve
cool programming languages problems.
Lay the foundations of program synthesis. Can we predict when and understand why synthesis works? Can we solve synthesis problems with quantitative objectives? What is the relation between synthesis and machine learning? Read more here.
Use probabilistic program verification to check whether decision-making programs are biased (e.g., discriminate against protected groups) and use synthesis to automaticlly repair biased program to remove bias from them. Take a look at FairSquare and Digits.
Allow network operators to verify, design, and repair network configurations by providing high-level intents (i.e., desirable network policies) instead of low-level configurations that are hard to program. Take a look at Genesis and Zeppelin.
Design new automaton and transducer models that leverage the power of decidable Boolean theories (e.g., SMT solvers) to reason about strings and tress over complex and infinite alphabets (e.g., UTF16 and integers). Read more here.