1 finite model theory lecture 10 second order logic

22
1 Finite Model Theory Lecture 10 Second Order Logic

Post on 19-Dec-2015

216 views

Category:

Documents


0 download

TRANSCRIPT

1

Finite Model TheoryLecture 10

Second Order Logic

2

Outline

Chapter 7 in the textbook:

• SO, MSO, 9 SO, 9 MSO

• Games for SO

• Reachability

• Buchi’s theorem

3

Second Order Logic

• Add second order quantifiers:9 X. or 8 X.

• All 2nd order quantifiers can be done before the 1st order quantifiers [ why ?]

• Hence: Q1 X1. … Qm Xm. Q1 x1 … Qn xn. , where is quantifier free

4

Fragments

• MSO = X1, … Xm are all unary relations

• 9 SO = Q1, …, Qm are all existential quantifiers

• 9 MSO = [ what is that ? ]

• 9 MSO is also called monadic NP

5

Games for MSO

The MSO game is the following. Spoiler may choose between point move and set move:

• Point move Spoiler chooses a structure A or B and places a pebble on one of them. Duplicator has to reply in the other structure.

• Set move Spoiler chooses a structure A or B and a subset of that structure. Duplicator has to reply in the other structure.

6

Games for MSO

Theorem The duplicator has a winning strategy for k moves if A and B are indistinguishable in MSO[k]

[ What is MSO[k] ? ]

Both statement and proof are almost identical to the first order case.

7

EVEN MSO

Proposition EVEN is not expressible in MSO

Proof: • Will show that if = ; and |A|, |B| ¸ 2k then

duplicator has a winning strategy in k moves.

• We only need to show how the duplicator replies to set moves by the spoiler [why ?]

8

EVEN MSO

• So let spoiler choose U µ A.– |U| · 2k-1. Pick any V µ B s.t. |V| = |U|– |A-U| · 2k-1. Pick any V µ B s.t. |V| = |U|– |U| > 2k-1 and |A-U| > 2k-1.

We pick a V s.t. |V| > 2k-1 and |A-V| > 2k-1.

• By induction duplicator has two winning strategies:– on U, V– on A-U, A-V

• Combine the strategy to get a winning strategy on A, B. [ how ? ]

9

EVEN 2 MSO + <

• Why ?

10

MSO Games

• Very hard to prove winning strategies for duplicator

• I don’t know of any other application of bare-bones MSO games !

11

9MSO

Two problems:

• Connectivity: given a graph G, is it fully connected ?

• Reachability: given a graph G and two constants s, t, is there a path from s to t ?

• Both are expressible in 8MSO [ how ??? ]• But are they expressible in 9MSO ?

12

9 MSO

Reachability:

• Try this: = 9 X.

• Where says:– s, t 2 X– Every x 2 X has one incoming edge (except t)– Every x 2 X has one outgoing edge (except s)

13

9 MSO

• For an undirected graph G:

s, t are connected , G ²

• Hence Undirected-Reachability 2 9 MSO

14

9 MSO

• For an undirected graph G:s, t are connected , G ²

• But this fails for directed graphs:

• Which direction fails ?

s t

15

9 MSO

Theorem Reachability on directed graphs is not expressible in 9 MSO

• What if G is a DAG ?

• What if G has degree · k ?

16

Games for 9MSO

The l,k-Fagin game on two structures A, B:

• Spoiler selects l subsets U1, …, Ul of A

• Duplicator replies with L subsets V1, …, Vl of B

• Then they play an Ehrenfeucht-Fraisse game on (A, U1, …, Ul) and (B, Vl, …, Vl)

17

Games for 9MSO

Theorem If duplicator has a winning strategy for the l,k-Fagin game, then A, B are indistinguishable in MSO[l, k]

• MSO[l,k] = has l second order 9 quantifiers, followed by 2 FO[k]

• Problem: the game is still hard to play

18

Games for 9MSO

• The l, k – Ajtai-Fagin game on a property P

• Duplicator selects A 2 P• Spoiler selects U1, …, Ul µ A• Duplicator selects B P,

then selects V1, …, Vl µ B• Next they play EF on (A, U1, …, Ul) and (B,

V1, …, Vl)

19

Games for 9MSO

Theorem If spoiler has winning strategy, then P cannot be expressed by a formula in MSO[l, k]

Application: prove that reachability is not in 9MSO [ in class ? ]

20

MSO and Regular Languages

• Let = {a, b} and = (<, Pa, Pb)

• Then * ' STRUCT[]

• What can we express in FO over strings ?

• What can we express in MSO over strings ?

21

MSO on Strings

Theorem [Buchi] On strings: MSO = regular languages.

• Proof [in class; next time ?]

Corollary. On strings: MSO = 9MSO = 8MSO

22

MSO and TrCl

TheoremOn strings, MSO = TrCl1

However, TrCl2 can express an.bn [ how ? ]

Question: what is the relationship between these languages:

• MSO on arbitrary graphs and TrCl1

• MSO on arbitrary graphs and TrCl