Learning to Align the Source Code to the Compiled Object Code

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

Text

Levy and Wolf. "Learning to Align the Source Code to the Compiled Object Code." International Conference on Machine Learning, 2017.

Markdown

[Levy and Wolf. "Learning to Align the Source Code to the Compiled Object Code." International Conference on Machine Learning, 2017.](https://mlanthology.org/icml/2017/levy2017icml-learning/)

BibTeX

@inproceedings{levy2017icml-learning,
  title     = {{Learning to Align the Source Code to the Compiled Object Code}},
  author    = {Levy, Dor and Wolf, Lior},
  booktitle = {International Conference on Machine Learning},
  year      = {2017},
  pages     = {2043-2051},
  volume    = {70},
  url       = {https://mlanthology.org/icml/2017/levy2017icml-learning/}
}