scispace - formally typeset
Book ChapterDOI

An Opportunistic Approach for Logic Program Analysis and Optimisation Using Enhanced Schema-Based Transformations

TLDR
An opportunistic approach for performing program analysis and optimisation is proposed: opportunities for improving a logic program are systematically attempted, either by examining its procedures in an isolated fashion, or by checking for conjunctions within clauses that can be used as joint specifications.
Abstract
We propose an opportunistic approach for performing program analysis and optimisation: opportunities for improving a logic program are systematically attempted, either by examining its procedures in an isolated fashion, or by checking for conjunctions within clauses that can be used as joint specifications. Opportunities are represented as enhanced schema-based transformations, generic descriptions of inefficient programming constructs and of how these should be altered in order to confer a better computational behaviour on the program. The programming constructs are described in an abstract manner using an enhanced schema language which allows important features to be highlighted and irrelevant details to be disregarded.

read more

Citations
More filters
Book ChapterDOI

Synthesis of Programs in Computational Logic

TL;DR: This paper analyzes and compares three state-of-the-art methods for synthesizing recursive programs in computational logic, constructive/deductive synthesis, schema-guided synthesis, and inductive synthesis and explores the synergies between the approaches.
Journal ArticleDOI

Guided programming and automated error analysis in an intelligent Prolog tutor

TL;DR: A Prolog programming technique-based approach to guided programming and automated error analysis in Prolog tutoring is presented and the Prolog Tutor performs well on these tests in terms of programming technique recognition, error detection, and error correction.
Proceedings ArticleDOI

Skeleton-based agent development for electronic institutions

TL;DR: In this paper, the authors describe an approach for semi-automatic agent development, where agents are designed to follow an electronic institution, a formalism to specify open agent organisations, and an initial design pattern is automatically extracted from a given electronic institution.
Journal ArticleDOI

Rapid Prototyping of Large Multi-Agent Systems Through Logic Programming

TL;DR: A method for rapidly building prototypes of large multi-agent systems using logic programming using the use of a description of all permitted interactions among the components of the system, that is, the protocol, as the starting specification.
Journal ArticleDOI

An Abstract Formalization of Correct Schemas for Program Synthesis

TL;DR: A semantic approach is taken and shows that a schema S consists of a syntactic part, namely a template T, and a semantic part, which endows the schema S with a formal semantics, and enables us to define and reason about its correctness.
References
More filters
Book

The Art of Prolog: Advanced Programming Techniques

TL;DR: The Prolog language as discussed by the authors is a language for pure Prolog programming with meta-logical predicates cuts and negation, and it can be used to develop game-playing programs as well as a credit evaluation expert system.
Book

The Craft of Prolog

TL;DR: The emphasis in "The Craft of Prolog" is on using Prolog effectively, and presents a loose collection of topics that build on and elaborate concepts learning in a first course.
Journal ArticleDOI

Learning Prolog in a schema-based environment

TL;DR: A schema-based Prolog programming environment embedding this tutoring system in addition to a standard Prolog development system is proposed which promotes the acquisition and use of structured programming constructs in Prolog.
Journal ArticleDOI

Book review: The Art of Prolog Advanced Programming Techniques by L. Sterling and E. Shapiro (The MIT Press)

TL;DR: PROLOG, logic programming based languages, became very popular in the eighties, taking a circuitous route to the United States; from Europe to Japan to mainstream American computer science.
Book ChapterDOI

Synthesis of Eureka Predicates for Developing Logic Programs

TL;DR: Two strategies are introduced, the Loop Absorption Strategy and the Generalization Strategy, which in many cases determine the new predicates to be defined during program transformation and some classes of programs in which they are successful are presented.