Algoritme
Suatu "bilangan tak-terbatas" adalah bilangan yang elemen-elemenya bisa berkorespondensi satu-ke-satu dengan integer.
Maka, Boolos dan Jeffrey mengatakan bahwa sebuah algoritme berarti instruksi bagi sebuah proses yang "membuat" keluaran integer dari sebuah "masukan" "acak" integer yang, secara teori, bisa sangat besar.
Maka sebuah algoritme dapat berupa persamaan aljabar seperti y = m + n -- dua variabel masukan m dan n yang menghasikan keluaran y.
Tapi berbagai penulis yang mencoba mendefinisikan persamaan tersebut mengatakan bahwa kata algoritme mengandung lebih dari itu, sesuatu yang kurang lebih (untuk contoh penjumlahan):
Konsep dari "algoritme" juga digunakan untuk mendefinisikan notasi dari desidabilitas.
Notasi tersebut adalah pusat untuk menjelaskan bagaimana sistem formal berasal dari sejumlah kecil aksioma dan aturan.
Dalam logika, waktu dari sebuah algoritme untuk selesai tidak dapat dihitung, karena tidak berelasi dengan dimensi fisik kita.
Dari ketidakpastian tersebut, yang mengkarakteristikan pekerjaan yang sedang berjalan, timbulah ketidak-tersediannya definisi "algoritme" yang sesuai dengan konkret (pada tingkat tertentu) dan penggunaan secara abstrak dari istilah tersebut.
Algoritme Prim
Misalkan "P" adalah sebuah graf terhubung berbobot. Pada setiap iterasi algoritme Prim, suatu cabang harus ditemukan yang menghubungkan sebuah node di graf bagian ke sebuah node di luar graf bagian. Karena "P" terhubung, maka selalu ada jalur ke setiap node. Keluaran "Y" dari algoritme Prim adalah sebuah pohon, karena semua cabang dan node yang ditambahkan pada "Y" terhubung. Misalkan "Y" adalah pohon rentang minimum dari P. Bila "Y"="Y" maka "Y" adalah pohon rentang minimum. Kalau tidak, misalkan "e" cabang pertama yang ditambahkan dalam konstruksi "Y" yang tidak berada di "Y", dan "V" himpunan semua node yang terhubung oleh cabang-cabang yang ditambahkan sebelum "e". Maka salah satu ujung dari "e" ada di dalam "V" dan ujung yang lain tidak. Karena "Y" adalah pohon rentang dari "P", ada jalur dalam "Y" yang menghubungkan kedua ujung itu. Bila jalur ini ditelusuri, kita akan menemukan sebuah cabang "f" yang menghubungkan sebuah node di "V" ke satu node yang tidak di "V". Pada iterasi ketika "e" ditambahkan ke "Y", "f" dapat juga ditambahkan dan akan ditambahkan alih-alih "e" bila bobotnya lebih kecil daripada "e". Karena "f" tidak ditambahkan, maka kesimpulannya