3 ms·
> What is it that makes you think formal methods will become more popular? I have an MSc where I focused in formal methods and I worked pretty extensively with
by nextos 7y ago
> What is it that makes you think formal methods will become more popular?
I have an MSc where I focused in formal methods and I worked pretty extensively with them both in academia and industry before moving to machine learning, getting another MSc and a PhD.
There are many formal methods industrial users, especially those dealing with hardware and safety critical systems. For them, the cost / benefit ratio of using formal methods makes a lot of sense.
My hope is that lightweight approaches become more polished and it becomes feasible to use them in more mainstream applications. There is a whole range of methods going from type and effect systems, model checking, data and control flow analysis all the way to abstract interpretation and theorem proving. For example, refinement types as implemented in Liquid Haskell are a nice promising area.
I also think there are potentially very interesting combinations of deep learning and probabilistic inference plus formal methods that might push both AI and software engineering further. For example, an intelligent agent that is trying to infer (synthesize or induce) a program that models some function [1] might be able to carry a much better search by using abstract interpretation.
[1] https://www.sas.upenn.edu/~astocker/lab/teaching-files/PSYC739-2016/Lake_etal2015.pdf https://www.sas.upenn.edu/~astocker/lab/teaching-files/PSYC7...
- zozbot234 7y ago> There is a whole range of methods going from type and effect systems, model checking, data and control flow analysis all the way to abstract interpretation and theorem proving. I've seen some informal claims that many of these methods/approaches can be rephrased as special cases of abstract interpretation. This suggests that people who just focus on the multitude of "methods" out there might be missing something important about the "big picture" in the field.
- cwzwarich 7y agoAll of them can be rephrased as special cases of abstract interpretation, but that observation doesn't really help you develop them or implement them efficiently.