Chris Morgan

I’m a software developer, dealing mostly in web things.

I’m also (more importantly) a committed Christian—please talk to me at any time about that.

Elsewhere

Blindly random (or: old stories + computers = ?)

Have you ever wondered what the storytellers of yore would have done if computers had been in common usage? Events featuring randomness—or more commonly things that are supposed to be random but are in fact rigged—occur regularly in their tales. All of a sudden, there would be a more reasonable basis upon which their characters might start choosing random things.

A statement and an admission

This article is not intended to be taken seriously and has no practical application nor even any deep and meaningful lessons that should be learned from it.

As it happens, I am one who finds making arbitrary decisions rather difficult at times—something close to true randomness makes things easier. I do actually use Python’s random module (especially random.choice) quite frequently.

Now on with business.

Blind selection

One pattern of supposed randomness is to blindfold a person, allowing them to make an arbitrary selection. This is, of course, not a particularly good technique for randomness.

To demonstrate this, let us take as an example an episode near the start of The Gondoliers, by Gilbert and Sullivan.

In some curious manner, it happens that two of these gondolieri are selecting brides from a chorus of two dozen. How do they go about it? Well, as persons learned in the trade of a timoneer, this is how Gilbert had it run:

(You can get recordings of the songs for the entire opera from The Internet Archive; the libretti quoted here form most of tracks eight and nine of that set. If you like Gilbert and Sullivan, they’ve got a fairly good set of recordings there now.)

RECITATIVE—Marco and Giuseppe.
Mar.
And now to choose our brides!
Giu.
As all are young and fair,
And amiable besides,
Both.
We really do not care
A preference to declare.
Mar.
A bias to disclose
Would be indelicate—
Giu.
And therefore we propose
To let impartial Fate
Select for us a mate!
All.
Viva!
Girls.
A bias to disclose
Would be indelicate—
Men.
But how do they propose
To let impartial Fate
Select for them a mate?
Giu.
These handkerchiefs upon our eyes be good enough to bind,
Mar.
And take good care that both of us are absolutely blind;
Both.
Then turn us round—and we, with all convenient despatch,
Will undertake to marry any two of you we catch!
All.
Viva!
They undertake to marry any two of us/them they catch!
(The Girls prepare to bind their eyes as directed.)
Fia. (to Marco).
Are you peeping?
Can you see me?
Mar.
Dark I’m keeping,
Dark and dreamy! (Marco slyly lifts bandage.)
Vit. (to Giuseppe).
If you’re blinded
Truly, say so.
Giu.
All right‐minded
Players play so! (slyly lifts bandage.)
Fia. (detecting Marco).
Conduct shady!
They are cheating!
Surely they de‐
Serve a beating! (replaces bandage.)
Vit. (detecting Giuseppe).
This too much is;
Maidens mocking—
Conduct such is
Truly shocking! (replaces bandage.)
Girls.
You can spy, sir!
Shut your eye, sir!
You may use it by and by, sir!
All.
You can see, sir!
Don’t tell me, sir!
That will do—now let it be, sir!
Chorus of Girls.
My papa he keeps three horses,
Black, and white, and dapple grey, sir;
Turn three times, then take your courses,
Catch whichever girl you may, sir!
Chorus of Men.
My papa, etc.
(Marco and Giuseppe turn round, as directed, and try to catch the girls. Business of blind‐man’s buff. Eventually Marco catches Gianetta, and Giuseppe catches Tessa. The two girls try to escape, but in vain. The two men pass their hands over the girls’ faces to discover their identity.)
Giu.
I’ve at length achieved a capture!
Giu. (Guessing.)
This is Tessa! (removes bandage.) Rapture, rapture!
Chorus.
Rapture, rapture!
Mar. (guessing.)
To me Gianetta fate has granted! (removes bandage.)
Just the very girl I wanted!
Chorus.
Just the very girl he wanted!
Giu. (politely to Mar.).
If you’d rather change—
Tess.
My goodness!
This indeed is simple rudeness.
Mar. (politely to Giu.).
I’ve no preference whatever.
Gia.
Listen to him! Well, I never!
(Each man kisses each girl.)

Is there cheating taking place here in the final selection? It is difficult to say; certainly in a stage production there can be little doubt that there is cheating. (I wonder what a stage production which let them catch the wrong girl would do?)

How might it have run differently?

Let us suppose for a moment that these persons called gondolieri (but that’s a vagary, it’s quite honorary, the trade that they ply) are in fact software developers.

They realise that blind man’s buff is not exactly a high quality source of entropy. Probably they had read Charles Dickens’ A Christmas Carol, published some 46 years earlier:

There was first a game at blind‐man’s buff. Of course there was. And I no more believe Topper was really blind than I believe he had eyes in his boots. My opinion is, that it was a done thing between him and Scrooge’s nephew; and that the Ghost of Christmas Present knew it. The way he went after that plump sister in the lace tucker, was an outrage on the credulity of human nature. Knocking down the fire‐irons, tumbling over the chairs, bumping against the piano, smothering himself among the curtains, wherever she went, there went he! He always knew where the plump sister was. He wouldn’t catch anybody else. If you had fallen up against him (as some of them did), on purpose, he would have made a feint of endeavouring to seize you, which would have been an affront to your understanding, and would instantly have sidled off in the direction of the plump sister. She often cried out that it wasn’t fair; and it really was not. But when at last, he caught her; when, in spite of all her silken rustlings, and her rapid flutterings past him, he got her into a corner whence there was no escape; then his conduct was the most execrable. For his pretending not to know her; his pretending that it was necessary to touch her head‐dress, and further to assure himself of her identity by pressing a certain ring upon her finger, and a certain chain about her neck; was vile, monstrous! No doubt she told him her opinion of it, when, another blind‐man being in office, they were so very confidential together, behind the curtains.

Here, then, is how it might have gone:

Men. But how do they propose To let impartial Fate Select for them a mate? Giu. These lines of code upon our machines be good enough to load, Mar. And take good care that the randomness is absolutely sowed; Both. Assess the code to verify its truly is correct; We’ll undertake to marry each the one it does select! (The rest is left to your imagination. What can you come up with?)

… and clearly, if they want to rig the result, they will have to try quite a bit harder than the regular gondolieri did in the days of long ago.

Poorly specified interpretation rules

That was a case where everyone knew the rules. But what can happen when the rules are not known by everyone? All of a sudden, one person can take advantage of another.

Take this example which appears in the eighth story in Nonsense Novels, by Stephen Leacock, Soaked in Seaweed: or, Upset in the Ocean (An Old‐Fashioned Sea Story):

Then day after day we sat in moody silence, gnawed with hunger, with nothing to read, nothing to smoke, and practically nothing to talk about.

On the tenth day the Captain broke silence.

“Get ready the lots, Blowhard,” he said. “It’s got to come to that.”

“Yes,” I answered drearily, “we’re getting thinner every day.”

Then, with the awful prospect of cannibalism before us, we drew lots.

I prepared the lots and held them to the Captain. He drew the longer one.

“Which does that mean,” he asked, trembling between hope and despair. “Do I win?”

“No, Bilge,” I said sadly, “you lose.”

The conclusion of this story (which follows shortly afterwards) is thus predicated upon this miscarriage of randomness. Captain Bilge is uncertain of the correct interpretation of lots, and so the interpretation is left to Blowhard, who, the suspicious reader may guess, takes advantage of this fact—“heads I win, tails you lose”. Just imagine what it would lengths Leacock would have had to go to to sustain the ending which he does if they had used an unambiguous representation of the randomness. The obvious thing would be to use numbers and have Bilge not know which was which. But that’s far too obvious; let their random number generation at least yield a name.

Then day after day we sat in moody silence, gnawed with hunger, with nothing to read, nothing to smoke, and practically nothing to talk about.

On the tenth day the Captain broke silence.

“Get ready the random number generator, Blowhard,” he said. “It’s got to come to that.”

“Yes,” I answered drearily, “we’re getting thinner every day.”

Then, with the awful prospect of cannibalism before us, we drew metaphorical lots.

I prepared the code and the Captain executed it. His name came out.

$ python
Python 0.3 (default, Jan 1 1911, 00:00:00)
[GCC 0.1.2] on paper1
Type "help", "copyright", "credits" or "license" for more information.
>>> import random
>>> random.choice(('Bilge', 'Blowhard'))
'Bilge'

“Which does that mean,” he asked, trembling between hope and despair. “Do I win?”

“No, Bilge,” I said sadly, “you lose.”

… hmm, maybe the storytellers of the day could have coped with computers after all.

Comments? Questions? Corrections? If you want to contact me about anything in this post, write to me at @__chrismorgan or email me.