Abstract
Efficient algorithmic solutions are known for many problems in geometric modeling. Most algorithms are best implemented in a procedural programming language. For other problems, especially in interactive programs, no procedures may be found easily, but we may formulate the knowledge of our problem in a descriptive way with facts and ruies. Prolog is an appropriate language for finding solutions in the latter case. On the other hand, Prolog does not support efficiently the writing of procedures and arithmetic, which are still essential for solving geometrical problems.
We describe how a geometrical construction problem may be solved with Prolog. For computations such as line intersections, or for graphic display, we use the procedural programming language Modula-2. In order to combine the two languages we designed an interface language ‘logula’. An easy-to-use notation allows an application programmer to add new ‘built-in’ predicates, which are implemented as Modula-2 procedures.
Preview
Unable to display preview. Download preview PDF.
References
W.F. Clocksin, C.S. Mellish, Programming in Prolog. Springer-Verlag Berlin, Heidelberg, NewYork, 1981.
IF/Prolog User's C-interface Manual Version 1.0 edited by Preben Folkjaer, Ute Leibrandt, Lawrence Bernhard, InterFace Computer GmbH München.
Peter Schorn, Thomas Schulz Manual for ‘Lilith-Prolog’ and ‘Logula’ Semesterarbeit, Institut für Informatik ETH Zürich, 1984
Tadeusz Szuba, PC-PROLOG for process control applications. Angewandte Informatik 4/84.
N. Wirth, The Personal Computer Lilith. ETH Report No., 40 Eidgenössische Technische Hochschule, Institut für Informatik, ETH Zürich, 1981
Niklaus Wirth Programming in Modula-2 Springer-Verlag Berlin, Heidelberg, NewYork, 1983.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1985 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Brüderlin, B. (1985). Using prolog for constructing geometric objects defined by constraints. In: Caviness, B.F. (eds) EUROCAL '85. EUROCAL 1985. Lecture Notes in Computer Science, vol 204. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-15984-3_309
Download citation
DOI: https://doi.org/10.1007/3-540-15984-3_309
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-15984-1
Online ISBN: 978-3-540-39685-7
eBook Packages: Springer Book Archive