generative story worlds as linear logic programscmartens/int-talk.pdfgenerative story worlds as...
TRANSCRIPT
![Page 1: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/1.jpg)
Generative Story Worldsas
Linear Logic ProgramsChris Martens, João Ferreira,
Anne-Gwenn Bosser, and Marc Cavazza
1
Presented at Interactive Narrative TechnologiesJune 18, 2014
![Page 2: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/2.jpg)
Generative Story Worldsas
Linear Logic ProgramsChris Martens, João Ferreira,
Anne-Gwenn Bosser, and Marc Cavazza
2
Presented at Interactive Narrative TechnologiesJune 18, 2014
![Page 3: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/3.jpg)
3
new programming languages for digital narratives
Praxis & Prompter:
![Page 4: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/4.jpg)
4
OLD programming languages for digital narratives(?)
LOGIC
![Page 5: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/5.jpg)
5
old programming languages for digital narratives
LINEAR LOGIC
![Page 6: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/6.jpg)
6
used linear logic as a programming language (Celf)for specifying narrative worlds;
used proof search to generate structured stories.
What we did:
![Page 7: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/7.jpg)
THREE ACTS
7
I. Setup: agent simulation, linear logic, andlogic programming
II. Payoff: Stories as Proofs
III. Promise and Limitations
![Page 8: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/8.jpg)
8
![Page 9: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/9.jpg)
9
greetinsult
complimentgossip
flirt...
social verbs: social state:
knowledgesentiment
emotional statepersonality
belief
![Page 10: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/10.jpg)
10
verbs: rulescausal relationships: resource dependencies
![Page 11: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/11.jpg)
RULES
11
Narrative Actions~
Logical implication
![Page 12: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/12.jpg)
12
the problem with standard logical implication:
buy_soda :has(Alice, $1) ^ wants(Alice, soda) ⇒
has(Alice, soda)
![Page 13: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/13.jpg)
LINEAR LOGIC
13
A -o B
![Page 14: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/14.jpg)
14
buy_soda :has(Alice, $1) * wants(Alice, soda) -o
has(Alice, soda)
![Page 15: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/15.jpg)
15
A * BA -o B
!A
![Page 16: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/16.jpg)
16
A * BA -o {B}
!A
![Page 17: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/17.jpg)
Logic Programming
17
proof search as program execution
![Page 18: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/18.jpg)
18
initial state
Σ Δ0
Celf
query(optional)
A
Δ0, …, ΔΔ ⊢ A?
narrative actions
![Page 19: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/19.jpg)
Logic Programming
19
A -o {B}
Δ, A → Δ, B
Δ = arbitrary context of resources A1, …, An
![Page 20: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/20.jpg)
20
Example in our paper:Shakespearean tragedy world
![Page 21: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/21.jpg)
21
Shakespearean tragedy world
state components:character location, possession,
sentiment toward other characters,goals
![Page 22: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/22.jpg)
22
Shakespearean tragedy worldat <character> <location>has <character> <object>
anger <character> <character>philia <character> <character>
depressed <character>
![Page 23: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/23.jpg)
23
Shakespearean tragedy world
!dead <character>!killed <character> <character>
![Page 24: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/24.jpg)
24
do/insult :
at C L * at C’ L * anger C C’
-o {at C L * at C’ L * anger C C’ anger C’ C * depressed C’}.
![Page 25: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/25.jpg)
25
do/compliment :
at C L * at C’ L * philia C C’
-o {at C L * at C’ L * philia C C’ * philia C’ C}.
![Page 26: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/26.jpg)
26
do/murder : anger C C’ * anger C C’ * anger C C’ * anger C C’ * at C L * at C’ L * has C weapon-o {at C L * !dead C’ * !murdered C C’ * has C weapon}.
![Page 27: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/27.jpg)
27
do/mourn : at C L * philia C C’ * dead C’-o {philia C C’ * at C L * depressed C * depressed C}.
![Page 28: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/28.jpg)
28
do/becomeSuicidal :
at C L * depressed C * depressed C * depressed C * depressed C
-o {at C L * suicidal C * wants C weapon}.
![Page 29: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/29.jpg)
29
do/loot
: at C L * dead C' * has C' O * wants C O
-o {at C L * has C O}.
![Page 30: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/30.jpg)
30
do/comfort : at C L * at C' L *suicidal C' * philia C C' * philia C' C -o {at C L * at C' L * philia C C' * philia C' C * philia C' C}.
![Page 31: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/31.jpg)
31
initial state
![Page 32: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/32.jpg)
32
story_start :init -o
{ at romeo town * at montague mon_house * at capulet cap_house * at mercutio town * at nurse cap_house * at juliet town * at tybalt town * at apothecary town *
has tybalt weapon * has romeo weapon * has apothecary weapon *
...
![Page 33: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/33.jpg)
33
... * anger montague capulet * anger capulet montague * anger tybalt romeo * anger capulet romeo * anger montague tybalt *
philia mercutio romeo * philia romeo mercutio * philia montague romeo * philia capulet juliet * philia juliet nurse * philia nurse juliet *
neutral nurse romeo * neutral mercutio juliet * neutral juliet mercutio * neutral apothecary nurse * neutral nurse apothecary}.
![Page 34: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/34.jpg)
34
final state
![Page 35: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/35.jpg)
35
ending_happy : nonfinal *
actor C * actor C’ *at C L * at C’ L * married C C’ -o {final}.
ending_vengeance : nonfinal *
actor C1 * actor C2 * actor C3 *killed C1 C2 * philia C3 C2 * killed C3 C1
-o {final}.
![Page 36: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/36.jpg)
36
proofs as stories
![Page 37: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/37.jpg)
37
query:init -o {final}
![Page 38: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/38.jpg)
Nondeterminism
38
A -o {B}
Δ, B
A -o {C}
Δ, C
Δ, A
![Page 39: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/39.jpg)
Nondeterminism
39
A -o {B} C -o {D}
![Page 40: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/40.jpg)
Nondeterminism
40
A -o {B}
Δ, B, C
C -o {D}
Δ, A, D
Δ, A, C
![Page 41: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/41.jpg)
Nondeterminism
41
A -o {B}
Δ, B, C
C -o {D}
Δ, A, D
Δ, A, C
Δ, B, D
![Page 42: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/42.jpg)
42
proof ofinit -o {final}:
function (x:init) =let [xs] = r [ys] in …
![Page 43: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/43.jpg)
43
...let {[X73, [X74, [X75, [X76, X77]]]]}
= do/insult/private [a-tybalt, [a-romeo, [X68, [X66, X72]]]] in
let {[X85, [X86, X87]]}
= do/becomeSuicidal [a-romeo, [X79, [X41, [X59, [X52, X77]]]]] in
let {[X88, [X89, [X90, [X91, X92]]]]}
= do/comfort [a-mercutio, [a-romeo, [X78, [X85, [X86, [X81, X83]]]]]] in
let {[X101, [!X102, [!X103, X104]]]}
= do/murder [a-romeo, [a-tybalt, [X58, [X40, [X76, [X51, [X94, [X96, X27]]]]]]]] in
let {[X105, [X106, [X107, X108]]]}
= do/compliment/private [a-nurse, [a-juliet, [X46, [X47, X30]]]] in
let {[X109, [X110, [X111, X112]]]}
= do/compliment/private [a-juliet, [a-nurse, [X106, [X105, X108]]]] in
let {[X113, X114]}= do/loot [a-romeo, [a-tybalt, [X101, [X102, [X26, X87]]]]] in
...
![Page 44: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/44.jpg)
Concurrent Equality
44
r1: A -o B r2: C -o D
“apply r1; apply r2” ~= “apply r2; apply r1”
if A and C are disjoint
![Page 45: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/45.jpg)
45
graphical representation of traces
![Page 46: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/46.jpg)
46
init
do/insult/privatedo/formOpinion/dislike
do/compliment/witnessed
do/travelTo
do/compliment/private
do/murder
do/marry
ending_1
do/steal
do/thinkVengefully
do/mourn
do/becomeSuicidal
cleanup/1
do/eroticize
do/suicide
do/flirt/discrete
![Page 47: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/47.jpg)
47
init
do/insult/privatedo/formOpinion/dislike
do/compliment/witnessed
do/travelTo
do/compliment/private
do/murder
do/marry
ending_1
do/steal
do/thinkVengefully
do/mourn
do/becomeSuicidal
cleanup/1
do/eroticize
do/suicide
do/flirt/discrete
![Page 48: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/48.jpg)
48
queries on sets of traces
![Page 49: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/49.jpg)
49
> exists ending_1
> exists do/thinkVengefully && ̃link do/thinkVengefully do/murder
![Page 50: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/50.jpg)
generative exploration
informative structure
character perspective-agnosticism
50
what does this accomplish?
![Page 51: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/51.jpg)
51
how do simulation designs fail their authors?
![Page 52: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/52.jpg)
52
orphan verbsvs causally connected chains
![Page 53: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/53.jpg)
ACT III
Potential & Limitations
53
![Page 54: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/54.jpg)
54
combining reactive/exploratory+ goal-driven behavior:
A -o G vs A -o {B}(backward & forward chaining)
Additional potential of LL
![Page 55: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/55.jpg)
55
higher-order rules: (A -o B) -o C
Additional potential of LL
![Page 56: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/56.jpg)
56
higher-order rules: (A -o B) -o C
“serendipity:”Forall L. at romeo L * at juliet L -o {eros romeo juliet * at romeo L * at juliet L})
Additional potential of LL
![Page 57: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/57.jpg)
57
Additional potential of LL
dynamic object generation: Exists x:A. ...
makeRoom : has(C, magic door) * at C R -o {Exists r:room. !adjacent R r}
![Page 58: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/58.jpg)
58
limitations
![Page 59: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/59.jpg)
59
limitations(of the tool)
(of the underlying formalism)
![Page 60: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/60.jpg)
60
limitations of the tool:interactivity
history trackingdebugging facilitiesdrama management
![Page 61: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/61.jpg)
61
limitations of the formalism:ability to broadcast actions
nondeterminism and control over probabilities
![Page 62: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/62.jpg)
62
what I plan to address:interactivity
debugging facilitiesability to “broadcast” actions
![Page 63: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/63.jpg)
63
PHASES
![Page 64: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/64.jpg)
Phases (Example)
64
deduplication
phase act {…
} quiesced act -o {phase dedup}.
phase dedup { wants C O * wants C O -o {wants C O}. } quiesced dedup -o {phase act}.
![Page 65: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/65.jpg)
Phases
phase p1 = {...}phase p2 = {...}
quiesced p1 -o {some_token * phase p2}.
quiesced p2 -o {phase p1}.
Blocks connected by specification of quiescence behavior
65
![Page 66: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/66.jpg)
Phases (Example)interactivity
phase world = { rule1 : do Action * … -o {…}. rule2 : do Action * … -o {…}.}
phase player = {get_input : player_turn -o {read #STDIN}.
}
66
![Page 67: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/67.jpg)
67
also possible to implement: broadcast
![Page 68: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/68.jpg)
68
also ongoing:phase invariants
for each phase, constraints on the context…- as an invariant of the phase
- at quiescence
programmer-specified, machine-checked!
![Page 69: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/69.jpg)
FINALE
69
![Page 70: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/70.jpg)
70
the point of formalismis to be able to run
readable specifications
![Page 71: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/71.jpg)
71
the point of formalismis to be able to reason about
readable specifications
![Page 72: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/72.jpg)
72
![Page 73: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/73.jpg)
73
![Page 74: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/74.jpg)
74
linear logic can be used as a programming language for specifying narrative worlds;
to generate narratives& analyze their structure;
potentially the basis for a richer PL.
Takeaway
![Page 75: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/75.jpg)
FINALE
75
Celf: https://github.com/clf/celf
Example from the paper:http://tinyurl.com/int2014-clf
Me: Chris Martens@chrisamaphone
[email protected] to graduate Summer 2015
![Page 76: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/76.jpg)
MINUS WORLD(bonus slides)
76
![Page 77: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/77.jpg)
Cut
77
Δ1 ⊢ A Δ 2, A ⊢ CΔ 1, Δ 2 ⊢ C
![Page 78: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/78.jpg)
Frame Property
78
If Δ1 ⊢ Athen
Δ1, Δ2 ⊢ A * ⨂Δ2
![Page 79: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/79.jpg)
Frame Property (alt)
79
If Δ1 → Δ2
then Δ1, Δ’ → Δ2, Δ’
![Page 80: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/80.jpg)
Relationship between step and deductions
80
Δ1 → Δ2
iff for all CΔ2 ⊢ C implies Δ1 ⊢ C
![Page 81: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/81.jpg)
81
LOGICSare formalisms with
composable consequences
![Page 82: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/82.jpg)
82
LOGICSare formalisms with
composable consequences
Δ ⊢ A Δ’, A ⊢ CΔ’, Δ ⊢ C
![Page 83: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/83.jpg)
Phases (Example)Broadcast
phase act { do C A * in_room C R -o {broadcast C A R}. }quiesced act -o {phase broadcast}.
phase broadcast { broadcast C A R * in_room C' R -o
{notice C' C A * broadcast C A R}. }quiesced broadcast -o {phase notice}.
83
![Page 84: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/84.jpg)
Phases (Example)Broadcast
84
phase notice { broadcast C A R * notice C' C A -o {react C' C A * in_room C' R * broadcast C A R}. }
quiesced notice * broadcast _ _ _ -o {phase react}.
phase react { react C C' (murder ...) * philia C C' -o {...}}
quiesced react -o {phase act}.
![Page 85: Generative Story Worlds as Linear Logic Programscmartens/int-talk.pdfGenerative Story Worlds as Linear Logic Programs Chris Martens, João Ferreira, Anne-Gwenn Bosser, and Marc Cavazza](https://reader031.vdocuments.us/reader031/viewer/2022011910/5f796b37961cb6224c206bfe/html5/thumbnails/85.jpg)
Phasesdelimited subsignatures connected by specifications of quiescence behavior.
85
quiesced P * State -o {phase P’ * State’}.
arbitrarily many phaseslooping + branching