Download Latest Version galliwasp-1.3.5.tar.gz (207.6 kB)
Email in envelope

Get an email when there's a new version of Galliwasp

Home / 1.0.1
Name Modified Size InfoDownloads / Week
Parent folder
gasp-1_0_1.tar.gz 2013-03-20 37.2 kB
README.TXT 2013-03-20 4.2 kB
Totals: 2 Items   41.4 kB 0
GASP 1.0.1 -- Goal-Directed Answer Set Programming
http://www.utdallas.edu/~kbm072000/gasp/

OVERVIEW
  GASP is a goal-directed answer set solving system for normal logic programs.
  The software consists of two parts: the compiler and the interpreter. A
  grounder capable of producing text-format grounded programs, such as lparse
  with the -t switch, is required but not included. The compiler is written in
  Prolog, while the interpreter is written in standard C. It has been
  successfully built under Linux uxing gcc and Windows using MinGW.

LICENSE
  GASP is distributed under GNU Public Licence, see the file COPYING.TXT for
  details.

PACKAGE CONTENTS
  COPYING.TXT     - GNU Public Licence
  Makefile        - The main Makefile for the project
  README.TXT      - This file
  src/            - Source code directory for the interpreter
  plsrc/          - Source code directory for the compiler

CHANGELOG
  GASP 1.0.1: Monday, May 7, 2012
    * fixed a bug which allowed all clauses of an NMR sub-check to be disabled
      without failure occuring, which could result in invalid answer sets being
      returned

INSTALLATION
  Building GASP requires the GNU Compiler Collection (GCC), SWI Prolog, and GNU
  make. It is also assumed that the commands 'gcc', 'swipl' and 'make', may be
  used to invoke the three, respectively. Building has been tested using GCC
  version 4.5.2, SWI-Prolog 64-bit version 5.11.25 and GNU make version 3.81.

  To build the compiler and interpreter, simply type 'make' from the project
  directory. This will create two executables, 'gasp', the interpreter, and
  'gaspc', the compiler, which can then be moved as needed.

USAGE
  To execute a program, it must first be compiled. The compiler accepts grounded
  normal logic programs in text format, such as those produced by the lparse
  grounder using the -t switch. Optionally, the programs may contain a 'compute'
  statement, indicating the number of solutions to compute and the query to
  execute if the interpreter is run in automatic mode, e.g.
        compute N { q1,...,qn }.
  where N is the number of solutions to compute and the list of literals in
  braces forms the query.

  The compiler reads problem instances from a given file and writes them to
  either stdout or a file specified with the -o switch:
        gaspc inputfile
        gaspc inputfile -o output file

  To see an overview of the compiler's commandline options, type
        gaspc -h
  or
        gaspc -?

  Once a program has been compiled, the compiled version can be read by the
  interpreter from stdin or a file, e.g.
        gaspc inputfile | gasp
        gasp <compiledinput>

  The compile can run in either automatic or interactive modes. Interactive mode
  can only be used if the compiled program is read from a file rather than
  stdin. To run in automatic mode, the program instance must contain a compute
  statement. When available, the interpreter will default to automatic mode.
  Otherwise, the interpreter will run in interactive mode. The '-i' switch can
  be used to force the interpreter to use interactive mode, ignoring the compute
  statement, if present, e.g.
        gasp -i <compiledinput>

  For an overview of the available commandline options, type
        gasp -h
  or
        gasp -?

  When run in automatic mode, the interpreter will simply execute the query
  given by the compute statement to find partial answer sets and print them,
  stopping when the specified number of sets has been computed or no more sets
  satisfying the query exist.

  In interactive mode, the user will be presented with a prompt to enter a
  query. For an overview of valid queries, enter 'help.' at the prompt. To exit
  the interpreter when finished, enter 'exit.' at the prompt. After each answer
  set has been printed, the user can enter '.' to accept the set and return to
  the query prompt. Alternatively, the user can enter ';' to reject the set and
  find the next one, if it exists. In this way,a user can find as many answer
  sets as desired. Finally, entering 'h' at the prompt will give an overview of
  both options.
Source: README.TXT, updated 2013-03-20