Beiträge vom April, 2008

Geheimnis oder Geschwafel?

Freitag, 18. April 2008 6:33

Die von mir sehr geschätzte Gesellschaft zur wissenschaftlichen Untersuchung der Parawissenschaften befasst sich in ihrem Blog mit einem geplanten Vortrag zum Voynich-Manuskript. Auf der kommenden GWUP-Konferenz wird der Informatiker Klaus Schmeh verschiedene Theorien beleuchten und beabsichtigt dabei auch, etwas Licht in das Dunkel zu bringen.

Nun gut, das beabsichtige ich ja auch. Allerdings halte ich es nicht für die wahrscheinlichste Lösung, dass es sich beim Inhalt dieses Buches um bedeutungslosen Unfug handelt, sondern ich will dieses Buch eines Tages lesen. Aber zumindest das eine habe ich mit Herr Schmeh gemeinsam: »Völlig sicher bin ich mir da aber nicht«. ;-)

In einer anderen Sache hingegen bin ich mir sehr sicher. Im Gegensatz zu Herrn Schmeh halte ich die Untersuchungen von Gordon Rugg nicht für schlüssig. (Aber durchaus für interessant und ausbaufähig.) Bei aller optischer Ähnlichkeit der von Rugg erzeugten »Texte« ist es Rugg in seinem vorgelegten Textmaterial nicht gelungen, die recht deutlichen Verteilungen der Wortlängen innerhalb der Zeilen und die in für tiefere Zeilen abnehmenden Gallow-Häufigkeiten innerhalb der Seiten zu reproduzieren. Diese Strukturen erwecken im richtigen Manuskript den starken Eindruck, dass es sich sowohl bei den Zeilen als auch bei den Seiten um Informationeinheiten handele.

Auch gelingt es Ruggs »Pseudo-Voynichianisch« nicht, die besonders auffällige Anhäufung von Glyphen wie m in den letzten Wörtern der Zeilen zu reproduzieren. Vielmehr wirken die Glyphen über die Zeile gleichmäßig verteilt, was im deutlichen Kontrast zum Text des Manuskriptes steht.

Leider hat Gordon Rugg zwar nach eigener Publikation ein Computerprogramm für seine Methode erstellt, es aber weder für nötig erachtet, mit Hilfe dieses Programmes eine ausreichend große Menge Nonsens-Text (sagen wir einmal: um dreißig Seiten herum) zu generieren und für Vergleiche zur Verfügung zu stellen, noch hielt er es für eine gute Idee, sein Programm und die verwendeten Eingabedaten öffentlich zugänglich zu machen. Angesichts der etwas kryptischen Arbeitsmethoden und der Tatsache, dass aufgrund einer eher oberflächlichen Ähnlichkeit des Ergebnisses ein weit reichender Schluss postuliert wurde, ist dieser ganze Ansatz mit einem Makel behaftet, der ebenso arg ist wie die Leistungen einiger wirrköpfiger »Entzifferer«. Und das ist schade, denn es fügt der ernsthaften Auseinandersetzung mit dem »verdammten Manuskript« anhaltend Schaden zu.

Gerade bei Menschen, die Skeptiker sind, sollte bei einer solchen wissenschaftlichen Arbeitsweise jede Alarmlampe angehen, wenn auch die »Ergebnisse« solchen Arbeitens im Scientific American publiziert wurden.

Natürlich kann der Vortrag dennoch interessant sein. Wer sich in der Zeit zwischen dem 1. und 3. Mai in Darmstadt aufhält, sollte sich diese Gelegenheit nicht entgehen lassen. Der GWUP wäre (wohl nicht nur) ich sehr zu Dank verpflichtet, wenn Inhalte dieses Vortrages und ergänzende Materialien – ein Kryptografie-Experte und Informatiker wird sich gewiss sehr gründlich mit dem Manuskript und einigen »Lösungen« auseinandersetzen, da bin ich mir ganz sicher – frei im Internet verfügbar gemacht würden, damit ich zusammen mit den ganzen anderen Voynichologen auch etwas davon habe.

[via Voynich News]

Thema: Kommunikation, Sonstiges im Netz | Kommentare (0) | Autor:

Transkriptionen aus der Datenbank holen

Montag, 7. April 2008 1:36

So nützlich es auch ist, die Transkriptionen in einer relationalen Datenbank zu haben, so sehr wünscht man sich doch manchmal, dass diese als gewöhnlicher Text vorliegen. Um ein bequemes Extrahieren von Transkriptionen aus der Datenbank zu ermöglichen, habe ich noch ein kleines Python-Skript geschrieben. Dieses Skript steht hier zum freien Download, und wer sich immer mit diesem Manuskript plagt, der darf es gern benutzen oder für seine speziellen Bedürfnisse anpassen.

Download-Link: Ein Python-Skript zum Extrahieren von Transkriptionen aus der Datenbank

Wer das Skript benutzen will, muss die Zugangsdaten für seine Datenbank im Quelltext angeben. Dieser Teil des Quelltextes dürfte sich auch für jene selbst erklären, die sich mit Python sonst schwer tun. Deshalb habe ich keine andere Methode zur Konfiguration vorgesehen.

Die Verwendung ist relativ einfach. Es handelt sich um ein Skript für die Kommandozeile, mit Optionen kann gesteuert werden, welcher Anteil aus welcher Transkription extrahiert werden soll.

Übersicht über die Optionen

Bei allen Optionen muss die korrekte Groß-/Kleinschreibung beachtet werden.

-h
Ausgabe einer kurzen Hilfe zu den Optionen, die eine gute Gedächtnisstütze sein kann.

-O DATEINAME
Umleitung der Ausgabe in eine Datei. Das können allerdings auch fast alle Betriebssysteme.

-t TRANSCODE
Auswahl der gewünschten Transkription durch den ihr zugeordneten Code, der aus einem Buchstaben besteht. Wenn diese Angabe nicht gemacht wird, wird die Transkription von Takeshi Takahashi verwendet.

-H HANDCODE
Auswahl der Handschrift nach dem Schema von Currier. Definierte Codes sind 1, 2, 3, 4, 5, X und Y. Es können mehrere Codes angegeben werden, etwa 345. Wenn diese Angabe nicht gemacht wird, werden Seiten unabhängig von dieser Information extrahiert.

-l LANGCODE
Auswahl der Currier-Sprache. Definierte Codes sind A und B. Es kann auch AB angegeben werden, um nur jene Bereiche zu extrahieren, denen sich eine Currier-Sprache zuordnen lässt. Wenn diese Angabe nicht gemacht wird, werden Seiten unabhängig von dieser Information extrahiert.

-i ILLUCODE
Auswahl von Seiten nach ihrer Illustration. Definierte Codes sind T für reinen Text, H für Pflanzenkunde, A für astronomische Seiten, Z für den Tierkreis, B für biologische Seiten, C für Kosmologie, P für pharmazeutische Seiten und S für den abschließenden Teil. Auch hier können mehrere Codes angegeben werden. Wenn diese Angabe nicht gemacht wird, werden alle Seiten unabhängig von ihrer Illustration extrahiert.

-r BEREICH
Auswahl von Seiten nach ihrer Seitennummer. Die Bereiche können sehr flexibel angegeben werden, weitere Informationen weiter unten. Wenn diese Angabe nicht gemacht wird, dann wird aus dem gesamten Manuskript extrahiert.

-a ALPHABET
Auswahl eines Transkriptions-Alphabetes für die Ausgabe. Definiert sind EVA, Frogguy, FSG, Currier und Bennett. Wenn diese Angabe nicht gemacht wird, findet EVA Verwendung.

-T
Ausgabe aller definierten Transkriptionscodes mit Angaben zum Umfang der Transkription.

-v
Anzeige der Programmversion.

Zur Angabe von Seitenbereichen

In den Angaben der Seitenbereiche mit -r sind keine Leerzeichen gestattet.

Ein Seitenbereich kann eine Einzelseite sein, etwa f10r. Diese wird direkt angegeben.

Es kann sich um Seiten im Bereich von einer Startseite bis zu einer Endseite handeln. Dann werden die beiden Seiten durch einen Doppelpunkt getrennt. Um die Seiten von f20v bis f22r zu extrahieren, muss der Bereich f20v:f22r angegeben werden.

Es kann sich um Seiten vom Anfang bis zu einer bestimmten Seite handeln. Dann wird der Endseite ein Doppelpunkt vorangestellt. Um die Seiten bis f10r zu erhalten, muss der Bereich :f10r angegeben werden. Von von einer Seite beginned bis zum Ende des Manuskriptes zu extrahieren, wird der Doppelpunkt nachgestellt.

Das f zum Beginn der Seitennummer kann weggelassen werden. Statt f2r:f4r kann auch einfach 2r:4r geschrieben werden. Es ist im Kontext dieser Option immer klar, was gemeint ist, das »f« für »Folio« ist semantisch überflüssig.

Verschiedene Seitenbereiche können mit + kombiniert werden. Wer die Seiten von 1r bis 5v und von 30r bis 45v erhalten möchte, kann die Angabe 1r:5v+30r:45v machen. Überlappungen sind dabei kein Problem, es wird stets der größtmögliche Seitenbereich ausgewählt. Dieser kann durch die weiteren Optionen gefiltert werden.

Beispiele

Zunächst ein ganz einfaches Beispiel. Um die pflanzenkundlichen Seiten in der Currier-Sprache B zu erhalten, wird das folgende Kommando benutzt:

python voynich.py -i H -l B

Dieses Kommando kann etwas abgekürzt werden, indem die Leerzeichen zwischen den Optionen und ihren Parametern weggelassen werden.

python voynich.py -iH -lB

Mit der Angabe eines zusätzlichen Seitenbereiches können etwa nur die Seiten ab f48r erhalten werden.

python voynich.py -iH -lB -r48r:

Installation für die bequeme Anwendung

Wenn man dieses Skript häufiger verwendet, wird man es wohl über seinen normalen Suchpfad für Kommandos zugänglich machen. In Unix-artigen Systemen kann es direkt ausführbar gemacht werden und sollte auf Anhieb laufen, die beim Tippen etwas lästige Dateinamenserweiterung ».py« kann einfach entfernt werden.

Kurzlizenz

Jeder Mensch, der am Voynich-Manuskript forscht, darf mit diesem Skript machen, was er will. Wenn jemand nützliche Erweiterungen programmiert, wäre es nett, wenn diese erweiterte Version ebenso frei zur Verfügung gestellt würde.

Thema: Hacking, Hilfsmittel | Kommentare (0) | Autor:

Wortzählungen nach Zeilenposition

Sonntag, 6. April 2008 18:38

Im Manuskript sind nicht alle »Wörter« an allen Positionen in der Zeile mit gleicher Häufigkeit auf. Es gibt »Wörter«, die bevorzugt am Ende einer Zeile auftreten, und es gibt »Wörter«, die bevorzugt am Anfang einer Zeile auftreten. Ich ziehe daraus den Schluss, dass jede Zeile eines Manuskriptes eine Informationseinheit ist, aber was bedeutet bei diesem Manuskript schon ein solcher Schluss…

Die Untersuchung dieser Erscheinung ist relativ einfach mit meiner Datenbank der Transkriptionen möglich. Ich habe heute ein kleines Python-Skript geschrieben, das solche Zählungen durchführt. Unsichere Leerzeichen werden dabei nicht berücksichtigt, sondern als vollwertige Worttrenner gezählt, um die Verarbeitung einfach und effizient zu gestalten.

Mein Skript steht hier zum freien Download, aber vor der Verwendung müssen die Zugangsdaten für die Datenbank im Quelltext angepasst werden. (Wenn dies nicht getan wird, steigt das Skript während der Verbindung zum Datenbankserver mit einer Fehlermeldung aus.)

Download-Link: Skript zur Zählung der Worthäufigkeiten an Positionen in der Zeile

Technische Anmerkung: Dieses Skript verwendet eine spezielle Funktion des MySQL RDBMS, so dass weitere Anpassungen nötig sein könnten, wenn ein anderes RDBMS verwendet werden soll. Von der Benutzung des CREATE TEMPORARY TABLE abgesehen, ist das SQL ANSI-konform, so dass eine solche Anpassung einfach sein sollte. Die einfachste Vorgehensweise ist die Löschung oder Kommentierung des Schlüsselwortes TEMPORARY im Quelltext.

Format der Ausgabe

Das Skript gibt eine Zeile für jedes »Wort« aus, das mehr als einmal in der gewählten Transkription auftritt und das vollständig lesbar ist. Nicht vollständig lesbare »Wörter« werden nicht berücksichtigt.

Jede Zeile besteht aus mehreren Feldern, die durch Tabulatoren getrennt sind.

Das erste Feld ist immer das »Wort« in EVA. (Wer ein anderes Alphabet für die Transkription verwendet, kann dies relativ leicht im Quelltext ändern. Die Datenbank ist dafür vorbereitet.) Darauf folgt in Klammern die Häufigkeit dieses Wortes.

Die folgenden Felder enthalten die Position, an der dieses »Wort« auftritt. Darauf folgen in Klammern die Häufigkeit, mit der dieses »Wort« gezählt wurde, ein Leerzeichen und eine Angabe der Häufigkeit in Prozent.

Wenn man den pflanzenkundlichen Teil der Transkription von Takeshi Takahashi extrahiert, sieht die Ausgabe für das »Wort« aim etwa folgendermaßen aus:

aim (2)    4 (1 50%)    8 (1 50%)

Um einen besseren Eindruck von der Ausgabe des Skriptes zu vermitteln, stelle ich hier eine derartige Aufbereitung zum Download. Diese beiden Analysen haben auf meinem recht langsamen Arbeitsrechner jeweils einige Sekunden gedauert. Ein zeitgemäßer Rechner wird die Ergebnisse beinahe unmittelbar ausgeben. Die meiste Arbeit wird übrigens innerhalb der Datenbank verrichtet, so dass es sich lohnen kann, einen schnellen Datenbankserver zu verwenden.

Download-Link: Analyse der Häufigkeiten von Wörtern an bestimmten Positionen im pflanzenkundlichen Teil in der Transkription von Takeshi Takahashi

Benutzung des Skriptes

Das Skript kann mit Optionen aufgerufen werden, die in Unix-üblicher Weise mit einem Minuszeichen eingeleitet werden. Die folgenden Optionen können verwendet werden:

  • -h
    Anzeige eines Hilfetextes für die möglichen Optionen
  • -t<code>
    Auswahl einer Transkription mit dem jeweiligen Code
  • -l<lang>
    Auswahl der Currier-Sprachen. Wenn hier AB angegeben wird, denn werden nur Seiten mit einer bekannten Currier-Sprache extrahiert, so dass auch diese Angabe sinnvoll ist
  • -i<illu>
    Auswahl von Seiten mit einem bestimmten Illustrationstyp. Es ist zum Beispiel möglich, aber wenig sinnvoll, wenn man Seiten des kosmologischen oder astrologischen Teils einbezieht, da hier kreisförmige Diagramme auftreten, in denen die Leseposition für den Zeilenanfang willkürlich gewählt ist.
  • -r
    Die Analyse ermittelt die Position vom Zeilenende aus, nicht vom Anfang der Zeile. Dies gibt einen besseren Blick auf »Wörter«, die sich am Zeilenende zu häufen scheinen; ansonsten geht diese Erscheinung wegen der unterschiedlichen Zeilenlängen etwas unter.

Erste Anmerkungen

Diese Analyse hat bislang vor allem das bestätigt, was ich vorher schon wusste. Die »Wörter« treten nicht an allen Positionen in der Zeile gleich verteilt auf. Allerdings ist mir (und anderen) jetzt eine Möglichkeit gegeben, diese Erscheinung genauer zu untersuchen. Der Blick richtet sich jetzt auch auf bislang unverdächtige »Wörter«.

Zum Beispiel tritt das »Wort« chodaly im pflanzenkundlichen Teil drei Mal auf, und zwar immer an der vorletzten Stelle einer Zeile.  Das gleiche gilt für das »Wort« chokal, dass ebenfalls dreifach und immer an der vorletzten Stelle auftritt. Die Feinstruktur dieser ungleichmäßigen Verteilung der »Wörter« auf die Zeilenpositionen ist meines Erachtens noch nicht genügend untersucht, was auch daran liegen mag, dass es bislang keine geeigneten Werkzeuge für solche Untersuchungen gab. Deshalb fielen nur die auffällig oft am Ende auftretenden »Wörter« wie daiin ins Auge, das in 55 Prozent der Fälle die letzten drei Positionen innerhalb einer Zeile einnimmt.

Interessanterweise widersprechen einige Erscheinungen meinen Erwartungen. Zum Beispiel sind generell »Wörter« mit einem Gallow zum Beginn der Zeile gehäuft, aber es gibt auch spezielle Ausnahmen. Das 18fach auftretende »Wort« okain findet sich zum Beispiel in über 50 Prozent der Fälle auf den letzten beiden Positionen einer Zeile. Das 4fach auftretende »Wort« okary findet sich ausschließlich am Zeilenende.

Ausblick und Pläne

In weiteren Untersuchungen sollte überprüft werden, ob es relativ häufige »Wörter« gibt, die sich gleichmäßig über alle Zeilenpositionen verteilen. Wenn es solche »Wörter« gibt, müssen sie eine besondere Bedeutung haben. Wenn es solche »Wörter« nicht gibt, verrät das eine weitere, überraschende Eigenschaft des verwendeten Schrift- oder Codiersystemes.

Thema: Hacking | Kommentare (1) | Autor:

Stille in der Mailingliste

Dienstag, 1. April 2008 3:18

Zur Information: Momentan scheint die internationale Voynich-Mailingliste nicht mehr zu funktionieren. Seit der letzten Mail von Berj N. Ensanian vom Samstag, den 28. März von 2:11 Uhr MEZ kommt keine Mail mehr an. Diese Unterbrechung trat inmitten recht interessanter Diskussionen auf. Die Domains voynich.ms und voynich.net sind zurzeit nicht mehr erreichbar. Jemand sollte sich um diese Angelegenheit kümmern.

Am 1. April um 20:55 Uhr schrieb Dana: Das Problem ist gelöst. Es handelte sich um einen vorübergehenden Effekt, da die Nameserver noch auf die alten Server verwiesen, so dass die Namensauflösung nicht funktionierte. Ab sofort kann die Liste wieder benutzt werden.

Mailing list silence

It seems that the international Voynich Mailing List does not work anymore. Since 3/28, 2:11 AM CET, the timestamp of the last mail written by Berj N. Ensanian, there is no mail. This occured as an interruption in very interesting discussions. The internet domains voynich.ms and voynich.net are not available at the moment. Someone should take care for this issue.

At 04/01,  8:55 PM, Dana wrote: The VMs mail interruption problem has been corrected.  It turns out that voynich.net was on Global name servers and needed to be updated to new servers.

Thema: Kommunikation | Kommentare (0) | Autor: