exercises projects xi limits to computation reductions hard problems the theory of -completeness -completeness proofs coping with -complete problems impossible problems uncountability the halting problem is unsolvable further reading exercises projects bibliography index