Latent semantic analysis of game models using LSTMs

Dan R. Ghica, Khulood Alyahya

Research output: Contribution to journalArticlepeer-review

1 Citation (Scopus)
191 Downloads (Pure)


We are proposing a method for identifying whether the observed behaviour of a function at an interface is consistent with the typical behaviour of a particular programming language. This is a challenging problem with significant potential applications such as in security (intrusion detection) or compiler optimisation (profiling). To represent behaviour we use game semantics, a powerful method of semantic analysis for programming languages. It gives mathematically accurate models ('fully abstract') for a wide variety of programming languages. Gamesemantic models are combinatorial characterisations of all possible interactions between a term and its syntactic context. Because such interactions can be concretely represented as sets of sequences, it is possible to ask whether they can be learned from examples. Concretely, we are using LSTM, a technique which proved effective in learning natural languages for automatic translation and text synthesis, to learn game-semantic models of sequential and concurrent versions of Idealised Algol (IA), which are algorithmically complex yet can be concisely described. We will measure how accurate the learned models are as a function of the degree of the term and the number of free variables involved. Finally, we will show how to use the learned model to perform latent semantic analysis between concurrent and sequential Idealised Algol.
Original languageEnglish
Pages (from-to)39-54
JournalJournal of Logical and Algebraic Methods in Programming
Early online date12 Apr 2019
Publication statusPublished - Aug 2019


  • programming language semantics
  • game semantics
  • recurrent neural networks
  • machine learning


Dive into the research topics of 'Latent semantic analysis of game models using LSTMs'. Together they form a unique fingerprint.

Cite this