GNOSIS(ID:8094/)


for General Natural-Interaction Oriented Operating System for Information Services

Hybrid of Prolog and MUMPS in Winfried Boeing, Treuhanseminar, University of Cologne, D-5000 Koeln, West Germany






Related languages
MUMPS => GNOSIS   Augmentation of
Prolog => GNOSIS   Incorporated features of
GNOSIS => proto-Gnosis   Implementation of

References:
  • Uchida/Suzuki/Smith/Wakai, Set GNOSIS=MUMPS+Prolog, MUG Quarterly, Vol. XV No. 3, p. 14-19, 1985 view details
  • Mumps System Laboratory, GNOSIS User's Manual, Version 1, Nagoya, 10. October 1986 view details
  • Mumps System Laboratory, Specification of Language GNOSIS (NOUS-overseas), Nagoya, October 1986 view details
  • Boeing, Winfried "Intelligent information retrieval with proto-Gnosis" ACM SIGBIO Newsletter 9(4) December 1987 pp19-21 view details Abstract: This paper describes first experiences with the language proto-GNOSIS, a hybrid of MUMPS and PROLOG. The objective of the GNOSIS project is to create a GNOSIS shell, specified as a superset of X/OPEN capabilities. The shell will also be used at the University of Cologne to develop an intelligent information retrieval (IIR) system. This paper outlines an approach for IIR and illustrates the problem. Some mechanisms for an IIR system are discussed briefly. Then some examples form the GNOSIS language extensions are given.

    External link: Online copy bib:
    @article{62161,
    author = {Winfried Boeing},
    title = {Intelligent information retrieval with proto-Gnosis},
    journal = {SIGBIO Newsl.},
    volume = {9},
    number = {4},
    year = {1987},
    issn = {0163-5697},
    pages = {19--21},
    doi = {http://doi.acm.org/10.1145/62158.62161},
    publisher = {ACM Press},
    } Extract: Overview
    About the GNOSIS project

    GNOSIS  is  an  abbreviation  for  General  Natural interaction Oriented Operating System for Information Services

    An initial prototype of GNOSIS, called proto-GNOSIS, consists of a language interpreter for MUMPS (ANSI/MDC  x.11.1 - 1984) and language extensions taken from PROLOG.

    Proto-GNOSIS has been developed  by the  MUMPS System Laboratory in Nagoya, Japan, and it is part of a GNOSIS project.  The objective of the project is the specification of an applications profile for a 5th generation language, preferably based on international standards like those of ISO and ANSI. The language objectives should be similar to the objectives of MUMPS; the language should be portable and transferable and independent of the type of computers or the methods of implementation

    The concept of the GNOSIS project follows the objectives of the X/OPEN Group.  The  formation of the X/OPEN Group represents a major initiative by an international group of suppliers to create a free and open market for software by establishment of a Common Applications Environment.  Therefore, a portability guide with the chapters SYSTEM V,   C-LANGUAGE,   OTHER   PROGRAMMING  LANGUAGES (COBOL,  Fortran),  DATA  MANAGEMENT  (ISAM)  and SOURCE CODE TRANSFER BETWEEN MACHINES has been published by the X/OPEN Group. Beyond this, the GNOSIS project also intends to provide portability, with a special interest in interfacing industrial standards, like the UNDX system call, CODASYL's Screen Management System  (SMS), the  Graphics  Kernel System (GKS),  the  Manufacturing Automation Protocol (MAP), and the Technical Office Protocols (TOP).

    The University of Cologne has been using proto-GNOSIS for some months now. In 1983, the Treuhandseminar at the University developed a retrieval system for literature using  MUMPS. The system is used by students and academic staff.  A detailed overview of its capabilities was given in 1985

    At this stage, we intend to use GNOSIS for a more sophisticated approach to literature search.  This should provide benefits to the students, such as:

    ?  shorter connect time with the host computer
    ?  increased hit rates of the source documents
    ?  more qualified and relevant choice of literature

    A common portable environment could also provide the students with easier access to the system

    In the following article, we will clarify what intelligent information retrieval (IIR) means. Then we will provide an in depth description of the use of IIR systems for access to public databases   Finally we will point out how GNOSIS works.
    Extract: Intelligent Information Retrieval
    Intelligent Information Retrieval

    Public databases.

    One main area of open systems interconnection is the access to databases. American companies are in a leading position in the world in this area; for example. DIALOG has more than 400 databases In Germany and in Europe, online connections to hosts are not in as high demand as in the US.

    A German program called JOUR-FIZ II screened the online information and documentation retrieval for journals  and newspapers  The project was supported from 1982 to 1984 by the German Government. The results revealed that an extended system with source documents has economical advantages. Internally this provides competitive advantages; externally the stored information can be sold.  Consequently, a good in formation retrieval system is required.

    The benefit of a computerized retrieval system is the possibility of combining multiple criteria for searching for  information.  But today most computer applications are not flexible enough to operate without predefined structures for information retrieval  Single items and words are limited to functions they are related to. For example, in conventional retrieval languages like the Common Command Language for European hosts, it is necessary to mark  the word AND in a specific way if it is a searched string like  "ANDY"  and not an operand, as  in "Data AND Management".  An application is needed which has less formal structures and is easy to use.
    Extract: MUMPS Language Extensions Provided by GNOSIS
    MUMPS Language Extensions Provided by GNOSIS

    The  PROLOG  features of GNOSIS  are  used to describe  the problem.  Usually a description consists of three  components.  First, names and structures of objects involved in the problem. Second, names of relations that are known to exist between the objects. And third, facts and rules describing these relations.

    GNOSIS uses facts and rules. A GNOSJS program consists of a list of logical statements, either in form of facts such as:

    The book "Trusted Computer System Evaluation Criteria" from the DoD is ORANGE

    or in the form of rules such as:

    You will get help  if you press the button ESCAPE and you enter an expression for support.

    Then deductions are possible.  Given the facts:

    Support expressions are "???" and "HELP" or any abbreviation of these.

    the system can deduce that ESCAPE and "H" is a cry for help.  The user can even give a goal to the program like:

    Find every possible combination of help characters.

    GNOSIS enhances the MUMPS language for the description of a problem with two new literals, a list literal and a predicate literal. List literals are used to describe and evaluate a group of literals.  This group is tree-structured, and it can consist of values of variables, subscripts or expression atoms. Predicate literals are used as a blueprint for all given relations, like

    #paper("author",["Uchida","Suzuki","Smith","Wakai"])

    New GNOSIS functions support the management of the literals, including the following:

    ?  $LAPPEND appends a list of literals

    ?  $LEXTRACT extracts one or more terms from the list

    ?  $LFIND finds literals from the list

    ?  $LLENGTH counts the number of literals in the list

    An unary operator "&" supports list processing in GNOSIS. It is used to list expression atoms; for instance X and Y are literals from a list, X=["database"] and Y=["management"]. Then the unary operator creates anew literal, &(X_Y) =["databasemenagement"].

    A PROVE command is the execution of predicate calculus, the so-called inference machine. PROVE sets the $TEST variable to 1, if facts are found in the  MUMPS  knowledge database,  for instance PROVE [#paper] is true.