Hacker News new | past | comments | ask | show | jobs | submit login

cmrx64 addressed the validation well. I'll add that there's formal specification tools for requirements (the What) such as Software Cost Reduction and Abstract, State Machines that have helped there. The trick on those is they help be precise about the environment, inputs, and outputs in a way human reviewers can understand. So, the reviewers think on and discuss stuff with their thoughts shared to others in English and the formalism to spot the problems or even improvement opportunities. The main gotcha there is ensuring English and formal specs don't diverge.

Far as verified stacks, the throwaway linked the basic concept but here's two works (old and new) on verified provers so you can see it in action:

https://www.cs.princeton.edu/~appel/papers/flit.pdf

https://www.cs.utexas.edu/users/jared/milawa/Web/

The former was early work by Appel et al on getting the TCB of provers down to a few thousand lines of code. The other uses composable logics and small implementation that itself uses the verified tooling of Myreen et al whose research covers a lot of angles:

https://www.cl.cam.ac.uk/~mom22/research.html

Most of their work is done in Isabelle/HOL which HOL/Light is aiming to verify in a lightweight way. The idea being you just have to trust the code of the kernel (hundreds to thousands of lines) that checks proof terms and the specs that are fed into them. They're doing everything they can in the proof assistants so the minimal checkers will be able to confirm the operations.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: