Debugging with intelligence via probabilistic inference
Debugging with intelligence via probabilistic inference Xu et al., ICSE’18
Xu et al. have built a automated debugger that can take a single failing test execution, and with minimal interaction from a human, pinpoint the root cause of the failure. What I find really exciting about it, is that instead of brute force there’s a certain encoded intelligence in the way the analysis is undertaken which feels very natural. The first IDE / editor to integrate a tool like this wins!
The authors don’t give a name to their tool in the paper, which is going to make it awkward to refer to during this write-up. So I shall henceforth refer to it as the PI Debugger. PI here stands for probabilistic inference.
We model debugging as a probabilistic inference problem, in which the likelihood of each executed statement instance and variable being correct/faulty is modeled by a random variable. Human knowledge, human-like reasoning rules and program semantics are modeled as conditional probability distributions, also called probabilistic constraints. Solving these constraints identifies the most likely faulty statements.
In the evaluation, when debugging problems in large projects, it took on average just 3 interactions with a developer to find the Continue reading
Acquisition rumors are nothing new for Docker, which said it has attracted more than 1 million new developers and hosted more than 1 million new applications in its Docker Hub over the past year.
By creating a separate core network, Sprint can dynamically add capacity and computing power as it is needed.
This is squeezing the growth opportunity for traditional vendors such as Dell EMC, Cisco, and HPE.
CEO Ron Nash expects his company to be profitable by next year, which could set the stage for an IPO if Pivot3 isn’t gobbled up first.