My research fits in the broad areas of programming languages and verification, with an eye on applications in probabilistic programming and blockchain systems. I often use tools from game theory, probability theory, real algebraic geometry and parameterized complexity to tackle diverse problems ranging from data-flow analysis and optimal cache management, to finding termination proofs or resource-usage bounds for probabilistic programs, to quantitatively verifying the security of smart contracts.

This webpage is not updated regularly. See my dblp profile for the most up-to-date list of publications.


  • Verification
  • Programming Languages
  • Static Analysis
  • Probabilistic Programs
  • Parameterized Algorithms
  • Blockchain
  • Smart Contracts


  • PhD in Computer Science

    IST Austria

  • MSc in Computer Science (Systems)

    Georgia Institute of Technology

  • Graduate Diploma in Mathematics

    University of London

  • BSc in Mathematics and Computer Science

    Yazd University