731 research outputs found
On the incorporation of interval-valued fuzzy sets into the Bousi-Prolog system: declarative semantics, implementation and applications
In this paper we analyse the benefits of incorporating interval-valued fuzzy
sets into the Bousi-Prolog system. A syntax, declarative semantics and im-
plementation for this extension is presented and formalised. We show, by using
potential applications, that fuzzy logic programming frameworks enhanced with
them can correctly work together with lexical resources and ontologies in order
to improve their capabilities for knowledge representation and reasoning
Correctness and completeness of logic programs
We discuss proving correctness and completeness of definite clause logic
programs. We propose a method for proving completeness, while for proving
correctness we employ a method which should be well known but is often
neglected. Also, we show how to prove completeness and correctness in the
presence of SLD-tree pruning, and point out that approximate specifications
simplify specifications and proofs.
We compare the proof methods to declarative diagnosis (algorithmic
debugging), showing that approximate specifications eliminate a major drawback
of the latter. We argue that our proof methods reflect natural declarative
thinking about programs, and that they can be used, formally or informally, in
every-day programming.Comment: 29 pages, 2 figures; with editorial modifications, small corrections
and extensions. arXiv admin note: text overlap with arXiv:1411.3015. Overlaps
explained in "Related Work" (p. 21
A Fuzzy Logic Programming Environment for Managing Similarity and Truth Degrees
FASILL (acronym of "Fuzzy Aggregators and Similarity Into a Logic Language")
is a fuzzy logic programming language with implicit/explicit truth degree
annotations, a great variety of connectives and unification by similarity.
FASILL integrates and extends features coming from MALP (Multi-Adjoint Logic
Programming, a fuzzy logic language with explicitly annotated rules) and
Bousi~Prolog (which uses a weak unification algorithm and is well suited for
flexible query answering). Hence, it properly manages similarity and truth
degrees in a single framework combining the expressive benefits of both
languages. This paper presents the main features and implementations details of
FASILL. Along the paper we describe its syntax and operational semantics and we
give clues of the implementation of the lattice module and the similarity
module, two of the main building blocks of the new programming environment
which enriches the FLOPER system developed in our research group.Comment: In Proceedings PROLE 2014, arXiv:1501.0169
A Transformation-based Implementation for CLP with Qualification and Proximity
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 for Constraint Logic Programming. In a previous work we have
proposed the SQCLP (proximity-based qualified constraint logic programming)
scheme as a quite expressive extension of CLP with support for qualification
values and proximity relations as generalizations of uncertainty values and
similarity relations, respectively. In this paper we provide a transformation
technique for transforming SQCLP programs and goals into semantically
equivalent CLP programs and goals, and a practical Prolog-based implementation
of some particularly useful instances of the SQCLP scheme. We also illustrate,
by showing some simple-and working-examples, how the prototype can be
effectively used as a tool for solving problems where qualification values and
proximity relations play a key role. Intended use of SQCLP includes flexible
information retrieval applications.Comment: 49 pages, 5 figures, 1 table, preliminary version of an article of
the same title, published as Technical Report SIC-4-10, Universidad
Complutense, Departamento de Sistemas Inform\'aticos y Computaci\'on, Madrid,
Spai
A Declarative Semantics for CLP with Qualification and Proximity
Uncertainty in Logic Programming has been investigated during the last
decades, dealing with various extensions of the classical LP paradigm and
different applications. Existing proposals rely on different approaches, such
as clause annotations based on uncertain truth values, qualification values as
a generalization of uncertain truth values, and unification based on proximity
relations. On the other hand, the CLP scheme has established itself as a
powerful extension of LP that supports efficient computation over specialized
domains while keeping a clean declarative semantics. In this paper we propose a
new scheme SQCLP designed as an extension of CLP that supports qualification
values and proximity relations. We show that several previous proposals can be
viewed as particular cases of the new scheme, obtained by partial
instantiation. We present a declarative semantics for SQCLP that is based on
observables, providing fixpoint and proof-theoretical characterizations of
least program models as well as an implementation-independent notion of goal
solutions.Comment: 17 pages, 26th Int'l. Conference on Logic Programming (ICLP'10
Braid: Weaving Symbolic and Neural Knowledge into Coherent Logical Explanations
Traditional symbolic reasoning engines, while attractive for their precision
and explicability, have a few major drawbacks: the use of brittle inference
procedures that rely on exact matching (unification) of logical terms, an
inability to deal with uncertainty, and the need for a precompiled rule-base of
knowledge (the "knowledge acquisition" problem). To address these issues, we
devise a novel logical reasoner called Braid, that supports probabilistic
rules, and uses the notion of custom unification functions and dynamic rule
generation to overcome the brittle matching and knowledge-gap problem prevalent
in traditional reasoners. In this paper, we describe the reasoning algorithms
used in Braid, and their implementation in a distributed task-based framework
that builds proof/explanation graphs for an input query. We use a simple QA
example from a children's story to motivate Braid's design and explain how the
various components work together to produce a coherent logical explanation.
Finally, we evaluate Braid on the ROC Story Cloze test and achieve close to
state-of-the-art results while providing frame-based explanations.Comment: Accepted at AAAI-202
- …