Jan 23, 2016

Complement and Supplement

英語の文型にSVCやSVOCがあり,このCをcomplement(補語)といいますが,数学ではいくつか異なる意味があります.

代数では,n桁の正の整数$a$に対して,$10^n-a$をcomplement(補数)といいます.例えば,3の補数は10-3=7,34の補数は100-34=66,345の補数は1000-345=655です.補数はもともとコンピューターの演算でnegative number(負の数)を表すのに考えられたもので,補数を使うと引き算を足し算ですることができ,計算回路を簡素にすることができます.その方法は,a-bを計算するのにa+(aの補数)を計算してから一番上の桁を無視するというものです.簡単な例を見てみましょう.

まず補数を求めるのに,例えば上の1000-345は,このままだと繰り下がり(一般には「隣から1を借りる」)という操作をしなければならないので,999-345を求めてから1を足します.式で表すと,$10^n-1-b+1$で補数を計算させます.従って,引き算全体を式で表すと次のようになります.$$a-b=a+(10^n-1-b+1)-10^n$$最後の$-10^n$は,「一番上の桁を無視する」ことになります.例えばa=623, b=154のときは,\begin{align}
623-154&=623+(10^3-1-154+1)-10^3\\
&=623+(999-154+1)-10^3\\
&=623+(845+1)-10^3\\
&=623+846-10^3\\
&=1469-10^3\\
&=469\\
\end{align}と計算させます.こうすると繰り下がりがなくなります.

補数の中でも特にtwo's complement(2の補数=2進数の補数)がコンピューターで利用されていますが,この場合は1を0に,0を1に変えて1を足したものが補数になります.例えば2進数0101の2の補数は,1010に1を加えて1011となります.その計算は,\begin{align}10000-1-0101+1&=1111-0101+1\\
&=1010+1\\
&=1011\end{align}となります.確かに2進数では0101+1011=10000になりますね.

集合論では,全体集合Uとその部分集合Aに対して,UからAを除いたものをAのcomplement(補集合)といい,$A^C$とか$\bar{A}$で表します.例えば,整数全体の集合で,偶数全体の集合のcomplementは奇数全体の集合になります.

幾何の用語ではcomplement (of an angle)またはcomplementary angle(余角=和が90°になる2つの角),complementary arc(余弧=和が円になる2つの弧)があります.

似たような意味の用語にsupplementがあります.幾何の用語ではsupplement (of an angle)またはsupplementary angle(補角=和が180°になる2つの角),supplementary arc(補弧=和が半円になる2つの弧),supplemental chord / supplementary chord(補弦=半円の直径の両端と弧上の点を結ぶ2つの弦)があります.

Complementもsupplementも「補う」という意味ですが,前者は「もっと良くなるように補う」,後者は「足りないので補う」というように微妙な意味の違いがあります.complementと似た単語でcomplimentがあり,こちらは賛辞とか祝辞という意味があります.発音はほとんど変わりませんが,カタカナではコンプルメントとコンプリメントと区別したほうが良さそうです.栄養補助食品はsupplementなのに,カタカナでサプリメントとよく書かれてあるので,サプルメントの方がいいと思います.

<Reference>
基本情報技術者講座
http://www.it-license.com/cardinal_number/complement.html
complementary arc
http://praveena91pm.blogspot.jp/2015/10/innovative-lessontemplate-nam-e-of_31.html
supplementary arc
http://www.mathresources.com/products/mathresource/maa/supplementary_arc.html

No comments:

Post a Comment