1 / 25

Scope- Bounded Pushdown Languages

Scope- Bounded Pushdown Languages. Salvatore La Torre Università degli Studi di Salerno joint work with Margherita Napoli Università degli Studi di Salerno Gennaro Parlato University of Southampton. Multi-stack Pushdown Automata (MPA).

ryder
Download Presentation

Scope- Bounded Pushdown Languages

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Scope-BoundedPushdownLanguages Salvatore La Torre Università degli Studi di Salerno joint work with Margherita NapoliUniversità degli Studi di Salerno Gennaro Parlato University of Southampton

  2. Multi-stack Pushdown Automata (MPA) n stacks sharing a finite control states: s, , , ..........., transitions : push one symbol onto stack i pop one symbol from stack i internal move: stacks stay unchanged, only control location is altered input is from a one-wayread-only tape model of concurrency captures the control flow of concurrent programs with shared memory and recursive procedure calls n 2 1

  3. Visible alphabets Alphabet is partitioned into: calls(cause a push operation) returns (cause a pop operation) internals (stacks are not used) For n>1 stacks, alphabet is also partitioned according to stacks the stack to operate is uniquely identified by the input symbol (it is visible in the input)

  4. What visibility gains for MPA? Stack usage is synchronized with the input parallel simulation of multiple runs, cross product construction,subset-like constructions 1-stack (VPL): intersection and determinization universality, inclusion and equality n-stacks (MVPL): just intersection emptiness is undecidable: the runs of MPA are visible! checking for emptiness of MVPL equals to decide reachability for MPA

  5. Theme of the talk • The formal language theory of visibly n-stack languages of k-scoped words (Smvpl) Visible alphabet (retns) --st1: a, a’st2: b, b’ internal: e a e b a a’ a’ b a b’ e b’ a’ scope of matching relation over S: max number of S-contexts between matching call/retn • scope is 2 for GREEN and 3 for RED matchingrelation (matchingcall/retn) Contextsplitting word is 3-scoped

  6. A few observations.... • Interest for restrictions of MPA mainly comes from verification • bugs of concurrent programs are likely to occur within few context-switches [Musuvathi-Qadeer, PLDI ‘07] • efficient sequentializations of multithreaded programs [Lal-Reps,CAV’08] • Robust automata theories are useful tools for other domains • Automata-theoretic approach to verification (model-checking) • Pattern matching problems • … • K-scoped visibly languages indeed form a robust class…

  7. k-scoped MVPA • Closure under Boolean operations • Det./nondet. models are equivalent • Decidable emptiness [La Torre-Napoli, CONCUR’11], inclusion, equality, and universality • Logical characterization (MSO with matching relations) • Parikh theorem • Sequentializable: computations can be simulated with one stack (rearranging order of inputs) • Decidable temporal logic model-checking [La Torre-Napoli,TCS’12] [Atig-Bouajjani-Kumar-Saivasan, ATVA’12]

  8. More related work • Visibly pushdown languages [Alur-Madhusudan J. ACM'09] [MelhornICALP'80] Restricted MPAs: • Emptiness/reachability/closure properties [Carotenuto et al. DLT’07] [Atig et al. DLT’08] [Seth,CAV’10] [LaTorre et al. LATIN'10] [LaTorre et al. MFCS'14] • Model-checking [Atig, FSTTCS’10] [Bollig et al. MFCS’11] [Bollig et al. LICS’13] [Bansal-Demri, CSR’13] • MSO of multiply nested words [Madhusudan-Parlato POPL'11] [Cyriac et al. CONCUR'12] • ............

  9. Rest of the talk • Determinizationconstruction • Brief comparison with the known MPA classes of languages • Conclusions

  10. MVPL are nondeterministic • L = {(ab)i cjdi-j xjyi-j | i,j>0} is inherently nondeterministic for MPA [La Torre-Madhusudan-Parlato, LICS’07] • j is arbitrary and needs to be the same for both stacks • a guess is needed when pushing both stacks • L is not Smvpl • For any j, (ab)kcjdk-j xjyk-jis (k+1)-scoped a b a b a b ……… a b c………… d x………… y

  11. Determinization of SMPA • Summaries of computations for SMPA • Linearinterfaces • Switchingmasks • PDA computing linear interfaces • linear interface automaton (LIA) • Simulation of SMPA by deterministic composition of deterministic LIAs (using switching masks)

  12. View of runs by stacks Input word (contexts) w = g1r1g2b1r2b2r3b3r4g3 Run (without stacks) q1q2q3q4q5q6q7q8q9q10q11 q6 q8 q4 q8 q2 q6 q5 q7 q2 q3 q10 q9 q10 g1 b2 r4 b1 g2 r1 r2 b3 g3 r3 q1 q11 q9 q7 q5 q3 q4 g1 g2 g3 r1 r4 r2 b2 r3 b1 b3 stack 3 stack 2 stack 1

  13. Linear Interface (LI) • k-LI for a stack S just summarizes starting and ending control states for k consecutive contexts of S in a run (starting from stack S empty) g1 g2 r1 b1 q5 q1 q2 q2 q3 q4 g3 r2 q4 b2 q3 q6 q5 q6 q7 r3 b3 q11 q10 q8 q9 q7 q8 r4 q10 q9 2-LI for stack 2 3-LI for stack 1 stack 1 stack 2 stack 3

  14. Switching Mask (SM) • a tuple of LI, one for each stack • a function Nxtthat links contexts of LI’s g1 stack 2 stack 3 stack 1 g2 r1 b1 q5 q1 q2 q2 q3 q4 g3 r2 q4 b2 q3 q6 q5 q6 q7 r3 b3 q11 q10 q8 q9 q7 q8 Switching mask r4 q10 q9 Nxtfunctiongiven by purple arrows

  15. Simulating MPA with SMs (1) • Control state (h, M) • h: current stack M: switching mask • Movewithin a context: just update LI of stack h • Es: • M: • h=3 • MPA transitionfrom q5 to p5on stack-3 symbol • (h isnotchanged) g1 g2 r1 b1 q5 q5 q1 q2 q2 q3 q4 q4 q3 p5 q1 q2 q2 q3 q4 q4 q3

  16. Simulating MPA with SMs (2) • Context-switch1 (accumulatedstackcontentneeded): add a new context to an existing LI • Es: h=3, and MPA moves from q5 to p5 on a stack-2 symbol • M: • then h=2 and the SM is g1 g2 r1 b1 q5 q1 q2 q2 q3 q4 q4 q3 q5 q1 q2 q2 q3 q4 q4 q3 q5 p5

  17. Simulating MPA with SMs (3) • Context-switch2 (accumulatedstackcontent no longerneeded): start a new LI • Es: h=3, and MPS moves from q5 to p5 on a stack-2 symbol • M: • then h=2 and the SM is g1 g2 r1 b1 q5 q1 q2 q2 q3 q4 q4 q3 q5 q1 q2 q5 q4 p5 q4 q3

  18. PDA accumulatingLIs Given a PDA P over an alphabet , symbols ,# a klinear interface automaton (k-LIA) for P is a PDA s.t. • input is over  {,#} w11#w12#........#w1i1w21#w22#........#w2i2.... • control states are h-LIs of P for hk • on , simulates P on the last state of the LI • on #, a new context is appended to the current LI (provided that it is a h-LI with hk-1) • on , a new LI is started and stack is reset (a bottom-of-the-stack symbol is pushed onto the stack to avoid the use of previously pushed symbols)

  19. (k)-LIs suffice for SMPA Theorem. By restricting to k-scoped inputs, h-LIs with hk suffice to simulate the behavior of an MPA with switching masks Thus, for each stack of an SMPA, we can restrict to k-LIAs

  20. Determinization of SMPA (1) For an SMPA A • construct the LIA Ah for each stack h • construct Dh by determinizing each Ah as in [Alur-Madhusudan, STOC’04] • construct the deterministic SMPA D (equiv. to A) • cross product of the Dh‘s • parallel simulation of A with all the generated SMs (subset construction)

  21. Determinization of SMPS (2) • a state of D is of the form (h, Q1,...,Qn, ) where • h is the currentstack • Q1,...,Qnis a state of the cross product • is a set of switchingmasks • within a context of stack h, D simulates Dh (the Qh–component and all the switching masks in  getsupdatedaccordingly) • on context-switching from stackh to stacki (a call/return of stackiisread), D simulates in parallel • Dh on either # or  • Di on the input symbol • the size of D is • expin the size of A and • 2exp in the number of stacks and the bound k

  22. Comparisons CSL Omvpl [BCCC96] [MCP07] [ABH08] Rmvpl [LPM10] Smvpl Tmvpl [LNP14] Pmvpl [LMP07] DCFL CFL VPL [AM04]

  23. Decision Problems VPL CFL Rmvpl Smvpl Tmvpl Pmvpl Omvpl CSL

  24. Conclusions Smvplform a robust theory of visibly languages (the largest among those closed under determinization) Sequentializationis nice for analysis purposes Computations of MPA can be analyzed via computations of PDA used in software verification Scope-bounded words meaningfully extends to –words Describe infinite on-going interaction among different threads

  25. Theory on infinite words? • Little it is known on MPS over –words • visibly pushdown Büchiautomata [Alur-Madhusudan,J. ACM, 2009] - the model is not determinizable • emptiness for k-scoped Büchi MPA is PSPACE-complete [La Torre-Napoli,TCS’12] • closureunder union and intersectionare simple

More Related