Logic Programming, Knowledge Representation, and Nonmonotonic Reasoning

Author(s):  
Grigoris Antoniou

This paper discusses the significance of nonmonotonic reasoning, a method from the knowledge representation area, to mainstream software engineering. In particular, we discuss why the use of defaults in specifications is an adequate way of addressing some of the most important problems in requirements engineering, such as: The problem of identifying and dealing with inconsistencies; evolving system requirements; requirements prioritization; and the quality of specifications with respect to naturalness and compactness. We argue that these problems need to be addressed in a principled, formal way, and that default reasoning provides adequate mechanisms to deal with them.


Author(s):  
V. Wiktor Marek ◽  
Mirosław Truszczyński

2008 ◽  
pp. 1360-1367
Author(s):  
Cesar Analide ◽  
Paulo Novais ◽  
José Machado ◽  
José Neves

The work done by some authors in the fields of computer science, artificial intelligence, and multi-agent systems foresees an approximation of these disciplines and those of the social sciences, namely, in the areas of anthropology, sociology, and psychology. Much of this work has been done in terms of the humanization of the behavior of virtual entities by expressing human-like feelings and emotions. Some authors (e.g., Ortony, Clore & Collins, 1988; Picard, 1997) suggest lines of action considering ways to assign emotions to machines. Attitudes like cooperation, competition, socialization, and trust are explored in many different areas (Arthur, 1994; Challet & Zhang, 1998; Novais et al., 2004). Other authors (e.g., Bazzan et al., 2000; Castelfranchi, Rosis & Falcone, 1997) recognize the importance of modeling virtual entity mental states in an anthropopathic way. Indeed, an important motivation to the development of this project comes from the author’s work with artificial intelligence in the area of knowledge representation and reasoning, in terms of an extension to the language of logic programming, that is, the Extended Logic Programming (Alferes, Pereira & Przymusinski, 1998; Neves, 1984). On the other hand, the use of null values to deal with imperfect knowledge (Gelfond, 1994; Traylor & Gelfond, 1993) and the enforcement of exceptions to characterize the behavior of intelligent systems (Analide, 2004) is another justification for the adoption of these formalisms in this knowledge arena. Knowledge representation, as a way to describe the real world based on mechanical, logical, or other means, will always be a function of the systems ability to describe the existent knowledge and their associated reasoning mechanisms. Indeed, in the conception of a knowledge representation system, it must be taken into attention different instances of knowledge.


Author(s):  
Thomas Eiter ◽  
Wolfgang Faber ◽  
Gerald Pfeifer

This chapter introduces planning and knowledge representation in the declarative action language K. Rooted in the area of Knowledge Representation & Reasoning, action languages like K allow the formalization of complex planning problems involving non-determinism and incomplete knowledge in a very flexible manner. By giving an overview of existing planning languages and comparing these against our language, we aim on further promoting the applicability and usefulness of high-level action languages in the area of planning. As opposed to previously existing languages for modeling actions and change, K adopts a logic programming view where fluents representing the epistemic state of an agent might be true, false or undefined in each state. We will show that this view of knowledge states can be fruitfully applied to several well-known planning domains from the literature as well as novel planning domains. Remarkably, K often allows to model problems more concisely than previous action languages. All the examples given can be tested in an available implementation, the DLVK planning system.


2011 ◽  
pp. 456-477 ◽  
Author(s):  
Vassilis Papataxiarhis ◽  
Vassileios Tsetsos ◽  
Isambo Karali ◽  
Panagiotis Stamatopoulos

Embedding rules into Web applications, and distributed applications in general, seems to constitute a significant task in order to accommodate desired expressivity features in such environments. Various methodologies and reasoning modules have been proposed to manage rules and knowledge on the Web. The main objective of the chapter is to survey related work in this area and discuss relevant theories, methodologies and tools that can be used to develop rule-based applications for the Web. The chapter deals with both ways that have been formally defined for modeling a domain of interest: the first based on standard logics while the second one stemmed from the logic programming perspective. Furthermore, a comparative study that evaluates the reasoning engines and the various knowledge representation methodologies, focusing on rules, is presented.


Author(s):  
James D. Jones

“Expert systems” are a significant subset of what is known as “decision support systems” (DSS). This article suggests a different paradigm for expert systems than what is commonly used. Most often, expert systems are developed with a tool called an “expert system shell.” For the more adventurous, an expert system might be developed with Prolog, a language for artificial intelligence. Both Prolog and expert system shells stem from technology that is approximately 30 years old.1 There have been updates to these platforms, such as GUI interfaces, XML interfaces, and other “bells and whistles.” However, the technology is still fundamentally old. As an analogy, the current technology is akin to updating a 30-year-old car with new paint (a gooey interface), new upholstery, GPS, and so forth. However, the car is fundamentally still a 30-year-old car. It may be in far better shape than another 30-year-old car without the updates, but it cannot compete from an engineering perspective with current models.2 Similarly, the reasoning power of current expert system technology cannot compete with the reasoning power of the state of the art in logic programming. These advances that have taken place in the logic programming community since the advent of Prolog and expert system shells include: a well developed theory of multiple forms of negation, an understanding of open domains, and the closed world assumption, default reasoning with exceptions, reasoning with respect to time (i.e., a solution to the frame problem and introspection with regard to previous beliefs), reasoning about actions, introspection, and maintaining multiple views of the world simultaneously (i.e., reasoning with uncertainty). This article examines a family of logic programming languages. This article in conjunction with a companion article this volume, Knowledge Representation That Can Empower Expert Systems, suggest that logic programs employing recent advances in semantics and in knowledge representation provide a more robust framework in which to develop expert systems. The author has successfully applied this paradigm and these ideas to financial applications, security applications, and enterprise information systems.


Sign in / Sign up

Export Citation Format

Share Document