Proceedings of ISP RAS

Searching for missing library function calls using machine learning

Yakimov I.A. (IKIT SFU, Krasnoyarsk, Russia)
Kuznetsov A.S. (IKIT SFU, Krasnoyarsk, Russia)


Software development is a complex and error-prone process. In order to reduce the complexity of software development, third-party libraries are being created. Examples of source codes for popular libraries are available in the literature and online resources. In this paper, we present a hypothesis that most of these examples contain repetitive patterns. Moreover, these patterns can be used to construct models capable of predicting the presence (or absence) of missing calls of certain library functions using machine learning. To confirm this hypothesis, a system was implemented that implements the described functional. Experimental studies confirm the hypothesis. The accuracy of the results reaches 80% with a top-4 accuracy. It can be concluded that this system, with further development, can find industrial application.


OpenGL; software quality; recommender systems; machine learning; neural networks


Proceedings of the Institute for System Programming, vol. 29, issue 6, 2017, pp. 117-134.

ISSN 2220-6426 (Online), ISSN 2079-8156 (Print).

DOI: 10.15514/ISPRAS-2017-29(6)-6

Full text of the paper in pdf (in Russian) Back to the contents of the volume