比例道
| フロントページ | 新着 | 一覧 |
<-domain ijino tamedesu

diary/20080422

Mathematicaでガロア体上の計算

誤り検出符合の設計で,mod2上の計算つまりガロア体上の計算をたくさんしなければならない.生成多項式から符号を作るのに使うので,多項式の掛け算とか割り算が主だ.これを筆算でやっていたのだが,x^255-1からの割り算(因数分解)なんてとてもじゃないがやってられない.丸2日間ほどノートに数字を埋めまくっていたが,今日の午後に「やってられない.何か別の方法をさがすべきだ」と決心した.ネットで検索してみると,Mathematicaでガロア体上の計算ができると分かった.これはすごいことを見つけたと思った.早速以下のような式を計算させてみた.

 Factor[x^255-1,Modulus->2]

一瞬で因数分解を終えた.感動ものだ.それで今使おうとしている(255,xxx)BCH符号の生成多項式で(x^255-1)を割ってみると,さくっと割り切れて結果が出た.計算はこんな感じ(係数はうろ覚えなので正確ではないかも).

 Expand[Factor[(x^255-1)/(x^8+x^4+x^3+x^2+x+1),Modulus->2]]

Mathematicaは代数学の射影変換を学ぶために買っておいたのだが,ガロア体上の計算までできるとは思わなかった.何と便利なツールだろう.一生使い続けると思う.

イーサネットコンバーター化La Fonera改造DD-WRT

La FoneraでWDSでDD-WRTを入れて今はイーサネットコンバーターになっているLa Foneraを本格的に実用に使い始めた.家の中で有線LANが通ってない部屋をネットワーク化するためだ.既存のAPからの電波をDD-WRTで受けて,部屋の中の小さなLANセグメントを家内LANに参加させた.今回のLANセグメントはネットワークアドレスをメインの家内LANとは分けてみたかったので,ブロードバンドルータBUFFALO BBR-4HGをかませた.光接続のスループットにも対応できるBBR-4HGをこのような用途に使うとはかなり勿体ない使い方だが,使う当てがなくなってジャンク箱に入っていたものなのだ.それほど惜しくはない.稼動させてみるとLa Foneraがボトルネックになってしまい,速度は4Mbpsしか出ない.大きなサイズのファイルを送る予定はないから4Mbps出れば十分だ.La Foneraの小さなアンテナは結構指向性が鋭いようで,回したり角度を付けたりすると電波の受信強度が12〜13dBほど変わる.もちろん,最大受信強度が出る位置を探してアンテナを固定した.La FoneraとBBR-4HGを合わせた消費電力は10W以下だ.これなら常時通電していても良いだろう.遊んでいたLa FoneraとBBR-4HGが役に立つ使い道ができて喜ばしい.