定義
計算函式是在
自然數上的有限偏函式。每個可計算函式
接受固定數目個自然數作為參數;不同的函式接受不同數目的參數。因為函式是部分的,它們可以不定義在所有可能的輸入選擇上。如果定義了一個可計算函式,則它返回一個單一自然數作為輸出(這個輸出可以被解釋為使用
配對函式的一列數)。記號
指示偏函式
被定義在參數
上,而記號
指示
被定義在參數
上而返回的值是y。這些函式也叫做
偏遞歸函式。在可計算理論中,函式的
定義域是函式被定義在其上的所有輸入的集合。
定義在所有參數上的函式叫做全函式。如果可計算函式是全函式,它叫做全可計算函式或全遞歸函式。
有很多等價方式定義可計算函式的類。為了具體,本文餘下部分將假定可計算函式已經被定義可以被
圖靈機計算的那些偏函式。有很多計算的等價模型定義同一類可計算函式。這些計算模型包括
Mu-遞歸函式
Lambda演算
Post機,也叫做標記系統
等等。
可計算集合
自然數的集合
A被叫做
可計算的(同義詞:
遞歸的,
可決定的),如果有可計算函式
f使得對於每個自然數
n,
如果
n在
A中,並且
如果
n不在
A中。
自然數的集合被叫做計算可枚舉的(同義詞:遞歸可枚舉的,半可判定的),如果有可計算函式f使得對於每個自然數n,f(n)是有定義的,若且唯若n在這個集合中。所以一個集合是計算可枚舉的,若且唯若它是某個可計算函式的定義域。使用詞可枚舉的因為對於自然數的非空子集B下列是等價的:
如果集合B是函式f的值域,則這個函式可以被看作B的枚舉,因為列表f(0),f(1), ...將包含B的所有元素。
因為在自然數上的每個有限關係都可以被識別為對應的自然數的有限序列的集合,可計算關係和計算可枚舉關係的概念可以從它們的集合類似物來定義。
形式語言
在計算機科學的
可計算性理論中,經常考慮
形式語言。它包括任意集合的一個
字母表,在字母表上的
字是來自字母表的符號的有限序列;同一個符號可以出現多於一次。例如,二進制字元串精確的是在字母表
上的字。
語言是在固定字母表上的所有字的蒐集的子集。例如,精確的包含三個字母的所有二進制字元串的蒐集是在二進制字母表上的一個語言。
形式語言的一個關鍵性質是對判定一個給定字是否在這個語言中的難度級別。必須開發某種編碼系統來允許可計算函式來接受在語言中的任意字作為輸入;這通常是要認真處置的例程。一個語言被稱為是
可計算的(同義詞:
遞歸的,
可判定的),如果存在一個可計算函式
使得對於在字母表上的每個字
w,
如果這個字在這個語言中,並且
如果這個字不在這個語言中。所以一個語言在有一個過程能正確的判定任意的字是否在這個語言中的情況下是可計算的。
一個語言是
計算可枚舉的(同義詞:
遞歸可枚舉的,
半可判定的),如果有可計算函式
f使得
是有定義的,若且唯若字
w在這個語言中。術語
可枚舉同自然數的計算可枚舉集合有同樣的語源。
例子
常數函式f:
N→
N,
f(
n1,...
nk):=
n。
如果
f和
g是可計算的,則:
f + g,
f * g,
如果
f是一元的,max(
f,
g), min(
f,
g)和更多的組合都是可計算的。