English
Related papers

Related papers: Efficient Groundness Analysis in Prolog

200 papers

Handling out-of-distribution samples is a long-lasting challenge for deep visual models. In particular, domain generalization (DG) is one of the most relevant tasks that aims to train a model with a generalization capability on novel…

Computer Vision and Pattern Recognition · Computer Science 2023-11-10 Sang-Yeong Jo , Sung Whan Yoon

Boolean function bi-decomposition is ubiquitous in logic synthesis. It entails the decomposition of a Boolean function using two-input simple logic gates. Existing solutions for bi-decomposition are often based on BDDs and, more recently,…

Logic in Computer Science · Computer Science 2011-12-15 Huan Chen , Mikolas Janota , Joao Marques-Silva

Policy gradient methods can solve complex tasks but often fail when the dimensionality of the action-space or objective multiplicity grow very large. This occurs, in part, because the variance on score-based gradient estimators scales…

Machine Learning · Computer Science 2021-11-24 Thomas Spooner , Nelson Vadori , Sumitra Ganesh

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

Refinement transforms an abstract system model into a concrete, executable program, such that properties established for the abstract model carry over to the concrete implementation. Refinement has been used successfully in the development…

Logic in Computer Science · Computer Science 2021-10-27 Aurel Bílý , Christoph Matheja , Peter Müller

One recurring problem in program development is that of understanding how to re-use code developed by a third party. In the context of (constraint) logic programming, part of this problem reduces to figuring out how to query a program. If…

Programming Languages · Computer Science 2007-05-23 Andy King , Lunjin Lu

Constraint logic programming combines declarativity and efficiency thanks to constraint solvers implemented for specific domains. Value withdrawal explanations have been efficiently used in several constraints programming environments but…

Software Engineering · Computer Science 2007-05-23 Willy Lesaint

We show how logic programs with "delays" can be transformed to programs without delays in a way which preserves information concerning floundering (also known as deadlock). This allows a declarative (model-theoretic), bottom-up or goal…

Programming Languages · Computer Science 2020-02-19 Lee Naish

It was previously shown that control-flow refinement can be achieved by a program specializer incorporating property-based abstraction, to improve termination and complexity analysis tools. We now show that this purpose-built specializer…

Programming Languages · Computer Science 2020-08-10 John P. Gallagher , Robert Glück

The logic programming paradigm provides the basis for a new intensional view of higher-order notions. This view is realized primarily by employing the terms of a typed lambda calculus as representational devices and by using a richer form…

Programming Languages · Computer Science 2007-05-23 Gopalan Nadathur

The octagon abstract domain is a widely used numeric abstract domain expressing relational information between variables whilst being both computationally efficient and simple to implement. Each element of the domain is a system of…

Programming Languages · Computer Science 2017-11-01 Aziem Chawdhary , Ed Robbins , Andy King

Grounding is the task of reducing a first-order theory and finite domain to an equivalent propositional theory. It is used as preprocessing phase in many logic-based reasoning systems. Such systems provide a rich first-order input language…

Logic in Computer Science · Computer Science 2014-01-17 Johan Wittocx , Maarten Mariën , Marc Denecker

Boolean circuit is a computational graph that consists of the dynamic directed graph structure and static functionality. The commonly used logic optimization and Boolean matching-based transformation can change the behavior of the Boolean…

Machine Learning · Computer Science 2024-11-19 Liwei Ni , Xinquan Li , Biwei Xie , Huawei Li

Termination properties of actual Prolog systems with constraints are fragile and difficult to analyse. The lack of the occurs-check, moded and overloaded arithmetical evaluation via is/2 and the occasional nontermination of finite domain…

Programming Languages · Computer Science 2009-03-13 Markus Triska , Ulrich Neumerkel , Jan Wielemaker

We define a measure for the complexity of Boolean functions related to their implementation in neural networks, and in particular close related to the generalization ability that could be obtained through the learning process. The measure…

Disordered Systems and Neural Networks · Physics 2007-05-23 Leonardo Franco

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

We consider the problem of synthesizing provably non-overflowing integer arithmetic expressions or Boolean relations among integer arithmetic expressions. First we use a numerical abstract domain to infer numerical properties among program…

Programming Languages · Computer Science 2013-09-23 Francesco Logozzo , Matthieu Martel

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

Making a Prolog program more efficient by transforming its source code, without changing its operational semantics, is not an obvious task. It requires the user to have a clear understanding of how the Prolog compiler works, and in…

Programming Languages · Computer Science 2007-11-01 Francois Gobert , Baudouin Le Charlier

Program specialization is a program transformation methodology which improves program efficiency by exploiting the information about the input data which are available at compile time. We show that current techniques for program…

Programming Languages · Computer Science 2007-05-23 Alberto Pettorossi , Maurizio Proietti , Sophie Renault