Computational Complexity Lecture 9 Alternation (Continued) 1 - - PowerPoint PPT Presentation

computational complexity
SMART_READER_LITE
LIVE PREVIEW

Computational Complexity Lecture 9 Alternation (Continued) 1 - - PowerPoint PPT Presentation

Computational Complexity Lecture 9 Alternation (Continued) 1 ATM Guess 0 Guess 1 Guess 0 Guess 1 Guess 0 Guess 1 2 ATM Alternating Turing Machine Guess 0 Guess 1 Guess 0 Guess 1


slide-1
SLIDE 1

Computational Complexity

Lecture 9 Alternation (Continued)

1

slide-2
SLIDE 2

ATM

Guess 0 Guess 1 Guess 0 Guess 0 Guess 1 Guess 1

∃ ∃ ∃ ∀ ∀ ∀ ∀

2

slide-3
SLIDE 3

ATM

Alternating Turing Machine

Guess 0 Guess 1 Guess 0 Guess 0 Guess 1 Guess 1

∃ ∃ ∃ ∀ ∀ ∀ ∀

2

slide-4
SLIDE 4

ATM

Alternating Turing Machine At each step, execution can fork into two (like NTM or co-NTM)

Guess 0 Guess 1 Guess 0 Guess 0 Guess 1 Guess 1

∃ ∃ ∃ ∀ ∀ ∀ ∀

2

slide-5
SLIDE 5

ATM

Alternating Turing Machine At each step, execution can fork into two (like NTM or co-NTM) Two kinds of configurations: ∃ and ∀

Guess 0 Guess 1 Guess 0 Guess 0 Guess 1 Guess 1

∃ ∃ ∃ ∀ ∀ ∀ ∀

2

slide-6
SLIDE 6

ATM

Alternating Turing Machine At each step, execution can fork into two (like NTM or co-NTM) Two kinds of configurations: ∃ and ∀ A ∃ configuration is accepting if either child is accepting

Guess 0 Guess 1 Guess 0 Guess 0 Guess 1 Guess 1

∃ ∃ ∃ ∀ ∀ ∀ ∀

2

slide-7
SLIDE 7

ATM

Alternating Turing Machine At each step, execution can fork into two (like NTM or co-NTM) Two kinds of configurations: ∃ and ∀ A ∃ configuration is accepting if either child is accepting A ∀ configuration is accepting only if both children are accepting

Guess 0 Guess 1 Guess 0 Guess 0 Guess 1 Guess 1

∃ ∃ ∃ ∀ ∀ ∀ ∀

2

slide-8
SLIDE 8

ATM

Alternating Turing Machine At each step, execution can fork into two (like NTM or co-NTM) Two kinds of configurations: ∃ and ∀ A ∃ configuration is accepting if either child is accepting A ∀ configuration is accepting only if both children are accepting ATM accepts if start config accepts according to this rule

Guess 0 Guess 1 Guess 0 Guess 0 Guess 1 Guess 1

∃ ∃ ∃ ∀ ∀ ∀ ∀

2

slide-9
SLIDE 9

ATIME, ASPACE

3

slide-10
SLIDE 10

ATIME, ASPACE

ATIME(T) ⊆ DSPACE(T2)

3

slide-11
SLIDE 11

ATIME, ASPACE

ATIME(T) ⊆ DSPACE(T2) AP = PSPACE

3

slide-12
SLIDE 12

ATIME, ASPACE

ATIME(T) ⊆ DSPACE(T2) AP = PSPACE ASPACE(S) = DTIME(2O(S))

3

slide-13
SLIDE 13

ATIME, ASPACE

ATIME(T) ⊆ DSPACE(T2) AP = PSPACE ASPACE(S) = DTIME(2O(S)) AL = P and APSPACE = EXP

3

slide-14
SLIDE 14

DTIME(2O(S)) ⊆ ASPACE(S)

4

slide-15
SLIDE 15

DTIME(2O(S)) ⊆ ASPACE(S)

To decide, is configuration after t steps accepting

4

slide-16
SLIDE 16

DTIME(2O(S)) ⊆ ASPACE(S)

To decide, is configuration after t steps accepting C(i,j,x) : if after i steps, jth cell of config is x

4

slide-17
SLIDE 17

DTIME(2O(S)) ⊆ ASPACE(S)

To decide, is configuration after t steps accepting C(i,j,x) : if after i steps, jth cell of config is x C(i,j,x): ∃a,b,c st x=F(a,b,c) and C(i-1,j-1,a), C(i-1,j,b), C(i-1,j+1,c)

4

slide-18
SLIDE 18

DTIME(2O(S)) ⊆ ASPACE(S)

To decide, is configuration after t steps accepting C(i,j,x) : if after i steps, jth cell of config is x C(i,j,x): ∃a,b,c st x=F(a,b,c) and C(i-1,j-1,a), C(i-1,j,b), C(i-1,j+1,c) Base case: C(0,j,x) easy to check from input

4

slide-19
SLIDE 19

DTIME(2O(S)) ⊆ ASPACE(S)

To decide, is configuration after t steps accepting C(i,j,x) : if after i steps, jth cell of config is x C(i,j,x): ∃a,b,c st x=F(a,b,c) and C(i-1,j-1,a), C(i-1,j,b), C(i-1,j+1,c) Base case: C(0,j,x) easy to check from input Naive recursion: Extra O(S) space to store i,j at each level for 2O(S) levels!

4

slide-20
SLIDE 20

ATM for TM simulation

5

slide-21
SLIDE 21

ATM for TM simulation

ATM to check if C(i,j,x)

5

slide-22
SLIDE 22

ATM for TM simulation

ATM to check if C(i,j,x) C(i,j,x): ∃a,b,c st x=F(a,b,c) and C(i-1,j-1,a), C(i-1,j,b), C(i-1,j+1,c)

5

slide-23
SLIDE 23

ATM for TM simulation

ATM to check if C(i,j,x) C(i,j,x): ∃a,b,c st x=F(a,b,c) and C(i-1,j-1,a), C(i-1,j,b), C(i-1,j+1,c) Tail-recursion in parallel forks

5

slide-24
SLIDE 24

ATM for TM simulation

ATM to check if C(i,j,x) C(i,j,x): ∃a,b,c st x=F(a,b,c) and C(i-1,j-1,a), C(i-1,j,b), C(i-1,j+1,c) Tail-recursion in parallel forks Check x=F(a,b,c); then enter universal state, and non-deterministically choose one of the three conditions to check

5

slide-25
SLIDE 25

ATM for TM simulation

ATM to check if C(i,j,x) C(i,j,x): ∃a,b,c st x=F(a,b,c) and C(i-1,j-1,a), C(i-1,j,b), C(i-1,j+1,c) Tail-recursion in parallel forks Check x=F(a,b,c); then enter universal state, and non-deterministically choose one of the three conditions to check Overwrite C(i,j,x) with C(i-1,...) and reuse space

5

slide-26
SLIDE 26

ATM for TM simulation

ATM to check if C(i,j,x) C(i,j,x): ∃a,b,c st x=F(a,b,c) and C(i-1,j-1,a), C(i-1,j,b), C(i-1,j+1,c) Tail-recursion in parallel forks Check x=F(a,b,c); then enter universal state, and non-deterministically choose one of the three conditions to check Overwrite C(i,j,x) with C(i-1,...) and reuse space Stay within the same O(S) space at each level!

5

slide-27
SLIDE 27

ATM for TM simulation

ATM to check if C(i,j,x) C(i,j,x): ∃a,b,c st x=F(a,b,c) and C(i-1,j-1,a), C(i-1,j,b), C(i-1,j+1,c) Tail-recursion in parallel forks Check x=F(a,b,c); then enter universal state, and non-deterministically choose one of the three conditions to check Overwrite C(i,j,x) with C(i-1,...) and reuse space Stay within the same O(S) space at each level!

G e t s t h e A N D c h e c k f

  • r

f r e e . N

  • n

e e d t

  • u

s e a s t a c k .

5

slide-28
SLIDE 28

Zoo

P

PSPACE

EXP NP NEXP L NL

NPSPACE

ΣkP

AP

PH

6

slide-29
SLIDE 29

Zoo

P

PSPACE

EXP NP NEXP L NL

NPSPACE APSPACE

AL ΣkP

AP

PH

6

slide-30
SLIDE 30

Zoo

P

PSPACE

EXP NP NEXP L NL

NPSPACE APSPACE

AL ΣkP

AP

PH

6

slide-31
SLIDE 31

Non-Uniform Computation

Lecture 10 Non-Uniform Computational Models: Circuits

7

slide-32
SLIDE 32

Non-Uniform Computation

8

slide-33
SLIDE 33

Non-Uniform Computation

Uniform: Same program for all (the infinitely many) inputs

8

slide-34
SLIDE 34

Non-Uniform Computation

Uniform: Same program for all (the infinitely many) inputs Non-uniform: A different “program” for each input size

8

slide-35
SLIDE 35

Non-Uniform Computation

Uniform: Same program for all (the infinitely many) inputs Non-uniform: A different “program” for each input size Then complexity of building the program and executing the program

8

slide-36
SLIDE 36

Non-Uniform Computation

Uniform: Same program for all (the infinitely many) inputs Non-uniform: A different “program” for each input size Then complexity of building the program and executing the program Sometimes will focus on the latter alone

8

slide-37
SLIDE 37

Non-Uniform Computation

Uniform: Same program for all (the infinitely many) inputs Non-uniform: A different “program” for each input size Then complexity of building the program and executing the program Sometimes will focus on the latter alone Not entirely realistic if the program family is uncomputable

  • r very complex to compute

8

slide-38
SLIDE 38

Non-uniform advice

9

slide-39
SLIDE 39

Non-uniform advice

Program: TM M and advice strings {An}

9

slide-40
SLIDE 40

Non-uniform advice

Program: TM M and advice strings {An} M given A|x| along with x

9

slide-41
SLIDE 41

Non-uniform advice

Program: TM M and advice strings {An} M given A|x| along with x An can be the program for inputs of size n

9

slide-42
SLIDE 42

Non-uniform advice

Program: TM M and advice strings {An} M given A|x| along with x An can be the program for inputs of size n |An|=2n is sufficient

9

slide-43
SLIDE 43

Non-uniform advice

Program: TM M and advice strings {An} M given A|x| along with x An can be the program for inputs of size n |An|=2n is sufficient But {An} can be uncomputable (even if just one bit long)

9

slide-44
SLIDE 44

Non-uniform advice

Program: TM M and advice strings {An} M given A|x| along with x An can be the program for inputs of size n |An|=2n is sufficient But {An} can be uncomputable (even if just one bit long) e.g. advice to decide undecidable unary languages

9

slide-45
SLIDE 45

P/poly and P/log

10

slide-46
SLIDE 46

P/poly and P/log

DTIME(T)/a

10

slide-47
SLIDE 47

P/poly and P/log

DTIME(T)/a Languages decided by a TM in time T(n) using non-uniform advice of length a(n)

10

slide-48
SLIDE 48

P/poly and P/log

DTIME(T)/a Languages decided by a TM in time T(n) using non-uniform advice of length a(n) P/poly = ∪c,d,k>0 DTIME(knc)/knd

10

slide-49
SLIDE 49

P/poly and P/log

DTIME(T)/a Languages decided by a TM in time T(n) using non-uniform advice of length a(n) P/poly = ∪c,d,k>0 DTIME(knc)/knd P/log = ∪c,k>0 DTIME(knc)/k log n

10

slide-50
SLIDE 50

NP vs. P/log, P/poly

11

slide-51
SLIDE 51

NP vs. P/log, P/poly

P/log (or even DTIME(1)/1) has undecidable languages

11

slide-52
SLIDE 52

NP vs. P/log, P/poly

P/log (or even DTIME(1)/1) has undecidable languages e.g. unary undecidable languages

11

slide-53
SLIDE 53

NP vs. P/log, P/poly

P/log (or even DTIME(1)/1) has undecidable languages e.g. unary undecidable languages So P/log cannot be contained in any of the uniform complexity classes

11

slide-54
SLIDE 54

NP vs. P/log, P/poly

P/log (or even DTIME(1)/1) has undecidable languages e.g. unary undecidable languages So P/log cannot be contained in any of the uniform complexity classes P/log contains P

11

slide-55
SLIDE 55

NP vs. P/log, P/poly

P/log (or even DTIME(1)/1) has undecidable languages e.g. unary undecidable languages So P/log cannot be contained in any of the uniform complexity classes P/log contains P Does P/log or P/poly contain NP?

11

slide-56
SLIDE 56

NP ⊆ P/log ⇒ NP=P

12

slide-57
SLIDE 57

NP ⊆ P/log ⇒ NP=P

Recall finding witness for an NP language is Turing reducible to deciding the language

12

slide-58
SLIDE 58

Search using Decision

Suppose given “oracles” for deciding all NP languages, can we easily find certificates? Yes! So, if decision easy (decision-oracles realizable), then search is easy too! Say, given x, need to find w s.t. (x,w) ∈ L ’ (if such w exists) consider L1 in NP: (x,y) ∈ L1 iff ∃z s.t. (x,yz) ∈ L ’. (i.e., can y be a prefix of a certificate for x). Query L1-oracle with (x,0) and (x,1). If ∃w, one of the two must be positive: say (x,0) ∈ L1; then first bit of w be 0. For next bit query L1-oracle with (x,00) and (x,01)

Recall

13

slide-59
SLIDE 59

Search using Decision

Suppose given “oracles” for deciding all NP languages, can we easily find certificates? Yes! So, if decision easy (decision-oracles realizable), then search is easy too! Say, given x, need to find w s.t. (x,w) ∈ L ’ (if such w exists) consider L1 in NP: (x,y) ∈ L1 iff ∃z s.t. (x,yz) ∈ L ’. (i.e., can y be a prefix of a certificate for x). Query L1-oracle with (x,0) and (x,1). If ∃w, one of the two must be positive: say (x,0) ∈ L1; then first bit of w be 0. For next bit query L1-oracle with (x,00) and (x,01)

Use L2 so that (x,z,pad) in L2 iff (x,z) in L1. Can query L2 with same size instances

Recall

13

slide-60
SLIDE 60

NP ⊆ P/log ⇒ NP=P

Recall finding witness for an NP language is Turing reducible to deciding the language

14

slide-61
SLIDE 61

NP ⊆ P/log ⇒ NP=P

If NP ⊆ P/log, then for each L in NP, there is a poly-time TM with log advice which can find witness (via self- reduction) Recall finding witness for an NP language is Turing reducible to deciding the language

14

slide-62
SLIDE 62

NP ⊆ P/log ⇒ NP=P

If NP ⊆ P/log, then for each L in NP, there is a poly-time TM with log advice which can find witness (via self- reduction) Guess advice (poly many), and for each guessed advice, run the TM and see if it finds witness Recall finding witness for an NP language is Turing reducible to deciding the language

14

slide-63
SLIDE 63

NP ⊆ P/log ⇒ NP=P

If NP ⊆ P/log, then for each L in NP, there is a poly-time TM with log advice which can find witness (via self- reduction) Guess advice (poly many), and for each guessed advice, run the TM and see if it finds witness If no advice worked (one of them was correct), then input not in language Recall finding witness for an NP language is Turing reducible to deciding the language

14

slide-64
SLIDE 64

NP ⊆ P/poly ⇒ PH=Σ2P

15

slide-65
SLIDE 65

NP ⊆ P/poly ⇒ PH=Σ2P

Will show Π2P = Σ2P

15

slide-66
SLIDE 66

NP ⊆ P/poly ⇒ PH=Σ2P

Will show Π2P = Σ2P Consider L = {x| ∀w1 (x,w1) ∈ L ’ } ∈ Π2P where L ’ = {(x,w1)| ∃w2 F(x,w1,w2)} ∈ NP

15

slide-67
SLIDE 67

NP ⊆ P/poly ⇒ PH=Σ2P

Will show Π2P = Σ2P Consider L = {x| ∀w1 (x,w1) ∈ L ’ } ∈ Π2P where L ’ = {(x,w1)| ∃w2 F(x,w1,w2)} ∈ NP If NP ⊆ P/poly then consider M with advice {An} which finds witness for L ’: i.e. if (x,w1) ∈ L ’, then M(x,w1; An) outputs a witness w2 s.t. F(x,w1,w2)

15

slide-68
SLIDE 68

NP ⊆ P/poly ⇒ PH=Σ2P

Will show Π2P = Σ2P Consider L = {x| ∀w1 (x,w1) ∈ L ’ } ∈ Π2P where L ’ = {(x,w1)| ∃w2 F(x,w1,w2)} ∈ NP If NP ⊆ P/poly then consider M with advice {An} which finds witness for L ’: i.e. if (x,w1) ∈ L ’, then M(x,w1; An) outputs a witness w2 s.t. F(x,w1,w2) L = {x| ∃z ∀w1 F(x, w1, M(x,w1; z)) }

15

slide-69
SLIDE 69

Boolean Circuits

16

slide-70
SLIDE 70

Boolean Circuits

Non-uniformity: circuit family {Cn}

16

slide-71
SLIDE 71

Boolean Circuits

Non-uniformity: circuit family {Cn} Given non-uniform computation (M,{An}), can define equivalent {Cn}

16

slide-72
SLIDE 72

Boolean Circuits

Non-uniformity: circuit family {Cn} Given non-uniform computation (M,{An}), can define equivalent {Cn} An,q0 (x,An) x

16

slide-73
SLIDE 73

Boolean Circuits

Non-uniformity: circuit family {Cn} Given non-uniform computation (M,{An}), can define equivalent {Cn} Advice An is hard-wired into circuit Cn An,q0 (x,An) x

16

slide-74
SLIDE 74

Boolean Circuits

Non-uniformity: circuit family {Cn} Given non-uniform computation (M,{An}), can define equivalent {Cn} Advice An is hard-wired into circuit Cn Size of circuit polynomially related to running time of TM An,q0 (x,An) x

16

slide-75
SLIDE 75

Boolean Circuits

Non-uniformity: circuit family {Cn} Given non-uniform computation (M,{An}), can define equivalent {Cn} Advice An is hard-wired into circuit Cn Size of circuit polynomially related to running time of TM An,q0 (x,An) x S i z e = n

  • .
  • f

w i r e s

16

slide-76
SLIDE 76

Boolean Circuits

Non-uniformity: circuit family {Cn} Given non-uniform computation (M,{An}), can define equivalent {Cn} Advice An is hard-wired into circuit Cn Size of circuit polynomially related to running time of TM Conversely, given {Cn}, can use description of Cn as advice An for a “universal” TM An,q0 (x,An) x S i z e = n

  • .
  • f

w i r e s

16

slide-77
SLIDE 77

Boolean Circuits

Non-uniformity: circuit family {Cn} Given non-uniform computation (M,{An}), can define equivalent {Cn} Advice An is hard-wired into circuit Cn Size of circuit polynomially related to running time of TM Conversely, given {Cn}, can use description of Cn as advice An for a “universal” TM |An| comparable to size of circuit Cn An,q0 (x,An) x S i z e = n

  • .
  • f

w i r e s

16

slide-78
SLIDE 78

SIZE(T)

17

slide-79
SLIDE 79

SIZE(T)

SIZE(T): languages solved by circuit families of size T(n)

17

slide-80
SLIDE 80

SIZE(T)

SIZE(T): languages solved by circuit families of size T(n) P/poly = SIZE(poly)

17

slide-81
SLIDE 81

SIZE(T)

SIZE(T): languages solved by circuit families of size T(n) P/poly = SIZE(poly) SIZE(poly) ⊆ P/poly: Size T circuit can be described in O(T log T) bits (advice). Universal TM can evaluate this circuit in poly time

17

slide-82
SLIDE 82

SIZE(T)

SIZE(T): languages solved by circuit families of size T(n) P/poly = SIZE(poly) SIZE(poly) ⊆ P/poly: Size T circuit can be described in O(T log T) bits (advice). Universal TM can evaluate this circuit in poly time P/poly ⊆ SIZE(poly): Transformation from Cook’ s theorem, with advice string hardwired into circuit

17

slide-83
SLIDE 83

SIZE bounds

18

slide-84
SLIDE 84

SIZE bounds

All languages (decidable or not) are in SIZE(T) for T=O(n2n)

18

slide-85
SLIDE 85

SIZE bounds

All languages (decidable or not) are in SIZE(T) for T=O(n2n) Circuit encodes truth-table

18

slide-86
SLIDE 86

SIZE bounds

All languages (decidable or not) are in SIZE(T) for T=O(n2n) Circuit encodes truth-table Most languages need circuits of size !(2n/n)

18

slide-87
SLIDE 87

SIZE bounds

All languages (decidable or not) are in SIZE(T) for T=O(n2n) Circuit encodes truth-table Most languages need circuits of size !(2n/n) Number of circuits of size T is at most T2T

18

slide-88
SLIDE 88

SIZE bounds

All languages (decidable or not) are in SIZE(T) for T=O(n2n) Circuit encodes truth-table Most languages need circuits of size !(2n/n) Number of circuits of size T is at most T2T If T = 2n/ 4n, say, T2T < 2(2^n)/2

18

slide-89
SLIDE 89

SIZE bounds

All languages (decidable or not) are in SIZE(T) for T=O(n2n) Circuit encodes truth-table Most languages need circuits of size !(2n/n) Number of circuits of size T is at most T2T If T = 2n/ 4n, say, T2T < 2(2^n)/2 Number of languages = 22^n

18

slide-90
SLIDE 90

SIZE hierarchy

19

slide-91
SLIDE 91

SIZE hierarchy

SIZE(T’) ⊊ SIZE(T) if T=!(t2t) and T’=O(2t/t)

19

slide-92
SLIDE 92

SIZE hierarchy

SIZE(T’) ⊊ SIZE(T) if T=!(t2t) and T’=O(2t/t) Consider functions on t bits (ignoring n-t bits)

19

slide-93
SLIDE 93

SIZE hierarchy

SIZE(T’) ⊊ SIZE(T) if T=!(t2t) and T’=O(2t/t) Consider functions on t bits (ignoring n-t bits) All of them in SIZE(T), most not in SIZE(T’)

19

slide-94
SLIDE 94

Uniform Circuits

20

slide-95
SLIDE 95

Uniform Circuits

Circuits are interesting for their structure too (not just size)!

20

slide-96
SLIDE 96

Uniform Circuits

Circuits are interesting for their structure too (not just size)! Uniform circuit family: constructed by a TM

20

slide-97
SLIDE 97

Uniform Circuits

Circuits are interesting for their structure too (not just size)! Uniform circuit family: constructed by a TM Undecidable languages are undecidable for these circuits families

20

slide-98
SLIDE 98

Uniform Circuits

Circuits are interesting for their structure too (not just size)! Uniform circuit family: constructed by a TM Undecidable languages are undecidable for these circuits families Can relate their complexity classes to classes defined using TMs

20

slide-99
SLIDE 99

Uniform Circuits

Circuits are interesting for their structure too (not just size)! Uniform circuit family: constructed by a TM Undecidable languages are undecidable for these circuits families Can relate their complexity classes to classes defined using TMs Logspace-uniform:

20

slide-100
SLIDE 100

Uniform Circuits

Circuits are interesting for their structure too (not just size)! Uniform circuit family: constructed by a TM Undecidable languages are undecidable for these circuits families Can relate their complexity classes to classes defined using TMs Logspace-uniform: An O(log n) space TM can compute the circuit

20

slide-101
SLIDE 101

NC and AC

21

slide-102
SLIDE 102

NC and AC

NC and AC: languages decided by poly size and poly-log depth logspace-uniform circuits

21

slide-103
SLIDE 103

NC and AC

NC and AC: languages decided by poly size and poly-log depth logspace-uniform circuits NC with bounded fan-in and AC with unbounded fan-in

21

slide-104
SLIDE 104

NC and AC

NC and AC: languages decided by poly size and poly-log depth logspace-uniform circuits NC with bounded fan-in and AC with unbounded fan-in NCi: decided by bounded fan-in logspace-uniform circuits of poly size and depth O(logi n)

21

slide-105
SLIDE 105

NC and AC

NC and AC: languages decided by poly size and poly-log depth logspace-uniform circuits NC with bounded fan-in and AC with unbounded fan-in NCi: decided by bounded fan-in logspace-uniform circuits of poly size and depth O(logi n) NC = ∪i>0 NCi

21

slide-106
SLIDE 106

NC and AC

NC and AC: languages decided by poly size and poly-log depth logspace-uniform circuits NC with bounded fan-in and AC with unbounded fan-in NCi: decided by bounded fan-in logspace-uniform circuits of poly size and depth O(logi n) NC = ∪i>0 NCi Similarly ACi and AC = ∪i>0 ACi

21

slide-107
SLIDE 107

NCi and ACi

22

slide-108
SLIDE 108

NCi and ACi

NCi ⊆ ACi ⊆ NCi+1

22

slide-109
SLIDE 109

NCi and ACi

NCi ⊆ ACi ⊆ NCi+1 Clearly NCi ⊆ ACi

22

slide-110
SLIDE 110

NCi and ACi

NCi ⊆ ACi ⊆ NCi+1 Clearly NCi ⊆ ACi ACi ⊆ NCi+1 because polynomial fan-in can be reduced to constant fan-in by using a log depth tree

22

slide-111
SLIDE 111

NCi and ACi

NCi ⊆ ACi ⊆ NCi+1 Clearly NCi ⊆ ACi ACi ⊆ NCi+1 because polynomial fan-in can be reduced to constant fan-in by using a log depth tree So NC = AC

22

slide-112
SLIDE 112

NC and P

23

slide-113
SLIDE 113

NC and P

NC ⊆ P

23

slide-114
SLIDE 114

NC and P

NC ⊆ P Build the circuit in logspace (so poly time) and evaluate it in time polynomial in the size of the circuit

23

slide-115
SLIDE 115

NC and P

NC ⊆ P Build the circuit in logspace (so poly time) and evaluate it in time polynomial in the size of the circuit Open problem: Is NC = P?

23

slide-116
SLIDE 116

Motivation for NC

24

slide-117
SLIDE 117

Motivation for NC

Fast parallel computation is (loosely) modeled as having poly many processors and taking poly-log time

24

slide-118
SLIDE 118

Motivation for NC

Fast parallel computation is (loosely) modeled as having poly many processors and taking poly-log time Corresponds to NC

24

slide-119
SLIDE 119

Motivation for NC

Fast parallel computation is (loosely) modeled as having poly many processors and taking poly-log time Corresponds to NC Depth translates to time

24

slide-120
SLIDE 120

Motivation for NC

Fast parallel computation is (loosely) modeled as having poly many processors and taking poly-log time Corresponds to NC Depth translates to time Total “work” is size of the circuit

24