Computation history: Difference between revisions

From formulasearchengine
Jump to navigation Jump to search
en>Addbot
m Bot: Migrating 1 interwiki links, now provided by Wikidata on d:q5157272
en>Gaff
m Reverted edits by 207.165.237.94 to last version by Addbot
 
Line 1: Line 1:
[[Image:Example Parity Game Solved.png|400px|right|thumb|A parity game. Circular nodes belong to player 0, rectangular nodes belong to player 1. On the left side is the winning region of player 0, on the right side is the winning region of player 1.]]
Hi there, I am Alyson Pomerleau and I think it sounds quite good when you say it. I've always cherished living in Alaska. One of the things she loves most is canoeing and she's been performing it for fairly a while. For many years she's been operating as a travel agent.<br><br>my web page ... [http://165.132.39.93/xe/visitors/372912 psychic love readings]
 
A '''parity game''' is played on a colored [[directed graph]], where each node has been colored by a priority &ndash; one of (usually) finitely many [[natural numbers]]. 
Two players, 0 and 1, move a (single, shared) token along the edges of the graph. The owner of the node that the token falls on, selects the successor node, resulting in a (possibly infinite) [[Path (graph theory)|path]], called the play.
 
The winner of a finite play is the player whose opponent is unable to move. The winner of an infinite play is determined by the priorities appearing in the play. Typically, player 0 wins an infinite play if the largest priority that occurs infinitely often in the play is even. Player 1 wins otherwise. This explains the word "parity" in the title.
 
Parity games lie in the third level of the [[borel hierarchy]], and are consequently [[Determinacy|determined]].<ref>[[Donald A. Martin|D. A. Martin]]: Borel determinacy, The Annals of Mathematics, Vol 102 No. 2 pp. 363&ndash;371 (1975)</ref>
 
Games related to parity games were implicitly used in [[Michael O. Rabin|Rabin]]'s
proof of [[decidability]] of second order theory of n successors, where [[determinacy]] of such games was
proven.<ref>{{cite journal|last = Rabin|first = MO|title= Decidability of second order theories and automata on infinite trees|journal = Trans. AMS|year=1969|pages=1–35|volume=141|doi= 10.2307/1995086|publisher = American Mathematical Society|jstor = 1995086}}</ref> The [[Knaster&ndash;Tarski theorem]] leads to a relatively simple proof of determinacy of parity games.<ref name=EJ>E. A. Emerson and C. S. Jutla: Tree Automata, Mu-Calculus and Determinacy, IEEE Proc. Foundations of Computer Science, pp 368&ndash;377 (1991), ISBN 0-8186-2445-0</ref>
 
Moreover, parity games are history-free determined.<ref name=EJ/><ref>A. Mostowski: Games with forbidden positions, University of Gdansk, Tech. Report 78 (1991)</ref><ref name=ZL>{{cite journal|last=Zielonka|first=W|title=Infinite Games on Finitely Coloured Graphs with Applications to Automata on Infinite Trees|year=1998|journal=Theor. Comput. Sci.|volume=200|issue=1&ndash;2|pages=135&ndash;183|doi=10.1016/S0304-3975(98)00009-7}}</ref> This means that if a player has a winning strategy then she has a winning strategy that depends only on the current board position, and not on the history of the play.
 
==Solving a game==
{{unsolved|computer science|Can parity games be solved in polynomial time?}}
 
''Solving'' a parity game played on a finite graph means deciding, for a given starting position, which of the two players has a winning strategy. It has been shown that this problem is in [[NP (complexity)|NP]] and [[Co-NP]], as well as [[UP (complexity)|UP]] and co-UP.<ref>Grädel 2007, p. 163</ref> It remains an open question whether this decision problem is solvable in [[P (complexity)|PTime]].
 
Given that parity games are history-free determined, solving a given parity game is equivalent to solving the following simple looking graph-theoretic problem. Given a finite colored directed [[bipartite graph]] with ''n'' vertices <math>V = V_0 \cup V_1</math>, and ''V'' colored with colors from ''1'' to ''m'', is there a choice function selecting a single out-going edge from each vertex of <math>V_0</math>, such that the resulting subgraph has the property that in each cycle the largest occurring color is even.
 
==Recursive algorithm for solving parity games==
 
Zielonka outlined a recursive algorithm that solves parity games. Let <math>G=(V, V_0,V_1,E,\Omega)</math> be parity game, where <math>V_0</math> resp. <math>V_1</math> are the sets of nodes belonging to player 0 resp. 1, <math>V = V_0 \cup V_1</math> is the set of all nodes, <math>E \subseteq V \times V</math> is the total set of edges, and <math>\Omega: V \rightarrow \mathbb{N}</math> is the priority assignment function.
 
Zielonka's algorithm is based on the notation of attractors. Let <math>U \subseteq V</math> be a set of nodes and <math>i=0,1</math> be a player. The <math>i</math>-attractor of <math>U</math> is the least set of nodes <math>Attr_i(U)</math> containing <math>U</math> such that <math>i</math> can force a visit to <math>U</math> from every node in <math>Attr_i(U)</math>. It can be defined by a fix-point computation:
 
<math>Attr_i(U)^0 := U</math>
 
<math>Attr_i(U)^{j+1} := Attr_i(U)^j \cup \{v \in V_i \mid \exists (v,w) \in E: w \in Attr_i(U)^j \} \cup \{v \in V_{1-i} \mid \forall (v,w) \in E: w \in Attr_i(U)^j \}</math>
 
<math>Attr_i(U) := \bigcup_{j=0}^\infty Attr_i(U)^j</math>
 
In other words, one starts with the initial set <math>U</math> and adds, in every step, all nodes belonging to player 0 that can reach <math>U</math> with a single edge and all nodes belonging to player 1 that must reach <math>U</math> no matter which edge player 1 takes.
 
Zielonka's algorithm is based on a recursive descent on the number of priorities. If the maximal priority is 0, it is immediate to see that player 0 wins the whole game (with an arbitrary strategy). Otherwise, let <math>p</math> be the largest one and let <math>i = p \mod 2</math> be the player associated with the priority. Let <math>U = \{v \mid \Omega(v) = p\}</math> be the set of nodes with priority <math>p</math> and let <math>A = Attr_i(U)</math> be the corresponding attractor of player <math>i</math>.
Player <math>i</math> can now ensure that every play that visits <math>A</math> infinitely often is won by player <math>i</math>.
 
Consider the game <math>G' = G \setminus A</math> in which all nodes and affected edges of <math>A</math> are removed. We can now solve the smaller game <math>G'</math> by recursion and obtain a pair of winning sets <math>W'_i, W'_{1-i}</math>. If <math>W'_{1-i}</math> is empty, then so is <math>W_{1-i}</math> for the game <math>G</math>, because player <math>1-i</math> can only decide to escape from <math>W_i</math> to <math>A</math> which also results in a win for player <math>i</math>.
 
Otherwise, if <math>W'_{1-i}</math> is not empty, we only know for sure that player <math>1-i</math> can win on <math>W'_{1-i}</math> as there is no player <math>i</math> escape from <math>W'_{1-i}</math> to <math>A</math> (because <math>A</math> is an attractor already). We therefore compute to <math>1-i</math> attractor <math>B = Attr_{1-i}(W'_{1-i})</math> of <math>W'_{1-i}</math> and remove it from <math>G</math> to obtain the smaller game <math>G'' = G \setminus B</math>. We again solve it by recursion and obtain a pair of winning sets <math>W''_i, W''_{1-i}</math>. It follows that <math>W_i = W''_i</math> and <math>W_{1-i} = W''_{1-i} \cup B</math>.
 
In simple [[pseudocode]], the algorithm might be expressed as this:
 
<code>
  function solve(<math>G</math>)
      <math>p</math> = maximal priority in <math>G</math>
      if <math>p = 0</math>
          return <math>W_0 = V, W_1 = \{\}</math>
      else
          <math>U =</math> nodes in <math>G</math> with priority <math>p</math>
          <math>i = p \mod 2</math>
          <math>A = Attr_i(U)</math>
          <math>W_0', W_1' = solve(G \setminus A)</math>
          if <math>W_i' = V</math>
              return <math>W_i = V, W_{1-i} = \{\}</math>
          <math>B = Attr_{1-i}(W_{1-i}')</math>
          <math>W_0'', W_1'' = solve(G \setminus B)</math>
          return <math>W_i = W_i'', W_{1-i} = W_{1-i}'' \cup B</math>
</code>
 
==Related games and their decision problems==
A slight modification of the above game, and the related graph-theoretic problem, makes solving the game [[NP-hard]]. The modified game has the [[Rabin automaton|Rabin acceptance condition]].
Specifically, in the above bipartite graph scenario, the problem now is to determine if there
is a choice function selecting  a single out-going edge from each vertex of ''V''<sub>0</sub>, such that the resulting subgraph has the property that in each cycle (and hence each [[strongly connected component]]) it is the case that there exists an ''i''  and a node with color&nbsp;2''i'', and no node with color&nbsp;2''i''&nbsp;+&nbsp;1...
 
Note that as opposed to parity games, this game is no longer symmetric with respect to players 0 and&nbsp;1.
 
==Relation with logic and automata theory==
[[Image:Applications of Parity Games.png|400px|right|thumb|Most common applications of parity game solving.]]
Despite its interesting complexity theoretic status, parity game solving can be seen as the algorithmic backend to problems in automated verification and controller synthesis. The model-checking problem for the [[modal μ-calculus]] for instance is known to be equivalent to parity game solving. Also, decision problems like validity or satisfiability for modal logics can be reduced to parity game solving.
 
== References ==
<references/>
* {{cite book|author=Erich Grädel, Phokion G. Kolaitis, Leonid Libkin, Maarten Marx, Joel Spencer, Moshe Y. Vardi, Yde Venema, Scott Weinstein|title=Finite model theory and its applications|year=2007|publisher=Springer|isbn=978-3-540-00428-8}}
 
== Further reading ==
* E. Grädel, W. Thomas, T. Wilke (Eds.) : ''Automata, Logics, and Infinite Games'', Springer LNCS 2500 (2003), ISBN 3-540-00388-6
* W. Zielonka : ''Infinite games on finitely coloured graphs with applications to automata on infinite tree'', TCS, 200(1-2):135-183, 1998
 
==External links==
Parity Game Solvers:
* [http://www.tcs.ifi.lmu.de/pgsolver PGSolver Collection]
 
[[Category:Game theory]]
[[Category:Finite model theory]]

Latest revision as of 20:22, 2 September 2014

Hi there, I am Alyson Pomerleau and I think it sounds quite good when you say it. I've always cherished living in Alaska. One of the things she loves most is canoeing and she's been performing it for fairly a while. For many years she's been operating as a travel agent.

my web page ... psychic love readings