Learning a program's behaviour without looking at its code using active learning
This article explains a machine learning method that makes it possible to reproduce in finite time the complete behaviour of any program that behaves like a black box, without ever having access to its code.