fc2ブログ

情報集合論(仮名) 情報集合の情報量

 これは自分用のメモです。集合論の濃度と、情報集合論の濃度の定義が違うのにもかかわらず、同じ名前では不都合があります。そこれで、新しい名前を考えました。名前は情報量がふさわしいと思います。意味はその名の通りその情報集合が表現できるインスタンスの数量です。名前だけでは後で読んでもわからないので、濃度の定義と情報量の定義を纏めます。
 集合論における濃度の定義は・・・

集合Aからみて集合Bと1対1の対応がある
  1. 同じものを二度数えない( Aのどの元もBの二つの異なった元と対応している )
  2. 数え漏れをしない( Aのどの元をとっても、それに対応しているBの元がある )

この定義によると、自然数集合と奇数集合の濃度は同じです。これが情報技術としては論理的整合性がなく不便です。確かに有限区間内では関数を一つ用意すると、同じビット数で表現できますが、それだと無限と有限に距離がありすぎますし、変換関数が必要であるという情報が反映されていません。変換関数を用意しないと、整数と自然数では1ビットの差が生じます。たかが1ビットですが、情報技術者としては見逃せません。それで、既存の濃度の定義を拡張します。

集合Aと集合B双方の視点から見て1対1の対応がある
  1. 集合Aと集合Bの対応方法はフィルターである点に注意し、
    双方の集合を追加する要素で構成される区間を考える。
  2. 通常の濃度の定義から集合Aから集合Bの1対1対応を考える。
    ※片方の対応が成り立つ場合、適切な変換関数があれば無理やり有限区間内に押し込められる。
  3. 集合Bから集合Aの1対1対応を考える。
  4. フィルターを通った要素の数をもとに、代数的に情報量を決定する。

例、自然数集合Nと整数集合Zの情報量を計算する。
Nは0以外の数値を通す。従って、0から∞の数を生成する関数ΓをもとにΓ - 1 の情報量を持つ。
Zはマイナス符号を持つ。マイナス符号は2個のパターンを生み出すから 2Γとなる。ただし、-0を認めない場合 2Γ - 1となる。
妥当性を確かめるために、区間 -10 から +10 の要素を通してみる。
Nは10個の要素を通し、Zは21個の要素を通す。従って、情報量が妥当だとわかる。

このΓ関数の名前はどうしようかな?名前がないと不自然だから、源数情報集合(げんすう)としておこう。もしかすると、「数え数」(かぞえすう)とした方がいいかもしれない。源数集合をGとすると、自然数集合Nの定義は{ x | x ∊ G ただし x <> 0 }となる。ただし、情報集合論では属するという概念がちょっと違うから、N{ x : x -|> G | x ≠ 0 }( 情報量I = G - 1 )という具合にしておこう。-|> 記号はフィルターを通す(条件を満たす)という感じがしていいと思う。その逆は、x -<| ( フィルターの壁を越えられなかった )としておきます。紙上でも思考内でも表現できる理論が好ましいから、わかりやすい情報集合論の記号も考えておく必要があります。
スポンサーサイト



テーマ : 数学
ジャンル : コンピュータ

コメントの投稿

非公開コメント

プロフィール

インドリ

Author:インドリ
みなさん、はじめまして、
コンニチハ。

ボクは、無限の夢(infinity dream)を持つネタ好きな虹色の鳥インドリ(in dre)です。
色々な情報処理技術を啄ばむから楽しみにしてね。

http://twitter.com/indori
は別人による嫌がらせ行為です。
私とは関係ないので注意して下さい。
次はなりすましブログなどをするかもしれませんが、ここ以外でブログをするつもりがないので、ここ以外にインドリのブログがあったとしても無視してください。


何度言っても分からない人がいるので、ここにコメント欄へ書き込むときの注意事項を書きます。


一、社会人としてのマナーをわきまえましょう。
一、妄想に基づく書き込みを止めてください。
一、暴言の類は書かないで下さい。
一、某誹謗中傷サイトの書き込みは彼らの妄想に基づく書き込みですから無視して、ここへ書き込まないで下さい。
一、コメント書く前に他のコメントよく読んでから行って下さい。
一、言いがかかり等の行為を禁止します。
一、その他常識的に考えて迷惑なコメントはしないで下さい。


以上のルールを守れない人のコメントは削除します。



利用上の注意
ここに紹介してある文章およびプログラムコードは正確であるように心がけておりますが、内容を保証するものではありません。当サイトの内容によって生じた損害については、一切の責任を負いませんので御了承ください。


執筆したCodeZineの記事


【VB.NETで仮想CPUを作ろう】

  1. VB.NETで仮想CPUを作ろう
  2. レジスタの実装
  3. 仮想CPUのGUI化
  4. テストドライバの改良
  5. CPUの基礎動作の実装
  6. MOV命令の実装
  7. ADD命令実装
  8. SUB命令実装
  9. INC命令&DEC命令の実装と命令長
  10. MLU命令の実装とModR/Mについて
  11. DIV命令の実装とイベント設計について
  12. 機械語駆動式 関数電卓を作ろう!
  13. 機械語駆動式 関数電卓を作ろう! 解答編(前半)
  14. 機械語駆動式 関数電卓を作ろう! 解答編(後半)


【仮想ネットワーク実装でTCP/IPを学ぼう】
  1. TCP/IPの基礎と勘所
  2. ネットワークアクセス層の勘所
  3. インターネット層の勘所
  4. トランスポート層の勘所
  5. アプリケーション層の勘所
  6. セキュリティの基礎と仮想ネットワークの仕様
  7. GDI+と独自プロトコルの定義



【並列化】
インテル Parallel Studioを使って並列化プログラミングを試してみた
並列プログラミングの効率的なデバッグを実現する「Parallel Inspector」


【TBBシリーズ】
  1. インテル スレッディング・ビルディング・ブロックの概要
  2. インテルTBBから学ぶループの並列化
  3. スレッドセーフとインテルTBBのコンテナ
  4. インテルTBBのスレッドクラス


【OpenMPシリーズ】
  1. OpenMPの基礎構文
  2. OpenMPの実行時ライブラリと並列ループ
  3. OpenMPのメモリモデルとfork- joinモデル

最近の記事
最近のコメント
月別アーカイブ
カテゴリ
Ada (9)
COBOL (5)
C (9)
C++ (11)
C# (370)
D (25)
Java (8)
Perl (1)
Ruby (14)
PHP (2)
Boo (2)
Cobra (2)
LISP (6)
F# (33)
HTML (0)
XHTML (0)
CSS (0)
XML (0)
XSLT (0)
Scala (4)
WPF (0)
WF (2)
WCF (0)
LINQ (4)
MONO (5)
Linux (0)
MySQL (0)
ブログ内検索
リンク
最近のトラックバック
RSSフィード
ブロとも申請フォーム

この人とブロともになる

QRコード
FC2カウンター