Circuit Complexity of Regular Languages Michal Koucký (Institute of Mathemaics, AS ČR, Praha)

16
Circuit Complexity Circuit Complexity of Regular of Regular Languages Languages Michal Michal Koucký Koucký (Institute of Mathemaics, AS (Institute of Mathemaics, AS Č Č R, R, Praha) Praha)

Transcript of Circuit Complexity of Regular Languages Michal Koucký (Institute of Mathemaics, AS ČR, Praha)

Circuit Complexity Circuit Complexity of Regular of Regular LanguagesLanguages

MichalMichal Koucký Koucký(Institute of Mathemaics, AS (Institute of Mathemaics, AS ČČR, Praha)R, Praha)

2

Regular languagesRegular languages

Introduced in 50’s. Many equivalent Introduced in 50’s. Many equivalent definitions:definitions: Languages recognized by finite Languages recognized by finite

automata.automata. Languages described by regular Languages described by regular

expressions.expressions. Languages corresponding to word Languages corresponding to word

problems over finite monoids.problems over finite monoids.

3

Why regular languages today?Why regular languages today?

Used in practice, formal verification Used in practice, formal verification of systems…of systems…

Provide insight into computation and Provide insight into computation and circuit complexity.circuit complexity.

Provide understanding of elementary Provide understanding of elementary functions such as Integer Addition.functions such as Integer Addition.

(())

4

Boolean circuits:Boolean circuits: ANDAND

OROR OR OR OR OR

ANDAND

xx11 xx2 2 xx4 4 xx7 7

→→ non-uniform model of time-bounded non-uniform model of time-bounded computation.computation.

Fundamental question:Fundamental question: How large circuits does How large circuits does one need to compute specific Boolean one need to compute specific Boolean functions, e.g., SAT?functions, e.g., SAT?

5

All regular languages are computable by All regular languages are computable by logarithmic depth linear size circuits logarithmic depth linear size circuits ((NCNC11).).

→→ AND, OR of fan-in 2, NOT of fan-in 1.AND, OR of fan-in 2, NOT of fan-in 1.

b a a b a a …… b b

……

b a ab a a

a ba b

bb

6

Some regular languages are computable by Some regular languages are computable by constant depth polynomial size circuits (constant depth polynomial size circuits (ACAC00))

→→ AND, OR of arbitrary fan-in, NOT of fan-in 1.AND, OR of arbitrary fan-in, NOT of fan-in 1.

ACAC00 µµ NCNC11

Eg.: Eg.: TH-2 = { TH-2 = { ww in {0,1}* that contain at in {0,1}* that contain at least 2 ones}least 2 ones}

LENGTH(2) = { LENGTH(2) = { ww in {0,1}* of even in {0,1}* of even length}length}

[FSS’84]: Not all regular languages are [FSS’84]: Not all regular languages are computable by computable by ACAC00 circuits. circuits.

Eg.: Eg.: PARITY = { PARITY = { ww in {0,1}* that contain even in {0,1}* that contain even number of ones}.number of ones}.

7

Some more regular languages are Some more regular languages are computable by constant depth polynomial computable by constant depth polynomial size circuits with additional MOD-q gates size circuits with additional MOD-q gates ((ACCACC00))

→→ AND, OR, MOD-q of arbitrary fan-in, NOT of fan-in 1.AND, OR, MOD-q of arbitrary fan-in, NOT of fan-in 1.

ACAC0 0 ( ( ACCACC00 µ µ NCNC11

Eg.: Eg.: PARITY = { PARITY = { ww in {0,1}* that contain even in {0,1}* that contain even number of ones}.number of ones}.

Big Open Problem: Big Open Problem: ACCACC0 0 == NCNC1 1 ??

[Barrington] – regular [Barrington] – regular NCNC1 1 – complete languages.– complete languages.

8

All regular languages are computable by All regular languages are computable by linear size linear size NCNC11-circuits.-circuits.

Thm:Thm: All regular languages in All regular languages in ACAC0 0 are computable are computable

by by ACAC00-circuits of size O( -circuits of size O( n n . . gg O(O(dd ))( ( n n )). )). All regular languages in All regular languages in ACCACC0 0 are are

computable by computable by ACCACC00-circuits of size -circuits of size O( O( nn . . gg O(O(d d ))( ( nn )) if they are )) if they are not not NCNC11--complete and of size O(complete and of size O(nn1+1+εε) otherwise.) otherwise.

gg 00( ( nn ) = ) = nn/2/2 g g 22( ( nn ) = log* ) = log* nn

g g 11( ( nn ) = log ) = log n n g g d d ( ( nn ) = ) = g g d d -1-1*( *( nn ) )

9

Corollary:Corollary: To separate To separate ACCACC00 from from NCNC11 it suffices to show that a chosen it suffices to show that a chosen NCNC11-complete regular language -complete regular language cannot be computed by cannot be computed by ACCACC00 circuits of size, say, O( circuits of size, say, O( nn3/23/2 ). ).

E.g.:E.g.: Word problem over S Word problem over S55..

10

Thm [CFL]:Thm [CFL]: If a regular language has If a regular language has a group-free syntactic monoid then it a group-free syntactic monoid then it is computable by is computable by ACAC00-circuits of size -circuits of size O( O( nn . . g g d d ( ( nn )). )).

Note:Note: LENGTH(2) is in LENGTH(2) is in ACAC0 0 but its but its syntactic monoid contains a group.syntactic monoid contains a group.

11

Proof: Proof: (ideas)(ideas)

If evaluating the product of If evaluating the product of nn monoid monoid elements can be done by circuits of size elements can be done by circuits of size nn k k then it can be done by circuits of size then it can be done by circuits of size nn (1 + (1 + kk)/2)/2

…… √ √nn √√nn √√nn

√√nn

→→ circuits of size circuits of size nn1+1+εε

12

Chandra-Fortune-Lipton procedure:Chandra-Fortune-Lipton procedure:

If evaluating the If evaluating the prefix prefix product of product of nn monoid monoid elements can be done by circuits of size O( elements can be done by circuits of size O( n n . . gg22

d d ( ( nn )) [*] then it can be done by circuits of )) [*] then it can be done by circuits of size O( size O( n n . . gg22

d d +1+1( ( nn )).)).

……

13

Last ingredient:Last ingredient: description of description of regular languages by regular regular languages by regular expressions [S,T].expressions [S,T].

14

→→ all regular languages are computable by all regular languages are computable by their respective circuits of almost linear their respective circuits of almost linear size. (size measured by wires and/or gates.)size. (size measured by wires and/or gates.)

Question:Question: Is it possible that all regular Is it possible that all regular languages are computable by their languages are computable by their respective circuits of linear size?respective circuits of linear size?

Thm [KPT]:Thm [KPT]: Language Language UU = ( = (acac**bcbc*)* is *)* is computable by computable by ACCACC00-circuits with linear -circuits with linear number of gates but not with linear number number of gates but not with linear number of wires (it requires of wires (it requires ΘΘ( ( nn . . g g d d ( ( nn )) wires.))) wires.)

15

Question: Question: Is Is UU = ( = (acac**bcbc*)* computable *)* computable by by ACAC00-circuits with linear number of -circuits with linear number of gates?gates?

Yes → Yes → UU separates separates ACAC00-circuits with -circuits with linear number of wires from that with linear number of wires from that with linear number of gates.linear number of gates.

No → No → Integer Addition does not have Integer Addition does not have ACAC00-circuits with linear number of -circuits with linear number of gates.gates. [CFL] Integer Addition has [CFL] Integer Addition has ACAC00-circuits -circuits

with almost linear number of wires.with almost linear number of wires.

16

Open problemsOpen problems Is Is ACCACC00 equal to equal to NCNC1 1 ??

Has Integer Addition Has Integer Addition ACAC00 circuits with linear number of circuits with linear number of gates?gates?

Has (Has (acac* * bcbc*)* *)* ACAC00 circuits with circuits with linear number of gates?linear number of gates?

polyPtt/ polyP

tt/ polyP

tt/ polyP

tt/ polyP

tt/ polyP

tt/ polyP

tt/ polyP

tt/