An important connection between logic and games is based on the corre-spondence between the evaluation of a logical formula and a game played
by two opponents, one trying to show that the formula is true and the
other trying to prove it false.
is relationship has been implicitly known
for a long time, even before mathematical logic and game theory wereformalized. It was formally established in the s by Paul Lorenzen
] in the form of dialogue games and later developed in another
form by Jaakko Hintikka [
]. Since then, it has inspired numerous re-
the classical ones.
In computer science, there are two main approaches to algorithmically exploitingthecorrespondencebetweenlogicandgames. Ontheonehand,gamesplayedonsyntacticobjectssuchasformulas, programsorlanguage
expressions were studied. Such games, derived from the dialogue games
of Lorenzen and their extensions, were used to build theorem provers
for classical and intuitionistic rst-order logic [
], to give semantics to
programming languages and to verify programs[
], and in various othercontexts in linguistics and articial intelligence (see [
On the other hand, games can be played in a more semantic setting,
where players choose elements of a mathematical structure. In this way,following the ideas of Hintikka, games are used to evaluate formulas of
both rst-order and second-order logic on nite structures and to verify
temporal properties on Kripke structures.
e algorithmic utility of such semantic games is apparent in the ver-
-calculus formulas on nite structures. While there is noknown polynomial-time algorithm for this problem, parity and mean-payo games were used to narrow its complexity class[
], to obtain
algorithms that are among the most ecient ones in practice [