四分の一虚数記数法は、ドナルド・クヌースが1960年に初めて提唱した記数法である。整数(10進数の10や2進数の2など)を基数とする標準的な記数法とは異なり、四分の一虚数記数法では虚数( に相当)を基数とする。この記数法では、0、1、2、3の数字のみを使用して、あらゆる複素数を(ほぼ)一意に表すことができる。 [1] 0未満の数は通常マイナス記号で表されるが、四分の一虚数では数字列として表すことができる。たとえば、数-1は四分の一虚数記数法では「103」と表される。
四分の一虚数の分解
基底の位置システムでは、
を表す
この記数法では、
また、 であるため、累乗の級数全体を 2 つの異なる級数に分けることができ、偶数桁 (その桁の値に -4 の累乗を掛けた値に簡約される桁) については に簡約され、虚数因子が残っている桁については に簡約されます。これら 2 つの級数を加算すると、数値の合計値が得られます。
これら 2 つの級数が分離されているため、複素数の実数部と虚数部は、それぞれ -4 を底として、簡単に表すことができます。
四分の一虚数からの変換
数字列を四分の一虚数系から十進数系に変換するには、位取り記数法の標準公式を使用することができます。これは、基数bの数字列を次の式を使用して十進数に変換できること を示しています。
四分の一虚数系の場合、.
さらに、形式の文字列に対して、以下の式は、基数で指定された文字列の長さに対して使用できます。
例
文字列を10 進数に変換するには、上記の数式を入力します。
もう1つの長い例: 10進数では
四分の一虚数に変換する
10進数を4分の1虚数系の数に変換することも可能です。すべての複素数( a + biの形式のすべての数)には4分の1虚数表現があります。ほとんどの数には一意の4分の1虚数表現がありますが、1には10進表記で1 = 0. 9という2つの表現があるのと同じように、0. 0001 2 i = 1/15、番号1/5 は2 つの 4 分の 1 虚数表現 0. 0003 2 i = 3· を持ちます。1/15 = 1/5 = 1 + 3· –4/15 = 1. 0300 2 i .
任意の複素数を 4 分の 1 虚数に変換するには、その数を実数部と虚数部に分割し、それぞれを別々に変換してから、数字を交互に並べて結果を加算するだけで十分です。たとえば、 −1+4 i は−1 プラス 4 iに等しいため、 −1+4 iの 4 分の 1 虚数表現は、 −1 の 4 分の 1 虚数表現 (つまり、 103) と 4 iの 4 分の 1 虚数表現(つまり、 20) を加算したものになり、最終結果は −1+4 i = 123 2 iになります。
虚数部の 4 分の 1 虚数表現を求めるには、その成分に 2 iを掛けて実数を得れば十分です。次にその実数の 4 分の 1 虚数表現を求め、最後に表現を 1 桁右にシフトします (つまり 2 iで割ります)。たとえば、 6 iの 4 分の 1 虚数表現は、 6 i × 2 i = −12 (300 2 iと表される)を掛けて計算し、次に 1 桁右にシフトして、 6 i = 30 2 iとなります。
任意の実数の 4 分の 1 虚数表現を求めるには、以下に示すように連立方程式を解くことで手動で行うことができますが、負の基数の記事に示すように、実数と虚数のどちらに対してもより高速な方法があります。
例: 実数
整数の例として、10 進数 7 (または10 進法の基数は 10なので7 10 ) の 4 分の 1 虚数を見つけてみましょう。特定の 10 進数に対して数字列の長さを正確に予測するのは難しいため、かなり長い列を想定するのが安全です。この場合は、6 桁の列を選択できます。文字列のサイズの初期推定が最終的に不十分であることが判明した場合は、より大きな文字列を使用できます。
表現を見つけるには、まず一般式を書き、項をグループ化します。
7 は実数なので、d 1、d 3、d 5はゼロであると結論付けることができます。次に、係数d 0、d 2、 d 4の値を見つける必要があります。 d 0 − 4 d 2 + 16 d 4 = 7 であり、4分の1虚数系の性質上、係数は 0、1、2、または 3 のみであるため、係数の値は見つけることができます。 考えられる構成は、 d 0 = 3、 d 2 = 3、d 4 = 1 です。 この構成により、 7 10の結果の数字列が得られます。
例: 虚数
純虚数整数∈ i Zの 4 分の 1 虚数表現を求めることは、実数について上で説明した方法と似ています。たとえば、 6 iの表現を求めるには、一般的な公式を使用できます。この場合、実部のすべての係数は 0 でなければならず、複素数は 6 にする必要があります。ただし、 6 iの場合、式を見ると、d 1 = 3 で他のすべての係数が 0 であれば、 6 iの目的の文字列が得られることが簡単にわかります。つまり、次の ようになります。
別の変換方法
実数の場合、4 分の 1 虚数表現は負の 4 進数 (基数 -4) と同じです。複素数x + iy は、 xとy /2 を別々に負の 4 進数に変換することで 4 分の 1 虚数に変換できます。xとy の両方が有限の2 進分数である場合、反復ユークリッド除算を使用した次のアルゴリズムを使用できます。
例えば: 35+23i=121003.2 2i
35 23i/2i=11.5 11=12−0.5
35÷(−4)=−8、余り3 12/(−4)=−3、余り0 (−0.5)×(−4)=2
−8÷(−4)= 2、余り0 −3/(−4)= 1、余り1
2÷(−4)= 0、余り2 1/(−4)= 0、余り1
2 0 0 0 3 + 1 0 1 0 0 0 + 0.2 = 121003.2
32i+16×2−8i−4×0+2i×0+1×3−2×i/2=35+23i
基数点「.」
10 進法の基点は通常、数値の整数部と小数部を区切る. (ドット) です。1/4 虚数法でも基点を使用できます。数字列の場合、基点によってbの非負の累乗と負の累乗が区切られます。基点を使用すると、一般的な式は次のようになります。
または
例
複素数単位iの 4 分の 1 虚数表現を求める場合、基数点のない式では不十分です。したがって、上記の式を使用する必要があります。したがって、
特定の係数d kの場合、実部はゼロになる必要があるため、d 4 = d 2 = d 0 = d −2 = 0 となります。虚部については、d 5 = d 3 = d −3 = 0かつd 1 = 1かつd −1 = 2 の場合、数字列を見つけることができます。数字列に上記の係数を使用すると、結果は次のようになります。
足し算と引き算
四分の一虚数法では、数を加算したり減算したりすることができます。これを行う際には、覚えておくべき 2 つの基本ルールがあります。
- 数が 3 を超えるたびに、 4 を減算し、左に 2 桁「繰り上げ」ます。
- 数字が 0 を下回るたびに、 4を加算し、左に 2 桁「繰り上げ」て +1 します。
または、簡単に言うと、「 4を足すと繰り上がり+1 。4 を引くと繰り上がり-1」です。これは、現在の列の「繰り上がり」では左隣の列に 1 を足す必要があり、「繰り下がり」では減算が必要な通常の長い加算とは逆です。1/4 虚数演算では、「繰り上がり」では1 つ前の列から減算し、「繰り下がり」ではを加算します。
例: 追加
以下に、四分の一虚数法による加算の例を 2 つ示します。
1 − 2i 1031 1 − 2i 1031 ------ + <=> ---- + 2 − 4i 1022 3 − 4i 1023 1 − 8i 1001 ------ + <=> ----- + 4 −12i 12320
最初の例では、最初の列 (「1 の桁」) の 2 つの 1 を加算して 2 になります。次に、2 番目の列 (「2の桁」) の 2 つの 3 を加算して 6 になります。6 は 3 より大きいので、4 を減算して (2 番目の列の結果として 2 になります)、4 番目の列に繰り上がり -1 を入れます。3 番目の列の 0 を加算すると 0 になります。最後に、4 番目の列の 2 つの 1 と繰り上がり -1 を加算すると 1 になります。
2 番目の例では、まず 3+1 を加算して 4 になります。4 は 3 より大きいので、4 を減算して (0 になります)、3 番目の列 (「-4s 列」) に繰り上がり -1 を入れます。次に、2 番目の列に 2+0 を加算して 2 になります。3 番目の列では、繰り上がりがあるため 0+0+(-1) になります。-1 は 0 より小さいので、4 を加算して (3 番目の列の結果は 3 になります)、5 番目の列に +1 を「借り入れ」ます。4 番目の列では、1+1 は 2 になり、5 番目の列の繰り上がりにより 1 になり、結果は になります。
例: 減算
減算は、上で説明した同じ 2 つのルールを使用する点で加算に似ています。以下に例を示します。
− 2 − 8i 1102
1 − 6i 1011
------- <=> -----
− 3 − 2i 1131
この例では、から減算する必要があります。右端の桁は 2−1 = 1 です。右から 2 番目の桁は -1 になるので、4 を足して 3 になり、2 桁左に繰り上がり +1 します。右から 3 番目の桁は 1−0 = 1 です。すると、左端の桁は 1−1 に繰り上がりの 1 を足して 1 になります。これで最終的な答えは になります。
乗算
4 分の 1 虚数法の長乗算にも、上記の 2 つの規則が使用されます。数値を乗算する場合、最初の文字列を 2 番目の文字列の各桁で連続的に乗算し、結果の文字列を加算します。乗算ごとに、2 番目の文字列の 1 つの桁が最初の文字列で乗算されます。乗算は 2 番目の文字列の右端の桁から始まり、1 桁ずつ左に移動し、各桁を最初の文字列で乗算します。次に、結果の部分積を加算しますが、各部分は 1 桁ずつ左にシフトされます。例:
11201
20121 ×
---------------
11201 ←––– 1 × 11201
12002 ←––– 2 × 11201
11201 ←––– 1 × 11201
00000 ←––– 0 × 11201
12002 + ←––– 2 × 11201
---------------
120231321
これは の乗算に相当します。
表形式の変換
以下は、いくつかの 10 進数と複素数、およびそれらの 4 分の 1 虚数対応表です。
例
以下に、10 進数から 4 分の 1 虚数への変換の他の例をいくつか示します。
Zオーダー曲線
表現
任意の複素数の は、単射写像を 生じる。
適切なものをいくつか用意してください。ここではベースとして取ることはできません。
この画像は、 Z 次曲線と同様に線形に順序付けできるカントール集合です。この画像は不連続であるため、連続していません。
参照
参考文献
さらに読む
- Knuth, Donald Ervin . 「位置数システム」.コンピュータプログラミングの芸術. 第 2 巻 (第 3 版). Addison-Wesley . p. 205.
- ウォーレン・ジュニア、ヘンリー・S. (2013) [2002]. Hacker's Delight (第2版). Addison Wesley - Pearson Education, Inc. p. 309. ISBN 978-0-321-84268-80-321-84268-5。
