org.argkit.dung
Class Dialogue<C>

java.lang.Object
  extended by org.argkit.dung.Dialogue<C>
Type Parameters:
C - (Argument's) claim class

public class Dialogue<C>
extends java.lang.Object

Reasoning is implemented as a dialogue between two parties: the proponent (PRO) and the opponent (OPP). Argument games define the rules for the reasoning dialogues.

Every dialogue is a tree, whose root argument is the subject of the dialogue. This tree is represented as a series of branches. Two different dialogue types are implemented: sceptical and credulous.

Author:
Matt South

Constructor Summary
Dialogue(Argument<C> subject)
          Only constructor.
 
Method Summary
 boolean addBranch(Branch<C> branch)
           
 Branch<C> getLastBranch()
           
 Argument<C> getSubject()
           
 boolean isSubjectDefended()
           
 java.util.Iterator<Branch<C>> iterator()
           
 java.util.Set<Argument<C>> oppArguments()
           
 java.util.Set<Argument<C>> proArguments()
           
 int size()
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

Dialogue

public Dialogue(Argument<C> subject)
Only constructor. All dialogues must have a subject.

Parameters:
subject - the root of the dialogue's tree
Method Detail

getSubject

public Argument<C> getSubject()

isSubjectDefended

public boolean isSubjectDefended()
Returns:
true if PRO successfully defends the last branch

getLastBranch

public Branch<C> getLastBranch()

addBranch

public boolean addBranch(Branch<C> branch)

size

public int size()
Returns:
number of branches in the dialogue.

iterator

public java.util.Iterator<Branch<C>> iterator()
Returns:
iterator over all branches.

proArguments

public java.util.Set<Argument<C>> proArguments()
Returns:
set containing all of the arguments used by PRO.

oppArguments

public java.util.Set<Argument<C>> oppArguments()
Returns:
set containing all of the arguments used by OPP.

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object