In higher-order logic programming, set abstractions are often used for auxiliary predicates that do not have to be named. This paper presents a simple logic for reasoning about set abstractions. The semantics is more ...
详细信息
In higher-order logic programming, set abstractions are often used for auxiliary predicates that do not have to be named. This paper presents a simple logic for reasoning about set abstractions. The semantics is more tractable in the sense that the equality of terms corresponds to α-equivalence. A strongly restricted variant of β-reduction, called top β-reduction, is introduced for evaluating set memberships as atomic formulas. This enables us to incorporate set abstractions into a logic without the complications of higher-order functions.
The following problem will be considered: from scattered examples on the behavior of a dynamic system induce a description of the system. For the induced description to be concise and modular, we use a generic action ...
详细信息
The aim of this paper is to present an implementation of the `General Representation Formalism', a formalism to represent temporal knowledge, based on Constraint logic programming. The work is a result of the ESPR...
详细信息
The aim of this paper is to present an implementation of the `General Representation Formalism', a formalism to represent temporal knowledge, based on Constraint logic programming. The work is a result of the ESPRIT Project EQUATOR which focused on new formalisms and tools for developing applications requiring sophisticated time-related reasoning techniques. The General Representation Formalism is an extension of the Event Calculus due to R. Kowalski and M. Sergot. Its implementation here presented has been used to develop several parts taken from the EQUATOR demonstrators relevant to the Air and Urban Traffic Control application areas.
We present a progress report on ongoing work to investigate topologies on spaces of interpretations in which one obtains the continuity of the operators associated with the well-founded, and alternating fixed-point se...
详细信息
Partial evaluation is a program transformation that automatically specializes a program with respect to invariants. Despite successful application in areas such as graphics, operating systems, and software engineering...
详细信息
Partial evaluation is a program transformation that automatically specializes a program with respect to invariants. Despite successful application in areas such as graphics, operating systems, and software engineering, partial evaluators have yet to achieve widespread use. One reason is the difficulty of adequately describing specialization opportunities. Indeed, underspecialization or overspecialization often occurs, without any feedback as to the source of the problem. We have developed a high-level, module-based language allowing the program developer to guide the choice of both the code to specialize and the invariants to exploit during the specialization process. To ease the use of partial evaluation, the syntax of this language is similar to the declaration syntax of the target language of the partial evaluator. To provide feedback, declarations are checked during the analyses performed by partial evaluation. The language has been successfully used by a variety of users, including students having no previous experience with partial evaluation.
We present a formal model for reasoning about probabilistic information in STRIPS style planning. We then show that all probabilistic planning problems expressible in this model may be represented as equivalent probab...
详细信息
Central to constraint logic programming (CLP) languages is the notion of a global constraint solver which is queried to direct execution and to which constraints are monotonically added. We present a methodology for u...
详细信息
ISBN:
(纸本)0897915607
Central to constraint logic programming (CLP) languages is the notion of a global constraint solver which is queried to direct execution and to which constraints are monotonically added. We present a methodology for use in the compilation of CLP languages which is designed to reduce the overhead of the global constraint solver. This methodology is based on three optimizations. The first, refinement, involves adding new constraints, which in effect make information available earlier in the computation, guiding subsequent execution away from unprofitable choices. The second, removal, involves eliminating constraints from the solver when they are redundant. The last, reordering, involves moving constraint addition later and constraint removal earlier in the computation. Determining the applicability of each optimization requires sophisticated global analysis. These analyses are based on abstract interpretation and provide information about potential and definite interaction between constraints.
作者:
Caires, LuisDI-FCT
Universidade Nova de Lisbon Monte da Caparica2825 Portugal
Due to its ability to handle resources in a finely controlled way, linear logic is being adopted as a foundation of several logic programming and specification languages in which some notions of state can be modelled....
详细信息
Tabling can be implemented in a (WAM-based) Prolog system by means of SLG-WAM: consumers suspend and their state is preserved by freezing the execution stacks. XSB is a system that currently implements tabling based o...
详细信息
Our Faculty embarked a few years ago on an ambitious project to redesign itself around an integrated information system, aimed at supporting all information handling activities and deployed through dynamic Web interfa...
详细信息
ISBN:
(纸本)3540003894
Our Faculty embarked a few years ago on an ambitious project to redesign itself around an integrated information system, aimed at supporting all information handling activities and deployed through dynamic Web interfaces automatically customized for individual users. The project includes both the design of the services and the development of appropriate software technology to implement them. It led already to a running system, supporting many official academic procedures, which is under constant evolution. The system architecture is fully based on Prolog, connected to an external database engine. This paper summarizes and discusses the characteristics that make Prolog a vehicle of choice for the implementation, along with a sketch of main aspects of the system architecture and the specific declarative techniques that were developed for them. The recurring methodological gain is the ease of building abstraction layers supported by specific term sub-languages, due to the combination of flexible operator syntax with the power of the underlying machinery to define new constructs. The basic programming layer evolved from standard Prolog to a novel structured version of it, with compositional semantics (no cuts) and direct support for structural abstraction and application, combining in practice the logic programming style with the higher-order power and some of the programming flavour of functional languages. The system's main architectural glue is the conceptual scheme, for which a definition language was developed whose expressions are compiled (by Prolog) to induce the database tables and (the instantiation of) a query/update language with a syntax based on compositionality principles of natural language, whose expressions are both more natural and much more compact than the equivalent in SQL.
暂无评论