Treffer: Reversible Computations in Logic Programming

Title:
Reversible Computations in Logic Programming
Contributors:
Departamento de Sistemas Informáticos y Computación, Escuela Técnica Superior de Ingeniería Informática, Instituto Universitario Valenciano de Investigación en Inteligencia Artificial, European Regional Development Fund
Publisher Information:
Springer
Publication Year:
2020
Collection:
Universitat Politécnica de Valencia: RiuNet / Politechnical University of Valencia
Document Type:
Buch book part<br />conference object
File Description:
application/pdf
Language:
English
Relation:
Reversible Computation; Lecture Notes in Computer Science;12227; info:eu-repo/grantAgreement/AEI/Plan Estatal de Investigación Científica y Técnica y de Innovación 2017-2020/PID2019-104735RB-C41/ES/SAFER-UPV: ANALISIS Y VALIDACION DE SOFTWARE Y RECURSOS WEB/; info:eu-repo/grantAgreement/COST/COST Action/IC1405/EU/Reversible computation - extending horizons of computing/; info:eu-repo/grantAgreement/AEI//TIN2016-76843-C4-1-R/ES/MÉTODOS RIGUROSOS PARA EL INTERNET DEL FUTURO/; info:eu-repo/grantAgreement/GVA//PROMETEO%2F2019%2F098/ES/ Deep Logic Technology for Software Trustworthiness/DeepTrust/; 12th Conference on Reversible Computation (RC 2020); Julio 09-10,2020; Oslo, Norway; https://doi.org/10.1007/978-3-030-52482-1_15; https://riunet.upv.es/handle/10251/179209
DOI:
10.1007/978-3-030-52482-1_15
Rights:
http://rightsstatements.org/vocab/InC/1.0/ ; info:eu-repo/semantics/openAccess
Accession Number:
edsbas.171B17DE
Database:
BASE

Weitere Informationen

[EN] In this work, we say that a computation is reversible if one can find a procedure to undo the steps of a standard (or forward) computation in a deterministic way. While logic programs are often invertible (e.g., one can use the same predicate for adding and for subtracting natural numbers), computations are not reversible in the above sense. In this paper, we present a so-called Landauer embedding for SLD resolution, the operational principle of logic programs, so that it becomes reversible. A proof-of-concept implementation of a reversible debugger for Prolog that follows the ideas in this paper has been developed and is publicly available. ; This work is partially supported by the EU (FEDER) and the Spanish MCI/AEI under grants TIN2016-76843-C4-1-R/PID2019-104735RB-C41, by the Generalitat Valenciana under grant Prometeo/2019/098 (DeepTrust), and by the COST Action IC1405 on Reversible Computation - extending horizons of computing. ; Vidal, G. (2020). Reversible Computations in Logic Programming. Springer. 246-254. https://doi.org/10.1007/978-3-030-52482-1_15 ; S ; 246 ; 254 ; Apt, K.: From Logic Programming to Prolog. Prentice Hall, Upper Saddle River (1997) ; Ducassé, M.: Opium: an extendable trace analyzer for prolog. J. Log. Program. 39(1–3), 177–223 (1999). https://doi.org/10.1016/S0743-1066(98)10036-5 ; Landauer, R.: Irreversibility and heat generation in the computing process. IBM J. Res. Dev. 5, 183–191 (1961) ; Lanese, I., Palacios, A., Vidal, G.: Causal-consistent replay debugging for message passing programs. In: Pérez, J.A., Yoshida, N. (eds.) FORTE 2019. LNCS, vol. 11535, pp. 167–184. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-21759-4_10 ; Lloyd, J.: Foundations of Logic Programming, 2nd edn. Springer, Berlin (1987). https://doi.org/10.1007/978-3-642-83189-8 ; O’Callahan, R., Jones, C., Froyd, N., Huey, K., Noll, A., Partush, N.: Engineering record and replay for deployability: Extended technical report (2017). CoRR abs/1705.05937, http://arxiv.org/abs/1705.05937 ; Ströder, T., ...