2020-11-19

素数圧縮

まず素数識別子を振る。

そして素数以外の数は、素数の積で表現する。

これだけ。

1子

2丑

3寅

4丑丑

5卯

6丑寅

7辰

8丑丑丑

9寅寅

10丑卯

11

12丑卯寅

13馬

14丑寅

15寅卯

無限進数にはなってしまうが、巨大な数を表現するにはこちらの方が効率が良い。

ビット列にこれを適用すればデータ圧縮できる。

計算力が凄まじい宇宙人はこの方法で数を表現しているかもしれない。

  • 扱う素数の範囲にもよるけど識別子も無限に必要で効率悪くね?

    • 追加ルール。 巨大な識別子に関しては、もう一段階の素数圧縮をかけて「’(ダッシュ)」を付ける。 13は馬だけど、これは7番目の素数なので「辰’」と表現できる。 辰は5番目の素数だ...

      • さらに追加ルール。 圧縮するデータが運悪くとても巨大な素数になった場合は、任意の補正値を加えていい。 例えば「※1を足す」や「※2を足す」など。 この補正値は暗号データに添...

      • 連長圧縮のほうがよくね?

  • 情報量の概念を勉強したほうが良い。 この例では符号が無限bitの情報量を持っているイメージなのかな? そうなのであれば、その無限bitの情報量を持つ符号をそのまま整数を表すのに使...

記事への反応(ブックマークコメント)

ログイン ユーザー登録
ようこそ ゲスト さん