CMPUT 325 Special 11

    What can happen?
    case 0: The call to HALTS returns 0
        * Thus it loops forever ... but HALTS always returns
            so the program must have reached the infinite
            "while (1)" which can only happen if HALTS returns 1.
    case 1: HALTS returns 1.
        * So this means that diagonal on diagonal.c
           halts. But this can only happen if HALTS returns 0.

    Contradiction => finally there can not be such a program HALTS!!

         NEXT