English
Related papers

Related papers: Slicing of Constraint Logic Programs

200 papers

Uncertainty in logic programming has been widely investigated in the last decades, leading to multiple extensions of the classical LP paradigm. However, few of these are designed as extensions of the well-established and powerful CLP scheme…

Logic in Computer Science · Computer Science 2012-01-27 R. Caballero , M. Rodriguez-Artalejo , C. A. Romero-Diaz

The CLP scheme uses Horn clauses and SLD resolution to generate multiple constraint satisfaction problems (CSPs). The possible CSPs include rational trees (giving Prolog) and numerical algorithms for solving linear equations and linear…

Programming Languages · Computer Science 2010-02-09 M. H. van Emden

Logic Programming (LP) is a subcategory of declarative programming that is considered to be relatively simple for non-programmers. LP developers focus on describing facts and rules of a logical derivation, and do not need to think about the…

Cryptography and Security · Computer Science 2021-05-18 Joosep Jääger , Alisa Pankova

Tracers provide users with useful information about program executions. In this article, we propose a ``tracer driver''. From a single tracer, it provides a powerful front-end enabling multiple dynamic analysis tools to be easily…

Software Engineering · Computer Science 2008-12-18 Ludovic Langevine , Mireille Ducasse

Programs with constraints are hard to debug. In this paper, we describe a general architecture to help develop new debugging tools for constraint programming. The possible tools are fed by a single general-purpose tracer. A tracer-driver is…

Software Engineering · Computer Science 2007-05-23 Ludovic Langevine , Mireille Ducasse

Completeness of a logic program means that the program produces all the answers required by its specification. The cut is an important construct of programming language Prolog. It prunes part of the search space, this may result in a loss…

Logic in Computer Science · Computer Science 2020-01-03 Włodzimierz Drabent

A logic program is an executable specification. For example, merge sort in pure Prolog is a logical formula, yet shows creditable performance on long linked lists. But such executable specifications are a compromise: the logic is distorted…

Programming Languages · Computer Science 2015-09-29 M. H. van Emden

Multi-constraint planning involves identifying, evaluating, and refining candidate plans while satisfying multiple, potentially conflicting constraints. Existing large language model (LLM) approaches face fundamental limitations in this…

Artificial Intelligence · Computer Science 2026-01-26 Derrick Goh Xin Deik , Quanyu Long , Zhengyuan Liu , Nancy F. Chen , Wenya Wang

Object-oriented programming has been considered a most promising method in program development and maintenance. An important feature of object-oriented programs (OOPs) is their reusability which can be achieved through the inheritance of…

Programming Languages · Computer Science 2010-06-15 Santosh Kumar Pani , Priya Arundhati

Difference constraints have been used for termination analysis in the literature, where they denote relational inequalities of the form x' <= y + c, and describe that the value of x in the current state is at most the value of y in the…

Programming Languages · Computer Science 2015-08-21 Moritz Sinn , Florian Zuleger , Helmut Veith

This paper shows how to apply memoization (caching of subgoals and associated answer substitutions) in a constraint logic programming setting. The research is is motivated by the desire to apply constraint logic programming (CLP) to…

cmp-lg · Computer Science 2008-02-03 Mark Johnson

Many software analysis methods have come to rely on machine learning approaches. Code segmentation - the process of decomposing source code into meaningful blocks - can augment these methods by featurizing code, reducing noise, and limiting…

Software Engineering · Computer Science 2019-07-23 Jacob Dormuth , Ben Gelman , Jessica Moore , David Slater

CPL here stands for a computer programming language conceived and developed by the author since 1993, but published for the first time in 2020. It was born as a Compiled Programming Language, designed together with its compiler and…

Programming Languages · Computer Science 2021-11-19 Paolo Luchini

Partial functions are common abstractions in formal specification notations such as Z, B and Alloy. Conversely, executable programming languages usually provide little or no support for them. In this paper we propose to add partial…

Programming Languages · Computer Science 2020-02-19 Maximiliano Cristia , Gianfranco Rossi , Claudia Frydman

The field of Distributed Constraint Optimization Problems (DCOPs) has gained momentum, thanks to its suitability in capturing complex problems (e.g., multi-agent coordination and resource allocation problems) that are naturally distributed…

Multiagent Systems · Computer Science 2014-05-16 Tiep Le , Enrico Pontelli , Tran Cao Son , William Yeoh

Inductive logic programming is a form of machine learning based on mathematical logic that generates logic programs from given examples and background knowledge. In this project, we extend the Popper ILP system to make use of multi-task…

Machine Learning · Computer Science 2022-08-25 Bogdan Cretu , Andrew Cropper

Testing algorithms across a wide range of problem instances is crucial to ensure the validity of any claim about one algorithm's superiority over another. However, when it comes to inference algorithms for probabilistic logic programs,…

Logic in Computer Science · Computer Science 2020-09-14 Paulius Dilkas , Vaishak Belle

Delimited control is a powerful mechanism for programming language extension which has been recently proposed for Prolog (and implemented in SWI-Prolog). By manipulating the control flow of a program from inside the language, it enables the…

Programming Languages · Computer Science 2023-03-08 Alexander Vandenbroucke , Tom Schrijvers

We survey recent work on machine learning (ML) techniques for selecting cutting planes (or cuts) in mixed-integer linear programming (MILP). Despite the availability of various classes of cuts, the task of choosing a set of cuts to add to…

Optimization and Control · Mathematics 2023-11-01 Arnaud Deza , Elias B. Khalil

Program slicing is a critical technique in software engineering, enabling developers to isolate relevant portions of code for tasks such as bug detection, code comprehension, and debugging. In this study, we investigate the application of…

Software Engineering · Computer Science 2024-09-20 Kimya Khakzad Shahandashti , Mohammad Mahdi Mohajer , Alvine Boaye Belle , Song Wang , Hadi Hemmati