Π”ΠΈΠΏΠ»ΠΎΠΌΡ‹, курсовыС, Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚Ρ‹, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅...
Брочная ΠΏΠΎΠΌΠΎΡ‰ΡŒ Π² ΡƒΡ‡Ρ‘Π±Π΅

Π’Π΅ΠΎΡ€Π΅ΠΌΠ° ΠΎ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅

ΠšΡƒΡ€ΡΠΎΠ²Π°ΡΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈΠ£Π·Π½Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΠΌΠΎΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹

Π’Π΅ΠΏΠ΅Ρ€ΡŒ становится понятнСС, ΠΏΠΎΡ‡Π΅ΠΌΡƒ Ρ‚Π΅ΠΎΡ€Π΅ΠΌΠ° ΠΎ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅ называСтся Π΅Ρ‰Ρ‘ Ρ‚Π΅ΠΎΡ€Π΅ΠΌΠΎΠΉ ΠΎ Ρ€Π΅ΠΊΡƒΡ€ΡΠΈΠΈ. Π’ ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅, рСкурсия состоит Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΈΠ·Π½ΡƒΡ‚Ρ€ΠΈ Π΅Ρ‘ ΡΠ°ΠΌΠΎΠΉ. Π—Π΄Π΅ΡΡŒ происходит Π΄Π°ΠΆΠ΅ большС: ΠΌΡ‹ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΠΌΠ΅Π΅ΠΌ ΠΏΡ€Π°Π²ΠΎ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, Π½ΠΎ ΠΈ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ Π΅Ρ‘ Ρ‚Сксту! ΠžΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ Π²Ρ‹Π·ΠΎΠ² Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ являСтся частным случаСм доступа ΠΊ Ρ‚Сксту, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

Π’Π΅ΠΎΡ€Π΅ΠΌΠ° ΠΎ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅ (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

1. Π’Π΅ΠΎΡ€Π΅ΠΌΠ° ΠΎ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅

2.1 НСподвиТная Ρ‚ΠΎΡ‡ΠΊΠ° ΠΈ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ эквивалСнтности

2.2 БистСмный Ρ‚Ρ€ΡŽΠΊ: Π΅Ρ‰Ρ‘ ΠΎΠ΄Π½ΠΎ Π΄ΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ

2.3 НСсколько Π·Π°ΠΌΠ΅Ρ‡Π°Π½ΠΈΠΉ

3. ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠ°Ρ Ρ‡Π°ΡΡ‚ΡŒ

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

РСкурсивныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ (ΠΎΡ‚ ΠΏΠΎΠ·Π΄Π½Π΅Π»Π°Ρ‚инского recursio — Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅), Π½Π°Π·Π²Π°Π½ΠΈΠ΅, Π·Π°ΠΊΡ€Π΅ΠΏΠΈΠ²ΡˆΠ΅Π΅ΡΡ Π·Π° ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ распространённых Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² уточнСния ΠΎΠ±Ρ‰Π΅Π³ΠΎ понятия арифмСтичСского Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°, Ρ‚. Π΅. Ρ‚Π°ΠΊΠΎΠ³ΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°, допустимыС исходныС Π΄Π°Π½Π½Ρ‹Π΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой систСмы Π½Π°Ρ‚ΡƒΡ€Π°Π»ΡŒΠ½Ρ‹Ρ… чисСл, Π° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ примСнСния ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π½Π°Ρ‚ΡƒΡ€Π°Π»ΡŒΠ½Ρ‹ΠΌΠΈ числами. РСкурсивныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π±Ρ‹Π»ΠΈ Π²Π²Π΅Π΄Π΅Π½Ρ‹ Π² 30-Ρ… Π³Π³. 20 Π². Π‘. К. Клини, Π² ΡΠ²ΠΎΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ ΠΎΡΠ½ΠΎΠ²Ρ‹Π²Π°Π²ΡˆΠΈΠΌΡΡ Π½Π° ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΡΡ… К. ГёдСля, Π–. Π­Ρ€Π±Ρ€Π°Π½Π° ΠΈ Π΄Ρ€. ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΠΊΠΎΠ².

Π’Π΅ΠΎΡ€Π΅ΠΌΠ° (Клини) ΠΎ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅ являСтся основным инструмСнтом исслСдования Π² Ρ‚Π΅ΠΎΡ€ΠΈΠΈ рСкурсивных Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ. Π­Ρ‚ΠΎ Π³Π»ΡƒΠ±ΠΎΠΊΠΈΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π² Ρ‚ΠΎΠΌ смыслС, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Π΄Π°Ρ‘Ρ‚ изящный ΠΈ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ‡Π½Ρ‹ΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄ обращСния с ΠΊΠΎΠ½ΡΡ‚рукциями, Ρ‡Ρ‚ΠΎ Π² ΠΈΠ½ΠΎΠΌ случаС ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Π»ΠΎ Π±Ρ‹ Π΄ΠΎΠ»Π³ΠΈΡ… ΠΈ ΡΠ»ΠΎΠΆΠ½Ρ‹Ρ… рассуТдСний.

Π­Ρ‚Π° Ρ‚Π΅ΠΎΡ€Π΅ΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π° Π² Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Ρ„ΠΎΡ€ΠΌΠ°Ρ… ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒΡΡ с Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Ρ‚ΠΎΡ‡Π΅ΠΊ зрСния. Π’ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠΌ смыслС Ρ‚Π΅ΠΎΡ€Π΅ΠΌΠ° суммируСт Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ класс Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ², Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΌΠ΅Ρ‚ΠΎΠ΄, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ для построСния рСкурсивно-пСрСчислимых, Π½ΠΎ Π½Π΅ Ρ€Π΅ΠΊΡƒΡ€ΡΠΈΠ²Π½Ρ‹Ρ… мноТСств. Π‘ Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, эта Ρ‚Π΅ΠΎΡ€Π΅ΠΌΠ° устанавливаСт Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΎ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅ ΠΈ, ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ Ρ‚Π΅ΠΎΡ€Π΅ΠΌΠ°ΠΌ ΠΎ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅ ΠΈΠ· ΠΌΠ°Ρ‚СматичСского Π°Π½Π°Π»ΠΈΠ·Π°, ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использована для Π΄ΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²Π° сущСствования ΠΌΠ½ΠΎΠ³ΠΈΡ… нСявно Π·Π°Π΄Π°Π½Π½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ.

1. Π’Π•ΠžΠ Π•ΠœΠ О ΠΠ•ΠŸΠžΠ”Π’Π˜Π–ΠΠžΠ™ Π’ΠžΠ§ΠšΠ•

1.1 НСподвиТная Ρ‚ΠΎΡ‡ΠΊΠ° ΠΈ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ эквивалСнтности

Π’Π΅ΠΎΡ€Π΅ΠΌΠ° 1. ΠŸΡƒΡΡ‚ΡŒ U — главная вычислимая ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Π°Ρ функция для класса вычислимых Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°, a h — ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Π°Ρ Π²ΡΡŽΠ΄Ρƒ опрСдСлённая вычислимая функция ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°. Π’ΠΎΠ³Π΄Π° сущСствуСт Ρ‚Π°ΠΊΠΎΠ΅ число n, Ρ‡Ρ‚ΠΎ Un = Uh (n), Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ n ΠΈ h (n) — Π½ΠΎΠΌΠ΅Ρ€Π° ΠΎΠ΄Π½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, нСльзя Π½Π°ΠΉΡ‚ΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°, ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±Ρ‹ ΠΏΠΎ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π΄Π°Π²Π°Π» Π΄Ρ€ΡƒΠ³ΡƒΡŽ (Π½Π΅ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½Ρ‚Π½ΡƒΡŽ Π΅ΠΉ). Π­Ρ‚Ρƒ Ρ‚Π΅ΠΎΡ€Π΅ΠΌΡƒ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ Ρ‚Π΅ΠΎΡ€Π΅ΠΌΠΎΠΉ Клини ΠΎ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅ ΠΈΠ»ΠΈ Ρ‚Π΅ΠΎΡ€Π΅ΠΌΠΎΠΉ ΠΎ Ρ€Π΅ΠΊΡƒΡ€ΡΠΈΠΈ.

Рассмотрим ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠ΅ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ эквивалСнтности (ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Ρ‚ΡŒ x Ρƒ) Π½Π° ΠΌΠ½ΠΎΠΆΠ΅ΡΡ‚Π²Π΅ Π½Π°Ρ‚ΡƒΡ€Π°Π»ΡŒΠ½Ρ‹Ρ… чисСл. ΠœΡ‹ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ, Ρ‡Ρ‚ΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π΄Π²Π° свойства этого ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ:

Для всякой вычислимой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ f ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΠ΅Ρ‚ Π²ΡΡŽΠ΄Ρƒ опрСдСлённая вычислимая функция g, ΡΠ²Π»ΡΡŽΡ‰Π°ΡΡΡ Π΅Ρ‘ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅ΠΌ (это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Ссли f (x) ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ ΠΏΡ€ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ x, Ρ‚ΠΎ g (Ρ…) f (x)).

БущСствуСт Π²ΡΡŽΠ΄Ρƒ опрСдСлённая вычислимая функция h, Π½Π΅ ΠΈΠΌΠ΅ΡŽΡ‰Π°ΡΠ½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ.

Если x Ρƒ — ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ равСнства (x = Ρƒ), Ρ‚ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠ΅ свойство Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ (ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, h (n) = n + 1), поэтому Π½Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ ΠΏΠ΅Ρ€Π²ΠΎΠ΅. Π’Π΅ΠΎΡ€Π΅ΠΌΠ° ΠΎ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅ получится, Ссли x = Ρƒ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΊΠ°ΠΊ Ux = Uy (x ΠΈ y — Π½ΠΎΠΌΠ΅Ρ€Π° ΠΎΠ΄Π½ΠΎΠΉ ΠΈ Ρ‚ΠΎΠΉ ΠΆΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ). Π’ ΡΡ‚ΠΎΠΌ случаС Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ ΠΏΠ΅Ρ€Π²ΠΎΠ΅ свойство, ΠΊΠ°ΠΊ ΠΌΡ‹ ΡΠ΅ΠΉΡ‡Π°Ρ убСдимся, ΠΈ ΠΏΠΎΡ‚ΠΎΠΌΡƒ Π½Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠ΅.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ ΠΏΠ΅Ρ€Π²ΠΎΠ΅ свойство? ΠŸΡƒΡΡ‚ΡŒ f — ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Π°Ρ вычислимая функция ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°. Рассмотрим Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ V (n, x) = U (f (n), x). ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ U ΡΠ²Π»ΡΠ΅Ρ‚ся Π³Π»Π°Π²Π½ΠΎΠΉ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ, найдётся Π²ΡΡŽΠ΄Ρƒ опрСдСлённая функция s, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ V (n, x) = U (s (n), x) ΠΏΡ€ΠΈ всСх n ΠΈ Ρ…. Π­Ρ‚Π° функция ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ искомымпродолТСниСм. Π’ ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅, Ссли f (n) ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ, Ρ‚ΠΎ s (n) Π±ΡƒΠ΄Π΅Ρ‚ Π΄Ρ€ΡƒΠ³ΠΈΠΌ Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ Ρ‚ΠΎΠΉ ΠΆΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Ρ‡Ρ‚ΠΎ ΠΈ f (n). (ΠžΡ‚ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Ссли f (n) Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ, Ρ‚ΠΎ s (n) Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² Π½ΠΈΠ³Π΄Π΅ Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.)

Для Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ Π΄ΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²Π° Ρ‚Π΅ΠΎΡ€Π΅ΠΌΡ‹ ΠΎ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅ ΠΎΡΡ‚Π°Π»ΠΎΡΡŒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ Π΄Π²Π° свойства ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ эквивалСнтности нСсовмСстны. Π’ΠΎΠ·ΡŒΠΌΡ‘ΠΌ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΠΌΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ f, ΠΎΡ‚ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ никакая вычислимая функция Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ Π²ΡΡŽΠ΄Ρƒ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΡŒΠ½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ Ρ… > U (x, Ρ…) для Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ вычислимой ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ U). По ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ сущСствуСт Π²ΡΡŽΠ΄Ρƒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠ΅ вычислимоСпродолТСниС g Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ f. Рассмотрим Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ t (x) = h (g (x)), Π³Π΄Π΅ h — вычислимая Π²ΡΡŽΠ΄Ρƒ опрСдСлённая функция, Π½Π΅ ΠΈΠΌΠ΅ΡŽΡ‰Π°ΡΠ½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ. Π’ΠΎΠ³Π΄Π° t Π±ΡƒΠ΄Π΅Ρ‚ Π²ΡΡŽΠ΄Ρƒ ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ f. Π’ ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅, Ссли f (x) ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ, Ρ‚ΠΎ f (x) g (Ρ…) h (g (x)) = t (x), ΠΈ ΠΏΠΎΡ‚ΠΎΠΌΡƒ f (x) t (x). Если ΠΆΠ΅ f (x) Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ, Ρ‚ΠΎ ΡΡ‚ΠΎΡ‚ Ρ„Π°ΠΊΡ‚ сам ΠΏΠΎ ΡΠ΅Π±Π΅ ΡƒΠΆΠ΅ ΠΎΡ‚Π»ΠΈΡ‡Π°Π΅Ρ‚ f (x) ΠΈ t (x).

Π’Π΅ΠΎΡ€Π΅ΠΌΡƒ ΠΎ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Ρ„ΠΎΡ€ΠΌΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ Ρ‚Π°ΠΊ:

Π’Π΅ΠΎΡ€Π΅ΠΌΠ° 2. ΠŸΡƒΡΡ‚ΡŒ U (n, x) — главная вычислимая ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Π°Ρ функция для класса вычислимых Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°. ΠŸΡƒΡΡ‚ΡŒ V (n, x) — ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Π°Ρ вычислимая функция. Π’ΠΎΠ³Π΄Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ U ΠΈ V ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚ Π½Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ сСчСнии: найдётся Ρ‚Π°ΠΊΠΎΠ΅ Ρ€, Ρ‡Ρ‚ΠΎ Up = Vp, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ U (p, n) = V (p, n) для любого n.

Π’Π°ΠΊ ΠΊΠ°ΠΊ функция U ΡΠ²Π»ΡΠ΅Ρ‚ся Π³Π»Π°Π²Π½ΠΎΠΉ, Π½Π°ΠΉΠ΄Ρ‘ΠΌ Ρ‚Π°ΠΊΡƒΡŽ Π²ΡΡŽΠ΄Ρƒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΡƒΡŽ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΠΌΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ h, Ρ‡Ρ‚ΠΎ V (n, x) = U (h (n), x) ΠΏΡ€ΠΈ всСх n ΠΈ x. ΠžΡΡ‚Π°Π»ΠΎΡΡŒ Π²Π·ΡΡ‚ΡŒ Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ Ρ€ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΡƒΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ h.

(ΠŸΡ€ΠΈΠΌΠ΅Ρ€ слСдствия ΠΈΠ· ΡΡ‚ΠΎΠΉ Ρ‚Π΅ΠΎΡ€Π΅ΠΌΡ‹: ΠΊΠ°ΠΊ Π±Ρ‹ Π½ΠΈ ΡΡ‚Π°Ρ€Π°Π»ΠΈΡΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ, для Π»ΡŽΠ±Ρ‹Ρ… Π΄Π²ΡƒΡ… вСрсий компилятора сущСствуСт ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, которая ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π² ΠΎΠ±Π΅ΠΈΡ… вСрсиях — Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, зацикливаСтся ΠΈ Ρ‚Π°ΠΌ, ΠΈ Ρ‚Π°ΠΌ. Π’ΠΏΡ€ΠΎΡ‡Π΅ΠΌ, это всё ΠΆΠ΅ Π½Π΅ Π½Π°Π²Π΅Ρ€Π½ΡΠΊΠ°, Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ссли компилятор Π·Π°Π΄Π°Ρ‘Ρ‚ Π³Π»Π°Π²Π½ΡƒΡŽ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ — Π½ΠΎ Π½Π°Π΄ΠΎ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΡΡ‚Π°Ρ€Π°Ρ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ это Π±Ρ‹Π»ΠΎ Π½Π΅ Ρ‚Π°ΠΊ!)

ΠŸΠΎΡƒΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ Ρ†Π΅ΠΏΠΎΡ‡ΠΊΡƒ ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Π½Π½Ρ‹Ρ… рассуТдСний ΠΈ ΠΏΡ€ΠΎΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊ строится нСподвиТная Ρ‚ΠΎΡ‡ΠΊΠ°. Для наглядности вмСсто U (n, x) ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΏΠΈΡΠ°Ρ‚ΡŒ [n](x) ΠΈ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ это «Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ примСнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ n ΠΊ Π²Ρ…ΠΎΠ΄Ρƒ x»;

РассуТдСниС начинаСтся с Ρ€Π°ΡΡΠΌΠΎΡ‚рСния «Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠΉ» Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ U (x, x), ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠ°ΠΊ [x](x) (Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ примСнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ x ΠΊ ΡΠ΅Π±Π΅). Π”Π°Π»Π΅Π΅ ΠΌΡ‹ ΡΡ‚Ρ€ΠΎΠΈΠΌ Π΅Ρ‘ Π²ΡΡŽΠ΄Ρƒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠ΅ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅. Π­Ρ‚ΠΎ дСлаСтся Ρ‚Π°ΠΊ. Π’Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ [[x] (x)] (Ρƒ) вычислимо зависит ΠΎΡ‚ Π΄Π²ΡƒΡ… Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ². ΠœΡ‹ Π²ΡΠΏΠΎΠΌΠΈΠ½Π°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ U Π΅ΡΡ‚ΡŒ главная ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Π°Ρ функция, ΠΈ Π½Π°Ρ…ΠΎΠ΄ΠΈΠΌ Ρ‚Π°ΠΊΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ g, Ρ‡Ρ‚ΠΎ [[g](x)](y) = [[x] (x)] (Ρƒ) ΠΏΡ€ΠΈ всСх x ΠΈ Ρƒ. ΠŸΡ€ΠΈ этом [g](x) ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ для всСх x. ΠŸΡƒΡΡ‚ΡŒ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ Π½Π°ΠΉΡ‚ΠΈ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΡƒΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ h. ΠœΡ‹ Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Π΅ΠΌ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΡŽ [h]([g](x)). Π­Ρ‚ΠΎ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ вычислимо зависит ΠΎΡ‚ x, ΠΈ ΠΏΠΎΡ‚ΠΎΠΌΡƒ сущСствуСт ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° t, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ [t](x) = [h](g (x)) ΠΏΡ€ΠΈ всСх x. Π­Ρ‚Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΠ° ΠΊΠΎ Π²ΡΠ΅ΠΌ x, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ‚Π°ΠΊΠΎΠ²Ρ‹ h ΠΈ g. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ Π±ΡƒΠ΄Π΅Ρ‚ [g](t). Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ Π² ΡΡ‚ΠΎΠΌ, ΠΌΡ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ [[g](t)](x) = [h ([g](t))] (x) для всСх x. Π’ ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅, ΠΏΠΎ ΡΠ²ΠΎΠΉΡΡ‚Π²Ρƒ g ΠΈΠΌΠ΅Π΅ΠΌ [[g](t)](x) = [[t](t)](x). Вспоминая ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ t, это Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠ°ΠΊ [[h] ([g](t))] (x) — Ρ‡Ρ‚ΠΎ ΠΊΠ°ΠΊ Ρ€Π°Π· ΠΈ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π»ΠΎΡΡŒ.

1.2 БистСмный Ρ‚Ρ€ΡŽΠΊ: Π΅Ρ‰Ρ‘ ΠΎΠ΄Π½ΠΎ Π΄ΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ

Если ΠΏΠΎΠΏΡ€ΠΎΡΠΈΡ‚ΡŒ Π»ΡŽΠ±ΠΈΡ‚Π΅Π»Π΅ΠΉ Ρ€Π°Π·Π½Ρ‹Ρ… языков программирования Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Π½Π° ΡΠ²ΠΎΡ‘ΠΌ любимом языкС ΠΏΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΠΈ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, которая Π±Ρ‹ ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π»Π° свой исходный тСкст, Ρ‚ΠΎ Ρ‡Π΅ΠΌΠΏΠΈΠΎΠ½ΠΎΠΌ, скорСС всСго, окаТСтся короткая ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π° Π±Π΅ΠΉΡΠΈΠΊΠ΅:

10 LIST

Π”Π΅Π»ΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π² Π±Π΅ΠΉΡΠΈΠΊΠ΅ Π΅ΡΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Π° LIST, которая ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅Ρ‚ тСкст ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π·Π°ΠΏΡƒΡ‰Π΅Π½Π° ΠΈΠ·Π½ΡƒΡ‚Ρ€ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

ΠŸΡ€Π΅ΠΆΠ΄Π΅ всСго, это Ρ…ΠΎΡ€ΠΎΡˆΠ°Ρ ΡˆΡƒΡ‚ΠΊΠ°. Но ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚Π½Π΅ΡΡ‚ΠΈΡΡŒ ΠΊ Π½Π΅ΠΉ Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½ΠΎ ΡΠ΅Ρ€ΡŒΡ‘Π·Π½ΠΎ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ эту идСю Π² Π΅Ρ‰Ρ‘ ΠΎΠ΄Π½ΠΎΠΌ Π΄ΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²Π΅ Ρ‚Π΅ΠΎΡ€Π΅ΠΌΡ‹ ΠΎ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅ (Ρ‚ΠΎΡ‡Π½Π΅Π΅, Π² Π΅Ρ‰Ρ‘ ΠΎΠ΄Π½ΠΎΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅ Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ Π΄ΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²Π°).

ΠŸΡ€Π΅ΠΆΠ΄Π΅ всСго Π·Π°ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Ρ‚Π΅ΠΎΡ€Π΅ΠΌΡƒ достаточно Π΄ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ для ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ ΠΎΠ΄Π½ΠΎΠΉ Π³Π»Π°Π²Π½ΠΎΠΉ Π½ΡƒΠΌΠ΅Ρ€Π°Ρ†ΠΈΠΈ. Π’ ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅, ΠΏΡƒΡΡ‚ΡŒ для ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π³Π»Π°Π²Π½ΠΎΠΉ Π½ΡƒΠΌΠ΅Ρ€Π°Ρ†ΠΈΠΈ сущСствуСт функция Π±Π΅Π· Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ имССтся способ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π² Π·Π°Π²Π΅Π΄ΠΎΠΌΠΎ нСэквивалСнтныС. Π’ΠΎΠ³Π΄Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ трансляции Ρ‚ΡƒΠ΄Π° ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ Ρ‚Π°ΠΊΠΎΠΉ способ

ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ ΠΈ Π΄Π»Ρ ΠΏΠ΅Ρ€Π²ΠΎΠΉ Π½ΡƒΠΌΠ΅Ρ€Π°Ρ†ΠΈΠΈ (для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΡ‹ Ρ‚Π΅ΠΎΡ€Π΅ΠΌΡƒ считаСм Π΄ΠΎΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ).

Π’Π΅ΠΏΠ΅Ρ€ΡŒ рассмотрим язык программирования, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΏΠΎΠΌΠΈΠΌΠΎ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… возмоТностСй Π΅ΡΡ‚ΡŒ встроСнная ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π°

GetProgramText (var s: string)

Π­Ρ‚Π° ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠΏΠΎΠΌΠ΅Ρ‰Π°Π΅Ρ‚ тСкст исходной ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π² ΡΡ‚Ρ€ΠΎΠΊΡƒ s. НСсмотря Π½Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π½Π΅ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΡΡ‚ΡŒ этой ΠΈΠ΄Π΅ΠΈ, Π²ΠΏΠΎΠ»Π½Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ сСбС ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ этого языка — ΠΈ ΠΈΠ½Ρ‚СрпрСтация этой ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ Π½Π΅ ΠΏΡ€Π΅Π΄ΡΡ‚авляСт Ρ‚Ρ€ΡƒΠ΄Π°, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€Ρƒ, разумССтся, доступСн тСкст ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π‘Π΄Π΅Π»Π°Π΅ΠΌ Π΅Ρ‰Ρ‘ ΠΎΠ΄ΠΈΠ½ шаг ΠΈ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΠΌ сСбС, Ρ‡Ρ‚ΠΎ Π² ΡΡ‚ΠΎΠΌ языкС Π΅ΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π°

ExecuteProgram (s: string)

Π­Ρ‚Π° ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‘Ρ‚ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅, тСкст ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ находится Π² ΡΡ‚Ρ€ΠΎΠΊΠ΅ s, считая Π²Ρ…ΠΎΠ΄ΠΎΠΌ этой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π²Ρ…ΠΎΠ΄ исходной ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ (ΠΊΠ°ΠΊ сказал Π±Ρ‹ настоящий программист, «ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ s Π΄Π΅ΡΠΊΡ€ΠΈΠΏΡ‚ΠΎΡ€ Π²Ρ…ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΠΎΡ‚ΠΎΠΊΠ°»). И Π² ΡΡ‚ΠΎΠΌ случаС понятно, ΠΊΠ°ΠΊ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ языка: ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ рСкурсивно Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ сСбя Π½Π° ΡΠΎΠ΄Π΅Ρ€ΠΆΠΈΠΌΠΎΠΌ строки s ΠΈ Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ….

Наш ΠΎΠ±ΠΎΠ³Π°Ρ‰Π΅Π½Π½Ρ‹ΠΉ язык программирования, разумССтся, допускаСт Ρ‚Ρ€Π°Π½ΡΠ»ΡΡ†ΠΈΡŽ с Π½Π΅Π³ΠΎ Π² ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ языки (ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€) ΠΈ Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚ (Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π½Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π½ΠΎΠ²Ρ‹ΠΌΠΈ конструкциями). ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ задаваСмая ΠΈΠΌ Π½ΡƒΠΌΠ΅Ρ€Π°Ρ†ΠΈΡ вычислимых Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ являСтся Π³Π»Π°Π²Π½ΠΎΠΉ. ΠŸΡƒΡΡ‚ΡŒ h — Π²ΡΡŽΠ΄Ρƒ опрСдСлённая вычислимая функция, Ρƒ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ Π½Π°ΠΉΡ‚ΠΈ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΡƒΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ. Π—Π°ΠΏΠΈΡˆΠ΅ΠΌ Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡŽΡ‰ΠΈΠΉ Π΅Ρ‘ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ Π² Π²ΠΈΠ΄Π΅ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ нашСго языка:

function Compute_h (x: string): string; begin

end;

(ΠŸΡ€ΠΈ этом Π½Π°ΠΌ Π΄Π°ΠΆΠ΅ Π½Π΅ Π½ΡƒΠΆΠ½Ρ‹ Π½ΠΎΠ²Ρ‹Π΅ возмоТности.) Π’Π΅ΠΏΠ΅Ρ€ΡŒ напишСм ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, ΡΠ²Π»ΡΡŽΡ‰ΡƒΡŽΡΡ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ А:

program fixed_point; var s: string;

function Compute_h (x:string): string; begin

end; begin

GetProgramText (s);

s := Compute_h (s);

ExecuteProgram (s); end.

Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ этой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ сразу ΠΆΠ΅ сводится ΠΊ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΏΠΎΠ»ΡƒΡ‡Π°ΡŽΡ‰Π΅ΠΉΡΡ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΊ Π½Π΅ΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ А, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ ΠΏΠΎ ΠΏΠΎΡΡ‚Ρ€ΠΎΠ΅Π½ΠΈΡŽ.

ΠœΡ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎ объяснили, ΠΊΠ°ΠΊ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ языка с Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ΠΎΠΉ «ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ тСкст ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹» ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ Ρ‚Π΅ΠΎΡ€Π΅ΠΌΡƒ ΠΎ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅. Но ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°ΡΡΡƒΠΆΠ΄Π°Ρ‚ΡŒ ΠΈ Π² ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΌ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ ΠΈ ΠΎΠ±ΡŠΡΡΠ½ΠΈΡ‚ΡŒ, ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Ρ‚Π΅ΠΎΡ€Π΅ΠΌΡ‹ ΠΎ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅ замСняСт Ρ‚Π°ΠΊΡƒΡŽ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ.

Π’ ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅, ΠΏΡƒΡΡ‚ΡŒ ΠΌΡ‹ ΠΈΠΌΠ΅Π΅ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Ρ€, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π΅ΡΡ‚ΡŒ строка GetProgramText (s). Π—Π°ΠΌΠ΅Π½ΠΈΠΌ эту строку Π½Π° ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ присваивания s: = t, Π³Π΄Π΅ t — нСкоторая строковая константа. ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡΡ новая ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, зависящая ΠΎΡ‚ t. Назовём Π΅Ρ‘ p (t). Богласно Ρ‚Π΅ΠΎΡ€Π΅ΠΌΠ΅ ΠΎ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅, сущСствуСт Ρ‚Π°ΠΊΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ t, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ t ΠΈ p{t) эквивалСнтны. ΠŸΡ€ΠΈ этом t Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ t ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½Ρ‚Π½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡŽ Π΅Ρ‘ Ρ‚Скста, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ‹Π·ΠΎΠ²Π° ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ GetProgramText (s) Π² ΡΡ‚Ρ€ΠΎΠΊΡƒ s ΠΏΠΎΠΌΠ΅Ρ‰Π°Π΅Ρ‚ся тСкст ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ t — Ρ‡Π΅Π³ΠΎ ΠΌΡ‹ ΠΈ Ρ…ΠΎΡ‚Π΅Π»ΠΈ.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ становится понятнСС, ΠΏΠΎΡ‡Π΅ΠΌΡƒ Ρ‚Π΅ΠΎΡ€Π΅ΠΌΠ° ΠΎ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅ называСтся Π΅Ρ‰Ρ‘ Ρ‚Π΅ΠΎΡ€Π΅ΠΌΠΎΠΉ ΠΎ Ρ€Π΅ΠΊΡƒΡ€ΡΠΈΠΈ. Π’ ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅, рСкурсия состоит Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΈΠ·Π½ΡƒΡ‚Ρ€ΠΈ Π΅Ρ‘ ΡΠ°ΠΌΠΎΠΉ. Π—Π΄Π΅ΡΡŒ происходит Π΄Π°ΠΆΠ΅ большС: ΠΌΡ‹ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΠΌΠ΅Π΅ΠΌ ΠΏΡ€Π°Π²ΠΎ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, Π½ΠΎ ΠΈ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ Π΅Ρ‘ Ρ‚Сксту! ΠžΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ Π²Ρ‹Π·ΠΎΠ² Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ являСтся частным случаСм доступа ΠΊ Ρ‚Сксту, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ†ΠΈΠΈ Π½Π° ΡΡ‚ΠΎΠΌ тСкстС. (ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, ΠΏΡ€ΠΈ этом Π½Π°ΠΌ понадобится Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π² ΡΠΎΡΡ‚Π°Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ тСкст ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€Π° нашСго языка программирования, записанный Π½Π° ΡΡ‚ΠΎΠΌ языкС.)

1.3 НСсколько Π·Π°ΠΌΠ΅Ρ‡Π°Π½ΠΈΠΉ

БСсконСчноС мноТСство Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½Ρ‹Ρ… Ρ‚ΠΎΡ‡Π΅ΠΊ

Π’Π΅ΠΎΡ€Π΅ΠΌΠ° 4. (ΠΎ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅) ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π°Π΅Ρ‚ сущСствованиС хотя Π±Ρ‹ ΠΎΠ΄Π½ΠΎΠΉ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ. Π›Π΅Π³ΠΊΠΎ ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π½Π° ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ ΠΈΡ… Π±Π΅ΡΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ: Π² ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π΅Π½ΠΈΡΡ… этой Ρ‚Π΅ΠΎΡ€Π΅ΠΌΡ‹ сущСствуСт бСсконСчно ΠΌΠ½ΠΎΠ³ΠΎ чисСл n, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… U = U.

Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡŠΡΡΠ½ΠΈΡ‚ΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ‚Π°ΠΊ: Ссли Π±Ρ‹ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½Ρ‹Ρ… Ρ‚ΠΎΡ‡Π΅ΠΊ Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ΅ число, Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ h Π² ΡΡ‚ΠΈΡ… Ρ‚ΠΎΡ‡ΠΊΠ°Ρ… Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½Ρ‹Ρ… Ρ‚ΠΎΡ‡Π΅ΠΊ Π½Π΅ ΠΎΡΡ‚Π°Π»ΠΎΡΡŒ. НСдостаток этого рассуТдСния Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΎ Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ эффСктивно ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»ΡΡ‚ΡŒ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½Ρ‹Π΅ Ρ‚ΠΎΡ‡ΠΊΠΈ (ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ для Π΄Π°Π½Π½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ h Π±Π΅ΡΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ΅ пСрСчислимоС мноТСство, состоящСС ΠΈΠ· Π΅Ρ‘ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½Ρ‹Ρ… Ρ‚ΠΎΡ‡Π΅ΠΊ).

НСподвиТная Ρ‚ΠΎΡ‡ΠΊΠ° с ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ

Если ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ вычислимо зависит ΠΎΡ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°, Ρ‚ΠΎ ΠΈ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΡƒΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ вычислимо зависящСй ΠΎΡ‚ ΡΡ‚ΠΎΠ³ΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°. Π’ΠΎΡ‡Π½Ρ‹ΠΉ смысл этого утвСрТдСния Ρ‚Π°ΠΊΠΎΠ²:

Π’Π΅ΠΎΡ€Π΅ΠΌΠ° 5. ΠŸΡƒΡΡ‚ΡŒ U — главная ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Π°Ρ функция для класса вычислимых Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°, Π° h — Π²ΡΡŽΠ΄Ρƒ опрСдСлённая вычислимая функция Π΄Π²ΡƒΡ… Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ². Π’ΠΎΠ³Π΄Π° сущСствуСт Π²ΡΡŽΠ΄Ρƒ опрСдСлённая вычислимая функция n ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°, которая ΠΏΠΎ Π»ΡŽΠ±ΠΎΠΌΡƒ Ρ€ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΡƒΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ для Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ h, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ, ΠΈΠ»ΠΈ, Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, U (h (p, n (p)), x) = U (n (p), x) ΠΏΡ€ΠΈ всСх Ρ€ ΠΈ Ρ… (ΠΊΠ°ΠΊ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ, ΠΎΠ±Π΅ части ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹).

ΠœΡ‹ Π²ΠΈΠ΄Π΅Π»ΠΈ, Ρ‡Ρ‚ΠΎ нСподвиТная Ρ‚ΠΎΡ‡ΠΊΠ° строится конструктивно. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Ссли ΠΌΡ‹ ΠΈΡ‰Π΅ΠΌ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΡƒΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ для Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ h, вычислимо зависящСй ΠΎΡ‚ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° Ρ€, Ρ‚ΠΎ ΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ нашСго построСния Π±ΡƒΠ΄Π΅Ρ‚ вычислимо Π·Π°Π²ΠΈΡΠ΅Ρ‚ΡŒ ΠΎΡ‚ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° Ρ€.

ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π±Ρ‹ Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ Π·Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ рассуТдСниС, Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰Π΅Π΅ этот ΠΏΠ»Π°Π½, Π½ΠΎ ΠΎΠ½ΠΎ довольно Π³Ρ€ΠΎΠΌΠΎΠ·Π΄ΠΊΠΎ (ΠΈ Π²Ρ€ΡΠ΄ Π»ΠΈ ΠΎΡ‚ ΡΡ‚ΠΎΠ³ΠΎ Π΄ΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ станСт Π±ΠΎΠ»Π΅Π΅ понятным).

Π’ ΡΡ‚ΠΎΠΉ Ρ‚Π΅ΠΎΡ€Π΅ΠΌΠ΅ ΠΌΡ‹ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π»ΠΈ, Ρ‡Ρ‚ΠΎ сСмСйство Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ h ΡΠΎΡΡ‚ΠΎΠΈΡ‚ ΠΈΠ· Π²ΡΡŽΠ΄Ρƒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ. На ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅ это Π½Π΅ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ: для ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠ³ΠΎ вычислимого сСмСйства вычислимых Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ h (Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, для ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠΉ вычислимой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ h Π΄Π²ΡƒΡ… Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ²) сущСствуСт Π²ΡΡŽΠ΄Ρƒ опрСдСлённая вычислимая функция n ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π° с Ρ‚Π°ΠΊΠΈΠΌ свойством: ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Ρ€ Π»ΠΈΠ±ΠΎ функция h Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π° Π² Ρ‚ΠΎΡ‡ΠΊΠ΅ n (Ρ€), Π»ΠΈΠ±ΠΎ n (Ρ€) являСтся Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ h.

НСподвиТная Ρ‚ΠΎΡ‡ΠΊΠ° для пСрСчислимых мноТСств

Всё сказанноС ΠΏΠΎΡ‡Ρ‚ΠΈ Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ пСрСносится Π½Π° Π³Π»Π°Π²Π½Ρ‹Π΅ Π½ΡƒΠΌΠ΅Ρ€Π°Ρ†ΠΈΠΈ пСрСчислимых мноТСств (Ссли W — Π³Π»Π°Π²Π½ΠΎΠ΅ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΠ΅ пСрСчислимоС мноТСство, Ρ‚ΠΎ Π²ΡΡΠΊΠ°Ρ вычислимая Π²ΡΡŽΠ΄Ρƒ опрСдСлённая функция h ΠΈΠΌΠ΅Π΅Ρ‚ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΡƒΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ n, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ).

Π’ ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅, Ссли W — Π³Π»Π°Π²Π½ΠΎΠ΅ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΠ΅ пСрСчислимоС мноТСство, Ρ‚ΠΎ ΠΊ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ эквивалСнтности

ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΠΎ рассуТдСниС ΠΈΠ· Π΄ΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²Π° Ρ‚Π΅ΠΎΡ€Π΅ΠΌΡ‹ 4, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ любая вычислимая функция f ΠΈΠΌΠ΅Π΅Ρ‚ вычислимоС Π²ΡΡŽΠ΄Ρƒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠ΅ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ΅Π½ΠΈΠ΅.

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ это. Для этого рассмотрим мноТСство

V = {(Ρ€, Ρ…) / f (Ρ€) ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ ΠΈ (f (Ρ€), x) W}.

Π›Π΅Π³ΠΊΠΎ ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ это мноТСство пСрСчислимо (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΎΠ½ΠΎ Π΅ΡΡ‚ΡŒ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ опрСдСлСния вычислимой Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ (Ρ€, x) > w (f (Ρ€), x), Π³Π΄Π΅ w — вычислимая функция с ΠΎΠ±Π»Π°ΡΡ‚ΡŒΡŽ опрСдСлСния W). ΠŸΡ€ΠΈ этом), Ссли f (Ρ€) ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ, ΠΈ, Ссли f (Ρ€) Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ. Вспоминая, Ρ‡Ρ‚ΠΎ W ΡΠ²Π»ΡΠ΅Ρ‚ся Π³Π»Π°Π²Π½Ρ‹ΠΌ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Ρ‹ΠΌ мноТСством, ΠΌΡ‹ Π½Π°Ρ…ΠΎΠ΄ΠΈΠΌ Π²ΡΡŽΠ΄Ρƒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ s, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ,) для Ρ‚Π΅Ρ… Ρ€, для ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… f (Ρ€) ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ, Ρ‡Ρ‚ΠΎ ΠΈ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π»ΠΎΡΡŒ.

3. ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠ°Ρ Ρ‡Π°ΡΡ‚ΡŒ

ΠšΠ»Π°ΡΡΠΈΡ‡Π΅ΡΠΊΠΈΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ примСнСния Ρ‚Π΅ΠΎΡ€Π΅ΠΌΡ‹ ΠΎ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅ являСтся Ρ‚Π°ΠΊΠΎΠ΅ Π΅Ρ‘ ΡΠ»Π΅Π΄ΡΡ‚Π²ΠΈΠ΅: сущСствуСт ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, ΠΏΠ΅Ρ‡Π°Ρ‚Π°ΡŽΡ‰Π°Ρ (Π½Π° Π»ΡŽΠ±ΠΎΠΌ Π²Ρ…ΠΎΠ΄Π΅) свой собствСнный тСкст. Π’ ΡΠ°ΠΌΠΎΠΌ Π΄Π΅Π»Π΅, Ссли Π±Ρ‹ Ρ‚Π°ΠΊΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π΅ Π±Ρ‹Π»ΠΎ, Ρ‚ΠΎ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅

Ρ€ > (ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, которая Π½Π° Π»ΡŽΠ±ΠΎΠΌ Π²Ρ…ΠΎΠ΄Π΅ ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅Ρ‚ Ρ€) Π½Π΅ ΠΈΠΌΠ΅Π»ΠΎ Π±Ρ‹ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ.

Π€ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎ говоря, это слСдствиС ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹Ρ€Π°Π·ΠΈΡ‚ΡŒ Ρ‚Π°ΠΊ:

Π’Π΅ΠΎΡ€Π΅ΠΌΠ° 3. ΠŸΡƒΡΡ‚ΡŒ U (n, Ρ…) — главная вычислимая ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Π°Ρ функция для класса всСх вычислимых Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°. Π’ΠΎΠ³Π΄Π° сущСствуСт Ρ‚Π°ΠΊΠΎΠ΅ число Ρ€, Ρ‡Ρ‚ΠΎ U (p, Ρ…) = Ρ€ Π΄Π»Ρ любого Ρ….

Π’ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡΡ‚ских Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Ρ…: ΠΏΡƒΡΡ‚ΡŒ U (p, x) — Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ примСнСния паскаль-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Ρ€ ΠΊ ΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½ΠΎΠΌΡƒ Π²Ρ…ΠΎΠ΄Ρƒ Ρ…. (УточнСния: (1) ΠΌΡ‹ ΠΎΡ‚оТдСствляСм числа ΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π±Π°ΠΉΡ‚ΠΎΠ²; (2) Ссли ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π΅ Π·Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹, ΠΌΡ‹ ΡΡ‡ΠΈΡ‚Π°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½, Π΄Π°ΠΆΠ΅ Ссли Π½Π° ΡΡ‚Π°Π½Π΄Π°Ρ€Ρ‚Π½Ρ‹ΠΉ Π²Ρ‹Ρ…ΠΎΠ΄ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ послано.) Ясно, Ρ‡Ρ‚ΠΎ функция U Π±ΡƒΠ΄Π΅Ρ‚ Π³Π»Π°Π²Π½ΠΎΠΉ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΊ Π½Π΅ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ сформулированноС Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎ ΡƒΡ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠ΅; ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Ρ€, которая ΠΏΡ€ΠΈ любом Π²Ρ…ΠΎΠ΄Π΅ Π½Π° Π²Ρ‹Ρ…ΠΎΠ΄Π΅ Π΄Π°Ρ‘Ρ‚ Ρ€.

Ясно, Ρ‡Ρ‚ΠΎ это рассуТдСниС ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΠΎ для любого языка программирования; Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΡƒΠΏΠΎΠΌΡΠ½ΡƒΠ»ΠΈ язык паскаль, Ρ€ΠΎΠ»ΠΈ Π½Π΅ ΠΈΠ³Ρ€Π°Π΅Ρ‚.

Π’Ρ‹ΠΏΠΈΡˆΠ΅ΠΌ явно ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π½Π° ΠΏΠ°ΡΠΊΠ°Π»Π΅, ΠΏΠ΅Ρ‡Π°Ρ‚Π°ΡŽΡ‰ΡƒΡŽ свой тСкст. (Π­Ρ‚ΠΎ — Ρ…ΠΎΡ€ΠΎΡˆΠ°Ρ Π·Π°Π΄Π°Ρ‡Π° для Π»ΡŽΠ±ΠΈΡ‚Π΅Π»Π΅ΠΉ программирования.) Для Π½Π°Ρ‡Π°Π»Π° напишСм Π½Π΅Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡŽ Π½Π° Ρ€ΡƒΡΡΠΊΠΎΠΌ языкС: Π½Π°ΠΏΠ΅Ρ‡Π°Ρ‚Π°Ρ‚ΡŒ Π΄Π²Π° Ρ€Π°Π·Π°, Π²Ρ‚ΠΎΡ€ΠΎΠΉ Ρ€Π°Π· Π² ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠ°Ρ…, Ρ‚Π°ΠΊΠΎΠΉ тСкст: «Π½Π°ΠΏΠ΅Ρ‡Π°Ρ‚Π°Ρ‚ΡŒ Π΄Π²Π° Ρ€Π°Π·Π°, Π²Ρ‚ΠΎΡ€ΠΎΠΉ Ρ€Π°Π· Π² ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠ°Ρ…, Ρ‚Π°ΠΊΠΎΠΉ тСкст:»

Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΏΠΎΡ…ΠΎΠΆΠ΅Π΅ Π½Π° ΠΏΠ°ΡΠΊΠ°Π»Π΅, понадобятся Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ хитрости, Π½ΠΎ ΠΈΠ΄Π΅Ρ ясна: строковая константа ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π΄Π²Π° Ρ€Π°Π·Π°. Π’ΠΎΡ‚ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²:

program selfprint;

var a: array[1.100]of string;i:integer; begin

a[1]: =' program selfprint ;';

a[2]: =' var a: array[1.100]of string;i:integer;';

a[3]: ='begin';

a[4]:='for i:=1 to 3 do writeln (a[i]);';

a[5]: =' 'for i:=1 to 11 do begin';

a[6]: =' write (chr (97), chr (91), i);';

a[7]: ='write (chr (93), chr (58), chr (61));';

a[8]:='writeln (chr (39), a[i], chr (39), chr (59));';

a[9]:= 'end;';

a[10]: ='for i:=4 to 11 do writeln (a[i]);';

a[11]: ='end.';

for i:=1 to 3 do writeln (a[i]); for i:=1 to 11 do begin write (chr (97), chr (91), i); write (chr (93), chr (58), chr (61)); writeln (chr (39), a[i], chr (39), chr (59)); end;

for i:=4 to 11 do writeln (a[i]); end.

Читая эту ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, ΠΏΠΎΠ»Π΅Π·Π½ΠΎ ΠΈΠΌΠ΅Ρ‚ΡŒ Π² Π²ΠΈΠ΄Ρƒ соотвСтствиС ΠΌΠ΅ΠΆΠ΄Ρƒ символами ΠΈ ΠΈΡ… ΠΊΠΎΠ΄Π°ΠΌΠΈ:

Π° [ ]: = ' ;

97 91 93 58 61 39 59

Π’ΠΈΠ΄Π½ΠΎ, Ρ‡Ρ‚ΠΎ эту ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π»Π΅Π³ΠΊΠΎ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½Π°, скаТСм, ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π»Π° свой тСкст Π·Π°Π΄ΠΎΠΌ Π½Π°ΠΏΠ΅Ρ€Ρ‘Π΄ — вмСсто ΠΊΠΎΠΌΠ°Π½Π΄ write ΠΈ writeln, ΠΏΠ΅Ρ‡Π°Ρ‚Π°ΡŽΡ‰ΠΈΡ… тСкст, Π½Π°Π΄ΠΎ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ Π΅Π³ΠΎ Π² Ρ„Π°ΠΉΠ» (ΠΈΠ»ΠΈ Π² ΠΌΠ°ΡΡΠΈΠ² Π±Π°ΠΉΡ‚ΠΎΠ²), Π° ΠΏΠΎΡ‚ΠΎΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, ΠΏΠ΅Ρ‡Π°Ρ‚Π°ΡŽΡ‰ΠΈΠ΅ этот Ρ„Π°ΠΉΠ» ΠΈΠ»ΠΈ массив Π² ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΌ порядкС.

Π‘Π΄Π΅Π»Π°Π² Π΅Ρ‰Ρ‘ ΠΎΠ΄ΠΈΠ½ шаг, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΈ Π΄ΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ Ρ‚Π΅ΠΎΡ€Π΅ΠΌΡ‹ ΠΎ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅. ΠŸΡƒΡΡ‚ΡŒ h — Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ паскаль-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, Ρƒ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ Π½Π°ΠΉΡ‚ΠΈ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΡƒΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ. Π’ΠΎΠ³Π΄Π° напишСм ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π½Π°ΠΏΠΎΠ΄ΠΎΠ±ΠΈΠ΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Π½Π½ΠΎΠΉ, которая Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ свой тСкст Π² ΡΡ‚Ρ€ΠΎΠΊΡƒ Ρ€, Π·Π°Ρ‚Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ h ΠΊ Ρ€, получая Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π΄Ρ€ΡƒΠ³ΡƒΡŽ строку q, Π° Π·Π°Ρ‚Π΅ΠΌ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ Паскаля Π½Π° ΡΡ‚Ρ€ΠΎΠΊΠ΅ q (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π² ΠΊΠ°Ρ‡Π΅ΡΡ‚Π²Π΅ Π²Ρ…ΠΎΠ΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ q Π²Ρ…ΠΎΠ΄ исходной ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹). ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, эта ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΡƒΠΆΠ΅ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎΠΉ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π² ΡΠ΅Π±Ρ (ΠΈ Π΄Π°ΠΆΠ΅ Π΄Π²Π° Ρ€Π°Π·Π° — ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Ρ€Π°Π· просто Ρ‚Π°ΠΊ, Π° Π²Ρ‚ΠΎΡ€ΠΎΠΉ Ρ€Π°Π· Π² ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠ°Ρ…) ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ паскаля, написанный Π½Π° ΠΏΠ°ΡΠΊΠ°Π»Π΅.

Ясно, Ρ‡Ρ‚ΠΎ такая ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ прСобразования h, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π΅Ρ‘ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ начинаСтся Ρ€ΠΎΠ²Π½ΠΎ с Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ вычисляСтся Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ h Π½Π° Π΅Ρ‘ тСкстС, послС Ρ‡Π΅Π³ΠΎ это Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ воспринимаСтся ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΠ΅Ρ‚ся ΠΊ Π²Ρ…ΠΎΠ΄Ρƒ.

ΠΊΠ»ΠΈΠ½ΠΈ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½Ρ‹ΠΉ Ρ‚ΠΎΡ‡ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π’ ΠΊΡƒΡ€ΡΠΎΠ²ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Π΅ Π±Ρ‹Π»ΠΈ рассмотрСны ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ вопросы:

Β· Π”Π°Π½Π° Ρ‚Π΅ΠΎΡ€Π΅ΠΌΠ° ΠΎ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅ ΠΈ Π΅Ρ‘ Π΄ΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ.

Β· РассмотрСн способ Π΄ΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²Π° Ρ‚Π΅ΠΎΡ€Π΅ΠΌΡ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ языка с Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€ΠΎΠΉ «ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ тСкст ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹»

Β· ΠŸΡ€ΠΈΠ²Π΅Π΄Ρ‘Π½ классичСский ΠΏΡ€ΠΈΠΌΠ΅Ρ€ примСнСния Ρ‚Π΅ΠΎΡ€Π΅ΠΌΡ‹ ΠΎ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅.

Π’ ΠΏΡ€Π°ΠΊΡ‚ичСской части Π±Ρ‹Π»ΠΎ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ‚Π΅ΠΎΡ€Π΅ΠΌΡ‹ ΠΎ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π² Π»ΡŽΠ±ΠΎΠΌ языкС программирования ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ найдётся ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, которая Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π° Π²Ρ…ΠΎΠ΄, Π½ΠΎ ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅Ρ‚ свой тСкст. Π’Π°ΠΊΠΆΠ΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ‚Π΅ΠΎΡ€Π΅ΠΌΡ‹ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΈΡ‡Π΅ΡΠΊΡƒΡŽ Π½Π΅Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΠΌΠΎΡΡ‚ΡŒ (Ρ‚.ΠΊ. Ссли ΠΌΡ‹ ΡƒΠ·Π½Π°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Ρƒ ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Π½Π΅Ρ‚ Π½Π΅ΠΏΠΎΠ΄Π²ΠΈΠΆΠ½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ, Ρ‚ΠΎ ΠΎΠ½Π° нСвычислима).

1. Н. К. Π’Π΅Ρ€Π΅Ρ‰Π°Π³ΠΈΠ½, А. ШСнь. Π›Π΅ΠΊΡ†ΠΈΠΈ ΠΏΠΎ ΠΌΠ°Ρ‚СматичСской Π»ΠΎΠ³ΠΈΠΊΠ΅ ΠΈ Ρ‚Π΅ΠΎΡ€ΠΈΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ². Π§Π°ΡΡ‚ΡŒ3. ВычислимыС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ. Москва, 1999 МЦНМО.

2. Π₯. РодТСрс. ВСория вычислимых Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ ΠΈ ΡΡ„фСктивная Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΠΌΠΎΡΡ‚ΡŒ. Π˜Π·Π΄Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ «ΠœΠ˜Π » Москва, 1972 Π³.

3. http://wikipedia.ru

ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ вСсь тСкст
Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ