Release: 1 December 2015 (17:53:35 CET)
Copyright ©️ 2003-2018 Richard Moot ([email protected])
Copyright ©️ 2004-2018 CNRS (http://www.cnrs.fr)
Copyright ©️ 2003-2011 INRIA (http://www.inria.fr)
This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
Grail is a modern, flexible and robust parser/automated theorem prover for multimodal categorial grammars. It is designed to allow students and researchers to design and experiment with their grammars while at the same time offer the advanced users many optional optimisation strategies.
Grail can be run either as a command line script or as an application with a graphical interface, with the possibility to follow Grail's partial parses/proof attemps interactively.
The minimum configuration required to run Grail is the following.
- SWI Prolog together with its optional packages, notably XPCE.
- Graphviz
In addition, the following programs are highly recommended and allow you to enjoy some of Grail's more powerful features. Many Unix/Linux installations will have these programs installed.
- gv
- Tclsh
- pdfLaTeX
- a pdf previewer (gv suffices here, but your operating system is sure to provide an alternative)
Grail can be install from this directory by typing.
./configure --prefix=GRAIL_ROOT
make
(sudo) make install
GRAIL_ROOT
will be the root directory of the Grail system, Grail
will install its executables in the bin subdirectory and some of the
image files in the share/Grail
subdirectory of this directory. If you
run the configure script without --prefix option
, installation will
take place with /usr/local/
as the root directory.
The file configure.ac
is fairly rudimentary at the moment, but I
welcome any comments and suggestions for improvement.
A short introduction to using Grail 3 can be found in the manual or by
selecting [Help/About Grail 3...]
from Grail's menu bar.
A more elaborate tutorial can be found at my webpage
http://www.labri.fr/perso/moot/tutorial/
This research was made possible the Centre National de la Recherche Scientifique, the Institut National de Recherche en Informatique et en Automatique, the Laboratiore Bordelais de Recherche en Informatique and the University of Bordeaux.
The files logarr.pl
(for logarithmic access arrays) ordset.pl
(for
ordered sets) and the warshall/2 predicate from graph.pl
are from the
Public Domain DEC-10 Prolog Library. I am indebted to the authors of
those packages for putting their work in the public domain. Any blame
for changes and additions to their code is mine. See the individual
files for changes.
The tree234.pl
library for 2-3-4 trees is a direct adaptation of code
belonging to the Mercury library, a great resource for
logic/functional programs of several standard algorithms, which is
available under LGPL (Mercury itself is released under GPL). I am
responsible for idiosyncratic additions to this code, as well as
modification of the code to use first argument indexing as much as
possible, in addition to any errors this may have produced.
The (experimental) chart.pl
chart parser library is an adaptation of code
from the following article (see
Grail Light for a
type-logical chart parser).
Stuart M. Shieber, Yves Schabes and Fernando C. N. Pereira (1995) `Principles and Implementation of Deductive Parsing', Journal of Logic Programming 24(1-2):3-36