Change search
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf
GCLA: the design, use and implementation of a program development system
Stockholm University, Faculty of Social Sciences, Department of Computer and Systems Sciences.
1993 (English)Doctoral thesis, comprehensive summary (Other academic)
Abstract [en]

We present a program development system, GCLA (Generalized horn Clause LAnguage*), which is based on a generalization of Horn clauses (e.g. Prolog). This generalization takes a quite different view of the meaning of a logic program - a "definitional" view rather than the traditional logical view.

GCLA is based on the formalism partial inductive definitions, an extension of ordinary inductive definitions. To each partial inductive definition a sequent-like calculus is associated. One of the most important derivation rules of partial inductive definitions is the rule of definitional reflection (also named D-). The principle of definitional reflection enables us to derive conclusions from assumed assertions, and it includes the computation of a minimal substitution from a given atom and the heads of a given definition, called the generation of an A-sufficient substitution. Generating an A-sufficient substitution is a quite complex operation, but can be reduced to a look-up table in runtime by a precomputation at compile time.

The possibility of nesting hypothetical conditions makes GCLA suitable for different kinds of hypothetical reasoning, such as expert systems and default reasoning, but it also includes functional programming and a kind of object oriented programming as special cases. GCLA has been used as a prototyping tool in an application for planning the construction of a building. This planning process is divided into two main phases, the choice-of-method phase and the scheduling phase. The choice-of-method phase gives a set of activities, which when scheduled form the plan to construct the building. The scheduling phase is a simulation of the construction, where resources are allocated to activities to determine their duration, and the different interdependencies of tire activities are taken into account.

The drawback of having a powerful formalism as the basis for a programming system is that the issue of control becomes important. The approach taken in GCLA is to develop two different levels of representation: one object level which encodes the declarative content of the application, and one control level which encodes the procedural content of the application. The control level defines inference rules and search strategies for drawing conclusions from the object level definition. The control level can be compiled to a Prolog program, which interprets the object level definition.

Place, publisher, year, edition, pages
Stockholm: Stockholm University, 1993. , p. 38
Series
SICS dissertation series, ISSN 1101-1335 ; 12
National Category
Engineering and Technology
Identifiers
URN: urn:nbn:se:su:diva-173787Libris ID: 8370927ISBN: 91-7153-148-3 (print)OAI: oai:DiVA.org:su-173787DiVA, id: diva2:1356210
Public defence
1993-10-22, Sal F2, Electrum, Kistagången 16, Stockholm, 13:00
Note

Härtill 5 uppsatser

Available from: 2019-10-01 Created: 2019-10-01 Last updated: 2019-10-24Bibliographically approved

Open Access in DiVA

No full text in DiVA

Other links

PDF (Not accessible to users outside Sweden)
By organisation
Department of Computer and Systems Sciences
Engineering and Technology

Search outside of DiVA

GoogleGoogle Scholar

isbn
urn-nbn

Altmetric score

isbn
urn-nbn
Total: 8 hits
CiteExportLink to record
Permanent link

Direct link
Cite
Citation style
  • apa
  • ieee
  • modern-language-association-8th-edition
  • vancouver
  • Other style
More styles
Language
  • de-DE
  • en-GB
  • en-US
  • fi-FI
  • nn-NO
  • nn-NB
  • sv-SE
  • Other locale
More languages
Output format
  • html
  • text
  • asciidoc
  • rtf