One problem, many angles

Oz Nova
Bradfield
Published in
2 min readOct 4, 2016

--

Yesterday some students were working through the first chapter of The Elements of Computing Systems, which involves building a basic chipset out of Nand gates. Doing so by hand involves exploring the specification of each gate in a number of ways, from staring at truth tables to simplifying the “canonical” algebraic representation to drawing Karnaugh maps. None of these proved to be a perfect strategy; frequently we would jump from one representation to another, sometimes making progress and other times backtracking.

This exercise was a reminder to me that interesting problems tend not to have a single routine solution. What makes problem solving fun for me is what Polya calls the “understanding the problem” phase, where we are asked to think about the unknown, the data, and the condition, and then to “draw a figure [and] introduce suitable notation”. Polya anticipates that this is always a phase, that we must fit an appropriate representation to our problem. Even a well established technique like using a Karnaugh map for algebraic simplification is imperfect, and will eventually fail those who jump to it indiscriminately.

Having said that, our students definitely look for a single powerful representation where possible. When one fails, another is considered more seriously, perhaps again looking for the one true representation. As students spend more time in a problem domain, their appreciation for the strengths and weaknesses of each representation typically grows, until they are seen as tools rather than paths.

The logical conclusion of this may be that the most impactful problem solvers are those who invent their own representations to unlock solutions that were unattainable via he diagrams and notations otherwise available to them. Feynman diagrams are a great example, and countless innovations in mathematics have been delivered with novel notation. I wonder how many problems in computer science could be more easily or intuitively solved by first inventing a more powerful representation.

Learn computer science from a number of angles at Bradfield.

--

--