Safety Properties for Querying XML Streams
|
|
- Ursula McGee
- 5 years ago
- Views:
Transcription
1 Safety Properties for Querying XML Streams Olivier Gauwin University of Mons joint work with: J. Niehren, S. Tison, M. Benedikt and G. Puppis Workshop on Timed and Infinite Systems Warwick March 30th, 2010 Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
2 XML A Format for Semi-Structured Data XML Document <bib> <book> <author> Hopcroft </author> <author> Ullman </author> <title> Introduction... </title> </book> <book>. author. </book> Hopcroft <book>. </book> </bib> Corresponding Tree bib book book book author title Ullman Introduction... Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
3 XML A Format for Semi-Structured Data XML Document <bib> Corresponding Tree bib </bib> Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
4 XML A Format for Semi-Structured Data <bib> <book> XML Document Corresponding Tree bib </book> <book> book book book </book> <book> </book> </bib> Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
5 XML A Format for Semi-Structured Data XML Document <bib> <book> <author> Hopcroft </author> <author> Ullman </author> <title> Introduction... </title> </book> <book>. author. </book> Hopcroft <book>. </book> </bib> Corresponding Tree bib book book book author title Ullman Introduction... Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
6 XML A Format for Semi-Structured Data XML Document <bib> <book> <author> Hopcroft </author> <author> Ullman </author> <title> Introduction... </title> </book> <book>. author. </book> Hopcroft <book>. </book> </bib> Corresponding Tree bib book book book author title Ullman Introduction... finite labeled ordered unranked trees Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
7 Streaming process data on-the-fly objective: low memory consumption (buffering) use cases: huge data (larger than main memory) natural stream sources: network sockets sensors subscribed feeds etc. Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
8 XML Streams <bib> <book> <author> Hopcroft </author> <author> Ullman </author> <title> Introduction... </title> </book> <book> book bib book. </book> </bib> author Hopcroft author Ullman title Introduction Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
9 XML Streams <bib> bib Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
10 XML Streams <bib> <book> bib book Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
11 XML Streams <bib> <book> <author> bib book author Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
12 XML Streams <bib> <book> <author> Hopcroft bib book author Hopcroft Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
13 XML Streams <bib> <book> <author> Hopcroft </author> bib book author Hopcroft Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
14 XML Streams <bib> <book> <author> Hopcroft </author> <author> bib book author author Hopcroft Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
15 XML Streams <bib> <book> <author> Hopcroft </author> <author> Ullman bib book author author Hopcroft Ullman Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
16 XML Streams <bib> <book> <author> Hopcroft </author> <author> Ullman </author> bib book author author Hopcroft Ullman Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
17 XML Streams <bib> <book> <author> Hopcroft </author> <author> Ullman </author> <title> book bib author author title Hopcroft Ullman Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
18 XML Streams <bib> <book> <author> Hopcroft </author> <author> Ullman </author> <title> Introduction... book bib author author title Hopcroft Ullman Introduction... Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
19 XML Streams <bib> <book> <author> Hopcroft </author> <author> Ullman </author> <title> Introduction... </title> book bib author author title Hopcroft Ullman Introduction... Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
20 XML Streams <bib> <book> <author> Hopcroft </author> <author> Ullman </author> <title> Introduction... </title> </book> book bib author author title Hopcroft Ullman Introduction... Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
21 XML Streams <bib> <book> <author> Hopcroft </author> <author> Ullman </author> <title> Introduction... </title> </book> <book> book bib book. </book> author author title... Hopcroft Ullman Introduction... Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
22 XML Streams <bib> <book> <author> Hopcroft </author> <author> Ullman </author> <title> Introduction... </title> </book> <book> book bib book. </book> </bib> author Hopcroft author Ullman title Introduction Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
23 Data exchange html body bib table book book tr tr author author title... td td td... Hopcroft Ullman Hopcroft Ullman Introduction... b Introduction... conform to schema 1 conform to schema 2 requires transformations usually based on selection of tuples of nodes via queries Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
24 Queries Queries A query Q selects a set of nodes in every tree t: Q(t) nodes(t) For instance, for Q = select the first author of each book bib book book author author title author title Hopcroft Ullman Introduction... Knuth The art of CP Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
25 Objectives process queries defined by: XPath expressions (W3C) tree automata in an earliest manner: select nodes as soon as possible reject nodes as soon as possible Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
26 Objectives process queries defined by: XPath expressions (W3C) tree automata in an earliest manner: select nodes as soon as possible reject nodes as soon as possible Consider Q = select authors of The Art of CP bib book book author author title author title Hopcroft Ullman Introduction... Knuth The art of CP Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
27 Objectives process queries defined by: XPath expressions (W3C) tree automata in an earliest manner: select nodes as soon as possible reject nodes as soon as possible Consider Q = select authors of The Art of CP bib book book author author title author title Hopcroft Ullman Introduction... Knuth The art of CP schemas may help Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
28 In this talk 1 we focus on the simpler case of filtering A filter F expresses some properties of trees specification φ in verification example: validation wrt a schema: DTD, XML Schema, Relax NG XPath filters evaluation Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
29 In this talk 1 we focus on the simpler case of filtering A filter F expresses some properties of trees specification φ in verification example: validation wrt a schema: DTD, XML Schema, Relax NG XPath filters evaluation 2 we only deal with filters defined by tree automata schemas are tree automata XPath tree automata: in PTIME for most streamable XPath expressions Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
30 In this talk 1 we focus on the simpler case of filtering A filter F expresses some properties of trees specification φ in verification example: validation wrt a schema: DTD, XML Schema, Relax NG XPath filters evaluation 2 we only deal with filters defined by tree automata schemas are tree automata XPath tree automata: in PTIME for most streamable XPath expressions The task becomes: Given a tree automaton A, and a tree t accessed in streaming, detect at the earliest position, whether t L(A). Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
31 In this talk 1 we focus on the simpler case of filtering A filter F expresses some properties of trees specification φ in verification example: validation wrt a schema: DTD, XML Schema, Relax NG XPath filters evaluation 2 we only deal with filters defined by tree automata schemas are tree automata XPath tree automata: in PTIME for most streamable XPath expressions The task becomes: Given a tree automaton A, and a tree t accessed in streaming, detect at the earliest position, whether t L(A). online verification ([Kupferman and Vardi (2001)]: earliest rejection) Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
32 Hardness Task: Given a tree automaton A, and a tree t accessed in streaming, detect at the earliest position, whether t L(A). t e harder than universality of A consider the starting event Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
33 Hardness Task: Given a tree automaton A, and a tree t accessed in streaming, detect at the earliest position, whether t L(A). t e t harder than universality of A consider the starting event Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
34 Earliest Validation vs Earliest Rejection in this talk, we consider earliest validation (t L(A)?) do all continuations succeed? but not earliest rejection (t / L(A)?) do all continuations fail? Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
35 Earliest Validation vs Earliest Rejection in this talk, we consider earliest validation (t L(A)?) do all continuations succeed? but not earliest rejection (t / L(A)?) do all continuations fail? these problems are different! earliest validation = are all accessible configurations accepting? earliest rejection = is there an accessible accepting configurations? Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
36 Outline 1 Visibly Pushdown Automata (VPAs) as tree automata Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
37 Outline 1 Visibly Pushdown Automata (VPAs) as tree automata 2 Algorithm 1 for earliest validation propagation of safe states [Gauwin et al. (2009b)] Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
38 Outline 1 Visibly Pushdown Automata (VPAs) as tree automata 2 Algorithm 1 for earliest validation propagation of safe states [Gauwin et al. (2009b)] 3 Algorithm 2 for earliest validation reachability of configurations inspired from pushdown systems [Bouajjani et al. (1997)] Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
39 1 Introduction 2 Visibly Pushdown Automata 3 Algorithm 1: Propagation of Safe States 4 Algorithm 2: Reachability of Configurations 5 Conclusion Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
40 Visibly Pushdown Automata recent model [Alur and Madhusudan (2004), Alur and Madhusudan (2009)] a pushdown automaton over Σ Σ visible means that 1 action (push/pop) is performed by each letter: rules using a Σ only push rules using a Σ only pop Visibly Pushdown Automaton (VPA) A VPA is a tuple (Q,I,F,Γ,,Σ Σ) with I,F Q and is a set of rules with the form: q 1,a γ,q 2 written as q 1 a:γ q 2 q 1,a,γ q 2 written as q 1 a:γ q 2 with q 1,q 2 Q, a Σ, a Σ, γ Γ. The semantics is defined as for usual pushdown automata (ends on final states, not on empty stack). Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
41 VPAs as Tree Automata a run of a VPA on a tree consists in: when opening node n: update the current state, and assign γ Γ to n when closing node n: update the current state according to γ a β b β a α a b b a 0 α β γ β b γ A: VPA on T Σ with Σ = {a,b} and Q = {0,1,2,3,4,5} and Γ = {α,β,γ} 5 Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
42 VPAs as Tree Automata a run of a VPA on a tree consists in: when opening node n: update the current state, and assign γ Γ to n when closing node n: update the current state according to γ a β b β a α a b b a 0 α β γ β b γ A: VPA on T Σ with Σ = {a,b} and Q = {0,1,2,3,4,5} and Γ = {α,β,γ} (0, ) 5 a 0 a b b Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
43 VPAs as Tree Automata a run of a VPA on a tree consists in: when opening node n: update the current state, and assign γ Γ to n when closing node n: update the current state according to γ a β b β a α a b b a 0 α β γ β b γ A: VPA on T Σ with Σ = {a,b} and Q = {0,1,2,3,4,5} and Γ = {α,β,γ} (0, ) a (1,α) 5 a 0 1 α a b b Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
44 VPAs as Tree Automata a run of a VPA on a tree consists in: when opening node n: update the current state, and assign γ Γ to n when closing node n: update the current state according to γ a β b β a α a b b a 0 α β γ β b γ A: VPA on T Σ with Σ = {a,b} and Q = {0,1,2,3,4,5} and Γ = {α,β,γ} 1 (0, ) a (1,α) a (1,α.β) 5 β a 0 1 α a b b Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
45 VPAs as Tree Automata a run of a VPA on a tree consists in: when opening node n: update the current state, and assign γ Γ to n when closing node n: update the current state according to γ a β b β a α a b b a 0 α β γ β b γ A: VPA on T Σ with Σ = {a,b} and Q = {0,1,2,3,4,5} and Γ = {α,β,γ} 1 (0, ) a (1,α) a (1,α.β) b (4, α.β.β) 5 4 β a β b 0 1 α a b Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
46 VPAs as Tree Automata a run of a VPA on a tree consists in: when opening node n: update the current state, and assign γ Γ to n when closing node n: update the current state according to γ a β b β a α a b b a 0 α β γ β b γ A: VPA on T Σ with Σ = {a,b} and Q = {0,1,2,3,4,5} and Γ = {α,β,γ} 1 (0, ) a (1,α) a (1,α.β) b (4, α.β.β) b (3,α.β) 5 4 β a β b α a b Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
47 VPAs as Tree Automata a run of a VPA on a tree consists in: when opening node n: update the current state, and assign γ Γ to n when closing node n: update the current state according to γ a β b β a α a b b a 0 α β γ β b γ A: VPA on T Σ with Σ = {a,b} and Q = {0,1,2,3,4,5} and Γ = {α,β,γ} 1 (0, ) a (1,α) a (1,α.β) b (4, α.β.β) b (3,α.β) a (2,α) 5 4 β a β b α a b Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
48 VPAs as Tree Automata a run of a VPA on a tree consists in: when opening node n: update the current state, and assign γ Γ to n when closing node n: update the current state according to γ a β b β a α a b b a 0 α β γ β b γ A: VPA on T Σ with Σ = {a,b} and Q = {0,1,2,3,4,5} and Γ = {α,β,γ} 1 (0, ) a (1,α) a (1,α.β) b (4, α.β.β) b (3,α.β) a (2,α) b (4,α.γ) 5 4 β a β b α a 2 4 γ b Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
49 VPAs as Tree Automata a run of a VPA on a tree consists in: when opening node n: update the current state, and assign γ Γ to n when closing node n: update the current state according to γ a β b β a α a b b a 0 α β γ β b γ A: VPA on T Σ with Σ = {a,b} and Q = {0,1,2,3,4,5} and Γ = {α,β,γ} 1 (0, ) a (1,α) a (1,α.β) b (4, α.β.β) b (3,α.β) a (2,α) b (4,α.γ) b (3,α) 5 4 β a β b α a 2 4 Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34 γ b 3
50 VPAs as Tree Automata a run of a VPA on a tree consists in: when opening node n: update the current state, and assign γ Γ to n when closing node n: update the current state according to γ a β b β a α a b b a 0 α β γ β b γ A: VPA on T Σ with Σ = {a,b} and Q = {0,1,2,3,4,5} and Γ = {α,β,γ} 1 (0, ) a (1,α) a (1,α.β) b (4, α.β.β) b (3,α.β) a (2,α) b (4,α.γ) b (3,α) a (5, ) 5 4 β a β b α a 2 4 Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34 5 γ b 3
51 VPAs: related models From now on, we will consider VPAs as tree automata. Other equivalent models (in expressiveness): nested word automata [Alur (2007)]: reformulation of VPAs pushdown forest automata [Neumann and Seidl (1998)]: VPAs on forests (i.e. hedges) streaming tree automata [Gauwin et al. (2008)]: VPAs on trees Translations in [Gauwin (2009)] (and also from DTDs, stepwise tree automata...) Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
52 VPA: determinism determinism of VPAs corresponds to determinism along the XML stream in the sequel we only consider filters defined by deterministic VPAs (dvpas) Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
53 1 Introduction 2 Visibly Pushdown Automata 3 Algorithm 1: Propagation of Safe States 4 Algorithm 2: Reachability of Configurations 5 Conclusion Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
54 E A : a VPA for earliest validation A E A dvpa VPA defines the filter F defines the filter F detects validity Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
55 E A : a VPA for earliest validation A E A dvpa VPA defines the filter F defines the filter F detects validity states of E A are of the form (q,s) where: q QA S QA are safe states for validation, i.e., Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
56 E A : a VPA for earliest validation A E A dvpa VPA defines the filter F defines the filter F detects validity states of E A are of the form (q,s) where: q QA S QA are safe states for validation, i.e., if r(e) = (q,s) where r is a run of E A on t then t L(A) is sure at e iff q S Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
57 E A : a VPA for earliest validation A E A dvpa VPA defines the filter F defines the filter F detects validity states of E A are of the form (q,s) where: q QA S QA are safe states for validation, i.e., if r(e) = (q,s) where r is a run of E A on t then t L(A) is sure at e iff q S remark: for words, all states q are already safe or unsafe... Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
58 E A : a VPA for earliest validation A E A dvpa VPA defines the filter F defines the filter F detects validity states of E A are of the form (q,s) where: q QA S QA are safe states for validation, i.e., if r(e) = (q,s) where r is a run of E A on t then t L(A) is sure at e iff q S remark: for words, all states q are already safe or unsafe......but not for VPAs: it depends on the context (i.e. the stack) Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
59 Earliest Validation with a VPA Safe States via Propagation Rules a a b b a b a Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
60 Earliest Validation with a VPA Safe States via Propagation Rules a S 0 a b b a b a (R1) safe(,root) = F A Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
61 Earliest Validation with a VPA Safe States via Propagation Rules S 1 a S 0 q γ l close A l,γ (q ) a b h q = acc A h (q) b a b a (R1) safe(,root) = F A (R2) safe(,n) = S n nodes(t) l = lab t (n) γ = r A (n) safe(,n) = {q h. close A l,γ acc A h (q) S} Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
62 Earliest Validation with a VPA Safe States via Propagation Rules S 1 a S 0 a q l S 1 b S 1 γ h close A l,γ (q ) q = acc A h (q) b a b a (R1) safe(,root) = F A (R2) (R3) safe(,n) = S n nodes(t) l = lab t (n) γ = r A (n) safe(,n) = {q h. close A l,γ acc A h (q) S} safe(,n) = S n nodes(t) n.i nodes(t) safe(,n.i) = S Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
63 Earliest Validation with a VPA Safe States via Propagation Rules S 1 a S 0 S 2 a S 1 b S 1 b a b a (R1) safe(,root) = F A (R2) (R3) safe(,n) = S n nodes(t) l = lab t (n) γ = r A (n) safe(,n) = {q h. close A l,γ acc A h (q) S} safe(,n) = S n nodes(t) n.i nodes(t) safe(,n.i) = S Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
64 Earliest Validation with a VPA Safe States via Propagation Rules S 1 a S 0 S 2 a S 1 b S 1 b S 2 a b a (R1) safe(,root) = F A (R2) (R3) safe(,n) = S n nodes(t) l = lab t (n) γ = r A (n) safe(,n) = {q h. close A l,γ acc A h (q) S} safe(,n) = S n nodes(t) n.i nodes(t) safe(,n.i) = S Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
65 Earliest Validation with a VPA Safe States via Propagation Rules S 1 a S 0 S 2 a S 1 b S 1 S 3 b S 2 a b a (R1) safe(,root) = F A (R2) (R3) safe(,n) = S n nodes(t) l = lab t (n) γ = r A (n) safe(,n) = {q h. close A l,γ acc A h (q) S} safe(,n) = S n nodes(t) n.i nodes(t) safe(,n.i) = S Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
66 Earliest Validation with a VPA Safe States via Propagation Rules S 1 a S 0 S 2 a S 1 S 4 b S 1 S 3 b S 2 a b a (R1) safe(,root) = F A (R2) (R3) safe(,n) = S n nodes(t) l = lab t (n) γ = r A (n) safe(,n) = {q h. close A l,γ acc A h (q) S} safe(,n) = S n nodes(t) n.i nodes(t) safe(,n.i) = S Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
67 Earliest Validation with a VPA Safe States via Propagation Rules S 1 a S 0 S 2 a S 1 S 4 b S 1 S 3 b S 2 a S 4 b S 4 a S 4 (R1) safe(,root) = F A (R2) (R3) safe(,n) = S n nodes(t) l = lab t (n) γ = r A (n) safe(,n) = {q h. close A l,γ acc A h (q) S} safe(,n) = S n nodes(t) n.i nodes(t) safe(,n.i) = S Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
68 Earliest Validation with a VPA Safe States via Propagation Rules S 1 a S 0 S 2 a S 1 S 4 b S 1 S 3 b S 2 S 5 a S 4 S 6 b S 4 S 7 a S 4 (R1) safe(,root) = F A (R2) (R3) safe(,n) = S n nodes(t) l = lab t (n) γ = r A (n) safe(,n) = {q h. close A l,γ acc A h (q) S} safe(,n) = S n nodes(t) n.i nodes(t) safe(,n.i) = S Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
69 Earliest Validation with a VPA Safe States via Propagation Rules S 1 a S 0 S 2 a S 1 S 4 b S 1 S 3 b S 2 S 5 a S 4 S 6 b S 4 S 7 a S 4 (R1) safe(,root) = F A (R2) (R3) safe(,n) = S n nodes(t) l = lab t (n) γ = r A (n) safe(,n) = {q h. close A l,γ acc A h (q) S} safe(,n) = S n nodes(t) n.i nodes(t) safe(,n.i) = S we can do this with a VPA! Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
70 Computing Runs of E A Problem: E A is in O(2 A ) Efficient implementation A is deterministic E A is deterministic we don t build E A, but its runs on the fly to do so, we compute the safe states in 2 steps precomputation of an accessibility relation (in PTIME) at reception of an event, use this relation to compute the safe states (in PTIME) drawback: computation of safe states cannot be stopped/resumed anywhere Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
71 1 Introduction 2 Visibly Pushdown Automata 3 Algorithm 1: Propagation of Safe States 4 Algorithm 2: Reachability of Configurations 5 Conclusion Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
72 Configurations of a VPA 0 1 α a 5 a β b β a α 0 a b b a α β γ β b 2 γ β a β b γ b 3 configurations of the VPA A: (q,w) with q Q A and w Γ A (0,) a (1,α) a (1,α.β) b (4,α.β.β)... b (4,α.γ) b (3,α) a (5,) Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
73 Configurations of a VPA 0 1 α a 5 a β b β a α 0 a b b a α β γ β b 2 γ β a β b γ b 3 configurations of the VPA A: (q,w) with q Q A and w Γ A (0,) a (1,α) a (1,α.β) b (4,α.β.β)... b (4,α.γ) b (3,α) a (5,) when running on trees: (q,w) with q Q A and w (Γ A Σ) (0,) a (1,(α,a)) a (1,(α,a).(β,a))... b (3,(α,a)) a (5,) Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
74 Regular Sets of Configurations VPA A: : λ a : λ c : λ a : β c : β b : a : 0 q b 1 : β c : λ b : c : β : λ : A set of configurations C of A is regular if there exists an NFA N such that L conf (N) = C. For instance, for C = {(0,),(q b,)} {(1,(β,a).(λ,b) n )} n 0 : NFA N: 0 s 1 (β, a) q b (λ,b) Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
75 Configurations Reachability Given a VPA A, pre A (C) = {c c C. c A c } Regularity Preservation pre A preserves regularity, i.e.: C regular pre (C) regular Computation of pre (C) An NFA recognizing pre (C) can be computed in PTIME from an NFA recognizing C. This also holds for pushdown automata [Bouajjani et al. (1997)]. Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
76 Earliest Validation, rephrased t can be safely validated at event e (wrt. A) Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
77 Earliest Validation, rephrased t can be safely validated at event e (wrt. A) A accepts all possible continuations from current config. c Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
78 Earliest Validation, rephrased t can be safely validated at event e (wrt. A) A accepts all possible continuations from current config. c from c, there is no continuation leading to a failing config. Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
79 Earliest Validation, rephrased t can be safely validated at event e (wrt. A) A accepts all possible continuations from current config. c from c, there is no continuation leading to a failing config. c / pre A (C fail) with C fail = {(q,) q / F A } Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
80 Computing pre (C fail ) Let N fail be an NFA such that L(N fail ) = C fail. From N fail, we build N fail such that L(N fail ) = pre (C fail ). Saturation process, according to 2 inference rules: a : γ (γ,a) q q s A N fail N fail a : γ q q s A (γ,a) N fail N fail infered rule Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
81 Computing N fail from N fail Saturation algorithm 0 s 1 : λ a : λ c : λ a : β c : β b : 0 q b 1 : β c : λ b : c : β a : a : γ (γ,a) q q s A Nfail N fail : λ : q b N fail a : γ q q s A Nfail (γ,a) N fail Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
82 Computing N fail from N fail Saturation algorithm (λ,a) (λ,c) (β,a) (β,c) (,b) 0 (λ,c) (, ) s 1 (, ) : λ a : λ c : λ a : β c : β b : 0 q b 1 : β c : λ b : c : β a : a : γ (γ,a) q q s A Nfail : λ : q b (,b) (,b) (,c) (,a) N fail a : γ q q s A Nfail (γ,a) N fail Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
83 Computing N fail from N fail Saturation algorithm (λ,a) (λ,c) (β,a) (β,c) (,b) 0 (λ,c) (, ) s 1 (, ) : λ a : λ c : λ a : β c : β b : 0 q b 1 : β c : λ b : c : β a : a : γ (γ,a) q q s A Nfail : λ : (,b) (,c) N fail q b (,b) (,a) a : γ q q s A Nfail (γ,a) N fail Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
84 Computing N fail from N fail Saturation algorithm (λ,a) (λ,c) (β,a) (β,c) (,b) (λ,a) (λ,c) 0 q b (λ,c) (, ) (,b) (,c) (,b) (,c) s (β,a) (β,c) (,b) 1 (,a) (,b) (, ) : λ a : λ c : λ a : β c : β b : 0 q b 1 : β c : λ b : c : β a : a : γ (γ,a) q q s A Nfail N fail a : γ q q s A Nfail (γ,a) N fail : λ : Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
85 Computing N fail from N fail Saturation algorithm (λ,a) (λ,c) (β,a) (β,c) (,b) (λ,a) (λ,c) 0 q b (λ,c) (, ) (,b) (,c) (,b) (,c) s (β,a) (β,c) (,b) 1 (,a) (,b) (, ) : λ a : λ c : λ a : β c : β b : 0 q b 1 : β c : λ b : c : β a : a : γ (γ,a) q q s A Nfail N fail a : γ q q s A Nfail (γ,a) N fail : λ : Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
86 Computing N fail from N fail Saturation algorithm (λ,a) (λ,c) (β,a) (β,c) (,b) (λ,a) (λ,c) 0 q b (λ,c) (, ) (,b) (,c) (,b) (,c) s (β,a) (β,c) (,b) (λ, ) 1 (,a) (,b) (,c) (, ) : λ a : λ c : λ a : β c : β b : 0 q b 1 : β c : λ b : c : β a : a : γ (γ,a) q q s A Nfail N fail a : γ q q s A Nfail (γ,a) N fail : λ : Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
87 Example Run and Analysis (β,a) (β,c) (,b) (λ,a) (λ,c) 0 q b (λ,a) (λ,c) (λ,c) (,b) (,c) (, ) (,b) (,c) s N fail (β,a) (β,c) (,b) (λ, ) 1 (,a) (,b) (,c) (, ) : λ a : λ c : λ a : β c : β b : 0 q b 1 c b : β c : λ b a b b : c : β a : : λ : a a Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
88 Example Run and Analysis (β,a) (β,c) (,b) (λ,a) (λ,c) 0 q b (λ,a) (λ,c) (λ,c) (,b) (,c) (, ) (,b) (,c) s N fail (β,a) (β,c) (,b) (λ, ) 1 (,a) (,b) (,c) (, ) : λ a : λ c : λ a : β c : β b : 0 q b 1 : β c : λ 0 λ 0 c 0 0 λ 0 b qb λ 0 b 1 λ 0 a 1 b : c : β λ b qb a : : λ : β 0 a q b λ 0 a 0 Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
89 Remarks synthesis of bad continuations Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
90 Remarks synthesis of bad continuations flexibility: verification can be performed/stopped at any time point (garbage collector) Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
91 Beyond dvpas earliest validation earliest rejection dvpas PTIME PTIME VPAs EXPTIME-complete PTIME dpdas PTIME PTIME PDAs undecidable PTIME Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
92 1 Introduction 2 Visibly Pushdown Automata 3 Algorithm 1: Propagation of Safe States 4 Algorithm 2: Reachability of Configurations 5 Conclusion Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
93 Perspectives experimental comparison between both algorithms work in progress (EvoXs [Gauwin et al. (2009a)]) worst-case complexity is similar find efficient data structures/representations non-deterministic VPAs efficient techniques for earliest validation theoretical perspectives which class is tractable when allowing EXPTIME precomputation? which restrictions on logics (MSO, XPath, etc.) ensure tractability? Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
94 Safety Properties for Querying XML Streams Olivier Gauwin University of Mons joint work with: J. Niehren, S. Tison, M. Benedikt and G. Puppis Workshop on Timed and Infinite Systems Warwick March 30th, 2010 Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
95 References Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
96 [Alur (2007)] Rajeev Alur. Marrying words and trees. In 26th ACM SIGMOD-SIGACT-SIGART Symposium on Principles of Database Systems, pages ACM-Press, [Alur and Madhusudan (2004)] Rajeev Alur and P. Madhusudan. Visibly pushdown languages. In 36th ACM Symposium on Theory of Computing, pages ACM-Press, URL [Alur and Madhusudan (2009)] Rajeev Alur and P. Madhusudan. Adding nesting structure to words. Journal of the ACM, 56(3):1 43, URL [Bouajjani et al. (1997)] Ahmed Bouajjani, Javier Esparza, and Oded Maler. Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
97 Reachability analysis of pushdown automata: Application to model-checking. In 8th International Conference on Concurrency Theory, volume 1243 of Lecture Notes in Computer Science, pages Springer, [Gauwin (2009)] Olivier Gauwin. Streaming Tree Automata and XPath. PhD thesis, Université Lille 1, URL [Gauwin et al. (2008)] Olivier Gauwin, Joachim Niehren, and Yves Roos. Streaming tree automata. Information Processing Letters, 109(1):13 17, December URL [Gauwin et al. (2009a)] Olivier Gauwin, Christophe Munilla, Joachim Niehren, and Benoît Papegay. EvoXs project, 2009a. Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
98 [Gauwin et al. (2009b)] Olivier Gauwin, Joachim Niehren, and Sophie Tison. Earliest query answering for deterministic nested word automata. In 17th International Symposium on Fundamentals of Computer Theory, volume 5699 of Lecture Notes in Computer Science, pages Springer Verlag, 2009b. URL [Kupferman and Vardi (2001)] Orna Kupferman and Moshe Y. Vardi. Model checking of safety properties. Formal Methods in System Design, 19(3): , [Neumann and Seidl (1998)] Andreas Neumann and Helmut Seidl. Locating matches of tree patterns in forests. In 18th Conference on Foundations of Software Technology and Theoretical Computer Science, volume 1530 of Lecture Notes in Computer Science, pages Springer Verlag, Olivier Gauwin (UMons) Safety Properties for Querying XML Streams March 30th, / 34
XML Security Views. Queries, Updates, and Schema. Benoît Groz. University of Lille, Mostrare INRIA. PhD defense, October 2012
XML Security Views Queries, Updates, and Schema Benoît Groz University of Lille, Mostrare INRIA PhD defense, October 2012 Benoît Groz (Mostrare) XML Security Views PhD defense, October 2012 1 / 45 Talk
More informationOn Model Checking for Visibly Pushdown Automata
Japan Institute of Advanced Industrial Science and Technology Research Center for Specification and Verification LATA 2012 On Model Checking for Visibly Pushdown Automata Nguyen Van Tang and Hitoshi Ohsaki
More informationStreamable Fragments of Forward XPath
Streamable Fragments of Forward XPath Olivier Gauwin, Joachim Niehren To cite this version: Olivier Gauwin, Joachim Niehren. Streamable Fragments of Forward XPath. 16th International Conference on Implementation
More informationRegularity Problems for Visibly Pushdown Languages
Regularity Problems for Visibly Pushdown Languages Vince Bárány 1, Christof Löding 1, and Olivier Serre 2 1 RWTH Aachen, Germany 2 LIAFA, Université Paris VII & CNRS, France Abstract. Visibly pushdown
More informationEarliest Query Answering for Deterministic Nested Word Automata
Earliest Query Answering for Deterministic Nested Word Automata Olivier Gauwin, Joachim Niehren, Sophie Tison To cite this version: Olivier Gauwin, Joachim Niehren, Sophie Tison. Earliest Query Answering
More informationProjection for Nested Word Automata Speeds up XPath Evaluation on XML Streams
Projection for Nested Word Automata Speeds up XPath Evaluation on XML Streams Tom Sebastian, Joachim Niehren To cite this version: Tom Sebastian, Joachim Niehren. Projection for Nested Word Automata Speeds
More informationWhat You Must Remember When Processing Data Words
What You Must Remember When Processing Data Words Michael Benedikt, Clemens Ley, and Gabriele Puppis Oxford University Computing Laboratory, Park Rd, Oxford OX13QD UK Abstract. We provide a Myhill-Nerode-like
More informationVisibly Pushdown Automata for Streaming XML
Visibly Pushdown Automata for Streaming XML Viraj Kumar P. Madhusudan Mahesh Viswanathan University of Illinois at Urbana-Champaign Urbana, IL, USA {kumar, madhu, vmahesh}@cs.uiuc.edu ABSTRACT We propose
More informationCPS 220 Theory of Computation Pushdown Automata (PDA)
CPS 220 Theory of Computation Pushdown Automata (PDA) Nondeterministic Finite Automaton with some extra memory Memory is called the stack, accessed in a very restricted way: in a First-In First-Out fashion
More informationReasoning about XML with Temporal Logics and Automata
Reasoning about XML with Temporal Logics and Automata Leonid Libkin 1 and Cristina Sirangelo 1,2 1 University of Edinburgh 2 LSV, ENS Cachan, INRIA Abstract. We show that problems arising in static analysis
More informationComputational Models - Lecture 4
Computational Models - Lecture 4 Regular languages: The Myhill-Nerode Theorem Context-free Grammars Chomsky Normal Form Pumping Lemma for context free languages Non context-free languages: Examples Push
More informationRegular n-ary Queries in Trees and Variable Independence
Regular n-ary Queries in Trees and Variable Independence Emmanuel Filiot Sophie Tison Laboratoire d Informatique Fondamentale de Lille (LIFL) INRIA Lille Nord-Europe, Mostrare Project IFIP TCS, 2008 E.Filiot
More informationLearning Automata for Streaming XML Documents
Rheinisch-Westfälische Technische Hochschule Aachen Lehrstuhl für Logik und Theorie diskreter Systeme Prof. Dr. Dr. h.c. Wolfgang Thomas Diplomarbeit Learning Automata for Streaming XML Documents Daniel
More informationThe State Explosion Problem
The State Explosion Problem Martin Kot August 16, 2003 1 Introduction One from main approaches to checking correctness of a concurrent system are state space methods. They are suitable for automatic analysis
More informationCSE 105 THEORY OF COMPUTATION
CSE 105 THEORY OF COMPUTATION Spring 2017 http://cseweb.ucsd.edu/classes/sp17/cse105-ab/ Review of CFG, CFL, ambiguity What is the language generated by the CFG below: G 1 = ({S,T 1,T 2 }, {0,1,2}, { S
More informationSymbolic Backwards-Reachability Analysis for Higher-Order Pushdown Systems
Symbolic Backwards-Reachability Analysis for Higher-Order Pushdown Systems M. Hague C.-H. L. Ong Oxford University Computing Laboratory Wolfson Building, Parks Road, Oxford, UK, OX1 3QD Abstract. Higher-order
More informationPeter Wood. Department of Computer Science and Information Systems Birkbeck, University of London Automata and Formal Languages
and and Department of Computer Science and Information Systems Birkbeck, University of London ptw@dcs.bbk.ac.uk Outline and Doing and analysing problems/languages computability/solvability/decidability
More informationEfficient Inclusion Checking for Deterministic Tree Automata and DTDs
Efficient Inclusion Checking for Deterministic Tree Automata and DTDs Jérôme Champavère, Rémi Gilleron, Aurélien Lemay, and Joachim Niehren INRIA Futurs and Lille University, LIFL, Mostrare project Abstract.
More informationNote on winning positions on pushdown games with omega-regular winning conditions
Note on winning positions on pushdown games with omega-regular winning conditions Olivier Serre To cite this version: Olivier Serre. Note on winning positions on pushdown games with omega-regular winning
More informationCSE 105 THEORY OF COMPUTATION
CSE 105 THEORY OF COMPUTATION Spring 2016 http://cseweb.ucsd.edu/classes/sp16/cse105-ab/ Today's learning goals Sipser Ch 2 Define push down automata Trace the computation of a push down automaton Design
More informationPushdown Automata (Pre Lecture)
Pushdown Automata (Pre Lecture) Dr. Neil T. Dantam CSCI-561, Colorado School of Mines Fall 2017 Dantam (Mines CSCI-561) Pushdown Automata (Pre Lecture) Fall 2017 1 / 41 Outline Pushdown Automata Pushdown
More informationIntroduction to Tree Logics
1 / 26 Introduction to Tree Logics Pierre Genevès CNRS (slides mostly based on the ones by W. Martens and T. Schwentick) University of Grenoble, 2014 2015 2 / 26 Why Logic? Tree automaton algorithm Logical
More informationCertain Query Answering on Compressed String Patterns: From Streams to Hyperstreams
Certain Query Answering on Compressed String Patterns: From Streams to Hyperstreams Iovka Boneva, Joachim Niehren, Momar Sakho To cite this version: Iovka Boneva, Joachim Niehren, Momar Sakho. Certain
More informationCDS 270 (Fall 09) - Lecture Notes for Assignment 8.
CDS 270 (Fall 09) - Lecture Notes for Assignment 8. ecause this part of the course has no slides or textbook, we will provide lecture supplements that include, hopefully, enough discussion to complete
More informationPushdown Module Checking with Imperfect Information
Pushdown Module Checking with Imperfect Information Benjamin Aminof 1, Aniello Murano 2, and Moshe Y. Vardi 3 1 Hebrew University, Jerusalem 91904, Israel. 2 Università degli Studi di Napoli Federico II,
More informationTheory of Computation
Theory of Computation COMP363/COMP6363 Prerequisites: COMP4 and COMP 6 (Foundations of Computing) Textbook: Introduction to Automata Theory, Languages and Computation John E. Hopcroft, Rajeev Motwani,
More informationSimplification of finite automata
Simplification of finite automata Lorenzo Clemente (University of Warsaw) based on joint work with Richard Mayr (University of Edinburgh) Warsaw, November 2016 Nondeterministic finite automata We consider
More informationAlternating nonzero automata
Alternating nonzero automata Application to the satisfiability of CTL [,, P >0, P =1 ] Hugo Gimbert, joint work with Paulin Fournier LaBRI, Université de Bordeaux ANR Stoch-MC 06/07/2017 Control and verification
More informationA Functional Language for Hyperstreaming XSLT
A Functional Language for Hyperstreaming XSLT Pavel Labath 1, Joachim Niehren 2 1 Commenius University, Bratislava, Slovakia 2 Inria Lille, France May 2013 Motivation some types of tree transformations
More informationContributions to timed systems and transducers
Contributions to timed systems and transducers Habilitation Thesis Mémoire d Habilitation à Diriger des Recherches Pierre-Alain Reynier Laboratoire d informatique fondamentale de Marseille Aix-Marseille
More informationSemi-Automatic Distributed Synthesis
Semi-Automatic Distributed Synthesis Bernd Finkbeiner and Sven Schewe Universität des Saarlandes, 66123 Saarbrücken, Germany {finkbeiner schewe}@cs.uni-sb.de Abstract. We propose a sound and complete compositional
More informationBridging the Gap between Reactive Synthesis and Supervisory Control
Bridging the Gap between Reactive Synthesis and Supervisory Control Stavros Tripakis University of California, Berkeley Joint work with Ruediger Ehlers (Berkeley, Cornell), Stéphane Lafortune (Michigan)
More informationFluXQuery: An Optimizing XQuery Processor
FluXQuery: An Optimizing XQuery Processor for Streaming XML Data Report by Cătălin Hriţcu (catalin.hritcu@gmail.com) International Max Planck Research School for Computer Science 1 Introduction While for
More informationStreaming Property Testing of Visibly Pushdown Languages
Streaming Property Testing of Visibly Pushdown Languages Nathanaël François Frédéric Magniez Michel de Rougemont Olivier Serre SUBLINEAR Workshop - January 7, 2016 1 / 11 François, Magniez, Rougemont and
More informationAutomata-Theoretic LTL Model-Checking
Automata-Theoretic LTL Model-Checking Arie Gurfinkel arie@cmu.edu SEI/CMU Automata-Theoretic LTL Model-Checking p.1 LTL - Linear Time Logic (Pn 77) Determines Patterns on Infinite Traces Atomic Propositions
More informationFoundations of Informatics: a Bridging Course
Foundations of Informatics: a Bridging Course Week 3: Formal Languages and Semantics Thomas Noll Lehrstuhl für Informatik 2 RWTH Aachen University noll@cs.rwth-aachen.de http://www.b-it-center.de/wob/en/view/class211_id948.html
More informationPart I: Definitions and Properties
Turing Machines Part I: Definitions and Properties Finite State Automata Deterministic Automata (DFSA) M = {Q, Σ, δ, q 0, F} -- Σ = Symbols -- Q = States -- q 0 = Initial State -- F = Accepting States
More informationNode Query Preservation for Deterministic Linear Top-Down Tree Transducers
Node Query Preservation for Deterministic Linear Top-Down Tree Transducers Kazuki Miyahara Nara Institute of Science and Technology Nara, Japan kazuki-mi@is.naist.jp Kenji Hashimoto Hiroyuki Seki Nagoya
More informationPushdown Automata: Introduction (2)
Pushdown Automata: Introduction Pushdown automaton (PDA) M = (K, Σ, Γ,, s, A) where K is a set of states Σ is an input alphabet Γ is a set of stack symbols s K is the start state A K is a set of accepting
More informationContext-Free Languages
CS:4330 Theory of Computation Spring 2018 Context-Free Languages Pushdown Automata Haniel Barbosa Readings for this lecture Chapter 2 of [Sipser 1996], 3rd edition. Section 2.2. Finite automaton 1 / 13
More informationCMP 309: Automata Theory, Computability and Formal Languages. Adapted from the work of Andrej Bogdanov
CMP 309: Automata Theory, Computability and Formal Languages Adapted from the work of Andrej Bogdanov Course outline Introduction to Automata Theory Finite Automata Deterministic Finite state automata
More informationLanguages, regular languages, finite automata
Notes on Computer Theory Last updated: January, 2018 Languages, regular languages, finite automata Content largely taken from Richards [1] and Sipser [2] 1 Languages An alphabet is a finite set of characters,
More informationIntroduction to the Theory of Computation. Automata 1VO + 1PS. Lecturer: Dr. Ana Sokolova.
Introduction to the Theory of Computation Automata 1VO + 1PS Lecturer: Dr. Ana Sokolova http://cs.uni-salzburg.at/~anas/ Setup and Dates Lectures and Instructions 23.10. 3.11. 17.11. 24.11. 1.12. 11.12.
More informationNew Complexity Results for Some Linear Counting Problems Using Minimal Solutions to Linear Diophantine Equations
New Complexity Results for Some Linear Counting Problems Using Minimal Solutions to Linear Diophantine Equations (Extended Abstract) Gaoyan Xie, Cheng Li and Zhe Dang School of Electrical Engineering and
More informationReasoning about Strategies: From module checking to strategy logic
Reasoning about Strategies: From module checking to strategy logic based on joint works with Fabio Mogavero, Giuseppe Perelli, Luigi Sauro, and Moshe Y. Vardi Luxembourg September 23, 2013 Reasoning about
More informationComputational Models - Lecture 5 1
Computational Models - Lecture 5 1 Handout Mode Iftach Haitner and Yishay Mansour. Tel Aviv University. April 10/22, 2013 1 Based on frames by Benny Chor, Tel Aviv University, modifying frames by Maurice
More informationAn introduction to forest-regular languages
An introduction to forest-regular languages Mika Raento Basic Research Unit, Helsinki Institute for Information Technology Deartment of Comuter Science, University of Helsinki Mika.Raento@cs.Helsinki.FI
More informationCOM364 Automata Theory Lecture Note 2 - Nondeterminism
COM364 Automata Theory Lecture Note 2 - Nondeterminism Kurtuluş Küllü March 2018 The FA we saw until now were deterministic FA (DFA) in the sense that for each state and input symbol there was exactly
More informationVisibly Linear Dynamic Logic
Visibly Linear Dynamic Logic Joint work with Alexander Weinert (Saarland University) Martin Zimmermann Saarland University September 8th, 2016 Highlights Conference, Brussels, Belgium Martin Zimmermann
More informationVariable Automata over Infinite Alphabets
Variable Automata over Infinite Alphabets Orna Grumberg a, Orna Kupferman b, Sarai Sheinvald b a Department of Computer Science, The Technion, Haifa 32000, Israel b School of Computer Science and Engineering,
More informationA Enforceable Security Policies Revisited
A Enforceable Security Policies Revisited DAVID BASIN, ETH Zurich VINCENT JUGÉ, MINES ParisTech FELIX KLAEDTKE, ETH Zurich EUGEN ZĂLINESCU, ETH Zurich We revisit Schneider s work on policy enforcement
More informationRegular Strategies In Pushdown Reachability Games
Regular Strategies In Pushdown Reachability Games A. Carayol and M. Hague LIGM, Université Paris-Est & CNRS and Royal Holloway University of London Abstract. We show that positional winning strategies
More informationOn the Succinctness of Nondeterminizm
On the Succinctness of Nondeterminizm Benjamin Aminof and Orna Kupferman Hebrew University, School of Engineering and Computer Science, Jerusalem 91904, Israel Email: {benj,orna}@cs.huji.ac.il Abstract.
More informationPushdown Games with Unboundedness and Regular Conditions
Pushdown Games with Unboundedness and Regular Conditions Alexis-Julien Bouquet 1, Oliver Serre 2, and Igor Walukiewicz 1 1 LaBRI, Université Bordeaux I, 351, cours de la Libération, 33405 Talence Cedex,
More informationEECS 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization
EECS 144/244: Fundamental Algorithms for System Modeling, Analysis, and Optimization Discrete Systems Lecture: Automata, State machines, Circuits Stavros Tripakis University of California, Berkeley Stavros
More informationAn Alternative Construction in Symbolic Reachability Analysis of Second Order Pushdown Systems
An Alternative Construction in Symbolic Reachability Analysis of Second Order Pushdown Systems Anil Seth CSE Department, I.I.T. Kanpur, Kanpur 208016, INDIA. seth@cse.iitk.ac.in Abstract. Recently, it
More informationModels for Efficient Timed Verification
Models for Efficient Timed Verification François Laroussinie LSV / ENS de Cachan CNRS UMR 8643 Monterey Workshop - Composition of embedded systems Model checking System Properties Formalizing step? ϕ Model
More informationQuery Reasoning on Data Trees with Counting
Query Reasoning on Data Trees with Counting Everardo Bárcenas 1,2, Edgard Benítez-Guerrero 2, and Jesús Lavalle 3,4 1 CONACYT 2 Universidad Veracruzana 3 Benemérita Universidad Autónoma de Puebla 4 Instituto
More informationClasses and conversions
Classes and conversions Regular expressions Syntax: r = ε a r r r + r r Semantics: The language L r of a regular expression r is inductively defined as follows: L =, L ε = {ε}, L a = a L r r = L r L r
More informationFrom Monadic Second-Order Definable String Transformations to Transducers
From Monadic Second-Order Definable String Transformations to Transducers Rajeev Alur 1 Antoine Durand-Gasselin 2 Ashutosh Trivedi 3 1 University of Pennsylvania 2 LIAFA, Université Paris Diderot 3 Indian
More informationPushdown automata. Twan van Laarhoven. Institute for Computing and Information Sciences Intelligent Systems Radboud University Nijmegen
Pushdown automata Twan van Laarhoven Institute for Computing and Information Sciences Intelligent Systems Version: fall 2014 T. van Laarhoven Version: fall 2014 Formal Languages, Grammars and Automata
More informationFORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY
5-453 FORMAL LANGUAGES, AUTOMATA AND COMPUTABILITY NON-DETERMINISM and REGULAR OPERATIONS THURSDAY JAN 6 UNION THEOREM The union of two regular languages is also a regular language Regular Languages Are
More informationFinal exam study sheet for CS3719 Turing machines and decidability.
Final exam study sheet for CS3719 Turing machines and decidability. A Turing machine is a finite automaton with an infinite memory (tape). Formally, a Turing machine is a 6-tuple M = (Q, Σ, Γ, δ, q 0,
More informationComputational Models - Lecture 1 1
Computational Models - Lecture 1 1 Handout Mode Ronitt Rubinfeld and Iftach Haitner. Tel Aviv University. February 29/ March 02, 2016 1 Based on frames by Benny Chor, Tel Aviv University, modifying frames
More informationModel Checking Procedural Programs
Model Checking Procedural Programs Rajeev Alur, Ahmed Bouajjani, and Javier Esparza Abstract We consider the model-checking problem for sequential programs with procedure calls. We first present basic
More informationControlling probabilistic systems under partial observation an automata and verification perspective
Controlling probabilistic systems under partial observation an automata and verification perspective Nathalie Bertrand, Inria Rennes, France Uncertainty in Computation Workshop October 4th 2016, Simons
More informationIntroduction to the Theory of Computation. Automata 1VO + 1PS. Lecturer: Dr. Ana Sokolova.
Introduction to the Theory of Computation Automata 1VO + 1PS Lecturer: Dr. Ana Sokolova http://cs.uni-salzburg.at/~anas/ Setup and Dates Lectures Tuesday 10:45 pm - 12:15 pm Instructions Tuesday 12:30
More informationCS 154, Lecture 2: Finite Automata, Closure Properties Nondeterminism,
CS 54, Lecture 2: Finite Automata, Closure Properties Nondeterminism, Why so Many Models? Streaming Algorithms 0 42 Deterministic Finite Automata Anatomy of Deterministic Finite Automata transition: for
More informationCertain Query Answering on Compressed String Patterns: From Streams to Hyperstreams
Certain Query Answering on Compressed String Patterns: From Streams to Hyperstreams Iovka Boneva, Joachim Niehren, Momar Sakho To cite this version: Iovka Boneva, Joachim Niehren, Momar Sakho. Certain
More informationJournal of Applied Logic
Journal of Applied Logic 8 (2010) 210 232 Contents lists available at ScienceDirect Journal of Applied Logic www.elsevier.com/locate/jal Reasoning about XML with temporal logics and automata Leonid Libkin
More informationTree Automata and Rewriting
and Rewriting Ralf Treinen Université Paris Diderot UFR Informatique Laboratoire Preuves, Programmes et Systèmes treinen@pps.jussieu.fr July 23, 2010 What are? Definition Tree Automaton A tree automaton
More informationDeciding Twig-definability of Node Selecting Tree Automata
Theory of Computing Systems manuscript No. (will be inserted by the editor) Deciding Twig-definability of Node Selecting Tree Automata Timos Antonopoulos Dag Hovland Wim Martens Frank Neven the date of
More informationCounting in trees. Helmut Seidl 1 Thomas Schwentick 2 Anca Muscholl 3. 1 Introduction
Counting in trees Helmut Seidl 1 Thomas Schwentick 2 Anca Muscholl 3 1 Institut für Informatik, I2 TU München Germany 2 Lehrstuhl Informatik I Universität Dortmund Germany 3 LaBRI Université Bordeaux France
More informationContainment for XPath Fragments under DTD Constraints
Containment for XPath Fragments under DTD Constraints Peter Wood School of Computer Science and Information Systems Birkbeck College University of London United Kingdom email: ptw@dcs.bbk.ac.uk 1 Outline
More informationComputational Models #1
Computational Models #1 Handout Mode Nachum Dershowitz & Yishay Mansour March 13-15, 2017 Nachum Dershowitz & Yishay Mansour Computational Models #1 March 13-15, 2017 1 / 41 Lecture Outline I Motivation
More informationEinführung in die Computerlinguistik
Einführung in die Computerlinguistik Context-Free Grammars (CFG) Laura Kallmeyer Heinrich-Heine-Universität Düsseldorf Summer 2016 1 / 22 CFG (1) Example: Grammar G telescope : Productions: S NP VP NP
More informationThe Minimal Cost Reachability Problem in Priced Timed Pushdown Systems
The Minimal Cost Reachability Problem in Priced Timed Pushdown Systems Parosh Aziz Abdulla, Mohamed Faouzi Atig, and Jari Stenman Uppsala University, Sweden Abstract. This paper introduces the model of
More informationLecture 17: Language Recognition
Lecture 17: Language Recognition Finite State Automata Deterministic and Non-Deterministic Finite Automata Regular Expressions Push-Down Automata Turing Machines Modeling Computation When attempting to
More informationEfficient Reasoning about Data Trees via Integer Linear Programming
Efficient Reasoning about Data Trees via Integer Linear Programming Claire David Université Paris-Est Claire.David@univ-mlv.fr Leonid Libkin University of Edinburgh libkin@inf.ed.ac.uk Tony Tan University
More informationC. AISWARYA, PAUL GASTIN, PRAKASH SAIVASAN ORDER-2 NESTED WORDS
Chennai Mathematical Institute cm i C. AISWARYA, PAUL GASTIN, PRAKASH SAIVASAN ORDER-2 NESTED WORDS PROLOGUE HIGHER ORDER PUSHDOWN SYSTEMS Pushdown (stack) pop, push(a),?top(a) ababa babb PROLOGUE HIGHER
More informationDescriptional complexity of unambiguous input-driven pushdown automata
Descriptional complexity of unambiguous input-driven pushdown automata Alexander Okhotin a,1, Kai Salomaa b,2 a Department of Mathematics, University of Turku, 20014 Turku, Finland b School of Computing,
More informationThe Safety Simple Subset
The Safety Simple Subset Shoham Ben-David 1 Dana Fisman 2,3 Sitvanit Ruah 3 1 University of Waterloo 2 Weizmann Institute of Science 3 IBM Haifa Research Lab Abstract. Regular-LTL (RLTL), extends LTL with
More informationSubsumption of concepts in FL 0 for (cyclic) terminologies with respect to descriptive semantics is PSPACE-complete.
Subsumption of concepts in FL 0 for (cyclic) terminologies with respect to descriptive semantics is PSPACE-complete. Yevgeny Kazakov and Hans de Nivelle MPI für Informatik, Saarbrücken, Germany E-mail:
More informationRegular tree language recognition with static information
Regular tree language recognition with static information Alain Frisch Département d Informatique École Normale Supérieure, Paris, France Alain.Frisch@ens.fr Abstract This paper presents our compilation
More informationIntroduction to Theory of Computing
CSCI 2670, Fall 2012 Introduction to Theory of Computing Department of Computer Science University of Georgia Athens, GA 30602 Instructor: Liming Cai www.cs.uga.edu/ cai 0 Lecture Note 3 Context-Free Languages
More informationHubert Comon-Lundh Florent Jacquemard Nicolas Perrin. Tree Automata with Memory, Visibility and Structural Constraints. Research Report LSV-07-01
Hubert Comon-Lundh Florent Jacquemard Nicolas Perrin Tree Automata with Memory, Visibility and Structural Constraints Research Report LSV-07-01 January 2007 Tree Automata with Memory, Visibility and Structural
More informationREGULAR TREE LANGUAGE RECOGNITION WITH STATIC INFORMATION
REGULAR TREE LANGUAGE RECOGNITION WITH STATIC INFORMATION Alain Frisch École Normale Supérieure Alain.Frisch@ens.fr Abstract This paper presents our compilation strategy to produce efficient code for pattern
More informationUniversità degli studi di Napoli Federico II
Università degli studi di Napoli Federico II 2-Visibly Pushdown Automata Dario Carotenuto, Aniello Murano, Adriano Peron Preprint n. 53 (2006) pubblicazioni del Dipartimento di Matematica e Applicazioni
More informationPushdown Automata. Chapter 12
Pushdown Automata Chapter 12 Recognizing Context-Free Languages We need a device similar to an FSM except that it needs more power. The insight: Precisely what it needs is a stack, which gives it an unlimited
More informationDeciding Twig-definability of Node Selecting Tree Automata
Deciding Twig-definability of Node Selecting Tree Automata Timos Antonopoulos Hasselt University and Transnational University of Limburg timos.antonopoulos@uhasselt.be Wim Martens Institut für Informatik
More informationOn the Regularity of Binoid Languages:
On the Regularity of Binoid Languages: A Comparative Approach Zoltán L. Németh University of Szeged, Inst. of Informatics P.O.B. 652, 6701 Szeged, Hungary zlnemeth@inf.u-szeged.hu Abstract. A binoid is
More informationSynthesis of Winning Strategies for Interaction under Partial Information
Synthesis of Winning Strategies for Interaction under Partial Information Oberseminar Informatik Bernd Puchala RWTH Aachen University June 10th, 2013 1 Introduction Interaction Strategy Synthesis 2 Main
More informationFig. 2 Tree structure of r the best of our knowledge, there is no study on detecting XSLT rules affected by a schema update. On the other hand, there
An Algorithm for Detecting XSLT Rules Affected by Schema Updates Yang Wu 1,a) Nobutaka Suzuki 2,b) Abstract: Schemas of XML documents are continuously updated according to changes in the real world. Moreover,
More informationSYLLABUS. Introduction to Finite Automata, Central Concepts of Automata Theory. CHAPTER - 3 : REGULAR EXPRESSIONS AND LANGUAGES
Contents i SYLLABUS UNIT - I CHAPTER - 1 : AUT UTOMA OMATA Introduction to Finite Automata, Central Concepts of Automata Theory. CHAPTER - 2 : FINITE AUT UTOMA OMATA An Informal Picture of Finite Automata,
More informationSuccinctness of Pattern-based Schema Languages for XML
Succinctness of Pattern-based Schema Languages for XML Wouter Gelade and Frank Neven Hasselt University and Transnational University of Limburg School for Information Technology {firstname.lastname}@uhasselt.be
More informationPushdown Automata (2015/11/23)
Chapter 6 Pushdown Automata (2015/11/23) Sagrada Familia, Barcelona, Spain Outline 6.0 Introduction 6.1 Definition of PDA 6.2 The Language of a PDA 6.3 Euivalence of PDA s and CFG s 6.4 Deterministic PDA
More informationOutline. CS21 Decidability and Tractability. Machine view of FA. Machine view of FA. Machine view of FA. Machine view of FA.
Outline CS21 Decidability and Tractability Lecture 5 January 16, 219 and Languages equivalence of NPDAs and CFGs non context-free languages January 16, 219 CS21 Lecture 5 1 January 16, 219 CS21 Lecture
More informationAutomata Theory (2A) Young Won Lim 5/31/18
Automata Theory (2A) Copyright (c) 2018 Young W. Lim. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later
More informationFurther discussion of Turing machines
Further discussion of Turing machines In this lecture we will discuss various aspects of decidable and Turing-recognizable languages that were not mentioned in previous lectures. In particular, we will
More informationLogics and automata over in nite alphabets
Logics and automata over in nite alphabets Anca Muscholl LIAFA, Univ. Paris 7 & CNRS Joint work with: Miko!aj Bojańczyk (Warsaw, Paris), Claire David (Paris), Thomas Schwentick (Dortmund) and Luc Segou
More information