У книзі Ендрю У. Аппеля " Сучасне впровадження компілятора в ML" він говорить, що в розділі 17 теорія обчислюваності показує, що завжди можна буде винайти нові оптимізуючі перетворення і перейти до доказу, що повністю оптимізуючий компілятор вирішить проблему зупинки: Програма Q, який не дає виходу і ніколи не зупиняється, може бути легко замінений його оптимальним поданням, Opt (Q) , який є "L: goto L". Таким чином, повністю оптимізуючий компілятор може вирішити проблему зупинки.
Отже, моє запитання таке: чи існує повністю оптимізуючий компілятор для завершення програм? Мої єдині думки наступні: Хоча програма гарантовано припиняється, вона все ще може бути довільно складною, і для будь-якого конкретного оптимізуючого компілятора C, можливо, можна побудувати програму, яка сприймає C як вхідний сигнал і якось видає гіршу програму як якась кутова справа.
Крім того, які наслідки обмеження себе в припиненні програм?