궁극의 이항연산(Ultimate binary operation)

      Comments Off on 궁극의 이항연산(Ultimate binary operation)

$\newcommand{\ultimate}{\, \rlap{\rlap{\times}{\div}}{+} \,}$초등학교 시절부터 배워온 사칙연산이란 산수의 기본이 되는 덧셈(addition), 뺄셈(subtraction), 곱셈(multiplication), 나눗셈(division)의 네 가지 연산을 일컫는다. 이 네 가지 연산은 각각 $+$, $-$, $\times$, $\div$로 나타낼 수 있다. 또한 이 사칙연산을 기본으로 하여 또 다른 이항연산을 정의할 수도 있다. 예를 들어,

\[ a \circ b := 2 \times (a + b) \]

와 같이 정의하는 식이다. 이제 "사칙연산을 수행하기 위해 정말 네 개의 사칙연산 $+$, $-$, $\times$, $\div$가 반드시 필요한지(?)" 다시 한번 생각해보자. 얼핏 보아서는 이 질문이 이상하게 느껴질 수도 있지만, 만약 사칙연산 중 하나의 연산을 다른 연산들을 이용하여 표현할 수 있으면 그 연산은 불필요한 연산이라 할 수도 있다. 예를 들어 $+$ 연산의 경우 $-$ 연산을 이용하여 아래와 같이 표현이 가능하다.

\[ a + b = a - (0 - b). \]

따라서 사실은 $-$, $\times$, $\div$의 세 개의 연산만으로도 기본적인 사칙연산이 가능하다! 만약에 어떤 이항연산 $\ultimate$가 존재하여 사칙연산을 모두 표현할 수 있다면 이 이항연산 $\ultimate$는 마땅히 궁극의 이항연산(ultimate binary operation)이라 불릴법도 하다. 이번 글에서는 정말 그러한 $\ultimate$가 존재 하는지에 대하여 알아보고자 한다.

 

궁극의 이항연산(ultimate binary operation)

먼저 궁극의 이항연산 $\ultimate$를 정의하기 전에, 아래의 문제에 대해서 생각해 보자.

 

정리 1.

뺄셈과 역수(reciprocal) 두개의 연산만 있으면 사칙연산을 모두 표현할 수 있다.

 

증명. $a,\,b$가 임의의 실수라 하자. 먼저 위에서 살펴 보았듯이 $a$와 $b$의 덧셈은 뺄셈을 이용하여 아래와 같이 표현이 가능하다.

\[ a + b = a - (0 - b). \]

이제 $a$와 $b$의 곱셈을 뺄셈과 역수 두 연산을 이용하여 표현하는 방법에 대해 생각해 보자. 먼저 $a=0$이라 하면 $a \times b = 0 \times b = 0$이고 $a=1$이라 하면 $a \times b = 1 \times b = b$를 얻는다. 물론 이 사실은 $b$에 대해서도 성립하므로, $a$와 $b$ 모두 $0$ 또는 $1$이 아닌 경우만 고려해주면 충분하다. 이제

\[ \frac{1}{a - a^2} = \frac{1}{a(1-a)} = \frac{1}{1 - a} + \frac{1}{a} = \frac{1}{1 - a} - \frac{1}{0 - a} \]

의 식이 성립하므로, 위 식의 양변에 역수를 취해주면 $a - a^2$을 얻을 수 있고, 따라서 $a^2$이 뺄셈과 역수만으로 표현이 가능함을 알 수 있다. 따라서 $a=b$인 경우는 뺄셈과 역수만으로 표현이 가능하다. 이제 $a \neq b$라 가정하자. 그러면 아래 항등식

\[ -2 \times (a \times b) = (a - b)^2 - a^2 - b^2 \]

으로부터 $-2 \times (a \times b)$를 구할 수 있다. 이제 마지막으로 $a \times b$를 구하기 위해서는 $-2$로 나누는 연산을 뺄셈과 역수만을 이용하여 표현할 수 있어야 하는데, 이는 아래와 같은 방법으로 가능하다. 먼저 $c=-2 \times (a \times b)$라 하자. 그러면 $c \neq 0$이므로

\[ \frac{c}{-2} = \frac{1}{\frac{-2}{c}} = \frac{1}{\left( 0 - \frac{1}{c} \right) - \frac{1}{c}} \]

이 되어 $a \times b$를 구할 수 있게 된다.

마지막으로 $a$와 $b$의 나눗셈은

\[ a \div b = a \times \frac{1}{b} \]

이고 우변의 곱셈이 뺄셈과 역수만으로 표현이 가능하므로, 결국 모든 사칙연산은 뺄셈과 역수 두개의 연산만으로 표현이 가능하다..

 

이제 위 사실을 바탕으로 궁극의 이항연산을 정의해보자. 임의의 두 실수 $a,\,b$에 대하여 $a$와 $b$의 궁극의 이항연산을 아래와 같이 정의한다.

\[ a \ultimate b := \begin{cases} \; {\displaystyle \frac{1}{a - b}} \qquad & \text{if} \quad a \neq b \\ \;\quad 0 & \text{if} \quad a = b \end{cases} \]

그러면 다음의 사실이 성립한다.

 

정리 2.

위와 같이 정의된 궁극의 이항연산으로 사칙연산을 모두 표현할 수 있다.

 

증명. 정리 1에 의해 $\ultimate$이 뺄셈과 역수 두 연산을 표현할 수 있음을 보이면 충분하다. 먼저 임의의 실수 $a \neq 0$에 대하여,

\[ \frac{1}{a} = \frac{1}{a - 0} = a \ultimate 0 \]

으로 표현할 수 있으므로 역수를 표현할 수 있다. 또한 임의의 실수 $a, b$에 대하여, $a = b$인 경우 $a - b = 0 = a \ultimate b$로 나타낼 수 있고, $a \neq b$인 경우,

\[ a - b = \frac{1}{\frac{1}{a - b}} = \frac{1}{a \ultimate b} = (a \ultimate b) \ultimate 0 \]

와 같이 뺄셈을 표현할 수 있다. 따라서 궁극의 이항연산으로 사칙연산을 모두 표현할 수 있다..

 

참고로 궁극의 이항연산 $\ultimate$로 사칙연산을 표현하는 방법을 다시 한번 정리해 보면 아래와 같다.

\begin{align*} a + b &= (a \ultimate ((0 \ultimate b) \ultimate 0)) \ultimate 0 \\[10pt] a - b &= (a \ultimate b) \ultimate 0 \\[10pt] a \times b &= \begin{aligned}[t] ((((0 &\ultimate (c \ultimate 0)) \ultimate 0) \ultimate (c \ultimate 0)) \ultimate 0) \ultimate 0 \;\; \text{where}\\[5pt] c &= (((d \ultimate e) \ultimate 0) \ultimate f) \ultimate 0 \\[5pt] d &= (0 \ultimate (((((1 \ultimate ((a \ultimate b) \ultimate 0)) \ultimate (0 \ultimate ((a \ultimate b) \ultimate 0))) \ultimate 0) \ultimate 0) \ultimate ((a \ultimate b) \ultimate 0)) \ultimate 0) \ultimate 0 \\[5pt] e &= (0 \ultimate (((((1 \ultimate a) \ultimate (0 \ultimate a)) \ultimate 0) \ultimate 0) \ultimate a) \ultimate 0) \ultimate 0 \\[5pt] f &= (0 \ultimate (((((1 \ultimate b) \ultimate (0 \ultimate b)) \ultimate 0) \ultimate 0) \ultimate b) \ultimate 0) \ultimate 0 \end{aligned} \\[10pt] a \div b &= \begin{aligned}[t] ((((0 &\ultimate (c \ultimate 0)) \ultimate 0) \ultimate (c \ultimate 0)) \ultimate 0) \ultimate 0 \;\; \text{where}\\[5pt] c &= (((d \ultimate e) \ultimate 0) \ultimate f) \ultimate 0 \\[5pt] d &= (0 \ultimate (((((1 \ultimate ((a \ultimate (b \ultimate 0)) \ultimate 0)) \ultimate (0 \ultimate ((a \ultimate (b \ultimate 0)) \ultimate 0))) \ultimate 0) \ultimate 0) \ultimate ((a \ultimate (b \ultimate 0)) \ultimate 0)) \ultimate 0) \ultimate 0 \\[5pt] e &= (0 \ultimate (((((1 \ultimate a) \ultimate (0 \ultimate a)) \ultimate 0) \ultimate 0) \ultimate a) \ultimate 0) \ultimate 0 \\[5pt] f &= (0 \ultimate (((((1 \ultimate (b \ultimate 0)) \ultimate (0 \ultimate (b \ultimate 0))) \ultimate 0) \ultimate 0) \ultimate (b \ultimate 0)) \ultimate 0) \ultimate 0 \end{aligned} \end{align*}

이정도면 이항연산 $\ultimate$가 '궁극'으로 불릴만한 또 다른 이유를 찾은 것 같기도 하다.