4 ms·
In this case the situation is different. AI researchers didn't succeed at program analysis; they gave up. @fiatmoney is right: it's no longer considered an AI
by ScottBurson 12y ago
In this case the situation is different. AI researchers didn't succeed at program analysis; they gave up. @fiatmoney is right: it's no longer considered an AI problem. But computer scientists haven't solved it either, because they keep bumping their heads against the computability ceiling. It's very clear to me that AI is actually required for general, accurate program analysis.
- munin 12y agowhy? we get general and accurate program analysis all the time using just unification and simple inference rules...
- ScottBurson 12y agoNo, you don't. You may be able to infer some properties of some programs, but you can't take an arbitrary program of real-world size and answer an arbitrary question of a kind that a human maintainer of that program would want to know; for example, under what circumstances, if any, it ever performs an invalid operation -- such as an array bounds violation, throwing a runtime exception, whatever is considered invalid in whatever language it's written in. That's what I mean by "general and accurate".
- munin 12y agoyes you can, in many dimensions. one of those we call "type checking". other examples are the myriad examples of using model checking and symbolic execution to identify errors in programs automatically. can you identify all errors? no, but that has nothing to do with weak or strong AI. but you can definitely learn general properties about general programs using today's technology.
- ScottBurson 12y agoI'm certainly not saying that static analysis is useless; that would be an odd statement considering it's the field that pays my salary! But there's still a very big gap between what we can do and what we want to do. None of the extant static analyzers found the Heartbleed bug, for example. What I'm saying is that to close that gap will require AI. I don't think it's just a matter of better algorithms.