Friday 9 November 2012

Exams, Quizzes and Midterms, Oh My!

So the second midterm has come and gone, and I'm a little uncertain but also relieved. I was worried about correctness proofs; looking at the binary search proof, it felt really rigorous -- and my proof on the midterm wasn't so much. I tried to cover all my bases, but I'm still paranoid that something was lacking.

I also drew a narwhal on the midterm. It's now a running gag and I've been faithfully drawing some depiction of a narwhal on any remotely test-like thing (since the first midterm), although I'm not sure if any one person can tell (different people marking different things). It cheers me up and relaxes me, so I can think better (and saying that is a good excuse to draw a narwhal). I have no idea what narwhals have to do with computational theory.

Also, an amusing observation about saving time with recursive calls: assigning the recursive call's value to a variable only works in non-lazy languages, otherwise the language might still evaluate the variable twice and the time complexity will remain the same.

Sunday 14 October 2012

WOP=>MI=>CI=>WOP

I find it simultaneously amusing and unsettling that the well ordering principle, mathematical induction, and complete induction are all equivalent. WOP proves MI, MI proves CI, and CI proves WOP, and around it goes.
However, the important caveat is that induction operates on sets that has well-ordering as an axiom (like the natural numbers); so when well-ordering proves MI, it's showing an extension of itself, and when CI proves well-ordering, it's being consistent with its own axiom that the sets it operates on are well-ordered, and the proof is trivial.
It doesn't feel like anything's being proven when we're using proof techniques that seem tautological (in proving each other, to be fair), but at the very least I can take solace in the fact that they're self-consistent in that they can't contradict each other.