В доказательстве теоремы 10.1 для построения м.Т., реализующей оператор примитивной рекурсииF(x,y) = R( g1, f3)
, требовалась м.Т.M1
, которая переводит конфигурацию вида|x* |y
в конфигурацию|y * |x* ∧ *|g(x)
, используя м.Т.Mg
, вычисляющую функциюg(x)
. Какие из следующих программ м.Т. выполняют требуемую работу, т.е. могут быть использованы в качестве программы дляM1
?В этих определениях участвуют следующие простые машины Тьюринга:
P1 = Коп# ; par# (par* (Чист, Пуст); Зам(*,∧ ) , par* (Пуст ,Чист); Зам(*,∧ ) ); par# (Пуст, Коп* ); par* (Пуст, +1; +1; Зам(|,∧ ); Зам(|,* )); par* (Пуст, Пуст, Mg); Зам( #,* )
P2 = Коп# ; par# (par* (Чист, Пуст); Зам(*,∧ ) , par* (Пуст ,Чист); Зам(*,∧ ) ); par# (Пуст, Коп# ); par# (Пуст, Пуст, Mg ; +1; +1; Зам(|,∧ ); Зам(|,* )); Зам( #,* ); Зам( #,* )
P3 = Коп* ; par* (Чист, Пуст, Пуст ,Чист); Зам(*,∧ ); Зам(*,# ); Зам(*,∧ ); par# (Пуст, Mg ; +1; +1; Зам(|,∧ ); Зам(|,* )); Зам( #,* )
Копa
– копирует вход после разделительного символаa : w ⇐ w a w
;Зам(a, b)
– заменяет первое слева вхождение символаa
наb
:w1a w2 ⇐ w1 b w2 ( a ∉ w1 )
;Пуст
– не изменяет аргумент:w ⇐ w
;Чист
– стирает аргумент:w ⇐ ∧
;+1
– прибавляет 1 к аргументу:|x ⇐ |x+1
P1
 
P2
 
P3
 
P1
и P2
 
В доказательстве теоремы 20.1 для построения м.Т., реализующей оператор примитивной рекурсииF(x,y) = R( g1, f3)
, требовалась м.Т.M2
, которая переводит конфигурацию вида|y *|x* |u* |z
в конфигурацию|y *|x* |u+1* |f(x,u,z)
, используя м.Т.Mf
, вычисляющую функцию f(x,u,z). Какие из следующих программ м.Т. выполняют требуемую работу, т.е. могут быть использованы в качестве программы дляM2
?
P1 = Зам(*,# ); par# ( Пуст, Коп#); par# (Пуст, Пуст, Mf ); Зам( #,* ); Зам( #,* )
P2 = Зам(*,# ); par# ( Пуст, Коп#); par# (Пуст, Пуст, Mf ); par# (Пуст, par* (Пуст, +1, Чист), Пуст); Зам( #,* ); Зам(∧, |); Зам( #,| ); par* (Пуст, Пуст, Пуст, Выч1; Выч1)
P3 = Зам(*,# ); par# ( Пуст, Коп#); par# (Пуст, par* (Пуст, +1, Чист), Mf ); par* (Зам( #,* ), Пуст, Зам(∧, |); Зам( #,| ); Выч1; Выч1)
В этих определениях участвуют следующие простые машины Тьюринга:
Копa
–копирует вход после разделительного символаa : w ⇐ w a w
;Зам(a, b)
– заменяет первое слева вхождение символаa
наb
:w1a w2 ⇐ w1 b w2 ( a ∉ w1 )
;Пуст
- не изменяет аргумент:w ⇐ w
;Чист
– стирает аргумент:w ⇐ ∧
;Выч1
– вычитает единицу в унарной системе:|j ⇐ |j-1 (| ⇐ ∧, ∧ ⇐ ∧)
;+1
- прибавляет 1 к аргументу:|x⇐ |x+1
P1
 
P2
 
P3
 
P2
и P3
 
P1
и P3
 
В доказательстве теоремы 20.1 для построения м.Т., реализующей оператор примитивной рекурсииF(x1,x2, y) = R( g2, f4)
, требовалась м.Т.M1
, которая переводит конфигурацию вида|x1*|x2* |y
в конфигурацию|y * |x1*|x2* ∧ *|g(x)
, используя м.Т.Mg
, вычисляющую функциюg(x1,x2)
. Какие из следующих программ м.Т. выполняют требуемую работу, т.е. могут быть использованы в качестве программы дляM1
?
P1 = Коп# ; par# (par* (Чист, Чист,Пуст); Зам(*,∧ ) , par* (Пуст , Пуст ,Чист); Зам(*,# ) ; Зам(*,∧ ) ; Зам( #,* )); par# (Пуст, Коп* ); par* (Пуст, Mg ; +1; +1; Зам(|,∧ ); Зам(|,* ))
P2 = Коп# ; par# (par* (Чист, Чист , Пуст); Зам(*,∧ ) ; Зам(*,∧ ), par* (Пуст , Пуст ,Чист); Зам(*,# ) ; Зам(*,∧ ) ; Зам( #,* )); par# (Пуст, Коп# ); par# (Пуст, Пуст, Mg ; +1; +1; Зам(|,∧ ); Зам(|,* )); Зам( #,* ); Зам( #,* )
P3 = Коп* ; par* (Чист, Чист, Пуст, Пуст, Пуст ,Чист); Зам(*,∧ ); Зам(*,# ); Зам(*,∧ ); par# (Пуст, Mg ; +1; +1; Зам(|,∧ ); Зам(|,* )); Зам( #,* )
В этих определениях участвуют следующие простые машины Тьюринга:
Копa
–копирует вход после разделительного символаa : w ⇐ w a w
;Зам(a, b)
– заменяет первое слева вхождение символаa
наb
:w1a w2 ⇐ w1 b w2 ( a ∉ w1 )
;Пуст
- не изменяет аргумент:w ⇐ w
;Чист
– стирает аргумент:w ⇐ ∧
;+1
- прибавляет 1 к аргументу:|x⇐ |x+1
P1
 
P2
 
P3
 
P1
и P2
 
В доказательстве теоремы 20.2 для построения м.ТMП
, моделирующей работу структурированной программыП
с переменнымиx1, … , xm
, используются м.Т.Mij (1 ≤ i, j ≤ m)
, которые реализуют присваиваниеxi := xj
, т.е. переписывают содержимоеj
-го этажа ленты наi
-ый. Пустьm=4, i=2, j=4
. ПустьΣ = { < a1, a2, a3, a4> | ai ∈ {∧, |}, i=1,2,3,4 }
– алфавит ленты, аQ={ q, s, p }
,– множество состоянийM24
, в котором q - начальное, а p – заключительное состояние. Какие из следующих программ могут быть использованы в качестве программы дляM24
? (В текстах программa,b,c,d
– это произвольные символы из алфавита{∧, |}
)
P1: q <a, b, c, |> → q <a, | , c, | > П , s <a, | , c, | > → s <a, | , c, | > Л , q <a, |, c, ∧> → q <a, ∧ , c, ∧> П , s <∧, ∧, ∧, ∧> → p <∧, ∧ , ∧, ∧> П. q <a, ∧, c, ∧> → s <a, ∧ , c, ∧> Л ,
P2: q <a, |, c, d> → q <a, | , c, | > П , s <a, | , c, | > → s <a, | , c, | > Л , q <a, ∧, c, |> → q <a, ∧ , c, ∧> П , s <a, ∧, c, ∧> → p <a, ∧ , c, ∧> П. q <a, ∧, c, ∧> → s <a, ∧ , c, ∧> Л ,
P3: q <a, b, c, |> → q <a, | , c, | > П , s <a, | , c, | > → s <a, | , c, | > Л , q <a, b, c, ∧> → s <a, ∧ , c, ∧> Л , s <a, ∧, c, ∧> → p <a, ∧ , c, ∧> П.
P1
 
P2
 
P3
 
P1
и P2
 
P1
и P3
 
P2
и P3
 
В доказательстве теоремы 20.2 для построения м.ТMП
, моделирующей работу структурированной программы П с переменнымиx1, … , xm
, используются м.Т.Mij (1 ≤ i, j ≤ m)
, которые реализуют присваиваниеxi := xj
, т.е. переписывают содержимоеj
-го этажа ленты наi
-ый. Пустьm=4, i=3, j=1
. ПустьΣ = { < a1, a2, a3, a4> | ai ∈ {∧, |}, i=1,2,3,4 }
– алфавит ленты, аQ={ q, s, p }
,– множество состоянийM31
, в котором q - начальное, а p – заключительное состояние. Какие из следующих программ могут быть использованы в качестве программы дляM31
? (В текстах программa,b,c,d
– это произвольные символы из алфавита{∧, |}
)
P1: q <|, b, c, d > → q < |, b , |, d > П , s < | , b, |, d > → s < | , b, |, d > Л , q <∧, b, |, d > → q < ∧, b, ∧, d > П , s < ∧, ∧, ∧, ∧> → p < ∧, ∧, ∧, ∧> П. q < ∧, b, ∧, d> → s < ∧ , b, ∧, d > Л ,
P2: : q <|, b, c, d > → q < |, b , c, d > П , s < ∧ , b, |, d > → s < | , b, ∧, d > Л , q <a, b, |, d > → q < a, b, |, d > П , s < ∧, ∧, ∧, ∧> → p < ∧, ∧, ∧, ∧> П. q < ∧, b, ∧, d> → s < ∧ , b, ∧, d > Л , s < | , b, c, d > → s < | , b, |, d > Л ,
P3: : q <|, b, c, d > → q < |, b , |, d > П , s < | , b, |, d > → s < | , b, |, d > Л , q < ∧, b, ∧, d> → s < ∧ , b, ∧, d > Л , s < ∧, ∧, ∧, ∧> → p < ∧, ∧, ∧, ∧> П.
P1
 
P2
 
P3
 
P1
и P2
 
P1
и P3
 
P2
и P3
 
В доказательстве теоремы 20.2 для построения м.ТMП
, моделирующей работу структурированной программыП
с переменнымиx1, … , xm
, используются м.Т.Mij (1 ≤ i, j ≤ m)
, которые реализуют присваиваниеxi := xj
, т.е. переписывают содержимоеj
-го этажа ленты наi
-ый. Пустьm=4, i=3, j=1
. ПустьΣ = { < a1, a2, a3, a4> | ai ∈ {∧, |}, i=1,2,3,4 }
– алфавит ленты, аQ={ q, s, p }
,– множество состоянийM43
, в котором q - начальное, а p – заключительное состояние. Какие из следующих программ могут быть использованы в качестве программы дляM43
? (В текстах программa,b,c,d
– это произвольные символы из алфавита{∧, |}
)
P1: q <a, b, |, d > → q < a, b , |, | > П , s < a, ,b | , | > → s < a, b, | , | > Л , q < ∧, b, ∧, d> → s < ∧ , b, ∧, d > Л , s < ∧, ∧, ∧, ∧> → p < ∧, ∧, ∧, ∧> П
,P2: : q <a, b, c, | > → q < a, b , c, | > П , s < a , b, |, d > → s < a , b, |, | > Л , q <a, b, |, d > → q < a, b, |, d > П , s < ∧, ∧, ∧, ∧> → p < ∧, ∧, ∧, ∧> П. q <a, b, ∧, ∧> → s < a , b, ∧, ∧ > Л , s < a , b, ∧, | > → s < a , b, ∧, ∧ > Л
,P3: : q <a, b, |, d > → q < a, b , |, | > П , s < a, ,b | , | > → s < a, b, | , | > Л , q <a, b, ∧, | > → q < a, b, ∧, ∧ > П , s < ∧, ∧, ∧, ∧> → p < ∧, ∧, ∧, ∧> П. q < ∧, b, ∧, d> → s < ∧ , b, ∧, d > Л ,
P1
 
P2
 
P3
 
P1
и P2
 
P1
и P3
 
P2
и P3
 
Какими из следующих свойств обладает отношение алгоритмической сводимостиA ≤m B
?
(а) рефлексивность: A ≤m A
,(b) симметричность: A ≤m B ⇔ B ≤m A
,(с) транзитивность: A ≤m B и B ≤m C ⇐ A ≤m C
.
Какими из следующих свойств обладает отношение алгоритмической сводимостиA ≤m B
?
(a) является отношением эквивалентности, (b) рефлексивно и транзитивно, (c) сохраняет свойство разрешимости: если A ≤ m B
иB
- разрешимо, то иA
разрешимо.
Какими из следующих свойств обладает отношение алгоритмической сводимостиA ≤m B
?
(a) если A ≤m B
, то(N \A) ≤m (N \B)
,(b) A ≤m C
иB ≤m C
дляC= {2x | x ∈ A} ∪ {2x+1 | x ∈ B}
,(c) сохраняет свойство неразрешимости: если A ≤m B
иA
- неразрешимо, то иB
неразрешимо .
Пусть множествоA = { (x, y) | y = x2 }, B = { n3 | n ∈ N }
. Какие из следующих функций осуществляют сведениеA ≤m B
? (В выражениях нижеsqr(y)
обозначает целую часть квадратного корня изy, sg(0) =0
иsg(n) = 1 при n > 0
).
f(x,y) = x3
 
f(x,y) = x3 + sg( | x2 – sqr(y)2 |)
 
f(x,y) = (x+1)3 + sg( | x2 – sqr(y)2 |)
 
f(x,y) = (x+1)3 + | x2 – y |
 
f(x,y) = 1 + sg(| x2 – y |)
 
Пусть множествоA = { (x2, y2) | x ∈ N , y ∈ N }, B = { n3 | n ∈ N }
. Какие из следующих функций осуществляют сведениеA ≤m B
? (В выражениях нижеsqr(x)
обозначает целую часть квадратного корня изx, sg(0) =0
иsg(n) = 1
приn > 0
).
f(x,y) = x3y3
 
f(x,y) = (x+2)3 + sg( x2 – sqr(x)2 ) + sg( y2 – sqr(y)2 )
 
f(x,y) = 8 + sg( x2 – sqr(x)2 + y2 –sqr(y)2 )
 
f(x,y) = sqr(x)3 sqr(y)3
 
f(x,y) = (sqr(x) + sqr(y))3
 
Пусть множествоA = { (x, y) | y = x2 }, B = { 2n | n ∈ N }
. Какие из следующих функций осуществляют сведениеA ≤m B
? (В выражениях нижеsqr(y)
обозначает целую часть квадратного корня изy, sg(0) =0
иsg(n) = 1
приn > 0
).
f(x,y) = 2x
 
f(x,y) = 2x+1 + sg( | x2 – sqr(y)2 |)
 
f(x,y) = 4 + sg( | x2 – y |)
 
f(x,y) = 2x + | x2 – y |
 
f(x,y) = 1 + sg(| x2 – y |)
 
Согласно тезису Тьюринга-Черча язык структурированных программ является универсальным – для любой вычислимой функции в нем имеется вычисляющая ее программа. Всякий язык программирования, в котором выразимы все операторы языка структурированных программ, также является универсальным. Некоторые из операторов языка структурированных программ оказываются "лишними" - они выразимы через остальные, т.е. язык сохраняет универсальность и при их удалении. Определите, какие из следующих видов операторов (по отдельности) можно выразить через остальные операторы языка.(a)
x := x+1
, (b)x := 0
, (c)x := y
.
Согласно тезису Тьюринга-Черча язык структурированных программ является универсальным – для любой вычислимой функции в нем имеется вычисляющая ее программа. Всякий язык программирования, в котором выразимы все операторы языка структурированных программ, также является универсальным. Некоторые из операторов языка структурированных программ оказываются "лишними" - они выразимы через остальные, т.е. язык сохраняет универсальность и при их удалении. Определите, какие из следующих видов операторов (по отдельности) можно выразить через остальные операторы языка.
(a) если x < y то P1 иначе P2 конец
,(b) если x = y то P1 иначе P2 конец.
,(c) x := 0
.
Согласно тезису Тьюринга-Черча язык структурированных программ является универсальным – для любой вычислимой функции в нем имеется вычисляющая ее программа. Всякий язык программирования, в котором выразимы все операторы языка структурированных программ, также является универсальным. Некоторые из операторов языка структурированных программ оказываются "лишними" - они выразимы через остальные, т.е. язык сохраняет универсальность и при их удалении. Определите, какие из следующих видов операторов (по отдельности) можно выразить через остальные операторы языка..
(a) x := x +1
,(b) пока x < y делай P все
,(c) пока x = y делай P все
.
В теореме 20.5 была доказана неразрешимость проблемы останова: по произвольной структурированной программеП
определить завершится ли вычислениеП
на входе 0. ПустьMh0= {n | ФПn,y (0) < ∞}
– это (неразрешимое) множество номеров программ, которые останавливаются на входе =0. Рассмотрим проблему определения по структурированной программе независимости ее результата от входа:Mconst= {n | существует константа c ∈ N такая, что ФПn,y (x) = c для всех x}
. Какие из следующих функций сводятMh0
кMconst
?
f1(n) = номер программы: ' x:= 0; Пn ; y:= 0'
.f2(n) = номер программы: 'Пn ; y:= x'
.f3(n) = номер программы: ' x:= 0; Пn ; y:= 0; y:= y+1'
.
f1
 
f2
 
f3
 
f1
и f2
 
f1
и f3
 
В теореме 20.5 была доказана неразрешимость проблемы останова: по произвольной структурированной программеП
определить завершится ли вычислениеП
на входе 0. ПустьMh0= {n | ФПn,y (0) < ∞}
– это (неразрешимое) множество номеров программ, которые останавливаются на входе =0. Рассмотрим проблему определения по структурированной программе бесконечности множества ее результатов:Minf = {n | множество значений ФПn,y (x) бесконечно}
. Какие из следующих функций сводятMh0
кMinf
?
f1(n) = номер программы: ' x:= 0; Пn ; y:= x '
.f2(n) = номер программы: 'xn:=x; x:= 0; Пn ; y:= xn '
. (здесь переменнаяxn
не входит вПn
)f3(n) = номер программы: 'y:= x; x:= 0; Пn ; y:= y+1'
.
f1
 
f2
 
f3
 
f1
и f2
 
f1
и f3
 
В теореме 20.5 была доказана неразрешимость проблемы останова: по произвольной структурированной программеП
определить завершится ли вычислениеП
на входе 0. ПустьMh0= {n | ФПn,y (0) < ∞}
– это (неразрешимое) множество номеров программ, которые останавливаются на входе =0. Рассмотрим проблему определения по структурированной программе монотонности вычисляемой ею функции:M mon = {n | для любых x1 и x2, если x1 < x2, то ФПn,y (x1) < ФПn,y (x2)}
. Какие из следующих функций сводятMh0
кM mon
?
f1(n) = номер программы: 'xn:=x; x:= 0; Пn ; y:= xn'
. (здесь переменнаяxn
не входит вПn
)f2(n) = номер программы: 'Пn ; y:= x'.
f3(n) = номер программы: 'y:= x; x:= 0; Пn ; y:= y+1'.
f1
 
f2
 
f3
 
f1
и f2
 
f1
и f3