Die theologische Dimension der Mathematik
Wer schon immer mal wissen wollte, was die Bibel an Weisheit und an Authentizität zu bieten hat, für den ist unser neues Programmierprojekt genau das Richtige.
Schon seit dem Bestehen der Menschheit gibt es Streitereien darüber, welche Religion die einzig Wahre ist, oder wie man sie am Besten auslegt. Viele grausame Kriege entstanden daraus, und nur Priester und Schriftgelehrete konnten genau erklären, was am Gegner denn so böse ist.
Damit ist jetzt Schluss. Denn das Programm, das ich hier vorstellen möchte, berechnet auf mathematisch beweisbaren Wege den Wahr- und Weisheitsgehalt eines beliebigen deutschen Textes. Dabei wird ein sehr einfach aussehender Algorithmus verwendet, der Beweis dafür führt allerdings auf mathematische Abwege und hat mich jahrelang beschäftigt.
Deshalb soll auf die Herleitung des Algorithmus an dieser Stelle nicht näher eingegangen werden. Wer sich dafür interessiert, kann mich per Mail oder persönlich um eine genauere Erklärung des Algorithmus bitten.
/* Program Pibel.c by Florian Schmitt
Berechnet den Wert von PI anhand des Bibeltextes
Das Programm sollte mit jedem C-Compiler laufen.
Aufruf: "Pibel FILENAME", wobei FILENAME eine ASCII-Datei
mit dem Bibeltext ist.
*/#include
int fertig=0;
long Quadrat(signed short a)
/* Quadriert eine Zahl */
{
return (long)a*a;
}short Essenz(FILE *Text)
/* Berechnet die Essenz des Textes */
{
short Buchstabe[4];fertig=(fread(&Buchstabe, sizeof(short), 4, Text)<4); /* Die naechsten 4 Buchstaben einlesen */ if (fertig) return 0; else { fseek(Text,-7,SEEK_CUR); return (Buchstabe[1]+13*Buchstabe[3]+7*Buchstabe[2])^(Buchstabe[0]*3); /* Vermutung ueber die Konstanten: 13=12 Juenger+Jesus, * * In 7 Tagen wurde die Welt erschaffen, * * 3 symbolisiert die Dreifaltigkeit * ( weitere Vorschlaege sind gerne willkommen) */ } } main(int argc, char **argv) { long Worte,Weisheit; FILE *Text; if (argc==2) { Text=fopen(argv[1],"rb"); for (Worte=Weisheit=0;!(fertig);Worte++) { Weisheit+=(Quadrat(Essenz(Text))+Quadrat(Essenz(Text)))>>30;
}
printf("%1.5f\n",4.0*(Worte-Weisheit)/Worte);
}
else printf("SYNTAX: Pibel DATEINAME\n");
}
Aber jetzt sind doch noch ein paar Bemerkungen zur Implementierung angebracht: In der Funktion Essenz werden die Konstanten 3, 7 und 13 benutzt. Diese Konstanten sind für eine schnelle Konvergenz des Algorithmus wichtig. Die Theologische Bedeutung dieser Zahlen ist mir jedoch nicht ganz klar, obwohl ich eine Vermutung im Programmtext geäussert habe. Vielleicht können hier ein paar Theologen weiterhelfen?
An dieser Stelle möchte ich noch empfehlen, auch andere magische Zahlen auszuprobieren. Die dabei entstehenden Ergebnisse können für das Verständnis des Algorithmus durchaus nützlich sein. Beim Abtippen ist übrigens darauf zu achten, dass keine „Vereinfachungen“ vorgenommen werden. Der Algorithmus ist auf Seiteneffekte angewiesen, also gebt ihn möglichst wörtlich ein (Bis auf die Kommentare, die können natürlich weggelassen werden).
Noch ein Hinweis zu Wahl des Compilers: da das Programm nur sehr kleine dafür aber sehr viele Datenpakete von der Festplatte liest, ist das Programm bei einem Compiler, der hier nicht optimiert, äusserst langsam. Bei Borlands bcc kann ein Durchlauf schon mehrere Minuten dauern, während der Linux-egcs es in 10 Sekunden schafft .
Zum Ausprobieren eignet sich zum Beispiel die Elberfelder Übersetzung der Bibel, zu finden zum Beispiel hier.
Interessant hierbei ist die Beobachtung, daß die Bücher der Bibel erst in ihrer Gesamtheit die volle Wahrheit bieten. So hat der erste Brief des Petrus nur einen PI-Wert von 3.11909, während alle Bücher in einer einzigen Datei zusammengefasst den Wert 3.14554 erreichen. Der exakte Wert wird, bedingt durch Überlieferungs- und Übersetzungsfehler, natürlich nicht erreicht.
Viel Spaß beim Ausprobieren, welche Religion die einzig wahre ist.
Den Quellcode gibts hier und natürlich auch eine bereits compilierte Linux- sowie Windoofsversion für die Kommandozeile.