상용로그

1 개요

Common logarithm. 자연수 10을 밑으로 한 로그. log10x를 말한다. 인류가 10진법을 기본으로 하여 발전해왔기 때문에 밑이 다른 로그들과 구분하여 사용한다. 교과과정에서는 사용상 편의를 위해 밑을 생략하고 logx와 같이 나타낸다. 그리고 로그의 단원에서 한 부분으로 특별취급되고 있다. 만약에, 인류가 12진법, 20진법등을 사용한다면, 12나 20을 밑으로 한 로그가 상용로그가 될 것이다.
상용로그는 우리가 10진법을 쓰기 때문에 여러 손계산을 하는데 편한 점이 있다. 예를 들면 14417×56723을 계산하고 싶을 때 그냥 계산하려면 머리 아프지만 먼저 이것의 상용로그인 log1014417+log1056723을 상용로그표를 이용해서 계산하고 이제 그 구한 값이 얼마의 상용로그인지 다시 상용로그표에서 찾으면 끝. 이러면 여러번 곱하고 더해야 하는 곱셈을 더 간단한 덧셈과 상용로그표 찾기로 바꿀 수 있다. 이렇게 편리하게 계산할 수 있기에 옛날에는 이런 방법으로 여러가지 계산을 했다. 괜히 로그로 천문학자의 수명이 배나 늘어났다고 말하는 게 아니다.[1][2] 그렇기 때문에 상용로그는 옛날에는 log만 써도 log10으로 쳐주는 등 여러가지 면에서 특별취급을 받았으나 결국 컴퓨터의 막강한 계산력 앞에서 무릎을 꿇고 지금은 일부 분야 아니면 안 쓰이게 되어버리면서 자연스럽게 logx라는 표기도 자연로그한테 빼앗겨버리고 상용로그는 대부분의 분야에서 log10으로 쓰이거나 아예 logx/log10으로 쓰인다…….[3]덕분에 자연로그의 표기는 예전에 상용로그하고 구분하기 위해서 썼던 lnx나 상용로그한테서 빼앗은 logx 둘 중 아무거나 써도 되게 되었고.

2 교과상에서의 상용로그

현행 교육과정인 2009 개정 교육과정에서는 고등학교 1학년 2학기때 사용하는 수학 II의 4단원 "지수로그" 부분에서 다룬다. 상용로그표는 교과서나 참고서 맨 뒤에 실려있다. 지표와 가수는 교육과정에서 완전히 삭제되었으며, 이에 따라 대학수학능력시험에서는 볼 일이 없게 되었다.

대부분 소수점 4자리수 (만분의 1 자리까지)까지 표기한다. 일부 참고서는 비례부분도 나와있어서, 로그표에서는 없는 값도 비례식이나 방정식등을 이용하여 구할 수 있다. 현실적으로는, 고교과정에선 상용로그표를 알려주고, 그 이후에는 계산기를 두들기면 되기 때문에 굳이 암기할 필요 없다. 2~9까지 자연수의 상용로그 값을 외워두면[4] 특정한 로그값을 봤을 때 대충 첫째자리 숫자가 어느정도 되나 가늠하는 용도로 써먹을 수 있지만, 그 이상은 완벽한 뻘짓. 어? 그럼 삼각비는??

3 상용로그의 값은 어느정도 일까

1부터 10까지의 상용로그 값을 32자리수로 표현하면 다음과 같다.
즉, 로그 값의 1(溝)분의 1자리까지 표현한 것이다.

log1 = 0
log2 = 0.3010 2999 5663 9811 9521 3738 8947 2449
log3 = 0.4771 2125 4719 6624 3729 5027 9032 5512
log4 = 0.6020 5999 1327 9623 9042 7477 7894 4899
log5 = 0.6989 7000 4336 0188 0478 6261 1052 7551
log6 = 0.7781 5125 0383 6436 3250 8766 7979 7961
log7 = 0.8450 9804 0014 2568 3071 2216 2585 9264
log8 = 0.9030 8998 6991 9435 8564 1216 6841 7348
log9 = 0.9542 4250 9439 3248 7459 0055 8065 1023
log10 = 1

추가로 loge = 0.4342 9448 1903 2518 2765 1128 9189 1661
logπ = 0.4971 4987 2694 1338 5435 1268 2882 9090

근데 log2, log3, log7의 값만 알면 1부터 10까지 자연수들의 상용로그 값은 다 구할 수 있잖아[5] 사실 소수 (prime number)들의 상용로그 값만 알면 모든 자연수의 상용로그 값을 구할 수 있다.[6]

4 상용로그의 성질

logx = a+n (a는 정수, n은 0≤n<1인 실수) 에서, a를 지표(characteristic), n을 가수(mantissa)라고 한다.[7][8] 지수 가표
logx, logy 이렇게 서로 다른(x≠y) 두 수가 있다고 치고, 서로 비교를 할때,

4.1 logx와 logy가 지표가 같고, 가수가 다르다면

지표는 같고 가수가 다르다면 x와 y는 같은 자리수의 숫자이다.
例) log875 ≠ log256 이고, 3=log1000, 2=log100이므로 2<log875<3 , 2<log256<3
∴ log875와 log256의 지표는 2로 같다.

4.2 logx와 logy의 지표가 같지 않고, 가수가 같다면

이 경우, logx 와 logy의 자리수는 다르지만 숫자의 배열은 같다.
例) logx = 3+log1.909, logy = 1+log1.909 로 표현하면, 로그의 성질에 의해, logx=log103 +log1.909=log 1.909×103 =log1909, logy=log101 +log1.909=log1.909×101 =log19.09
∴x=1909, y=19.09

4.3 logx와 logy의 지표와 가수가 서로 같다면

logx=n+a이고, logy=m+b라 할때, n=m이고, a=b이면, n+a=m+b이므로, logx=logy. ∴x=y
例) log909 = 2 + log9.09, logy=a+n (a는 지표, n은 1미만의 양의 소수)라 하면, 2 = a, n = log9.09 ⇔ logy = 2 + log9.09 ⇔ ∴y = 909

5 상용로그의 응용법

여기서 열거한 상용로그의 값을 잘 알고 있고, 로그의 법칙을 잘 숙지하고 있다면, 이를 이용한 합성수의 로그값을 구할 수 있음은 물론, 그 합성수를 밑으로 하는 로그의 값을 구할 수 있다. 그러나, 위의 열거한 숫자들로 이루어진 합성수 이외는 만들 수가 없다. 왜냐하면, 1~10까지의 소수는 2,3,5,7이나, 11이상의 소수는 다시 컴퓨터의 힘을 빌려서 나타내야 되고, 결정적인 것은, 서로 다른 두 소수 a,b의 곱셈과 나눗셈으로는 a,b와 또다른 소수 c를 나타낼 수 없기 때문이다.

게임 프로그래밍에서도 요긴하게 쓸 수 있는데, 대미지 숫자 표기 시 이미지 좌표 계산할 때 쓰인다. 대미지값에 상용로그를 씌워 몇 자리인지 간단하게 나오기 때문. 물론 대미지가 0이 나오는 상황[9]인 경우를 대비해서 따로 조건문을 만들어 둬야 하는 것은 기본.
  1. 로그가 나오기 전에는 먼저 곱하는 두 수를 모두 1 이하가 되도록 적당히 10의 음의 정수 제곱을 곱하고 (14417×56723=10^-4^ ×10^-4^ ×0.14417×0.56723)이렇게 만든 1 이하의 두 수에 해당되는 삼각비를 구한다. (0.14417=sin8.289˚, 0.56723=sin34.56˚)그리고 삼각함수의 곱을 합으로 고치는 공식으로 합으로 고쳐서 계산해주고 (sin8.289˚×sin34.56˚=-1/2(cos42.849˚-cos26.271˚)) 처음에 곱했던 10의 거듭제곱으로 나눠서…… 구했다. 그래프를 그려보면 알겠지만 삼각함수가 로그함수보다 근사시키기 어려운 고로 정확한 값을 얻기 힘들다.
  2. 로그함수의 시초는 네이피어가 계산을 좀 더 편리하게 하려고 만든 자연로그였다. 상용로그는 브리그스가 자연로그를 계산하기 좀 더 편하게 변형한 거
  3. 계산기처럼 지금도 상용로그를 logx라고 쓰는 분야도 있다.
  4. 그리고 고등학교 과정에서 토나오도록 로그 계산을 하다보면 7을 제외한 모든 숫자의 상용로그값을 대충 외우게 된다. 2와 3의 로그값을 알면 7을 제외한 모든 10이하 자연수의 상용로그 값을 계산할 수 있는데, log2와 log3은 정말 지긋지긋하게 나오기 때문.
  5. log5는 로그의 성질에 따라 log2+log5=log(2×5)=log10=1이므로 log2만 알면 된다. 마찬가지로 log4=log2+log2, log6=log2+log3, log8=log2+log2+log2, log9=log3+log3또한 성립한다.
  6. 산술의 기본정리(Fundamental theorem of arithmetic)에 따라 1을 제외한 모든 자연수 n은 적당한 소수 p1,……,pk하고 자연수 e1,……,ek가 있어서 n=p1^e1^ ……pk^ek^ 꼴로 소인수분해 할 수 있고, 그러므로 logn=e1logp1+e2logp2+...+eklogpk이기 때문. 똑같은 방법으로 n번째 소수를 qn이라고 하면 qn+1이 나오기 전까지의 자연수들의 상용로그를 q1(=2)부터 qn까지의 소수들로 구할 수 있다.
  7. 보면 알겠지만 바닥함수(고등학교까지는 가우스함수라고 배우는 그것)에 logx를 넣으면 지표가 나온다. 가수는 (logx)-a로 계산하면 되고.
  8. 현재 고1 교육과정에서는 a를 정수부분, n을 소수부분이라고 쉬운 단어로 가르친다.
  9. 당연하지만 0이 아닌 수를 제곱해서 0이 나오는 것은 불가능하기 때문에 log 0은 정의되지 않는다.