Modulo Counting on Words and Trees (joint work with Witold - - PowerPoint PPT Presentation

modulo counting on words and trees
SMART_READER_LITE
LIVE PREVIEW

Modulo Counting on Words and Trees (joint work with Witold - - PowerPoint PPT Presentation

Modulo Counting on Words and Trees (joint work with Witold Charatonik) Bartosz Bednarczyk bartosz.bednarczyk@ens-paris-saclay.fr Ecole normale sup erieure Paris-Saclay and University of Wrocaw FSTTCS 2017 Kanpur, December 13, 2017


slide-1
SLIDE 1

Modulo Counting on Words and Trees

(joint work with Witold Charatonik) Bartosz Bednarczyk

bartosz.bednarczyk@ens-paris-saclay.fr

´ Ecole normale sup´ erieure Paris-Saclay and University of Wrocław

FSTTCS 2017 Kanpur, December 13, 2017

slide-2
SLIDE 2

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Agenda

Classical results on FO2 and related logics Logics on restricted classes of structures (words and trees) The main results of the paper namely the exact complexity of nice family of tree logics able to handle modulo constraints (like parity) with relatively small complexity blowup Proof ideas Our current research and open problems 2 / 33

slide-3
SLIDE 3

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Historical results

3 / 33

slide-4
SLIDE 4

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Facts about SAT and FO2 on arbitrary structures

We are interested in finite satisfiability problems Models = purely relational structures, no constants, no functions 4 / 33

slide-5
SLIDE 5

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Facts about SAT and FO2 on arbitrary structures

We are interested in finite satisfiability problems Models = purely relational structures, no constants, no functions Some classical results: FO undecidable (Church, Turing; 1930s) 4 / 33

slide-6
SLIDE 6

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Facts about SAT and FO2 on arbitrary structures

We are interested in finite satisfiability problems Models = purely relational structures, no constants, no functions Some classical results: FO undecidable (Church, Turing; 1930s) FO3 undecidable (Kahr, Moore, Wang; 1959) 4 / 33

slide-7
SLIDE 7

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Facts about SAT and FO2 on arbitrary structures

We are interested in finite satisfiability problems Models = purely relational structures, no constants, no functions Some classical results: FO undecidable (Church, Turing; 1930s) FO3 undecidable (Kahr, Moore, Wang; 1959) FO2 decidable (Mortimer; 1975) FO2 enjoys exponential model property (Gradel, Kolaitis, Vardi;

1997) - NEXPTIME-completeness

4 / 33

slide-8
SLIDE 8

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Facts about SAT and FO2 on arbitrary structures

We are interested in finite satisfiability problems Models = purely relational structures, no constants, no functions Some classical results: FO undecidable (Church, Turing; 1930s) FO3 undecidable (Kahr, Moore, Wang; 1959) FO2 decidable (Mortimer; 1975) FO2 enjoys exponential model property (Gradel, Kolaitis, Vardi;

1997) - NEXPTIME-completeness

Connection between FO2 and modal, temporal, description logics; many applications in verification and databases 4 / 33

slide-9
SLIDE 9

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Facts about SAT and FO2 on arbitrary structures

We are interested in finite satisfiability problems Models = purely relational structures, no constants, no functions Some classical results: FO undecidable (Church, Turing; 1930s) FO3 undecidable (Kahr, Moore, Wang; 1959) FO2 decidable (Mortimer; 1975) FO2 enjoys exponential model property (Gradel, Kolaitis, Vardi;

1997) - NEXPTIME-completeness

Connection between FO2 and modal, temporal, description logics; many applications in verification and databases

Example formula: from each element there exists a path of length 3 ∀x∃y (E(x, y) ∧ ∃x (E(y, x) ∧ ∃y E(x, y)))

4 / 33

slide-10
SLIDE 10

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Facts about SAT and FO2 on arbitrary structures

We are interested in finite satisfiability problems Models = purely relational structures, no constants, no functions Some classical results: FO undecidable (Church, Turing; 1930s) FO3 undecidable (Kahr, Moore, Wang; 1959) FO2 decidable (Mortimer; 1975) FO2 enjoys exponential model property (Gradel, Kolaitis, Vardi;

1997) - NEXPTIME-completeness

Connection between FO2 and modal, temporal, description logics; many applications in verification and databases

Example formula: from each element there exists a path of length 3 ∀x∃y (E(x, y) ∧ ∃x (E(y, x) ∧ ∃y E(x, y))) Conclusion: FO2 decidable, but limited in terms of expressivity.

4 / 33

slide-11
SLIDE 11

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Logics on trees

5 / 33

slide-12
SLIDE 12

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Possible variations

There are several scenarios which may influence decidability/complexity. E.g., we may consider:

6 / 33

slide-13
SLIDE 13

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Possible variations

There are several scenarios which may influence decidability/complexity. E.g., we may consider:

Ordered vs Unordered trees 6 / 33

slide-14
SLIDE 14

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Possible variations

There are several scenarios which may influence decidability/complexity. E.g., we may consider:

Ordered vs Unordered trees Ranked vs Unranked trees 6 / 33

slide-15
SLIDE 15

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Possible variations

There are several scenarios which may influence decidability/complexity. E.g., we may consider:

Ordered vs Unordered trees Ranked vs Unranked trees Finite vs Infinite trees 6 / 33

slide-16
SLIDE 16

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Possible variations

There are several scenarios which may influence decidability/complexity. E.g., we may consider:

Ordered vs Unordered trees Ranked vs Unranked trees Finite vs Infinite trees With unary alphabet restriction (UAR) or without UAR precisely one unary predicate holds at each node . . . 6 / 33

slide-17
SLIDE 17

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Possible variations

There are several scenarios which may influence decidability/complexity. E.g., we may consider:

Ordered vs Unordered trees Ranked vs Unranked trees Finite vs Infinite trees With unary alphabet restriction (UAR) or without UAR precisely one unary predicate holds at each node . . .

We will focus on Finite, Ordered, Unranked Trees, where multiple predicates can hold at one node (without UAR).

6 / 33

slide-18
SLIDE 18

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Tree notions

7 / 33

slide-19
SLIDE 19

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Signature τ = τ0 ∪ τnav

τ0 – unary symbols (usually P, Q, etc.) τnav – navigational binary symbols with fixed interpretation words: ≤ (order over positions), +1 (it’s induced successor) unordered trees: ↓ (child), ↓+ (descendant, TC of ↓)

  • rdered trees: ↓, ↓+, → (next sibling), →+ (TC of →)

P P,Q P Q P P,Q a b c d e f g A word: An unordered tree: P P Q P,Q P,Q An ordered tree: P P Q P,Q P,Q 8 / 33

slide-20
SLIDE 20

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Complexity results

FO is TOWER-complete, even for FO3 (Stockmeyer; 1974). 9 / 33

slide-21
SLIDE 21

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Complexity results

FO is TOWER-complete, even for FO3 (Stockmeyer; 1974). FO2[≤, +1] on finite words FO2 is NEXPTIME-complete (Etessami et al, LICS 1997) Equally expressive to Unary Temporal Logic FO2+∃≤k+∃≥k still in NEXPTIME (Charatonik et al, CSL 2015) 9 / 33

slide-22
SLIDE 22

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Complexity results

FO is TOWER-complete, even for FO3 (Stockmeyer; 1974). FO2[≤, +1] on finite words FO2 is NEXPTIME-complete (Etessami et al, LICS 1997) Equally expressive to Unary Temporal Logic FO2+∃≤k+∃≥k still in NEXPTIME (Charatonik et al, CSL 2015) FO2[↓, ↓+, →, →+] on finite trees FO2 on trees is EXPSPACE-complete (Benaim et al, ICALP 2013). Equally expressive to Navigational XPath (Marx et al, 2004). FO2+∃≤k+∃≥k still in EXPSPACE (Bednarczyk et al, CSL 2017) 9 / 33

slide-23
SLIDE 23

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

NEXPTIME FO2[≤, +1] FO2[] EXPSPACE FO2[↓+], FO2[↓, ↓+, →, →+] 2-EXPTIME

10 / 33

slide-24
SLIDE 24

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Our results

11 / 33

slide-25
SLIDE 25

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Our settings

We work on extensions of FO2[↓, ↓+, →, →+] and FO2[≤, +1].

Logics with modulo

FO2

MOD = FO2 + ∃=k(mod l)

for arbitrary natural numbers k, l written in binary

12 / 33

slide-26
SLIDE 26

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Our contribution

FO2

MOD on words

An alternative proof of FO2

MOD[≤, +1] EXPSPACE-upper bound.

13 / 33

slide-27
SLIDE 27

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Our contribution

FO2

MOD on words

An alternative proof of FO2

MOD[≤, +1] EXPSPACE-upper bound.

Theorem (FO2

MOD on trees - upper bound)

Membership of FO2

MOD[↓, ↓+, →, →+] to 2-EXPTIME.

Theorem (FO2

MOD on trees - lower bound)

2-EXPTIME-hardness for FO2

MOD[↓, ↓+].

13 / 33

slide-28
SLIDE 28

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Why modulo counting matters?

14 / 33

slide-29
SLIDE 29

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

The general idea of counting quantifiers in logic

Goal: increase expressiveness by adding an ability to count Counting quantifiers ∃≥k, ∃≤k Graded modalities ♦≥k, ♦≤k, E≥k, A≤k 15 / 33

slide-30
SLIDE 30

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

The general idea of counting quantifiers in logic

Goal: increase expressiveness by adding an ability to count Counting quantifiers ∃≥k, ∃≤k Graded modalities ♦≥k, ♦≤k, E≥k, A≤k Well-known extensions: Graded modal logic (over 25 papers!, 1985 - ...) Graded PDL (Nguyen, CS&P 2015) Graded strategy logic, CTL, CTL* (Murano et al, 2010-2016) Graded µ-calculus (Kupferman et al, CADE 2002) FO2 and GF2 with counting quantifiers (Pratt-Hartmann 2007) FO2 with counting on words (Charatonik et al, CSL 2015) FO2 with counting on trees (Bednarczyk et al, CSL 2017) description logics, dependence logic, epistemic logic and so on, and so on, and so on... 15 / 33

slide-31
SLIDE 31

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

The general idea of counting quantifiers in logic

Goal: increase expressiveness by adding an ability to count Counting quantifiers ∃≥k, ∃≤k Graded modalities ♦≥k, ♦≤k, E≥k, A≤k Well-known extensions: Graded modal logic (over 25 papers!, 1985 - ...) Graded PDL (Nguyen, CS&P 2015) Graded strategy logic, CTL, CTL* (Murano et al, 2010-2016) Graded µ-calculus (Kupferman et al, CADE 2002) FO2 and GF2 with counting quantifiers (Pratt-Hartmann 2007) FO2 with counting on words (Charatonik et al, CSL 2015) FO2 with counting on trees (Bednarczyk et al, CSL 2017) description logics, dependence logic, epistemic logic and so on, and so on, and so on... This talk: What if we change a little the way we count? 15 / 33

slide-32
SLIDE 32

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Why modulo counting matters?

Parity - not expressible in FO 16 / 33

slide-33
SLIDE 33

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Why modulo counting matters?

Parity - not expressible in FO Definability is well-studied on words

and trees (Straubing 2008 survey), but satisfiability was neglected

16 / 33

slide-34
SLIDE 34

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Why modulo counting matters?

Parity - not expressible in FO Definability is well-studied on words

and trees (Straubing 2008 survey), but satisfiability was neglected

Connections with circuit complexity PARITY is not in AC0 Modular gates + AC0 = ACC0 Separating NC1 from ACC0

(important open problem!)

16 / 33

slide-35
SLIDE 35

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Why modulo counting matters?

An example property expressible in FO2

MOD

There is an alarm every 60 seconds. ∀x

  • ∃=0(mod 60)y(y < x)
  • → alarm(x)
  • 17 / 33
slide-36
SLIDE 36

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Proof ideas - lower bound

18 / 33

slide-37
SLIDE 37

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Lower bound

How did we prove the lower bound?

We introduced a new version of tilling games 2-EXPTIME-compl by painful reduction from halting for

AEXPSPACE Turning machines

Encoding of winning strategy of game in our logic 19 / 33

slide-38
SLIDE 38

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Tilling game

Prover and Spoiler Rules

Finite set of puzzles Horizontal and vertical constraints Goal: Construct a correct tilling of a

board of the size 2n × k

20 / 33

slide-39
SLIDE 39

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Tilling game

Constraints Rules

Finite set of puzzles Horizontal and vertical constraints Goal: Construct a correct tilling of a

board of the size 2n × k

20 / 33

slide-40
SLIDE 40

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

An example: Correct tilling

21 / 33

slide-41
SLIDE 41

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

How modulo counting help us to play this game?

22 / 33

slide-42
SLIDE 42

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Proof ideas - upper bound

23 / 33

slide-43
SLIDE 43

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Finite satisfiability cooking recipe

24 / 33

slide-44
SLIDE 44

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Finite satisfiability cooking recipe

Step 1. Transform your formula into a normal form 24 / 33

slide-45
SLIDE 45

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Finite satisfiability cooking recipe

Step 1. Transform your formula into a normal form Step 2. Design a right notion of a type And prove that your notion is ”correct” . . . 24 / 33

slide-46
SLIDE 46

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Finite satisfiability cooking recipe

Step 1. Transform your formula into a normal form Step 2. Design a right notion of a type And prove that your notion is ”correct” . . . Step 3. Show small model property Restrict your attention to trees with: doubly-exponential degree of every nodes and doubly-exponentially long paths Do it by cutting out too long ↓ and →-paths 24 / 33

slide-47
SLIDE 47

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Finite satisfiability cooking recipe

Step 1. Transform your formula into a normal form Step 2. Design a right notion of a type And prove that your notion is ”correct” . . . Step 3. Show small model property Restrict your attention to trees with: doubly-exponential degree of every nodes and doubly-exponentially long paths Do it by cutting out too long ↓ and →-paths Step 4. Present an alternating algorithm in this case AEXPSPACE (= 2-EXPTIME) 24 / 33

slide-48
SLIDE 48

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Order formulas

Assuming τnav = {↓, ↓+, →, →+}. There are ten of them: Position Θ Θ–related with ”c” θ= θ↓ θ↑ θ↓↓+ θ→ θ← θ↑↑+, θ⇒+, θ⇔+ θ∼ Ex: θ↓↓+(x, y) = x↓+y ∧ ¬(x↓y) a b e i c f j k l m g h d

25 / 33

slide-49
SLIDE 49

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Order formulas

Assuming τnav = {↓, ↓+, →, →+}. There are ten of them: Position Θ Θ–related with ”c” θ= {c} θ↓ θ↑ θ↓↓+ θ→ θ← θ↑↑+, θ⇒+, θ⇔+ θ∼ Ex: θ↓↓+(x, y) = x↓+y ∧ ¬(x↓y) a b e i c f j k l m g h d

25 / 33

slide-50
SLIDE 50

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Order formulas

Assuming τnav = {↓, ↓+, →, →+}. There are ten of them: Position Θ Θ–related with ”c” θ= {c} θ↓ {f, g, h} θ↑ θ↓↓+ θ→ θ← θ↑↑+, θ⇒+, θ⇔+ θ∼ Ex: θ↓↓+(x, y) = x↓+y ∧ ¬(x↓y) a b e i c f j k l m g h d

25 / 33

slide-51
SLIDE 51

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Order formulas

Assuming τnav = {↓, ↓+, →, →+}. There are ten of them: Position Θ Θ–related with ”c” θ= {c} θ↓ {f, g, h} θ↑ {a} θ↓↓+ θ→ θ← θ↑↑+, θ⇒+, θ⇔+ θ∼ Ex: θ↓↓+(x, y) = x↓+y ∧ ¬(x↓y) a b e i c f j k l m g h d

25 / 33

slide-52
SLIDE 52

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Order formulas

Assuming τnav = {↓, ↓+, →, →+}. There are ten of them: Position Θ Θ–related with ”c” θ= {c} θ↓ {f, g, h} θ↑ {a} θ↓↓+ {j, k, l, m} θ→ θ← θ↑↑+, θ⇒+, θ⇔+ θ∼ Ex: θ↓↓+(x, y) = x↓+y ∧ ¬(x↓y) a b e i c f j k l m g h d

25 / 33

slide-53
SLIDE 53

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Order formulas

Assuming τnav = {↓, ↓+, →, →+}. There are ten of them: Position Θ Θ–related with ”c” θ= {c} θ↓ {f, g, h} θ↑ {a} θ↓↓+ {j, k, l, m} θ→ {d} θ← θ↑↑+, θ⇒+, θ⇔+ θ∼ Ex: θ↓↓+(x, y) = x↓+y ∧ ¬(x↓y) a b e i c f j k l m g h d

25 / 33

slide-54
SLIDE 54

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Order formulas

Assuming τnav = {↓, ↓+, →, →+}. There are ten of them: Position Θ Θ–related with ”c” θ= {c} θ↓ {f, g, h} θ↑ {a} θ↓↓+ {j, k, l, m} θ→ {d} θ← {b} θ↑↑+, θ⇒+, θ⇔+ θ∼ Ex: θ↓↓+(x, y) = x↓+y ∧ ¬(x↓y) a b e i c f j k l m g h d

25 / 33

slide-55
SLIDE 55

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Order formulas

Assuming τnav = {↓, ↓+, →, →+}. There are ten of them: Position Θ Θ–related with ”c” θ= {c} θ↓ {f, g, h} θ↑ {a} θ↓↓+ {j, k, l, m} θ→ {d} θ← {b} θ↑↑+, θ⇒+, θ⇔+ ∅ θ∼ Ex: θ↓↓+(x, y) = x↓+y ∧ ¬(x↓y) a b e i c f j k l m g h d

25 / 33

slide-56
SLIDE 56

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Order formulas

Assuming τnav = {↓, ↓+, →, →+}. There are ten of them: Position Θ Θ–related with ”c” θ= {c} θ↓ {f, g, h} θ↑ {a} θ↓↓+ {j, k, l, m} θ→ {d} θ← {b} θ↑↑+, θ⇒+, θ⇔+ ∅ θ∼ {e, i} Ex: θ↓↓+(x, y) = x↓+y ∧ ¬(x↓y) a b e i c f j k l m g h d

25 / 33

slide-57
SLIDE 57

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Atomic 1-types

1-type over signature τ is a color of a single node The total number of 1-types is bounded exponentially in |τ| Example:

Unary symbols τ0 =

  • ,
  • =
  • Green(), Red()
  • Possible 1-types ατ0 =
  • ,

, ,

  • 26 / 33
slide-58
SLIDE 58

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

A new ingredient - Full type - definition

Recall that: 1-types ατ0 - colors of nodes over signature τ0

An example: ατ0 =

  • ,

, ,

  • Positions Θ - how to compare nodes

Θ = {θ=, θ↓, θ↑, θ↓↓+, θ↑↑+, θ→, θ←, θ⇒+, θ⇔+, θ∼}

27 / 33

slide-59
SLIDE 59

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

A new ingredient - Full type - definition

Recall that: 1-types ατ0 - colors of nodes over signature τ0

An example: ατ0 =

  • ,

, ,

  • Positions Θ - how to compare nodes

Θ = {θ=, θ↓, θ↑, θ↓↓+, θ↑↑+, θ→, θ←, θ⇒+, θ⇔+, θ∼}

(Zl1, . . . , Zln)–Full type information about the whole tree from local point of view

(Zl1, . . . , Zln)-ftp(x) :: Θ → α → {0, 1} × Zl1 × . . . × Zln

The total number of ftps is doubly-exponential. 27 / 33

slide-60
SLIDE 60

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

A full type example

α =

  • ,

, ,

  • ftp(c) : Θ → α → {0, 1} × Z3

a b e i c f j k l m g h d Θ θ= ? ? ? ? θ↓ ? ? ? ? θ↓↓+ ? ? ? ? θ∼ . . . . . . . . . . . . θ→ . . . . . . . . . . . . . . .

28 / 33

slide-61
SLIDE 61

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

A full type example

α =

  • ,

, ,

  • ftp(c) : Θ → α → {0, 1} × Z3

c Θ θ= ? ? ? ? θ↓ ? ? ? ? θ↓↓+ ? ? ? ? θ∼ . . . . . . . . . . . . θ→ . . . . . . . . . . . . . . .

28 / 33

slide-62
SLIDE 62

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

A full type example

α =

  • ,

, ,

  • ftp(c) : Θ → α → {0, 1} × Z3

c Θ θ= (0,0) (0,0) (0,0) (1,1) θ↓ ? ? ? ? θ↓↓+ ? ? ? ? θ∼ . . . . . . . . . . . . θ→ . . . . . . . . . . . . . . .

28 / 33

slide-63
SLIDE 63

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

A full type example

α =

  • ,

, ,

  • ftp(c) : Θ → α → {0, 1} × Z3

c Θ θ= (0,0) (0,0) (0,0) (1,1) θ↓ (1,1) (0,0) (1,2) (0,0) θ↓↓+ ? ? ? ? θ∼ . . . . . . . . . . . . θ→ . . . . . . . . . . . . . . .

28 / 33

slide-64
SLIDE 64

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

A full type example

α =

  • ,

, ,

  • ftp(c) : Θ → α → {0, 1} × Z3

a b e i c f j k l m g h d Θ θ= (0,0) (0,0) (0,0) (1,1) θ↓ (1,1) (0,0) (1,2) (0,0) θ↓↓+ (0,0) (1,1) (1,0) (0,0) θ∼ . . . . . . . . . . . . θ→ . . . . . . . . . . . . . . .

28 / 33

slide-65
SLIDE 65

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Pumping lemma and a small model property

29 / 33

slide-66
SLIDE 66

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Algorithm.

30 / 33

slide-67
SLIDE 67

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Algorithm.

30 / 33

slide-68
SLIDE 68

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Algorithm.

30 / 33

slide-69
SLIDE 69

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Algorithm.

30 / 33

slide-70
SLIDE 70

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Algorithm.

30 / 33

slide-71
SLIDE 71

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Algorithm.

30 / 33

slide-72
SLIDE 72

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Algorithm.

30 / 33

slide-73
SLIDE 73

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Conclusions

31 / 33

slide-74
SLIDE 74

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

Open problems

Establish the complexity of missing subfragments for FO2

MOD

Guarded fragment restriction, UAR restriction Develop equivalent version of CTL, CLT*, PDL, and so on. FO2

MOD on arbitrary structures

32 / 33

slide-75
SLIDE 75

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

NEXPTIME FO2[≤, +1] FO2[] EXPSPACE FO2[↓+], FO2[↓, ↓+, →, →+] 2-EXPTIME

33 / 33

slide-76
SLIDE 76

Introduction Tree structures Our contribution Why modulo? Lower bound Upper bound Conclusions

NEXPTIME FO2[≤, +1] FO2[] EXPSPACE FO2

MOD[≤, +1]

FO2[↓+], FO2[↓, ↓+, →, →+] FO2

MOD[↓, ↓+, →, →+]

FO2

MOD[↓, ↓+]

2-EXPTIME

33 / 33