31.07.2013 Views

Denkende Machines -- Computers, rekenen, redeneren - CWI

Denkende Machines -- Computers, rekenen, redeneren - CWI

Denkende Machines -- Computers, rekenen, redeneren - CWI

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Hoofdstuk 3<br />

Modellen van Berekening<br />

In het eerste hoofdstuk hebben we kennisgemaakt met allerlei verschillende soorten rekenapparatuur.<br />

Dit was nog maar een uiterst bescheiden greep uit wat er allemaal door de geschiedenis<br />

heen bedacht is om het <strong>rekenen</strong> te automatiseren. In dit hoofdstuk willen we laten zien hoe<br />

je, zonder je druk te maken over allerlei technische moeilijkheden aangaande de hardware en<br />

computerarchitectuur, op een tamelijk eenvoudige en heldere manier kunt begrijpen wat automatische<br />

rekenprocessen zijn. Hiervoor gebruiken we abstracte machinemodellen waarmee<br />

we zicht kunnen krijgen op welke problemen zich – met wat voor middelen dan ook – laten<br />

automatiseren.<br />

In het begin van de twintigste eeuw werd door sommige vooruitdenkende wiskundigen nog<br />

verondersteld dat uiteindelijk alle rekenproblemen zich in computerprogramma’s zouden laten<br />

vangen. Wiskundigen houden niet erg van losse veronderstellingen en zij stelden zich dan ook<br />

ten doel hun gevoel van optimisme wiskundig te funderen, met behulp van een bewijs. De vraag<br />

was natuurlijk hoe je zoiets kon bewijzen: er moest als eerste een wiskundige definitie gegeven<br />

worden van wat het betekent dat een probleem automatisch/mechanisch oplosbaar is. In de jaren<br />

dertig introduceerde de Britse wiskundige Alan Turing, de hoofdrolspeler in dit hoofdstuk, een<br />

voor iedereen bevredigend wiskundige formalisering van wat machinale berekenbaarheid behelst.<br />

Turing was niet de eerste met zo’n model. De Amerikaanse wiskundige Alonso Church had<br />

korte tijd voor Turing al een definitie gegeven die echter wel een stuk ingewikkelder was.<br />

Turing heeft overigens bewezen dat zijn definitie op hetzelfde neer kwam als die van Church.<br />

Turing liet vervolgens zien dat er rekenproblemen zijn die niet automatisch kunnen worden<br />

opgelost. In dit hoofdstuk zullen we zijn eenvoudige en elegante model, de naar hem genoemde<br />

Turing machines, introduceren. We laten zien hoe je ze kan laten <strong>rekenen</strong> en vervolgens zullen<br />

we op een informele manier laten zien waarom er rekenproblemen zijn waar geen Turing machine<br />

voor te ontwerpen is.<br />

3.1 Automaten<br />

3.1.1 Simpele Automaten, Keuze-Automaten, <strong>Computers</strong><br />

Automaten zijn apparaten die eenmaal in gang gezet zelf een bepaalde handeling of serie handelingen<br />

uitvoeren. Het in gang zetten van een automaat gebeurt met het geven van een<br />

61

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!