M.S. Final Oral Exam: Yonas Sium

M.S. Final Oral Exam: Yonas Sium

Apr 8, 2022 - 1:00 PM
to , -

Speaker:Yonas Sium

Neural Search for Algorithm Implementation Using Pseudo Code

Recent research showed that incorrect implementations of the algorithms can be the top root cause for software failures. While pseudo-code and naive implementations may be available, they do not contain the optimizations, data structures, test cases, corner cases, and exception handling routines required by software in production. Finding algorithm implementations in real-world code can provide a great reference. In this paper, we developed a technique to search for algorithms in code using pseudo-code as a query. We designed the p-language to specify an algorithm, which we call p-code. By automatically analyzing p-code, we extract control flow, math, and natural language information from the algorithm descriptions. The three types of features of p-code and source code are encoded by a graph neural network and used by the code retrieval technique for search. We implemented our techniques in a tool called  Beryllium and performed the experiments on Java, C, and the mixed languages of Java and C. Our results show that Beryllium can effectively identify the algorithm implementations in different languages and outperform the state-of-the-art code search tools.

Committee: Qi Li (major professor), Wei Le and Myra Cohen

Join on Zoom: https://iastate.zoom.us/j/93316827338 or, go to https://iastate.zoom.us/join and enter meeting ID: 933 1682 7338