TY - GEN
T1 - Proving operational termination of declarative programs in general logics
AU - Lucas, Salvador
AU - Meseguer, José
N1 - Publisher Copyright:
© Copyright 2014 ACM.
PY - 2014/9/8
Y1 - 2014/9/8
N2 - A declarative program P is a theory in a given computational logic L, so that computation with such a program is efficiently implemented as deduction in L. That is why inference systems are crucial: they both (i) define the logical semantics of a language in its underlying logic L, and (ii) specify the execution of programs in a correct implementation. The notion of operational termination (OT) of a declarative program P identifies termination with absence of infinite inference with P. We further develop the OT notion for declarative programs in general logics with schematic inference systems and characterize OT in terms of chains of proof jumps. We also generalize the Dependency Pair Framework for Term Rewriting Systems to an arbitrary schematic logic L, so that methods for proving declarative programs OT become available for a very wide range of declarative languages. We illustrate the usefulness of the general OT methods we propose by three case studies in three logics: that of Conditional Term Rewriting Systems, the Typed λ-calculus, and Membership Rewriting Logic. In particular, we show how various programs that could not be proved terminating with existing methods can be proved OT with the methods presented here.
AB - A declarative program P is a theory in a given computational logic L, so that computation with such a program is efficiently implemented as deduction in L. That is why inference systems are crucial: they both (i) define the logical semantics of a language in its underlying logic L, and (ii) specify the execution of programs in a correct implementation. The notion of operational termination (OT) of a declarative program P identifies termination with absence of infinite inference with P. We further develop the OT notion for declarative programs in general logics with schematic inference systems and characterize OT in terms of chains of proof jumps. We also generalize the Dependency Pair Framework for Term Rewriting Systems to an arbitrary schematic logic L, so that methods for proving declarative programs OT become available for a very wide range of declarative languages. We illustrate the usefulness of the general OT methods we propose by three case studies in three logics: that of Conditional Term Rewriting Systems, the Typed λ-calculus, and Membership Rewriting Logic. In particular, we show how various programs that could not be proved terminating with existing methods can be proved OT with the methods presented here.
KW - Declarative languages
KW - General logics
KW - Operational termination
KW - Program verification
UR - http://www.scopus.com/inward/record.url?scp=84968820789&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=84968820789&partnerID=8YFLogxK
U2 - 10.1145/2643135.2643152
DO - 10.1145/2643135.2643152
M3 - Conference contribution
AN - SCOPUS:84968820789
T3 - PPDP 2014 - Proceedings of the 16th International Symposium on Principles and Practice of Declarative Programming
SP - 111
EP - 122
BT - PPDP 2014 - Proceedings of the 16th International Symposium on Principles and Practice of Declarative Programming
PB - Association for Computing Machinery
T2 - 16th International Symposium on Principles and Practice of Declarative Programming, PPDP 2014
Y2 - 8 September 2014 through 10 September 2014
ER -