Hooray! We just got word that "Verified Causal Broadcast with Liquid Haskell" (https://arxiv.org/abs/2206.14767), led by my student @redmp, was accepted at IFL '22. (The date is in the past because IFL has a post-conference review process. They're weird like that!)
Short thread about this paper 👇
By "with human assistance", I mean that although Liquid Haskell automates some stuff for you, we (and by "we", I mean @redmp) also had to do a lot of proving by hand to carry out this project. Liquid Haskell is quite possibly the world's weirdest proof assistant, but, amazingly, it actually *is* a proof assistant, which makes this kind of thing possible.
Also, this project is just the first step in what I intend to be a multi-year research agenda that applies refinement types to distributed systems, as described here: https://decomposition.al/blog/2022/01/31/career-building-reliable-distributed-systems-with-refinement-types/
By the way, I'm not in a big rush to hire, but I am casually looking for another Ph.D. student who's specifically interested in working on this (refinement types + distributed systems). If that could be you, let's talk!
@lindsey had a workshop paper “Proof-Carrying Smart Contracts” with @maurice and @vsaraph (+2 more coauthors not on Mastodon as far as I know) that we didn’t end up resubmitting for a full conference because the reviewers wanted a proof of concept implementation and none of us had time to do it, but my idea was to do the POC implementation as higher-order functions in LiquidHaskell.
@lindsey thanks! :)
@elfprince13 OK, just sent an email introducing you (to thomas@geopi.pe; hope that's correct) to the student! I'll let you decide if you want to loop co-authors or whoever in :)