With the purpose of modeling, specifying and reasoning in an integrated fashion with procedural and declarative aspects (both commonly present in cases or scenarios), the paper introduces logic programming Petri Nets ...
详细信息
This paper develops a logic programming language, GI-log, that extends answer set programming language with a new graded modality K-omega where omega is an interval satisfying omega subset of [0, 1]. The modality is u...
详细信息
This paper develops a logic programming language, GI-log, that extends answer set programming language with a new graded modality K-omega where omega is an interval satisfying omega subset of [0, 1]. The modality is used to precede a literal in rules bodies, and thus allows for the representation of graded introspections in the presence of multiple belief sets: K omega F intuitively means: it is known that the proportion of the belief sets where F is true is in the interval omega. We define the semantics of GI-log, study the relation to the languages of strong introspections, give an algorithm for computing solutions of GI-log programs, and investigate the use of GI-log for formalizing contextual reasoning, conformant planning with threshold, and modeling a graph problem.
This paper presents the pl-nauty library, a Prolog interface to the nauty graph-automorphism tool. Adding the capabilities of nauty to Prolog combines the strength of the "generate and prune" approach that i...
详细信息
This paper presents the pl-nauty library, a Prolog interface to the nauty graph-automorphism tool. Adding the capabilities of nauty to Prolog combines the strength of the "generate and prune" approach that is commonly used in logic programming and constraint solving, with the ability to reduce symmetries while reasoning over graph objects. Moreover, it enables the integration of nauty in existing tool-chains, such as SAT-solvers or finite domain constraints compilers which exist for Prolog. The implementation consists of two components: pl-nauty, an interface connecting nauty's C library with Prolog, and pl-gtools, a Prolog framework integrating the software component of nauty, called gtools, with Prolog. The complete tool is available as a SWI-Prolog module. We provide a series of usage examples including two that apply to generate Ramsey graphs.
This reply to Oaksford and Chater's (O&C)'s critical discussion of our use of logic programming (LP) to model and predict patterns of conditional reasoning will frame the dispute in terms of the semantics ...
详细信息
This reply to Oaksford and Chater's (O&C)'s critical discussion of our use of logic programming (LP) to model and predict patterns of conditional reasoning will frame the dispute in terms of the semantics of the conditional. We begin by outlining some common features of LP and probabilistic conditionals in knowledge-rich reasoning over long-term memory knowledge bases. For both, context determines causal strength;there are inferences from the absence of certain evidence;and both have analogues of the Ramsey test. Some current work shows how a combination of counting defeaters and statistics from network monitoring can provide the information for graded responses from LP reasoning. With this much introduction, we then respond to O&C's specific criticisms and misunderstandings.
In this paper we present a model transformation language based on logic programming. The language, called PTL (Prolog based Transformation Language), can be considered as a hybrid language in which ATL (Atlas Transfor...
详细信息
In this paper we present a model transformation language based on logic programming. The language, called PTL (Prolog based Transformation Language), can be considered as a hybrid language in which ATL (Atlas Transformation Language)-style rules are combined with logic rules for defining transformations. ATL-style rules are used to define mappings from source models to target models while logic rules are used as helpers. The implementation of PTL is based on the encoding of the ATL-style rules by Prolog rules. Thus, PTL makes use of Prolog as a transformation engine. We have provided a declarative semantics to PTL and proved the semantics equivalent to the encoded program. We have studied an encoding of OCL (Object Constraint Language) with Prolog goals in order to map ATL to PTL. Thus a subset of PTL can be considered equivalent to a subset of ATL. The proposed language can be also used for model validation, that is, for checking constraints on models and transformations. We have equipped our language with debugging and tracing capabilities which help developers to detect programming errors in PTL rules. Additionally, we have developed an Eclipse plugin for editing PTL programs, as well as for debugging, tracing and validation. Finally, we have evaluated the language with several transformation examples as well as tested the performance with large models. (C) 2015 Elsevier Inc. All rights reserved.
This paper is focused on looking for an appropriate coherence notion which allows us to deal with inconsistent information included in multi-adjoint normal logic programs. Different definitions closely related to the ...
详细信息
This paper develops a logic programming language, GI-log, that extends answer set programming language with a new graded modality Kω where ω is an interval satisfying ω ∪ [0, 1]. The modality is used to precede a ...
详细信息
This paper develops a logic programming language, GI-log, that extends answer set programming language with a new graded modality Kω where ω is an interval satisfying ω ∪ [0, 1]. The modality is used to precede a literal in rules bodies, and thus allows for the representation of graded introspections in the presence of multiple belief sets: KωF intuitively means: it is known that the proportion of the belief sets where F is true is in the interval ω. We define the semantics of GI-log, study the relation to the languages of strong introspections, give an algorithm for computing solutions of GI-log programs, and investigate the use of GI-log for formalizing contextual reasoning, conformant planning with threshold, and modeling a graph problem.
We present recent developments on the syntax of Real, a library for interfacing two Prolog systems to the statistical language R. We focus on the changes in Prolog syntax within SWI-Prolog that accommodate greater syn...
详细信息
We present recent developments on the syntax of Real, a library for interfacing two Prolog systems to the statistical language R. We focus on the changes in Prolog syntax within SWI-Prolog that accommodate greater syntactic integration, enhanced user experience and improved features for web-services. We recount the full syntax and functionality of Real as well as presenting a full application and sister packages which include Prolog code interfacing a number of common and useful tasks that can be delegated to R. We argue that Real is a powerful extension to logic programming, providing access to a popular statistical system that has complementary strengths in areas such as machine learning, statistical inference and visualisation. Furthermore, Real has a central role to play in the uptake of semantic web, computational biology and bioinformatics as application areas for research in logic programming. (C) 2016 Elsevier Inc. All rights reserved.
Coinductive definitions, such as that of an infinite stream, may often be described by elegant logic programs, but ones for which SLD-refutation is of no value as SLD-derivations fall into infinite loops. Such definit...
详细信息
Coinductive definitions, such as that of an infinite stream, may often be described by elegant logic programs, but ones for which SLD-refutation is of no value as SLD-derivations fall into infinite loops. Such definitions give rise to questions of lazy corecursive derivations and parallelism, as execution of such logic programs can have both recursive and corecursive features at once. Observational and coalgebraic semantics have been used to study them abstractly. The programming developments have often occurred separately and have usually been implementation-led. Here, we give a coherent semantics-led account of the issues, starting with abstract category theoretic semantics, developing coalgebra to characterize naturally arising trees and proceeding towards implementation of a new dialect, CoALP, of logic programming, characterised by guarded lazy corecursion and parallelism.
We present the web application cplint on SWI-Prolog for SHaring that allows the user to write (SWISH)' Probabilistic logic Programs and submit the computation of the probability of queries with a web browser. The ...
详细信息
We present the web application cplint on SWI-Prolog for SHaring that allows the user to write (SWISH)' Probabilistic logic Programs and submit the computation of the probability of queries with a web browser. The application is based on SWISH, a web framework for logic programming. SWISH is based on various features and packages of SWI-Prolog, in particular, its web server and its Pengine library, that allow to create remote Prolog engines and to pose queries to them. In order to develop the web application, we started from the PITA system, which is included in cplint, a suite of programs for reasoning over logic Programs with Annotated Disjunctions, by porting PITA to SWI-Prolog. Moreover, we modified the PITA library so that it can be executed in a multi-threading environment. Developing cplint on SWISH' also required modification of the JavaScript SWISH code that creates and queries Pengines. cplint on SWISH' includes a number of examples that cover a wide range of domains and provide interesting applications of Probabilistic logic programming. By providing a web interface to cplint, we allow users to experiment with Probabilistic logic programming without the need to install a system, a procedure that is often complex, error prone, and limited mainly to the Linux platform. In this way, we aim to reach out to a wider audience and popularize Probabilistic logic programming. Copyright (c) 2015 John Wiley & Sons, Ltd.
暂无评论