Presentation is loading. Please wait.

Presentation is loading. Please wait.

Episode 6 Parallel operations Parallel conjunction and disjunction

Similar presentations


Presentation on theme: "Episode 6 Parallel operations Parallel conjunction and disjunction"— Presentation transcript:

1 Episode 6 Parallel operations Parallel conjunction and disjunction
Free versus strict games The law of the excluded middle for parallel disjunction Resource-consciousness Differences with linear logic Parallel quantifiers DeMorgan’s laws for parallel operations Evolution trees and evolution sequences

2 Parallel conjunction  and disjunction 
6.1 AB and AB are simultaneous (parallel) plays of A and B. No choice is made, but rather the play proceeds on two “boards”. Chess Checkers ⊤ wins in AB iff ⊤ wins in both A and B ⊤ wins in AB iff ⊤ wins in A or B or both

3 Which game is the easiest for the machine to win?
6.2 Comparing, by easiness to win, the four games AB, AB, A⊓B, A⊔B: 1 (easiest) 2 3 4 (hardest)

4 Free versus strict games
6.3 We say that a game is strict iff, in every position, at most one player has legal moves. Not-necessarily-strict games are said to be free. Both Chess and Checkers are strict games, and so are their ⊓,⊔-combinations. On the other hand, the games Chess Checkers and Chess  Checkers, as well as most tasks performed in the real life by computers or humans are properly free. Imagine you are playing over the Internet Chess with Peter and Checkers with Paul. The two adversaries form your environment. Yet they do not even know about each other’s existence, so there is no communication or coordination between them. ENVIRONMENT Peter Paul In the initial position, it is certainly your move as you are white on both boards. YOU

5 Free versus strict games
6.3 We say that a game is strict iff, in every position, at most one player has legal moves. Not-necessarily-strict games are said to be free. Both Chess and Checkers are strict games, and so are their ⊓,⊔-combinations. On the other hand, the games Chess Checkers and Chess  Checkers, as well as most tasks performed in the real life by computers or humans are properly free. Imagine you are playing over the Internet Chess with Peter and Checkers with Paul. The two adversaries form your environment. Yet they do not even know about each other’s existence, so there is no communication or coordination between them. ENVIRONMENT Peter Paul In the initial position, it is certainly your move as you are white on both boards. But once you make your first move --- say, on the left board --- the picture changes. YOU The next move could be either Peter’s reply, or your opening move against Paul. Both you and Environment have legal moves.

6 Chess Chess: a really easy game
6.4 The copycat (mimicking) strategy wins the game! Both you and your adversary have legal moves in this position, but it is a good idea to wait till the adversary moves (otherwise he loses because, in Chess, the player who fails to make a move on his turn is considered to have lost).

7 Chess Chess: a really easy game
6.4 The copycat (mimicking) strategy wins the game! Now only you have legal moves and you lose if don’t move. Move on the left board by mimicking the adversary’s move on the other board.

8 Chess Chess: a really easy game
6.4 The copycat (mimicking) strategy wins the game! Again both you and your adversary have legal moves. Wait till the adversary moves (otherwise he loses).

9 Chess Chess: a really easy game
6.4 The copycat (mimicking) strategy wins the game! Copy the adversary’s move again, and so on.

10 Chess Chess: a really easy game
6.4 The copycat (mimicking) strategy wins the game! Genarally, the principle AA, unlike A⊔A, is valid in computability logic. This, however, should not suggest that all classical tautologies retain validity. See next slide.

11 Resource-counsciusness
6.5 Classical logic is resource-blind: it sees no difference between, say, A and AA. Therefore, the formula A(AA) is a tautology as is AA. Computability logic, on the other hand, is resource-conscious, and in it A is by no means the same as AA or AA. And the principle A(AA), unlike AA, is not valid. Why does the copycat strategy fail for the following three-board game? #1 #2 #3

12 Resource-counsciusness
6.5 Classical logic is resource-blind: it sees no difference between, say, A and AA. Therefore, the formula A(AA) is a tautology as is AA. Computability logic, on the other hand, is resource-conscious, and in it A is by no means the same as AA or AA. And the principle A(AA), unlike AA, is not valid. Why does the copycat strategy fail for the following three-board game? #1 #2 #3

13 Resource-counsciusness
6.5 Classical logic is resource-blind: it sees no difference between, say, A and AA. Therefore, the formula A(AA) is a tautology as is AA. Computability logic, on the other hand, is resource-conscious, and in it A is by no means the same as AA or AA. And the principle A(AA), unlike AA, is not valid. Why does the copycat strategy fail for the following three-board game? #1 #2 #3

14 Resource-counsciusness
6.5 Classical logic is resource-blind: it sees no difference between, say, A and AA. Therefore, the formula A(AA) is a tautology as is AA. Computability logic, on the other hand, is resource-conscious, and in it A is by no means the same as AA or AA. And the principle A(AA), unlike AA, is not valid. Why does the copycat strategy fail for the following three-board game? #1 #2 #3

15 Resource-counsciusness
6.5 Classical logic is resource-blind: it sees no difference between, say, A and AA. Therefore, the formula A(AA) is a tautology as is AA. Computability logic, on the other hand, is resource-conscious, and in it A is by no means the same as AA or AA. And the principle A(AA), unlike AA, is not valid. Why does the copycat strategy fail for the following three-board game? #1 #2 #3

16 Resource-counsciusness
6.5 Classical logic is resource-blind: it sees no difference between, say, A and AA. Therefore, the formula A(AA) is a tautology as is AA. Computability logic, on the other hand, is resource-conscious, and in it A is by no means the same as AA or AA. And the principle A(AA), unlike AA, is not valid. Why does the copycat strategy fail for the following three-board game? #1 #2 #3

17 Resource-counsciusness
6.5 Classical logic is resource-blind: it sees no difference between, say, A and AA. Therefore, the formula A(AA) is a tautology as is AA. Computability logic, on the other hand, is resource-conscious, and in it A is by no means the same as AA or AA. And the principle A(AA), unlike AA, is not valid. Why does the copycat strategy fail for the following three-board game? #1 #2 #3

18 Resource-counsciusness
6.5 Classical logic is resource-blind: it sees no difference between, say, A and AA. Therefore, the formula A(AA) is a tautology as is AA. Computability logic, on the other hand, is resource-conscious, and in it A is by no means the same as AA or AA. And the principle A(AA), unlike AA, is not valid. Why does the copycat strategy fail for the following three-board game? #1 #2 #3

19 Resource-counsciusness
6.5 Classical logic is resource-blind: it sees no difference between, say, A and AA. Therefore, the formula A(AA) is a tautology as is AA. Computability logic, on the other hand, is resource-conscious, and in it A is by no means the same as AA or AA. And the principle A(AA), unlike AA, is not valid. Why does the copycat strategy fail for the following three-board game? #1 #2 #3 It is impossible to synchronize #1 with both #2 and #3. Even though originally #2 and #3 are the same game Chess, they may evolve in different ways and thus generate different runs, one won and one lost.

20 Differences with linear logic
6.6 #1 #2 #3 #4 #5 #6 #7 #8 The above game can also be easily won using copycat, as long as the right pairs of boards are chosen for mutual synchronization (matching). A failed matching decision: #1 #2 #3 #4 #5 #6 #7 #8 A successful matching decision: #1 #2 #3 #4 #5 #6 #7 #8 ((PP)(PP))((PP)(PP)) is an example of a formula valid in CoL but not provable in linear logic or affine logic.

21 xA(x) = A(0)  A(1)  A(2)  A(3)  ...
Parallel quantifiers 6.7 Parallel universal quantifier : xA(x) = A(0)  A(1)  A(2)  A(3)  ... Parallel existential quantifier : xA(x) = A(0)  A(1)  A(2)  A(3)  ... Fact 6.7 When applied to elementary games (=predicates), the parallel operations again generate elementary games, and coincide with the corresponding classical operations. The parallel operations are thus conservative generalizations of classical operations from predicates to all games. The same is the case for negation .

22 Parallel conjunction and disjunction defined
6.8 Below and later we use the notation . It means the result of deleting from run  all moves except those that start with string , and then further deleting the prefix  in the remaining moves. Example: 1.0, 2.1, 1. = 0, 1.2. Definition 6.8.a Let A0=(Vr0,A0) and A1=(Vr1,A1) be games. Then A0 A1 (read “A0 pand A1”) is the game G=(Vr0Vr1,G) such that: LreG iff every move of  starts with 0. or 1. and, for both i{0,1}, i.LreAi. WneG = ⊤ iff WneA00. =WnA11. = ⊤. Definition 6.8.b Let A0=(Vr0,A0) and A1=(Vr1,A1) be games. Then A0A1 (read “A0 por A1”) is the game G=(Vr0Vr1,G) such that: LreG iff every move of  starts with 0. or 1. and, for both i{0,1}, i.LreAi. WneG = ⊥ iff WneA00. =WnA11. = ⊥.

23 Parallel quantifiers defined
6.9 Definition 6.9.a Let A(x)=(Vr,A) be a game. Then xA(x) (read “pall x A(x)”) is the game G=(Vr-{x},G) such that: LreG iff every move of  starts with c. for some cConstants and, for all such c, c.LreA(c). WneG = ⊤ iff, for all cConstants, WneA(c)c. = ⊤. Definition 6.9.b Let A(x)=(Vr,A) be a game. Then xA(x) (read “pexists x A(x)”) is the game G=(Vr-{x},G) such that: LreG iff every move of  starts with c. for some cConstants and, for all such c, c.LreA(c). WneG = ⊥ iff, for all cConstants, WneA(c)c. = ⊥.

24 DeMorgan’s laws for parallel operations
6.10 Thus, as seen from Definitions , a player makes move  in the ith component of a parallel combination of games by prefixing  with “i.”. Any other moves are considered illegal. Notice also the perfect symmetry between  and ,  and , ⊤ and ⊥. Therefore, just as for the choice operations, DeMorgan’s laws hold: (A  B) = A  B A  B = (A  B) (A  B) = A  B A  B = (A  B) xA = xA xA = xA xA = xA xA = xA

25 Game trees for parallel combinations
Such trees tend to be very big. As an example, let us see the game trees for AB and AB, where A = p⊔q and B = r⊓(s⊔t) (p,q,r,s,t{⊤,⊥}) A B 1 1 p q r 1 s t AB ⊥⊤ 0.0 0.1 1.0 1.1 p⊤ q⊤ ⊥r ⊥⊥ 1.0 1.1 1.0 1.1 0.0 0.1 0.0 0.1 1.0 1.1 pr p⊥ qr q⊥ pr qr p⊥ q⊥ ⊥s ⊥t 1.0 1.1 1.0 1.1 1.0 1.1 1.0 1.1 0.0 0.1 0.0 0.1 ps pt qs qt ps pt qs qt ps qs pt qt

26 Game trees for parallel combinations
Such trees tend to be very big. As an example, let us see the game trees for AB and AB, where A = p⊔q and B = r⊓(s⊔t) (p,q,r,s,t{⊤,⊥}) A B 1 1 p q r 1 s t AB ⊥⊤ 0.0 0.1 1.0 1.1 p⊤ q⊤ ⊥r ⊥⊥ 1.0 1.1 1.0 1.1 0.0 0.1 0.0 0.1 1.0 1.1 pr p⊥ qr q⊥ pr qr p⊥ q⊥ ⊥s ⊥t 1.0 1.1 1.0 1.1 1.0 1.1 1.0 1.1 0.0 0.1 0.0 0.1 ps pt qs qt ps pt qs qt ps qs pt qt

27 Game trees for parallel combinations
Such trees tend to be very big. As an example, let us see the game trees for AB and AB, where A = p⊔q and B = r⊓(s⊔t) (p,q,r,s,t{⊤,⊥}) A B 1 1 p q r 1 s t AB ⊥⊤ 0.0 0.1 1.0 1.1 p q ⊥r ⊥⊥ 1.0 1.1 1.0 1.1 0.0 0.1 0.0 0.1 1.0 1.1 pr p⊥ qr q⊥ pr qr p⊥ q⊥ ⊥s ⊥t 1.0 1.1 1.0 1.1 1.0 1.1 1.0 1.1 0.0 0.1 0.0 0.1 ps pt qs qt ps pt qs qt ps qs pt qt

28 Game trees for parallel combinations
Such trees tend to be very big. As an example, let us see the game trees for AB and AB, where A = p⊔q and B = r⊓(s⊔t) (p,q,r,s,t{⊤,⊥}) A B 1 1 p q r 1 s t AB ⊥⊤ 0.0 0.1 1.0 1.1 p⊤ q⊤ ⊥r ⊥⊥ 1.0 1.1 1.0 1.1 0.0 0.1 0.0 0.1 1.0 1.1 pr p⊥ qr q⊥ pr qr p⊥ q⊥ ⊥s ⊥t 1.0 1.1 1.0 1.1 1.0 1.1 1.0 1.1 0.0 0.1 0.0 0.1 ps pt qs qt ps pt qs qt ps qs pt qt

29 Game trees for parallel combinations
Such trees tend to be very big. As an example, let us see the game trees for AB and AB, where A = p⊔q and B = r⊓(s⊔t) (p,q,r,s,t{⊤,⊥}) A B 1 1 p q r 1 s t AB ⊥⊤ 0.0 0.1 1.0 1.1 p⊤ q⊤ ⊥r ⊥⊥ 1.0 1.1 1.0 1.1 0.0 0.1 0.0 0.1 1.0 1.1 pr p⊥ qr q⊥ pr qr p⊥ q⊥ ⊥s ⊥t 1.0 1.1 1.0 1.1 1.0 1.1 1.0 1.1 0.0 0.1 0.0 0.1 ps pt qs qt ps pt qs qt ps qs pt qt

30 Game trees for parallel combinations
Such trees tend to be very big. As an example, let us see the game trees for AB and AB, where A = p⊔q and B = r⊓(s⊔t) (p,q,r,s,t{⊤,⊥}) A B 1 1 p q r 1 s t AB ⊥⊤ 0.0 0.1 1.0 1.1 p⊤ q⊤ ⊥r ⊥⊥ 1.0 1.1 1.0 1.1 0.0 0.1 0.0 0.1 1.0 1.1 pr p⊥ qr q⊥ pr qr p⊥ q⊥ ⊥s ⊥t 1.0 1.1 1.0 1.1 1.0 1.1 1.0 1.1 0.0 0.1 0.0 0.1 ps pt qs qt ps pt qs qt ps qs pt qt

31 Game trees for parallel combinations
Such trees tend to be very big. As an example, let us see the game trees for AB and AB, where A = p⊔q and B = r⊓(s⊔t) (p,q,r,s,t{⊤,⊥}) A B 1 1 p q r 1 s t AB ⊥⊤ 0.0 0.1 1.0 1.1 r p⊤ q⊤ ⊥⊥ 1.0 1.1 1.0 1.1 0.0 0.1 0.0 0.1 1.0 1.1 p q p q s t pr qr pr qr 1.0 1.1 1.0 1.1 1.0 1.1 1.0 1.1 0.0 0.1 0.0 0.1 ps pt qs qt ps pt qs qt ps qs pt qt

32 Drawing evolution trees may be another
6.12 Drawing evolution trees may be another helpful visualization method. The evolution tree for a game G is obtained from the game tree for G through replacing in it every node (position)  by the game G to which G has “evolved” in position . 1 1 p q r 1 s t ⊥⊤ 0.0 0.1 1.0 1.1 p⊤ q⊤ ⊥r ⊥⊥ 1.0 1.1 1.0 1.1 0.0 0.1 0.0 0.1 1.0 1.1 pr p⊥ qr q⊥ pr qr p⊥ q⊥ ⊥s ⊥t 1.0 1.1 1.0 1.1 1.0 1.1 1.0 1.1 0.0 0.1 0.0 0.1 ps pt qs qt ps pt qs qt ps qs pt qt

33 Drawing evolution trees may be another
6.12 Drawing evolution trees may be another helpful visualization method. The evolution tree for a game G is obtained from the game tree for G through replacing in it every node (position)  by the game G to which G has “evolved” in position . 1 1 p q r 1 s t ⊥⊤ 0.0 0.1 1.0 1.1 p⊤ q⊤ ⊥r ⊥⊥ 1.0 1.1 1.0 1.1 0.0 0.1 0.0 0.1 1.0 1.1 pr p⊥ qr q⊥ pr qr p⊥ q⊥ ⊥s ⊥t 1.0 1.1 1.0 1.1 1.0 1.1 1.0 1.1 0.0 0.1 0.0 0.1 ps pt qs qt ps pt qs qt ps qs pt qt

34 Drawing evolution trees may be another
6.12 Drawing evolution trees may be another helpful visualization method. The evolution tree for a game G is obtained from the game tree for G through replacing in it every node (position)  by the game G to which G has “evolved” in position . p⊔q 1 1 p q r 1 s t ⊥⊤ 0.0 0.1 1.0 1.1 p⊤ q⊤ ⊥r ⊥⊥ 1.0 1.1 1.0 1.1 0.0 0.1 0.0 0.1 1.0 1.1 pr p⊥ qr q⊥ pr qr p⊥ q⊥ ⊥s ⊥t 1.0 1.1 1.0 1.1 1.0 1.1 1.0 1.1 0.0 0.1 0.0 0.1 ps pt qs qt ps pt qs qt ps qs pt qt

35 Drawing evolution trees may be another
6.12 Drawing evolution trees may be another helpful visualization method. The evolution tree for a game G is obtained from the game tree for G through replacing in it every node (position)  by the game G to which G has “evolved” in position . p⊔q 1 1 p q r s⊔t 1 s t ⊥⊤ 0.0 0.1 1.0 1.1 p⊤ q⊤ ⊥r ⊥⊥ 1.0 1.1 1.0 1.1 0.0 0.1 0.0 0.1 1.0 1.1 pr p⊥ qr q⊥ pr qr p⊥ q⊥ ⊥s ⊥t 1.0 1.1 1.0 1.1 1.0 1.1 1.0 1.1 0.0 0.1 0.0 0.1 ps pt qs qt ps pt qs qt ps qs pt qt

36 Drawing evolution trees may be another
6.12 Drawing evolution trees may be another helpful visualization method. The evolution tree for a game G is obtained from the game tree for G through replacing in it every node (position)  by the game G to which G has “evolved” in position . p⊔q r⊓(s⊔t) 1 1 p q r s⊔t 1 s t ⊥⊤ 0.0 0.1 1.0 1.1 p⊤ q⊤ ⊥r ⊥⊥ 1.0 1.1 1.0 1.1 0.0 0.1 0.0 0.1 1.0 1.1 pr p⊥ qr q⊥ pr qr p⊥ q⊥ ⊥s ⊥t 1.0 1.1 1.0 1.1 1.0 1.1 1.0 1.1 0.0 0.1 0.0 0.1 ps pt qs qt ps pt qs qt ps qs pt qt

37 Drawing evolution trees may be another
6.12 Drawing evolution trees may be another helpful visualization method. The evolution tree for a game G is obtained from the game tree for G through replacing in it every node (position)  by the game G to which G has “evolved” in position . p⊔q r⊓(s⊔t) 1 1 p q r s⊔t 1 s t (p⊔q)(r⊓(s⊔t)) 0.0 0.1 1.0 1.1 p⊤ q⊤ ⊥r ⊥⊥ 1.0 1.1 1.0 1.1 0.0 0.1 0.0 0.1 1.0 1.1 pr p⊥ qr q⊥ pr qr p⊥ q⊥ ⊥s ⊥t 1.0 1.1 1.0 1.1 1.0 1.1 1.0 1.1 0.0 0.1 0.0 0.1 ps pt qs qt ps pt qs qt ps qs pt qt

38 Drawing evolution trees may be another
6.12 Drawing evolution trees may be another helpful visualization method. The evolution tree for a game G is obtained from the game tree for G through replacing in it every node (position)  by the game G to which G has “evolved” in position . p⊔q r⊓(s⊔t) 1 1 p q r s⊔t 1 s t (p⊔q)(r⊓(s⊔t)) Similarly for  instead of  0.0 0.1 1.0 1.1 p(r⊓(s⊔t)) q(r⊓(s⊔t)) (p⊔q)r (p⊔q)(s⊔t) 1.0 1.1 1.0 1.1 0.0 0.1 0.0 0.1 1.0 1.1 p(s⊔t) qr q(s⊔t) pr qr p(s⊔t) q(s⊔t) (p⊔q)s (p⊔q)t pr 1.0 1.1 1.0 1.1 1.0 1.1 1.0 1.1 0.0 0.1 0.0 0.1 ps pt qs qr ps pt qs qt ps qs pt qt

39 corresponding branch of the evolution tree.
Evolution sequences 6.12 Each legal run induces an evolution sequence --- the sequence of the games from the corresponding branch of the evolution tree. (p⊔q)(r⊓(s⊔t)) 0.0 0.1 1.0 1.1 p(r⊓(s⊔t)) q(r⊓(s⊔t)) (p⊔q)r (p⊔q)(s⊔t) 1.0 1.1 1.0 1.1 0.0 0.1 0.0 0.1 1.0 1.1 p(s⊔t) qr q(s⊔t) pr qr p(s⊔t) q(s⊔t) (p⊔q)s (p⊔q)t pr 1.0 1.1 1.0 1.1 1.0 1.1 1.0 1.1 0.0 0.1 0.0 0.1 ps pt qs qr ps pt qs qt ps qs pt qt

40 corresponding branch of the evolution tree.
Evolution sequences 6.13 Each legal run induces an evolution sequence --- the sequence of the games from the corresponding branch of the evolution tree. (p⊔q)(r⊓(s⊔t)) 0.1 q(r⊓(s⊔t)) 1.1 q(s⊔t) 1.0 qs

41 corresponding branch of the evolution tree.
Evolution sequences 6.13 Each legal run induces an evolution sequence --- the sequence of the games from the corresponding branch of the evolution tree. (p⊔q)(r⊓(s⊔t)) q(r⊓(s⊔t)) q(s⊔t) qs

42 ⊔x⊓y(yx2)  ⊓x⊔y(y=x2) ⊔x⊓y(yx2)  ⊔y(y=72) ⊓y(y72)  ⊔y(y=72)
Evolution sequences 6.13 Each legal run induces an evolution sequence --- the sequence of the games from the corresponding branch of the evolution tree. Let us see the evolution sequence induced by the run 1.7, 0.7, 0.49, 1.49 for the game ⊔x⊓y(yx2)  ⊓x⊔y(y=x2). Position Game Move ⊔x⊓y(yx2)  ⊓x⊔y(y=x2) 0.  1.7 ⊔x⊓y(yx2)  ⊔y(y=72) 1. 1.7 0.7 ⊓y(y72)  ⊔y(y=72) 2. 1.7, 0.7 0.49 4972  ⊔y(y=72) 3. 1.7, 0.7, 0.49 1.49 4972  49=72 4. 1.7, 0.7, 0.49, 1.49 The run hits ⊤, so the machine wins.

43 Evolution sequences for parallel quantification
6.14 In a similar way can visualize - and -games as infinite - and -combinations. Position Game x(Odd(x)⊔Odd(x))  x6(Odd(x)⊔Odd(x))  Odd(7)  x8(Odd(x)⊔Odd(x)) 7.1 Who is the winner? Machine Move Game x(Odd(x)⊔Odd(x)) 0.0 Odd(0)  x1(Odd(x)⊔Odd(x)) 1.1 Odd(0)  Odd(1)  x2(Odd(x)⊔Odd(x)) 2.0 Odd(0)  Odd(1)  Odd(2)  x3(Odd(x)⊔Odd(x)) 3.1 Odd(0)  Odd(1)  Odd(2)  Odd(3) x4(Odd(x)⊔Odd(x)) ... 4.0 ... Who is the winner in this infinite run? Machine Are there any (legal) finite runs of this game won by the machine? No


Download ppt "Episode 6 Parallel operations Parallel conjunction and disjunction"

Similar presentations


Ads by Google