02
Dialogue modes and rules
ArgChat provides two modes of use. PRO mode supports the user in making a decision, whereas CON
mode aims to persuade the user to reconsider the position expressed on the selected topic.
Each mode uses a separate set of response rules. The applicable rule depends on the relation
introduced by the user, the structure of the disclosed BAF and the acceptability labels of the
arguments involved.
PRO
Decision support
PRO mode assists the user in examining the available positions and making a decision
about the topic. Depending on the current BAF, the system may strengthen an accepted
position, challenge a rejected argument or introduce an argument that helps resolve the
current move.
CON
Persuasion
CON mode attempts to move the dialogue away from the position expressed by the user. The
system may introduce a counterargument or end the exchange when the user move is already
consistent with the position pursued by the system.
Dialogue rules
The response rules use the following notation:
A is the argument selected as the target of the user move;
B is the argument introduced by the user;
C is a candidate response argument;
-
IN and OUT are the acceptability labels computed for the disclosed
BAF.
PRO rules
| Rule |
User move |
Labels |
System response |
P1 |
B attacks A |
B = OUT, A = IN |
C attacks B |
P2 |
B attacks A |
B = IN, A = IN |
Not applicable |
P3 |
B supports A |
B = OUT, A = IN |
C supports A, or C attacks
B
|
P4 |
B supports A |
B = IN, A = IN |
C supports B, or C supports
A
|
P5 |
B attacks A |
B = OUT, A = OUT |
C attacks A |
P6 |
B attacks A |
B = IN, A = OUT |
C supports B, or C attacks
A
|
P7 |
B supports A |
B = OUT, A = OUT |
C attacks B |
P8 |
B supports A |
B = IN, A = OUT |
C supports B, or C attacks
A
|
P2 is not applicable because an s-admissible set cannot contain two arguments when one attacks
the other. If both A and B were labelled IN, the accepted set would
attack one of its own members.
P8 is retained for compatibility with alternative semantic configurations. Under deductive
support and s-admissibility, accepting B also supports A;
consequently, A cannot at the same time be rejected.
CON rules
| Rule |
User move |
Labels |
System response |
C1 |
B attacks A |
B = OUT, A = IN |
C attacks B |
C2 |
B attacks A |
B = IN, A = IN |
Not applicable |
C3 |
B supports A |
B = OUT, A = IN |
C supports A |
C4 |
B supports A |
B = IN, A = IN |
End the dialogue without a new argument |
C5 |
B attacks A |
B = OUT, A = OUT |
End the dialogue without a new argument |
C6 |
B attacks A |
B = IN, A = OUT |
End the dialogue without a new argument |
C7 |
B supports A |
B = OUT, A = OUT |
C attacks B, or C attacks
A
|
C8 |
B supports A |
B = IN, A = OUT |
C attacks A |
C2 is not applicable for the same reason as P2: the accepted set would contain an attack between
two of its members.
C8 is retained for alternative semantic configurations but cannot be reached under the current
combination of deductive support and s-admissibility.
03
Argumentation model
A dialogue is represented as a bipolar argumentation framework:
BAF = ⟨Args, Att, Sup⟩
Args is the set of arguments, while Att and Sup are
directed attack and support relations. Bipolar argumentation frameworks extend abstract
argumentation frameworks by representing both negative and positive interactions between
arguments (Dung, 1995;
Cayrol and Lagasquie-Schiex, 2005).
Deductive interpretation of support
ArgChat adopts a deductive interpretation of support. If X supports
Y, accepting X entails accepting Y:
(X,Y) ∈ Sup ∧ IN(X) ⇒ IN(Y)
Consequently, a supporter inherits the argumentative consequences of the argument it supports.
For example, supporting an argument that attacks another argument also contributes indirectly
to that attack.
Under the necessary interpretation, the direction of the dependency is reversed: accepting the
supported argument requires accepting its supporter.
(X,Y) ∈ Sup ∧ IN(Y) ⇒ IN(X)
Deductive support is used because support in the dialogue expresses a reason for accepting its
target and should therefore propagate the consequences of that target. Necessary support would
instead represent the supporter as a prerequisite for accepting the supported argument. These
interpretations and their associated complex attacks are discussed by
Cayrol and Lagasquie-Schiex, 2013.
Transitive support
Let Sup⁺ denote the transitive closure of the support relation:
Complex attacks
The interaction between attack and deductive support gives rise to direct and complex attacks.
| Attack |
Definition |
Interpretation |
| Direct |
(X,Y) ∈ Att ⇒ attack(X,Y) |
X explicitly attacks Y. |
| Supported |
(X,Z) ∈ Sup⁺ ∧ (Z,Y) ∈ Att ⇒ attack(X,Y) |
X supports an argument that attacks Y. |
| Mediated |
(X,Z) ∈ Att ∧ (Y,Z) ∈ Sup⁺ ⇒ attack(X,Y) |
X attacks an argument supported by Y. |
| Super-mediated |
(X,Z) ∈ Sup⁺ ∧ attack(Z,Y) ⇒ attack(X,Y) |
A direct or complex attack propagates backwards through a support chain. |
s-admissibility
The prefix s stands for safe. A set of arguments is safe when it does not
attack any of its own members and does not attack an argument that it supports
(Cayrol and Lagasquie-Schiex, 2005).
For a set of arguments S, define the arguments attacked and supported by
S as:
Safety can therefore be expressed as:
Att(S) ∩ (S ∪ Sup(S)) = ∅
The first part of the union prevents S from attacking one of its members. The
second prevents S from attacking and supporting the same argument.
A set defends each of its members when every attacker of an argument in S is itself
attacked by S:
∀x ∈ S, ∀y ∈ Args : attack(y,x) ⇒ y ∈ Att(S)
A set is s-admissible when it satisfies both conditions:
S is s-admissible ⇔ S is safe ∧ S defends every x ∈ S
04
Response generation
Response generation combines semantic processing with computational argumentation. Semantic
models identify and integrate the user argument, while the argumentation model determines which
response is compatible with the current dialogue.
Models and methods
| Task |
Model or method |
| Sentence representation |
paraphrase-multilingual-mpnet-base-v2 |
| Argument matching |
Cosine similarity between sentence embeddings |
| Relation inference |
qwen3:8b through Ollama |
| Argumentative response selection |
Clingo 5 with deductive support, s-admissibility and dialogue rules |
-
Identify the user argument
The move is first checked to ensure that its target belongs to the disclosed BAF. The
user message is then encoded with
paraphrase-multilingual-mpnet-base-v2
(Reimers and Gurevych, 2019).
The resulting embedding is compared with the stored sentence embeddings through cosine
similarity. Matching does not use a separate model. If a sufficiently similar argument
is found, its identifier is reused and the new sentence may be stored as an alternative
formulation.
The declared attack or support is then checked against the knowledge base. An existing
relation is reused, a missing relation is added and an opposite relation is reported as
a conflict.
-
Integrate an unknown argument
If no suitable match exists, the contribution is assigned a new argument identifier.
The stored embeddings are used to select the existing arguments most closely related to
the new contribution.
The selected arguments are analysed with qwen3:8b
(Yang et al., 2025). The model proposes direct attack or
support relations involving the new argument. Invalid or malformed relations are
discarded, while the relation explicitly declared by the user is added independently.
The argument and its validated relations are stored in the shared topic knowledge base
and become available to subsequent conversations.
-
Select the chatbot response
The user argument and its explicit relation are added to the BAF disclosed in the
current conversation. The response candidates are the undisclosed arguments that attack
or support either the user argument or its selected target.
The disclosed BAF, the candidates and the user move are evaluated using the rules
associated with the previously selected PRO or CON mode. Clingo applies deductive
support, s-admissibility and the enabled dialogue rules to select a compatible response
(Gebser et al., 2016).
The selected dialogue mode is not chosen by Clingo. It is fixed when the conversation
starts and determines which family of rules can be applied.
-
Return the result
The result contains the selected response and relation, the applied dialogue rule and
the labels of the disclosed arguments. The interface updates the conversation and graph
using this information.
Some CON rules end the exchange without adding another argument. If no candidate
satisfies the required constraints, the system reports that no valid response is
available.
05
Topics and knowledge base
Each topic has a shared knowledge base containing its root argument, the available arguments and
their attack and support relations. The Topics page can be used to
inspect this complete structure.
Exploring a topic
The left panel shows the complete topic graph. The right panel provides three views for
inspecting arguments, attacks and supports.
-
Arguments can be searched by ID or sentence and expanded to display every associated
formulation.
- Attacks and supports can be searched by source or target argument ID.
-
Arguments and relations can be filtered according to whether they belong to the original
dataset or were introduced during a conversation.
- Selecting an argument or relation highlights the corresponding graph element.
- Selecting the source or target of a relation opens the corresponding argument.
The complete topic representation is also available through the Raw JSON link.
Knowledge-base evolution
The knowledge base may evolve when a user contribution introduces information that is not
already represented. Depending on the semantic matching and relation analysis, a move may:
- add an alternative sentence to an existing argument;
- introduce a previously unknown argument;
- introduce a new explicit attack or support;
- add relations inferred during the integration of a new argument.
Successfully integrated arguments and relations become part of the shared topic. They can
therefore be used as knowledge in later conversations, including conversations started by other
users.
06
Current limitations
Semantic matching
Argument recognition depends on the semantic representations produced by the embedding model
and on a configurable similarity threshold. Semantically related arguments may occasionally be
merged even though they express different positions, while alternative formulations of the
same argument may remain separate when their similarity is insufficient.
Storing multiple sentences for the same argument helps improve coverage, but does not completely
remove the ambiguity involved in matching natural-language contributions with abstract
arguments.
Relation inference
Relations inferred for a new argument depend on the language model and on the existing arguments
selected for comparison. The analysis is limited to a semantically relevant subset of the
knowledge base rather than the complete topic.
The validation stage checks relation types, identifiers and structural constraints, but cannot
guarantee that every inferred attack or support is argumentatively correct. The resulting
knowledge base may therefore require human inspection.
Response selection
More than one candidate response may satisfy the argumentation semantics and the dialogue rules.
The current implementation uses the first answer set returned by Clingo and does not rank valid
responses according to relevance, novelty or persuasive effectiveness.
A response can only be selected from arguments already connected to the user argument or its
target in the topic knowledge base. If no candidate produces a valid configuration, the system
cannot generate a new response for that move.
Dialogue coverage
The current dialogue construction is designed to select responses that produce the intended IN
and OUT labels without unresolved UNDEC cases. The response rules do not yet define a dedicated
strategy for every configuration in which an undecided label is unavoidable.
Knowledge-base evolution
New arguments and relations become shared knowledge and can influence later conversations.
Consequently, two conversations performed at different times may use different versions of the
same topic.
Reproducible experiments should therefore use a fixed topic snapshot together with fixed model
and system configurations.
07
References
-
P. M. Dung.
“On the Acceptability of Arguments and its Fundamental Role in Nonmonotonic Reasoning, Logic
Programming and n-Person Games”.
Artificial Intelligence,
77(2):321–357, 1995.
DOI
-
C. Cayrol and M.-C. Lagasquie-Schiex.
“On the Acceptability of Arguments in Bipolar Argumentation Frameworks”.
In Symbolic and Quantitative Approaches to Reasoning with Uncertainty, LNCS 3571,
pp. 378–389, 2005.
DOI
-
C. Cayrol and M.-C. Lagasquie-Schiex.
“Bipolarity in Argumentation Graphs: Towards a Better Understanding”.
International Journal of Approximate Reasoning,
54(7):876–899, 2013.
DOI
-
N. Reimers and I. Gurevych.
“Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks”.
In Proceedings of EMNLP-IJCNLP 2019,
pp. 3982–3992, 2019.
DOI
-
A. Yang et al.
“Qwen3 Technical Report”.
arXiv preprint arXiv:2505.09388, 2025.
DOI
-
M. Gebser, R. Kaminski, B. Kaufmann and T. Schaub.
“Theory Solving Made Easy with Clingo 5”.
In Technical Communications of the 32nd International Conference on Logic
Programming, OASIcs 52, pp. 2:1–2:15, 2016.
DOI