1984•Libraries and Cultural Resources (University of Calgary)Open access

Discrete event simulation in prolog

John J. Cleary, Kim-Siew Goh, Brian W. Unger

Open full text 6 citations

Abstract

A logic programming language for simulation is presented along with several examples of its use. This language uses the same primitives as Concurrent Prolog with the addition of delay expressions in the guards. An advantage of this approach is that Concurrent Prolog programs can be prototyped and debugged via simulation after which the delay expressions can be ignored to produce the final Concurrent Prolog program. Limited backtracking is supported in the initial language interpreter which is written in standard Prolog. This enables alternate paths in a simulation to be explored for acceptable solutions. As in Concurrent Prolog a declarative interpretation of a program is possible. That is, a Concurrent Prolog program can be considered as a set of axioms in first order logic.

About this research paper

What this paper is about

A logic programming language for simulation is presented along with several examples of its use. This language uses the same primitives as Concurrent Prolog with the addition of delay expressions in the guards. An advantage of this approach is that Concurrent Prolog programs can be prototyped and debugged via simulation after which the delay expressions can be ignored to produce the final Concurrent Prolog program. Limited backtracking is supported in the initial language interpreter which is written in standard Prolog. This enables alternate paths in a simulation to be explored for acceptable solutions. As in Concurrent Prolog a declarative interpretation of a program is possible. That is, a Concurrent Prolog program can be considered as a set of axioms in first order logic.

Why it matters

OpenAlex reports 6 citations for this work. Citation counts describe recorded attention and do not establish research quality.

Key contribution

A contribution statement is not available in the OpenAlex record.

Method / approach

Method details are not available in the OpenAlex metadata.

Main findings

Findings are not separately available in the OpenAlex metadata.

Limitations

Limitations are not available in the OpenAlex metadata.

Applications

Application details are not available in the OpenAlex metadata.

Available abstract

A logic programming language for simulation is presented along with several examples of its use. This language uses the same primitives as Concurrent Prolog with the addition of delay expressions in the guards. An advantage of this approach is that Concurrent Prolog programs can be prototyped and debugged via simulation after which the delay expressions can be ignored to produce the final Concurrent Prolog program. Limited backtracking is supported in the initial language interpreter which is written in standard Prolog. This enables alternate paths in a simulation to be explored for acceptable solutions. As in Concurrent Prolog a declarative interpretation of a program is possible. That is, a Concurrent Prolog program can be considered as a set of axioms in first order logic.

Key concepts: Prolog, Computer science, Event (particle physics), Programming language, Quantum mechanics, Physics

Related papers

Back to paper searchBrowse research topicsOriginal source
Discrete event simulation in prolog — Research Paper | ScholarLens