English
Related papers

Related papers: The Prolog Debugger and Declarative Programming. E…

200 papers

We propose a static and a dynamic approach to model biological signaling networks, and show how each can be used to answer relevant biological questions. For this we use the two different mathematical tools of Propositional Logic and…

Quantitative Methods · Quantitative Biology 2009-05-13 Utz-Uwe Haus , Kathrin Niermann , Klaus Truemper , Robert Weismantel

Existing refinement calculi provide frameworks for the stepwise development of imperative programs from specifications. This paper presents a refinement calculus for deriving logic programs. The calculus contains a wide-spectrum logic…

Software Engineering · Computer Science 2007-05-23 Ian Hayes , Robert Colvin , David Hemer , Paul Strooper , Ray Nickson

To appear in Theory and Practice of Logic Programming (TPLP). Tabling is a commonly used technique in logic programming for avoiding cyclic behavior of logic programs and enabling more declarative program definitions. Furthermore, tabling…

Programming Languages · Computer Science 2020-02-19 Thepfrastos Mantadelis , Ricardo Rocha , Paulo Moura

This paper illustrates how a Prolog program, using chronological backtracking to find a solution in some search space, can be enhanced to perform intelligent backtracking. The enhancement crucially relies on the impurity of Prolog that…

Artificial Intelligence · Computer Science 2007-05-23 Maurice Bruynooghe

How to extract negative information from programs is an important issue in logic programming. Here we address the problem for functional logic programs, from a proof-theoretic perspective. The starting point of our work is CRWL (Constructor…

Programming Languages · Computer Science 2007-05-23 Francisco Javier Lopez-Fraguas , Jaime Sanchez-Hernandez

Automatic differentiation plays a prominent role in scientific computing and in modern machine learning, often in the context of powerful programming systems. The relation of the various embodiments of automatic differentiation to the…

Programming Languages · Computer Science 2020-02-04 Martin Abadi , Gordon D. Plotkin

We present a new approach to termination analysis of numerical computations in logic programs. Traditional approaches fail to analyse them due to non well-foundedness of the integers. We present a technique that allows overcoming these…

Programming Languages · Computer Science 2007-05-23 Alexander Serebrenik , Danny De Schreye

We present a simple programming language based on G\"odel numbering and prime factorization, enhanced with explicit, scoped loops, allowing for easy program composition. Further, we will present a theorem prover that allows expressing and…

Programming Languages · Computer Science 2022-12-07 Boro Sitnikovski

In the same sense as classical logic is a formal theory of truth, the recently initiated approach called computability logic is a formal theory of computability. It understands (interactive) computational problems as games played by a…

Logic in Computer Science · Computer Science 2011-04-15 Giorgi Japaridze

Uncertain information is being taken into account in an increasing number of application fields. In the meantime, abduction has been proved a powerful tool for handling hypothetical reasoning and incomplete knowledge. Probabilistic logical…

Artificial Intelligence · Computer Science 2022-02-04 Elena Bellodi , Marco Gavanelli , Riccardo Zese , Evelina Lamma , Fabrizio Riguzzi

The area of declarative data analytics explores the application of the declarative paradigm on data science and machine learning. It proposes declarative languages for expressing data analysis tasks and develops systems which optimize…

Databases · Computer Science 2019-02-05 Nantia Makrynioti , Vasilis Vassalos

Defeasible argumentation frameworks have evolved to become a sound setting to formalize commonsense, qualitative reasoning from incomplete and potentially inconsistent knowledge. Defeasible Logic Programming (DeLP) is a defeasible…

Artificial Intelligence · Computer Science 2012-07-19 Carlos Chesnevar , Guillermo Simari , Teresa Alsinet , Lluis Godo

A term calculus for the proofs in multiplicative-additive linear logic is introduced and motivated as a programming language for channel based concurrency. The term calculus is proved complete for a semantics in linearly distributive…

Category Theory · Mathematics 2010-03-03 J. R. B. Cockett , C. A. Pastro

Tabling is probably the most widely studied extension of Prolog. But despite its importance and practicality, tabling is not implemented by most Prolog systems. Existing approaches require substantial changes to the Prolog engine, which is…

Programming Languages · Computer Science 2020-02-19 Benoit Desouter , Tom Schrijvers , Marko van Dooren

Prioritized default reasoning has illustrated its rich expressiveness and flexibility in knowledge representation and reasoning. However, many important aspects of prioritized default reasoning have yet to be thoroughly explored. In this…

Artificial Intelligence · Computer Science 2007-05-23 Yan Zhang

Logic programming such as Prolog is often sequential and slow because each execution step processes only a single, $micro$ connective. To fix this problem, we propose to use $macro$ connectives as the means of improving both readability and…

Programming Languages · Computer Science 2018-05-08 Keehang Kwon

Deep Learning experiments have critical requirements regarding the careful handling of their datasets as well as the efficient and correct usage of APIs that interact with hardware accelerators. On the one hand, software mistakes during…

Programming Languages · Computer Science 2025-01-03 Nick Papoulias

This article aims to achieve two goals: to show that probability is not the only way of dealing with uncertainty (and even more, that there are kinds of uncertainty which are for principled reasons not addressable with probabilistic means);…

Artificial Intelligence · Computer Science 2017-03-02 Tarek R. Besold , Artur d'Avila Garcez , Keith Stenning , Leendert van der Torre , Michiel van Lambalgen

Refactoring is an established technique from the object-oriented (OO) programming community to restructure code: it aims at improving software readability, maintainability and extensibility. Although refactoring is not tied to the…

Software Engineering · Computer Science 2007-05-23 Alexander Serebrenik , Tom Schrijvers , Bart Demoen

Higher-order logic programming is an interesting extension of traditional logic programming that allows predicates to appear as arguments and variables to be used where predicates typically occur. Higher-order characteristics are indeed…

Programming Languages · Computer Science 2018-12-04 Antonis Troumpoukis , Angelos Charalambidis