Wednesday, 14 November 2012

Post-Test 2, and the beginning of finite state machines

Well, last week's test went decently. The one thing that kind of tripped me up, though, was the last question. After all we've done since the first test (e.g., proving that a function is non-decreasing, unwinding recurrence relations, etc.), I was definitely not expecting to rewrite a program function. It was either way too obvious and I overthought it (just square the first recursive call!), or I completely missed something subtle. We'll see.

Anyways, the topic of this week's lecture and tutorial seems pretty interesting. Back in high school, I had a final project for my geometry and discrete math class, and I decided to do it on cellular automata. I didn't go too deeply into the theory at that time (it was more a survey of the field), but even then I was impressed by some of the potential applications of it. I especially liked Conway's "Game of Life" (I even tried to write a simulator in Turing).

It looks as if the FSMs we will be working with (at least at first) take only binary strings as their inputs and accept or reject them. It will be interesting to see how the rules for designing and proving the correctness of FSMs like this can be applied to more complicated ones with more interesting inputs!

No comments:

Post a Comment