conjunctive grammars and alternating automata tamar aizikowitz and michael kaminski technion –...

25
Conjunctive Grammars and Alternating Automata Tamar Aizikowitz and Michael Kaminski Technion – Israel Institute of Technology WoLLIC 2008 Heriot-Watt University

Upload: maverick-halling

Post on 01-Apr-2015

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Conjunctive Grammars and Alternating Automata Tamar Aizikowitz and Michael Kaminski Technion – Israel Institute of Technology WoLLIC 2008 Heriot-Watt University

Conjunctive Grammars and Alternating Automata

Tamar Aizikowitz and Michael KaminskiTechnion – Israel Institute of Technology

WoLLIC 2008Heriot-Watt University

Page 2: Conjunctive Grammars and Alternating Automata Tamar Aizikowitz and Michael Kaminski Technion – Israel Institute of Technology WoLLIC 2008 Heriot-Watt University

2 of 25

Introduction:ND Computational Models

Non-deterministic computational models have existential acceptance conditions At least one computation must accept E.g., FSA, PDA, CFG, TM

Languages accepted have disjunctive quality A word must meet one of many possible

conditions (computations) Language class closed under union

Page 3: Conjunctive Grammars and Alternating Automata Tamar Aizikowitz and Michael Kaminski Technion – Israel Institute of Technology WoLLIC 2008 Heriot-Watt University

3 of 25

Introduction:Co-ND Computational Models

Dual computational models have universal acceptance conditions All computations must accept E.g., Universal TM; accepts class Co-NP

Languages accepted have conjunctive quality A word must meet all conditions (computations) Language class closed under intersection

Page 4: Conjunctive Grammars and Alternating Automata Tamar Aizikowitz and Michael Kaminski Technion – Israel Institute of Technology WoLLIC 2008 Heriot-Watt University

4 of 25

Introduction:Combined Computational Models

Page 5: Conjunctive Grammars and Alternating Automata Tamar Aizikowitz and Michael Kaminski Technion – Israel Institute of Technology WoLLIC 2008 Heriot-Watt University

5 of 25

Introduction:Conjunctive Grammars (CG)

Introduced by Alexander Okhotin in 2001*

Extension of Context Free Grammars

Add power of explicit intersection

CG-s generate a larger class of languages* Okhotin A., Conjunctive Grammars, Journal of Automata, Languages and Combinatorics 6(4) (2001) 519-535

Reminder: Context free languages are not closed under intersection…

Page 6: Conjunctive Grammars and Alternating Automata Tamar Aizikowitz and Michael Kaminski Technion – Israel Institute of Technology WoLLIC 2008 Heriot-Watt University

6 of 25

Polynomial Time

CG Languages

Finite ∩ CF

Introduction:Conjunctive Grammars (CG)

Conjunctive Grammars generate: Context Free languages Finite ∩ of CF languages Some more languages

Generated languages are polynomial

No known non-trivial technique to prove a language cannot be generated by a CG Exact placing in the Chomsky Hierarchy not known

Context Free

Page 7: Conjunctive Grammars and Alternating Automata Tamar Aizikowitz and Michael Kaminski Technion – Israel Institute of Technology WoLLIC 2008 Heriot-Watt University

7 of 25

Introduction:Alternating Automata

Alternating Automata were introduced by Chandra et.al. in 1981*

Computations alternate between existential and universal acceptance modes

Well known examples: Alternating Finite State Automata (Verification) Alternating Turing Machines (Complexity Theory) Both equivalent to non-alternating counterparts

* Chandra, A.K., Kozen, D.C., Stockmeyer, L.J., Alternation. Journal of the ACM 28(1) (1981) 114-133

Page 8: Conjunctive Grammars and Alternating Automata Tamar Aizikowitz and Michael Kaminski Technion – Israel Institute of Technology WoLLIC 2008 Heriot-Watt University

8 of 25

Introduction: Alternating Pushdown Automata (APDA)

Further explored by Ladner et.al. in 1984*

Add conjunction to computations

Not equivalent to standard PDA model

Accept exactly the Exp. Time Languages

Not equivalent to the CG model

* Ladner, R.E., Lipton, R.J., Stockmeyer, L.J., Alternating pushdown and stack automata. SIAM Journal on Computing 13(1) (1984) 135-155

Page 9: Conjunctive Grammars and Alternating Automata Tamar Aizikowitz and Michael Kaminski Technion – Israel Institute of Technology WoLLIC 2008 Heriot-Watt University

9 of 25

Introduction:Synchronized APDA (SAPDA)

We introduce a new model:

Synchronized Alternating Pushdown Automata

Equivalent to Conjunctive Grammar model

In fact, this is the first class of automata suggested for Conjunctive Grammars

Page 10: Conjunctive Grammars and Alternating Automata Tamar Aizikowitz and Michael Kaminski Technion – Israel Institute of Technology WoLLIC 2008 Heriot-Watt University

10 of 25

Outline

Conjunctive Grammars

Synchronized Alternating PDA

Equivalence Results: CG ~ SAPDA

Future Work

Page 11: Conjunctive Grammars and Alternating Automata Tamar Aizikowitz and Michael Kaminski Technion – Israel Institute of Technology WoLLIC 2008 Heriot-Watt University

11 of 25

Conjunctive Grammars:Model Definition

G = ( V , T , P , S ) V,T,S as in the standard CFG case P contains rules X → (1 & & n)

n = 1 gives standard CFG rules Conjunctive Formulas:

{ } V T are formulas If and are formulas then is a formula If 1,…,n are formulas then (1 & & n) is a

formula conjunct

Page 12: Conjunctive Grammars and Alternating Automata Tamar Aizikowitz and Michael Kaminski Technion – Israel Institute of Technology WoLLIC 2008 Heriot-Watt University

12 of 25

Conjunctive Grammars:Model Definition

Derivation:

Application: s1 X s2 s1(1 & & n)s2

s.t. X → (1 & & n) P

Contraction: s1(w & & w) s2 s1w s2

Language: L(G) = {w T * | S * w}

Note:( & ) *w iff *w and *w

Page 13: Conjunctive Grammars and Alternating Automata Tamar Aizikowitz and Michael Kaminski Technion – Israel Institute of Technology WoLLIC 2008 Heriot-Watt University

13 of 25

Conjunctive Grammars:Example 1

L = {anbncn | n } Note: L = L1 L2 where

L1 = {anbnci | n,i }

L2 = {aibncn | n,i }

G = ({S,S1,S2,S3,S4} , {a,b,c} , S , P) where P = : S1 → a S1 b | ; S2 → c S2 | S3 → a S3 | ; S4 → b S4 c | S → (S1 S2 & S3 S4)

S1S2*L1

S3S4*L2

L1 L2

Page 14: Conjunctive Grammars and Alternating Automata Tamar Aizikowitz and Michael Kaminski Technion – Israel Institute of Technology WoLLIC 2008 Heriot-Watt University

14 of 25

Conjunctive Grammars:Example 1

Derivation of aaabbbccc:

S (S1S2 & S3S4) (aS1bS2 & S3S4)

… (aaaS1bbbS2 & S3S4)

(aaabbbS2 & S3S4)

(aaabbbcS2 & S3S4)

… (aaabbbccc & S3S4)

… (aaabbbccc & aaabbbccc)

aaabbbccc

S → (S1S2 & S3S4)S1 → aS1b

S1 → aS1b

S1 →

S2 → cS2

contraction

S2 → cS2

Page 15: Conjunctive Grammars and Alternating Automata Tamar Aizikowitz and Michael Kaminski Technion – Israel Institute of Technology WoLLIC 2008 Heriot-Watt University

Conjunctive Grammars:Interesting Languages

CGs can generate some interesting languages: Multiple agreement: {anbncn | n } Cross agreement: {anbmcndm | n,m } Reduplication: {w$w | w {a,b}*}

all mildly context-sensitive languages (MCS) CGs can also generate “stronger” languages such

as: {ba2ba4ba2nb | n }

not MCS because not semi-linear!

15 of 25

Page 16: Conjunctive Grammars and Alternating Automata Tamar Aizikowitz and Michael Kaminski Technion – Israel Institute of Technology WoLLIC 2008 Heriot-Watt University

16 of 25

Synchronized Alternating Pushdown Automata (SAPDA)

Extension of the standard PDA model Transitions are to conjunctions of

(state,stack-word) pairs E.g. (q , , X ) = {( p1 , XX ) ( p2 , Y ) , ( p3 , Z ) }

If all conjunctions are of one pair then we have the standard PDA model

Non-deterministic model = many possible conjunctions

Page 17: Conjunctive Grammars and Alternating Automata Tamar Aizikowitz and Michael Kaminski Technion – Israel Institute of Technology WoLLIC 2008 Heriot-Watt University

Synchronized Alternating Pushdown Automata (SAPDA)

Stack memory is a tree Each leaf has a separate processing head

A conjunctive transition to n pairs splits the current branch to n branches

Branches are processed independently Sibling branches must empty synchronously.

AB

CD

Aqp

17 of 25

Page 18: Conjunctive Grammars and Alternating Automata Tamar Aizikowitz and Michael Kaminski Technion – Israel Institute of Technology WoLLIC 2008 Heriot-Watt University

18 of 25

SAPDA:Model Definition

A = (Q , , , , q0 , )

For every (q , , X ) Q ({})

(q , , X ) {(q1 , 1) (qn , n) | qi Q , i * , n }

Example: (q , , X ) = {( p1 , Z ) ( p2 , YY )}

YY

Zp1

p2

Xq

Page 19: Conjunctive Grammars and Alternating Automata Tamar Aizikowitz and Michael Kaminski Technion – Israel Institute of Technology WoLLIC 2008 Heriot-Watt University

19 of 25

SAPDA:Configurations

(q0,w,)

(q,, )

BA

(q,ba, A) ( p,a, DC )

AB

CD

Aqp

abbaabba

Page 20: Conjunctive Grammars and Alternating Automata Tamar Aizikowitz and Michael Kaminski Technion – Israel Institute of Technology WoLLIC 2008 Heriot-Watt University

20 of 25

SAPDA:Computation

Computation: Each computation step, a transition is applied to

one stack-branch If a stack-branch empties, it cannot be selected If all siblings branches are empty and

“synchronized” then they are collapsed Synchronized Collapsing: All siblings…

Are empty Have the same state Have the same remaining input

Are all labeled (q,w,ɛ)

Page 21: Conjunctive Grammars and Alternating Automata Tamar Aizikowitz and Michael Kaminski Technion – Israel Institute of Technology WoLLIC 2008 Heriot-Watt University

21 of 25

SAPDA:Language

Accepting Computation: The final configuration is an accepting one, i.e. (q,,) for some qQ .

L(A) = {w * | A has an accepting computation on w}

Note: Acceptance by accepting states can also be defined. Both models of acceptance are equivalent.

Page 22: Conjunctive Grammars and Alternating Automata Tamar Aizikowitz and Michael Kaminski Technion – Israel Institute of Technology WoLLIC 2008 Heriot-Watt University

SAPDA:Example

L = {w {a,b,c}* | #a(w) = #b(w) = #c(w)}

22 of 25

a a b c c a b b c

δ (q0 , ε , ) = (q1 , 1) (q2 , 2)

δ (q1 , a , 1) = (q1 , a1) δ (q2 , a , 2) = (q2 , 2)

δ (q1 , a , a) = (q1 , aa) δ (q2 , a , 2) = (q2 , 2)

δ (q1 , b , a) = (q1 , ε) δ (q2 , b , 2) = (q2 , b2)

δ (q1 , c , a) = (q1 , a) δ (q2 , c , b) = (q2 , ε)

δ (q1 , ε , 1) = (q0 , ε) δ (q2 , ε , 2) = (q0 , ε)

q1 q2q0 q0

q0

ε

1 2

a

a

b

εε

Page 23: Conjunctive Grammars and Alternating Automata Tamar Aizikowitz and Michael Kaminski Technion – Israel Institute of Technology WoLLIC 2008 Heriot-Watt University

23 of 25

Equivalence Results

Theorem 1: SAPDA CG Theorem 2: CG 1-state SAPDA (1SAPDA)

Corollary 1: SAPDA ~ CG Corollary 2: SAPDA ~ 1SAPDA

Proofs: Both are extensions of the classical ones Surprisingly, the grammar-to-automaton

translation is the more complicated one…

Page 24: Conjunctive Grammars and Alternating Automata Tamar Aizikowitz and Michael Kaminski Technion – Israel Institute of Technology WoLLIC 2008 Heriot-Watt University

Future Directions

Linear CG and 1-turn SAPDA It is well known that LCFG ~ 1-turn PDA Linear CG: one non-terminal in each conjunct 1-turn SAPDA: each stack-branch turns once Initial results point towards: 1-turn SAPDA ~ LCG

Finite-turn SAPDA, Deterministic SAPDA…

Possibly, find a method to prove a language cannot be accepted by an SAPDA / CG…

24 of 25

Page 25: Conjunctive Grammars and Alternating Automata Tamar Aizikowitz and Michael Kaminski Technion – Israel Institute of Technology WoLLIC 2008 Heriot-Watt University

Thank You