Implicit program synthesis by
a reversible metainterpreter
Department of Computer Science
Roskilde University, P.O.Box 260, DK-4000 Roskilde, Denmark
Synthesis of logic programs is considered
as a special instance of logic programming.
We describe experience made within a logical
metaprogramming environment whose central
component is a reversible metainterpreter,
in the sense that it is
equally well suited for generating object programs
as well as for executing them.
Requirements telling that certain goals
should be provable in a program sought can be
integrated with additional
sideconditions expressed by the developer at the
metalevel, and the resulting
specifications tend to be quite concise and
For problems up to a certain degree of complexity,
this provides a mode of working
characterized by experimentation and
an ability to combine different
methods which is uncommon in most other systems
for program synthesis.
Reversibility in the metainterpreter
is obtained using constraint logic
Fuchs, N.E. (ed.),
"Proceedings of the Seventh
International Workshop on Logic Program Synthesis
and Transformation LOPSTR '97",
Lecture Notes in Artificial Intelligence 1463,
pp. 90-110, 1998.