On termination of meta-programs

dc.creatorSerebrenik, Alexander
dc.creatorDe Schreye, Danny
dc.date2001-10-17
dc.date2003-12-24
dc.date.accessioned2026-07-07T03:17:48Z
dc.date.available2026-07-07T03:17:48Z
dc.descriptionThe term {\em meta-programming} refers to the ability of writing programs that have other programs as data and exploit their semantics. The aim of this paper is presenting a methodology allowing us to perform a correct termination analysis for a broad class of practical meta-interpreters, including negation and performing different tasks during the execution. It is based on combining the power of general orderings, used in proving termination of term-rewrite systems and programs, and on the well-known acceptability condition, used in proving termination of logic programs. The methodology establishes a relationship between the ordering needed to prove termination of the interpreted program and the ordering needed to prove termination of the meta-interpreter together with this interpreted program. If such a relationship is established, termination of one of those implies termination of the other one, i.e., the meta-interpreter preserves termination. Among the meta-interpreters that are analysed correctly are a proof trees constructing meta-interpreter, different kinds of tracers and reasoners. To appear without appendix in Theory and Practice of Logic Programming.
dc.descriptionTo appear in Theory and Practice of Logic Programming (TPLP)
dc.identifierhttps://arxiv.org/abs/cs/0110035
dc.identifierhttp://arxiv.org/abs/cs/0110035
dc.identifier.urihttp://salesiana.dossiersoluciones.com/handle/123456789/30861
dc.subjectProgramming Languages
dc.subjectLogic in Computer Science
dc.subjectD.1.6; D.2.4
dc.titleOn termination of meta-programs
dc.typetext

Files

Collections