• Aucun résultat trouvé

Descriptive complexity for counting complexity classes

N/A
N/A
Protected

Academic year: 2022

Partager "Descriptive complexity for counting complexity classes"

Copied!
119
0
0

Texte intégral

(1)

Descriptive complexity

for counting complexity classes

Mart´ın Mu˜noz PUC Chile - IMFD Joint work with

Marcelo Arenas and Cristian Riveros

(2)

Descriptive complexity has been very fruitful

in connecting logics with computational complexity

NP ≡ ∃SO coNP ≡ ∀SO

P ≡ LFP

NL ≡ TC

AC0 ≡ FO+Bit PSPACE ≡ PFP

⋮ ⋮ ⋮

Manyapplicationsin diverse areas like:

1.

Computational complexity and logics.

2.

Database management systems.

3.

Verification systems.

(3)

Descriptive complexity has been very fruitful

in connecting logics with computational complexity

NP ≡ ∃SO

coNP ≡ ∀SO

P ≡ LFP

NL ≡ TC

AC0 ≡ FO+Bit PSPACE ≡ PFP

⋮ ⋮ ⋮

Manyapplicationsin diverse areas like:

1.

Computational complexity and logics.

2.

Database management systems.

3.

Verification systems.

(4)

Descriptive complexity has been very fruitful

in connecting logics with computational complexity

NP ≡ ∃SO coNP ≡ ∀SO

P ≡ LFP

NL ≡ TC

AC0 ≡ FO+Bit PSPACE ≡ PFP

⋮ ⋮ ⋮

Manyapplicationsin diverse areas like:

1.

Computational complexity and logics.

2.

Database management systems.

3.

Verification systems.

(5)

Descriptive complexity has been very fruitful

in connecting logics with computational complexity

NP ≡ ∃SO coNP ≡ ∀SO

P ≡ LFP

NL ≡ TC

AC0 ≡ FO+Bit PSPACE ≡ PFP

⋮ ⋮ ⋮

Manyapplicationsin diverse areas like:

1.

Computational complexity and logics.

2.

Database management systems.

3.

Verification systems.

(6)

. . . but computational complexity is not only about true or false

One would like to study thecomplexityof problems like:

“How many valuations satisfies my boolean formula?”

“How many simple paths

are connecting two vertices in my graph?”

(7)

. . . but computational complexity is not only about true or false

One would like to study thecomplexityof problems like:

“How many valuations satisfies my boolean formula?”

“How many simple paths

are connecting two vertices in my graph?”

(8)

. . . but computational complexity is not only about true or false

One would like to study thecomplexityof problems like:

“How many valuations satisfies my boolean formula?”

“How many simple paths

are connecting two vertices in my graph?”

(9)

. . . but computational complexity is not only about true or false

Counting complexity classes

⎧⎪⎪⎪⎪⎪⎪⎪⎪

⎪⎪⎪⎪⎪

⎪⎪⎪⎪⎨⎪⎪

⎪⎪⎪⎪⎪

⎪⎪⎪⎪⎪

⎪⎪⎪⎪⎪

#P

≡ ?

SpanP

≡ ?

FP

≡ ?

#L

≡ ?

#PSPACE

≡ ?

⋮ ⋮

(10)

. . . but computational complexity is not only about true or false

Counting complexity classes

⎧⎪⎪⎪⎪⎪⎪⎪⎪

⎪⎪⎪⎪⎪

⎪⎪⎪⎪⎨⎪⎪

⎪⎪⎪⎪⎪

⎪⎪⎪⎪⎪

⎪⎪⎪⎪⎪

#P

≡ ?

SpanP

≡ ?

FP

≡ ?

#L

≡ ?

#PSPACE

≡ ?

⋮ ⋮

(11)

. . . but computational complexity is not only about true or false

Counting complexity classes

⎧⎪⎪⎪⎪⎪⎪⎪⎪

⎪⎪⎪⎪⎪

⎪⎪⎪⎪⎨⎪⎪

⎪⎪⎪⎪⎪

⎪⎪⎪⎪⎪

⎪⎪⎪⎪⎪

#P ≡ ?

SpanP ≡ ? FP ≡ ?

#L ≡ ?

#PSPACE ≡ ?

⋮ ⋮ ⋮

How can we describe thesecountingclasses with logic?

(12)

In this paper, we propose to use weighted logics for descriptive complexity of counting classes

We propose to use:

Quantitative Second Order Logics (QSO) = Weighted Logics overN

Specifically, our contributions are:

1.

We show that QSOcapturesmany counting complexity classes.

● #P,SpanP,FP, #PSPACE,MinP,MaxP, . . .

2.

We use QSO to find classes below #P

that have goodtractabilityandclosureproperties.

3.

We show how to definequantitative recursionover QSO in order to capture classes belowFP.

(13)

In this paper, we propose to use weighted logics for descriptive complexity of counting classes

We propose to use:

Quantitative Second Order Logics (QSO) = Weighted Logics overN

Specifically, our contributions are:

1.

We show that QSOcapturesmany counting complexity classes.

● #P,SpanP,FP, #PSPACE,MinP,MaxP, . . .

2.

We use QSO to find classes below #P

that have goodtractabilityandclosureproperties.

3.

We show how to definequantitative recursionover QSO in order to capture classes belowFP.

(14)

In this paper, we propose to use weighted logics for descriptive complexity of counting classes

We propose to use:

Quantitative Second Order Logics (QSO) = Weighted Logics overN

Specifically, our contributions are:

1.

We show that QSOcapturesmany counting complexity classes.

● #P,SpanP,FP, #PSPACE,MinP,MaxP, . . .

2.

We use QSO to find classes below #P

that have goodtractabilityandclosureproperties.

3.

We show how to definequantitative recursionover QSO in order to capture classes belowFP.

(15)

In this paper, we propose to use weighted logics for descriptive complexity of counting classes

We propose to use:

Quantitative Second Order Logics (QSO) = Weighted Logics overN

Specifically, our contributions are:

1.

We show that QSOcapturesmany counting complexity classes.

● #P,SpanP,FP, #PSPACE,MinP,MaxP, . . .

2.

We use QSO to find classes below #P

that have goodtractabilityandclosureproperties.

3.

We show how to definequantitative recursionover QSO in order to capture classes belowFP.

(16)

In this paper, we propose to use weighted logics for descriptive complexity of counting classes

We propose to use:

Quantitative Second Order Logics (QSO) = Weighted Logics overN

Specifically, our contributions are:

1.

We show that QSOcapturesmany counting complexity classes.

● #P,SpanP,FP, #PSPACE,MinP,MaxP, . . .

2.

We use QSO to find classes below #P

that have goodtractabilityandclosureproperties.

3.

We show how to definequantitative recursionover QSO in order to capture classes belowFP.

(17)

In this paper, we propose to use weighted logics for descriptive complexity of counting classes

We propose to use:

Quantitative Second Order Logics (QSO) = Weighted Logics overN

Specifically, our contributions are:

1.

We show that QSOcapturesmany counting complexity classes.

● #P,SpanP,FP, #PSPACE,MinP,MaxP, . . .

2.

We use QSO to find classes below #P

that have goodtractabilityandclosureproperties.

3.

We show how to definequantitative recursionover QSO in order to capture classes belowFP.

(18)

Quantitative second order logic

QSO vs counting complexity

Below and beyond

Outline

(19)

Quantitative second order logic

QSO vs counting complexity

Below and beyond

Outline

(20)

Some notation and restrictions

Given a relational signatureR= {R1, . . . ,Rk,<},

we considerfinite ordered structuresoverRof the form:

A= (A,R1A, . . . ,RkA,<A) whereAis the domain and<A is alinear orderoverA.

LetStruct(R)be the set of all finite ordered structures overR. We consider formulas ofSecond Order logicoverRof the form:

ϕ ∶= True ∣ x=y ∣ R(¯u) ∣ X(¯v) ∣ ¬ϕ ∣ (ϕ∨ϕ) ∣ ∃x. ϕ ∣ ∃X. ϕ whereR∈Randx andX are a first and second order variable, respectively.

The semantics of a second order formula is defined as usual.

(21)

Some notation and restrictions

Given a relational signatureR= {R1, . . . ,Rk,<},

we considerfinite ordered structuresoverRof the form:

A= (A,R1A, . . . ,RkA,<A) whereAis the domain and<A is alinear orderoverA.

LetStruct(R)be the set of all finite ordered structures overR.

We consider formulas ofSecond Order logicoverRof the form: ϕ ∶= True ∣ x=y ∣ R(¯u) ∣ X(¯v) ∣ ¬ϕ ∣ (ϕ∨ϕ) ∣ ∃x. ϕ ∣ ∃X. ϕ whereR∈Randx andX are a first and second order variable, respectively.

The semantics of a second order formula is defined as usual.

(22)

Some notation and restrictions

Given a relational signatureR= {R1, . . . ,Rk,<},

we considerfinite ordered structuresoverRof the form:

A= (A,R1A, . . . ,RkA,<A) whereAis the domain and<A is alinear orderoverA.

LetStruct(R)be the set of all finite ordered structures overR.

We consider formulas ofSecond Order logicoverRof the form:

ϕ ∶= True ∣ x=y ∣ R(¯u) ∣ X(¯v) ∣ ¬ϕ ∣ (ϕ∨ϕ) ∣ ∃x. ϕ ∣ ∃X. ϕ whereR∈Randx andX are a first and second order variable, respectively.

The semantics of a second order formula is defined as usual.

(23)

Some notation and restrictions

Given a relational signatureR= {R1, . . . ,Rk,<},

we considerfinite ordered structuresoverRof the form:

A= (A,R1A, . . . ,RkA,<A) whereAis the domain and<A is alinear orderoverA.

LetStruct(R)be the set of all finite ordered structures overR.

We consider formulas ofSecond Order logicoverRof the form:

ϕ ∶= True ∣ x=y ∣ R(¯u) ∣ X(¯v) ∣ ¬ϕ ∣ (ϕ∨ϕ) ∣ ∃x. ϕ ∣ ∃X. ϕ whereR∈Randx andX are a first and second order variable, respectively.

The semantics of a second order formula is defined as usual.

(24)

Syntax of Quantitative Second Order logic

Definition

A QSO-formulaαoverRis given by the followingsyntax:

α ∶= ϕ∈SO ∣ s ∣ (α+α) ∣ (α⋅α) ∣Σx. α ∣ Πx. α ∣ ΣX. α ∣ ΠX. α whereϕis a (boolean) second order formula ands∈N.

Example

LetR= {E(⋅,⋅),<}whereE encodes an edge relation.

α ∶= Σx.Σy.Σz.(E(x,y) ∧E(y,z) ∧E(z,x) ∧x<y ∧y<z)

(25)

Syntax of Quantitative Second Order logic

Definition

A QSO-formulaαoverRis given by the followingsyntax:

α ∶= ϕ∈SO ∣ s ∣ (α+α) ∣ (α⋅α) ∣Σx. α ∣ Πx. α ∣ ΣX. α ∣ ΠX. α whereϕis a (boolean) second order formula ands∈N.

Example

LetR= {E(⋅,⋅),<}whereE encodes an edge relation.

α ∶= Σx.Σy.Σz.(E(x,y) ∧E(y,z) ∧E(z,x) ∧x<y ∧y<z)

(26)

Syntax of Quantitative Second Order logic

Definition

A QSO-formulaαoverRis given by the followingsyntax:

α ∶= ϕ∈SO ∣ s ∣ (α+α) ∣ (α⋅α) ∣Σx. α ∣ Πx. α ∣ ΣX. α ∣ ΠX. α whereϕis a (boolean) second order formula ands∈N.

Example

LetR= {E(⋅,⋅),<}whereE encodes an edge relation.

α ∶= Σx.Σy.Σz.(E(x,y) ∧E(y,z) ∧E(z,x) ∧x<y ∧ y<z)

(27)

Syntax of Quantitative Second Order logic

Definition

A QSO-formulaαoverRis given by the followingsyntax:

α ∶= ϕ∈SO ∣ s ∣ (α+α) ∣ (α⋅α) ∣Σx. α ∣ Πx. α ∣ ΣX. α ∣ ΠX. α whereϕis a (boolean) second order formula ands∈N.

Example

LetR= {E(⋅,⋅),<}whereE encodes an edge relation.

α ∶= Σx.Σy.Σz.(E(x,y) ∧E(y,z) ∧E(z,x) ∧x<y ∧ y<z

´¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¸¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¹¶

SO formulaϕ

)

(28)

Semantics of Quantitative Second Order logic

Given a QSO-formulaα,A∈Struct(R)and a var. assignmentv∶X→A we define thesemantics⟦α⟧ ∶Struct(R) →Nrecursively as follow:

⟦ϕ⟧(A,v) = ⎧⎪⎪

⎨⎪⎪⎩

1 if(A,v) ⊧ϕ 0 otherwise

⟦s⟧(A,v) = s

⟦α12⟧(A,v) = ⟦α1⟧(A,v) + ⟦α2⟧(A,v)

⟦α1⋅α2⟧(A,v) = ⟦α1⟧(A,v) ⋅ ⟦α2⟧(A,v)

⟦Σx. α⟧(A,v) = ∑

a∈A

⟦α⟧(A,v[a/x])

⟦Πx. α⟧(A,v) = ∏

a∈A

⟦α⟧(A,v[a/x])

⟦ΣX. α⟧(A,v) = ∑

C⊆Aarity(X)

⟦α⟧(A,v[C/X])

⟦ΠX. α⟧(A,v) = ∏

C⊆Aarity(X)

⟦α⟧(A,v[C/X])

(29)

Semantics of Quantitative Second Order logic

Given a QSO-formulaα,A∈Struct(R)and a var. assignmentv∶X→A we define thesemantics⟦α⟧ ∶Struct(R) →Nrecursively as follow:

⟦ϕ⟧(A,v) = ⎧⎪⎪

⎨⎪⎪⎩

1 if(A,v) ⊧ϕ 0 otherwise

⟦s⟧(A,v) = s

⟦α12⟧(A,v) = ⟦α1⟧(A,v) + ⟦α2⟧(A,v)

⟦α1⋅α2⟧(A,v) = ⟦α1⟧(A,v) ⋅ ⟦α2⟧(A,v)

⟦Σx. α⟧(A,v) = ∑

a∈A

⟦α⟧(A,v[a/x])

⟦Πx. α⟧(A,v) = ∏

a∈A

⟦α⟧(A,v[a/x])

⟦ΣX. α⟧(A,v) = ∑

C⊆Aarity(X)

⟦α⟧(A,v[C/X])

⟦ΠX. α⟧(A,v) = ∏

C⊆Aarity(X)

⟦α⟧(A,v[C/X])

(30)

Semantics of Quantitative Second Order logic

Given a QSO-formulaα,A∈Struct(R)and a var. assignmentv∶X→A we define thesemantics⟦α⟧ ∶Struct(R) →Nrecursively as follow:

⟦ϕ⟧(A,v) = ⎧⎪⎪

⎨⎪⎪⎩

1 if(A,v) ⊧ϕ 0 otherwise

⟦s⟧(A,v) = s

⟦α12⟧(A,v) = ⟦α1⟧(A,v) + ⟦α2⟧(A,v)

⟦α1⋅α2⟧(A,v) = ⟦α1⟧(A,v) ⋅ ⟦α2⟧(A,v)

⟦Σx. α⟧(A,v) = ∑

a∈A

⟦α⟧(A,v[a/x])

⟦Πx. α⟧(A,v) = ∏

a∈A

⟦α⟧(A,v[a/x])

⟦ΣX. α⟧(A,v) = ∑

C⊆Aarity(X)

⟦α⟧(A,v[C/X])

⟦ΠX. α⟧(A,v) = ∏

C⊆Aarity(X)

⟦α⟧(A,v[C/X])

(31)

Semantics of Quantitative Second Order logic

Given a QSO-formulaα,A∈Struct(R)and a var. assignmentv∶X→A we define thesemantics⟦α⟧ ∶Struct(R) →Nrecursively as follow:

⟦ϕ⟧(A,v) = ⎧⎪⎪

⎨⎪⎪⎩

1 if(A,v) ⊧ϕ 0 otherwise

⟦s⟧(A,v) = s

⟦α12⟧(A,v) = ⟦α1⟧(A,v) + ⟦α2⟧(A,v)

⟦α1⋅α2⟧(A,v) = ⟦α1⟧(A,v) ⋅ ⟦α2⟧(A,v)

⟦Σx. α⟧(A,v) = ∑

a∈A

⟦α⟧(A,v[a/x])

⟦Πx. α⟧(A,v) = ∏

a∈A

⟦α⟧(A,v[a/x])

⟦ΣX. α⟧(A,v) = ∑

C⊆Aarity(X)

⟦α⟧(A,v[C/X])

⟦ΠX. α⟧(A,v) = ∏

C⊆Aarity(X)

⟦α⟧(A,v[C/X])

(32)

Semantics of Quantitative Second Order logic

Given a QSO-formulaα,A∈Struct(R)and a var. assignmentv∶X→A we define thesemantics⟦α⟧ ∶Struct(R) →Nrecursively as follow:

⟦ϕ⟧(A,v) = ⎧⎪⎪

⎨⎪⎪⎩

1 if(A,v) ⊧ϕ 0 otherwise

⟦s⟧(A,v) = s

⟦α12⟧(A,v) = ⟦α1⟧(A,v) + ⟦α2⟧(A,v)

⟦α1⋅α2⟧(A,v) = ⟦α1⟧(A,v) ⋅ ⟦α2⟧(A,v)

⟦Σx. α⟧(A,v) = ∑

a∈A

⟦α⟧(A,v[a/x])

⟦Πx. α⟧(A,v) = ∏

a∈A

⟦α⟧(A,v[a/x])

⟦ΣX. α⟧(A,v) = ∑

C⊆Aarity(X)

⟦α⟧(A,v[C/X])

⟦ΠX. α⟧(A,v) = ∏

C⊆Aarity(X)

⟦α⟧(A,v[C/X])

(33)

Semantics of Quantitative Second Order logic

Given a QSO-formulaα,A∈Struct(R)and a var. assignmentv∶X→A we define thesemantics⟦α⟧ ∶Struct(R) →Nrecursively as follow:

⟦ϕ⟧(A,v) = ⎧⎪⎪

⎨⎪⎪⎩

1 if(A,v) ⊧ϕ 0 otherwise

⟦s⟧(A,v) = s

⟦α12⟧(A,v) = ⟦α1⟧(A,v) + ⟦α2⟧(A,v)

⟦α1⋅α2⟧(A,v) = ⟦α1⟧(A,v) ⋅ ⟦α2⟧(A,v)

⟦Σx. α⟧(A,v) = ∑

a∈A

⟦α⟧(A,v[a/x])

⟦Πx. α⟧(A,v) = ∏

a∈A

⟦α⟧(A,v[a/x])

⟦ΣX. α⟧(A,v) = ∑

C⊆Aarity(X)

⟦α⟧(A,v[C/X])

⟦ΠX. α⟧(A,v) = ∏

C⊆Aarity(X)

⟦α⟧(A,v[C/X])

(34)

Semantics of Quantitative Second Order logic

Given a QSO-formulaα,A∈Struct(R)and a var. assignmentv∶X→A we define thesemantics⟦α⟧ ∶Struct(R) →Nrecursively as follow:

⟦ϕ⟧(A,v) = ⎧⎪⎪

⎨⎪⎪⎩

1 if(A,v) ⊧ϕ 0 otherwise

⟦s⟧(A,v) = s

⟦α12⟧(A,v) = ⟦α1⟧(A,v) + ⟦α2⟧(A,v)

⟦α1⋅α2⟧(A,v) = ⟦α1⟧(A,v) ⋅ ⟦α2⟧(A,v)

⟦Σx. α⟧(A,v) = ∑

a∈A

⟦α⟧(A,v[a/x])

⟦Πx. α⟧(A,v) = ∏

a∈A

⟦α⟧(A,v[a/x])

⟦ΣX. α⟧(A,v) = ∑

C⊆Aarity(X)

⟦α⟧(A,v[C/X])

⟦ΠX. α⟧(A,v) = ∏

C⊆Aarity(X)

⟦α⟧(A,v[C/X])

(35)

Semantics of Quantitative Second Order logic

Example (counting the triangles in a graph)

1

2 3 4

5

3 4

5

3

1

2

A∶

triangle(x,y,z) ∶= E(x,y) ∧E(y,z) ∧E(z,x) ∧x<y ∧y<z

⟦triangle⟧(A,3,4,5) = 1 ⟦triangle⟧(A,1,2,3) = 0

α ∶= Σx.Σy.Σz.triangle(x,y,z)

⟦α⟧(A) = 3

(36)

Semantics of Quantitative Second Order logic

Example (counting the triangles in a graph)

1

2 3 4

5

3 4

5

3

1

2

A∶

triangle(x,y,z) ∶= E(x,y) ∧E(y,z) ∧E(z,x) ∧x<y ∧y<z

⟦triangle⟧(A,3,4,5) = 1 ⟦triangle⟧(A,1,2,3) = 0

α ∶= Σx.Σy.Σz.triangle(x,y,z)

⟦α⟧(A) = 3

(37)

Semantics of Quantitative Second Order logic

Example (counting the triangles in a graph)

1

2 3 4

5

3 4

5

3

1

2

A∶

triangle(x,y,z) ∶= E(x,y) ∧E(y,z) ∧E(z,x) ∧x<y ∧y<z

⟦triangle⟧(A,3,4,5) = 1

⟦triangle⟧(A,1,2,3) = 0

α ∶= Σx.Σy.Σz.triangle(x,y,z)

⟦α⟧(A) = 3

(38)

Semantics of Quantitative Second Order logic

Example (counting the triangles in a graph)

1

2 3 4

5

3 4

5

3

1

2 A∶

triangle(x,y,z) ∶= E(x,y) ∧E(y,z) ∧E(z,x) ∧x<y ∧y<z

⟦triangle⟧(A,3,4,5) = 1 ⟦triangle⟧(A,1,2,3) = 0

α ∶= Σx.Σy.Σz.triangle(x,y,z)

⟦α⟧(A) = 3

(39)

Semantics of Quantitative Second Order logic

Example (counting the triangles in a graph)

1

2 3 4

5

3 4

5

3

1

2

A∶

triangle(x,y,z) ∶= E(x,y) ∧E(y,z) ∧E(z,x) ∧x<y ∧y<z

⟦triangle⟧(A,3,4,5) = 1 ⟦triangle⟧(A,1,2,3) = 0

α ∶= Σx.Σy.Σz.triangle(x,y,z)

⟦α⟧(A) = 3

(40)

Semantics of Quantitative Second Order logic

Example (counting the triangles in a graph)

1

2 3 4

5

3 4

5

3

1

2

A∶

triangle(x,y,z) ∶= E(x,y) ∧E(y,z) ∧E(z,x) ∧x<y ∧y<z

⟦triangle⟧(A,3,4,5) = 1 ⟦triangle⟧(A,1,2,3) = 0

α ∶= Σx.Σy.Σz.triangle(x,y,z)

⟦α⟧(A) = 3

(41)

Semantics of Quantitative Second Order logic

Example (counting the number of cliques in a graph)

1

2 3 4

5

3 4

5

1

2

A∶

clique(X) ∶= ∀x.∀y.(X(x) ∧X(y) ∧x≠y) →E(x,y)

⟦clique⟧(A,{3,4,5}) = 1 ⟦clique⟧(A,{1,2}) = 1

α ∶= ΣX.clique(X)

⟦α⟧(A) = 18

(42)

Semantics of Quantitative Second Order logic

Example (counting the number of cliques in a graph)

1

2 3 4

5

3 4

5

1

2

A∶

clique(X) ∶= ∀x.∀y.(X(x) ∧X(y) ∧x≠y) →E(x,y)

⟦clique⟧(A,{3,4,5}) = 1 ⟦clique⟧(A,{1,2}) = 1

α ∶= ΣX.clique(X)

⟦α⟧(A) = 18

(43)

Semantics of Quantitative Second Order logic

Example (counting the number of cliques in a graph)

1

2 3 4

5

3 4

5

1

2

A∶

clique(X) ∶= ∀x.∀y.(X(x) ∧X(y) ∧x≠y) →E(x,y)

⟦clique⟧(A,{3,4,5}) = 1

⟦clique⟧(A,{1,2}) = 1

α ∶= ΣX.clique(X)

⟦α⟧(A) = 18

(44)

Semantics of Quantitative Second Order logic

Example (counting the number of cliques in a graph)

1

2 3 4

5

3 4

5

1

2 A∶

clique(X) ∶= ∀x.∀y.(X(x) ∧X(y) ∧x≠y) →E(x,y)

⟦clique⟧(A,{3,4,5}) = 1 ⟦clique⟧(A,{1,2}) = 1

α ∶= ΣX.clique(X)

⟦α⟧(A) = 18

(45)

Semantics of Quantitative Second Order logic

Example (counting the number of cliques in a graph)

1

2 3 4

5

3 4

5

1

2

A∶

clique(X) ∶= ∀x.∀y.(X(x) ∧X(y) ∧x≠y) →E(x,y)

⟦clique⟧(A,{3,4,5}) = 1 ⟦clique⟧(A,{1,2}) = 1

α ∶= ΣX.clique(X)

⟦α⟧(A) = 18

(46)

Semantics of Quantitative Second Order logic

Example (counting the number of cliques in a graph)

1

2 3 4

5

3 4

5

1

2

A∶

clique(X) ∶= ∀x.∀y.(X(x) ∧X(y) ∧x≠y) →E(x,y)

⟦clique⟧(A,{3,4,5}) = 1 ⟦clique⟧(A,{1,2}) = 1

α ∶= ΣX.clique(X)

⟦α⟧(A) = 18

(47)

Subfragments and extentions of QSO

α ∶= ϕ∈SO ∣ s ∣ (α+α) ∣ (α⋅α) ∣Σx. α ∣ Πx. α ∣ ΣX. α ∣ ΠX. α

QSO = QSO

±α

(

«ϕ

SO)

We can restrict or extend the language of

ϕ

: QSO(FO) := ϕis restricted toFO logic. QSO(LFP) := ϕis restricted toLFP logic. We can restrict or extend the language of

α

:

QFO(SO) := αis restricted tofirst order operators(i.e. s,+,⋅,Σx. ,Πx.). ΣQSO(SO) := αis restricted tosum operators(i.e. s,+,Σx. ,ΣX.) Or both

ϕ

and

α

:

QFO(LFP) = αis restricted tofirst order operators andϕis restricted toLFP logic.

(48)

Subfragments and extentions of QSO

α ∶= ϕ∈SO ∣ s ∣ (α+α) ∣ (α⋅α) ∣Σx. α ∣ Πx. α ∣ ΣX. α ∣ ΠX. α

QSO = QSO

±α

(

«ϕ

SO)

We can restrict or extend the language of

ϕ

: QSO(FO) := ϕis restricted toFO logic. QSO(LFP) := ϕis restricted toLFP logic. We can restrict or extend the language of

α

:

QFO(SO) := αis restricted tofirst order operators(i.e. s,+,⋅,Σx. ,Πx.). ΣQSO(SO) := αis restricted tosum operators(i.e. s,+,Σx. ,ΣX.) Or both

ϕ

and

α

:

QFO(LFP) = αis restricted tofirst order operators andϕis restricted toLFP logic.

(49)

Subfragments and extentions of QSO

α ∶= ϕ∈SO ∣ s ∣ (α+α) ∣ (α⋅α) ∣Σx. α ∣ Πx. α ∣ ΣX. α ∣ ΠX. α

QSO = QSO

±α

(

«ϕ

SO)

We can restrict or extend the language of

ϕ

: QSO(FO) := ϕis restricted toFO logic.

QSO(LFP) := ϕis restricted toLFP logic. We can restrict or extend the language of

α

:

QFO(SO) := αis restricted tofirst order operators(i.e. s,+,⋅,Σx. ,Πx.). ΣQSO(SO) := αis restricted tosum operators(i.e. s,+,Σx. ,ΣX.) Or both

ϕ

and

α

:

QFO(LFP) = αis restricted tofirst order operators andϕis restricted toLFP logic.

(50)

Subfragments and extentions of QSO

α ∶= ϕ∈SO ∣ s ∣ (α+α) ∣ (α⋅α) ∣Σx. α ∣ Πx. α ∣ ΣX. α ∣ ΠX. α

QSO = QSO

±α

(

«ϕ

SO)

We can restrict or extend the language of

ϕ

: QSO(FO) := ϕis restricted toFO logic.

QSO(LFP) := ϕis restricted toLFP logic.

We can restrict or extend the language of

α

:

QFO(SO) := αis restricted tofirst order operators(i.e. s,+,⋅,Σx. ,Πx.). ΣQSO(SO) := αis restricted tosum operators(i.e. s,+,Σx. ,ΣX.) Or both

ϕ

and

α

:

QFO(LFP) = αis restricted tofirst order operators andϕis restricted toLFP logic.

(51)

Subfragments and extentions of QSO

α ∶= ϕ∈SO ∣ s ∣ (α+α) ∣ (α⋅α) ∣Σx. α ∣ Πx. α ∣ ΣX. α ∣ ΠX. α

QSO = QSO

±α

(

«ϕ

SO)

We can restrict or extend the language of

ϕ

: QSO(FO) := ϕis restricted toFO logic.

QSO(LFP) := ϕis restricted toLFP logic.

We can restrict or extend the language of

α

:

QFO(SO) := αis restricted tofirst order operators(i.e. s,+,⋅,Σx. ,Πx.).

ΣQSO(SO) := αis restricted tosum operators(i.e. s,+,Σx. ,ΣX.) Or both

ϕ

and

α

:

QFO(LFP) = αis restricted tofirst order operators andϕis restricted toLFP logic.

(52)

Subfragments and extentions of QSO

α ∶= ϕ∈SO ∣ s ∣ (α+α) ∣ (α⋅α) ∣Σx. α ∣ Πx. α ∣ ΣX. α ∣ ΠX. α

QSO = QSO

±α

(

«ϕ

SO)

We can restrict or extend the language of

ϕ

: QSO(FO) := ϕis restricted toFO logic.

QSO(LFP) := ϕis restricted toLFP logic.

We can restrict or extend the language of

α

:

QFO(SO) := αis restricted tofirst order operators(i.e. s,+,⋅,Σx. ,Πx.).

ΣQSO(SO) := αis restricted tosum operators(i.e. s,+,Σx. ,ΣX.)

Or both

ϕ

and

α

:

QFO(LFP) = αis restricted tofirst order operators andϕis restricted toLFP logic.

(53)

Subfragments and extentions of QSO

α ∶= ϕ∈SO ∣ s ∣ (α+α) ∣ (α⋅α) ∣Σx. α ∣ Πx. α ∣ ΣX. α ∣ ΠX. α

QSO = QSO

±α

(

«ϕ

SO)

We can restrict or extend the language of

ϕ

: QSO(FO) := ϕis restricted toFO logic.

QSO(LFP) := ϕis restricted toLFP logic.

We can restrict or extend the language of

α

:

QFO(SO) := αis restricted tofirst order operators(i.e. s,+,⋅,Σx. ,Πx.).

ΣQSO(SO) := αis restricted tosum operators(i.e. s,+,Σx. ,ΣX.) Or both

ϕ

and

α

:

QFO(LFP) = αis restricted tofirst order operators andϕis restricted toLFP logic.

(54)

Quantitative second order logic

QSO vs counting complexity

Below and beyond

Outline

(55)

Capturing a counting complexity class with QSO

Recall that a counting complexityC ⊆ {f ∶Σ→N}.

Let enc(A)be any reasonable encoding ofAinto a string in Σ.

Definition

LetFbe a fragment or extension of QSO andCa counting complexity class. ThenFcapturesCover orderedR-structures if:

1.

for everyα∈ F, there existsf ∈ Csuch that⟦α⟧(A) =f(enc(A)) for everyA∈Struct[R].

2.

for everyf ∈ C, there existsα∈ F such thatf(enc(A)) = ⟦α⟧(A) for everyA∈Struct[R].

F capturesC over ordered structures ifF capturesCover ordered R-structuresfor every signatureR.

(56)

Capturing a counting complexity class with QSO

Recall that a counting complexityC ⊆ {f ∶Σ→N}.

Let enc(A)be any reasonable encoding ofAinto a string in Σ.

Definition

LetFbe a fragment or extension of QSO andCa counting complexity class. ThenFcapturesCover orderedR-structures if:

1.

for everyα∈ F, there existsf ∈ Csuch that⟦α⟧(A) =f(enc(A)) for everyA∈Struct[R].

2.

for everyf ∈ C, there existsα∈ F such thatf(enc(A)) = ⟦α⟧(A) for everyA∈Struct[R].

F capturesC over ordered structures ifF capturesCover ordered R-structuresfor every signatureR.

(57)

Capturing a counting complexity class with QSO

Recall that a counting complexityC ⊆ {f ∶Σ→N}.

Let enc(A)be any reasonable encoding ofAinto a string in Σ.

Definition

LetFbe a fragment or extension of QSO andCa counting complexity class.

ThenFcapturesCover orderedR-structures if:

1.

for everyα∈ F, there existsf ∈ Csuch that⟦α⟧(A) =f(enc(A)) for everyA∈Struct[R].

2.

for everyf ∈ C, there existsα∈ F such thatf(enc(A)) = ⟦α⟧(A) for everyA∈Struct[R].

F capturesC over ordered structures ifF capturesCover ordered R-structuresfor every signatureR.

(58)

Capturing a counting complexity class with QSO

Recall that a counting complexityC ⊆ {f ∶Σ→N}.

Let enc(A)be any reasonable encoding ofAinto a string in Σ.

Definition

LetFbe a fragment or extension of QSO andCa counting complexity class.

ThenF capturesCover orderedR-structures if:

1.

for everyα∈ F, there existsf ∈ Csuch that⟦α⟧(A) =f(enc(A)) for everyA∈Struct[R].

2.

for everyf ∈ C, there existsα∈ F such thatf(enc(A)) = ⟦α⟧(A) for everyA∈Struct[R].

F capturesC over ordered structures ifF capturesCover ordered R-structuresfor every signatureR.

(59)

Capturing a counting complexity class with QSO

Recall that a counting complexityC ⊆ {f ∶Σ→N}.

Let enc(A)be any reasonable encoding ofAinto a string in Σ.

Definition

LetFbe a fragment or extension of QSO andCa counting complexity class.

ThenF capturesCover orderedR-structures if:

1.

for everyα∈ F, there existsf ∈ Csuch that⟦α⟧(A) =f(enc(A)) for everyA∈Struct[R].

2.

for everyf ∈ C, there existsα∈ F such thatf(enc(A)) = ⟦α⟧(A) for everyA∈Struct[R].

F capturesC over ordered structures ifF capturesCover ordered R-structuresfor every signatureR.

(60)

Capturing a counting complexity class with QSO

Recall that a counting complexityC ⊆ {f ∶Σ→N}.

Let enc(A)be any reasonable encoding ofAinto a string in Σ.

Definition

LetFbe a fragment or extension of QSO andCa counting complexity class.

ThenF capturesCover orderedR-structures if:

1.

for everyα∈ F, there existsf ∈ Csuch that⟦α⟧(A) =f(enc(A)) for everyA∈Struct[R].

2.

for everyf ∈ C, there existsα∈ F such thatf(enc(A)) = ⟦α⟧(A) for everyA∈Struct[R].

F capturesC over ordered structures ifF capturesCover ordered R-structuresfor every signatureR.

(61)

What counting classes can be captured by QSO?

Counting complexity classes

⎧⎪⎪⎪⎪⎪⎪⎪⎪

⎪⎪⎪⎪⎪

⎪⎪⎪⎪⎨⎪⎪

⎪⎪⎪⎪⎪

⎪⎪⎪⎪⎪

⎪⎪⎪⎪⎪

#P

≡ ?

SpanP

≡ ?

FP

≡ ?

#L

≡ ?

#PSPACE

≡ ?

⋮ ⋮

We show that most of these classes

can be captured by subfragments or extensions of QSO

(62)

What counting classes can be captured by QSO?

Counting complexity classes

⎧⎪⎪⎪⎪⎪⎪⎪⎪

⎪⎪⎪⎪⎪

⎪⎪⎪⎪⎨⎪⎪

⎪⎪⎪⎪⎪

⎪⎪⎪⎪⎪

⎪⎪⎪⎪⎪

#P

≡ ?

SpanP

≡ ?

FP

≡ ?

#L

≡ ?

#PSPACE

≡ ?

⋮ ⋮

We show that most of these classes

can be captured by subfragments or extensions of QSO

(63)

How to capture # P ?

f ∈#P iff there exists anNP machineM

such thatf(x) =#acceptsM(x)for allx∈Σ. ΣQSO(FO) := αrestricted tosum operators(i.e. s,+,Σx. ,ΣX.)

andϕrestricted toFO logic.

Theorem

ΣQSO(FO)captures #Pover ordered structures.

(64)

How to capture # P ?

f ∈#P iff there exists anNP machineM

such thatf(x) =#acceptsM(x)for allx∈Σ.

ΣQSO(FO) := αrestricted tosum operators(i.e. s,+,Σx. ,ΣX.) andϕrestricted toFO logic.

Theorem

ΣQSO(FO)captures #Pover ordered structures.

(65)

How to capture # P ?

f ∈#P iff there exists anNP machineM

such thatf(x) =#acceptsM(x)for allx∈Σ. ΣQSO(FO) := αrestricted tosum operators(i.e. s,+,Σx. ,ΣX.)

andϕrestricted toFO logic.

Theorem

ΣQSO(FO)captures #Pover ordered structures.

(66)

How to capture # P ?

f ∈#P iff there exists anNP machineM

such thatf(x) =#acceptsM(x)for allx∈Σ. ΣQSO(FO) := αrestricted tosum operators(i.e. s,+,Σx. ,ΣX.)

andϕrestricted toFO logic.

Theorem

ΣQSO(FO)captures #Pover ordered structures.

(67)

How to capture SpanP ?

#P ≡ ΣQSO(FO)

f ∈SpanP iff there exists anNP machineM withoutput such thatf(x) =#outputsM(x)for allx∈Σ. ΣQSO(∃SO) := αrestricted tosum operators(i.e. s,+,Σx. ,ΣX.)

andϕrestricted toexistential SO logic.

Theorem

ΣQSO(∃SO)capturesSpanPover ordered structures.

#PandSpanPwere shown to be captured by a different framework of Saluja et al. and Compton et al.

(68)

How to capture SpanP ?

#P ≡ ΣQSO(FO)

f ∈SpanP iff there exists anNP machineM withoutput such thatf(x) =#outputsM(x)for allx∈Σ.

ΣQSO(∃SO) := αrestricted tosum operators(i.e. s,+,Σx. ,ΣX.) andϕrestricted toexistential SO logic.

Theorem

ΣQSO(∃SO)capturesSpanPover ordered structures.

#PandSpanPwere shown to be captured by a different framework of Saluja et al. and Compton et al.

(69)

How to capture SpanP ?

#P ≡ ΣQSO(FO)

f ∈SpanP iff there exists anNP machineM withoutput such thatf(x) =#outputsM(x)for allx∈Σ. ΣQSO(∃SO) := αrestricted tosum operators(i.e. s,+,Σx. ,ΣX.)

andϕrestricted toexistential SO logic.

Theorem

ΣQSO(∃SO)capturesSpanPover ordered structures.

#PandSpanPwere shown to be captured by a different framework of Saluja et al. and Compton et al.

(70)

How to capture SpanP ?

#P ≡ ΣQSO(FO)

f ∈SpanP iff there exists anNP machineM withoutput such thatf(x) =#outputsM(x)for allx∈Σ. ΣQSO(∃SO) := αrestricted tosum operators(i.e. s,+,Σx. ,ΣX.)

andϕrestricted toexistential SO logic.

Theorem

ΣQSO(∃SO)capturesSpanPover ordered structures.

#PandSpanPwere shown to be captured by a different framework of Saluja et al. and Compton et al.

(71)

How to capture SpanP ?

#P ≡ ΣQSO(FO)

f ∈SpanP iff there exists anNP machineM withoutput such thatf(x) =#outputsM(x)for allx∈Σ. ΣQSO(∃SO) := αrestricted tosum operators(i.e. s,+,Σx. ,ΣX.)

andϕrestricted toexistential SO logic.

Theorem

ΣQSO(∃SO)capturesSpanPover ordered structures.

#PandSpanPwere shown to be captured by a different framework of Saluja et al. and Compton et al.

(72)

How to capture FP ?

#P ≡ ΣQSO(FO)

SpanP ≡ ΣQSO(∃SO)

f ∈FP iff there exists aPTIME machineM with output such thatf(x) =M(x)for allx∈Σ.

QFO(LFP) := αrestricted tofirst order op. (i.e. +,⋅,Σx. ,Πx.) andϕrestricted toLFP logic.

Theorem

QFO(LFP)capturesFPover ordered structures.

(73)

How to capture FP ?

#P ≡ ΣQSO(FO)

SpanP ≡ ΣQSO(∃SO)

f ∈FP iff there exists aPTIME machineM with output such thatf(x) =M(x)for allx∈Σ.

QFO(LFP) := αrestricted tofirst order op. (i.e. +,⋅,Σx. ,Πx.) andϕrestricted toLFP logic.

Theorem

QFO(LFP)capturesFPover ordered structures.

(74)

How to capture FP ?

#P ≡ ΣQSO(FO)

SpanP ≡ ΣQSO(∃SO)

f ∈FP iff there exists aPTIME machineM with output such thatf(x) =M(x)for allx∈Σ.

QFO(LFP) := αrestricted tofirst order op. (i.e. +,⋅,Σx. ,Πx.) andϕrestricted toLFP logic.

Theorem

QFO(LFP)capturesFPover ordered structures.

(75)

How to capture FP ?

#P ≡ ΣQSO(FO)

SpanP ≡ ΣQSO(∃SO)

f ∈FP iff there exists aPTIME machineM with output such thatf(x) =M(x)for allx∈Σ.

QFO(LFP) := αrestricted tofirst order op. (i.e. +,⋅,Σx. ,Πx.) andϕrestricted toLFP logic.

Theorem

QFO(LFP)capturesFPover ordered structures.

(76)

How to capture FPSPACE ?

#P ≡ ΣQSO(FO)

SpanP ≡ ΣQSO(∃SO) FP ≡ QFO(LFP)

f ∈FPSPACE iff there exists aPSPACE machineM with output such thatf(x) =M(x)for allx∈Σ.

QSO(PFP) := ϕrestricted toPFP logic.

Theorem

QSO(PFP)capturesFPSPACEover ordered structures.

(77)

How to capture FPSPACE ?

#P ≡ ΣQSO(FO)

SpanP ≡ ΣQSO(∃SO) FP ≡ QFO(LFP)

f ∈FPSPACE iff there exists aPSPACE machineM with output such thatf(x) =M(x)for allx∈Σ.

QSO(PFP) := ϕrestricted toPFP logic.

Theorem

QSO(PFP)capturesFPSPACEover ordered structures.

(78)

How to capture FPSPACE ?

#P ≡ ΣQSO(FO)

SpanP ≡ ΣQSO(∃SO) FP ≡ QFO(LFP)

f ∈FPSPACE iff there exists aPSPACE machineM with output such thatf(x) =M(x)for allx∈Σ.

QSO(PFP) := ϕrestricted toPFP logic.

Theorem

QSO(PFP)capturesFPSPACEover ordered structures.

(79)

How to capture FPSPACE ?

#P ≡ ΣQSO(FO)

SpanP ≡ ΣQSO(∃SO) FP ≡ QFO(LFP)

f ∈FPSPACE iff there exists aPSPACE machineM with output such thatf(x) =M(x)for allx∈Σ.

QSO(PFP) := ϕrestricted toPFP logic.

Theorem

QSO(PFP)capturesFPSPACEover ordered structures.

(80)

How to capture FPSPACE (poly)?

#P ≡ ΣQSO(FO)

SpanP ≡ ΣQSO(∃SO) FP ≡ QFO(LFP) FPSPACE ≡ QSO(PFP)

f ∈FPSPACE(poly) iff there exists aPSPACE machineM with output of polynomial size such thatf(x) =M(x)for allx∈Σ.

QFO(PFP) := αrestricted tofirst order op. (i.e. +,⋅,Σx. ,Πx.) andϕrestricted toPFP logic.

Theorem

QFO(PFP)capturesFPSPACE(poly)over ordered structures.

(81)

How to capture FPSPACE (poly)?

#P ≡ ΣQSO(FO)

SpanP ≡ ΣQSO(∃SO) FP ≡ QFO(LFP) FPSPACE ≡ QSO(PFP)

f ∈FPSPACE(poly) iff there exists aPSPACE machineM with output of polynomial size such thatf(x) =M(x)for allx∈Σ.

QFO(PFP) := αrestricted tofirst order op. (i.e. +,⋅,Σx. ,Πx.) andϕrestricted toPFP logic.

Theorem

QFO(PFP)capturesFPSPACE(poly)over ordered structures.

(82)

How to capture FPSPACE (poly)?

#P ≡ ΣQSO(FO)

SpanP ≡ ΣQSO(∃SO) FP ≡ QFO(LFP) FPSPACE ≡ QSO(PFP)

f ∈FPSPACE(poly) iff there exists aPSPACE machineM with output of polynomial size such thatf(x) =M(x)for allx∈Σ.

QFO(PFP) := αrestricted tofirst order op. (i.e. +,⋅,Σx. ,Πx.) andϕrestricted toPFP logic.

Theorem

QFO(PFP)capturesFPSPACE(poly)over ordered structures.

(83)

How to capture FPSPACE (poly)?

#P ≡ ΣQSO(FO)

SpanP ≡ ΣQSO(∃SO) FP ≡ QFO(LFP) FPSPACE ≡ QSO(PFP)

f ∈FPSPACE(poly) iff there exists aPSPACE machineM with output of polynomial size such thatf(x) =M(x)for allx∈Σ.

QFO(PFP) := αrestricted tofirst order op. (i.e. +,⋅,Σx. ,Πx.) andϕrestricted toPFP logic.

Theorem

QFO(PFP)capturesFPSPACE(poly)over ordered structures.

(84)

More classes?

#P ≡ ΣQSO(FO)

SpanP ≡ ΣQSO(∃SO)

FP ≡ QFO(LFP)

FPSPACE ≡ QSO(PFP) FPSPACE(poly) ≡ QFO(PFP)

GapP ≡ ΣQSOZ(FO)

MaxP ≡ MaxQSO(FO)

MinP ≡ MinQSO(FO)

(85)

More classes?

#P ≡ ΣQSO(FO)

SpanP ≡ ΣQSO(∃SO)

FP ≡ QFO(LFP)

FPSPACE ≡ QSO(PFP) FPSPACE(poly) ≡ QFO(PFP) GapP ≡ ΣQSOZ(FO)

MaxP ≡ MaxQSO(FO)

MinP ≡ MinQSO(FO)

(86)

More classes?

#P ≡ ΣQSO(FO)

SpanP ≡ ΣQSO(∃SO)

FP ≡ QFO(LFP)

FPSPACE ≡ QSO(PFP) FPSPACE(poly) ≡ QFO(PFP) GapP ≡ ΣQSOZ(FO)

MaxP ≡ MaxQSO(FO)

MinP ≡ MinQSO(FO)

(87)

Quantitative second order logic

QSO vs counting complexity

Below and beyond

Outline

(88)

Use QSO to understand classes below # P

#P ≡ ΣQSO(FO)

We consider subfragments below FO:

Σ0 = {θ∈FO ∣ θ has no first-order quantifiers} Σ1 = {ϕ∈FO ∣ ϕ= ∃x. θ¯ (x¯) ∧ θ∈Σ0} Π1 = {ϕ∈FO ∣ ϕ= ∀x¯. θ(x¯) ∧ θ∈Σ0} Σ2 = {ϕ∈FO ∣ ϕ= ∃¯x.∀¯y. θ(¯x,y¯) ∧ θ∈Σ0 } Π2 = {ϕ∈FO ∣ ϕ= ∀x¯.∃y¯. θ(x¯,y¯) ∧ θ∈Σ0 }

(89)

Use QSO to understand classes below # P

#P ≡ ΣQSO(FO)

We consider subfragments below FO:

Σ0 = {θ∈FO ∣ θ has no first-order quantifiers} Σ1 = {ϕ∈FO ∣ ϕ= ∃x. θ¯ (x¯) ∧ θ∈Σ0} Π1 = {ϕ∈FO ∣ ϕ= ∀x¯. θ(x¯) ∧ θ∈Σ0} Σ2 = {ϕ∈FO ∣ ϕ= ∃¯x.∀¯y. θ(¯x,y¯) ∧ θ∈Σ0} Π2 = {ϕ∈FO ∣ ϕ= ∀x¯.∃y¯. θ(x¯,y¯) ∧ θ∈Σ0}

(90)

Use QSO to understand classes below # P

#P ≡ ΣQSO(FO)

Saluja et. al. counting classes below # P

0 ⊊ #Σ1 ⊊ #Π1 ⊊ #Σ2 ⊊ #Π2 = #FO ≡ #P

Theorem (ΣQSO-hierarchy)

0

1

ΣQSO(Σ0)

⊊ ΣQSO(Σ1)

1

⊊ = ΣQSO(Π1) ⊊ #Σ2

2 = ΣQSO(Σ2) ⊊ #Π2 = ΣQSO(Π2) ≡ #P

(91)

Use QSO to understand classes below # P

#P ≡ ΣQSO(FO)

Saluja et. al. counting classes below # P

0 ⊊ #Σ1 ⊊ #Π1 ⊊ #Σ2 ⊊ #Π2 = #FO ≡ #P

Theorem (ΣQSO-hierarchy)

0

1

ΣQSO(Σ0)

ΣQSO(Σ1)

1

⊊ = ΣQSO(Π1) ⊊ #Σ2

2 = ΣQSO(Σ2) ⊊ #Π2 = ΣQSO(Π2) ≡ #P

(92)

Use QSO to understand classes below # P

#P ≡ ΣQSO(FO)

Saluja et. al. counting classes below # P

0 ⊊ #Σ1 ⊊ #Π1 ⊊ #Σ2 ⊊ #Π2 = #FO ≡ #P

Theorem (ΣQSO-hierarchy)

0

1

ΣQSO(Σ0)

⊊ ΣQSO(Σ1)

1

⊊ = ΣQSO(Π1) ⊊ #Σ2

2 = ΣQSO(Σ2) ⊊ #Π2 = ΣQSO(Π2) ≡ #P

(93)

Use QSO to understand classes below # P

#P ≡ ΣQSO(FO)

Saluja et. al. counting classes below # P

0 ⊊ #Σ1 ⊊ #Π1 ⊊ #Σ2 ⊊ #Π2 = #FO ≡ #P

Theorem (ΣQSO-hierarchy)

0

1

ΣQSO(Σ0)

⊊ ΣQSO(Σ1)

1

⊊ = ΣQSO(Π1)

2

2 = ΣQSO(Σ2) ⊊ #Π2 = ΣQSO(Π2) ≡ #P

(94)

Use QSO to understand classes below # P

#P ≡ ΣQSO(FO)

Saluja et. al. counting classes below # P

0 ⊊ #Σ1 ⊊ #Π1 ⊊ #Σ2 ⊊ #Π2 = #FO ≡ #P

Theorem (ΣQSO-hierarchy)

0

1

ΣQSO(Σ0)

⊊ ΣQSO(Σ1)

1

⊊ = ΣQSO(Π1) ⊊ #Σ2

2 = ΣQSO(Σ2)

2

⊊ = ΣQSO(Π2) ≡ #P

(95)

Use QSO to understand classes below # P

#P ≡ ΣQSO(FO)

Saluja et. al. counting classes below # P

0 ⊊ #Σ1 ⊊ #Π1 ⊊ #Σ2 ⊊ #Π2 = #FO ≡ #P

Theorem (ΣQSO-hierarchy)

0

1

ΣQSO(Σ0)

⊊ ΣQSO(Σ1)

1

⊊ = ΣQSO(Π1) ⊊ #Σ2

2 = ΣQSO(Σ2) ⊊ #Π2 = ΣQSO(Π2) ≡ #P

(96)

The class ΣQSO(Σ

1

[FO])

Consider the following fragment of FO:

Σ1[FO] = {ϕ∈FO ∣ ϕ= ∃¯x. θ(¯x)andθcan contain atomic formulae of the form u=v, X(u¯)andϕ(¯u) ∈FO}

Theorem (good decision and closure properties)

The class ΣQSO(Σ1[FO])is closed under sum, multiplication and subtraction by one. Moreover, ΣQSO(Σ1[FO]) ⊆TotPand every function in ΣQSO(Σ1[FO])has an FPRAS.

(97)

The class ΣQSO(Σ

1

[FO])

Consider the following fragment of FO:

Σ1[FO] = {ϕ∈FO ∣ ϕ= ∃¯x. θ(¯x)andθcan contain atomic formulae of the form u=v, X(u¯)andϕ(¯u) ∈FO}

Theorem (good decision and closure properties)

The class ΣQSO(Σ1[FO])is closed under sum, multiplication and subtraction by one. Moreover, ΣQSO(Σ1[FO]) ⊆TotPand every function in ΣQSO(Σ1[FO])has an FPRAS.

(98)

The class ΣQSO(Σ

1

[FO])

Consider the following fragment of FO:

Σ1[FO] = {ϕ∈FO ∣ ϕ= ∃¯x. θ(¯x)andθcan contain atomic formulae of the form u=v, X(u¯)andϕ(¯u) ∈FO}

Theorem (good decision and closure properties)

The class ΣQSO(Σ1[FO])is closed under sum, multiplication and subtraction by one. Moreover, ΣQSO(Σ1[FO]) ⊆TotPand every function in ΣQSO(Σ1[FO])has an FPRAS.

(99)

The class ΣQSO(Σ

1

[FO])

Consider the following fragment of FO:

Σ1[FO] = {ϕ∈FO ∣ ϕ= ∃¯x. θ(¯x)andθcan contain atomic formulae of the form u=v, X(u¯)andϕ(¯u) ∈FO}

Theorem (good decision and closure properties)

The class ΣQSO(Σ1[FO])is closed under sum, multiplication and subtraction by one.

Moreover, ΣQSO(Σ1[FO]) ⊆TotPand every function in ΣQSO(Σ1[FO])has an FPRAS.

(100)

The class ΣQSO(Σ

1

[FO])

Consider the following fragment of FO:

Σ1[FO] = {ϕ∈FO ∣ ϕ= ∃¯x. θ(¯x)andθcan contain atomic formulae of the form u=v, X(u¯)andϕ(¯u) ∈FO}

Theorem (good decision and closure properties)

The class ΣQSO(Σ1[FO])is closed under sum, multiplication and subtraction by one. Moreover, ΣQSO(Σ1[FO]) ⊆TotP

and every function in ΣQSO(Σ1[FO])has an FPRAS.

(101)

The class ΣQSO(Σ

1

[FO])

Consider the following fragment of FO:

Σ1[FO] = {ϕ∈FO ∣ ϕ= ∃¯x. θ(¯x)andθcan contain atomic formulae of the form u=v, X(u¯)andϕ(¯u) ∈FO}

Theorem (good decision and closure properties)

The class ΣQSO(Σ1[FO])is closed under sum, multiplication and subtraction by one. Moreover, ΣQSO(Σ1[FO]) ⊆TotPand every function in ΣQSO(Σ1[FO])has an FPRAS.

(102)

ΣQSO(Σ

1

[FO]) is closed under subtraction by one

We focus on the case whereα∈ΣQSO(Σ1[FO])is of the form: α = Σ ¯X.Σ¯x.∃y¯. ϕ(X¯,x,¯y¯)

We construct a formulamin-ϕFO(x¯)that identifies thelexicographically minimalassignmentσto ¯x that satisfies∃X¯.∃y¯. ϕ(X¯,x,¯y¯).

Then we usemin-ϕFO(x¯)to define a formulaψ(X¯,x¯)thatfilters outthe minimal assignment to ¯X for thatσ.

Lastly, we define a formula that counts one assignment less for(X¯,x¯): α = Σ ¯X.Σ¯x.∃¯y. ϕ(X¯,x,¯y¯) ∧ψ(X¯,¯x)

In this setting, the existence of asmall witness(in this caseσ) is essential to have closure by subtraction by one.

(proof sketch)

(103)

ΣQSO(Σ

1

[FO]) is closed under subtraction by one

We focus on the case whereα∈ΣQSO(Σ1[FO])is of the form:

α = Σ ¯X.Σ¯x.∃y¯. ϕ(X¯,x,¯y¯)

We construct a formulamin-ϕFO(x¯)that identifies thelexicographically minimalassignmentσto ¯x that satisfies∃X¯.∃y¯. ϕ(X¯,x,¯y¯).

Then we usemin-ϕFO(x¯)to define a formulaψ(X¯,x¯)thatfilters outthe minimal assignment to ¯X for thatσ.

Lastly, we define a formula that counts one assignment less for(X¯,x¯): α = Σ ¯X.Σ¯x.∃¯y. ϕ(X¯,x,¯y¯) ∧ψ(X¯,¯x)

In this setting, the existence of asmall witness(in this caseσ) is essential to have closure by subtraction by one.

(proof sketch)

(104)

ΣQSO(Σ

1

[FO]) is closed under subtraction by one

We focus on the case whereα∈ΣQSO(Σ1[FO])is of the form:

α = Σ ¯X.Σ¯x.∃y¯. ϕ(X¯,x,¯y¯)

We construct a formulamin-ϕFO(x¯)that identifies thelexicographically minimalassignmentσto ¯x that satisfies∃X¯.∃y¯. ϕ(X¯,x,¯y¯).

Then we usemin-ϕFO(x¯)to define a formulaψ(X¯,x¯)thatfilters outthe minimal assignment to ¯X for thatσ.

Lastly, we define a formula that counts one assignment less for(X¯,x¯): α = Σ ¯X.Σ¯x.∃¯y. ϕ(X¯,x,¯y¯) ∧ψ(X¯,¯x)

In this setting, the existence of asmall witness(in this caseσ) is essential to have closure by subtraction by one.

(proof sketch)

(105)

ΣQSO(Σ

1

[FO]) is closed under subtraction by one

We focus on the case whereα∈ΣQSO(Σ1[FO])is of the form:

α = Σ ¯X.Σ¯x.∃y¯. ϕ(X¯,x,¯y¯)

We construct a formulamin-ϕFO(x¯)that identifies thelexicographically minimalassignmentσto ¯x that satisfies∃X¯.∃y¯. ϕ(X¯,x,¯y¯).

Then we usemin-ϕFO(x¯)to define a formulaψ(X¯,x¯)thatfilters outthe minimal assignment to ¯X for thatσ.

Lastly, we define a formula that counts one assignment less for(X¯,x¯): α = Σ ¯X.Σ¯x.∃¯y. ϕ(X¯,x,¯y¯) ∧ψ(X¯,¯x)

In this setting, the existence of asmall witness(in this caseσ) is essential to have closure by subtraction by one.

(proof sketch)

(106)

ΣQSO(Σ

1

[FO]) is closed under subtraction by one

We focus on the case whereα∈ΣQSO(Σ1[FO])is of the form:

α = Σ ¯X.Σ¯x.∃y¯. ϕ(X¯,x,¯y¯)

We construct a formulamin-ϕFO(x¯)that identifies thelexicographically minimalassignmentσto ¯x that satisfies∃X¯.∃y¯. ϕ(X¯,x,¯y¯).

Then we usemin-ϕFO(x¯)to define a formulaψ(X¯,x¯)thatfilters outthe minimal assignment to ¯X for thatσ.

Lastly, we define a formula that counts one assignment less for(X¯,x):¯ α = Σ ¯X.Σ¯x.∃¯y. ϕ(X¯,x,¯y¯) ∧ψ(X¯,x¯)

In this setting, the existence of asmall witness(in this caseσ) is essential to have closure by subtraction by one.

(proof sketch)

(107)

ΣQSO(Σ

1

[FO]) is closed under subtraction by one

We focus on the case whereα∈ΣQSO(Σ1[FO])is of the form:

α = Σ ¯X.Σ¯x.∃y¯. ϕ(X¯,x,¯y¯)

We construct a formulamin-ϕFO(x¯)that identifies thelexicographically minimalassignmentσto ¯x that satisfies∃X¯.∃y¯. ϕ(X¯,x,¯y¯).

Then we usemin-ϕFO(x¯)to define a formulaψ(X¯,x¯)thatfilters outthe minimal assignment to ¯X for thatσ.

Lastly, we define a formula that counts one assignment less for(X¯,x):¯ α = Σ ¯X.Σ¯x.∃¯y. ϕ(X¯,x,¯y¯) ∧ψ(X¯,x¯)

In this setting, the existence of asmall witness(in this caseσ) is essential to have closure by subtraction by one.

(proof sketch)

(108)

Extend QSO to capture complexity classes beyond QSO

We extend QFO withrecursion:

RQFO = QFO withquantitativerecursion. TQFO = QFO withquantitativetransitive closure.

Theorem

1.

RQFO(FO)capturesFPover the class of ordered structures.

2.

TQFO(FO)captures #Lover the class of ordered structures.

(109)

Extend QSO to capture complexity classes beyond QSO

We extend QFO withrecursion:

RQFO = QFO with quantitativerecursion.

TQFO = QFO withquantitativetransitive closure.

Theorem

1.

RQFO(FO)capturesFPover the class of ordered structures.

2.

TQFO(FO)captures #Lover the class of ordered structures.

(110)

Extend QSO to capture complexity classes beyond QSO

We extend QFO withrecursion:

RQFO = QFO with quantitativerecursion.

TQFO = QFO with quantitativetransitive closure.

Theorem

1.

RQFO(FO)capturesFPover the class of ordered structures.

2.

TQFO(FO)captures #Lover the class of ordered structures.

(111)

Extend QSO to capture complexity classes beyond QSO

We extend QFO withrecursion:

RQFO = QFO with quantitativerecursion.

TQFO = QFO with quantitativetransitive closure.

Theorem

1.

RQFO(FO)capturesFPover the class of ordered structures.

2.

TQFO(FO)captures #Lover the class of ordered structures.

(112)

Extend QSO to capture complexity classes beyond QSO

We extend QFO withrecursion:

RQFO = QFO with quantitativerecursion.

TQFO = QFO with quantitativetransitive closure.

Theorem

1.

RQFO(FO)capturesFPover the class of ordered structures.

2.

TQFO(FO)captures #Lover the class of ordered structures.

(113)

Conclusions and future work

“We believe thatquantitative logicsare the right framework for Descriptive complexity ofcounting complexity classes.”

Plenty of open problems here . . .

1.

Logical characterizationof classes likeTotP,SpanL, . . .

2.

Compl. characterizationof subfragments like QSO(FO),QFO(FO), . . .

3.

Use quantitative logic to find complexityclasses with good properties.

4.

Understand theexpressivenessof QSO and their subfragments.

Thanks! Questions?

(114)

Conclusions and future work

“We believe thatquantitative logicsare the right framework for Descriptive complexity ofcounting complexity classes.”

Plenty of open problems here . . .

1.

Logical characterizationof classes likeTotP,SpanL, . . .

2.

Compl. characterizationof subfragments like QSO(FO),QFO(FO), . . .

3.

Use quantitative logic to find complexityclasses with good properties.

4.

Understand theexpressivenessof QSO and their subfragments.

Thanks! Questions?

(115)

Conclusions and future work

“We believe thatquantitative logicsare the right framework for Descriptive complexity ofcounting complexity classes.”

Plenty of open problems here . . .

1.

Logical characterizationof classes likeTotP,SpanL, . . .

2.

Compl. characterizationof subfragments like QSO(FO),QFO(FO), . . .

3.

Use quantitative logic to find complexityclasses with good properties.

4.

Understand theexpressivenessof QSO and their subfragments.

Thanks! Questions?

(116)

Conclusions and future work

“We believe thatquantitative logicsare the right framework for Descriptive complexity ofcounting complexity classes.”

Plenty of open problems here . . .

1.

Logical characterizationof classes likeTotP,SpanL, . . .

2.

Compl. characterizationof subfragments like QSO(FO),QFO(FO), . . .

3.

Use quantitative logic to find complexityclasses with good properties.

4.

Understand theexpressivenessof QSO and their subfragments.

Thanks! Questions?

(117)

Conclusions and future work

“We believe thatquantitative logicsare the right framework for Descriptive complexity ofcounting complexity classes.”

Plenty of open problems here . . .

1.

Logical characterizationof classes likeTotP,SpanL, . . .

2.

Compl. characterizationof subfragments like QSO(FO),QFO(FO), . . .

3.

Use quantitative logic to find complexityclasses with good properties.

4.

Understand theexpressivenessof QSO and their subfragments.

Thanks! Questions?

(118)

Conclusions and future work

“We believe thatquantitative logicsare the right framework for Descriptive complexity ofcounting complexity classes.”

Plenty of open problems here . . .

1.

Logical characterizationof classes likeTotP,SpanL, . . .

2.

Compl. characterizationof subfragments like QSO(FO),QFO(FO), . . .

3.

Use quantitative logic to find complexityclasses with good properties.

4.

Understand theexpressivenessof QSO and their subfragments.

Thanks! Questions?

(119)

Conclusions and future work

“We believe thatquantitative logicsare the right framework for Descriptive complexity ofcounting complexity classes.”

Plenty of open problems here . . .

1.

Logical characterizationof classes likeTotP,SpanL, . . .

2.

Compl. characterizationof subfragments like QSO(FO),QFO(FO), . . .

3.

Use quantitative logic to find complexityclasses with good properties.

4.

Understand theexpressivenessof QSO and their subfragments.

Thanks! Questions?

Références

Documents relatifs

Nous présenterons dans ce premier chapitre, les propriétés de semiconducteur InP, matériau de base de notre étude dans la structure MIS en première partie et la deuxième partie est

This gives rise to the notion of aggregate certain answers, which can be explained as follows: a number is an aggregate certain answer to a counting query over a knowledge base if

(Complexity over [0, 1] vs approximate complexity over N 2 ) Consider a class C of real functions that peacefully approximates polytime computable discrete functions, and

Theorem 14 (Complexity over [0, 1] vs approximate complexity over N 2 ) Consider a class C of real functions that peacefully approximates polytime computable discrete func- tions,

A cellular automaton is said to run in real-time if it stops, i.e., gives the answer yes or no, at the minimal instant when the elapsed time is sufficient for the output cell (the

With the logic ESO σ (∀ d , arity `), we control these three parameters: it is made of formulas of which first-order part is prenex with a universal quantifier prefix of length d,

We will now show how deterministic and probabilistic complexity classes can be characterised by means of the type of predicates Pred(m) in the deterministic and probabilistic

In Section 3, we met D 2 ( Π 0 1 ) graphs of fixed point free partial injections with a Borel countable (2-)coloring, but without ∆ 0 ξ -measurable countable coloring. The