Learning to Align the Source Code to the Compiled Object Code

Dor Levy, Lior Wolf
Proceedings of the 34th International Conference on Machine Learning, PMLR 70:2043-2051, 2017.

Abstract

We propose a new neural network architecture and use it for the task of statement-by-statement alignment of source code and its compiled object code. Our architecture learns the alignment between the two sequences – one being the translation of the other – by mapping each statement to a context-dependent representation vector and aligning such vectors using a grid of the two sequence domains. Our experiments include short C functions, both artificial and human-written, and show that our neural network architecture is able to predict the alignment with high accuracy, outperforming known baselines. We also demonstrate that our model is general and can learn to solve graph problems such as the Traveling Salesman Problem.

Cite this Paper


BibTeX
@InProceedings{pmlr-v70-levy17a, title = {Learning to Align the Source Code to the Compiled Object Code}, author = {Dor Levy and Lior Wolf}, booktitle = {Proceedings of the 34th International Conference on Machine Learning}, pages = {2043--2051}, year = {2017}, editor = {Precup, Doina and Teh, Yee Whye}, volume = {70}, series = {Proceedings of Machine Learning Research}, month = {06--11 Aug}, publisher = {PMLR}, pdf = {http://proceedings.mlr.press/v70/levy17a/levy17a.pdf}, url = {https://proceedings.mlr.press/v70/levy17a.html}, abstract = {We propose a new neural network architecture and use it for the task of statement-by-statement alignment of source code and its compiled object code. Our architecture learns the alignment between the two sequences – one being the translation of the other – by mapping each statement to a context-dependent representation vector and aligning such vectors using a grid of the two sequence domains. Our experiments include short C functions, both artificial and human-written, and show that our neural network architecture is able to predict the alignment with high accuracy, outperforming known baselines. We also demonstrate that our model is general and can learn to solve graph problems such as the Traveling Salesman Problem.} }
Endnote
%0 Conference Paper %T Learning to Align the Source Code to the Compiled Object Code %A Dor Levy %A Lior Wolf %B Proceedings of the 34th International Conference on Machine Learning %C Proceedings of Machine Learning Research %D 2017 %E Doina Precup %E Yee Whye Teh %F pmlr-v70-levy17a %I PMLR %P 2043--2051 %U https://proceedings.mlr.press/v70/levy17a.html %V 70 %X We propose a new neural network architecture and use it for the task of statement-by-statement alignment of source code and its compiled object code. Our architecture learns the alignment between the two sequences – one being the translation of the other – by mapping each statement to a context-dependent representation vector and aligning such vectors using a grid of the two sequence domains. Our experiments include short C functions, both artificial and human-written, and show that our neural network architecture is able to predict the alignment with high accuracy, outperforming known baselines. We also demonstrate that our model is general and can learn to solve graph problems such as the Traveling Salesman Problem.
APA
Levy, D. & Wolf, L.. (2017). Learning to Align the Source Code to the Compiled Object Code. Proceedings of the 34th International Conference on Machine Learning, in Proceedings of Machine Learning Research 70:2043-2051 Available from https://proceedings.mlr.press/v70/levy17a.html.

Related Material