Presentation is loading. Please wait.

Presentation is loading. Please wait.

Negation and choice operations

Similar presentations


Presentation on theme: "Negation and choice operations"— Presentation transcript:

1 Negation and choice operations
Episode 5 Negation and choice operations About the operations studied in computability logic Negation The double negation principle Choice conjunction and disjunction Choice quantifiers DeMorgan’s laws for choice operations The constructive character of choice operations Failure of the principle of the excluded middle for choice disjunction

2 On the operations studied in computability logic
5.1 Logical operators in computability logic stand for operations on games. There is an open-ended pool of operations of potential interest, and which of those to study may depend on particular needs and taste. Click here for a list of (almost) all operations studied so far. Yet, there is a core collection of the most basic operations: the “propositional” connectives , , , ⊓, ⊔, , , , (together with the defined implication-style connectives , , ) and the quantifiers , , , , ⊓, ⊔. Among these we see all operators of classical logic, and our choice of the classical notation for them is no accident. Classical logic is nothing but the elementary fragment of computability logic (the fragment that deals only with predicates, i.e., elementary games). And each of the classically-shaped operators, when restricted to elementary games, turns out to be virtually the same as the corresponding operator of classical logic. For instance, if A and B are elementary games, then so is AB, and the latter is exactly the classical conjunction of A and B understood as an (elementary) game.

3 A A LreG = { | LreA} Negation defined
For a run , by  we mean the “negative image” of  (green and red interchanged). Next, we agree that, throughout these lecture notes, in definitions of game operations like Definition 5.2 below,  ranges over (any) runs,  ranges over legal runs of the game G=(Vr,G) that is being defined, and e ranges over Vr-valuations. In these definitions, “such that:” should be understood as “such that, for all e, :” Definition 5.2 Let A=(Vr,A) be a game. Then A (read “not A”) is the game G=(Vr,G) such that: LreG = { | LreA} WneG  = ⊤ iff WneA  = ⊥ A A 1 1 1 1 1 1

4 LreG = { | LreA}  Chess= Negation defined
5.2.b For a run , by  we mean the “negative image” of  (green and red interchanged). Next, we agree that, throughout these lecture notes, in definitions of game operations like Definition 5.2 below,  ranges over (any) runs,  ranges over legal runs of the game G=(Vr,G) that is being defined, and e ranges over Vr-valuations. In these definitions, “such that:” should be understood as “such that, for all e, :” Definition 5.2 Let A=(Vr,A) be a game. Then A (read “not A”) is the game G=(Vr,G) such that: LreG = { | LreA} WneG  = ⊤ iff WneA  = ⊥ Chess  Chess=

5 LreG = { | LreA}  Chess= Negation defined
5.2.b For a run , by  we mean the “negative image” of  (green and red interchanged). Next, we agree that, throughout these lecture notes, in definitions of game operations like Definition 5.2 below,  ranges over (any) runs,  ranges over legal runs of the game G=(Vr,G) that is being defined, and e ranges over Vr-valuations. In these definitions, “such that:” should be understood as “such that, for all e, :” Definition 5.2 Let A=(Vr,A) be a game. Then A (read “not A”) is the game G=(Vr,G) such that: LreG = { | LreA} WneG  = ⊤ iff WneA  = ⊥ Chess  Chess= Chess

6 LreG = { | LreA}  Chess= Negation defined
5.2.b For a run , by  we mean the “negative image” of  (green and red interchanged). Next, we agree that, throughout these lecture notes, in definitions of game operations like Definition 5.2 below,  ranges over (any) runs,  ranges over legal runs of the game G=(Vr,G) that is being defined, and e ranges over Vr-valuations. In these definitions, “such that:” should be understood as “such that, for all e, :” Definition 5.2 Let A=(Vr,A) be a game. Then A (read “not A”) is the game G=(Vr,G) such that: LreG = { | LreA} WneG  = ⊤ iff WneA  = ⊥ Chess  Chess= Chess

7 LreG = { | LreA}  Chess= Negation defined
5.2.b For a run , by  we mean the “negative image” of  (green and red interchanged). Next, we agree that, throughout these lecture notes, in definitions of game operations like Definition 5.2 below,  ranges over (any) runs,  ranges over legal runs of the game G=(Vr,G) that is being defined, and e ranges over Vr-valuations. In these definitions, “such that:” should be understood as “such that, for all e, :” Definition 5.2 Let A=(Vr,A) be a game. Then A (read “not A”) is the game G=(Vr,G) such that: LreG = { | LreA} WneG  = ⊤ iff WneA  = ⊥ Chess  Chess= Chess

8 LreG = { | LreA}  Chess= Negation defined
5.2.b For a run , by  we mean the “negative image” of  (green and red interchanged). Next, we agree that, throughout these lecture notes, in definitions of game operations like Definition 5.2 below,  ranges over (any) runs,  ranges over legal runs of the game G=(Vr,G) that is being defined, and e ranges over Vr-valuations. In these definitions, “such that:” should be understood as “such that, for all e, :” Definition 5.2 Let A=(Vr,A) be a game. Then A (read “not A”) is the game G=(Vr,G) such that: LreG = { | LreA} WneG  = ⊤ iff WneA  = ⊥ Chess  Chess= Chess

9 The double negation principle holds
5.3   A = A A

10 The double negation principle holds
5.3   A = A A

11 The double negation principle holds
5.3   A = A A

12 The double negation principle holds
5.3   A = A A

13 The double negation principle holds
5.3   A = A A

14 Choice conjunction ⊓ and disjunction ⊔
5.4 Choice conjunction ⊓ 1 A0 ⊓ A1 A0 A1 Choice disjunction ⊔ 1 A0 ⊔ A1 A0 A1

15 Choice universal quantifier ⊓ and existential quantifier ⊔
5.5 Choice universal quantifier ⊓ ⊓xA(x) = A(0) ⊓ A(1) ⊓ A(2) ⊓ ... 1 2 . . . A(0) A(1) A(2) Choice existential quantifier ⊔ ⊔xA(x) = A(0) ⊔ A(1) ⊔ A(2) ⊔ ... 1 2 . . . A(0) A(1) A(2)

16 Representing the problem of computing a function
5.6 A 1 2 ... ... ... ... 1 2 3 1 2 3 1 2 3 ⊓y⊔z (z=y+1) This game can be written as One of the legal runs, won by the machine, is 1,2

17 Representing the problem of computing a function
5.6 A 1 2 ... ... ... ... 1 2 3 1 2 3 1 2 3 ⊓y⊔z (z=y+1) This game can be written as One of the legal runs, won by the machine, is 1,2

18 Representing the problem of computing a function
5.6 1A ... 1 2 3 ⊓y⊔z (z=y+1) This game can be written as One of the legal runs, won by the machine, is 1,2

19 Representing the problem of computing a function
5.6 1A ... 1 2 3 ⊓y⊔z (z=y+1) This game can be written as One of the legal runs, won by the machine, is 1,2

20 Representing the problem of computing a function
5.6 1,2A ⊓y⊔z (z=y+1) This game can be written as One of the legal runs, won by the machine, is 1,2 Generally, the problem of computing a unary function f can be written as ⊓y⊔z (z=f(y))

21 ... ⊓y⊔z (z=y+x) ... ... This game can be written as Another example ⊤
5.7 1 ... ... ... 1 2 1 2 0=0+x 1=0+x 2=0+x 0=1+x 1=1+x 2=1+x ⊓y⊔z (z=y+x) This game can be written as

22 Representing the problem of deciding a predicate
5.8 ... 1 2 3 4 5 1 1 1 1 1 1 This game is about deciding what predicate? Even(x) ⊓x(Even(x) ⊔ Even(x)) How can it be written? Generally, the problem of deciding a unary predicate p(x) can be written as ⊓x(p(x) ⊔ p(x))

23 Representing the problem of deciding a predicate
5.8 Position:   ⊓x(Even(x) ⊔ Even(x)) ... 1 2 3 4 5 1 1 1 1 1 1

24 Representing the problem of deciding a predicate
5.8 Position:   ⊓x(Even(x) ⊔ Even(x)) ... 1 2 3 4 5 1 1 1 1 1 1 Making move 4 means asking the machine the question “Is 4 even?”

25 Representing the problem of deciding a predicate
5.8 Position:   ⊓x(Even(x) ⊔ Even(x)) 4 Even(4)⊔Even(4) 1 Making move 4 means asking the machine the question “Is 4 even?” This move brings the game down to Even(4) ⊔ Even(4), in the sense that 4 ⊓x(Even(x)⊔Even(x)) = Even(4)⊔Even(4)

26 Representing the problem of deciding a predicate
5.8 Position:   ⊓x(Even(x) ⊔ Even(x)) 4 Even(4)⊔Even(4) 1 Making move 4 means asking the machine the question “Is 4 even?” This move brings the game down to Even(4) ⊔ Even(4), in the sense that 4 ⊓x(Even(x)⊔Even(x)) = Even(4)⊔Even(4) Making move 1 in this position means answering “Yes.”

27 Representing the problem of deciding a predicate
5.8 Position:   ⊓x(Even(x) ⊔ Even(x)) 4 Even(4)⊔Even(4) Even(4) 4,1 Making move 4 means asking the machine the question “Is 4 even?” This move brings the game down to Even(4) ⊔ Even(4), in the sense that 4 ⊓x(Even(x)⊔Even(x)) = Even(4)⊔Even(4) Making move 1 in this position means answering “Yes.” This move brings the game down to Even(4), in the sense that 1 Even(4)⊔Even(4) = Even(4) ( =⊤) The play hits ⊤, so the machine is the winner.

28 Representing the problem of deciding a predicate
5.8 Position:   ⊓x(Even(x) ⊔ Even(x)) 4 Even(4)⊔Even(4) Even(4) 4,0 Making move 4 means asking the machine the question “Is 4 even?” This move brings the game down to Even(4) ⊔ Even(4), in the sense that 4 ⊓x(Even(x)⊔Even(x)) = Even(4)⊔Even(4) Making move 1 in this position means answering “Yes.” This move brings the game down to Even(4), in the sense that 1 Even(4)⊔Even(4) = Even(4) ( =⊤) The machine would have lost if it had made move 0 (answered “No”) instead.

29 Choice conjunction and disjunction defined
5.9 Definition 5.9.a Let A0=(Vr0,A0) and A1=(Vr1,A1) be games. Then A0⊓A1 (read “A0 chand A1”) is the game G=(Vr0Vr1,G) such that: LrG= {}  {i,  | i{0,1}, LreAi}. WneG =⊤; WneGi,  =WneAi. Definition 5.9.b Let A0=(Vr0,A0) and A1=(Vr1,A1) be games. Then A0⊔A1 (read “A0 chor A1”) is the game G=(Vr0Vr1,G) such that: LrG= {}  {i,  | i{0,1}, LreAi}. WneG =⊥; WneGi,  =WneAi.

30 Choice quantifiers defined
5.10 Definition 5.10.a Let A(x)=(Vr,A) be a game. Then ⊓xA(x) (read “chall x A(x)”) is the game G=(Vr-{x},G) such that: LrG= {}  {c,  | cConstants, LreA(c)}. WneG =⊤; WneGc,  =WneA(c). Definition 5.10.b Let A(x)=(Vr,A) be a game. Then ⊔xA(x) (read “chexixts x A(x)”) is the game G=(Vr-{x},G) such that: LrG= {}  {c,  | cConstants, LreA(c)}. WneG =⊥; WneGc,  =WneA(c).

31 (A ⊓ B) = = A ⊔ B B ⊓ A ⊓xA = ⊔xA ⊔xA = ⊓xA (A ⊓ B) = A ⊔ B
DeMorgan’s laws hold 5.11 (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 (A ⊓ B) = = A ⊔ B B ⊓ A

32 The constructive character of choice operations
5.12 As noted in Episode 1, computability logic revises traditional logic through replacing truth by computability. And computability of a problem means existence of a machine (= algorithmic strategy) that wins the corresponding game. Correspondingly, while classical logic defines validity as being “always true”, computability logic understands it as being “always computable”. The operators of classical logic are not constructive. Consider, for example, xy(y=f(x)). It is true in the classical sense as long as f is a (total) function. Yet its truth has little (if any) practical import, as “y” merely signifies existence of y, without implying that such a y can actually be found. And, indeed, if f is an incomputable function such as Kolmogorov complexity, there is no method for finding y. On the other hand, the choice operations of computability logic are constructive. Computability (“truth”) of ⊓x⊔y(y=f(x)) means more than just existence of y; it means the possibility to actually find (compute, construct) a corresponding y for every x.

33 Failure of the principle of the excluded middle
5.13 Similarly, let H(x) be the predicate “Turing machine x halts on input 0”. Consider x(H(x)H(x)). It is true in classical logic, yet not in a constructive sense. Its truth means that, for every x, either H(x) or H(x) is true, but it does not imply existence of an actual way to tell which of these two is true after all. And such a way does not really exist, as the halting problem is undecidable. This means that ⊓x(H(x)⊔H(x)) is not computable. Generally, the principle of the excluded middle: “A OR NOT A”, validated by classical logic and causing the indignation of the constructivistically-minded, is not valid in computability logic with OR understood as choice disjunction. The following is an example of a constant game of the form A⊔A with no algorithmic solution (why?): ⊓x(H(x)⊔H(x)) ⊔ ⊓x(H(x)⊔H(x))

34 Chess ⊔ Chess: a really hard game
5.14 To win this game means to choose between playing white or black, and then win the chosen game. No human and no modern computer can handle this task with a full guarantee of success. Most probably, no future machines can succeed either, even though Chess is a finite game and, theoretically, there should be an algorithmic winning strategy here (excluding the possibility of draw outcomes, of course; they can be considered wins for the black player, for example).


Download ppt "Negation and choice operations"

Similar presentations


Ads by Google