English
Related papers

Related papers: Nominal Logic Programming

200 papers

Nominal Logic is a version of first-order logic with equality, name-binding, renaming via name-swapping and freshness of names. Contrarily to higher-order logic, bindable names, called atoms, and instantiable variables are considered as…

Logic in Computer Science · Computer Science 2023-03-14 Jordi Levy , Mateu Villaret

Nominal logic is a variant of first-order logic that provides support for reasoning about bound names in abstract syntax. A key feature of nominal logic is the new-quantifier, which quantifies over fresh names (names not appearing in any…

Logic in Computer Science · Computer Science 2013-12-18 James Cheney

Formalizing syntactic proofs of properties of logics, programming languages, security protocols, and other formal systems is a significant challenge, in large part because of the obligation to handle name-binding correctly. We present an…

Logic in Computer Science · Computer Science 2007-05-23 James Cheney

We introduce Nominal Matching Logic (NML) as an extension of Matching Logic with names and binding following the Gabbay-Pitts nominal approach. Matching logic is the foundation of the $\mathbb{K}$ framework, used to specify programming…

Logic in Computer Science · Computer Science 2022-07-29 James Cheney , Maribel Fernández

Permissive-Nominal Logic (PNL) is an extension of first-order predicate logic in which term-formers can bind names in their arguments. This allows for direct axiomatisations with binders, such as of the lambda-binder of the lambda-calculus…

Logic in Computer Science · Computer Science 2023-12-29 Gilles Dowek , Murdoch J. Gabbay

Nominal unification calculates substitutions that make terms involving binders equal modulo alpha-equivalence. Although nominal unification can be seen as equivalent to Miller's higher-order pattern unification, it has properties, such as…

Logic in Computer Science · Computer Science 2010-12-23 Christian Urban

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

Several formal systems, such as resolution and minimal model semantics, provide a framework for logic programming. In this paper, we will survey the use of structural proof theory as an alternative foundation. Researchers have been using…

Logic in Computer Science · Computer Science 2021-11-02 Dale Miller

Nominal techniques provide a mathematically principled approach to dealing with names and variable binding in programming languages. This paper explores an attempt to make nominal techniques accessible as an Agda library. We aim for a…

Programming Languages · Computer Science 2026-03-05 Murdoch J. Gabbay , Orestis Melkonian

Narrowing is a well-known technique that adds to term rewriting mechanisms the required power to search for solutions to equational problems. Rewriting and narrowing are well-studied in first-order term languages, but several problems…

Logic in Computer Science · Computer Science 2025-06-09 Mauricio Ayala-Rincón , Maribel Fernández , Daniele Nantes-Sobrinho , Daniella Santaguida

We study nominal anti-unification, which is concerned with computing least general generalizations for given terms-in-context. In general, the problem does not have a least general solution, but if the set of atoms permitted in…

Logic in Computer Science · Computer Science 2025-05-01 Alexander Baumgartner , Temur Kutsia , Jordi Levy , Mateu Villaret

Rule-based reasoning is an essential part of human intelligence prominently formalized in artificial intelligence research via logic programs. Describing complex objects as the composition of elementary ones is a common strategy in computer…

Artificial Intelligence · Computer Science 2023-12-15 Christian Antic

Modular logic programs provide a way of viewing logic programs as consisting of many independent, meaningful modules. This paper introduces first-order modular logic programs, which can capture the meaning of many answer set programs. We…

Logic in Computer Science · Computer Science 2017-02-21 Amelia Harrison , Yuliya Lierler

Nominal sets provide a foundation for reasoning about names. They are used primarily in syntax with binders, but also, e.g., to model automata over infinite alphabets. In this paper, nominal sets are related to nominal renaming sets, which…

Logic in Computer Science · Computer Science 2019-06-04 Joshua Moerman , Jurriaan Rot

Logic programming is a flexible programming paradigm due to the use of predicates without a fixed data flow. To extend logic languages with the compact notation of functional programming, there are various proposals to map evaluable…

Programming Languages · Computer Science 2022-05-17 Michael Hanus

Nominal unification is an extension of first-order unification that takes into account the \alpha-equivalence relation generated by binding operators, following the nominal approach. We propose a sound and complete procedure for nominal…

Programming Languages · Computer Science 2017-09-19 Mauricio Ayala-Rincón , Washington de Carvalho-Segundo , Maribel Fernández , Daniele Nantes-Sobrinho

Processing programs as data is one of the successes of functional and logic programming. Higher-order functions, as program-processing programs are called in functional programming, and meta-programs, as they are called in logic…

Logic in Computer Science · Computer Science 2020-04-21 François Bry

Equilibrium logic is an approach to nonmonotonic reasoning that extends the stable-model and answer-set semantics for logic programs. In particular, it includes the general case of nested logic programs, where arbitrary Boolean combinations…

Logic in Computer Science · Computer Science 2009-12-30 David Pearce , Hans Tompits , Stefan Woltran

Extensional higher-order logic programming has been introduced as a generalization of classical logic programming. An important characteristic of this paradigm is that it preserves all the well-known properties of traditional logic…

Programming Languages · Computer Science 2020-02-19 Angelos Charalambidis , Zoltán Ésik , Panos Rondogiannis

We provide a denotational semantics for first-order logic that captures the two-level view of the computation process typical for constraint programming. At one level we have the usual program execution. At the other level an automatic…

Logic in Computer Science · Computer Science 2007-05-23 K. R. Apt , C. F. M. Vermeulen
‹ Prev 1 2 3 10 Next ›