Purdue University Purdue University
Purdue e-Pubs Purdue e-Pubs
Department of Computer Science Technical
Reports
Department of Computer Science
1967
Solving Sequential Conditions by Finite State Strategies Solving Sequential Conditions by Finite State Strategies
J. Richard Buchi
Lawrence H. Landweber
Report Number:
67-014
Buchi, J. Richard and Landweber, Lawrence H., "Solving Sequential Conditions by Finite State Strategies"
(1967).
Department of Computer Science Technical Reports.
Paper 88.
https://docs.lib.purdue.edu/cstech/88
This document has been made available through Purdue e-Pubs, a service of the Purdue University Libraries.
Please contact epubs@purdue.edu for additional information.
Solving Sequential Conditions by Finite State Strategies
J. Richard Buchi and Lawrence H. Landweber
September 1967
CSD TR 14
SOLVING SEQUENTIAL CONDITIONS BY
FINITE STATE STRATEGIES*
J. Richard Buchi and Lawrence H. Landweber**
Purdue University, Lafayette, Indiana
Our main purpose is to present an algorithm which decides
whether or not a condition C(X,Y) stated in sequential calculus
admits a finite automata solution, and produces one if it exists.
This solves a problem stated in [4] and contains, as a very
special case, the answer to case 4 left open in [6]. In an
equally appealing form the result can be restated in the terminology
of [7^10,15] » Every oi-game definable in sequential calculus Is
determined. Moreover the player who has a winning strategy, in
fact, has a winning finite state strategy, that is one which can
effectively be played in a strong sense. The main proof, that of
the central Theorem 1, will be presented at the end. We begin with
a discussion of its consequences. •
1. CONDITIONS ON SEQUENTIAL OPERATORS
Let C(X,Y) be a condition
(i. e. ,
binary relation) on
aj-sequences X = XO, XI, X2,... and Y = YO, Yl, Y2,... of members of
the finite sets I and J. Let Y=A(x) be an operator which maps
I-sequences into J-sequences. We will say that the operator A
*
This research was sponsored by the National Science Foundation
(Contract 4730-50-395)- The main result was announced in [13].
** Presently at the University of Wisconsin, Madison Wisconsin.
solves the condition c(X,T) for Y or that A is a solution of
C for Y, if (\r X) C(X,A(X)) or equivalently,
(1)
(
VXY)-Y=A(X)3 C(;:,Y)
If no further requirement is imposed on solutions, then the
axiom of choice states: (V
x)
(3Y)C(X,Y) is the solvability con-
dition of C for Y. The solvability question becomes more
interesting if one requires the solution A to be continuous in the
sense of the natural Can^r topology on the set of all cu-sequences
over the alphabets I and J. Let I* denote the set of all
finite sequences (v:ords) over The members of I* form a tree
if all words wa, a e I are taken as direct successors of we I*,
to-sequences over I are represented by infinite paths through the
tree. Let U be the set of all those paths X which contain w
(as an initial segment). The finite unions U ... U are
W
1 n
then the open-closed sets of the totally disconnected space of all
I-sequences. An operator Y=A(X; is continuous if it may be given
in the form,
(2) l
?
t = 0(x(?t))
whereby Xz stands for the word Xz, 0 is a map from ai
into to and 0 maps I* into J.
Among the continuous operators there are those for which the
entries in the sequence '_'=A(X) can in fact be computed, if
sufficient information about the entries in X is provided. The
recursive
i
operators (RO) are those presentable in form (2),
whereby both $ and 4> are recursive.
A particularly simple class of recursive operators are the
finite automata operators (FAO), that is those operators which
may be presented in the form,
ZO = H[XO]
(3) Zt' = L[Xt',Zt]
YT = W[Zt]
Here Z varies over co-sequences from a finite set K. H,L and W
are functions from I into K, I x K into K, and K into J.
A system <CK,H,L,W)
>
is called a finite automaton with input
states I, output states J, and (internal) states K. Finite
automata were first studied by Kleene [12]. Also see [3>5,l6].
Besides being recursive, FAO
1
s are deterministic in the sense that
the state of Y at time t can be calculated without anticipating
future states of the input X. More precisely, a continuous
operator (2) is deterministic (DO) if 0t < t. I.e., if it can
be given in the form,
(4) Yt = 3>(Xt)
Thus we use the term deterministic in the sense familiar from physics.j
j
Note that a DO is continuous but need not be recursive.
A FAO is a recursive deterministic operator (RDO). Furthermore,
one easily proves: The DO given by (4) is a FAO if and only if
the right congruence u v on words, defined by (Vw)$(uw)=<I>(vw),
i
has finite index. This explains in just which way a finite automaton j
is limited in its ability to memorize the input history Xt at
time t. To be a FAO is a very strong requirement on a RDO.