Вычислимые функции — различия между версиями

Материал из Викиконспекты
Перейти к: навигация, поиск
(Новая страница: «{{Определение |definition = Функция <tex>f : N \rightarrow N \cup \lbrace \bot \rbrace</tex> называется '''вычислимой''', ес...»)
 
Строка 1: Строка 1:
 
{{Определение
 
{{Определение
 
|definition = Функция <tex>f : N \rightarrow N \cup \lbrace \bot \rbrace</tex> называется '''вычислимой''', если существует программа, вычисляющая функцию <tex>f</tex>. То есть существует такая программа, что:
 
|definition = Функция <tex>f : N \rightarrow N \cup \lbrace \bot \rbrace</tex> называется '''вычислимой''', если существует программа, вычисляющая функцию <tex>f</tex>. То есть существует такая программа, что:
# если <tex>f(n)</tex> определено для натурального числа <tex>n</tex>, то программа заканчивается за конечное время на входе <tex>n</tex> и выводит <tex>f(n)</tex>;
+
# если <tex>f(n)</tex> определено для натурального числа <tex>n</tex>, то программа заканчивается на входе <tex>n</tex> и выводит <tex>f(n)</tex>;
 
# если <tex>f(n)</tex> не определено, то программа зависает на входе <tex>n</tex>.
 
# если <tex>f(n)</tex> не определено, то программа зависает на входе <tex>n</tex>.
 
}}
 
}}
 +
''Замечание''<br/>
 +
Входами и выходами программ могут быть не только натуральные числа, но и двоичные строки, пары натуральных чисел, конечные последовательности слов и т.п. Поэтому аналогичным образом можно определить понятие вычислимой функции для рациональных чисел.
 +
 +
=== Примеры вычислимых функций ===
 +
* Нигде не определённая функция вычислима.
 +
p(x)
 +
  '''return''' <tex>\bot</tex>
 +
* <tex>f(x) = x^2</tex>, где <tex>x</tex> — рациональное число.
 +
p(x)
 +
  '''return''' <tex>x^2</tex>
  
 
== Литература ==
 
== Литература ==
 
* ''Верещагин Н. К., Шень А.'' '''Лекции по математической логике и теории алгоритов. Часть 3. Вычислимые функции''' -- М.: МЦНМО, 1999 - С. 176
 
* ''Верещагин Н. К., Шень А.'' '''Лекции по математической логике и теории алгоритов. Часть 3. Вычислимые функции''' -- М.: МЦНМО, 1999 - С. 176

Версия 04:08, 10 декабря 2011

Определение:
Функция [math]f : N \rightarrow N \cup \lbrace \bot \rbrace[/math] называется вычислимой, если существует программа, вычисляющая функцию [math]f[/math]. То есть существует такая программа, что:
  1. если [math]f(n)[/math] определено для натурального числа [math]n[/math], то программа заканчивается на входе [math]n[/math] и выводит [math]f(n)[/math];
  2. если [math]f(n)[/math] не определено, то программа зависает на входе [math]n[/math].

Замечание
Входами и выходами программ могут быть не только натуральные числа, но и двоичные строки, пары натуральных чисел, конечные последовательности слов и т.п. Поэтому аналогичным образом можно определить понятие вычислимой функции для рациональных чисел.

Примеры вычислимых функций

  • Нигде не определённая функция вычислима.
p(x)
  return [math]\bot[/math]
  • [math]f(x) = x^2[/math], где [math]x[/math] — рациональное число.
p(x)
  return [math]x^2[/math]

Литература

  • Верещагин Н. К., Шень А. Лекции по математической логике и теории алгоритов. Часть 3. Вычислимые функции -- М.: МЦНМО, 1999 - С. 176