Computerpioniers: George Boole

Computerpioniers: George Boole Computers spreken geen mensentaal. Om een computer iets duidelijk te maken moeten de opdrachten en informatie gecodeerd worden in een taal die de computer wel begrijpt: nullen en enen. Ofwel: wél of juist geen stroompje. George Boole leverde met zijn booleaanse logica een belangrijke bouwsteen voor onze hedendaagse computers.

George Boole

In 1815 werd te Lincoln (Verenigd Koninkrijk) George Boole geboren, zoon van John Boole.
George Boole 1815-1864 / Bron: schools.keldysh.ru, Wikimedia Commons (Publiek domein)George Boole 1815-1864 / Bron: schools.keldysh.ru, Wikimedia Commons (Publiek domein)
De jonge George kreeg aanvankelijk van zijn vader les. Aanvankelijk was hij vooral geïnteresseerd in de klassieken. Dat veranderde op het moment toen hij in Lincoln een nieuwe school stichtte. Deze school verhuisde en in 1849 werd Boole aangesteld als hoogleraar wiskunde. Zijn wiskundig talent kwam volop tot ontwikkeling.

Publicaties

Boole publiceerde vanaf 1840 een aantal artikelen over wiskundige onderwerpen. Daarnaast schreef hij enkele systematische verhandelingen:
  • Treatise on Differential Equations (Verhandeling over Differentiaalvergelijkingen) 1859
  • Treatise on the Calculus of Finite Differences (Verhandeling over de Analyse van eindige verschillen) 1860, een vervolg op het eerste werk.

Beide waren waardevolle bijdragen aan de desbetreffende takken van de wiskunde.

Logica

Boole hield zich ook bezig met het symbolisch redeneren. Hij analyseerde de manier van redeneren en publiceerde in 1847 zijn bevindingen in een pamflet met de titel Mathematical Analysis of Logic. Hierin formuleerde hij een algebra, die op logische principes was gebouwd. Deze bleek precies te kloppen voor de schakelingen in de latere computers. Boole bouwde voort op het werk van Gottfried Wilhelm von Leibnitz, en ging uit van het tweetallig stelsel. In het tweetallig stelsel worden alleen de cijfers 0 en 1 gebruikt om getallen te vormen. Achteraf vond Boole dat het werk nog te oppervlakkig was, te overhaast en nog met teveel fouten. Hij schreef een verder uitgewerkte versie waarin hij zijn logische systeem verder en uitgebreider uit de doeken zou doen: An Investigation of the Laws of Thought, on Which are Founded the Mathematical Theories of Logic an Probalitities (1854). Inderdaad, een erg lange titel.

Logische verbindingen

Aan het tweetallig stelsel voegde Boole logische verbindingen toe: EN, OF, NIET. (AND, OR, NOT). Door uitspraken te combineren middels zo'n logische verbinding konden conclusies worden getrokken. Voorbeeld:

Een voetbal is bolvormig.

EN

Bolvormige voorwerpen zijn rond.
Conclusie: Een voetbal is rond.

Boole en computers

Het werk van Boole bleef bij het grote publiek onbekend. Alleen diegenen die zich met de logica hadden beziggehouden kenden zijn werk. Ongeveer zeventig jaar na het overlijden van Boole, was Claude Shannon aanwezig bij een filosofiecollege, waar aandacht werd besteed aan logica, en dus aan het werk van Boole. Shannon begreep dat de Booleaanse algebra belangrijk was voor de verdere ontwikkeling van elektromagnetische systemen. Dit zou de basis vormen van alle huidige digitale computers.

Schakelingen

Het bleek dat de logische, Booleaanse wiskunde precies paste bij de schakelingen in computers. In het tweetallig stelsel, waarbij 1 de betekenis waar heeft, en 0 de betekenis niet-waar, konden elektronische schakelaars als volg resultaten geven:
  • Een schakelaar met een EN-functie (AND) laat een stroompje door, als beide ingangen de waarde 1 hebben. Ofwel: als via beide ingangen een stroompje binnenkomt.
  • Een schakelaar met een OF-functie (OR) laat een stroompje door, als één van beide ingangen de waarde 1 heeft. Ofwel: via één van beide ingangen komt stroompje binnen. De OF-functie geeft dus ook een stroompje als op beide ingangen de waarde 1 staat, dus via beide kanten een stroompje binnenkomt.
  • Een schakelaar met een NIET-functie (NOT) laat een stroompje door als beide ingangen de waarde 0 hebben. Ofwel: via beide ingangen komt géén stroompje binnen.
  • Toegevoegd is de XOR-functie (Of de een, of de ander, maar niet beide). Deze geeft een stroompje als één van de ingangen de waarde 1 heeft, dus een stroompje levert, en de andere kant niet en dus de waarde 0 heeft.

In een tabel:
Zin-AZin-BFunctie (operator)Resultaat
Waar (1)Waar (1)ANDWaar (1)
Waar (1)Niet waar (0)ANDNiet waar (0)
Niet waar (0)Niet waar (0)ANDNiet waar (0)
Waar (1)Waar (1)ORWaar (1)
Waar (1)Niet waar (0)ORWaar (1)
Niet waar (0)Waar (1)ORWaar (1)
Niet waar (0)Niet waar (0)ORNiet waar (0)
Waar (1)Waar (1)NOTNiet waar (0)
Waar (1)Niet waar (0)NOTNiet waar (0)
Niet waar (0)Waar (1)NOTNiet waar (0)
Niet waar (0)Niet waar (0)NOTWaar (1)
Waar (1)Waar (1)XORNiet waar (0)
Waar (1)Niet waar (0)XORWaar (1)
Niet waar (0)Waar (1)XORWaar (1)
Niet waar (0)Niet waar (0)XORNiet waar (0)

Lees de eerste tegel van de tabel als volgt:
Als zin-A waar is (waarde 1, dus stroompje) AND zin-B is waar (waarde 1, dus stroompje) DAN is het resultaat waar (waarde 1).
De overige regels worden overeenkomstig gelezen.

Nagedachtenis

Onze huidige computers zijn gebouwd met een systeem dat is gebaseerd op de logica in de Booleaanse algebra. In de meeste programmeertalen is een variabele naar Boole genoemd: de boolean. Deze variabele kan de waarde 1 of 0 bevatten (of: Ja – Nee, True – False, etc)
© 2012 - 2024 Hansvg, het auteursrecht van dit artikel ligt bij de infoteur. Zonder toestemming is vermenigvuldiging verboden. Per 2021 gaat InfoNu verder als archief, artikelen worden nog maar beperkt geactualiseerd.
Gerelateerde artikelen
Booleaanse algebra van George BooleBooleaanse algebra van George BooleHet Booleaanse algebra wordt nog dagelijks onbewust gebruikt door vele surfers op het web. Door woorden te gebruiken als…
Computerpioniers: Konrad Zuse. De eerste?Computerpioniers: Konrad Zuse. De eerste?Onze moderne computer heeft zijn uiteindelijke vorm gekregen door de genialiteit, vastberadenheid en doorzettingsvermoge…
Booleaanse operatorenEen manier om de resultaten bij zoekopdrachten bij zoekmachines of databanken te verbeteren is door gebruik te maken van…
Computerpioniers: Gottfried Wilhelm (von) LeibnitzComputerpioniers: Gottfried Wilhelm (von) LeibnitzGottfried Wilhelm von Leibnitz (1646-1716) was een briljant onderzoeker en wetenschapper op een breed aantal terreinen.…

Computerpioniers: Alan TuringComputerpioniers: Alan TuringDe ontwikkeling van de computer is een lange weg geweest, een proces waar veel mensen hun eigen onmisbare bijdrage aan g…
Computerpioniers: het beginComputerpioniers: het beginJe kunt je onze maatschappij niet meer voorstellen zonder computers. Computers zijn overal om ons heen, laptops, desktop…
Bronnen en referenties
  • Allemaal enen en nullen (Ed van Eeden, 2002)
  • Wikipedia: George Boole
  • Afbeelding bron 1: schools.keldysh.ru, Wikimedia Commons (Publiek domein)
Hansvg (513 artikelen)
Laatste update: 06-08-2020
Rubriek: Pc en Internet
Subrubriek: Geschiedenis
Bronnen en referenties: 3
Per 2021 gaat InfoNu verder als archief. Het grote aanbod van artikelen blijft beschikbaar maar er worden geen nieuwe artikelen meer gepubliceerd en nog maar beperkt geactualiseerd, daardoor kunnen artikelen op bepaalde punten verouderd zijn. Reacties plaatsen bij artikelen is niet meer mogelijk.