2.3. Historie: produceren van tabellen

Vóór de komst van de computer speelden tabellenboeken een belangrijke rol.o Deze werden gebruikt voor allerlei praktische rekenproblemen.

(Op mijn boekenlijst voor de middelbare school stond nog een tabellenboek, met o.a. logaritmen en goniometrische functies.)

Deze tabellenboeken hadden een grote praktische waarde. Een fout in een tabellenboek kon dan ook grote gevolgen hebben, zoals het vergaan van een schip. Deze fouten werden niet alleen gemaakt bij het berekenen van de tabellen, maar ook bij het zetten van de tabellen bij de drukker.

2.3.1. Babbage: Difference Engine

Charles Babbage bedacht daarom een machine, de Difference Engine, om tabellen automatisch (mechanisch) uit te rekenen en de resultaten ook automatisch te zetten voor de drukker.

Het is Babbage niet gelukt om een werkend exemplaar van de Difference Enginge te maken. (Veel) later is deze wel nagebouwd op basis van de tekeningen van Babbage: er zijn nu twee werkende exemplaren.

Het bijzondere van de aanpak van de Difference Engine is dat je met alleen optellen een tabel van een polynomiale functie kunt maken. Je hebt dus geen machtsverheffen of vermenigvuldigen nodig.

Wikipedia: https://en.wikipedia.org/wiki/Difference_engine

2.3.2. Analytical Engine

Tijdens het werken aan deze Difference engine, een rekenmachine met één enkel doel, bedacht Babbage hoe je een “general purpose” rekenmachine zou kunnen maken: de Analytical engine. Dit is het basisidee van de computer zoals wij die kennen - maar dan mechanisch uitgevoerd. In de praktijk is het erg lastig om een computer helemaal mechanisch uit te voeren: Babbage is daar dan ook niet in geslaagd.

Zijn ideeën waren een bron van inspiratie voor Ada Lovelace, die probeerde deze machine te programmeren. Zij voorzag al de geweldige mogelijkheden van een general purpose computer.

Pas met de komst van de electromechamische electronische schakelaars, eerst in de vorm van relais, daarna in de vorm van radiobuizen, en later transistoren, discreet (los) en in geïntegreerde schakelingen, is de computer van fantastisch idee tot praktisch instrument geworden.

2.3.3. Voorbeeld: \(f(x)=x^3\)

De Difference engine maakt tabellen van polynomiale functies, op basis van de verschillen tussen de vorige waarde(n) en de volgende waarde(n).

Voorbeeld: tabel van \(f(x)=x^3\)

Beschouw \(f(x)=x^3\)

  • hiervoor geldt: \(f(x+1) = (x+1)^3 = x^3 + 3x^2 + 3x + 1 = f(x) + g(x)\).

  • voor het verschil geldt: \(g(x)=3x^2+3x+1\)

  • zelfde stap: \(g(x+1)=3(x+1)^2 + 3(x+1) + 1 = g(x)+6x+6 = g(x) + h(x)\).

  • voor het verschil geldt: \(h(x)=6x+6\)

  • zelfde stap: \(h(x+1) = 6(x+1)+6 = h(x)+6\)

We hebben nu de basisstappen voor de berekening die we in een spreadsheet kunnen uitvoeren. We moeten alleen nog de beginwaarden vaststellen.

  • \(f(0)=0\)

  • \(g(0)=1\)

  • \(h(0)=6\)

De rekenstap -met alleen optellingen- die we nu moeten herhalen is:

  • x, f, g, h := x+1, f+g, g+h, h+6

In een spreadsheet wordt dit:

  • A2: 0, B2: 0, C2: 1, D2: 6

  • A3: =A2+1

  • B3: =B2+C2

  • C3: =C2+D2

  • D2: =D2+6

  • kopieer deze formule-regel voor het gewenste aantal herhalingen.

../_images/differences-x3.png

Tabel voor \(f(x)=x^3\) met alleen optellingen

Opmerking. Omdat je voor de volgende waarde alleen de direct voorafgaande waarden gebruikt, hoef je ook alleen die maar bij te houden in een echte rekenmachine. De tabel daarvoor hoef je na het afdrukken niet te onthouden.

You have attempted of activities on this page
2.2. Groei van functies, functies van groei"> 3. Data-analyse en visualisatie">Next Section - 3. Data-analyse en visualisatie