What base is LOG?

Gold Member
If I see a formula that contains LOG, but does not specify as base, how do I know what base they're referring to? Programming languages assume LOG means base e. My calculator assumes LOG means base 10. I've seen math teachers assume it meant base e. If its base anything other than 10 or e, the base is always specified as a subscript. We've got LN to unambiguously describe base e. Why the ambiguity with LOG?

lurflurf
Homework Helper
The symbol "log" means the logarithim to the prefered base of the person writing is, or that prefered in the dicipline of study.
In computer science base 2 is prefered though that is sometimes denoted lg.
In garbage subjects like high school, calculator, and ap calculus exams base 10 is prefered.
The base b (often b=10 or 2 or 16) is used when logarithims are being used as a computational aid, though this is seldom done anymore.
In resonable discourse the base e is used because that base is natural.
As to how to know which base is being used at the begining of a work it should be noted. One might guess based on above criteria. One might look for a give away like log(e)=1 or log'(1)=1. Sometimes it does not much matter.

nicksauce
Homework Helper
Mathematicians seem to assume base e, since they have no other need for any other base. However, engineers and astronomers sometimes like base 10.

mathman
Base 10 is most useful for doing arithmetic. Base e is preferred for mathematical analysis.

symbolipoint
Homework Helper
Gold Member
You could always just run a test to determine which base your LOG on the machine uses. Either LOG(b)=1 or LOG(b)<>1; because b^1 = b. You could just test using the different expected values for b, the base, being either 10 or 2.1828....

Unfortunately, there doesn’t seem to be any real consistency on this issue.

For software and computer languages, you pretty much have to check the documentation to be sure what base LOG is using. For example, in Excel, LOG10 is used for logarithms base 10 and LN is base e, however, in .NET programming languages, Math.Log is base e and Math.Log10 is base 10.

chroot
Staff Emeritus
Gold Member
Whenever I use a calculator or computer program I'm not familiar with, I always enter logs like this:

log(x) / log(base)

where x is the value I want the log of, and base is the base I want to use. It no longer matters what base is implied by the log() operator. Checking documentation is too time-consuming.

- Warren

Why isn't every song written in the key of C? After all, every other major scale is isomorphic to it.

From the perspective of a piano student looking at a keyboard, this is a totally legitimate question. Why would you ever write anything in a key like F#, with more sharps than there are black keys???

The reason, the student later learns, is that the world leaves little place for absolute standards. The piano isn't the only instrument. Other instruments have other considerations. Each instrument has its own preferred key. Each singer has their own limits on range. Similarly, every group who make use of logs have their own purpose. Mathematicians have a simple definition for log_e. Scientists can estimate log_10's very easily. Computer scientists like log_2, because it tells you how many bits it takes to store an integer. Even allowing for the convention that ln = log_e, whose to decide between log = log_10 and log = log_2?

Naming conventions are a cultural phenomenon. And, like any human creation, it's going to have historical facets. Yeah, there are ambiguities and inconsistencies, but that is how the world is ;-)

Last edited:
Whenever I use a calculator or computer program I'm not familiar with, I always enter logs like this:

log(x) / log(base)

where x is the value I want the log of, and base is the base I want to use. It no longer matters what base is implied by the log() operator. Checking documentation is too time-consuming.

- Warren
That's what i do too ..
and i'm used to use the base 10 for the log .. unless it's another constant i change te base
e.g.. log5 6 = 1/ log6 5

CRGreathouse