Denkende Machines -- Computers, rekenen, redeneren - CWI
Denkende Machines -- Computers, rekenen, redeneren - CWI
Denkende Machines -- Computers, rekenen, redeneren - CWI
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
3.1. AUTOMATEN 65<br />
Figuur 3.3: De dikke lijn representeert het pad dat X aflegt. De originele string overbrugt<br />
dezelfde afstand maar met een extra lus met T als begin en einde.<br />
m 1 T<br />
Opdracht 3.4 Vijfvouden zijn nog makkelijker te herkennen dan drievouden. Teken de procesgraaf<br />
van een automaat met twee toestanden die vijfvouden herkent.<br />
Opdracht 3.5 Een automaat ontwerpen voor andere veelvouden kan iets lastiger zijn. Ze zijn<br />
echter altijd te maken. Teken de procesgraaf van een automaat voor viervoud-herkenning. Hint:<br />
Een viervoud van één cijfer moet een 0, een 4 of een 8 zijn. Een viervoud van minstens twee<br />
cijfers is altijd te herkennen aan de laatste twee cijfers: als het op een na laatste cijfer even is,<br />
dan moet het laatste cijfer een 0, een 4 of een 8 zijn. Als het op een na laatste cijfer oneven is,<br />
dan moet het laatste cijfer een 2 of een 6 zijn.<br />
Opdracht 3.6 De mooie eigenschap van drievouden uit Opdracht 3.3 is een toevalligheid van<br />
het tientallig stelsel. De onderliggende wetmatigheid is echter niet van het talstelsel afhankelijk.<br />
In het unaire stelsel, waar de enige bewerking ‘+1’ is, gedraagt elk getal zich zeer regelmatig.<br />
Teken een automaat die zevenvouden in het unaire stelsel herkent.<br />
3.1.3 Wat Kan een Keuze-automaat niet?<br />
Ondanks het feit dat het automaatje uit Figuur 3.2 maar drie toestanden heeft, kan het onbeperkte<br />
invoer aan. Voor een willekeurig lang getal kan het bepalen of het een drievoud is. Dat<br />
stemt hoopvol. De vraag is dan ook of we automaten ook andere dingen kunnen laten be<strong>rekenen</strong>,<br />
en dan liefst het soort saaie berekeningen die wij ook volledig ‘op de automatische piloot’<br />
uitvoeren. Dat blijkt helaas niet het geval te zijn. Een automaat is hiervoor te ‘vergeetachtig’.<br />
Het blijkt bijvoorbeeld niet mogelijk te zijn om een automaat te maken die een willekeurige<br />
correcte optelling kan herkennen.<br />
Stel dat er wel zo’n optelautomaat zou zijn die elke uitdrukking van de vorm getal1 + getal2<br />
= getal3 ‘nakijkt’. We voeren nu een correcte optelling van twee getallen in, n1 en n2, die zo<br />
groot zijn dat de lengtes van deze getallen samen groter is dan het aantal toestanden van de<br />
automaat. De verwerking van deze optelling zal meer toestandsovergangen vergen dan het aantal<br />
toestanden van de automaat, en zodoende moet er tenminste één toestand, zeg T , meerdere keren<br />
bezocht worden voordat de eindtoestand bereikt is. Laat m1 het aantal tekens zijn dat ingelezen<br />
is bij het eerste bezoek aan T en m2 het aantal ingelezen tekens bij de tweede keer. Laat nu X<br />
de rij symbolen zijn die we krijgen door uit de originele optelling het stuk van het m1 + 1-ste<br />
tot en met het m2-de teken weg te laten. Als we de invoer X aan dezelfde automaat geven, dan<br />
doorloopt deze dezelfde weg door de procesgraaf minus de T -lus. Daarmee wordt ook X door<br />
de automaat opgevat als een correcte optelling. Dat oordeel kan echter niet juist zijn. Als in het<br />
m 2