Instructions for installing the Haskell implementation of Dung's argumentation frameworks (AFs)
- Updated Cabal package to include preferred, stable and semi-stable semantics!
- Updated Cabal package to include an Input module allowing files in standard CEGARTIX/PrefSat format to be parsed!
- Updated Cabal package to include an Output module, allowing AFs in this package to be outputted in standard
- Updated Cabal package to include a main executable, allowing input files to be read, argumentation frameworks
to be outputted and evaluated!
- Updated Cabal package to be compatible with our translation from Carneades into Dung!
1. Installing Haskell
To install the Haskell platform and get familiar with basic Haskell see Haskell in 5 steps or directly download and install the Haskell Platform.
2. Download and install the implementation
If familiar with cabal and standard Haskell library installations, Option 1 is advised.
If having problems with installing using cabal, choose Option 2 to install the implementation of Dung's AFs.
- Option 1: Install the cabal package (see Hackage).
- Open a terminal or command line.
- Run cabal update
- Run cabal install Dung
- Run the newly created dungell executable!
(You might need to add the cabal bin directory to your path.)
- Or make your own Haskell module and import Language.Dung.AF
- Hack away or import Language.Dung.Examples (together with import Language.Dung.AF) to play around with existing examples!
See also the documentation of the examples here!
- Option 2: Download the old literate Haskell source file.
- Note: this version is up to grounded semantics as presented for IFL. See the sources of the Cabal package for the full implementation.
- Download the old literate Haskell source file here.
- Call ghci on dunginhaskell_ifl.lhs to load the implementation and the examples.
- Hack away!
3. Using the implementation
For definitions, explanations, and examples of Dung's argumentation framework and its implementation see the accompanying papers: Towards a framework for the implementation and verification of translations between argumentation models and A principled approach to the implementation of argumentation models.
There is also extensive documentation and examples available (with source code) on Hackage as the Dung Cabal package, in specific the examples file. Alternatively consult the old literate Haskell paper source here.
4. Translating a Carneades Argument Evaluation Structure (CAES)
Carneades Argument Evaluation Structures written in the CarneadesDSL package can now be translated directly into our implementation of Dung's argumentation frameworks by using our translation package CarneadesIntoDung.
5. Public repository
This package is now also available on GitHub. Patches and suggestions are more than welcome!
- Based on: Phan Minh Dung. On the acceptability of arguments and its fundamental role in nonmonotonic reasoning, logic programming, and n-person games, Artificial Intelligence 77: 321-357, 1995.
- Also based on: Martin Caminada. An Algorithm for Computing Semi-stable Semantics, ECSQARU 2007, 222-234, 2007.
7. Questions or comments
If you have any questions or feedback please do send an email to bmv AT cs DOT nott DOT ac DOT uk.
Last update: 16th April, 2014