Monday, May 16, 2016

A Turing Machine for a Binary Counter

Table 1: Tape in Successive Start States
Input/Output TapeDecimal
tb00
tb11
tb102
tb113
tb1004
tb1015

1.0 Introduction

This post describes another program for a Turing Machine. This Turing machine implements a binary counter (Table 1). I do not think I am being original here. (Maybe this was in the textbook on computability and automata that I have been reading.)

2.0 Alphabet

Table 2: The Alphabet For The Input Tape
SymbolNumber Of
Occurrences
Comments
t1Start-of-tape Symbol
bPotentially InfiniteBlank
0Potentially InfiniteBinary Digit Zero
1Potentially InfiniteBinary Digit One

3.0 Specification of Valid Input Tapes

At start, the (input) tape should contain, in this order:

  • t, the start-of-tape symbol.
  • b, a blank.
  • A sequence of binary digits, with a length of at least one.

The above specification allows for any number of unnecessary leading zeros in the binary number on the tape. The head shall be at the blank following the start-of-tape symbol.

4.0 Specification of State

The machine starts in the Start state. Error is the only halting state. Table 3 describes some conditions, for a non-erroneous input tape, that states are designed to satisfy, on entry and exit. For the states GoToEnd, FindZero, CreateTrailingOne, Increment, and ResetHead, the Turing machine may experience many transitions that leaves the machine in that state after the state has been entered. When the state PauseCounter has been entered, the next increment of a binary number appears on the tape.

Table 3: States
StateSelected Conditions
On EntryOn Exit
StartThe head is immediately to the left of the binary number on the tape. (The binary number on the tape at this point is referred to as "the original binary number" below.)Same as the entry condition for GoToEnd.
GoToEndThe head is under the first digit of the binary number on the tape.Same as the entry condition for FindZero.
FindZeroThe head is under the last digit of the binary number on the tapeIf all digits in the original binary number are 1 and that number has not been updated with a leading zero, the head is under the first digit of the binary number on the tape. If the original binary number contained at least one digit 0, the head is under the location of the last instance of 0 in the original binary number, and that digit has been changed to a 1. Otherwise, the head is under the first digit in the binary number now on the tape, and that digit is now a 1 (having once been a leading zero).
CreateLeadingZeroAll the digits in the original binary number are 1. The head is under the first digit of the binary number on the tape.Same as the entry condition for CreateTrailingOne
CreateTrailingOneAll the digits in the original binary number are 1. The first digit in the original binary number has been replaced by 0. The head is under that first digit.The original binary number has been shifted one digit to the left, and a leading zero has been prepended to it. The head is under the last digit of the binary number now on the tape.
StepForwardIf all digits in the original binary number are 1, that number has been shifted one digit to the left, that number has been updated with a leading 0 which is now a 1, and the head is under that digit. Otherwise, the last instance of 0 in the original number has been updated to a 1, and the head is now under that digit tape.Same as the entry condition for Increment.
IncrementIf all digits in the original binary number are 1, that number has been shifted one digit to the left, that number has been updated with a leading 0 which is now a 1, and the head is under the next location on the tape. Otherwise, the last instance of 0 in the original number has been updated to a 1, and the head is now under the next location on the tape.Same as the entry condition for ResetHead. All the 1's to the right of the 0 updated to a 1 have themselves been updated to a 0.
ResetHeadThe head is under the last digit of the binary number on the tape, and that number is the successor of the original binary number.Same as the entry condition for PauseCounter.
PauseCounterThe head is immediately to the left of the binary number on the tape, and that number is the successor of the original binary number.

I think one could express the conditions in the above lengthy table as logical predicates. And one could develop a formal proof that the state transition rules in the appendix ensure that these conditions are met on entry and exit of the non-halting tape, at least for non-erroneous input tapes. I do not quite see how invariants would be used here. (When trying to think rigorously about source code, I attempt to identify invariants for loops.)

5.0 Length of Tape and the Number of States

Suppose the state PauseCounter was a halting state. Then this Turing machine would be a linear bounded automaton. In the Chomsky hierarchy, automata that accept context-sensitive languages need not be more general than linear bound automata.

The program for this Turing machine consists of 10 states. The number of characters on the tape grows at the rate O(log2 n), where n is the number of cycles through the start state. I gather the above instructions could be easily modified to not use any start-of-tape symbol. Anyways, 20 people seems more than sufficient for the group activity I have defined, for this particular Turing machine.

Appendix A: State Transition Tables

This appendix provides detail specification of state transition rules for each of the non-halting states. I provide these rules by tables, with each table showing a pair of states.

Table A-1: Start and GoToEnd
StartGoToEnd
ttErrorttError
bForwardsGoToEndbBackwardsFindZero
00Error0ForwardsGoToEnd
11Error1ForwardsGoToEnd
Table A-2: FindZero and CreateLeadingZero
FindZeroCreateLeadingZero
ttErrorttError
bForwardsCreateLeadingZerobbError
01StepForward00Error
1BackwardsFindZero10CreateTrailingOne
Table A-3: CreateTrailingOne and StepForward
CreateTrailingOneStepForward
ttErrorttError
b1FindZerobbError
0ForwardsCreateTrailingOne00Error
1ForwardsCreateTrailingOne1ForwardsIncrement
Table A-4: Increment and ResetHead
IncrementResetHead
ttErrorttError
bBackwardsResetHeadbbPauseCounter
0ForwardsIncrement0BackwardsResetHead
10Increment1BackwardsResetHead
Table A-5: PauseCounter
PauseCounter
ttError
bbStart
00Error
11Error

Saturday, May 14, 2016

Choice Of Technique And Search Models Of Labor Markets

I do not have an analysis or example to go with this post title. I suggest this would be an interesting research topic. What are implications of the analysis of the choice of technique, if any, for search models of labor markets?

Consider the neoclassical theory of supply and demand in labor markets under perfect competition. We know (Opocher and Steedman 2015, Vienneau 2005) that that theory is fatally undermined by an analysis of cost-minimizing firms.

I have recently read an overview, by Steve Fleetwood (2016), of models of search and matching in labor markets. And he illustrates these models with graphs of two crossing monotone curves that, at a glance, look much like labor supply and demand curves. But these curves are drawn in a different space and have a different rationale and derivation than labor supply and demand curves. A wage curve is graphed with the job creation curve. The abscissa is the tightness of the labor market, as measured by the ratio of vacancies to unemployment. The ordinate is the wage, as in the mistaken introductory story. The wage curve is also graphed against the Beveridge curve in a different space, namely, with the present discounted value of expected profit from a vacant job against unemployment.

In a long run analysis, a higher wage is associated with a lower rate of profits. This wage-rate of profits curves has implications for present discounted values. I do not see why an analysis inspired by Sraffa could not undermine search models. But one would have to go further than this to confirm this intuition. And one would need to read some of the original literature.

I do not claim that search models might not have some use in a reconstituted economics.

Reference

Wednesday, May 11, 2016

A Turing Machine For Calculating The Fibonacci Sequence

Table 1: Representation of the Fibonacci Sequence
Input/Output TapeTerms in Series
0b1;1;1, 1
0b1;1;11;1, 1, 2
0b1;1;11;1111, 1, 2, 3
0b1;1;11;111;11111;1, 1, 2, 3, 5
0b1;1;11;111;11111;11111111;1, 1, 2, 3, 5, 8

1.0 Introduction

I thought I would describe the program for a specific Turing machine. This Turing machine computes the Fibonacci sequence in tally arithmetic, as illustrated in Table 1 above. The left-hand column shows the tape for the Turing machine for successive transitions into the Start state. (The location of the head is indicated by the bolded character.) The right-hand column shows a more familiar representation of a Fibonacci sequence. This Turing machine never halts for valid inputs. It can calculate other infinite sequences, such as specific Lucas sequences, for other valid inputs.

A Turing machine is specified by the alphabet of characters that can appear on the tape, possible valid sequences of characters for the start of the tape, the location of the head at the beginning of a computation, the states and the state transition rules, and the location of the state pointer at beginning of a computation.

2.0 Alphabet

Table 2: The Alphabet For The Input Tape
SymbolNumber Of
Occurrences
Comments
01Start of tape marker
bPotentially InfiniteBlank
;Potentially InfiniteSymbol for number termination
1Potentially InfiniteA tally
x1For internal use
y1For internal use
z1For internal use

3.0 Specification of Valid Input Tapes

At start, the (input) tape should contain, in this order:

  • 0, the start of tape marker.
  • b, a blank.
  • Zero or more 1s.
  • ;, a semicolon.
  • One or more of the following:
    • Zero or more 1s.
    • ;, a semicolon.

The head shall be at a blank or semicolon such that exactly two semicolons exist in the tape to the right of the head. Table 3 provides examples (with the head being at the bolded character).

Table 3: Examples of Valid Initial Input
0b;;
0b1;;
0b1;1;
0b11;1;
0b1;1;11;111;11111;11111111;

4.0 Definition of State

The states are grouped into two subroutines, CopyPair and Add. Error is the only halting state, to be entered when an invalid input tape is detected. The Turing machine begins the computation with the state pointer pointing to the Start state, in the CopyPair subroutine. Eventually, the Turing machine enters the PauseCopy state. The machine then transitions to the StartAdd state, in the Add subroutine. Another number in the sequence has been successfully appended to the tape when the Turing machine enters the PauseAdd state.

The Turing machine then transitions into the Start state. The CopyPair and Add subroutines are repeated in pairs forever.

4.1 CopyPair

The input tape for the CopyPair subroutine is any valid input tape, as described above. The state pointer starts in the Start tape. Error is the only halting state. The subroutine exits with a transition from the PauseCopy state to the StartAdd state. When the PauseCopy state is entered, the tape shall be in the following configuration:

  • The terminal semicolon in the tape, when the Start state was entered, shall be replaced with a z.
  • The head shall be at that z.
  • The tape to the right of the z shall contain a copy of the character string to the right of the head when the Start state was entered.

This subroutine can be implemented by the states described in Table 4. The detailed implementation of each state is provided in the appendix. Throughout these states, there are transitions to the Error state triggered by encountering on the tape a character that cannot be there in a valid computation.

Table 4: States in the CopyPair Subroutine
StateDescription
StartMoves the head forward one character.
ReadFirstCharReplaces first ; or 1 (after position of head when the subroutine was called) with x or y, respectively.
WriteFirstSemiWrites a ; at the end of the tape. Transitions to GoToTapeEnd.
WriteFirstOneWrites a 1 at the end of the tape. Transitions to GoToTapeEnd.
GoToTapeEndMoves the head backward one character to locate the head at the character that was at the end of the tape when the subroutine was called.
MarkTapeEndReplaces original terminating ; with z.
NexCharReplaces the x or y on the tape with ; or 1, respectively.
StepForwardMoves the head forward one character.
ReadCharReplaces the next ; or 1 with x or y, respectively.
WriteSemiWrites a ; at the end of the tape. Transitions to NextChar.
WriteOneWrites a 1 at the end of the tape. Transitions to NextChar.
WriteLastSemiWrites a ; at the end of the tape. Transitions to SetHead.
SetHeadMoves head to the z on the tape.
PauseCopyFor noting that last two numbers on the tape, when the subroutine was called, have been copied to the end of the tape.

4.2 Add

When the PauseAdd state is entered, the tape shall be in the following configuration:

  • The semicolon between the z and the last semicolon, when the StartAdd state is entered, shall be replaced by a 1, if there is at least one 1 between this character and the terminating semicolon.
  • The semicolon at the end of the tape, when the StartAdd state is entered, shall be erased (replaced by a blank).
  • The character before the erased semicolon shall be replaced by a semicolon.
  • The z shall be replaced by a semicolon.
  • The head shall be at a semicolon such that two semicolons exist to the right of the head.

Table 5: States in the Add Subroutine
StateDescription
StartAddMoves the head forward one character.
FindSemiForDeleReplaces the ; mid-number with 1.
FindSumEndErases terminating ;.
EndSumWrites terminating ; at the tape position one character backwards.
FindSumStartReplaces z with ;.
StepBackwardMoves the head backwards one character.
ResetHeadSet head to previous ;, before the ; just written.
PauseAddFor noting next number in Fibonacci series.

5.0 Length of Tape and the Number of States

After three run-throughs of this Turing machine, five numbers in the Fibonacci sequence will be calculated. And the tape will contain 19 characters. As shown in Table 6, the number of states is 22. For the group activity I have defined for simulating a Turing machine, 42 people are needed. (One more person is needed, in computing the next number in the sequence, to be erased from the tape than ends up as characters on the tape.) I suppose one could get by with 36 people, if one is willing to some represent two states, one in each subroutine.

Table 6: State Count
SubroutineNumber Of
States
State Names
CopyPair15Error, Start, ReadFirstChar,
WriteFirstSemi, WriteFirstOne,
GoToTapeEnd, MarkTapeEnd,
NextChar, StepForward,
ReadChar, WriteSemi,
WriteLastSemi, SetHead,
WriteOne, PauseCopy
Add7StartAdd, FindSemiForDele,
FindSumEnd, EndSum,
FindSumStart, StepBackward,
PauseAdd
Total22

Appendix A: State Transition Tables

A.1: The CopyPair Subroutine
Table A-1: Start and ReadFirstChar
StartReadFirstChar
00Error00Error
bForwardsReadFirstCharbbError
;ForwardsReadFirstChar;xWriteFirstSemi
11Error1yWriteFirstOne
xxErrorxxError
yyErroryyError
zzErrorzzError
Table A-2: WriteFirstSemi and WriteFirstOne
WriteFirstSemiWriteFirstOne
00Error00Error
b;GoToTapeEndb1GoToTapeEnd
;ForwardsWriteFirstSemi;ForwardsWriteFirstOne
1ForwardsWriteFirstSemi1ForwardsWriteFirstOne
xForwardsWriteFirstSemixForwardsWriteFirstOne
yForwardsWriteFirstSemiyForwardsWriteFirstOne
zzErrorzzError
Table A-3: GoToTapeEnd and MarkTapeEnd
GoToTapeEndMarkTapeEnd
000Error
bbbError
;BackwardsMarkTapeEnd;zNextChar
1BackwardsMarkTapeEnd11Error
xxxError
yyyError
zzzError
Table A-4: NextChar and StepForward
NextCharStepForward
00Error0
bbErrorb
;BackwardsNextChar;ForwardsReadChar
1BackwardsNextChar1ForwardsReadChar
x;StepForwardx
y1StepForwardy
zBackwardsNextCharz
Table A-5: ReadChar and WriteSemi
ReadCharWriteSemi
00Error00Error
b1Errorb;NextChar
;xWriteSemi;FowardsWriteSemi
1yWriteOne1ForwardsWriteSemi
xxErrorxForwardsWriteSemi
yyErroryForwardsWriteSemi
zzWriteLastSemizForwardsWriteSemi
Table A-6: WriteLastSemi and SetHead
WriteLastSemiSetHead
00Error00Error
b;SetHeadbbError
;ForwardsWriteLastSemi;BackwardsSetHead
1ForwardsWriteLastSemi1BackwardsSetHead
xForwardsWriteLastSemixxError
yForwardsWriteLastSemiyyError
zForwardsWriteLastSemizzPauseCopy
Table A-7: WriteOne and PauseCopy
WriteOnePauseCopy
00Error0
b1NextCharb
;ForwardsWriteOne;
1ForwardsWriteOne1
xForwardsWriteOnex
yForwardsWriteOney
zForwardsWriteOnezzStartAdd
A.2: The Add Subroutine
Table A-8: StartAdd and FindSemiForDele
StartAddFindSemiForDele
00
bb
;;1FindSumEnd
11ForwardsFindSemiForDele
xx
yy
zForwardsFindSemiForDelez
Table A-9: FindSumEnd and EndSum
FindSumEndEndSum
00
bBackwardsEndSumbBackwardsEndSum
;bEndSum;bEndSum
1ForwardsFindSumEnd1;FindSumStart
xx
yy
zz
Table A-10: FindSumStart and StepBackward
FindSumStartStepBackward
00
bb
;BackwardsFindSumStart;BackwardsResetHead
1BackwardsFindSumStart1
xx
yy
z;StepBackwardz
Table A-11: ResetHead and PauseAdd
ResetHeadPauseAdd
00
bb
;;PauseAdd;;Start
1BackwardsResetHead1
xx
yy
zz
A.3: Modifications?

The above is my first working version. I have not proven that cases can never arise where I have not specified rules in the tables for the states for the Add subroutine. Nor do I know that all rules can be triggered by some, possibly invalid, input tape. I know that I have not defined the minimum number of states for the system. For example, the ReadChar state could be defined as in Table A-12, along with the elimination of the WriteLastSemi and SetHead states. This would result in the CopyPair subroutine specification not being met and a tighter coupling between the two subroutines. On the other hand, the subroutines are already coupled through the appearance of z on the tape during the transition from one subroutine to the other.

Table A-12: Modified ReadChar
ReadChar
00Error
b1Error
;xWriteSemi
1yWriteOne
xxError
yyError
zzPauseCopy

Saturday, May 07, 2016

Noam Chomsky And Norman Mailer Share A Jail Cell For A Night

No joke. This happened as a result of an October 1967 march on the Pentagon to protest the Vietnam war. I find I had misremembered this passage. I recalled Mailer as being much less modest, as not acknowledging that technical linguistics used mathematical methods that might be beyond him at that stage of his life, no matter how much time he put into it. (I haven't actually read all of the technical works by Chomsky in the references below.) I have always liked Mailer's reporting and essays better than his novels, an opinion that I probably share with many and that he did not appreciate.

"Definitive word came through. The lawyers were gone, the Commissioners were gone: nobody out until morning. So Mailer picked his bunk. It was next to Noam Chomsky, a slim-featured man with an ascetic expression, and an air of gentle but absolute moral integrity. Friends at Wellfleet had wanted him to meet Chomsky at a summer before - he had been told that Chomsky, although barely thirty, was considered a genius at MIT for his new contributions to linguistics - but Mailer had arrived at the party too late. Now, as he bunked down next to Chomsky, Mailer looked for some way to open a discussion on linguistics - he had an amateur's interest in the subject, no, rather he had a mad inventor's interest, with several wild theories in his pocket which he had never been able to exercise since he could not understand what he read in linguistics books. So he cleared his throat now once or twice, turned over in bed, looked for a preparatory question, and recognized that he and Chomsky might share a cell for months, and be the best and most civilized of cellmates, before the mood would be proper to strike the first note of inquiry into what was obviously the tightly packed conceptual coils of Chomsky's intellections. Instead they chatted mildly of the day, of the arrests (Chomsky had also been arrested with Dellinger), and of when they would get out. Chomsky - by all odds a dedicated teacher - seemed uneasy at the thought of missing class on Monday.

On that long unwinding passage from the contractions of the day into the deliberations of the dream, Mailer passed through a revery over much traveled and by now level ground where he thought once more of the war in Vietnam, the charges against it, the defenses for it, and his own final condemnation which had landed him here on this filthy blanket and lumpy bed, this smoke-filled barracks air, where he listened half-asleep to the echoes of Teague's loud confident Leninist voice, he, Mailer, ex-revolutionary, now last of the small entrepreneurs, Left Conservative, that lonely flag - there was no one in America who had a position even remotely like his own, who else could indeed could offer such a solution as he possessed to such a war, such a damnable war. Let us leave him as he passes into sleep. The argument in his brain can be submitted to the reader in the following pages with somewhat more order than Mailer possessed on his long voyage out into the unfamiliar dimensions of prison rest..." -- Norman Mailer (1968).

References
  • Noam Chomsky (1959). On certain formal properties of grammars, Information and Control, V. 2: pp. 137-167.
  • Noam Chomsky (1965). Aspects of the Theory of Syntax, MIT Press.
  • Noam Chomsky (1969). American Power and the New Mandarins, Pantheon Books.
  • Noam Chomsky and M. P. Schützenberger (1963). The algebraic theory of context-free languages, in Computer Programming and Formal Systems, North Holland.
  • Norman Mailer (1968) The Armies of the Night: History as a Novel, the Novel as History, New American Library.

Saturday, April 30, 2016

A STEAM Experience For A Flash Mob

1.0 Introduction

STEAM stands for Science, Technology, Engineering, Arts, and Mathematics. This post describes a possible plan for a crowd of many people to participate in. Roles for players consist of:

  • A Recorder.
  • State Actors.
  • Holders of letters in a line.

I once read Terry Eagleton suggesting that part of the definition of art is that it be "somewhat pointless."

2.0 Equipment

Equipment to be provided consists of:

  • A six-sided die.
  • Two balls. They could be soccer balls, beach balls, volley balls, or so on. One ball is called the Head, and the other ball is called the State Pointer.
  • Six sets of equipment, labelled 1 through 6. A set of equipment consists of:
    • A set of cards, where each card is a "letter" from an alphabet. Letters can be, for example, "Blank", "(", ")", ";", "End", "0", and "1". Many letters must have many cards with that letter.
    • A set of state placards. Each state placard contains:
      • An arbitrary label. These labels are arbitrary, but not repeated. They could be in high elvish, for all it matters, as long as participants can pronounce each label.
      • Either the word "Halt" or a set of rules. The placards for the halting states may also contain a short phrase. Each rule in a set of rules is designated by a letter from the alphabet.
    • Guidelines for setting up. These guidelines include:
      • Optional guidelines for the geographical distribution of states.
      • A specification of which State Actor initially holds the State Pointer.
      • Guidelines for forming an initial line of letters from the alphabet. These guidelines must include a specification of which holder of a letter initially also holds the Head.
3.0 Playing the Game

3.1 Preliminaries

The Recorder throws the die and chooses the corresponding set of equipment. One might create only one set of equipment, and this step would be omitted.

The Recorder distributes the state placards. A audience member comes up for each placard. He collects it, and becomes a State Actor. The State Actors all gather, with some distance between them, in a designated region. (One might break down the region into sub-regions, for subsets of the states, if one wants.)

The Recorder gives the State Pointer to the State Actor holding the placard for the initial state.

The Recorder reads out the guidelines for the initial line of letters. Audience members come up and form a line, accordingly. As an example, the guidelines might say:

The first player sits in the line and holds the "End" letter. The second player stands behind the first player. He holds a "Blank" and the Head. A number of players sit in the line behind the second player. They should each hold "0" or "1", as they choose. A person should sit after these players, and she holds a ";". Another number of players sit in in a row behind her. They also should each hold a "0" or "1".

The Recorder writes down the sequence of letters in the initial set up. This step is optional.

Play can now commence. Play consists of a sequence of clock cycles.

3.2 A Clock Cycle

The player holding the Head commences a clock cycle. This player calls out the letter he is holding.

The state actor holding the State Pointer now plays. He looks at his rules and finds the rule corresponding to the letter that has been called out. Each rule has two parts. The first part is either a letter from the alphabet or the word "Forward" or the word "Backward". The second part is the name of a state. That state could be the label on the state placard that this State Actor is holding. Or it could be another state.

If the State Actor calls out a letter, an audience member comes up. He selects that letter from leftover letters in the initial set of equipment. He replaces the player holding the Head in the line. And that player hands the new player the Head.

If the State Actor calls out Forward, the player holding the Head hands it to the player holding a letter in front of him and sits down. The player now holding the Head stands up. There would be no such player if the player holding the Head at the start of the cycle is standing at the front of the line. In this case, an audience member picks up a "Blank" from the leftover set of equipment. That player accepts the Head and stands at the front of the line.

If the State Actor calls out Backward, the player holding the Head hands it to the player holding a letter behind him and sits down. As you might expect, that player now holding the Head stands up. This step might also result in a new player coming up from the audience and joining the line. And this new player would join the line at the back.

The State Actor holding the State Pointer now calls out the state listed on the second part of the rule he is executing. If that state is not the state listed on his state placard, he hands the State Pointer to the appropriate State Actor.

The Recorder writes down the new state that the State Pointer has now transitioned to. (This step is optional.)

3.3 Ending the Game

The game ends either when the players become convinced it could go on forever, or it ends when a State Actor holding a placard for a halting state receives the State Pointer. If the game ends in a halting state, the State Actor reads the corresponding phrase from the state placard. That phrase might be something like:

You have been a Turing machine computing the sum of two non-negative integers, written in binary.

Or it could be:

You had at least one unmatched parentheses in your initial line.

If you want, the Recorder could have more audience members come up to recreate the initial line. You can then review, if you like, the computation. For example, you might check that the sum of the two numbers separated by a comma in the initial line up is equal to the number now represented by the final line up on the stage.

4.0 Much To Do

Obviously, much would need to be done to flesh this out. In particular, equipment sets need to be constructed. Some choices to think about:

  • Would one want to include an equipment set in which the simulated Turing machine does not terminate for some initial line of letters? Or would one want to, at least for the first performance, only have rules that are guaranteed termination for all (valid?) inputs?
  • Might one want to emulate automata for languages lower down on the Chomsky hierarchy? For example, one might create a stack to be pushed and popped before the start of the line. Here I envision that a subset of the states specify subroutines. And the State Actors defining these subroutines might be grouped separately from the other actors.
  • Would one want to share alphabets among more than one equipment set? Maybe all six sets should have the same alphabet.
  • How would one describe the initial line up for a Turing machine that is to decide or semi-decide whether a given string is in a given language? The specification of a grammar for generating a string can be quite confusing to beginners.
  • I am thinking that one would not want to create rules for a universal Turing machine. Even some of the suggestions above might be too long to play.

An interesting variation would be to simulate a non-deterministic Turing machine. For some clock cycles, the line would be duplicated. And one would introduce another Head and State Pointer.

5.0 Instruction and Theatrics

This activity could serve pedagogical purposes. Suppose the players are different cohorts of students. Could the older students be directed to write the rules for some other computation at the next meeting? Could a set of recursive functions be built up over many meetings? Maybe one would end up with a group engaging in real-time debugging in a joint activity.

One could set up an accompanying talk or lecture. Many topics could be broached: The Church-Turing thesis and universality, uncomputable functions and the halting problem, computational complexity and the question of whether P equals NP, linguistics and the Chomsky hierarchy, etc. Or one might talk about the British secret service and reading the Nazi's mail. I guess there is both a Broadway play and a movie to go along with this activity.

One could introduce some sophistication in showmanship, depending on where this concept is instantiated. I like the idea of the alphabet players wearing different colored shirts, with each color corresponding to a character. Zero could be red, and one could be green. Blanks would be a neutral color, such as white. The State Actors could be in a dim area, with a spotlight serving as the State Pointer. The State Actors or the letter holders could be members of an orchestra, with some tune being played for every state transition or invoked rule. At termination, the entire derivation written down by the Recorder could be run-through. I imagine it would be difficult to design a set of rules that results in an interesting tune. At any rate, I guess the interests of an observing mathematician, the participants, and a theatergoer would be in tension.

I hope if somebody was to try this project, they would give me appropriate acknowledgement.

Reference
  • Lou Fisher (1975). "Nobody Named Gallix", The Magazine of Fantasy and Science Fiction (Jan.): pp. 98-109.
  • Andrew Hodges (1983). Alan Turing: The Enigma, Princeton University Press.
  • HarryR. Lewis and Christos H. Papadimitriou (1998). Elements of the Theory of Computation, 2nd edition. Prentice Hall.

Wednesday, April 13, 2016

Math Is Power

1.0 Introduction

A common type of post in this blog is the presentation of concrete numerical examples in economics. Sometimes I present examples to illustrate some principle. But usually I try to find examples that are counter-intuitive or perverse, at least from the perspective of economics as mainstream economists often misteach it.

Voting games provide an arena where one can find surprising results in political science. I am thinking specifically of power indices. In this post, I try to explain two of the most widely used power indices by means of an example.

2.0 Me and My Aunt: A Voting Game

For purposes of exposition, I consider a specific game, called Me and My Aunt. There are four players in this version of the game, represented by elements of the set:

P = The set of players = {0, 1, 2, 3}

Out of respect, the first player gets two votes, while all other players get a vote each (Table 1). A coalition, S, is a set of players. That is, a coalition is a subset of P. A coalition passes a resolution if it has a majority of votes. Since there are four players, one of who has two votes, the total number of votes is five. So a majority, in this game of weighted voting, is three votes.

Table 1: Players and Their Votes
PlayersVotes
0 (Aunt)2
1 (Me)1
21
31

One needs to specify the payoff to each coalition to complete the definition, in characteristic function form, of this game. The characteristic function, v(S) maps the set of all subsets of P to the set {0, 1}. If the players in S have three or more votes,v(S) is 1. Otherwise, it is 0. That is, a winning coalition gains a payoff of one to share among its members.

3.0 The Penrose-Banzhaf Power Index

Power for a player, in this mathematical approach, is the ability to be the decisive member of a coalition. If, for a large number of coalitions, you being in or out of a coalition determines whether or not that coalition can pass a resolution, you have a lot of power. Correspondingly, if the members of most coalitions do not care whether you join, because your presence has no influence on whether or not they can put their agenda into effect, you have little power.

The Penrose-Banzhaf power index is one (of many) attempts to quantify this idea. Table 2 lists all 16 coalitions for the voting game under consideration. (The number of coalitions is the sum of a row in Pascal's triangle.) The second column in Table 2 specifies the value for the characteristic function for that coalition. Equivalently, the third column notes which eight coalitions are winning coalitions, and which eight are losing. The last two columns are useful for tallying up counts needed for the Penrose-Banzhaf index.

Table 2: Calculations for Penrose-Banzhaf Power Index
CoalitionCharacteristic
Function
Winning
or Losing
Player
Aunt (0)Me (1)
{}v( {} ) = 0Losing00
{0}v( {0} ) = 0Losing00
{1}v( {1} ) = 0Losing00
{2}v( {2} ) = 0Losing00
{3}v( {3} ) = 0Losing00
{0, 1}v( {0, 1} ) = 1Winning11
{0, 2}v( {0, 2} ) = 1Winning10
{0, 3}v( {0, 3} ) = 1Winning10
{1, 2}v( {1, 2} ) = 0Losing00
{1, 3}v( {1, 3} ) = 0Losing00
{2, 3}v( {2, 3} ) = 0Losing00
{0, 1, 2}v( {0, 1, 2} ) = 1Winning10
{0, 1, 3}v( {0, 1, 3} ) = 1Winning10
{0, 2, 3}v( {0, 2, 3} ) = 1Winning10
{1, 2, 3}v( {1, 2, 3} ) = 1Winning01
{0, 1, 2, 3}v( {0, 1, 2, 3} ) = 1Winning00

The Penrose-Banzhaf index, ψ(i) is calculated for each player i. It is defined, for a given player, to be the ratio of the number of winning coalitions in which that player is decisive to the total number of coalitions, winning or losing. A player is decisive for a coalition if:

  • The coalition is a winning coalition.
  • The removal of the player from the coalition converts it to a losing coalition.

From the table above, one can see that player 0 is decisive for six coalitions, while player 1 is decisive for only two coalitions. Hence, the Penrose-Banzhaf index for "my aunt" is:

ψ(0) = 6/16 = 3/8

By symmetry, the index values for players 2 and 3 are the same as the value for player 1:

ψ(1) = ψ(2) = ψ(3) = 2/16 = 1/8

More than one player can be decisive for a winning coalition. No need exists for the Penrose-Banzhaf index to sum up to one. How much one's vote is weighted does not bear a simple relationship to how much power one has. Also note that the definition of this power index is not confined to simple majority games. Power indices can be calculated for voting games in which a super-majority is required to pass a measure. For example, in the United States Senate, 60 senators are needed to end a filibuster.

4.0 The Shapley-Shubik Power Index

The Shapley-Shubik power index is an application of the calculation of the Shapley value to voting games. The Shapley value applies to cooperative games, in general. For its use as a measure of power in voting games, it matters in which order players enter a coalition. Accordingly, Table 3 lists all 24 permutations of all four players in the voting game being analyzed.

Table 3: Calculations for the Shapley-Shubik Power Index
PermutationPlayer
Aunt (0)Me (1)
(0, 1, 2, 3)v( {0} ) - v( {} ) = 0v( {0, 1} ) - v( {0} ) = 1
(0, 1, 3, 2)v( {0} ) - v( {} ) = 0v( {0, 1} ) - v( {0} ) = 1
(0, 2, 1, 3)v( {0} ) - v( {} ) = 0v( {0, 1, 2} )
- v( {0, 2} ) = 0
(0, 2, 3, 1)v( {0} ) - v( {} ) = 0v( {0, 1, 2, 3} )
- v( {0, 2, 3} ) = 0
(0, 3, 1, 2)v( {0} ) - v( {} ) = 0v( {0, 1, 3} )
- v( {0, 3} ) = 0
(0, 3, 2, 1)v( {0} ) - v( {} ) = 0v( {0, 1, 2, 3} )
- v( {0, 2, 3} ) = 0
(1, 0, 2, 3)v( {0, 1} )
- v( {1} ) = 1
v( {1} ) - v( {} ) = 0
(1, 0, 3, 2)v( {0, 1} )
- v( {1} ) = 1
v( {1} ) - v( {} ) = 0
(1, 2, 0, 3)v( {0, 1, 2} )
- v( {1, 2} ) = 1
v( {1} ) - v( {} ) = 0
(1, 2, 3, 0)v( {0, 1, 2, 3} )
- v( {1, 2, 3} ) = 0
v( {1} ) - v( {} ) = 0
(1, 3, 0, 2)v( {0, 1, 3} )
- v( {1, 3} ) = 1
v( {1} ) - v( {} ) = 0
(1, 3, 2, 0)v( {0, 1, 2, 3} )
- v( {1, 2, 3} ) = 0
v( {1} ) - v( {} ) = 0
(2, 0, 1, 3)v( {0, 2} )
- v( {2} ) = 1
v( {0, 1, 2} )
- v( {0, 2} ) = 0
(2, 0, 3, 1)v( {0, 2} )
- v( {2} ) = 1
v( {0, 1, 2, 3} )
- v( {0, 2, 3} ) = 0
(2, 1, 0, 3)v( {0, 1, 2} )
- v( {1, 2} ) = 1
v( {1, 2} ) - v( {2} ) = 0
(2, 1, 3, 0)v( {0, 1, 2, 3} )
- v( {1, 2, 3} ) = 0
v( {1, 2} ) - v( {2} ) = 0
(2, 3, 0, 1)v( {0, 2, 3} )
- v( {2, 3} ) = 1
v( {0, 1, 2, 3} )
- v( {0, 2, 3} ) = 0
(2, 3, 1, 0)v( {0, 1, 2, 3} )
- v( {1, 2, 3} ) = 0
v( {1, 2, 3} )
- v( {2, 3} ) = 1
(3, 0, 1, 2)v( {0, 3} )
- v( {3} ) = 1
v( {0, 1, 3} )
- v( {0, 3} ) = 0
(3, 0, 2, 1)v( {0, 3} )
- v( {3} ) = 1
v( {0, 1, 2, 3} )
- v( {0, 2, 3} ) = 0
(3, 1, 0, 2)v( {0, 1, 3} )
- v( {1, 3} ) = 1
v( {1, 3} ) - v( {3} ) = 0
(3, 1, 2, 0)v( {0, 1, 2, 3} )
- v( {1, 2, 3} ) = 0
v( {1, 3} ) - v( {3} ) = 0
(3, 2, 0, 1)v( {0, 2, 3} )
- v( {2, 3} ) = 1
v( {0, 1, 2, 3} )
- v( {0, 2, 3} ) = 0
(3, 2, 1, 0)v( {0, 1, 2, 3} )
- v( {1, 2, 3} ) = 0
v( {1, 2, 3} )
- v( {2, 3} ) = 1

Table 3 shows some initially confusing calculations in the last two columns, where each of these columns is defined for a given player. Suppose a player and a permutation are defined. For that permutation, let the set Sπ, i contain those players in the permutation π to the left of the given player i. The difference, in the last two columns, is the following, for i equal to 0 and to 1, respectively:

v(Sπ, i ∪ {i}) - v(Sπ, i)

The Shapley-Shubik power index, for a player, is the ratio of a sum to the number of permutations of players. And that sum is calculated for each player, as the sum over all permutations, of the above difference in the value of the value of the characteristic function.

If I understand correctly, given a permutation, the above difference can only take on values of 0 or 1. And it will only be 1 for one player, where that player determines whether the formation of the coalition in the order given will be a winning coalition. As a consequence, the Shapley-Shubik power index is guaranteed to sum over players to unity. In this case, power is a fixed amount, with each player being measured as having a defined proportion of that power.

5.0 Both Power Indices

The above has stepped through the calculation of two power indices, for all players, in a given game. Table 4 lists their values, as well as a normalization of the Penrose-Banzhauf power index such that the sum of the power, over all players, is unity. (I gather that the Penrose-Banzhauf index and the normalized index do not have the same properties.) As one might expect from the definition of the game, "my aunt" has more power than "me" in this game.

Table 4: The Penrose-Banzhaf and Shapley-Shubik Power Indices
PlayerPenrose-Banzhaf Power IndexShapley-Shubik
Power Index
IndexNormalized
06/16 = 3/86/12 = 1/212/24 = 1/2
12/16 = 1/82/12 = 1/64/24 = 1/6
22/16 = 1/82/12 = 1/64/24 = 1/6
32/16 = 1/82/12 = 1/64/24 = 1/6

In many voting games, the normalized Penrose-Banzhauf and Shapley-Shubik power indices are not identical for all players. In fact, suppose the rules for the above variation of Me and my Aunt voting game are varied. Suppose now that four votes - a supermajority - are needed to carry a motion. The normalized Penrose-Banzhaf index for player 0 becomes 1/3, while each of the other players have a normalized Penrose-Banzhaf index of 2/9. Interestingly enough, the Shapley-Shubik indices for the players do not change, if I have calculated correctly. But the values assigned to rows in Table 3 do sometimes vary. Anyways, that one tweak of the rules results in different power indices, depending on which method one adopts. A more interesting example would be one in which the rankings vary among power indices.

Other power indices, albeit less common, do exist. Which one is most widely applicable? I would think that mainstream economists, given game theory and marginalism, would tend to prefer the Shapley-Shubik power index. Felsenthal and Machover (2004) seem to be widely recognized experts on measures of voting power, and they have come to prefer the Penrose-Banzhaf index over the Shapley-Shubik index.

6.0 Where To Go From Here

I have described above a couple of power indices in voting games. As I understand it, many have tried to write down reasonable axioms that characterize power indices. One challenge is to specify a set of axioms such that your preferred power index is the only one that satisfies them. But, as I understand it, some sets of reasonable axioms are open insofar as more than one power index would satisfy them. I seem to recall a theorem that one could create a power index for a reasonable set of axioms such that whichever player you want in a voting game is the most powerful. Apparently, a connection can be drawn between a power index and a voting procedure. And Donald Saari boasts that he could create an apparently fair voting procedure that would result in whatever candidate you like being elected.

I gather that many examples of voting games have been presented in which apparently paradoxical or perverse results arise. And these do not seem to be merely theoretical results. Can I find some such examples? Perhaps, I should look here at some of Daron Acemoglu's work.

I am aware of three types of examples to look for. One is that of a dummy. A dummy is a player that, under the weights and the rule for how many votes are needed for passage, can never be decisive in a coalition. Whether this player drops out or joins a coalition can never change whether or not a resolution is passed, even though the player has a positive weight. A second odd possibility arises as the consequence of adding a new member to the electorate:

"...power of a weighted voting body may increase, rather than decrease, when new members are added to the original body." -- Steven J. Brams and Paul J. Affuso (1976).

A third odd possibility apparently can arise on a council when one district annexes another. Suppose, the district annexing the other consequently increases the weight of its vote accordingly. One might think a greater weight leads to more power. But, in certain cases, the normalized Penrose-Banzhaf index can decrease.

The above calculations for the Penrose-Banzhaf and Shapley-Shubik power indices treat all coalitions or permutations, respectively, as equally likely to arise. Empirically, this does not seem to be true. And this has an impact on how one might measure power. For example, since voting is unweighted on the Supreme Court of the United States, all justices might be thought to be equally powerful. But, because of the formation of well-defined blocks, Anthony Kennedy was often described as being particularly powerful in deciding court decisions, at least when Antonin Scalia was still alive. So empirically, one might include some assessment of the affinities of the players for one another and, thus, some influence on the probabilities of each coalition forming. This will have consequences on the calculation of power indices. But why stop there? In the United States these days, politicians only seem to represent the most wealthy.

Update: This page, from the University of Warwick, has links to utilities for calculating various power indices.

References
  • Steven J. Brams and Paul J. Affuso (1976). Power and Size: A New Paradox, Theory and Decision. V. 7, Iss. 1 (Feb.): pp. 29-56.
  • Dan S. Felsenthal and Moshé Machover (2004). Voting Power Measurement: A Story of Misreinvention, London Scool of Economics and Political Science
  • Andrew Gelman, Jonathan N. Katz, and Joseph Bafumi (2004). Standard Voting Power Indexes Do Not Work: An Empirical Analysis, B. J. Pol. S.. V. 34: pp. 657-674.
  • Guillermo Owen (1971) Political Games, Naval Research Logistics Quarterly. V. 18, Iss. 3 (Sep.): pp. 345-355.
  • Donald G. Saari and Katri K. Sieberg (1999). Some Surprising Properties of Power Indices.

Monday, April 11, 2016

Inane Responses To The Cambridge Capital Controversy

I consider the following views, if unqualified and without caveats, just silly:

  • The Cambridge Capital Controversy (CCC) was only attacking aggregate neoclassical theory.
  • The CCC is just a General Equilibrium argument, and it has been subsumed by General Equilibrium Theory. (Citing Mas Colell (1989) here does not help.)
  • The CCC does not have anything to say about partial, microeconomic models.
  • Perverse results, such as reswitching and capital-reversing, only arise in the special case of Leontief production functions. If you adopt widely used forms for production functions, the perverse results go away.
  • It is an empirical question whether non-perverse results follow from neoclassical assumptions. And nobody has ever found empirical examples of capital-reversing or reswitching.
  • Mainstream economists have moved on since the 1960s, and their models these days are not susceptible to the Cambridge critique.

I would think that one could not get such ideas published in any respectable journal. On the other hand, Paul Romer did get his ignorance about Joan Robinson into the American Economic Review

References
  • Andreu Mas-Colell (1989). Capital theory paradoxes: Anything goes. In Joan Robinson and Modern Economic Theory (ed. by George R. Feiwel), Macmillan.

Saturday, March 19, 2016

Post Keynesianism From The Outside

Post Keynesian economics has been under development for about three quarters of a century now. Academics in countries around the world have made contributions to the theory and to its application. And they have participated in many common practices of academics, including economists1.

Post Keynesians have written and published papers in peer-reviewed journals. Over this time-span, such journals include widely referenced mainstream journals, such as the American Economic Review, the Economic Journal, the Journal of Economic Literature, the Journal of Political Economy, and the Quarterly Journal of Economics2. Lately, certain specialized journals have proven more sympathetic to publishing Post Keynesians. Such journals include, for example, the Cambridge Journal of Economics, the Journal of Post Keynesian Economics, Kyklos, and the Review of Political Economy. The list suggests two other activities: the founding and editing of journals. As I understand it, Joan Robinson, among other economists now thought of as Post Keynesian, participated in the founding of the Review of Economic Studies, while the Review of Keynesian Economics is a more recent academic journal with an analogous start. The Banca Nazionale del Lavoro Quarterly Review, the Canadian Journal of Economics, and Metroeconomica are some journals, while not being specifically heterodox, I guess, had Post Keynesians as editors for some time3, 4.

Participation in professional societies, as officers, as organizers of conferences and conference sessions, and as presenters at conferences, provides another typical venue for academic activities. Naturally, Post Keynesians have performed such activities. For example, John Kenneth Galbraith was president of the American Economic Society, and the annual meeting of the Allied Social Sciences Association (ASSA), held in conjunction with the American Economics Association, regularly holds sessions dedicated to Post Keynesian topics. Recently, heterodox economics have become interested in pluralism and how their concerns overlap. These concerns have been reflected in much work in many professional societies relating to heterodox economics.

I began this article with journal publications because economics has become less focused on books and more focused on journal publications during the period in which Post Keynesianism grew. But during this period, Post Keynesians have also made original contributions in books published by prestige university and academic presses. I think, for example, of presses associated with Cambridge, Columbia, and Harvard, to pick some examples at random5.

After decades of work, a need will arise to introduce others to it. And Post Keynesians have addressed this need with anthologies of classic papers, introductory works for other economists, and textbooks. One can also find Post Keynesians editing, or participating in the development, of standard reference works6.

On a more local level, Post Keynesian economists have participated in the governance of economic departments around the world7. And they have provided governments with advice many a time, from within and without8.

I have deliberately not written about substantial Post Keynesian ideas in this post. If one is aware of the history mentioned in this post, even if one had never been exposed to Post Keynesian ideas, one must conclude Post Keynesian theory is much like any other set of academic ideas. One would have difficulty in seeing how academics could justify dismissing these ideas without engaging with them Likewise, one might wonder how, perhaps, those aspiring to be professional economists might not even be exposed to Post Keynesianism in gaining a post graduate degree. Yet, apparently, such a happenstance seems to be not at all rare among mainstream economists.

Footnotes
  1. I recognize my post is biased towards the English language. It is also quite impressionistic and selective. I am taking Sraffians as Post Keynesians for the purposes of this post.
  2. Major contributions to the Cambridge Capital Controversy are to be found in these journals.
  3. For example, Paolo Sylos Labini for the Banca Nazionale del Lavoro Quarterly Review, Athanasios Asimakopulos for the Canadian Journal of Economics, and Neri Salvadori for Metroeconomica.
  4. For what it is worth, I am published in the Manchester School.
  5. How would one characterize Edward Elgar and Routledge, for example?
  6. The first edition of the New Palgrave is an obvious example.
  7. Economics at Cambridge University is an obvious case. Albert Eichner chairing the Rutgers economics department is another case.
  8. Examples include Nicholas Kaldor's work with the Radcliffe Committee, John Kenneth Galbraith giving advice to John F. Kennedy, the advocacy of Tax-based Income Policies (TIPs) in the 1970s to fight stagflation, and policy suggestions associated with Modern Monetary Theory (MMT).

Wednesday, March 02, 2016

Romer And Romer Stumble

A debate has recently arisen about Gerald Friedman's analysis of Bernie Sanders' proposed economic program. In a welcome turn of events, two defenders of the establishment, Christina and David Romer, finally offer some substance, instance of just relying on their authority as Very Serious People.

In this post, I ignore most of the substance of the argument. I want to focus on three errors I find in this passage:

"Potentially more worrisome are the extensive interventions in the labor market. The experiences of many European countries from the 1970s to today show that an overly regulated labor market can have severe consequences for normal unemployment. There are strong arguments for raising the minimum wage; and over the range observed historically in the United States, the short-run employment effects of moderate increases appear negligible. But doubling the minimum wage nationwide, adding new requirements for employer-funded paid vacations and sick leave, and increasing payroll taxes substantially would take us into uncharted waters. Obviously, these changes would not bring the United States all the way to levels of labor market regulation of many European countries in the 1970s. But they are large enough that one can reasonably fear that they could have a noticeable impact on capacity growth." -- Christina D. Romer and David H. Romer, Senator Sander's Proposed Policies and Economic Growth (5 February 2016) p. 10-11.

First, the reference to "interventions in the labor market" and an "overly regulated labor market" imposes a false dichotomy. An unregulated labor market cannot exist. Certainly this is so in an advanced capitalist economy. Possible choices are among sets of regulations and norms, not among intervention or not. Calling one set of regulations an example of government non-intervention is to disguise taking a side under obfuscatory verbiage.

Second, Romer and Romer presuppose a consensus about the empirical effects of different regulations on the labor market in Europe and the United States that I do not think exists. If I wanted to find empirically based arguments countering Romer and Romer's claim, I would look through back issues of the Cambridge Journal of Economics. Perhaps at least one of these articles might be helpful.

Third, Romer and Romer suggest that, given the set of regulations they like to think of as government non-intervention, markets for labor and goods would have a tendency to clear. Otherwise, economic growth would be jeopardized. No theoretical foundation exists for thinking so.

Even the best mainstream economists seem incapable of writing ten pages without spouting ideological claptrap and propagating silly errors exposed more than half a century ago. Something seems terribly wrong with economics profession.

Monday, February 29, 2016

Conservatism According to Corey Robin

I have been re-reading Corey Robin's The Reactionary Mind. According to this book, defending arbitrary hierarchies is the first priority among conservatives. They believe:

  • Workers should obey their masters.
  • Wives should obey their husbands.
  • Downtrodden ethnic groups should obey socially privileged ethnic groups.
  • The laity should obey priests.
  • The non-affluent should show proper deference towards those with great wealth (who could never be malefactors).

These hierarchies have implications for daily lives, not just political rule. For the right, liberty is liberty for the rulers to do as they will, not for those who suffer what they must.

I deliberately do not write about slavery. According to Robin, conservatism is literally reactionary. Conservatives defend hierarchies that are currently threatened or recently overthrown. They focus on restoring what was recently lost. Maybe this has something to do with widespread fear and resentment on the right.

Conservatives often do not have admiration for the rulers of the ancient regime. If those rulers were willing to do what needed to be done to preserve their power, the threats would never have gotten so far, and losses would not have been suffered. The conservative, unlike his popular and complimentary image, is willing to make radical changes so as to reconstruct society as it once was. This seems to go along with the awareness of some contemporary neoliberals that market societies are not natural formations, but must be constructed and maintained by state power. But is this aping of the left consistent with the conservative's encouragement of anti-intellectualism and stupidity? Perhaps the idea is that only an elite need understand the goal, while widespread ignorance among the masses can only help the cause.

The hierarchies that conservatives seek to defend or restore are not meritocracies, in the sense that those on top are expected to have superior intellect, wisdom, or morals. Rulers should demonstrate their fitness to rule by seizing what they can, in war or business. Maybe this has something to do with why many conservatives endorse the supposed "free market", without worrying about externalities, information asymmetries, transaction costs, or market power. One can also see here an echo of Friedrich Nietzsche's overman.

Much of the above comes from the introduction and first couple of chapters of Robin's book. Much of the rest consists of case studies of particular thinkers and polemicists.

Reference

Wednesday, February 17, 2016

Classification of Finite Simple Groups: A Proved Theorem?

Figure 1: Lattice Diagram for Group of Symmetries of the Square
"I shall now mention something I obviously do not understand." - Ian Hacking (2014, p. 18)
1.0 Introduction

This has nothing to do with economics. It is my attempt to get my mind around a place where I can get a glimmer of some exciting mathematics being done in my lifetime.

Mathematicians have stated a theorem for classifying finite simple groups. Whether they have proven this theorem is an intriguing question in the philosophy of mathematics.

A finite simple group is a group with a finite number of elements and no proper normal subgroup. This definition contains several technical terms. In this post, I try to explain these terms and the setting of the theorem for classifying simple groups. This preamble raises several questions:

  • What is a group? A proper subgroup? A normal subgroup?
  • How can a finite, non-simple group be factored into a composition of simple groups?

I try to clarify the answers to these questions by means of a lengthy example. You can probably find this better expressed elsewhere. In working this out, I relied heavily on Fraleigh's textbook, which is the only book in the references that I have read, albeit mostly in the second edition.

2.0 The Group of Symmetries of the Square

A group is a generalization, in some sense, of a multiplication table. Formally, it is a set with a binary operation, in which the binary operation satisfies three axioms. A finite group is a group in which the set contains a finite number of elements.

To illustrate, I consider the set of symmetries of the square (Figure 2). These eight elements of the set are like the numbers along the top and left side of a multiplication table. Each element is an operation that can be performed on a square, leaving the square superimposed on itself. Each operation is described in the right column of Figure 2. The third column provides a picture of the operation. The four vertices of the square are numbered so that one can see the result of the operation. The second column specifies each operation as a permutation of the numbered vertices. The first row in each permutation lists the vertices, while the second row shows which of the original vertices ends up in the place of each vertex. The first column introduces a notation for naming each operation. The remainder of this post is expressed in this notation.

Figure 2: Elements of a Group

The group operation, *, is function composition. Let a and b be elements of the set {ρ0, ρ1, ρ2, ρ0, μ0, μ1, σ0, σ1}. The product a*b is defined to be the single operation that is equivalent to first performing the operation a on the square and then performing the operation b on the result. (Many textbooks define functional composition from right-to-left, instead.) Table 1 is the multiplication table for this group, under these definitions. For example, rotating a square 90 degrees clockwise twice is equivalent to rotating the square clockwise through 180 degrees. Thus:

ρ1 * ρ1 = ρ2
Table 1: The Group D4
*ρ0ρ1ρ2ρ3μ0μ1σ0σ1
ρ0ρ0ρ1ρ2ρ3μ0μ1σ0σ1
ρ1ρ1ρ2ρ3ρ0σ0σ1μ1μ0
ρ2ρ2ρ3ρ0ρ1μ1μ0σ1σ0
ρ3ρ3ρ0ρ1ρ2σ1σ0μ0μ1
μ0μ0σ1μ1σ0ρ0ρ2ρ3ρ1
μ1μ1σ0μ0σ1ρ2ρ0ρ1ρ3
σ0σ0μ0σ1μ1ρ1ρ3ρ0ρ2
σ1σ1μ1σ0μ0ρ3ρ1ρ2ρ0

A group is defined by the following three axioms:

  • The binary operation in the group is associative. That is, for all a, b, and c in the group:
(a * b) * c = a * (b * c)
  • The group contains an identity element. There exists an element e in the group such that for all a in the group:
e * a = a * e = a
  • Every element of the group has an inverse. For all a in the group, there exists an element a-1 in the group such that:
a * a-1 = a-1 * a = e

Associativity is tedious to check for D4. Associativity implies that one can drop parenthesis below. ρ0 is the identity element. Every row and column in the multiplication table for D4 contains ρ0; thus, every element has an inverse.

An Abelian group is one in which the binary operation is commutative. The group of symmetries of the square is not Abelian. For an Abelian group, the multiplication table is symmetric across the principal diagonal; it does not matter to the result in which order one performs the operation for two arguments. The following two equations illustrates that D4 is not Abelian:

μ01 = σ1
ρ10 = σ0

In words, flipping a square around its horizontal axis of symmetry and then rotating it ninety degrees clockwise is not equivalent to rotating it ninety degrees clockwise and then then reflecting it across that axis. The result of the first composition of operations is equivalent to reflecting the square across the diagonal axis of symmetry running from the south west to the north east. The second composition of operations is equivalent to flipping the square across the other diagonal.

One can also set up equations in a group, for example:

ρ12*x = μ0

Then x must be σ0. Solving a Rubik's cube is analogous to solving such an equation.

3.0 Proper and Improper Subgroups

Some rows and columns in Table 1 can stand alone as a group. The entries in these restricted row and columns all appear as headings in the rows and columns. These entries form a subgroup of the original group. One-fourth of the table in the upper left of Table 1 provides an example. {ρ0, ρ1, ρ2, ρ3} is a subgroup of D4 (Table 2).

Table 2: A Subgroup of D4 with Four Elements
*ρ0ρ1ρ2ρ3
ρ0ρ0ρ1ρ2ρ3
ρ1ρ1ρ2ρ3ρ0
ρ2ρ2ρ3ρ0ρ1
ρ3ρ3ρ0ρ1ρ2

The group D4 has ten subgroups, as shown in the Lattice Diagram in Figure 1 above. Subgroups have been defined such that, for any group G, the group G is a subgroup of itself. Another trivial case, the one-element group consisting of the identity element, also provides a subgroup of G. These two subgroups are known as improper subgroups. All other subgroups are proper subgroups.

One can make a couple of observations about subgroups. The binary operation in the group is the same as the binary operation in the subgroup. The property of associativity carries over from the group to the subgroup. Since a subgroup is a group, it must contain an identity element. And that identity element must also be the identity element for the group containing the subgroup. Thus, every subgroup of D4 contains ρ0. Likewise, for every element of a subgroup, the subgroup must also contain its inverse. Finally, the number of elements in a subgroup must evenly divide the number of elements in the group.

I have shown above how the eight elements of D4 can be defined in terms of permutations. As a matter of fact, the set of permutations of (1, 2, ..., n) form a group under the operation of function composition. This permutation group is designated as Sn, and it contains n! elements. Thus, S4 contains 24 (= 4x3x2x1) elements. Not only can one find all the subgroups of D4, one can extend the group such that D4 is a subgroup of that extended group.

4.0 Isomorphic Groups

In a group, the order of rows and columns in the multiplication table are of no matter. Likewise, the names of the elements are irrelevant to the structure of the group. Two groups are isomorphic if the multiplication table for one group can be mapped into the multiplication table for another group by reordering and renaming the elements of, say, the first group. As an example, consider the groups {ρ0, ρ2, μ0, μ1} and {ρ0, ρ2, σ0, σ1}. They each have the same number of elements, which is necessary for an isomorphism. Table 3 defines the group operation for the first group. Suppose that, in Table 3, μ0 is renamed σ0, and μ1 is renamed σ1 throughout. The resulting table will match the operation for the second group. Thus, the two groups are isomorphic.

Table 3: The Group {ρ0, ρ2, μ0, μ1}
*ρ0ρ2μ0μ1
ρ0ρ0ρ2μ0μ1
ρ2ρ2ρ0μ1μ0
μ0μ0μ1ρ0ρ2
μ1μ1μ0ρ2ρ0

The groups in Tables 2 and 3 are NOT isomorphic. They each contain four elements. Each element, however, in the group in Table 3 is its own inverse. This is an algebraic property, preserved no matter how the elements of the group are renamed. And the group in Table 2 does not have this property. As a matter of fact, only two groups containing four elements exist, up to an isomorphism. In other words, any group with four elements is isomorphic to either the group in Table 2 or to the group in Table 3.

Furthermore, only one group, up to isomorphism, contains two elements. Its operation is defined by Table 4. All the subgroups of D4 containing two elements are isomorphic to this group and, ipso facto, to each other. The text colors of the subgroups in the lattice diagram (Figure 1) express these isomorphisms.

Table 4: The Unique Group (Up To Isomorphism) With Two Elements
*01
001
110
5.0 Normal Subgroups, Factor Groups, and Homomorphisms

Certain additional patterns are apparent in Table 1. I have already pointed out that the first four rows and columns constitute the subgroup with the operation shown in Table 2. Notice that none of the entries in the last four columns for the first four rows are in this subgroup. Likewise, none of the entries in the first four columns for the last four rows are in this subgroup. On the other hand, the entries in the remaining rows and columns in the lower right are all in this subgroup. Can you see that these observations reveal the pattern expressed in Table 4? Mathematicians express this by saying that the factor group D4/{ρ0, ρ1, ρ2, ρ3} is isomorphic to the group with two elements.

A subgroup is normal if it can be used to divide up the rows and columns in the multiplication table for the group like this. For another example, consider the subgroup {ρ0, ρ2}. Table 5 shows a reordering of the rows and columns in Table 1 to facilitate the calculation of the factor group for this subgroup. Consider dividing this grid up into 16 blocks of two rows and two columns each. Each block will contain two elements of the group D4, and which element is paired with each element does not vary among these blocks.

Table 5: The Group D4 Reordered
*ρ0ρ2ρ1ρ3μ0μ1σ0σ1
ρ0ρ0ρ2ρ1ρ3μ0μ1σ0σ1
ρ2ρ2ρ0ρ3ρ1μ1μ0σ1σ0
ρ1ρ1ρ3ρ2ρ0σ0σ1μ1μ0
ρ3ρ3ρ1ρ0ρ2σ1σ0μ0μ1
μ0μ0μ1σ1σ0ρ0ρ2ρ3ρ1
μ1μ1μ0σ0σ1ρ2ρ0ρ1ρ3
σ0σ0σ1μ0μ1ρ1ρ3ρ0ρ2
σ1σ1σ0μ1μ0ρ3ρ1ρ2ρ0

These observations can be formalized by the function defined in Table 6. For an element a of D4, let f(a) denote the map defined in Table 6. To find the value of this function, locate a in the first column. Whether this value is 0, 1, 2, or 3 is determined by the corresponding entry in the second column. For all a and b in D4:

f(a * b) = f(a) o f(b)

A map from one group to another with this property is a homomorphism. An isomorphism is a homomorphism, but a homomorphism is a more general concept. Homomorphisms do not need to leave the number of elements in the group invariant.

Table 6: A Homomorphism from D4 to {0, 1, 2, 3}
Elements of D4Image
ρ0, ρ20
ρ1, ρ31
μ0, μ12
σ0, σ13

The factor group D4/{ρ0, ρ2} is easily calculated. Replace each element of D4 in Table 5 by its image under the homomorphism in Table 6. Collapse each pair of rows and columns. One ends up with Table 7, where I have renamed the group operation, as above. The factor group D4/{ρ0, ρ2} is isomorphic to the group with four elements with the operation shown in Table 3 above. The number of elements in a factor group is the quotient of the number of elements in the original group and the number of elements in the subgroup used to form the factor group.

Table 7: The Factor Group D4/{ρ0, ρ2}
o0123
00123
11032
22301
33210

The two improper subgroups for any group are normal and yield trivial factor groups. The factor group D4/D4 is isomorphic to the one-element group whose only member is the identity element. The factor group D4/{ρ0} is isomorphic to D4. The factor groups for improper subgroups provide no information about the structure of a group.

6.0 A Subgroup that is Not Normal

Not all subgroups are normal. The subgroup {ρ0, μ0}, for example, is not a normal subgroup of D4. Table 8 proposes a map from the elements of the group to the first four natural numbers. And Table 9 illustrates another reordering of the rows and columns in Table 1, with the entries replaced by the natural numbers to which they map. If one confines oneself to the first two columns, each pair of rows could be collapsed into one, with the label from the row taken from the map. But this process breaks down for the next two and the last two columns.

Table 8: A Map from D4 to {0, 1, 2, 3} that is Not a Homomorphism
Elements of D4Image
ρ0, μ00
ρ1, σ01
ρ2, μ12
ρ3, σ13
Table 9: Another Reodering of The Group D4
*ρ0μ0ρ1σ0ρ2μ1ρ3σ1
ρ000112233
μ000332211
ρ111223300
σ011003322
ρ222330011
μ122110033
ρ333001122
σ133221100

Suppose a subgroup contains n elements. To determine if the subgroup is normal, it is sufficient to examine the first n rows and the first n columns in the reordered table. This capability follows from a theorem about what are known as left and right cosets for a subgroup.

The permuation group S4 provides another example of a subgroup that is not normal. By my calculations, D4 is NOT a normal subgroup of S4.

7.0 The Composition Series of a Group

At this point, I have completed my explanation of the lattice diagram at the top of this post, including circles, text colors, and boxes. I draw from these results to illustrate how a non-simple group, namely D4, can be expressed as a composition of factor groups.

Table 10 lists twelve series of subgroups of the group of symmetries of the square. Each series has the following properties:

  • The leftmost group in the series is the one-element group containing the identity element.
  • The rightmost group is D4.
  • Each group in the series (except D4) is a proper normal subgroup of the group immediately to the right of it in the series.

A series with these properties is known as a subnormal series of the group D4. If every group in the series is also a normal subgroup of D4, the series is a normal series of the group D4. By the last property in the bulleted list, one can calculate a factor group for each pair of immediately successive groups in the series.

Table 10: Twelve Normal and Subnormal Series for D4
Number
Factor Groups
SeriesNormal
Series
10} < D4Yes
20} < {ρ0, ρ1, ρ2, ρ3} < D4Yes
20} < {ρ0, ρ2, μ0, μ1} < D4Yes
0} < {ρ0, ρ2, σ0, σ1} < D4Yes
0} < {ρ0, ρ2} < D4Yes
30} < {ρ0, ρ2} < {ρ0, ρ1, ρ2, ρ3} < D4Yes
0} < {ρ0, ρ2} < {ρ0, ρ2, μ0, μ1} < D4Yes
0} < {ρ0, ρ2} < {ρ0, ρ2, σ0, σ1} < D4Yes
0} < {ρ0, μ0} < {ρ0, ρ2, μ0, μ1} < D4No
0} < {ρ0, μ1} < {ρ0, ρ2, μ0, μ1} < D4No
0} < {ρ0, σ0} < {ρ0, ρ2, σ0, σ1} < D4No
0} < {ρ0, σ1} < {ρ0, ρ2, σ0, σ1} < D4No

The definition of an isomorphism for a subnormal series builds on the definition of isomorphism for groups. Consider the factor groups arising in each series from successive pairs of subgroups in each series. Two series are isomorphic if they contain the same of number of factor groups, in this sense, and these factor groups are isomorphic. The order in which the factor groups arise can vary among isomorphic subnormal series.

I have collected isomorphic series together, in Table 10, by means of horizontal lines in the first column. The series with one factor group is not isomorphic to any other series. The first series shown with two factor groups is not isomorphic to the other three series with two factor groups. And those three series are isomorphic to one another. All of the series with three factor groups are isomorphic to one another.

The series with three factor groups have another property. All factor groups in these series with three factor groups are simple groups. That is, they contain no proper normal subgroups. A subnormal series of a group in which all factor groups formed by the series are simple is known as a composition series. By the Jordan-Hölder Theorem, all compositions series for a group are isomorphic series. This theorem justifies one in speaking of THE composition series for a group. Finding the factor groups in a the composition series for a group is somewhat analogous to factoring a natural number. Note that D4 contains eight elements and each of the three factor groups in the composition series contain two elements. Furthermore,

8 = 23

For a natural number, the prime factors can be combined to yield the original number. Here the analogy apparently breaks down. The factor groups in a composition series for a group constrain the structure of the group, but two non-isomorphic groups can have the same composition series. But still, mathematicians have solved various problems in group theory for finite non-simple groups by use of the classification of finite simple groups.

Composition series apparently have an application in solving polynomial equations. The composition series for the permutation group S5 contains a factor group that is non-Abelian. This is connected with the insolvability of the quintic. There are formulas for zeros for cubic and fourth order polynomial, analogous to the quadratic formula. But there is no such formulas for poynomials of the fifth degree and higher.

8.0 Classification of Finite Simple Groups

At this point, I have explained how finite simple groups arise as factor groups for the composition series of any finite group. I hope that this gives some hint of why the following theorem is of interest.

Theorem: Each finite simple group is one of the following, up to an isomorphism:

  • A group of prime order.
  • An alternating group.
  • A Lie group.
  • One of 26 sporadic groups not otherwise classified.

I am aware that this this theorem uses technical terms I still have not explained, including one that I simply do not understand myself.

The sporadic groups are finite simple groups that do not fall into the other categories, although, I gather, some sporadic groups are related to one another.The sporadic group with the largest number of elements is called the Monster group. It has 808,017,424,794,512,875,886,459,904,961,710,757,005,754,368,000,000,000 elements.

9.0 History of the Theorem

In 1972, Daniel Gorenstein proposed that mathematicians could complete a classification of all simple groups. By the early 1980s, mathematicians had stated the theorem and those specialists who had pursued Gorenstein's program believed they had proven it. The proof, however, was scattered among (tens of?) thousands of pages in hundreds(?) of papers in many mathematics journals. No one person had probably ever understood the proof or read it in its entirety.

The proof, however, was discovered even then to be incomplete. Steve Smith and Michael Aschbacher worked on closing this gap, relating to quasithin groups. They succeeded by 2004.

Meanwhile, a number of mathematicians have been trying to simplify the proof and to restate it in one location. The ambition of these mathematicians is to produce a "second generation" proof of only a couple thousand pages.

Has a theorem been proven if only one or two mathematicians have read the proof in its entirety? How about if nobody has, which would have been the case in the 1980s if the proof had indeed been valid? Certainly, the proof of the classification theorem is not surveyable, in Wittgenstein's sense. Do mathematical results need to be established by a social process? If so, how can such social processes be characterized?

Appendix: Terms Defined or Illustrated Above

Abelian group, Associativity, Composition Series, Factor Group, Finite Group, Group, Homomorphism, Identity Element, Improper Subgroup, Inverse, Isomorphic Groups, Isomorphic Subnormal Series, Lattice Diagram, Normal Series, Normal Subgroup, Permutation Group, Proper Subgroup, Subgroup, Subnormal Series.

References
  • Michael Aschbacher (2004). The Status of the Classification of the Finite Simple Groups, Notices of the AMS, V. 51, No. 7 (Aug.): pp. 736-740.
  • Michael Aschbacher, Richard Lyons, Stephen D. Smith, and Ronald Solomon (2011). The Classification of Finite Simple Groups: Groups of Characteristic 2 Type, American Mathematical Society.
  • Nicolas Bourbaki (1943). Elements of Mathematics: Algebra I: Chapters 1-3.
  • J. H. Conway and S. P. Norton (1979). Monstrous Moonshine, Bulletin of the London Mathematical Society, V. 11, no. 3: pp. 308-339.
  • John B. Fraleigh (2002). A First Course in Abstract Algebra, 7th Edition, Pearson.
  • Daniel Gorenstein, Richard Lyons, and Ronald Solomon (1994). The Classification of the Finite Simple Groups, American Mathematical Society.
  • Ian Hacking (2014). Why is there Philosophy of Mathematics at all?, Cambridge University Press.
  • Daniel Kunkle and Gene Cooperman (2007). Twenty-Six Moves Suffice for Rubik's Cube, ISSAC'07, 29 Jul. - 1 Aug., Waterloo, Canada.
  • Tomas Rokicki (2008). Twenty Five Moves Suffice for Rubik's Cube.