The log lattice

Log as the change in the cost of com­mu­ni­cat­ing and other pages give phys­i­cal in­ter­pre­ta­tions of what log­a­r­ithms are re­ally do­ing. Now it’s time to un­der­stand the raw nu­mer­ics. Log­a­r­ithm func­tions of­ten out­put ir­ra­tional, tran­scen­den­tal num­bers. For ex­am­ple, \(\log_2(3)\) starts with

1.5849625007211561814537389439478165087598144076924810604557526545410982277943585625222804749180882420909806624750591673437175524410609248221420839506216982994936575922385852344415825363027476853069780516875995544737266834624612364248850047581810676961316404807130823233281262445248670633898014837234235783662478390118977006466312634223363341821270106098049177472541357330110499026268818251703576994712157113638912494135752192998699040767081539505404488360

What do these long strings of digits mean? Why these num­bers, in par­tic­u­lar? We already have the tools to an­swer those ques­tions, all that re­mains is to put them to­gether into a vi­su­al­iza­tion. In Frac­tional digits, we saw why it is that \(\log_2(3)\) must be this num­ber: The cost of a 3-digit in terms of 2-digits is more than 1 and less than 2; and the cost of ten 3-digits = one \(3^{10}\)-digit in terms of 2-digits is more than 15 and less than 16, and the cost of a hun­dred 3-digits = one \(3^{100}\)-digit in terms of 2-digits is more than 158 and less than 159, and so on. The gi­ant num­ber above is tel­ling us about the en­tire se­quence of \(3^{n}\)-digit costs, for ev­ery \(n\). If we dou­ble it, we get the cost of a 9-digit in terms of 2-digits. If we triple it, we get the cost of a 27-digit in terms of 2-digits.

In fact, this num­ber also in­ter­acts cor­rectly with all the other out­puts of \(\log_2.\) \(\log_2(2)=1,\) and if we add 1 to the num­ber above, we get the cost of a 6-digit in terms of 2-digits.

That is, the out­puts of the log base 2 form a gi­gan­tic lat­tice, with an of­ten-ir­ra­tional out­put cor­re­spond­ing to each in­put. The gi­gan­tic lat­tice is set up just so, such that when­ever you start at \(x\) on the left and go to \(x \cdot y,\) the out­put you get on the right is the out­put to that cor­re­sponds to \(x\) plus the out­put that cor­re­sponds to \(y\).

The values of log2 on integers from 1 to 10

The val­ues of the log­a­r­ithm base 2 on in­te­gers from 1 to 10.

The log lat­tice is this gi­ant lat­tice as­sign­ing a spe­cific num­ber to each num­ber, such that mul­ti­ply­ing on the left cor­re­sponds to adding on the right.

A demonstration that log2(3^10) is 10 log2(3)

An illus­tra­tion of some of the con­nec­tions be­tween the logs base 2 of pow­ers of 3.

It’s an in­tri­cate lat­tice that pre­servers a huge amount of struc­ture — all the struc­ture of the num­bers, in fact, given that \(\log\) is in­vert­ible.\(\log_2(3)\) is a num­ber that is si­mul­ta­neously \(1\) less than \(\log_2(6),\) and half of \(\log_2(9)\), and a tenth of \(\log_2(3^{10}),\) and \(\log_2(3^9)\) less than \(\log_2(3^{10}).\) The value of \(\log_2(3)\) has to satisfy a mas­sive num­ber of con­straints, in or­der to be pre­cisely the num­ber such that mul­ti­pli­ca­tion on the left cor­re­sponds to ad­di­tion on the right. It’s no sur­prise, then, that it has no con­cise dec­i­mal ex­pan­sion.

A demonstration of the relationships between the log2 powers of 3

No­tice the con­nec­tions be­tween the logs base 2 of the pow­ers of 3. log 2 of 3 is a tenth of log 2 of 310 is a tenth of the log 2 of 3100, which is twice the log 2 of 350 which is twice the log 2 of 325. And, of course, the log 2 of 3101 is about 1.58 units larger than the log 2 of 3100.

In fact, the con­straints on this log lat­tice are so tight that there’s only one way to do it, up to a mul­ti­plica­tive con­stant. You can mul­ti­ply ev­ery­thing on the right side by a con­stant, and that’s the only thing you can do with­out dis­turb­ing the struc­ture. For ex­am­ple, here’s part of the log lat­tice viewed in base 3:

The base 3 log lattice

It’s ex­actly the same as the log lat­tice viewed in base 2, ex­cept that ev­ery­thing on the right has been di­vided by about 1.58 (i.e., mul­ti­plied by about 0.63).

What are log­a­r­ithms do­ing? Well, fun­da­men­tally, there is a way to trans­form num­bers such that what was once mul­ti­pli­ca­tion is now ad­di­tion. If you were go­ing to do mul­ti­pli­ca­tion to some num­bers, you can trans­form them into this lat­tice, and then do ad­di­tion, and then trans­form them back, and you’ll get the same re­sult. There’s only one way to pre­serve all that struc­ture, al­though if you want to view the struc­ture, you need to (ar­bi­trar­ily) choose some num­ber on the left to call “1” on the right. Given that choice \(b\) of trans­la­tion, the log base \(b\) taps into that in­tri­cate lat­tice.

Parents: