A | B | C | D | E | F | G | H | CH | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9
Problém zastavenia (angl. halting problem) je úloha teórie vyčísliteľnosti, ktorá môže byť neformálne zadaná takto: Ak poznáte zdrojový kód programu a jeho vstup, rozhodnite, či program zastaví, alebo či pobeží navždy bez zastavenia.
V roku 1936 Alan Turing dokázal, že všeobecný algoritmus, ktorý by riešil problém zastavenia pre všetky vstupy všetkých programov, neexistuje. Problém zastavenia sa preto označuje ako algoritmický nerozhodnuteľný problém.
Náčrt dôkazu
Nerozhodnuteľnosť problému zastavenia sa dá dokázať sporom.
- Počiatočný predpoklad: Predpokladajme, že problém zastavenia sa dá rozhodnúť. To znamená, že existuje nejaký program Zastaví(program, vstup), ktorý je univerzálnym riešením problému zastavenia.
Ten funguje tak, že ak volanie program(vstup) po konečnom počte krokov skončí, potom Zastaví(program, vstup) vráti hodnotu ANO, v opačnom prípade (ak by sa volanie program(vstup) zacyklilo) vráti hodnotu NIE. - Skonštruujme program Paradox(x), ktorý sa zámerne zacyklí, ak volanie programu Zastaví(x, x) vráti ANO, a zastaví sa, ak volanie programu Zastaví(x, x) vráti NIE.
- Teraz sa spýtajme, čo je výsledkom volania Paradox(Paradox).
- Predpokladajme na chvíľu, že Zastaví(Paradox, Paradox) vracia ANO. Z definície programu Paradox potom vieme, že sa Paradox(Paradox) zacyklí. Podľa definície programu Zastaví ale platí, že ak Paradox(Paradox) zacyklí, potom musí Zastaví(Paradox, Paradox) vracať NIE. Došli sme k sporu.
- Predpokladajme na druhej strane na chvíľu, že Zastaví(Paradox, Paradox) vracia NIE. Z definície programu Paradox potom vieme, že sa Paradox(Paradox) zastaví. Podľa definície programu Zastaví ale platí, že ak Paradox(Paradox) zastaví, potom musí Zastaví(Paradox, Paradox) vracať ANO. Opäť sme došli k sporu.
- Pretože sme vyčerpali všetky možnosti a vždy došli k sporu, musí byť nepravdivý počiatočný predpoklad. Z toho vyplýva, že program Zastaví(program, vstup), tak ako bol definovaný, neexistuje.
Pozri aj
Externé odkazy
- Čo je to nenaprogramovateľné? na serveri Root.cz
Text je dostupný za podmienok Creative Commons Attribution/Share-Alike License 3.0 Unported; prípadne za ďalších podmienok. Podrobnejšie informácie nájdete na stránke Podmienky použitia.
Antropológia
Aplikované vedy
Bibliometria
Dejiny vedy
Encyklopédie
Filozofia vedy
Forenzné vedy
Humanitné vedy
Knižničná veda
Kryogenika
Kryptológia
Kulturológia
Literárna veda
Medzidisciplinárne oblasti
Metódy kvantitatívnej analýzy
Metavedy
Metodika
Text je dostupný za podmienok Creative
Commons Attribution/Share-Alike License 3.0 Unported; prípadne za ďalších
podmienok.
Podrobnejšie informácie nájdete na stránke Podmienky
použitia.
www.astronomia.sk | www.biologia.sk | www.botanika.sk | www.dejiny.sk | www.economy.sk | www.elektrotechnika.sk | www.estetika.sk | www.farmakologia.sk | www.filozofia.sk | Fyzika | www.futurologia.sk | www.genetika.sk | www.chemia.sk | www.lingvistika.sk | www.politologia.sk | www.psychologia.sk | www.sexuologia.sk | www.sociologia.sk | www.veda.sk I www.zoologia.sk
