English-Hungarian Translator

Prolog, NLP, Machine Translation, Linguistics

Honors Thesis

Spring 2015 (4 months)

For my undergraduate honors thesis, I built a bidirectional English-Hungarian machine translator in Prolog. The project was a proof-of-concept that explored the efficacy of using Prolog for machine translation.

The investigation was aimed at demonstrating the feasibility of building a translator generator, i.e. a program that accepts linguistic descriptions of two languages (lexicons, syntax parsers, morphologies), and generates a program that can translate between the two languages bidiretionally. The proof-of-concept system demonstrated an architecture that would enable such a generator.

The findings in short: encoding languages in Lexical Functional Grammars using Prolog allows for bidirectional translators to be written very succinctly. The whole system came in under 1500 lines of Prolog code. The written thesis goes into significantly more detail for those interested.