Research Seminar Talk (online) at KRR@UP (Uni Potsdam) on Dec 6, 2023, loosely based on a paper with the same title at the 7th Workshop on Advances in Argumentation in Artificial Intelligence (AI3)
Building on a FAIRly Strong Foundation to Connect Academic Research to Transl...
Games, Queries, and Argumentation Frameworks: Time for a Family Reunion
1. 1
Games, Queries, and Argumentation Frameworks:
Time for a Family Reunion!
Bertram Ludäscher1, Shawn Bowers2, Yilin Xia1
1 School of Information Sciences, University of Illinois, Urbana-Champaign, IL, USA
2 Department of Computer Science, Gonzaga University, WA, USA
{ludaesch,yilinx2}@illinois.edu
bowers@gonzaga.edu
7th Workshop on Advances in Argumentation in Artificial Intelligence (AI3)
AIxIA 2023: 22nd International Conference of the Italian Association for Artificial Intelligence
2. Games, Queries, Argumentation
Outline
1. What’s this? (a puzzle)
2. Identical Twins & Some History
3. The Correspondence
4. Harvesting Time (translational research)
5. Family Reunion & Clingo clinic J
KRR@UP Seminar, Dec 6 2023 2
3. Games, Queries, Argumentation
What’s this? (an easy puzzle ..)
• q --> e, e, e.
• q(X,Y) :- e(X,A), e(A,B), e(B,Y).
• Input: digraph with edges e(X,Y)
• Output: binary answer relation q(X,Y)
• q(X,Y) iff there is a path of length=3 from X to Y in e/2.
KRR@UP Seminar, Dec 6 2023 3
4. Games, Queries, Argumentation
What’s (not) in a query?
• q(X,Y) :- e(X,A), e(A,B), e(B,Y).
• We can interpret e/2 differently => output q/2 is a different relation
• e/2 ≅ parent/2
• => q/2 ≅ great_grandparent/2
• e/2 ≅ one_hour_trail/2
• => q/2 ≅ three_hour_hike/2
KRR@UP Seminar, Dec 6 2023 4
Bonus question:
How many patterns are there for
hikes? For great-grandparents?
5. Games, Queries, Argumentation
What’s this? (a harder query puzzle ..)
• q(X) :- e(X,Y), not q(Y).
•Standard LP semantics:
•stratified
•stable models
•well-founded
KRR@UP Seminar, Dec 6 2023 5
6. Games, Queries, Argumentation
What’s this? (a harder query puzzle ..)
• q(X) :- e(X,Y), not q(Y).
• Stable models => (complement of) graph kernels of G = (V,E).
• K ⊆ V is a kernel if K is independent and dominating (aka absorbing).
• out(X) :- e(X,Y), not out(Y).
• in(X) :- not out(X).
KRR@UP Seminar, Dec 6 2023 6
7. Games, Queries, Argumentation
What’s this? (a harder query puzzle ..)
• q(X) :- e(X,Y), not q(Y).
• Well-founded model => solves the game G = (Positions,Move).
• win(X) :- move(X,Y), not win(Y).
KRR@UP Seminar, Dec 6 2023 7
8. Games, Queries, Argumentation
What’s this? (a harder query puzzle ..)
• q(X) :- e(X,Y), not q(Y).
• Stable and Well-founded model
• => solves the Argumentation Framework AF = (Args, Attacks).
• defeated(X) :- attacks(Y,X), not defeated(Y).
• defeated(X) :- attacked_by(X,Y), not defeated(Y).
KRR@UP Seminar, Dec 6 2023 8
9. Games, Queries, Argumentation
Summary: One rule to rule them all …
• q(X) :- e(X,Y), not q(Y).
• win(X) :- move(X,Y), not win(Y).
• defeated(X) :- attacked_by(X,Y), not defeated(Y).
• kerC(X) :- edge(X,Y), not kerC(Y).
• Has this been known in AF?
• … or hiding in plain sight?
KRR@UP Seminar, Dec 6 2023 9
18. A question from the DB-Theory “bible” [AHV95]
18
Well-founded (WF-)Datalog queries
have 3-valued models in general.
Can every query Q in WF-Datalog-3
be rewritten into an equivalent Q’ in
WF-Datalog-2?
=> Total WF-Datalog-2 =?=
Partial WF-Datalog-3?
Example:
Can we detected draws for GAME?
win(X) :- move(X,Y), not win(Y).
KRR@UP Seminar, Dec 6 2023
19. … answering the question! [FKL-ICDT’97]
19
All you need is GAME!
(i.e., the win-move / GAME query)
KRR@UP Seminar, Dec 6 2023
20. … answering the question!
20
The tricky bit!
Useful notion: Length of a position!
All you need is DRAW-FREE GAMEs!
(i.e., the win-move / GAME query,
… but draws can be detected and avoided!)
KRR@UP Seminar, Dec 6 2023
21. Games, Queries, Argumentation
Win-Move vs Argumentation Frameworks
% We understand this now:
• win(X) :- move(X,Y), not win(Y).
% This is the mother of AF rules:
• defeated(X) :- attacks(Y,X), not defeated(Y).
% But they are both equivalent to this:
• q(X) :- edge(X,Y), not q(Y).
• GAME: q = win edge = move
• AF: q = defeated edge = attacks-1 (= attacked_by)
KRR@UP Seminar, Dec 6 2023 21
27. Games, Queries, Argumentation
Harvesting Time: Not all edges are created equal!
• Notions from games
translate to AF via the
natural correspondence!
• Length of a position (i.e.,
argument)
• Type of an edge (not all
edges are created equal)
• winning, delaying,
drawing, bad
KRR@UP Seminar, Dec 6 2023 27
28. Games, Queries, Argumentation
Harvesting Time!
• Provenance of a position (i.e., argument)
• ... = Explanations of the labeling
• … can be computed via Regular Path Queries (RPQs):
• prov(X,Y):-
path(X, green(.red.green)*, Y)
KRR@UP Seminar, Dec 6 2023 28
• Question:
• What is the provenance of games?
• Answer:
• Solve the game (AF) and look!
• Provenance/Explanations for free!
34. Edge Types => New explanations for
Argumentation Frameworks ... !?
34
Applying this to AF (coming from GAME and provenance) seems new…
KRR@UP Seminar, Dec 6 2023
35. Games, Queries, Argumentation
Finally: Computing WFS with Clingo
• How do you compute the well-founded semantics with an ASP system?
• … should be easy …
KRR@UP Seminar, Dec 6 2023 35