Results 1  10
of
67
Theory of Generalized Annotated Logic Programming and its Applications
 Journal of Logic Programming
, 1992
"... Annotated logics were introduced in [43] and later studied in [5, 7, 31, 32]. In [31], annotations were extended to allow variables and functions, and it was argued that such logics can be used to provide a formal semantics for rulebased expert systems with uncertainty. In this paper we continue to ..."
Abstract

Cited by 210 (25 self)
 Add to MetaCart
(Show Context)
Annotated logics were introduced in [43] and later studied in [5, 7, 31, 32]. In [31], annotations were extended to allow variables and functions, and it was argued that such logics can be used to provide a formal semantics for rulebased expert systems with uncertainty. In this paper we continue to investigate the power of this approach. First, we introduce a new semantics for such programs based on ideals of lattices. Subsequently, some proposals for multivalued logic programming [5, 7, 32, 47, 40, 18] as well as some formalisms for temporal reasoning [1, 3, 42] are shown to fit into this framework. As an interesting byproduct of this investigation, we obtain a new result concerning multivalued logic programming: a model theory for Fitting's bilatticebased logic programming, which until now has not been characterized modeltheoretically. This is accompanied by a corresponding proof theory. 1 Introduction Large knowledge bases can be inconsistent in many ways. Nevertheless, certain...
SSemantics Approach: Theory and Applications
, 1994
"... The paper is a general overview of an approach to the semantics of logic programs whose aim is finding notions of models which really capture the operational semantics, and are therefore useful for defining program equivalences and for semanticsbased program analysis. The approach leads to the intr ..."
Abstract

Cited by 126 (28 self)
 Add to MetaCart
(Show Context)
The paper is a general overview of an approach to the semantics of logic programs whose aim is finding notions of models which really capture the operational semantics, and are therefore useful for defining program equivalences and for semanticsbased program analysis. The approach leads to the introduction of extended interpretations which are more expressive than Herbrand interpretations. The semantics in terms of extended interpretations can be obtained as a result of both an operational (topdown) and a fixpoint (bottomup) construction. It can also be characterized from the modeltheoretic viewpoint, by defining a set of extended models which contains standard Herbrand models. We discuss the original construction modeling computed answer substitutions, its compositional version and various semantics modeling more concrete observables. We then show how the approach can be applied to several extensions of positive logic programs. We finally consider some applications, mainly in the area of semanticsbased program transformation and analysis.
Representing Incomplete Knowledge in Abductive Logic Programming
 In Proc. of the International Symposium on Logic Programming
, 1993
"... Recently, Gelfond and Lifschitz presented a formal language for representing incomplete knowledge on actions and states, and a sound translation from this language to extended logic programming. We present an alternative translation to abductive logic programming with integrity constraints and prove ..."
Abstract

Cited by 61 (10 self)
 Add to MetaCart
Recently, Gelfond and Lifschitz presented a formal language for representing incomplete knowledge on actions and states, and a sound translation from this language to extended logic programming. We present an alternative translation to abductive logic programming with integrity constraints and prove the soundness and completeness. In addition, we show how an abductive procedure can be used, not only for explanation, but also for deduction and proving satisfiability under uncertainty. From a more general perspective, this work can be viewed as asuccessfulexperiment in the declarative representation of and automated reasoning on incomplete knowledge using abductive logic programming. 1
MetaProgramming in Logic Programming
 Handbook of Logic in Artificial Intelligence and Logic Programming
, 1994
"... data types are facilitated in Godel by its type and module systems. Thus, in order to describe the metaprogramming facilities of Godel, a brief account of these systems is given. Each constant, function, predicate, and proposition in a Godel program must be specified by a language declaration. The ..."
Abstract

Cited by 52 (3 self)
 Add to MetaCart
data types are facilitated in Godel by its type and module systems. Thus, in order to describe the metaprogramming facilities of Godel, a brief account of these systems is given. Each constant, function, predicate, and proposition in a Godel program must be specified by a language declaration. The type of a variable is not declared but inferred from its context within a particular program statement. To illustrate the type system, we give the language declarations that would be required for the program in Figure 1. BASE Name. CONSTANT Tom, Jerry : Name. PREDICATE Chase : Name * Name; Cat, Mouse : Name. Note that the declaration beginning BASE indicates that Name is a base type. In the statement Chase(x,y) ! Cat(x) & Mouse(y). the variables x and y are inferred to be of type Name. Polymorphic types can also be defined in Godel. They are constructed from the base types, type variables called parameters, and type constructors. Each constructor has an arity 1 attached to it. As an...
Reflection in logic, functional and objectoriented programming: a short comparative study
 Proc. of the IJCAI’95 Workshop on Reflection and Metalevel Architectures andtheir Applications in AI,1995
"... Département d’informatique et de recherche opérationnelle ..."
Abstract

Cited by 46 (1 self)
 Add to MetaCart
(Show Context)
Département d’informatique et de recherche opérationnelle
Algorithmic Debugging with Assertions
"... Algorithmic debugging, as presented by Shapiro, is an interactive process where the debugging system acquires knowledge about the expected meaning of a program being debugged and uses it to localize errors. This paper suggests a generalization of the language used to communicate with the debugger. I ..."
Abstract

Cited by 40 (5 self)
 Add to MetaCart
Algorithmic debugging, as presented by Shapiro, is an interactive process where the debugging system acquires knowledge about the expected meaning of a program being debugged and uses it to localize errors. This paper suggests a generalization of the language used to communicate with the debugger. In addition to the usual “yes ” and “no ” answers, formal specifications of some properties of the intended model are allowed. The specifications are logic programs. They employ library procedures and are developed interactively in the debugging process. An experimental debugging system incorporating this idea has been implemented. In contrast to some other systems, its diagnosis algorithms do not require instantiation of unsolved goals by the oracle. This is achieved by generalization of the oracle in the incorrectness algorithm, and by adopting a new approach in the insufficiency algorithm. A formal proof of correctness and completeness of the new insufficiency algorithm is presented. Extensions for some Prolog features are discussed.
Axiomatizing Reflective Logics and Languages
 Proceedings of Reflection'96
, 1996
"... The very success and breadth of reflective techniques underscores the need for a general theory of reflection. At present what we have is a wideranging variety of reflective systems, each explained in its own idiosyncratic terms. Metalogical foundations can allow us to capture the essential aspects ..."
Abstract

Cited by 37 (20 self)
 Add to MetaCart
The very success and breadth of reflective techniques underscores the need for a general theory of reflection. At present what we have is a wideranging variety of reflective systems, each explained in its own idiosyncratic terms. Metalogical foundations can allow us to capture the essential aspects of reflective systems in a formalismindependent way. This paper proposes metalogical axioms for reflective logics and declarative languages based on the theory of general logics [34]. In this way, several strands of work in reflection, including functional, equational, Horn logic, and rewriting logic reflective languages, as well as a variety of reflective theorem proving systems are placed within a common theoretical framework. General axioms for computational strategies, and for the internalization of those strategies in a reflective logic are also given. 1 Introduction Reflection is a fundamental idea. In logic it has been vigorously pursued by many researchers since the fundamental wor...
MetaReasoning in Executable Temporal Logic
 Proceedings of the International Conference on Principles of Knowledge Representation and Reasoning (KR
, 1991
"... Temporal logic can be used as a programming language. If temporal formulae are represented in the form of an implication where the antecedent refers to the past, and the consequent refers to the present and the future, then formulae that have their antecedent satisfied can be satisfied by considerin ..."
Abstract

Cited by 34 (14 self)
 Add to MetaCart
(Show Context)
Temporal logic can be used as a programming language. If temporal formulae are represented in the form of an implication where the antecedent refers to the past, and the consequent refers to the present and the future, then formulae that have their antecedent satisfied can be satisfied by considering the consequent as an imperative to be obeyed. Such a language becomes a natural alternative to programming languages, such as Prolog, for temporal reasoning. Here, the approach is extended to include an executable metalanguage. This is of importance in developing interpretation, debugging, loopchecking, and simulation tools, and provides a representation for providing control knowledge in the execution of planning and scheduling programs. 1 Executable Temporal Logic The traditional view of temporal logic is that it represents declarative statements about the world, or about possible worlds over time. Such statements relate the truth of propositions in the past, present and future, and so...
A Metatheory of a Mechanized Object Theory
, 1994
"... In this paper we propose a metatheory, MT which represents the computation which implements its object theory, OT, and, in particular, the computation which implements deduction in OT. To emphasize this fact we say that MT is a metatheory of a mechanized object theory. MT has some "unusual&q ..."
Abstract

Cited by 23 (10 self)
 Add to MetaCart
In this paper we propose a metatheory, MT which represents the computation which implements its object theory, OT, and, in particular, the computation which implements deduction in OT. To emphasize this fact we say that MT is a metatheory of a mechanized object theory. MT has some "unusual" properties, e.g. it explicitly represents failure in the application of inference rules, and the fact that large amounts of the code implementing OT are partial, i.e. they work only for a limited class of inputs. These properties allow us to use MT to express and prove tactics, i.e. expressions which specify how to compose possibly failing applications of inference rules, to interpret them procedurally to assert theorems in OT, to compile them into the system implementation code, and, finally, to generate MT automatically from the system code. The definition of MT is part of a larger project which aims at the implementation of selfreflective systems, i.e. systems which are able to intros...
Metaprogramming in Logic
 ENCYCLOPEDIA OF COMPUTER SCIENCE AND TECHNOLOGY
, 1994
"... In this review of metaprogramming in logic we pay equal attention to theoretical and practical issues: the contents range from mathematical and logical preliminaries to implementation and applications in, e.g., software engineering and knowledge representation. The area is one in rapid development b ..."
Abstract

Cited by 20 (1 self)
 Add to MetaCart
In this review of metaprogramming in logic we pay equal attention to theoretical and practical issues: the contents range from mathematical and logical preliminaries to implementation and applications in, e.g., software engineering and knowledge representation. The area is one in rapid development but we have emphasized such issues that are likely to be important for future metaprogramming languages and methodologies.