I'm rebooting my undergraduate and graduate reading, which will involve a lot of old literature, philosophy, and math (side question: when did SJC get the sjc.edu domain?) on the one hand and a lot of electrical engineering stuff on the other.

I'm starting today with the Iliad, book 1. I've chosen Lombardo's translation for this read-through. It wasn't available when I was in college, and I've read it once since then, but not very closely.

Lombardo's aim was to make a declaimable poem; apparently he has (or at least had) his translation memorized and would recite it in public a lot. I think that's a neat idea. He also attempts to have a high agree of fidelity to line numbers in Homer, which is intriguing.

He renders the first line:

The Greek words (translated) would be "Rage sing Goddess of-Peleus of-Achilles",

Running thoughts as I read the first book:

Anyways, that's my takeaway for the day from Book 1. I hope to keep doing snippet-style posts like these and then write anything longer-form as I think of it.

I'm starting today with the Iliad, book 1. I've chosen Lombardo's translation for this read-through. It wasn't available when I was in college, and I've read it once since then, but not very closely.

Lombardo's aim was to make a declaimable poem; apparently he has (or at least had) his translation memorized and would recite it in public a lot. I think that's a neat idea. He also attempts to have a high agree of fidelity to line numbers in Homer, which is intriguing.

He renders the first line:

Rage: Sing, Goddess, Achilles' rage

The Greek words (translated) would be "Rage sing Goddess of-Peleus of-Achilles",

*ie*, "Goddess, sing about the rage of Achilles who was from Peleus". But the word order is almost as weird in Greek as it is in English. You normally do not put the object of a transitive verb first, but that is how Homer started. Interestingly, Lombardo leaves out Peleus (Achilles's father) entirely from the stanza.Running thoughts as I read the first book:

- The illness starts as a punishment for rape, but because of the dishonor it does to the victim's father rather than her
- The plague strikes animals first and then humans
- Hera likes the Greeks but we do not know why
- Achilles is a fast runner but he does not seem to run anywhere
- There is this running gag in Greek poetry of people paying for prophets and then ignoring them
- But Agammemnon
*does*believe Calchas's prophesy, he is just pissed that he has to give Chryseis (incidentally -- Ancient Greeks need more distinguishable names) up - Achilles claims Agammemnon never actually fights -- rhetorical device, or true?
- This is a much more compact exposition than I remember from when I was 18. I think back then I was trying to see the story in the context of "The Epic Trojan War" rather than reading it as its own story. The conversation between Thetis and Achilles advances the story a lot more when you don't assume you already know the backstory.

Anyways, that's my takeaway for the day from Book 1. I hope to keep doing snippet-style posts like these and then write anything longer-form as I think of it.

On my newsfeed today

- The passing of the King
- Manet's illustrations of Poe's "The Raven"
- Chekov's first book (originally pseudonymos) is published
- Sysadmin navel-gazing continues (
*je m'accuse!*) - Sustainable drainage systems
- The future of cardamom coffee

Enjoy

I was reading about cellular automata and I decided this would be a fun subject to explore for the next few posts. Wolfram covered the basic first-order binary automata so thoroughly that there isn't that much to do in those (so it seems), which may be why so many researchers are doing "cellular automata + X" for some value of X. Several good values of X come to mind: the state space of a cell being larger than 1 bit; the state space of the cell being continuous; continuous "cells" (requiring integrals rather than summations); and higher-order cellular automata.

Interestingly, while Fredkin seems to have named higher-order automata first explicitly, he doesn't mean what I was thinking of. He is talking about automata with memory, whereas I'm thinking of automata influenced by cells more remote than their immediate neighbors (memory will be a later post,

In a way of moving towards a general treatment, I want to start by just looking at 2nd-order SHOCAs: cellular automata influenced by their neighbors and their neighbors' neighbors. So, in a 1-dimensional world, the input for a cell's next generation consists of five cells: the cell itself, the cells to its right and left, and the cells beyond each of those. I'll divide these automata into two large classes: totalistic and non-totalistic.

A totalistic automaton is influenced by the sum of 1's in the neighboring cells and possibly itself (its own value at t=n may simply be part of the sum for determining its value at t=n+1, or it may extend the rule by one bit, or it may be ignored completely -- this is called "outer totalism"). Since we're second-order at this point, it's not difficult to imagine the possible utility of a "logistical" totalistic automaton, in which further neighbors count for less (eg, the neighbors are worth 2 points each in determining the sum, and their neighbors are worth only 1.)

A non-totalistic automaton, in contrast, is influenced by the specific spatial configuration of ones and zeros in its extended neighborhood, so 11010 is different from 01011 (or at least can be).

So let's look at the problem space here. The smallest problem space is represented by outer totalistic SHOCAs, which are influenced only by the number of ones in their first and second order neighbors. That sum may range from zero to four, so there are 32 possible rulesets for outer totalistc SHOCAs,

(The bit arrangement describes the outcome for 0, 1, 2, 3, and 4 second-order neighbors being 1, respectively.)

Some of these are of minimal interest (00000 just dumps any initial conditions and spams zeros; 11111 does the same thing with ones). And with the convention of a cellular automaton's "impulse response" (the output when an infinite string of zeros is interrupted by a single one) being something like its signature, the entire high half of that 5-bit sequence becomes "uninteresting" -- we don't want to spam the universe with infinite ones in the impulse response.

The non-outer totalistic SHOCAs are similar, but with a 6-bit number for 64 possibilities (with the analogous "interestingness" caveats).

The non-totalistic SHOCAs represent a

A 2nd-order non-totalistic SHOCA can be uniquely described with a 32-bit number. Each bit represents its output to:

as input. The lowest-order bit of the 32-bit rule number describes its output to 00000, and so on up. So, immediately, we can shove aside as "uninteresting" all odd numbers, since they spam the impulse response with infinite 1's. Also, we can declare "uninteresting" all numbers that do not respond with a 1 if they have a single 1 somewhere in their input (because their impulse responses will simply always be zero). That is, all numbers whose response to

is zero can be put aside for the moment. That is to say, any number whose binary representation matches XXXXXXXXXXXXXXX0XXXXXXX0XXX0X00X can be put aside as "uninteresting" as well.

This reduces the problem space to 26 bits, or 67 million possible 2nd-order non-totalistic SHOCAs. So it's still pretty big, but not quite as intimidating as the full 32 bits.

More to come, with LISP code for printing impulse responses.

Interestingly, while Fredkin seems to have named higher-order automata first explicitly, he doesn't mean what I was thinking of. He is talking about automata with memory, whereas I'm thinking of automata influenced by cells more remote than their immediate neighbors (memory will be a later post,

*inshallah*). This post is a broad-strokes exploration of them. I will temporarily coin the initialism SHOCA for spatially higher-order cellular automata.In a way of moving towards a general treatment, I want to start by just looking at 2nd-order SHOCAs: cellular automata influenced by their neighbors and their neighbors' neighbors. So, in a 1-dimensional world, the input for a cell's next generation consists of five cells: the cell itself, the cells to its right and left, and the cells beyond each of those. I'll divide these automata into two large classes: totalistic and non-totalistic.

A totalistic automaton is influenced by the sum of 1's in the neighboring cells and possibly itself (its own value at t=n may simply be part of the sum for determining its value at t=n+1, or it may extend the rule by one bit, or it may be ignored completely -- this is called "outer totalism"). Since we're second-order at this point, it's not difficult to imagine the possible utility of a "logistical" totalistic automaton, in which further neighbors count for less (eg, the neighbors are worth 2 points each in determining the sum, and their neighbors are worth only 1.)

A non-totalistic automaton, in contrast, is influenced by the specific spatial configuration of ones and zeros in its extended neighborhood, so 11010 is different from 01011 (or at least can be).

So let's look at the problem space here. The smallest problem space is represented by outer totalistic SHOCAs, which are influenced only by the number of ones in their first and second order neighbors. That sum may range from zero to four, so there are 32 possible rulesets for outer totalistc SHOCAs,

*viz*:00000

00001

00010

00011

00100

00101

00110

00111

01000

01001

01010

01011

01100

01101

01110

01111

10000

10001

10010

10011

10100

10101

10110

10111

11000

11001

11010

11011

11100

11101

11110

11111

00001

00010

00011

00100

00101

00110

00111

01000

01001

01010

01011

01100

01101

01110

01111

10000

10001

10010

10011

10100

10101

10110

10111

11000

11001

11010

11011

11100

11101

11110

11111

(The bit arrangement describes the outcome for 0, 1, 2, 3, and 4 second-order neighbors being 1, respectively.)

Some of these are of minimal interest (00000 just dumps any initial conditions and spams zeros; 11111 does the same thing with ones). And with the convention of a cellular automaton's "impulse response" (the output when an infinite string of zeros is interrupted by a single one) being something like its signature, the entire high half of that 5-bit sequence becomes "uninteresting" -- we don't want to spam the universe with infinite ones in the impulse response.

The non-outer totalistic SHOCAs are similar, but with a 6-bit number for 64 possibilities (with the analogous "interestingness" caveats).

The non-totalistic SHOCAs represent a

**huge**problem space. There are 32 possible ordered arrangements of five bits, which means there are 2^{32}possible rulesets for non-totalistic 2nd-order SHOCAs. I've been exploring some of them (posts to follow) and there are some very interesting automata there. To explain future posts, I want to set the following syntax:A 2nd-order non-totalistic SHOCA can be uniquely described with a 32-bit number. Each bit represents its output to:

00000

00001

00010

00011

00001

00010

00011

*etc...*as input. The lowest-order bit of the 32-bit rule number describes its output to 00000, and so on up. So, immediately, we can shove aside as "uninteresting" all odd numbers, since they spam the impulse response with infinite 1's. Also, we can declare "uninteresting" all numbers that do not respond with a 1 if they have a single 1 somewhere in their input (because their impulse responses will simply always be zero). That is, all numbers whose response to

00001

00010

00100

01000

10000

00010

00100

01000

10000

is zero can be put aside for the moment. That is to say, any number whose binary representation matches XXXXXXXXXXXXXXX0XXXXXXX0XXX0X00X can be put aside as "uninteresting" as well.

This reduces the problem space to 26 bits, or 67 million possible 2nd-order non-totalistic SHOCAs. So it's still pretty big, but not quite as intimidating as the full 32 bits.

More to come, with LISP code for printing impulse responses.

I realized it was stupid to keep multiple blogs going at once by subject matter, since I'm not actually trying to grow an audience or traffic or do any SEO. So, I'll just be blogging here.