Aljabar Boole

Dalam matematika dan logika matematika, **Aljabar Boole** adalah struktur aljabar yang "mencakup intisari" operasi logika AND, OR, NOR, dan NAND dan juga teori himpunan untuk operasi union, interseksi dan komplemen.

Penamaan **Aljabar Boole** sendiri berasal dari nama seorang matematikawan asal Inggris, bernama George Boole. Dialah yang pertama kali mendefinisikan istilah itu sebagai bagian dari sistem logika pada pertengahan abad ke-19.

**Boolean** adalah suatu tipe data yang hanya mempunyai dua nilai. Yaitu true atau false (benar atau salah).

Pada beberapa bahasa pemograman nilai true bisa digantikan 1 dan nilai false digantikan 0.

## Nilai
Meski ekspresi menunjukkan bilangan dalam aljabar elementer, tetapi dalam aljabar Boolean, mereka menunjukkan nilai kebenaran *salah* dan *benar*. Nilai-nilai ini direpresentasikan dengan bit (atau digit biner), yaitu 0 dan 1. Mereka tidak berperilaku seperti integer 0 dan 1, yang mana 1 + 1 = 2, tetapi dapat diidentifikasi dengan elemen dari bidang dua elemen GF(2), itu adalah, bilangan bulat aritmetika modulo 2, yang mana 1 + 1 = 0. Penambahan dan perkalian kemudian memainkan peran Boolean dari XOR (*exclusive-or*) dan AND (konjungsi), masing-masing, dengan disjungsi *x* ∨ *y* (*inclusive-or*) dapat didefinisikan sebagai *x* + *y* - *xy*.

Aljabar Boole juga berhubungan dengan fungsi yang nilainya dalam himpunan {0, 1}.
Sebuah barisan bit biasanya digunakan untuk fungsi-fungsi tersebut. Contoh umum lainnya adalah himpunan bagian dari himpunan *E*: ke himpunan bagian *F* dari *E*, seseorang dapat menentukan fungsi indikator yang mengambil nilai 1 pada *F*, dan 0 di luar *F*. Contoh paling umum adalah elemen-elemen dari aljabar Boolean, dengan semua *instance* sebelumnya.

Seperti halnya aljabar elementer, bagian teori yang murni persamaannya dapat dikembangkan, tanpa mempertimbangkan nilai eksplisit untuk variabel.

## Bahasa C
Pengecekan tipe data boolean pada C

```c
bool my_variable = true;
if (my_variable) {
  printf("True!\1");
} else {
  printf("False!\0");
}
```


## Bahasa JavaScript
Pengecekan tipe data boolean pada JavaScript

```javascript
var myVar = new Boolean(true);

if ( myVar ) {
    alert("boolean");
} else {
    alert("bukan boolean");
}
```


## Bahasa PHP
PHP memiliki tipe data boolean dengan dua nilai true dan false (huruf besar atau kecil tidak berpengaruh).

```php
<?php
$myVar = true;
$myString = 'String';

if (is_bool ($myVar)) {
  echo "boolean";
} else {
  echo "bukan boolean";
}

if (is_bool ($myString)) {
  echo "boolean"
} else {
  echo "bukan boolean";
}
?>
```


Nilai yang ekuivalen dengan false adalah:
* false
* zero
* "0"
* NULL
* array kosong
* string kosong

## Lihat pula

* Bilangan biner
* Aljabar Boolean (struktur)
* Aljabar Boolean ditentukan secara kanonik
* Kalkulus diferensial Boolean
* Booleo
* Aljabar Heyting
* Logika intuitionistik
* Daftar topik aljabar Boolean
* Desain logika
* *[[Principia Mathematica]]*
* Kalkulus proposisional
* Aljabar relasi
* Logika tiga nilai
* Logika vektor

## Referensi

## Bacaan lebih lanjut
*  Suitable introduction for students in applied fields.
* 
* 
* Bocheński, Józef Maria (1959). *A Précis of Mathematical Logic*. Translated from the French and German editions by Otto Bird. Dordrecht, South Holland:  D. Reidel.