Logic Programming
The language Euclid
Computer Typesetting
Thematic Libraries

Research Interests

Logic Programming, AI and Scientific Knowledge Representation

Logic programming defines the computing paradigm for a set of languages which in cotrast with imperative languages define the problem at hand using standard mathematical logic. Prolog, the best known example, is based on a subset of First Order Logic. Scientific Knowledge Representation is the field of AI which deals with encoding mathematical scientific knowledge. Mathematical formalism allows the definition of physical theories using formal languages (see for example how the gravitational theory of Newton is described using the mathematical formalism of Einstein's General Theory of Relativity in K J Dryllerakis, Newton-Cartan Space Time, MSc Thesis, Imperial College, 1990).

Logic Programming languages are very well suited for Knowledge Representation and problem solving. Unfortunatelly in the domain of Scientific Knowledge Representation were a lot of the information is encoded in mathematical terms, traditional programming languages cannot cope. One solution may be to restrict ourselves to qualititative reasoning (see K J Dryllerakis, Qualitative Reasoning about Physical Systems, MSc Thesis, Imperial College 1991). Another solution involves the use of the Contraint Logic Programming paradigm which introduces constraint domains in an LP language envrionemnt. Those domains provide direct computation over one fixed domain (e.g. the real numbers).

The language CLP(R) which is based on the domain of real numbers and can be extended to handle meta-level mechanisms like constructive negation (see the article K J Dryllerakis, Residual SLDNF in CLP languages, 1992 or the source code). It has been shown that CLP languages may be better suited for representing the Event Calculus knowledge representation scheme (as developed by Prof Kowalski et al.) than prolog (see the article K J Dryllerakis, Results form implementing the Event Calculus in CLP(R), 1992) or download the source code).

top of page

Domain Logic Programming and the language Euclid

Domain Logic Programming is an extension of Constraint Logic Programming allowing handling of multiple domains. It constitutes a logical framework for Knowledge Representation and Problem Solving in domains involving mainly mathematics (Physics, Engineering, etc.). You may read more about Domain Logic Programming, its theoretical foundations and the formal definition of the programming language scheme in my PhD Thesis (Imperial College). The language Euclid (see the online presentation Euclid the Language, 1994) is a direct implementation of the scheme. The current prototype was written in Quintus Prolog, C and uses Mathematica and CLP(R) as external domain solvers under SunOS 4.0.1. Euclid, currently offers a wide range of domains and more may be added along the way. A good way to understand Euclid is through examples. Systems of interacting components (a problem frequently encountered in Logic Programming circles) can be easily solved using Euclid (see K J Dryllerakis, Representing Systems of Interacting Components in Euclid, 1996)

top of page

Electronic Typesetting

Donal Knuth has provided the Scientific Community with a set of high quality Typesetting tools: TeX, a formating language and METAFont a font description language. These were complimented by Leslie Lamport by LaTeX a collection of TeX macros which allows the structured description of documents. The tools were originally designed to handle the English language and internationalisation features were late comers.

GreekTeX provides a package which extends TeX and LaTeX to handle the greek language. It comprises of a set of fonts (based on work by Sylvio Levi), a set of hyphenation patterns and a set of macro tools to help typesetting of greek scientific texts. The package is available from the CTAN archive network. Information on GreekTeX can be found in Dr. D. Filippou's article "Typesetting Greek Texts by TeX and LaTeX - a summary of tools available" (Jan 29, 1991) [,TeX,plain text]

TeX typesetting in Unix environments required numerous iterations of transformations, compilations and conversions, especially for those dealing with Greek texts. The dotex utility script, written in BASH (GNU's Bourne Again Shell) permits a clever handling of TeX files by performing a series of operations until the user is presented with a final copy of a dvi or postscript file. The tools runs on all flavours of Unix and under Windows NT using the Cygnus Port of the bash shell. A description of the tool can be found in the article "Dr. K J Dryllerakis, TeX and Friends" published in the serial Το Εύτυπον (No 2, April 1999 ISSN 1108-4170), the main publication of the Greek TeX's Friends (EFT).

top of page

Thematic Libraries - MARC format.

Thematic Libraries.
In Greece, the notion of a local thematic library was established by the work of Legrand "Bibliographie Ionienne" which was published by Pernot in 1910. In its conception it represents a collection of books about the Ioanian Islands. Pernot has defined a set of rules to decide which books to include in the collection and these rules are also used today by those building local thematic libraries.
The Island of Crete, the southernmost piece of land of Europe has been much visited and loved in the past 4 centuries. It has also been the place of fightings and sieges (like the 25 year siege of its capital Candia which in 1669 surrendered the island to the Ottomans), upheavals and uprisings against the ocasional occupiers of the island. Books on the island of Crete can be found as early as 1524 and include war descriptions as well as travelling experiences. Yet no comprehensive bilbiographical guide has been published to date. The currently existing bibliographical guides on the island of Crete have focused mostly on books published in the greek language. The salient general bibliographical guides for Crete are:

  • Εμμανουήλ Β. Σπαχής, Συμβολή εις την Κρητικήν Βιβλιογραφία 1554-1966 (Αθήνα 1966)
  • Γ.Π. Εκκεκάκης, Τα Κρητικά Βιβλία, Τομ. Β. 1864 - 1913 (Ρέθυμνο 1990)

The article "K J Dryllerakis, A contribution to Cretan Bibliography between the years 1524-1870" (pre-print) has been created by direct consultation of catalogues from major Libraries around the globe. Certain libraries already provide electronic access to their catalogues. Advances in the IT organisation of libraries should permit a much more complete compilation of bibliographical guide in the near future.

Handling MARC Bibliographical Lists
MARC 21 is a standard used by libraries worldwide in order to describe bibliographic records (see the Library of Congress MARC pages). Despite the fact that the format has been created in the 60s and was optimised for sequential access media, it is still much in use today and libraries like the Library of Congress will provide bibliography researchers with a MARC encoded file. Parsing MARC records can be both tedious and annoying if you want to import data in your own bibliographical system. The MARCRecord parse class is a set of object definitions and functions written in VBA (Visual Basic for Applications) that will parse the record for you (see the source code).

Quintus Prolog is a trademark of Quintus Corporation. CLP(R) is copyrighted by IBM Watson Research Centre.