Magic sets and other strange ways to implement logic programs (extended abstract)
PODS '86 Proceedings of the fifth ACM SIGACT-SIGMOD symposium on Principles of database systems
Operational and denotational semantics of prolog
Journal of Logic Programming
Foundations of logic programming; (2nd extended ed.)
Foundations of logic programming; (2nd extended ed.)
POPL '87 Proceedings of the 14th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Declarative modeling of the operational behavior of logic languages
Theoretical Computer Science
A logical operational semantics of full Prolog: part 1. Selection core and control
CSL '89 Proceedings of the third workshop on Computer science logic
Termination proofs for logic programs
Termination proofs for logic programs
Concurrent constraint programming
POPL '90 Proceedings of the 17th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Proving termination of logic programs by exploiting term properties
TAPSOFT '91 Proceedings of the international joint conference on theory and practice of software development on Advances in distributed computing (ADC) and colloquium on combining paradigms for software development (CCPSD): Vol. 2
Handbook of theoretical computer science (vol. B)
POPL '77 Proceedings of the 4th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Proving Termination of General Prolog Programs
TACS '91 Proceedings of the International Conference on Theoretical Aspects of Computer Software
Continuation Semantics for PROLOG with Cut
TAPSOFT '89/CAAP '89 Proceedings of the International Joint Conference on Theory and Practice of Software Development, Volume 1: Advanced Seminar on Foundations of Innovative Software Development I and Colloquium on Trees in Algebra and Programming
A general framework for semantics-based bottom-up abstract interpretation of logic programs
ACM Transactions on Programming Languages and Systems (TOPLAS)
Abstract interpretation of resolution-based semantics
Theoretical Computer Science
Hi-index | 0.00 |
The goal of this paper is to construct a semantic basis for the abstract interpretaion of Prolog programs. Prolog is a well-known logic programming language which applies a depth-first search strategy in order to provide a practical approximation of Horn clause logic. While pure logic programming has clean fix-point, model-theoretic and operational semantics the situation for Prolog is different. Difficulties in capturing the declarative meaning of Prolog programs have led to various semantic definitions which attempt to encode the search strategy in different mathematical frameworks. However semantic based analyses of Prolog are typically achieved by abstracting the more simple but less precise declarative semantics of pure logic Programs.We propose instead to model Prolog control in a simple constraint logic language which is presented together with its declarative and operational semantics. This enables us to maintain the usual approach to declarative semantics of logic programs while capturing control aspects such as search strategy and selection rule.