CMU Artificial Intelligence Repository
 
   
   
   
   
  
ALE: Attribute Logic Engine
lang/prolog/code/parsing/ale/
ALE (Attribute Logic Engine) is a freeware system implemented in
Prolog that integrates phrase structure parsing and constraint logic
programming with typed feature structures as terms.  Types are
arranged in an inheritance hierarchy and specified for the features
and value types for which they are appropriate.  Grammars may also
interleave unification steps with logic program goal calls (as can be
done in DCGs), thus allowing parsing to be interleaved with other
system components. While ALE was developed to handle HPSG grammars, it
can also execute PATR-II grammars, DCG grammars, Prolog, Prolog-II,
and LOGIN programs, etc. With suitable coding, it can also execute
several aspects of LFG grammars.
Grammars and programs in ALE are specified with a typed version of
Rounds-Kasper attribute value logic, which includes variables, macros,
full disjunction, and inequations. Programs are then compiled into
low-level Prolog instructions corresponding to the basic operations of
the typed Rounds-Kapser logic.  There is a strong type discipline
enforced on descriptions, allowing many errors to be detected at
compile-time.
The parsing and logic programming systems may be used independently or
together.  ALE's parsing system supports lexical rules and empty
categories for grammars, using a bottom-up, all-paths dynamic chart
parser.  The general lexical rule component includes procedural
attachment and general methods for orthographic transformations using
pattern matching or Prolog.  A mini-interpreter is included for
stepping through the parsing process.  ALE's logic programming system
supports last call optimization (but does not perform any argument
indexing), negation by failure and cuts in definite clauses, which may
be used independently or integrated into grammars. Both the phrase
structure and logic programming components of the system allow
parametric macros to be defined and freely employed in descriptions.
The language allows hooks to general Prolog routines, allowing the
grammars and programs to be embedded in Prolog, and thus also in C and
Unix.
The efficiency of the system depends on first-argument indexing,
last-call optimization, and for the chart parser, the indexing of
dynamic clauses.
The current system is distributed with a number of sample grammars,
including a fairly comprehensive implementation of a head-driven
phrase structure grammar for English following (Pollard and Sag 1994:
Chapters 1--5, 7, and 8), a small version of the Zebra Puzzle
demonstrating the use of ALE for logic puzzles, and the phonological
and categorial grammars used as examples in the documentation.
Functional Extensions in Version 2.0
  -- inequations
  -- extensional identity conditions
  -- general constraints on types
  -- mini-interpreter
  -- enhanced error detection
  -- hooks to Prolog
See Also: 
   software/nlp/parsing/
Origin:   
   j.gp.cs.cmu.edu:/usr1/carp/ftp/
   as the files ale.*
Version:      2.0.2 (23-JAN-95)
Requires:     Prolog
Ports:        SICStus Prolog 2.1 #8, Quintus Prolog (see readme.txt for
              Quintus patches).
Copying:      The system and its documentation are available without
              charge for research purposes, although the authors
              retain the copyright and any redistribution must be be
              complete.
              
              Please send carp@lcl.cmu.edu an email message if you are
              using the system.
Updated:      Tue Jan 24 17:53:09 1995
CD-ROM:       Prime Time Freeware for AI, Issue 1-1
Bug Reports:  Bob Carpenter 
Mailing List: To be added to the mailing to be informed of updates,
              send email to carp@lcl.cmu.edu.
Author(s):    Bob Carpenter 
              Gerald Penn 
              
              Quintus patches by
              Thilo Goetz 
              John Griffith 
              Seminar fuer Sprachwissenschaft, Universitaet Tuebingen
Contact:      Bob Carpenter 
              Laboratory for Computational Linguistics
              Philosophy Department
              Carnegie Mellon University
              Pittsburgh, PA 15213
              
              Tel: (412) 268-8043
              Fax: (412) 268-1440
Keywords:
   ALE, Attribute Logic Engine, Authors!Carpenter, Authors!Penn, 
   Chart Parsing, DCG, English Grammar, HPSG, Logic Programming, 
   PATR-II, Parsing, Prolog!Code, Prolog!Parsing, 
   Rounds-Kasper Attribute Value Logic, 
   Typed Feature Structures, Zebra Puzzle
References:
   The user's guide is included in the distribution, as are two sample
   grammars. 
   
   Bob Carpenter and Gerald Penn (1992) ALE 2.0 User's Guide.
   Carnegie Mellon University Laboratory for Computational
   Linguistics Technical Report.  Pittsburgh.
Last Web update on Mon Feb 13 10:33:51 1995 
AI.Repository@cs.cmu.edu