We consider a class of simple visual reasoning tasks specified by pairs of
(input, output) images, all of which are related by the same unknown transformation procedure.
Given a new image, the task is to generate the correct output in an analogous
manner to the examples provided. We model this task as a program synthesis problem,
where the mapping between input and output is represented by a composition of elementary
transformations. Building on previous program synthesis approaches which construct complex
programs from simpler primitives, we employ a variation on the neural algorithmic reasoning
[1]} framework to replace elementary symbolic transformations
with equivalent neural networks, and examine if this leads to the generalisation which is the basis of
analogical reasoning.
