Simulating EXPSPACE Turing machines using P systems with active - - PowerPoint PPT Presentation

simulating expspace turing machines using p systems with
SMART_READER_LITE
LIVE PREVIEW

Simulating EXPSPACE Turing machines using P systems with active - - PowerPoint PPT Presentation

Simulating EXPSPACE Turing machines using P systems with active membranes Artiom Alhazov 1 , 2 Alberto Leporati 1 Giancarlo Mauri 1 Antonio E. Porreca 1 Claudio Zandron 1 1 Dipartimento di Informatica, Sistemistica e Comunicazione Universit


slide-1
SLIDE 1

Simulating EXPSPACE Turing machines using P systems with active membranes

Artiom Alhazov1,2 Alberto Leporati1 Giancarlo Mauri1 Antonio E. Porreca1 Claudio Zandron1

1Dipartimento di Informatica, Sistemistica e Comunicazione

Università degli Studi di Milano-Bicocca

2Institute of Mathematics and Computer Science

Academy of Sciences of Moldova

13th Italian Conference on Theoretical Computer Science 19–21 September 2012, Varese, Italy

slide-2
SLIDE 2

Outline

  • 1. P systems
  • 2. Space complexity and the time-space trade-off
  • 3. Simulating Turing machines
  • 4. Conclusions and open problems

2/16

slide-3
SLIDE 3

P systems (with restricted elementary active membranes)

a a a b b c a b c c c a b c

h1 h2 h0 h3 + −

3/16

slide-4
SLIDE 4

Computation rules

a

h α

w a

h α

b

h β

a

h α

b

h β

a

h α

b

h β

c

h γ

Object evolution Communication (send-out) Communication (send-in) Elementary division 4/16

slide-5
SLIDE 5

Parallelism and efficiency

◮ The rules are applied in a maximally parallel way ◮ There may be nondeterminism, but we require confluence ◮ Division may create exponentially many processing units

in linear time

◮ So we can solve hard problems in polynomial time

by trading space for time

5/16

slide-6
SLIDE 6

Parallelism and efficiency

◮ The rules are applied in a maximally parallel way ◮ There may be nondeterminism, but we require confluence ◮ Division may create exponentially many processing units

in linear time

◮ So we can solve hard problems in polynomial time

by trading space for time

PSPACE PMCAM PPP PP NP

includes PH

5/16

slide-7
SLIDE 7

Parallelism and efficiency

◮ The rules are applied in a maximally parallel way ◮ There may be nondeterminism, but we require confluence ◮ Division may create exponentially many processing units

in linear time

◮ So we can solve hard problems in polynomial time

by trading space for time

PSPACE PMCAM PPP PP NP

includes PH ◮ Membrane division is provably needed

5/16

slide-8
SLIDE 8

Uniformity

We decide membership in some language L by using a uniform family of P systems

6/16

slide-9
SLIDE 9

Uniformity

We decide membership in some language L by using a uniform family of P systems

M1 1 1 1

x ∈ Σn

M2 1

yes no

aab

aab

input multiset

n ∈ N

6/16

slide-10
SLIDE 10

Formalising the time-space trade-off

What’s the exact meaning of trading space for time? time = #computation steps

7/16

slide-11
SLIDE 11

Formalising the time-space trade-off

What’s the exact meaning of trading space for time? time = #computation steps space = #membranes + #objects

7/16

slide-12
SLIDE 12

Known results on space complexity

Theorem

Polynomial-space P systems and polynomial-space Turing machines solve the same class of decision problems, namely PSPACE

8/16

slide-13
SLIDE 13

Known results on space complexity

Theorem

Polynomial-space P systems and polynomial-space Turing machines solve the same class of decision problems, namely PSPACE

Proof.

◮ A family of P systems working in space f (n) can be simulated

by a TM working in O(f (n) log f (n)) space

8/16

slide-14
SLIDE 14

Known results on space complexity

Theorem

Polynomial-space P systems and polynomial-space Turing machines solve the same class of decision problems, namely PSPACE

Proof.

◮ A family of P systems working in space f (n) can be simulated

by a TM working in O(f (n) log f (n)) space

◮ A TM working in space f (n) can be simulated by a family of

P systems in space O(f (n)) as long as f is a polynomial

8/16

slide-15
SLIDE 15

Simulating polynomial-space TMs

n

  • p(n)

b a b a q

1 2 3 4 5

9/16

slide-16
SLIDE 16

Simulating polynomial-space TMs

b a b a q

1 2 3 4 5 − 1 + 2 + 3 − 4 5

q2

h labels provide order and identify cells

9/16

slide-17
SLIDE 17

The problem with superpolynomial space bounds

◮ We cannot use exponentially many labels (polytime uniformity) ◮ We must create the tape-membranes at runtime

via membrane division

◮ But the new membranes are indistinguishable from the outside

(they all have the same label)

◮ Solution: order and identify membranes according

to their contents

10/16

slide-18
SLIDE 18

Encoding exponential space configurations n

  • 2p(n)

b a b a q

010 011 100 101 110 111 11/16

slide-19
SLIDE 19

Encoding exponential space configurations

b a b a q

010 011 100 101 110 111

t0 t1 t t t t ⊔ b a 2 1 e s

00 b 02 a 12 01 00 a 12 01 10 b 12 11 00 ⊔ 12 11 10 ⊔ q

+ +

10 11 02 11

11/16

slide-20
SLIDE 20

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b 02 a 12 01 00 a 12 01 10 b 12 11 00 ⊔ 12 11 10 ⊔ q

+ +

10 11 02 11

12/16

slide-21
SLIDE 21

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b 02 a 12 01 00 a 12 01 10 b 12 11 00 ⊔ 12 11 10 ⊔

+ +

10 11 02 11 q1

12/16

slide-22
SLIDE 22

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b 02 a

+

12 01 00 a 12 01 10 b 12 11 00 ⊔ 12 11 10 ⊔

+ +

10 11 02 11 q2

12/16

slide-23
SLIDE 23

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b 0′′

2

a

+

12 01 00 a 12 01 10 b 12 11 00 ⊔ 12 11 10 ⊔

+ +

1′′ 1′′

1

02 11 q3 0′

2

1′ 1′

1

12/16

slide-24
SLIDE 24

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b 0′′

2

a

+

12 01 00 a 12 01 10 b 12 11 00 ⊔ 12 11 10 ⊔

+ + +

1′′ 1′′

1

02 11 q4 0′

2

1′ 1′

1

12/16

slide-25
SLIDE 25

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b 0′′

2

a

+

12 01 00 a 12 01 10 b 12 11 00 ⊔ 12 11 10 ⊔

+ + +

1′′ 1′′

1

02 11 q5 0′

2

1′ 1′

1

12/16

slide-26
SLIDE 26

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b 0′′

2

a

+

12 01 00 a 12 01 10 b 12 11 00 ⊔ 12 11 10 ⊔

+ + +

1′′ 1′′

1

02 11 q6 0′

2

1′

12/16

slide-27
SLIDE 27

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b 0′′

2

a

+

12 01 00 a 12 01 10 b 12 11 00 ⊔ 12 11 10 ⊔

+ + +

1′′ 1′′

1

02 11 q7 e 1′

12/16

slide-28
SLIDE 28

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b 0′′

2

a

+

12 01 00 a 12 01 10 b 12 11 00 ⊔ 12 11 10 ⊔

+ + +

1′′ 1′′

1

02 11

+

q8 e e

12/16

slide-29
SLIDE 29

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b 0′′

2

a

+

12 01 00 a 12 01 10 b 12 11 00 ⊔ 12 11 10 ⊔

+ + +

1′′ 1′′

1

02 11

+

q9 e

12/16

slide-30
SLIDE 30

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b 0′′

2

a

+

12 01 00 a 12 01 10 b 12 11 00 ⊔ 12 11 10 ⊔

+ + +

1′′ 1′′

1

02 11

+

q10

12/16

slide-31
SLIDE 31

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b 0′′

2

a

+

12 01 00 a 12 01 10 b 12 11 00 ⊔ 12 11 10 ⊔

+ + +

1′′ 1′′

1

02 11 q′

11

12/16

slide-32
SLIDE 32

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b 0′′

2

a

+

12 01 00 a 12 01 10 b 12 11 00 ⊔ 12 11 10 ⊔

− + +

1′′ 1′′

1

02 11 q′

12

12/16

slide-33
SLIDE 33

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b 0′′

2

a′

+

12 01 00 a 12 01 10 b 12 11 00 ⊔ 12 11 10 ⊔

− + +

1′′ 1′′

1

02 11 q′

13

12/16

slide-34
SLIDE 34

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b 0′′

2

a

12 01 00 a 12 01 10 b 12 11 00 ⊔ 12 11 10 ⊔

+ +

1′′ 1′′

1

02 11 q′

14

12/16

slide-35
SLIDE 35

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b a

12 01 00 a 12 01 10 b 12 11 00 ⊔ 12 11 10 ⊔

+ +

02 11 q 02 10 11

12/16

slide-36
SLIDE 36

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b

a

12 01 00 a 12 01 10 b 12 11 00 ⊔ 12 11 10 ⊔

− + +

02 11 q 02 10 11

12/16

slide-37
SLIDE 37

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b

a

12 01 00 a 12 01 10 b 12 11 00 ⊔ 12 11 10 ⊔

− + +

02 11 q1 02 10 11

12/16

slide-38
SLIDE 38

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b

a

12 01 00 a 12 01 10 b 12 11 00 ⊔

+

12 11 10 ⊔

− + +

02 11 02 10 11 q2

12/16

slide-39
SLIDE 39

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b

a

12 01 00 a 12 01 10 b 1′′

2 1′′ 1 0′′

+

12 11 10 ⊔

− + +

02 11 02 10 11 q3 1′

2 1′ 1 0′

12/16

slide-40
SLIDE 40

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b a

12 01 00 a 12 01 10 b 1′′

2 1′′ 1 0′′

+

12 11 10 ⊔

+ + +

02 11 02 10 11 q4 1′

2

1′

1 0′ − −

12/16

slide-41
SLIDE 41

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b a

12 01 00 a 12 01 10 b 1′′

2 1′′ 1 0′′

+

12 11 10 ⊔

+ + +

02 11 02 10 11 q5 1′

2

1′

1

0′

− −

12/16

slide-42
SLIDE 42

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b a

12 01 00 a 12 01 10 b 1′′

2 1′′ 1 0′′

+

12 11 10 ⊔

+ + +

02 11 02 10 11 q6 1′

1

0′

− −

12/16

slide-43
SLIDE 43

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b a

12 01 00 a 12 01 10 b 1′′

2 1′′ 1 0′′

+

12 11 10 ⊔

+ + +

02 11 02 10 11 q7 1′

1 − −

12/16

slide-44
SLIDE 44

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b a

12 01 00 a 12 01 10 b 1′′

2 1′′ 1 0′′

+

12 11 10 ⊔

+ + +

02 11 02 10 11 q8

− −

12/16

slide-45
SLIDE 45

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b a

12 01 00 a 12 01 10 b 1′′

2 1′′ 1 0′′

+

12 11 10 ⊔

+ + +

02 11 02 10 11 q9

− −

12/16

slide-46
SLIDE 46

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b a

12 01 00 a 12 01 10 b 1′′

2 1′′ 1 0′′

+

12 11 10 ⊔

+ + +

02 11 02 10 11 q10

− −

12/16

slide-47
SLIDE 47

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b a

12 01 00 a 12 01 10 b 1′′

2 1′′ 1 0′′

+

12 11 10 ⊔

+ + +

02 11 02 10 11 q11

− −

12/16

slide-48
SLIDE 48

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b a

12 01 00 a 12 01 10 b 1′′

2 1′′ 1 0′′

+

12 11 10 ⊔

+ +

02 11 02 10 11 q12

− −

12/16

slide-49
SLIDE 49

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b a

12 01 00 a 12 01 10 b 1′′

2 1′′ 1 0′′

b′

+

12 11 10 ⊔

+ +

02 11 02 10 11 q13

− −

12/16

slide-50
SLIDE 50

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b a

12 01 00 a 12 01 10 b 1′′

2 1′′ 1 0′′

b′

+

12 11 10 ⊔

+ +

02 11 02 10 11 q14

− −

12/16

slide-51
SLIDE 51

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b a

12 01 00 a 12 01 10 b 1′′

2 1′′ 1 0′′

b

12 11 10 ⊔

+ +

02 11 02 10 11 q⊔

− −

12/16

slide-52
SLIDE 52

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b a

12 01 00 a 12 01 10 b b

12 11 10 ⊔

+ +

02 11 02 10 11 q⊔ 12 11 00

− −

12/16

slide-53
SLIDE 53

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b a

12 01 00 a 12 01 10 b b

12 11 10 ⊔

+ + +

02 11 02 10 11 q⊔

1

12 11 00

− −

12/16

slide-54
SLIDE 54

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b a

12 01 00 a 12 01 10 b b

12 11 10 ⊔

+ + +

02 11 02 10 11 q⊔

1

12 11 00

− −

12/16

slide-55
SLIDE 55

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b a

12 01 00 a 12 01 10 b b

12 11 10 ⊔

+ +

02 11 02 10 11 q⊔

3

12 11 00

− −

12/16

slide-56
SLIDE 56

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b a

12 01 00 a 12 01 10 b b

12 11 10 ⊔

+ +

02 11 02 10 11 q⊔

4

12 11 00 t0 t1 c2

− −

12/16

slide-57
SLIDE 57

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b a 12 01 00 a 12 01 10 b b

12 11 10 ⊔

+ +

02 11 02 10 11 q⊔

5

12 11 00 t0 t1 c1 c1

12/16

slide-58
SLIDE 58

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b a 12 01 00 a 12 01 10 b b

12 11 10 ⊔

+ +

02 11 02 10 11 q⊔

6

12 11 00 c0 c0 c0 c0

12/16

slide-59
SLIDE 59

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b a 12 01 00 a 12 01 10 b b 12 11 10 ⊔

+ +

02 11 02 10 11 q⊔

7

12 11 00 c0 c0 c0 c0

12/16

slide-60
SLIDE 60

Simulating a computation step of the TM δ(q, ⊔) = (r, b, ⊳)

t0 t1 t t t t ⊔ b a 2 1 e s

00 b a 12 01 00 a 12 01 10 b b 12 11 10 ⊔

+ +

02 11 02 10 11 r 12 11 00

12/16

slide-61
SLIDE 61

Initialising the system

b a qinit

010 011 100 101 110 111

t0 t1 t ⊔ b a 2 1 e s

00 b0 02 a1 12 d1 d0 ⊔ z2 10 11 02 11 +

13/16

slide-62
SLIDE 62

Initialising the system

b a qinit

010 011 100 101 110 111

t0 t1 t ⊔ b a 2 1 e s

00 b 02 a 12 d1 00 ⊔ z1

+

10 11 02 11 +

t

12 d1 10 ⊔

13/16

slide-63
SLIDE 63

Initialising the system

b a qinit

010 011 100 101 110 111

t0 t1 t ⊔ b a 2 1 e s

00 b 02 a 12 01 00 ⊔ qinit

+

10 11 02 11

t

12 01 10 ⊔

t

12 11 00 ⊔

t

12 11 10 ⊔

13/16

slide-64
SLIDE 64

Main result

Theorem

Let M be a single-tape deterministic Turing machine working in time t(n) and space s(n), where s(n) ≤ n + 2p(n) for some polynomial p. Then there exists a uniform family of confluent P systems with restricted elementary active membranes Π

  • perating in time O
  • t(n)s(n) log s(n)
  • and space O
  • s(n) log s(n)
  • such that L(Π) = L(M)

Corollary

Both exponential-space TMs and exponential-space P systems solve exactly the problems in EXPSPACE

14/16

slide-65
SLIDE 65

Conclusions and open problems

◮ P systems and TMs have identical computing power

both in polynomial and in exponential space

◮ Preliminary results for sub-polynomial space

◮ A weaker uniformity condition is needed

◮ Is there a general equivalence in power wrt all space bounds?

◮ Probably, though the simulation must be improved ◮ Possible solution: unary encoding of tape cell numbers

15/16

slide-66
SLIDE 66

Grazie per l’attenzione! Thanks for your attention!