Untuk kegunaan lain, lihat Rekursi (disambiguasi).

Suatu bentuk rekursi yang dikenal dengan *Efek Droste*. Wanita dalam gambar ini memegang suatu objek yang memiliki gambar kecil-nya yang memegang objek yang identik, yang juga memiliki gambar kecil dirinya sendiri yang memegang objek yang identik, dan seterusnya.
**Rekursi** adalah proses pengulangan sesuatu dengan cara kesamaan-diri.
Sebagai contohnya, saat dua cermin berada paralel antara satu dengan yang lain, gambar yang tertangkap adalah suatu bentuk rekursi tak-terbatas.
Istilah ini memiliki makna beragam bergantung kepada ragam disiplin mulai dari linguistik sampai logika.
Penggunaan paling umum dari rekursi yaitu dalam matematika dan ilmu komputer, yang mengacu kepada suatu metode mendefinisikan fungsi yang mana fungsi tersebut menggunakan definisinya sendiri.
Secara spesifik hal ini mendefinisikan suatu instansi tak-terbatas (nilai fungsi), menggunakan ekpresi terbatas dengan beberapa instansi bisa merujuk ke instansi lainnya, tetapi dengan suatu cara sehingga tidak ada perulangan atau keterkaitan tak-terbatas dapat terjadi.
Istilah ini juga digunakan secara umum untuk menjelaskan suatu proses pengulangan objek dengan cara kesamaan-diri.

Definisi formal dari rekursi
----------------------------

Rekursi dalam program perekaman layar, dengan suatu jendela paling kecil mengandung foto keseluruhan layar.
Dalam matematika dan ilmu komputer, kelas dari objek atau metode memperlihatkan perilaku rekursif bila mereka dapat didefinisikan oleh dua properti berikut:

1. Sebuah kasus (atau beberapa kasus) dasar sederhana
2. Sejumlah aturan yang mengurangi kasus-kasus lainnya sampai ke kasus dasarnya.

Sebagai contoh, berikut ini adalah definisi rekursif dari leluhur seseorang:

* Orang tua seseorang adalah leluhur seseorang (*kasus dasar*).
* Orang tua dari suatu leluhur juga merupakan leluhur-nya (*langkah rekursi*).

Bilangan Fibonacci adalah contoh klasik dari rekursi:

* Fib(0) adalah 0 [kasus dasar]
* Fib(1) adalah 1 [kasus dasar]
* Untuk semua integer n > 1: Fib(n) adalah (Fib(n-1) + Fib(n-2)) [definisi rekursif]

Banyak aksioma matematika berdasarkan aturan-aturan rekursif.
Sebagai contohnya, definisi formal dari bilangan asli pada Aksioma Peano dapat dideskripsikan sebagai: *0 adalah bilangan asli, dan setiap bilangan asli memiliki sebuah suksesor, yang juga merupakan bilangan asli.*
Dengan kasus dasar ini dan aturan rekursif, seseorang dapat membuat himpunan dari semua bilangan asli.

Gambaran humornya berbunyi: *"Untuk memahami rekursi, pertama anda harus memahami rekursi."*
Atau mungkin yang lebih akurat, dari Andrew Plotkin: *"Jika anda telah mengetahui apa itu rekursi, cukup ingat jawabannya. Kalau tidak, cari orang yang berdiri paling dekat dengan Douglas Hofstadter selain anda; lalu tanya dia rekursi itu apa."*

Objek matematika yang didefinisikan secara rekursif termasuk fungsi, himpunan, dan terutama sekali fraktal.

Definisi informal
-----------------

Rekursi adalah suatu proses dengan salah satu langkah dalam prosedur tersebut menjalankan prosedur itu sendiri.
Prosedur yang melakukan rekursi disebut dengan 'rekursif'.

Untuk memahami rekursi, seseorang harus mengetahui perbedaan antara sebuah prosedur dan jalannya sebuah prosedur.
Sebuah prosedur yaitu kumpulan langkah-langkah berdasarkan sekumpulan aturan.
Jalannya sebuah prosedur mengikuti aturan-aturan dan melakukan langkah-langkah.
Analoginya mungkin sebuah prosedur adalah seperti resep yang tertulis; menjalankan sebuah prosedur adalah seperti menyiapkan makanan.

Rekursi berhubungan dengan, tetapi tidak sama, suatu referensi dalam spesifikasi prosedur sampai pada eksekusi beberapa prosedur lainnya.
Misalnya, suatu resep bisa mengacu pada memasak sayuran, yang merupakan prosedur yang kemudian membutuhkan memanaskan air, dan seterusnya.
Namun, prosedur rekursif adalah spesial dengan (paling tidak) salah satu langkahnya memanggil instansi baru dari prosedur yang sama, seperti suatu resep gandum hitam menggunakan beberapa sisa adonan dari resep yang sama yang telah dibuat.
Hal ini tentu saja membuat suatu kemungkinan perulangan tanpa berakhir; rekursi hanya dapat digunakan secara tepat dalam definisi jika langkah yang bersangkutan dilewat pada beberapa kasus sehingga prosedur dapat selesai, seperti resep gandum-hitam yang memberitahu anda bagaimana membuat adonan awal seandainya anda belum pernah membuatnya sebelumnya.
Bahkan jika didefinisikan secara tepat, prosedur rekursif tidak mudah dilakukan oleh manusia, karena ia membutuhkan membedakan pemanggilan prosedur yang baru dengan yang lama (yang telah dieksekusi sebagian); hal ini membutuhkan beberapa administrasi sejauh mana berbagai prosedur instan yang berjalan bersamaan telah berjalan.
Karena hal ini definisi rekursif sangat jarang dalam keadaan harian.
Contohnya dapat berupa prosedur untuk menemukan jalan melewati sebuah labirin.
Terus ke depan sampai menemui jalan keluar atau titik percabangan (sebuah titik mati dianggap sebagai sebuah titik percabangan dengan 0 cabang).
Jika titik yang ditemui adalah suatu jalan keluar,berhenti.
Kalau tidak coba setiap cabang bergantian, menggunakan prosedur secara rekursif; jika setiap percobaan gagal karena mencapai titik mati, kembali ke jalur yang menyebabkan titik percabangan dan laporkan kegagalan.
Apakah ini tepat mendefinisikan suatu prosedur pemberhentian bergantung kepada bentuk labirinnya: ia tidak membolehkan perulangan.
Dalam semua kasus, mengeksekusi prosedur membutuhkan pencatatan teliti semua titik percabangan yang telah dieksplorasi, dan cabang-cabang mana yang telah dicoba..

Rekursi dalam bahasa
--------------------

Ahli linguistik Noam Chomsky memberikan teori bahwa ekstensi tak-terhingga dari setiap bahasa alami adalah memungkinkan menggunakan perangkat rekursif dengan menanamkan klausa dalam kalimat
(Aspects of the Theory of Syntax. 1965).
Sebagai contoh, dua kalimat sederhana -- "*Dorothy bertemu dengan Penyihir Jahat dari Barat di Munchkin Land*" dan "*Saudara perempuan Penyihir Jahat dibunuh di Munchkin Land*"—dapat disisipkan dalam kalimat ketiga, "*Dorothy menyiram Penyihir Jahat dengan seember air*", untuk mendapatkan kalimat rekursif: "*Dorothy, yang bertemu dengan Penyihir Jahat dari Barat di Munchkin Land tempat saudara perempuannya dibunuh, menyiramnya dengan seember air.*"

Ide bahwa rekursi adalah suatu properti esensi dari bahasa manusia (seperti yang Chomsky ajukan) dibantah oleh linguis Daniel Everett dalam karyanya *Cultural Constraint on Grammar and Cognition in Pirahã: Another Look at the Design Features of Human Language*, yang di sana dia berhipotesis bahwa faktor kultur membuat rekursi tidak dibutuhkan dalam perkembangan Bahasa Piraha.
Konsep ini, yang menantang ide Chomsky bahwa rekursi satu-satunya sifat yang membedakan komunikasi manusia dan hewan, sekarang sedang diperdebatkan.
Andrew Nevins, David Pesetsky dan Cilene Rodrigues berdebat melawan proposal tersebut.

Rekursi dalam linguistik membolehkan 'diskrit tak-terbatas' dengan menanamkan frasa dalam tipe frasa yang sama dalam suatu struktur hierarki.
Tanpa rekursi, bahasa tidak memiliki 'diskrit tak-terbatas' dan tidak dapat menanamkan kalimat menjadi tak-terbatas (dengan suatu efek 'Sarang boneka Rusia').
Everett membantah bahwa bahasa harus memiliki diskrit tak-terbatas, dan menegaskan bahwa bahasa Piraha—yang diklaimnya tidak memiliki rekursi—pada kenyataannya terbatas.
Dia menyamakannya dengan permainan terbatas catur, yang memiliki sejumlah pergerakan terbatas tetapi sangat produktif, dengan gerakan-gerakan baru diciptakan lewat sejarah.

### Humor rekursif

Rekursi terkadang digunakan secara humor dalam buku ilmu komputer, pemrograman, filsafat, atau matematika. Adalah hal yang biasa bagi buku-buku tersebut untuk memasukan lelucon dalam glosarium-nya di antara barisan:

Rekursi, *lihat Rekursi*.
Sebuah variasi ditemukan di halaman 269 dalam indeks dari beberapa edisi buku Kernighan dan Ritchie *The C Programming Language*; isi indeks secara rekursif mengacu kepada dirinya sendiri ("rekursi 86, 139, 141, 182, 202, 269").
Versi awal dari lelucon ini ada di dalam "Software Tools" oleh Kernighan dan Plauger, dan juga muncul dalam "The UNIX Programming Environment" oleh Kernighan dan Pike.
Ia tidak ada di edisi pertama dari *The C Programming Language*.

Lelucon yang lain adalah "Untuk memahami rekursi, anda harus memahami rekursi."
Dalam versi bahasa Inggris dari mesin pencari web Google, saat mencari kata untuk rekursi dalam bahasa Inggris "recursion" dilakukan, situs tersebut menyarankan "Did you mean: *recursion*."

Akronim berulang juga dapat sebagai contoh dari humor rekursif. PHP, contohnya, singkatan dari "PHP Hypertext Preprocessor", WINE singkatan dari "Wine Is Not an Emulator", GNU singkatan dari "GNU's not Unix".

Rekursi dalam matematika
------------------------

Segitiga Sierpinski—sebuah rekursi terbatas dari segitiga membentuk suatu jeruji geometris.
### Himpunan yang didefinisikan secara rekursif

Artikel utama: Definisi rekursif
#### Contoh: bilangan asli

Lihat pula: Closure (matematika)
Contoh kanonikal dari himpunan yang didefinisikan secara rekursif yaitu diberikan oleh bilangan asli:

0 ada dalam {\displaystyle \mathbb {N} }
jika *n* ada dalam {\displaystyle \mathbb {N} }, maka *n* + 1 ada dalam {\displaystyle \mathbb {N} }
Himpunan dari bilangan asli adalah himpunan terkecil yang memenuhi dua properti sebelumnya.
#### Contoh: himpunan dari proposisi benar terjangkau

Contoh menarik lainnya adalah himpunan dari semua proposisi "benar terjangkau" dalam suatu sistem aksioma.

* Jika suatu proposisi adalah sebuah aksioma, maka ia adalah suatu proposisi benar terjangkau.
* Jika suatu proposisi dapat dihasilkan dari proposisi benar terjangkau dengan menggunakan aturan-aturan inferensi, maka ia adalah proposisi benar terjangkau.
* Himpunan dari proposisi benar-terjangkau adalah himpunan terkecil dari proposisi yang memenuhi kondisi tersebut.

Himpunan ini disebut 'proposisi benar terjangkau' karena dalam pendekatan non-konstruktif terhadap fondasi matematika, himpunan dari proposisi benar bisa lebih besar daripada himpunan yang dibangun secara rekursif dari aksioma-aksioma dan aturan-aturan inferensi.
Lihat juga Teorema ketaklengkapan Godel.

### Rekursi fungsional

Sebuah fungsi bisa didefinisikan sebagai bagian dari dirinya sendiri. Contoh yang terkenal adalah urutan bilangan Fibonacci: *F*(*n*) = *F*(*n* − 1) + *F*(*n* − 2).
Supaya definisi tersebut dapat berguna, ia harus mengarah pada nilai yang terdefinisi secara tak-rekursif, dalam kasus ini *F*(0) = 0 dan *F*(1) = 1.

Fungsi rekursif terkenal yaitu fungsi Ackermann yang mana—tidak seperti urutan Fibonacci—tidak dapat dengan mudah diekspresikan tanpa rekursi.

### Pembuktian yang mengikutkan definisi rekursif

Menerapkan teknik standar dari pembuktian dengan kasus untuk mendefinisikan secara rekursif suatu himpunan atau fungsi, seperti bagian sebelumnya, menghasilkan induksi struktural, generalisasi ampuh dari induksi matematika secara luas digunakan untuk menurunkan pembuktian dalam logika matematika dan ilmu komputer.

### Optimisasi rekursif

Pemrograman dinamis adalah suatu pendekatan terhadap optimisasi yang menempatkan ulang suatu permasalahan multiperiode atau tahapan dalam bentuk rekursif.
Kunci jawaban dari pemrograman dinamis adalah persamaan Bellman, yang menuliskan nilai dari permasalahan optimisasi pada waktu awal (atau langkah awal) berkenaan dengan nilainya pada waktu kemudian (atau langkah selanjutnya).

Rekursi dalam ilmu komputer
---------------------------

Artikel utama: Rekursi (ilmu komputer)
Metode umum dari penyederhanaan adalah dengan membagi suatu permasalah menjadi beberapa sub-permasalahan dengan tipe yang sama.
Sebagai sebuah teknik dalam pemrograman komputer, hal ini disebut dengan *divide and conquer* dan merupakan kunci dari perancangan berbagai algoritme penting.
*Divide and conquer* menyediakan pendekatan atas-bawah dalam pemecahan masalah, dengan permasalahan diselesaikan dengan menyelesaikan instansi yang lebih kecil.
Pendekatan sebaliknya yaitu pemrograman dinamis.
Pendekatan ini menyelesaikannya secara bawah-atas, dengan permasalahan diselesaikan dengan menyelesaikan instansi yang lebih besar, sampai ukuran yang diinginkan dicapai.

Contoh klasik dari rekursi adalah definisi dari fungsi faktorial, diberikan dalam kode C:

```
unsigned int factorial(unsigned int n)
{
 if (n == 0) {
 return 1;
 } else {
 return n \* factorial(n-1);
 }
}

```

Fungsi tersebut memanggil dirinya sendiri secara rekursif terhadap versi input yang lebih kecil (n-1) dan mengkalikan hasil dari pemanggilan rekursif dengan n, sampai pada kasus dasar, sama analoginya dengan definisi matematika dari faktorial.

Rekursi dalam pemrograman komputer dicontohkan saat sebuah fungsi didefinisikan dalam bentuk sederhana, bahkan versi terkecil dari dirinya.
Solusi dari permasalahan kemudian dirancang dengan menggabungkan solusi-solusi yang didapat dari versi sederhana dari permasalahan.
Salah satu contoh aplikasi rekursi yaitu dalam *parsing* untuk bahasa pemrograman.
Keuntungan utama dari rekursi adalah suatu himpunan tak-terbatas dari kalimat yang memungkinkan, perancangan atau data lainnya dapat didefinisikan, diurai atau dihasilkan dengan suatu program komputer yang terbatas.

Relasi perulangan adalah persamaan-persamaan untuk menentukan satu atau lebih urutan-urutan secara rekursif.
Beberapa relasi perulangan tertentu dapat "diselesaikan" untuk mendapatkan definisi bukan-rekursif.

Penggunaan rekursi dalam suatu algoritme memiliki kelebihan dan kekurangan.
Kelebihan utamanya adalah biasanya kesederhanaan.
Kekurangan utamanya adalah terkadang algoritme tersebut membutuhkan memori yang sangat banyak jika kedalaman rekursi sangat besar.

Teorema rekursi
---------------

Dalam teori himpunan, ini adalah teorema yang menjamin bahwa fungsi yang terdefinisi secara rekursif itu ada.
Diberikan suatu himpunan *X*, sebuah elemen *a* dari *X* dan sebuah fungsi {\displaystyle f:X\rightarrow X}, teorema menyatakan bahwa ada fungsi unik {\displaystyle F:\mathbb {N} \rightarrow X} (dengan {\displaystyle \mathbb {N} } menunjukkan himpunan dari bilangan asli termasuk nol) sehingga

{\displaystyle F(0)=a}
{\displaystyle F(n+1)=f(F(n))}
untuk setiap bilangan asli *n*.

### Pembuktian keunikan

Ambil dua fungsi
{\displaystyle F:\mathbb {N} \rightarrow X}
dan
{\displaystyle G:\mathbb {N} \rightarrow X}
sehingga:

{\displaystyle F(0)=a}
{\displaystyle G(0)=a}
{\displaystyle F(n+1)=f(F(n))}
{\displaystyle G(n+1)=f(G(n))}
dengan *a* adalah elemen dari *X*.

Ia dapat dibuktikan dengan induksi matematika bahwa
{\displaystyle F(n)=G(n)}
untuk semua bilangan asli *n*:

**Kasus dasar**: {\displaystyle F(0)=a=G(0)} sehingga persamaan memenuhi untuk {\displaystyle n=0}.
**Langkah Induktif**: Misalkan {\displaystyle F(k)=G(k)} untuk beberapa {\displaystyle k\in \mathbb {N} }. Maka {\displaystyle F(k+1)=f(F(k))=f(G(k))=G(k+1).}
Karenanya F(k) = G(k) menyiratkan F(k+1) = G(k+1).
Dengan induksi,
{\displaystyle F(n)=G(n)}
untuk semua
{\displaystyle n\in \mathbb {N} }.

### Contoh-contoh

Beberapa relasi perulangan umum yaitu:


|  |
| --- |
| * Rasio Golden: {\displaystyle \phi =1+(1/\phi )=1+(1/(1+(1/(1+1/...))))}
* Faktorial: {\displaystyle n!=n(n-1)!=n(n-1)\cdots 1}
* Bilangan Fibonacci: {\displaystyle f(n)=f(n-1)+f(n-2)}
* Bilangan Catalan: {\displaystyle C\_{0}=1}, {\displaystyle C\_{n+1}=(4n+2)C\_{n}/(n+2)}
* Perhitungan suku bunga
* Menara Hanoi
* Fungsi Ackermann
 |

Bibliografi
-----------

* Dijkstra, Edsger W. (1960). "Recursive Programming". *Numerische Mathematik*. **2** (1): 312–318. doi:10.1007/BF01386232.
* Johnsonbaugh, Richard (2004). *Discrete Mathematics*. Prentice Hall. ISBN 0-13-117686-2.
* Hofstadter, Douglas (1999). *Gödel, Escher, Bach: an Eternal Golden Braid*. Basic Books. ISBN 0-465-02656-7.
* Shoenfield, Joseph R. (2000). *Recursion Theory*. A K Peters Ltd. ISBN 1-56881-149-7.
* Causey, Robert L. (2001). *Logic, Sets, and Recursion*. Jones & Bartlett. ISBN 0-7637-1695-2.
* Cori, Rene; Lascar, Daniel; Pelletier, Donald H. (2001). *Recursion Theory, Gödel's Theorems, Set Theory, Model Theory*. Oxford University Press. ISBN 0-19-850050-5. Pemeliharaan CS1: Banyak nama: authors list (link)
* Barwise, Jon; Moss, Lawrence S. (1996). *Vicious Circles*. Stanford Univ Center for the Study of Language and Information. ISBN 0-19-850050-5. Pemeliharaan CS1: Banyak nama: authors list (link)  - menjelaskan pengerjaan dari corecursion.
* Rosen, Kenneth H. (2002). *Discrete Mathematics and Its Applications*. McGraw-Hill College. ISBN 0-07-293033-0.
* Cormen, Thomas H. Charles E. Leiserson, Ronald L. Rivest, Clifford Stein (2001). *Introduction to Algorithms*. Mit Pr. ISBN 0-262-03293-7. Pemeliharaan CS1: Banyak nama: authors list (link)
* Kernighan, B.; Ritchie, D. (1988). *The C programming Language*. Prentice Hall. ISBN 0-13-110362-8. Pemeliharaan CS1: Banyak nama: authors list (link)
* Stokey, Nancy,; Robert Lucas; Edward Prescott (1989). *Recursive Methods in Economic Dynamics*. Harvard University Press. ISBN 0-674-75096-9. Pemeliharaan CS1: Banyak nama: authors list (link)
* Hungerford (1980). *Algebra*. Springer. ISBN 978-0-387-90518-1. , bagian pertama dari teori himpunan.

Lihat juga
----------

* Korekursi
* Rekursi Course-of-values
* Ketakterbatasan digital
* Kombinator titik tetap
* Perulangan Takterbatas
* Infinitisme
* Fungsi Iterasi
* Mise en abyme
* Reentrant (subroutine)
* Referensi-diri
* Perulangan ganjil
* Rekursi buntut
* Formula Tupper
* Turtles all the way down

Referensi
---------

1. ↑  Nevins, Andrew; Pesetsky, David; Rodrigues, Cilene (2009). "Evidence and argumentation: A reply to Everett (2009)" (PDF). *Language*. **85** (3): 671–681. doi:10.1353/lan.0.0140.
2. 1 2  
Hunter, David (2011). *Essentials of Discrete Mathematics*. Jones and Bartlett. hlm. 494.

Pranala luar
------------


Lihat informasi mengenai ***recursion*** atau ***recursivity*** di Wiktionary.

* (Inggris) Recursion Diarsipkan 2005-02-06 di Wayback Machine. - tutorial oleh Alan Gauld
* (Inggris) A Primer on Recursion- mengandung petunjuk untuk rekursi dalam Bahasa Formal, Linguistik, Matematika dan Ilmu Komputer
* (Inggris) Zip Files All The Way Down
* (Inggris) Nevins, Andrew and David Pesetsky and Cilene Rodrigues. Evidence and Argumentation: A Reply to Everett (2009). Language 85.3: 671--681 (2009)

| * l
* b
* s
Fraktal |
| --- |
| Karakteristik | 
* Dimensi fraktal (Dimensi Hausdorff & Dimensi Topologis)
* Kesamaan-diri
* Rekursi

 | Sebuah gambar daun pakis yang memperlihatkan kesamaan-diri affine. |
| Sistem fungsi iterasi | 
* Bunga salju Koch
* Himpunan Cantor
* Permadani Sierpinski
* Segitiga Sierpinski
* Kurva pengisi-ruang
* Kurva naga
* Persegi-T
* Spons Menger
* Pakis Barnsley

 |
| Penarik ganjil | 
* Sistem multifraktal

 |
| sistem-L | 
* Kurva pengisi-ruang

 |
| Fraktal diluar-waktu | 
* Himpunan Mandelbrot
* Himpunan Julia
* Fraktal Burning Ship
* Fraktal Nova
* Fraktal Lyapunov

 |
| Fraktal acak | 
* Penerbangan Lévy
* Teori Percolation
* Perjalanan menghindari-diri
* Lanskap Fraktal
* Pergerakan Brownian
* Pohon Brownian
* Agregasi Difusi-terbatas

 |
| Orang | 
* Georg Cantor
* Felix Hausdorff
* Gaston Julia
* Paul Pierre Lévy
* Aleksandr Lyapunov
* Benoît Mandelbrot
* Lewis Fry Richardson
* Wacław Sierpiński
* Helge von Koch

 |
| Lainnya | 
* Daftar fraktal oleh dimensi Hausdorff
* "Berapakah panjang pantai Britania? Dimensi Fraksional dan Statistik Kesamaan-Diri"

 |

| * l
* b
* s
Logika matematika |
| --- |
| Umum | 
* Bahasa formal
* Aturan formasi
* Sistem formal
* Sistem deduktif
* Pembuktian formal
* Formal semantik
* Formula bentukan
* Himpunan
* Elemen
* Kelas
* Logika klasik
* Aksioma
* Deduksi alami
* Aturan inferensi
* Relasi
* Teorema
* Konsekuensi logis
* Sistem aksiomatis
* Teori tipe
* Simbol
* Sintaks
* Teori

 |
| Logika tradisional | 
* Proposisi
* Inferensi
* Argumen
* Validitas
* Meyakinkan
* Silogisme
* Sisi berlawanan
* Diagram Venn

 |
| Kalkulus proposisionalLogika boolean | 
* Fungsi Boolean
* Kalkulus proposisional
* Formula proposisional
* Hubungan logis
* Tabel kebenaran

 |
| Logika predikat | 
* Orde-pertama
* Pembilang
* Predikat
* Orde-dua
* Kalkulus predikat Monadic

 |
| Teori himpunan | 
* Himpunan
* Himpunan kosong
* Enumerasi
* Ekstensionalitas
* Himpunan terbatas
* Fungsi
* Subhimpunan
* Himpinan perpangkatan
* Himpunan terhitung
* Himpunan rekursif
* Domain
* Rentang
* Pasangan berurut
* Himputan tak terhitung

 |
| Teori model | 
* Model
* Interpretasi
* Model nonstandar
* Teori model terbatas
* Nilai kebenaran
* Validitas

 |
| Teori pembuktian | 
* Pembuktian formal
* Sistem deduktif
* Sistem formal
* Teorema
* Konsekuensi logis
* Aturan inferensi
* Sintaks

 |
| Teori komputabilitas | 
* Rekursi
* Himpunan rekursif
* Himpunan rekursif terhitung
* Permasalahan keputusan
* Tesis Church–Turing
* Fungsi terhitung
* Fungsi rekursif primitif

 |
| Kategori |