Computer Science 42
Principles and Practice of Computer Science
Fall 2011


Assignment 13 "lite": Proofs of Uncomputability!
Due Friday, December 9 at 11:59 PM

What to submit

Please submit your two proofs electronically.  You can use plain text, .pdf or .doc format, whichever is easiest  If you choose to use a non-text format (I'm told the graders prefer PDF), you'll have to submit your files as "support files" in the submission system. 

Setup: Millisoft!

You have been hired by Millisoft, a large software company with numerous famous products that include Millisoft Sentence (word processing software), Succeed (a spreadsheet program), Energydot (presentation software), among others.

Your boss, Gill Bates, drops by your spacious cubicle sipping a refreshing and stimulating Jolt Cola ("All the sugar, and twice the caffeine!"). Gill begins by reminding you that a decider is a program that takes an input and eventually halts and accepts (says "yes" to its inputs) or rejects (says "no" to its input). For example, a decider for the prime numbers would take a number, perhaps encoded in binary, as input and would eventually halt saying "yes" (it's prime) or "no" (it's not prime).

Note: The idea in both of these problems is similar to the examples we did in class, where we created a contradiction by building a halt-checker out of the program that we hope to prove uncomputable. In this case, you'll want to create a halt-checker from a POTDT and a halt-checker from ASPOTT. Keep in mind that a halt checker given program P and input w, can use these build any other function/program/code it likes and use that to coax POTDT and ASPOTT into deciding whether a program P halts on an input w.