ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² написании студСнчСских Ρ€Π°Π±ΠΎΡ‚
АнтистрСссовый сСрвис

АбстрактныС ΠΌΠ°ΡˆΠΈΠ½Ρ‹ ΠΈ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠ°Π»ΡŒΠ½Π°Ρ комбинаторная Π»ΠΎΠ³ΠΈΠΊΠ°

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

Π‘ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠ΅Ρ€Π²ΠΎΠΉ абстрактной ΠΌΠ°ΡˆΠΈΠ½Ρ‹, Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π±ΠΎΠ»Π΅Π΅ Π±Π»ΠΈΠ·ΠΊΠΎΠΉ ΠΏΠΎ ΠΏΡ€ΠΈΡ€ΠΎΠ΄Π΅ ΠΊ Π²Ρ‹ΡΠΎΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹ΠΌ языкам программирования, Ρ‡Π΅ΠΌ Ρ€Π°Π½Π½ΠΈΠ΅, Π½Π°ΠΈΠ²Π½Ρ‹Π΅ Ρ„ΠΎΡ€ΠΌΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π° ΠΈ ΠŸΠΎΡΡ‚Π°, исслСдоватСли стали ΠΏΡ€Π΅Π΄ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠΈ использования Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… машин для модСлирования Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Ρ… языков программирования. Π’Π°ΠΊ, Π² 1970;Ρ… Π³Π³. Π“. ΠŸΠ»ΠΎΡ‚ΠΊΠΈΠ½Ρ‹ΠΌ (Gordon David Plotkin) Π±Ρ‹Π»ΠΈ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½Ρ‹ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹Π΅ исслСдования… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

АбстрактныС ΠΌΠ°ΡˆΠΈΠ½Ρ‹ ΠΈ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠ°Π»ΡŒΠ½Π°Ρ комбинаторная Π»ΠΎΠ³ΠΈΠΊΠ° (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

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

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

ΠšΡ€Π°Ρ‚ΠΊΠΎ остановимся Π½Π° Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… (с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния этой ΠΊΠ½ΠΈΠ³ΠΈ) этапах ΡΠ²ΠΎΠ»ΡŽΡ†ΠΈΠΈ Ρ‚Π΅ΠΎΡ€ΠΈΠΈ ΠΈ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ абстрактных ΠΈ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… машин Π² Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹Ρ… тСориях ΠΈ ΡΠ·Ρ‹ΠΊΠ°Ρ… программирования.

Π•Ρ‰Π΅ Π·Π°Π΄ΠΎΠ»Π³ΠΎ Π΄ΠΎ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΡ высокоуровнСвых языков программирования, Π² 1930;Ρ… Π³Π³., А. Π’ΡŒΡŽΡ€ΠΈΠ½Π³ΠΎΠΌ (Alan Mathison Turing) ΠΈ Π­. ΠŸΠΎΡΡ‚ΠΎΠΌ (Emil Leon Post) нСзависимо Π΄Ρ€ΡƒΠ³ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³Π° созданы эквивалСнтныС ΠΏΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ям, Π½ΠΎ ΠΏΡ€Π°ΠΊΡ‚ичСски вСсьма слоТныС Π² Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ„ΠΎΡ€ΠΌΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ, извСстныС ΠΊΠ°ΠΊ абстрактныС ΠΌΠ°ΡˆΠΈΠ½Ρ‹ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ²ΡˆΠΈΠ΅ названия ΠΏΠΎ ΠΈΠΌΠ΅Π½Π°ΠΌ своих Π°Π²Ρ‚ΠΎΡ€ΠΎΠ².

АбстрактныС ΠΌΠ°ΡˆΠΈΠ½Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΊΠ°ΠΊ матСматичСскиС Ρ„ΠΎΡ€ΠΌΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ, ΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΡƒΡŽ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ элСмСнтарных ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ, ΠΈΠ»ΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, создатСли ΠΏΠ΅Ρ€Π²Ρ‹Ρ… абстрактных машин, ΠΏΠΎ ΡΡƒΡ‚ΠΈ, нСпосрСдствСнно прСдвосхитили появлСниС языков программирования, создав ΠΏΡƒΡΡ‚ΡŒ ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Π½Ρ‹Π΅, Π½ΠΎ Π² ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΌΠ΅Ρ€Π΅ алгоритмичСскиС ΠΈΠΌΠΏΠ΅Ρ€Π°Ρ‚ΠΈΠ²Π½Ρ‹Π΅ языки.

Π—Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ·Π΄Π½Π΅Π΅, Π² 1960;Ρ… Π³Π³., ΡƒΠΆΠ΅ Π² ΡΠΏΠΎΡ…Ρƒ высокоуровнСвых языков программирования, П. Π›Π΅Π½Π΄ΠΈΠ½ΠΎΠΌ Π±Ρ‹Π»Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° Ρ‚Π°ΠΊ называСмая SECDмашина — матСматичСская формализация для вычислСния лямбда-Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, этим ΠΆΠ΅ Π°Π²Ρ‚ΠΎΡ€ΠΎΠΌ создан Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ язык ISWIM, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ собой Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½ΠΎΠ³ΠΎ лямбда-исчислСния ΠΈ ΡΡ‚Π°Π²ΡˆΠΈΠΉ впослСдствии ΠΏΡ€ΠΎΠΎΠ±Ρ€Π°Π·ΠΎΠΌ языка программирования ML, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ, Π² ΡΠ²ΠΎΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, ΡΠ²ΠΎΠ»ΡŽΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π» Π² ΠΈΡΡΠ»Π΅Π΄ΡƒΠ΅ΠΌΡ‹ΠΉ Π½Π°ΠΌΠΈ язык программирования F#.

Π‘ ΠΏΠΎΡΠ²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΏΠ΅Ρ€Π²ΠΎΠΉ абстрактной ΠΌΠ°ΡˆΠΈΠ½Ρ‹, Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π±ΠΎΠ»Π΅Π΅ Π±Π»ΠΈΠ·ΠΊΠΎΠΉ ΠΏΠΎ ΠΏΡ€ΠΈΡ€ΠΎΠ΄Π΅ ΠΊ Π²Ρ‹ΡΠΎΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹ΠΌ языкам программирования, Ρ‡Π΅ΠΌ Ρ€Π°Π½Π½ΠΈΠ΅, Π½Π°ΠΈΠ²Π½Ρ‹Π΅ Ρ„ΠΎΡ€ΠΌΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π° ΠΈ ΠŸΠΎΡΡ‚Π°, исслСдоватСли стали ΠΏΡ€Π΅Π΄ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠΈ использования Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… машин для модСлирования Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Ρ… языков программирования. Π’Π°ΠΊ, Π² 1970;Ρ… Π³Π³. Π“. ΠŸΠ»ΠΎΡ‚ΠΊΠΈΠ½Ρ‹ΠΌ (Gordon David Plotkin) Π±Ρ‹Π»ΠΈ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅Π½Ρ‹ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½Ρ‹Π΅ исслСдования SECD-ΠΌΠ°ΡˆΠΈΠ½Ρ‹, созданной II. Π›Π΅Π½Π΄ΠΈΠ½Ρ‹ΠΌ, ΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ ΡƒΠ΄Π°Π»ΠΎΡΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для модСлирования Ρ€Π°Π½Π½ΠΈΡ… вСрсий Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ языка Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ программирования ML. Π—Π°Ρ‚Π΅ΠΌ, Π² 1980;Ρ… Π³Π³., Π³Ρ€ΡƒΠΏΠΏΠΎΠΉ французских ΡƒΡ‡Π΅Π½Ρ‹Ρ… Π² ΡΠΎΡΡ‚Π°Π²Π΅ П.-Π›. ΠšΡŽΡ€ΡŒΠ΅Π½Π° (Pierre-Louis Curien), Π“. ΠšΡƒΠ·ΠΈΠ½ΠΎ (Guy Cousineau), М. Мони (Michel Mauny) ΠΈ Ρ€ΡΠ΄Π° Π΄Ρ€ΡƒΠ³ΠΈΡ… исслСдоватСлСй ΡƒΠ΄Π°Π»ΠΎΡΡŒ ΡƒΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Ρ„ΠΎΡ€ΠΌΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ SECD-ΠΌΠ°ΡˆΠΈΠ½Ρ‹ ΠΈ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½Π° Π΅Π΅ ΠΎΡΠ½ΠΎΠ²Π΅ Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡƒΡŽ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠ°Π»ΡŒΠ½ΡƒΡŽ Π°Π±ΡΡ‚Ρ€Π°ΠΊΡ‚Π½ΡƒΡŽ ΠΌΠ°ΡˆΠΈΠ½Ρƒ (КАМ), ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚ нашСго дальнСйшСго рассмотрСния.

НаконСц, Π² ΡΠ΅Ρ€Π΅Π΄ΠΈΠ½Π΅ 1980;Ρ… Π³Π³. Ρ‚Π΅ΠΌ ΠΆΠ΅ авторским ΠΊΠΎΠ»Π»Π΅ΠΊΡ‚ΠΈΠ²ΠΎΠΌ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ абстрактной ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Π±Ρ‹Π»Π° создана ΠΏΠΎΠ»Π½ΠΎΠΌΠ°ΡΡˆΡ‚Π°Π±Π½Π°Ρ рСализация ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½ΠΎΠ³ΠΎ для этих Ρ†Π΅Π»Π΅ΠΉ Π΄ΠΈΠ°Π»Π΅ΠΊΡ‚Π° языка Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ программирования ML, ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ²ΡˆΠ΅Π³ΠΎ (ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ абстрактной ΠΌΠ°ΡˆΠΈΠ½Ρ‹) Π½Π°Π·Π²Π°Π½ΠΈΠ΅ CaML.

ΠŸΠ΅Ρ€Π΅ΠΉΠ΄Π΅ΠΌ ΠΊ Π±ΠΎΠ»Π΅Π΅ Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠΌΡƒ ΠΎΠ±ΡΡƒΠΆΠ΄Π΅Π½ΠΈΡŽ понятия абстрактной ΠΌΠ°ΡˆΠΈΠ½Ρ‹.

Абстрактной машиной (abstract machine) Π² Ρ€Π°ΠΌΠΊΠ°Ρ… этой ΠΊΠ½ΠΈΠ³ΠΈ Π±ΡƒΠ΄Π΅ΠΌ Π½Π°Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΌΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ Ρ„ΠΎΡ€ΠΌΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ, которая ΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΏΡ€Π°Π²ΠΈΠ»Π° выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ (ΠΈΠ»ΠΈ, ΠΈΠ½Π°Ρ‡Π΅, Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹) для Ρ‚ΠΎΠΉ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΉ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ (ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°). Π’ Π½Π°ΡΡ‚оящСС врСмя ΠΏΡ€ΠΈ практичСской Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… классов языков программирования, Π² Ρ‡Π°ΡΡ‚ности Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… языков, ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π°Π½Π°Π»ΠΎΠ³ΠΈ абстрактных машин Π² Ρ„ΠΎΡ€ΠΌΠ΅ Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ… Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… машин (virtual machine).

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

ΠžΡ‚ΠΌΠ΅Ρ‚ΠΈΠΌ Ρ‚Π°ΠΊΠΆΠ΅ Ρ‚ΠΎ ΠΎΠ±ΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ, Ρ‡Ρ‚ΠΎ абстрактныС ΠΌΠ°ΡˆΠΈΠ½Ρ‹ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π°Π΄Π΅ΠΊΠ²Π°Ρ‚Π½ΠΎ ΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Ρ‹ ΠΈ ΡΡ‚Ρ€Π°Ρ‚Π΅Π³ΠΈΠΈ вычислСний, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Ρ€Π°Π½Π΅Π΅ рассмотрСнныС рСкурсивныС вычислСния, Π° Ρ‚Π°ΠΊΠΆΠ΅ вычислСния ΠΏΠΎ Π½Π΅ΠΎΠ±Ρ…одимости (ΠΈΠ½Π°Ρ‡Π΅ извСстныС ΠΊΠ°ΠΊ «Π»Π΅Π½ΠΈΠ²Ρ‹Π΅»), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ рассмотрСны Π½ΠΈΠΆΠ΅.

Π£Ρ‚ΠΎΡ‡Π½ΠΈΠ² понятия ΠΎΠ± Π°Π±ΡΡ‚Ρ€Π°ΠΊΡ‚Π½Ρ‹Ρ… ΠΈ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΌΠ°ΡˆΠΈΠ½Π°Ρ…, ΠΏΠ΅Ρ€Π΅ΠΉΠ΄Π΅ΠΌ ΠΊ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΡŽ особСнностСй Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… классов рассматриваСмых Ρ„ΠΎΡ€ΠΌΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΉ, ΠΏΡ€ΠΎΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Π² Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ классы Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΌΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ ΠΈΠ· ΠΌΠ°Ρ‚СматичСской Ρ‚Π΅ΠΎΡ€ΠΈΠΈ ΠΈ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ программирования.

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

НСсмотря Π½Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΈΠ²Π½Ρ‹Π΅ трудности практичСской Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰Π΅ΠΉ Π² Π±ΠΎΠ»ΡŒΡˆΠ΅ΠΉ стСпСни тСорСтичСский интСрСс, Ρ€Π°Π½Π½ΠΈΠ΅ абстрактныС ΠΌΠ°ΡˆΠΈΠ½Ρ‹, бСзусловно, Π±Ρ‹Π»ΠΈ вСсьма Π·Π½Π°Ρ‡ΠΈΠΌΡ‹ΠΌΠΈ для развития computer science, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ прСдвосхитили появлСниС ΠΈ ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡ΠΈΠ»ΠΈ ряд этапов развития Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ΠΎΠ² ΠΈ ΡΠ·Ρ‹ΠΊΠΎΠ² программирования для Π½ΠΈΡ…. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, слСдуСт ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ·Π΄Π½ΠΈΠ΅, Π·Ρ€Π΅Π»Ρ‹Π΅ Ρ„ΠΎΡ€ΠΌΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ машин, основанныС Π½Π° ΡΠΎΡΡ‚ояниях. К Π½ΠΈΠΌ Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ относятся упомянутая Ρ€Π°Π½Π΅Π΅ SECD-машина П. Π›Π΅Π½Π΄ΠΈΠ½Π°, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠ°Π»ΡŒΠ½Π°Ρ абстрактная машина.

Как ΡƒΠΆΠ΅ ΠΎΡ‚ΠΌΠ΅Ρ‡Π°Π»ΠΎΡΡŒ, Π² 1960;Ρ… Π³Π³., Π² ΡΠΏΠΎΡ…Ρƒ высокоуровнСвых языков программирования, П. Π›Π΅Π½Π΄ΠΈΠ½ΠΎΠΌ Π±Ρ‹Π»Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π° Ρ‚Π°ΠΊ называСмая SECDмашина, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ матСматичСская формализация для вычислСния лямбдавыраТСний. ΠŸΡ€ΠΈ этом SECD-машина Π±Ρ‹Π»Π° ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° для Ρ€Π΅Π΄ΡƒΠΊΡ†ΠΈΠΈ лямбда-Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π»Π° ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ (call-by-value), Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΡ… Ρ‚ΠΈΠΏΠΎΠ² ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ, ΠΈΠ»ΠΈ call-by-name). Π‘Π²ΠΎΠ΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ SECD-машина ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»Π° ΠΎΡ‚ Π°Π±Π±Ρ€Π΅Π²ΠΈΠ°Ρ‚ΡƒΡ€ ΠΈΠΌΠ΅Π½ своих основных Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅Ρ… элСмСнтов, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ:

  • β€’ Stack — стСк, Ρ‚. Π΅. ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Π°Ρ‚ΠΎΠΌΠ°Ρ€Π½Ρ‹Ρ… лямбда-Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ (ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈ ΠΊΠΎΠ½ΡΡ‚Π°Π½Ρ‚), Π° Ρ‚Π°ΠΊΠΆΠ΅ лямбда-абстракций;
  • β€’ Environment — срСда, Ρ‚. Π΅. Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠ²ΡΠ·Ρ‹Π²Π°ΡŽΡ‚ΡΡ с ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ Π² Ρ…ΠΎΠ΄Π΅ вычислСний;
  • β€’ Control — ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅, Ρ‚. Π΅. ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ «ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΠΉ», ΡƒΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ SECD-ΠΌΠ°ΡˆΠΈΠ½Ρ‹;
  • β€’ Dump — Π΄Π°ΠΌΠΏ, Ρ‚. Π΅. Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ состояния SECD-ΠΌΠ°ΡˆΠΈΠ½Ρ‹ (ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ пуст Π»ΠΈΠ±ΠΎ содСрТит ΠΏΡ€Π΅ΠΆΠ½Π΅Π΅ состояниС).

ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½Π½Π°Ρ Ρ‡Π΅Ρ‚Π²Π΅Ρ€ΠΊΠ° элСмСнтов Π² ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΌΠ΅Ρ€Π΅ Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€ΠΈΠ·ΡƒΠ΅Ρ‚ состояниС SECD-ΠΌΠ°ΡˆΠΈΠ½Ρ‹ Π² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ вычислСний.

Π—Π°ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΠΈΠΌΠ΅Π½Π½ΠΎ SECD-машина явилась ΠΏΡ€ΠΎΠΎΠ±Ρ€Π°Π·ΠΎΠΌ для Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ·Π΄Π½ΠΈΡ… Ρ„ΠΎΡ€ΠΌΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΉ, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ ML-ΠΌΠ°ΡˆΠΈΠ½Ρ‹, Π² Ρ‡Π°ΡΡ‚ности, ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠ°Π»ΡŒΠ½Π°Ρ абстрактная машина.

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

  • 1) ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹ функция тоТдСства, ΠΈΠ»ΠΈ тоТдСствСнноС ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ (ΠΈΠΌΠ΅ΡŽΡ‰Π΅Π΅ Π² ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€Π½ΠΎΠΉ Π»ΠΎΠ³ΠΈΠΊΠ΅ Π°Π½Π°Π»ΠΎΠ³ Π² Ρ„ΠΎΡ€ΠΌΠ΅ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€Π° тоТдСства I);
  • 2) опСрация ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ ΠΈΠ»ΠΈ построСния слоТной Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ (ΠΈΠΌΠ΅ΡŽΡ‰Π°Ρ Π² ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€Π½ΠΎΠΉ Π»ΠΎΠ³ΠΈΠΊΠ΅ Π°Π½Π°Π»ΠΎΠ³ Π² Ρ„ΠΎΡ€ΠΌΠ΅ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€Π° тоТдСства Π’);
  • 3) опСрация образования упорядочСнной ΠΏΠ°Ρ€Ρ‹ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ;
  • 4) опСрация взятия ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ элСмСнта ΠΈΠ· ΡƒΠΏΠΎΡ€ΡΠ΄ΠΎΡ‡Π΅Π½Π½ΠΎΠΉ ΠΏΠ°Ρ€Ρ‹ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²;
  • 5) опСрация взятия Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ элСмСнта ΠΈΠ· ΡƒΠΏΠΎΡ€ΡΠ΄ΠΎΡ‡Π΅Π½Π½ΠΎΠΉ ΠΏΠ°Ρ€Ρ‹ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²;
  • 6) опСрация прСобразования Ρ‚Π΅Ρ€ΠΌΠ° ΠΈΠ· Π°Π»Π³Π΅Π±Ρ€Π°ΠΈΡ‡Π΅ΡΠΊΠΎΠΉ Ρ„ΠΎΡ€ΠΌΡ‹ Π² Π°Π½ΠΏΠ»ΠΈΠΊΠ°Ρ‚ΠΈΠ²Π½ΡƒΡŽ;
  • 7) опСрация Π°ΠΏΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ примСнСния Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ ΠΊ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρƒ.

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

Π—Π°ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ послСдняя опСрация называСтся ΠΊΠ°Ρ€Ρ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ, Π° ΠΎΠ±Ρ€Π°Ρ‚ная Π΅ΠΉ — Π΄Π΅ΠΊΠ°Ρ€Ρ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ — ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ основополоТника ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€Π½ΠΎΠΉ Π»ΠΎΠ³ΠΈΠΊΠΈ X. ΠšΠ°Ρ€Ρ€ΠΈ.

ΠšΡ€ΠΎΠΌΠ΅ пСрСчислСнных Π²Ρ‹ΡˆΠ΅ условий, для построСния Π΄Π΅ΠΊΠ°Ρ€Ρ‚ΠΎΠ²Ρ‹Ρ… ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΉ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒ сущСствования Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ пространства ΠΈΠ»ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ экспонСнцирования.

Для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€Π½ΠΎΠΉ Π»ΠΎΠ³ΠΈΠΊΠΈ (извСстного Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€Π½ΠΎΠΉ Π»ΠΎΠ³ΠΈΠΊΠΈ (ΠšΠšΠ›)), Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΠΊ ΠΈΠ·Π²Π΅ΡΡ‚Π½Ρ‹ΠΌ Π½Π°ΠΌ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€Π°ΠΌ.

  • (I) I Π°=Π°;
  • (К) К, Π° Π¬=Π°;
  • (S) Sab с=Π° с (Π¬ с);
  • (B) Π’, Π° Π¬ с=Π° (Π¬ с);
  • © Cal) с=Π° с Π¬

ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€Ρ‹, Π²Ρ‹ΡΡ‚ΡƒΠΏΠ°ΡŽΡ‰ΠΈΠ΅ Π² Ρ€ΠΎΠ»ΠΈ «ΠΌΠ°ΡˆΠΈΠ½Π½Ρ‹Ρ… инструкций» ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ абстрактной ΠΌΠ°ΡˆΠΈΠ½Ρ‹:

  • (D) D=7. Ρ… Ρƒ. |Ρ…, Ρƒ]=А. Ρ… Ρƒ Π³. Π³ Ρ… Ρƒ;
  • (5) S=C I S;
  • (А) А=Π₯ Ρ…. (X z. Ρ… [Ρƒ, z]);

О β€˜=К=Π₯ Ρ…. (А. Ρƒ. Ρ…).

Π—Π°ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ характСристичСскоС ΡΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ (D) прСдставляСт собой ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ образования упорядочСнной ΠΏΠ°Ρ€Ρ‹, ΡΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ (А) — ΠΊΠ°Ρ€Ρ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, Π° ΡΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ (β€˜), Ρ€Π°Π½Π΅Π΅ извСстноС Π½Π°ΠΌ ΠΊΠ°ΠΊ характСристика ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€Π°-канцСлятора К, — ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ взятия ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ†ΠΈΠΈ для упорядочСнной ΠΏΠ°Ρ€Ρ‹ элСмСнтов, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΠΎΠΆΠ½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ ΠΊΠ°ΠΊ Ρ†ΠΈΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅.

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

Π”Π°Π»Π΅Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ бСсконСчноС мноТСство ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€ΠΎΠ² ΠΏ! со ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ сСмантичСской характСристикой:

||ΠΏ||=ΠΏ!

ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΠΌ сСмантичСскиС равСнства ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΡΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ΠΌ, Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€ΠΈΠ·ΡƒΡŽΡ‰ΠΈΠΌ значСния констант:

Цс||—Π‘.

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

ЗначСния упорядочСнной ΠΏΠ°Ρ€Ρ‹ ΠΈ Π»ΡΠΌΠ±Π΄Π°-абстракции, ΠΊΠ°ΠΊ оказываСтся, Π·Π°Π΄Π°ΡŽΡ‚ΡΡ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ€Π°Π½Π΅Π΅ рассмотрСнных ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€ΠΎΠ² S ΠΈ Π›:

||M, N||=S [||M||,||N||];

|| Π₯, Ρ…. М||=Π› (М).

Π—Π°ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ благодаря ввСдСнию Π² Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Π½ΠΈΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€ΠΎΠ².

  • (D) D=X Ρ… Ρƒ. [Ρ…, Ρƒ]=Π₯ Ρ… Ρƒ Π³. Π³ Ρ… Ρƒ;
  • (5) 5*=Π‘ I S;
  • (Π›) Π›=А, Ρ…. (A, z. Ρ… [Ρƒ, z]);

О =К=Π₯ Ρ…. (А, Ρƒ. Ρ…) Π²Ρ‹ΡˆΠ΅ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½Π½Ρ‹Π΅ синтактико-сСмантичСскиС ΡΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ сводимы ΠΊ Ρ‡ΠΈΡΡ‚ΠΎ синтаксичСским равСнствам, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π²ΠΈΠ΄:

О ! [Ρ…, Ρƒ]=Ρƒ;

(ΠΏ±1) ! [Ρ…, Ρƒ]=ΠΏ! Ρ…;

S [Ρ…, Ρƒ] z=x z (Ρƒ z);

Π› (Ρ…) Ρƒ z=x [Ρƒ, Π³].

ΠžΡ‚ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ послСдниС Π΄Π²Π° ΡΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ, ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‰ΠΈΠ΅ соотвСтствСнно Π΄Π΅ΠΊΠ°Ρ€Ρ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΠΊΠ°Ρ€Ρ€ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ для Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° ΠΎΡ‚ Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠΉ систСмы ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€Π½ΠΎΠΉ Π»ΠΎΠ³ΠΈΠΊΠΈ (ΠšΠ›) ΠΊ Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠΉ систСмС ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€Π½ΠΎΠΉ Π»ΠΎΠ³ΠΈΠΊΠΈ (ΠšΠšΠ›).

Для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ формализация приняла Π±ΠΎΠ»Π΅Π΅ строгий ΠΈ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΉ Π²ΠΈΠ΄, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ввСсти Π² Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Π½ΠΈΠ΅ двухмСстный ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€ образования ΠΏΠ°Ρ€Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ опрСдСляСтся лямбда-Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ Π²ΠΈΠ΄Π°:

<, t. [ t, t].

ΠŸΡ€ΠΈ этом комбинаторная характСристика вновь Π²Π²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€Π° образования ΠΏΠ°Ρ€Ρ‹ ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Π²ΠΈΠ΄:

=A, t. to. (f t)(g t)=to. f t, g t].

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€ образования ΠΏΠ°Ρ€Ρ‹ характСризуСтся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ сСмантичСским равСнством:

IIМ, N||=.

ПослС задания ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ образования упорядочСнной ΠΏΠ°Ρ€Ρ‹ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, для Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ Ρ„ΠΎΡ€ΠΌΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ прямого ΠΈΠ»ΠΈ Π΄Π΅ΠΊΠ°Ρ€Ρ‚ΠΎΠ²Π° произвСдСния Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ взятия ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ ΠΈ Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ элСмСнтов упорядочСнной ΠΏΠ°Ρ€Ρ‹, ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΠΈ Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ†ΠΈΠΉ.

Богласно общСпринятой алгСбраичСской ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅, оснастим вновь Π²Π²Π΅Π΄Π΅Π½Π½ΡƒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ Π΄Π΅ΠΊΠ°Ρ€Ρ‚ΠΎΠ²Π° произвСдСния ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€Π°ΠΌΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΠΈ Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ†ΠΈΠΉ с ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€Π½Ρ‹ΠΌΠΈ характСристиками ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ Π²ΠΈΠ΄Π°:

Fst=C I К=(ΠΏ±1)!

Snd=C I (К 1)=(0)!

ΠžΡ‚ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ вновь Π²Π²Π΅Π΄Π΅Π½Π½Ρ‹Π΅ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€Ρ‹ Fst для ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ†ΠΈΠΈ ΠΈ Snd для Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ†ΠΈΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ характСристичСскиС ΡΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ:

Fst [Ρ…, Ρƒ]=Ρ…;

Snd [Ρ…, Ρƒ]=Ρƒ;

z=[x z, Ρƒ z].

ПослСднСС ΡΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ опрСдСляСт связь ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€ΠΎΠΌ образования упорядочСнной ΠΏΠ°Ρ€Ρ‹ ΠΈ Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠΉ ΠΏΠ°Ρ€ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, Ρ‚. Π΅. Ρ‚Π°ΠΊΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠ΅ΠΉ, которая Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Π΄Π°Π΅Ρ‚ ΡΠΎΠ²ΠΎΠΊΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² своих Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ-ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² Ρ…: А—>Π’ΠΈΡƒ:А—" Π‘ Π² Π²ΠΈΠ΄Π΅ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ w: А —" Π’ Ρ… Π‘. Π—Π°ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ввСдСнная систСма ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€ΠΎΠ² Fst, Snd, (n±l)!, О!, S, Π› ΡΠ²Π»ΡΠ΅Ρ‚ся ΠΈΠ·Π±Ρ‹Ρ‚ΠΎΡ‡Π½ΠΎΠΉ. Π˜Π·Π±Ρ‹Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ систСмы ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€ΠΎΠ² устраняСтся Π²Π²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€Π° ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ ΠΎ = Π’, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ принимаСтся тоТдСствСнно Ρ€Π°Π²Π½Ρ‹ΠΌ Ρ€Π°Π½Π΅Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡƒ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€Ρƒ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ Π’.

Π”Π°Π»Π΅Π΅ Π²Π²Π΅Π΄Π΅ΠΌ явно ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€ Π°ΠΏΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π΅. Π’Ρ‹Π²Π΅Π΄Π΅ΠΌ ΡΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ позволят ΡƒΡΡ‚Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΈΠ·Π±Ρ‹Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒ систСмы ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€ΠΎΠ²:

5 (Ρ… Ρƒ t)=x t (Ρƒ t)=? [Ρ… t, Ρƒ t]=(e ΠΎ) t.

ΠžΡ‚ΡΡŽΠ΄Π°.

(i) 5=А, Ρ… Ρƒ. (Π΅ ΠΎ).

ПолоТим Fstn+1=Fst ΠΎ Fstn для ΠΏ>1 ΠΈ Fst1=Fst. Π’ΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ, Ρ‡Ρ‚ΠΎ.

(ii) n≠Snd ΠΎ Fstn для n>0, a 0≠Snd.

Π—Π°Π²Π΅Ρ€ΡˆΠΈΠΌ построСниС Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠΉ систСмы ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€Π½ΠΎΠΉ Π»ΠΎΠ³ΠΈΠΊΠΈ. Π‘ ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ устранСния ΠΈΠ·Π±Ρ‹Ρ‚ΠΎΡ‡Π½Ρ‹Ρ… ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€ΠΎΠ² ΠΈΠ· Ρ€Π°ΡΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Π΅ΠΌΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠΉ систСмы ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ΅Ρ€Π΅Ρ‡Π΅Π½ΡŒ характСристичСских ΡΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΉ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€Π½ΠΎΠΉ Π»ΠΎΠ³ΠΈΠΊΠΈ:

  • (ass) (Ρ… ΠΎ Ρƒ) Z—X (Ρƒ z);
  • (fst) Fst [Ρ…, Ρƒ]=Ρ…;
  • (snd) Snd [Ρ…, Ρƒ]=Ρƒ;
  • (dpair) z=[x z, Ρƒ z];
  • (ас) s [Π› (Ρ…) Ρƒ, z]=x [Ρƒ, z];
  • (quote) (β€˜Ρ…)Ρƒ=Ρ….

Π—Π°ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΡΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ (ass) устанавливаСт связь Π°ΠΏΠΏΠ»ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ, ΡΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ (dpair) — спаривания ΠΈ Ρ„ормирования совокупности, Π° ΡΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ (ас) — каррирования ΠΈ Π°ΠΏΠΏΠ»ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ.

Напомним, Ρ‡Ρ‚ΠΎ ΡΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ (fst) ΠΈ (snd) Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€ΠΈΠ·ΡƒΡŽΡ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ взятия ΠΏΠ΅Ρ€Π²ΠΎΠΉ ΠΈ Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ†ΠΈΠΉ для упорядочСнной ΠΏΠ°Ρ€Ρ‹ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², a (quote) — Ρ†ΠΈΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅.

ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹Π΅ ΡΠΎΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ (ass), (fst), (snd), (dpair), (ас) ΠΈ (quote) Π°Π΄Π΅ΠΊΠ²Π°Ρ‚Π½ΠΎ (ΠΏΠΎΠ»Π½ΠΎ ΠΈ Π½Π΅ΠΏΡ€ΠΎΡ‚ΠΈΠ²ΠΎΡ€Π΅Ρ‡ΠΈΠ²ΠΎ) Ρ„ΠΎΡ€ΠΌΠ°Π»ΠΈΠ·ΡƒΡŽΡ‚ систСму ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ‚ΠΎΡ€Π½ΠΎΠΉ Π»ΠΎΠ³ΠΈΠΊΠΈ.

ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹Π΅ вопросы

Вопрос 1.

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ 1 Π² Ρ‡Π΅ΠΌ состоит основноС Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ абстрактных машин?

  • Π°) Π² Ρ„ΠΎΡ€ΠΌΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ (+);
  • Π±) Π² Ρ„ΠΎΡ€ΠΌΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ синтаксиса языка программирования;
  • Π²) Π² Ρ„ΠΎΡ€ΠΌΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ сСмантики языка программирования.

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ 2: ΠΊΠ°ΠΊΠΎΠ²ΠΎ основноС Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊ Π°Π±ΡΡ‚Ρ€Π°ΠΊΡ‚Π½ΠΎΠΉ машинС?

  • Π°) адСкватная формализация ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° (+);
  • Π±) высокая Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ;
  • Π²) Π»Π°ΠΊΠΎΠ½ΠΈΡ‡Π½ΠΎΡΡ‚ΡŒ конструкций языка.

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ 3 Ρ‡Ρ‚ΠΎ ΠΈΠ· ΠΏΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½Π½ΠΎΠ³ΠΎ являСтся Ρ„ΠΎΡ€ΠΌΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ для абстрактной ΠΌΠ°ΡˆΠΈΠ½Ρ‹?

  • Π°) тСория вычислСний Π”. Π‘ΠΊΠΎΡ‚Ρ‚Π°;
  • Π±) комбинаторная Π»ΠΎΠ³ΠΈΠΊΠ° X. ΠšΠ°Ρ€Ρ€ΠΈ (+);
  • Π²) Ρ„ΠΎΡ€ΠΌΠ° Бэкуса — Наура.

Вопрос 2.

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ 1: ΠΊΠ°ΠΊΠΈΠ΅ языки программирования Ρ„ΠΎΡ€ΠΌΠ°Π»ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹ абстрактными машинами?

  • Π°) ML ΠΈ CaML (+);
  • Π±) ML ΠΈ Π‘#;
  • Π²) ML ΠΈ Pro Log.

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ 2: какая формализация абстрактных машин ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΡŽ Ρ€Π΅Π°Π»ΠΈΠ·ΠΌΠ°?

  • Π°) машина Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π°;
  • Π±) машина ΠŸΠΎΡΡ‚Π°;
  • Π²) машина Лсндина (+).

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ 3: какая формализация абстрактных машин являСтся Π·Ρ€Π΅Π»ΠΎΠΉ?

  • Π°) SECD-машина Π›Π΅Π½Π΄ΠΈΠ½Π° (+);
  • Π±) ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠ°Π»ΡŒΠ½Π°Ρ абстрактная машина (+);
  • Π²) машина Π’ΡŒΡŽΡ€ΠΈΠ½Π³Π°.

Вопрос 3.

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ 1: ΠΊΠ°ΠΊΠΎΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Π²Ρ‹Π·ΠΎΠ²Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° ΠΌΠΎΠ΄Π΅Π»ΠΈΡ€ΡƒΠ΅Ρ‚ машина Π›Π΅Π½Π΄ΠΈΠ½Π°?

  • Π°) Π²Ρ‹Π·ΠΎΠ² ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ;
  • Π±) Π²Ρ‹Π·ΠΎΠ², Π½ΠΎ Π½Π΅ΠΎΠ±Ρ…одимости;
  • Π²) Π²Ρ‹Π·ΠΎΠ² ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ (+).

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ 2: Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ Π°Π±Π±Ρ€Π΅Π²ΠΈΠ°Ρ‚ΡƒΡ€Π° SECD?

  • Π°) состояниС ΠΌΠ°ΡˆΠΈΠ½Ρ‹ — стСк, Π΄Π°ΠΌΠΏ, срСда, ΠΊΠΎΠ΄ (+);
  • Π±) состояниС ΠΌΠ°ΡˆΠΈΠ½Ρ‹ — стСк, Ρ‚Π΅Ρ€ΠΌ, ΠΊΠΎΠ΄, Π΄Π°ΠΌΠΏ;
  • Π²) состояниС ΠΌΠ°ΡˆΠΈΠ½Ρ‹ — стСк, Π΄Π°ΠΌΠΏ, Ρ‚Π΅Ρ€ΠΌ, срСда.

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ 3: ΠΊΠ°ΠΊΠΎΠ²Ρ‹ основныС условия для Π΄Π΅ΠΊΠ°Ρ€Ρ‚ΠΎΠ²ΠΎ Π·Π°ΠΌΠΊΠ½ΡƒΡ‚Ρ‹Ρ… ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΉ?

  • Π°) тоТдСство, композиция, упорядочСнная ΠΏΠ°Ρ€Π°, пСрвая проСкция;
  • Π±) тоТдСство, композиция, упорядочСнная ΠΏΠ°Ρ€Π°, пСрСстановка;
  • Π²) тоТдСство, композиция, упорядочСнная ΠΏΠ°Ρ€Π°, ΠΏΡ€ΠΎΠ΅ΠΊΡ†ΠΈΠΈ (+).
ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ вСсь тСкст
Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ