Discover millions of ebooks, audiobooks, and so much more with a free trial

Only $11.99/month after trial. Cancel anytime.

Regular Algebra and Finite Machines
Regular Algebra and Finite Machines
Regular Algebra and Finite Machines
Ebook207 pages3 hours

Regular Algebra and Finite Machines

Rating: 4 out of 5 stars

4/5

()

Read preview

About this ebook

World-famous mathematician John H. Conway based this classic text on a 1966 course he taught at Cambridge University. Geared toward graduate students of mathematics, it will also prove a valuable guide to researchers and professional mathematicians.
His topics cover Moore's theory of experiments, Kleene's theory of regular events and expressions, Kleene algebras, the differential calculus of events, factors and the factor matrix, and the theory of operators. Additional subjects include event classes and operator classes, some regulator algebras, context-free languages, communicative regular algebra, axiomatic questions, the strength of classical axioms, and logical problems. Complete solutions to problems appear at the end.
LanguageEnglish
Release dateSep 16, 2012
ISBN9780486310589
Regular Algebra and Finite Machines

Related to Regular Algebra and Finite Machines

Titles in the series (100)

View More

Related ebooks

Mathematics For You

View More

Related articles

Reviews for Regular Algebra and Finite Machines

Rating: 3.9230799999999997 out of 5 stars
4/5

13 ratings0 reviews

What did you think?

Tap to rate

Review must be at least 10 words

    Book preview

    Regular Algebra and Finite Machines - John Horton Conway

    Index

    __________________________________________

    Preface

    __________________________________________

    This book has been growing for some time. In 1960 I was particularly impressed by the papers of Kleene and Moore in Automata Studies (ed. Shannon and McCarthy), and decided to examine the axiomatics of Kleene’s algebra and to improve Moore’s bounds for lengths of experiments. Neither problem made much progress for some years, but then Michael Guy and I found the method of Chapter 2 for the Moore problem, and some time later I developed the treatment of the axiomatic problem described in Chapter 13, and spoke briefly about it at the 1966 International Congress of Mathematicians in Moscow. The matrix proof of Kleene’s theorem, and the differential calculus of events (Chapters 3 and 5), predate this. I have since learnt that the matrix formula was already known to P. J. Cleave in 1961, while J. Brzozowski has published several papers on the differential calculus in more recent years.

    I should like to thank in particular Andrew Glass, whose lucid notes put some sense into a lecture course I gave on these topics in Cambridge in 1966, and from which large parts of Chapters 0–6 and 12–13 have been copied almost verbatim, and my former research student Donald Pilling, whose work is the basis of Chapters 7–11. The idea of stressing the operator calculus is Pilling’s, and most of the results of Chapters 7–11 appear in some form or other in his PhD dissertation, even when this is not explicitly acknowledged in the text. In addition to his work on the operator calculus, Pilling seems to have given the first complete treatment of commutative regular algebra (Chapter 11). I should also like to thank Peter Rowat, whose earlier work helped to lay the foundations for some of the book, and Michael Guy for the contributions noted above.

    Not many references to the literature appear in the text, largely because I am not as familiar with the literature as I should be. For the same reason, most of the notation of the book is somewhat unorthodox, but I have taken some trouble to make it self-consistent, and hope that at least some of it will be found generally useful (excluding of course the bizarre names for particular operators). I hope that more than one reader will find the time to attack the various conjectures made, particularly in Chapters 6, 9, 11, 13 and 14. Not all of these can really be as hard as I have found them!

    __________________________________________

    CHAPTER ZERO

    Preliminaries to

    the Moore theory

    __________________________________________

    The main aim of this book is a presentation of Kleene’s algebraic theory of machines. To this end, we begin by formalizing the notion of machine. Then we present Moore’s identification theory of machines, which logically seems to precede the Kleene theory.

    Any actual machine is finite in the obvious sense that it has but a finite number of component parts, and so our theory will naturally be a theory of finite machines. Any actual machine is also to some extent unreliable, so that its behaviour is not always that which would be predicted from a knowledge of its design. However, we choose to ignore this unsavoury phenomenon, arguing that the deterministic theory is at once simpler and more interesting, and can in any case be made to include the probabilistic theory by the simple device of adding new input facilities accessible only to gremlins.

    Any machine worth the name will want to communicate with its environment by means of suitable input and output facilities. If the machine is deterministic, its output signals at any time will depend only on the state of the machine at that time, and the action of the machine at any instant will depend only on its state at that instant and the nature of any input signals it may receive.

    We there formalize the notion of finite machine (sequential machine, Moore machine, finite automaton) as follows:

    A finite machine M consists of:

    a finite set S = S(M) of objects called states

    a finite set I = I(M) of objects called inputs

    a finite set O = O(M) of objects called outputs

    a function t:S × I S called the transition function

    a function o:S O called the output function

    called the initial state.

    , … for states, a, b, c, … for inputs, and i, j, k, … for outputs, and we abbreviate t, aa.

    , continuously emitting output o), and it will remain in state a until it receives an input signal aa and emit output oa.

    If we think of the machine as a black box with push-buttons for inputs and lights for outputs, then the buttons must be spring-loaded so as to pop out after each pressing, and mechanically interlocked so that only one can be operated at any instant. Again, the electrical circuitry operating the outputs must be so designed that exactly one lamp is lit at any time. Other types of machine are readily accommodated by various coding processes – thus the formalized version of a machine with two input buttons a and b which can be operated separately or simultaneously, and two lamps i and j which can be lit or unlit independently of each other, will not have two inputs and two outputs, but rather three inputs (a, b, both) and four outputs (i, j, both, neither).

    Another popular formalization should perhaps be mentioned. A Mealey machine is defined just as a Moore machine, except that the output function is from S × I to O rather than simply from S to O. We think of such a machine as emitting its outputs at the instant of transition from one state to another, the output depending both on the previous state and the disturbing input. The theories of the two types are obviously equivalent, since any Mealey machine can be imitated by a Moore machine which has more states and ‘remembers’ the previous input, and a Moore machine can obviously be regarded as a Mealey machine in which the output happens to be independent of the input. We use the Moore version because it fits more simply into the Kleene theory.

    a and o), or graphically by means of its state diagram. The latter has a node for each state, marked with the name of that state and its output, and a directed branch marked a a . The initial state is marked by an ingoing arrow (→). When there are just two outputs 0 and 1 we call M a binary machinewith o) = 1. These remarks should be made quite clear by the example presented in Fig. 0.1.

    Fig. 0.1. A three-state machine and its state diagram.

    The Moore theory considers experiments on a finite machine M, under the supposition that the experimenter is forbidden to examine the state of M by any means other than observing its output. The aim is to extract information about the structure or state of M by applying various carefully chosen inputs and studying the resulting output-sequences. The following terminology is useful.

    A word is a finite (possibly empty) formal sequence of inputs. The length of the word is the length of this sequence, and the empty word 1 is the word of length zero. I* denotes the set of all words in inputs of Iis a state and w is the word ab kw a)b)…)k obtained from a by applying the inputs a, b, …, k is accessible from only if there is a word w w , and accessible .

    are properties of the function f :I* O(M) defined by f (w) = owindistinguishable if and only if f = f – that is to say, if and only if ow) = ow) for every word ware states of distinct machines M and M′ – all we need require is that M and M′ have the same console; that is to say, the same sets I and O.

    The engineer who wants a machine for some specific purpose will normally prefer the simplest machine that does the job. He will not usually approve of a multiplicity of parts with the same effect, and nor will he countenance the insertion of components with no function. These considerations lead naturally to the following notions.

    The quotient by indistinguishability

    For any machine M, we define a machine M ÷ with the same console by:

      (i) the states of M ) of M,

    a a

    (iii) the output function is defined by o) = o),

    .

    Theorem 1. M ÷ is indeed a machine, and any state of M is indistinguishable from the corresponding state of M ÷.

    Proof. M for every word w.

    The truncation by inaccessibility

    For any machine M, we define a machine M − with the same console by:

      (i) the states of M − are the accessible states of M,

     (ii) the transition and output functions of M − are the restrictions of those of M to the states of M −,

    (iii) the initial state of M .

    Theorem 2. M is indeed a machine, and every state of M is indistinguishable from regarded as a state of M.

    Proof. M a w has the same meaning in M − as in M.

    The point is, of course, that any two states of M ÷ are distinguishable, and any state of M − accessible. Figure 0.2 illustrates the two constructions.

    Fig. 0.2.

    We say that M is minimal if every state of M is accessible and every two distinct states of M are distinguishable. We say that M and N have the same behaviour if and only if their initial states are indistinguishable. The notion of isomorphism between two machines with the same console is defined in the obvious way.

    Theorem 3. M ÷− and M −÷ are minimal machines with the same behaviour as M. Minimal machines have the same behaviour if and only if they are isomorphic.

    Proof. The first statement follows easily from our previous theorems. If now M and N , we define a function from the states of M to those of N by fww for each word w. Then f is everywhere defined, since each state of M is accessible; well-definedw is the unique state of N w; and onto, since every state of N is accessible. It is therefore an isomorphism, since ow) = ow). The proof is completed by the remark that isomorphic machines have the same behaviour.

    We conclude that each machine has the same behaviour as some minimal machine, which is uniquely defined to within isomorphism. A possible snag in this otherwise very satisfactory state of affairs is that there might be no effective test for indistinguishability of states, and so perhaps no effective construction for this minimal machine. Fortunately, such a test is one of the first results of Chapter 1.

    __________________________________________

    CHAPTER ONE

    Moore’s theory

    of experiments

    __________________________________________

    The maintenance man in charge of a real machine M often has occasion to experiment with M. Sometimes he will be presented with M in some unaccustomed (and probably unknown) state and required to return it with a note specifying its new state. Occasionally he might suspect that some malfunction has transformed M into a new (and probably useless) machine M′, and will need to devise an experiment to determine whether this has in fact occurred. In both cases his method will probably be to apply certain inputs to the machine (each input depending on the previous outputs) until the resulting sequence of outputs in some sense contains the information he requires. The outcome of the experiment will be a

    Enjoying the preview?
    Page 1 of 1