VMS lang dna variations
Dna language graphs on Voynich Manuscript text and the variations on that text
(The Pseudo code to generate the language dna can be found on the bottom of this page)
These graphs tell you everything about the positions of the letters in the text of the VMS in one image.
ABCmidXYZ represents the positions of letters in a word. So A=begin letter. Z=end letter. If you want to read more about the development process, that is written here.
————–
Voynich Currier A and B no small texts (nst)
You can see that the labels follow almost the same rules as the text.
The main differences are:
- ‘a’ occurs proportionally more in the “label text”
- the ‘q’ (only posA) occurs much lesser in the “label text”
- the ‘h’ occurs much lesser in the “label text”
- the ‘t’ on posB is higher in the “label text”
Every o=null (removed):
Sometimes it seems the total number of o and e has been changed: this is mostly because we only test the words that have length 2, or 3 for specific positions such as C, M, X, Y. By the removal of the gallows many small words exist that are discarded in the process. Look at the pseudo code below for details.
If only the gallows define the words, the words become too large.
F.e.
.o.oysholdairc.hoaldarchey.odyo.oaiinshoshy
cho.ycholc.holsholo.aldolcheychodololchyc.hy
qoolchoeeecheoldolc.heyy.oldoldoloy.oldolchody
o.olshol.ol.echychol.ycholc.holchodycholdaiin
The first words of all 3905 paragraphs do not always contain a gallow character on the first or second character. In fact, only 1368 paragraphs have in the first word at the 1st of 2nd letter a gallow character:
Looking at the first paragraph of a page only.
In the graph below are the first words of the first paragraphs of the 193 pages that have a gallow on the 1st or 2nd character:
Pseudocode language DNA -------------------------------------------- Do thisline = total text line to be read '--line length stuff thislength = Len(thisline) '---get words from this line Do 'find dot as delimiter of words hier = InStr(1, thisline, delimit) If hier <> 0 Then rechts = Mid(thisline, hier + 1, Len(thisline) - hier) links = Mid(thisline, 1, hier - 1) Else links = thisline rechts = "" End If thisword = links thisline = rechts '-- analyze stuff thislength = Len(thisword) '-------- ' storage of ABCmXYZ only if length>1 ' pos Y => store if pos=length-1 ' pos X => store if pos=length-2 if length >2 ' pos M=> store from (length+1)/2 till length-3 ' ABC mid XYZ ' de de e ' des des s ' destinat des ti nat ' get letters from this word and their positions If thislength > 1 Then ' ABC mid XYZ ' 123 4 567 ' store pos A thisletter = Mid(thisword, 1, 1) thisascw = AscW(thisletter) column1(thisascw, 1) = column1(thisascw, 1) + 1 ' store pos B thisletter = Mid(thisword, 2, 1) thisascw = AscW(thisletter) column1(thisascw, 2) = column1(thisascw, 2) + 1 If thislength > 3 Then ' store pos C thisletter = Mid(thisword, 3, 1) thisascw = AscW(thisletter) column1(thisascw, 3) = column1(thisascw, 3) + 1 ' store pos X thisletter = Mid(thisword, thislength - 2, 1) thisascw = AscW(thisletter) column1(thisascw, 5) = column1(thisascw, 5) + 1 End If If thislength > 2 Then ' store pos Y thisletter = Mid(thisword, thislength - 1, 1) thisascw = AscW(thisletter) column1(thisascw, 6) = column1(thisascw, 6) + 1 ' store pos Z thisletter = Mid(thisword, thislength, 1) thisascw = AscW(thisletter) column1(thisascw, 7) = column1(thisascw, 7) + 1 ' store pos Mid If thislength > 6 Then If (thislength And 1) = 0 Then middenstart = thislength / 2 Else middenstart = (thislength + 1) / 2 End If 'store all mid letters For y = middenstart To (thislength - 3) thisletter = Mid(thisword, y, 1) thisascw = AscW(thisletter) column1(thisascw, 4) = column1(thisascw, 4) + 1 Next y End If 'mid End If 'length >2 End If 'length>1 lettercounter = lettercounter + thislength '--end length Loop Until Len(thisline) = 0 '----end words Loop Until end of lines '----> paste output cells results rowdisplay =0 For x = 1 To UBound(column1) ' only show ascwii values which have a count=exist totalnumber = 0 For y = 1 To 7 totalnumber = totalnumber + column1(x, y) Next If (totalnumber > 0) Then print (rowdisplay, outputcolumn) : ChrW(x) For y = 1 To 7 If (column1(x, y) > 0) Then print (rowdisplay, outputcolumn + y) : column1(x, y) End If Next 'total number for this letter print (rowdisplay, outputcolumn1 + y) : totalnumber rowdisplay = rowdisplay + 1 End If Next x rowdisplay = rowdisplay + 1 print processed wordcounter words --------------------------------------------