I got my mid-term back and I can't really say I am happy with my mark. I lost 3 marks, all for starting my proofs with an existential assumption (ex. "Assume there exists n in natural numbers, such that P(n)"). I absolutely believe that such an assumption is valid at the start of a proof, especially given that the proof is preceded by a base case. I think that differentiating between "Assume there exists n such that P(n)" and "Let there be n such that P(n)" is not very intuitive. What does "be" mean anyways? Doesn't it signify the existence of the subject? In any case, I plan to go and speak to Prof. Heap during his office hours, so that I can either be proven wrong, or make sure that a re-marking appeal is a reasonable option for me (really hoping for the latter).
Other than that, I'm hanging on the course material with the skin of my teeth. These recursive functions are tricky, and doing proofs about them requires a level of trial and error, and certain tricks, that I'm not completely comfortable with. I've been referring to the Course Notes a lot more lately to help me grasp the material. Some steps and assumptions in the Course Notes seem very arbitrary at this point to me. For example, splitting the coefficient 'k' in knlog(n) (MergeSort) to two separate constants 'c' and 'd', was something that I could not have come up with on my own, even if I stared at the problem (proving the upper bound for the runtime of MergeSort) for a year. Hopefully by spending more time going over the Course Notes, things will get better soon.
3 marks? Wow that is a hefty charge on a small trivial issue. But the structure and presentation is important in this course as we're learning quickly.
ReplyDeleteI certainly agree, but in my opinion the structure I used seems equally valid. Let's hope I'm right!
ReplyDelete