The Emptiness Problem for Valence Automata or: Another Decidable Extension of Petri Nets Georg Zetzsche Technische Universität Kaiserslautern Reachability Problems 2015 Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 1 / 19
Example (Pushdown automaton) a, ε, A a, A, ε q 0 ε, ε, ε q 1 b, ε, B b, B, ε Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 2 / 19
Example (Pushdown automaton) a, ε, A a, A, ε q 0 ε, ε, ε q 1 L tww rev w P ta, bu u b, ε, B b, B, ε Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 2 / 19
Example (Pushdown automaton) a, ε, A a, A, ε q 0 ε, ε, ε q 1 L tww rev w P ta, bu u b, ε, B b, B, ε Example (Blind counter automaton) a, 1, 0 b, 1, 1 c, 0, 1 ε, 0, 0 ε, 0, 0 q 0 q 1 q 2 Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 2 / 19
Example (Pushdown automaton) a, ε, A a, A, ε q 0 ε, ε, ε q 1 L tww rev w P ta, bu u b, ε, B b, B, ε Example (Blind counter automaton) a, 1, 0 b, 1, 1 c, 0, 1 ε, 0, 0 ε, 0, 0 q 0 q 1 q 2 L ta n b n c n n ě 0u Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 2 / 19
Example (Partially blind counter automaton) a, 1 q 0 ε, 0 ε, 1 q 1 b, 1 Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 3 / 19
Example (Partially blind counter automaton) a, 1 q 0 ε, 0 ε, 1 q 1 b, 1 L tw P ta, bu p a ě p b for each prefix p of wu Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 3 / 19
Storage mechanisms Automata models that extend finite automata by some storage mechanism: Pushdown automata Blind counter automata Partially blind counter automata Turing machines Goal: General insights Structure of storage ô computational properties Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 4 / 19
Storage mechanisms Automata models that extend finite automata by some storage mechanism: Pushdown automata Blind counter automata Partially blind counter automata Turing machines Goal: General insights Structure of storage ô computational properties Framework Abstract model with storage as parameter Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 4 / 19
Valence automata Definition A monoid is a set M with an associative binary operation : M ˆ M Ñ M and a neutral element 1 P M (a1 1a a for any a P M). Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 5 / 19
Valence automata Definition A monoid is a set M with an associative binary operation : M ˆ M Ñ M and a neutral element 1 P M (a1 1a a for any a P M). Common generalization: Valence Automata Valence automaton over M: Finite automaton with edges p w m ÝÝÑq, w P Σ, m P M. Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 5 / 19
Valence automata Definition A monoid is a set M with an associative binary operation : M ˆ M Ñ M and a neutral element 1 P M (a1 1a a for any a P M). Common generalization: Valence Automata Valence automaton over M: Finite automaton with edges p w m ÝÝÑq, w P Σ, m P M. w 1 m 1 w 2 m 2 w n m n Run q 0ÝÝÝÑq1 ÝÝÝÑ ÝÝÝÑq n is accepting for w 1 w n if q 0 is the initial state, q n is a final state, and Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 5 / 19
Valence automata Definition A monoid is a set M with an associative binary operation : M ˆ M Ñ M and a neutral element 1 P M (a1 1a a for any a P M). Common generalization: Valence Automata Valence automaton over M: Finite automaton with edges p w m ÝÝÑq, w P Σ, m P M. w 1 m 1 w 2 m 2 w n m n Run q 0ÝÝÝÑq1 ÝÝÝÑ ÝÝÝÑq n is accepting for w 1 w n if q 0 is the initial state, q n is a final state, and m 1 m n 1. Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 5 / 19
Valence automata Definition A monoid is a set M with an associative binary operation : M ˆ M Ñ M and a neutral element 1 P M (a1 1a a for any a P M). Common generalization: Valence Automata Valence automaton over M: Finite automaton with edges p w m ÝÝÑq, w P Σ, m P M. w 1 m 1 w 2 m 2 w n m n Run q 0ÝÝÝÑq1 ÝÝÝÑ ÝÝÝÑq n is accepting for w 1 w n if q 0 is the initial state, q n is a final state, and m 1 m n 1. Language class VApMq languages accepted by valence automata over M. Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 5 / 19
Classical results can now be generalized: Questions For which storage mechanisms can we decide emptiness? Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 6 / 19
Classical results can now be generalized: Questions For which storage mechanisms can we decide emptiness? For which do we have a particular closure property? Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 6 / 19
Classical results can now be generalized: Questions For which storage mechanisms can we decide emptiness? For which do we have a particular closure property? How is the complexity of decision problems affected? Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 6 / 19
Classical results can now be generalized: Questions For which storage mechanisms can we decide emptiness? For which do we have a particular closure property? How is the complexity of decision problems affected? For which can we compute abstractions? Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 6 / 19
Monoids defined by graphs By graphs, we mean undirected graphs with loops allowed. Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 7 / 19
Monoids defined by graphs By graphs, we mean undirected graphs with loops allowed. Let Γ pv, Eq be a graph. Let X Γ ta v, ā v v P V u Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 7 / 19
Monoids defined by graphs By graphs, we mean undirected graphs with loops allowed. Let Γ pv, Eq be a graph. Let X Γ ta v, ā v v P V u R Γ ta v ā v ε v P V u Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 7 / 19
Monoids defined by graphs By graphs, we mean undirected graphs with loops allowed. Let Γ pv, Eq be a graph. Let X Γ ta v, ā v v P V u R Γ ta v ā v ε v P V u Y txy yx x P ta u, ā u u, y P ta v, ā v u, tu, vu P Eu Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 7 / 19
Monoids defined by graphs By graphs, we mean undirected graphs with loops allowed. Let Γ pv, Eq be a graph. Let X Γ ta v, ā v v P V u R Γ ta v ā v ε v P V u Y txy yx x P ta u, ā u u, y P ta v, ā v u, tu, vu P Eu MΓ X Γ {R Γ Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 7 / 19
Monoids defined by graphs By graphs, we mean undirected graphs with loops allowed. Let Γ pv, Eq be a graph. Let Intuition X Γ ta v, ā v v P V u R Γ ta v ā v ε v P V u Y txy yx x P ta u, ā u u, y P ta v, ā v u, tu, vu P Eu MΓ X Γ {R Γ B: bicyclic monoid, B ta, āu {taā εu. Z: group of integers For each unlooped vertex, we have a copy of B For each looped vertex, we have a copy of Z MΓ consists of sequences of such elements An edge between vertices means that elements can commute Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 7 / 19
Examples Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 8 / 19
Examples Z 3 Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 8 / 19
Examples Z 3 Blind counter Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 8 / 19
Examples Z 3 Blind counter Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 8 / 19
Examples Z 3 B B B Blind counter Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 8 / 19
Examples Z 3 B B B Blind counter Pushdown Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 8 / 19
Examples Z 3 B B B Blind counter Pushdown Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 8 / 19
Examples Z 3 B B B Blind counter Pushdown B 3 Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 8 / 19
Examples Z 3 B B B Blind counter Pushdown B 3 Partially blind counter Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 8 / 19
Examples Z 3 B B B Blind counter Pushdown B 3 Partially blind counter Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 8 / 19
Examples Z 3 B B B Blind counter Pushdown B 3 Partially blind counter Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 8 / 19
Examples Z 3 B B B Blind counter Pushdown B 3 pb Bq ˆ pb Bq Partially blind counter Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 8 / 19
Examples Z 3 B B B Blind counter Pushdown B 3 pb Bq ˆ pb Bq Partially blind counter Infinite tape (TM) Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 8 / 19
Examples Z 3 B B B Blind counter Pushdown B 3 pb Bq ˆ pb Bq Partially blind counter Infinite tape (TM) Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 8 / 19
Examples Z 3 B B B Blind counter Pushdown B 3 pb Bq ˆ pb Bq Partially blind counter Infinite tape (TM) Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 8 / 19
Examples Z 3 B B B Blind counter Pushdown B 3 pb Bq ˆ pb Bq Partially blind counter Infinite tape (TM) Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 8 / 19
Examples Z 3 B B B Blind counter Pushdown pb Bq ˆ B ˆ B B 3 pb Bq ˆ pb Bq Partially blind counter Infinite tape (TM) Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 8 / 19
Examples Z 3 B B B Blind counter Pushdown pb Bq ˆ B ˆ B Pushdown + partially blind counters B 3 pb Bq ˆ pb Bq Partially blind counter Infinite tape (TM) Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 8 / 19
The emptiness problem The emptiness problem Given a valence automaton over M, does it accept any word? Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 9 / 19
The emptiness problem The emptiness problem Given a valence automaton over M, does it accept any word? Important problem Type of reachability problem Necessary for many other decision problems. Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 9 / 19
The emptiness problem The emptiness problem Given a valence automaton over M, does it accept any word? Important problem Type of reachability problem Necessary for many other decision problems. Question For which storage mechanisms is the emptiness problem decidable? Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 9 / 19
The emptiness problem The emptiness problem Given a valence automaton over M, does it accept any word? Important problem Type of reachability problem Necessary for many other decision problems. Question For which storage mechanisms is the emptiness problem decidable? Obstacle Pushdown + partially blind counters Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 9 / 19
The emptiness problem The emptiness problem Given a valence automaton over M, does it accept any word? Important problem Type of reachability problem Necessary for many other decision problems. Question For which storage mechanisms is the emptiness problem decidable? Obstacle Pushdown + partially blind counters Decidability a long-standing open problem Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 9 / 19
Simplest graphs for pushdown + counters One can show: These can simulate pushdown + one counter Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 10 / 19
Simplest graphs for pushdown + counters One can show: These can simulate pushdown + one counter We call these PPN-graphs (for pushdown Petri net ). Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 10 / 19
Simplest graphs for pushdown + counters One can show: These can simulate pushdown + one counter We call these PPN-graphs (for pushdown Petri net ). Without them as induced subgraphs: PPN-free. Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 10 / 19
Simplest graphs for pushdown + counters One can show: These can simulate pushdown + one counter We call these PPN-graphs (for pushdown Petri net ). Without them as induced subgraphs: PPN-free. Theorem Let Γ be PPN-free. Then the following are equivalent: Emptiness is decidable for valence automata over MΓ. Γ, minus loops, is a transitive forest. Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 10 / 19
Simplest graphs for pushdown + counters One can show: These can simulate pushdown + one counter We call these PPN-graphs (for pushdown Petri net ). Without them as induced subgraphs: PPN-free. Theorem Let Γ be PPN-free. Then the following are equivalent: Emptiness is decidable for valence automata over MΓ. Γ, minus loops, is a transitive forest. Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 10 / 19
Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 11 / 19
Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 11 / 19
Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 11 / 19
Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 11 / 19
Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 11 / 19
Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 11 / 19
Intuition Decidable mechanisms, SC : Start with partially blind counters Build stacks Add blind counters Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 11 / 19
Intuition Decidable mechanisms, SC : Start with partially blind counters Build stacks Add blind counters ñ Reduction to priority counter automata of Reinhardt Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 11 / 19
Intuition Decidable mechanisms, SC : Start with partially blind counters Build stacks Add blind counters ñ Reduction to priority counter automata of Reinhardt Left open, SC`: Start with partially blind counters Build stacks Add partially blind counters Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 11 / 19
Intuition Decidable mechanisms, SC : Start with partially blind counters Build stacks Add blind counters ñ Reduction to priority counter automata of Reinhardt Left open, SC`: Start with partially blind counters Build stacks Add partially blind counters ñ Generalize pushdown Petri nets and priority counter automata ñ New open problem Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 11 / 19
Petri nets Priority counter Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 12 / 19
PPN Petri nets Priority counter Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 13 / 19
Poof: Undecidability Theorem (Wolk 1965) An undirected graph is a transitive forest iff it avoids as induced subgraphs: C 4 : P 4 : ñ Show Turing completeness for C 4 and P 4 Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 14 / 19
Poof: Decidability Decidability Combinatorial argument shows: equivalent to SC. Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 15 / 19
Poof: Decidability Decidability Combinatorial argument shows: equivalent to SC. Definition of SC Smallest class with B n P SC if M P SC, then B M, Z ˆ M P SC Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 15 / 19
Poof: Decidability Decidability Combinatorial argument shows: equivalent to SC. Definition of SC Smallest class with B n P SC if M P SC, then B M, Z ˆ M P SC Reduction ΨpVApMqq Ď Prio for every M P SC. Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 15 / 19
Priority counter machines Automaton with n counters Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 16 / 19
Priority counter machines Automaton with n counters counters stay ě 0 Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 16 / 19
Priority counter machines Automaton with n counters counters stay ě 0 instructions: inc i : increment counter i dec i : decrement counter i zeroi : test all the counters 1,..., i for zero Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 16 / 19
Priority counter machines Automaton with n counters counters stay ě 0 instructions: inc i : increment counter i dec i : decrement counter i zeroi : test all the counters 1,..., i for zero Language class: Prio Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 16 / 19
Priority counter machines Automaton with n counters counters stay ě 0 instructions: inc i : increment counter i dec i : decrement counter i zeroi : test all the counters 1,..., i for zero Language class: Prio Theorem (Reinhardt) Reachability is decidable for priority counter machines. Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 16 / 19
Definition of SC Smallest class with B n P SC if M P SC, then B M, Z ˆ M P SC Observations VApB n q Ď Prio, hence ΨpVApB n qq Ď ΨpPrioq. Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 17 / 19
Definition of SC Smallest class with B n P SC if M P SC, then B M, Z ˆ M P SC Observations VApB n q Ď Prio, hence ΨpVApB n qq Ď ΨpPrioq. If ΨpVApMqq Ď Prio, then ΨpVApM ˆ Zqq Ď ΨpPrioq. Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 17 / 19
Definition of SC Smallest class with B n P SC if M P SC, then B M, Z ˆ M P SC Observations VApB n q Ď Prio, hence ΨpVApB n qq Ď ΨpPrioq. If ΨpVApMqq Ď Prio, then ΨpVApM ˆ Zqq Ď ΨpPrioq. What about VApB Mq? Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 17 / 19
Expressiveness Algebraic extensions Let C be a language class. A C-grammar G consists of Nonterminals N, terminals T, start symbol S P N Productions A Ñ L with L Ď pn Y T q, L P C Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 18 / 19
Expressiveness Algebraic extensions Let C be a language class. A C-grammar G consists of Nonterminals N, terminals T, start symbol S P N Productions A Ñ L with L Ď pn Y T q, L P C uav ñ uwv whenever w P L. Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 18 / 19
Expressiveness Algebraic extensions Let C be a language class. A C-grammar G consists of Nonterminals N, terminals T, start symbol S P N Productions A Ñ L with L Ď pn Y T q, L P C uav ñ uwv whenever w P L. Generated language: tw P T S ñ wu. Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 18 / 19
Expressiveness Algebraic extensions Let C be a language class. A C-grammar G consists of Nonterminals N, terminals T, start symbol S P N Productions A Ñ L with L Ď pn Y T q, L P C uav ñ uwv whenever w P L. Generated language: tw P T S ñ wu. Such languages are algebraic over C, class denoted AlgpCq. Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 18 / 19
Expressiveness Algebraic extensions Let C be a language class. A C-grammar G consists of Nonterminals N, terminals T, start symbol S P N Productions A Ñ L with L Ď pn Y T q, L P C uav ñ uwv whenever w P L. Generated language: tw P T S ñ wu. Such languages are algebraic over C, class denoted AlgpCq. Theorem (Z. 2015) VApB B Mq AlgpVApMqq. Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 18 / 19
Expressiveness Algebraic extensions Let C be a language class. A C-grammar G consists of Nonterminals N, terminals T, start symbol S P N Productions A Ñ L with L Ď pn Y T q, L P C uav ñ uwv whenever w P L. Generated language: tw P T S ñ wu. Such languages are algebraic over C, class denoted AlgpCq. Theorem (Z. 2015) VApB B Mq AlgpVApMqq. Theorem (van Leeuwen 1974) If C is closed under rational transductions and Kleene star, then ΨpAlgpCqq Ď ΨpCq. Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 18 / 19
Conclusion PPN Petri nets Priority counter Contribution Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 19 / 19
Conclusion PPN Petri nets Priority counter Contribution In absence of PPN: Characterization of decidable emptiness problem Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 19 / 19
Conclusion PPN Petri nets Priority counter Contribution In absence of PPN: Characterization of decidable emptiness problem New decidable model (SC ) Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 19 / 19
Conclusion PPN Petri nets Priority counter Contribution In absence of PPN: Characterization of decidable emptiness problem New decidable model (SC ) New powerful model that might be decidable (SC`) Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 19 / 19
Conclusion PPN Petri nets Priority counter Contribution In absence of PPN: Characterization of decidable emptiness problem New decidable model (SC ) New powerful model that might be decidable (SC`) Georg Zetzsche (TU KL) Emptiness for Valence Automata RP 2015 19 / 19