フィボナッチ数列の一般項の導出
- 2018/05/19 04:42
-
フィボナッチ数列を以下の漸化式で定義する.
フィボナッチ数列
ここで, 初項と第二項をそれぞれ とする. 各項を と置き換えると が得られる. この解は となる. ここで, と置く. フィボナッチ数列の漸化式の特性方程式の解は の解より であるから と変形できる. いま と置くと次の漸化式が得られる.
ARPパケットに対する挙動からネットワーク上の盗聴者を特定する
- 2018/05/02 04:42
-
通信が暗号化されていればまだ良いが, 自分の送受信しているパケットを同一ネットワーク上の信用できない者/物に無断で見られるのはやはり気持ちの良いものではない. 本エントリではそのような不届き者の存在を仮定して, その不届き者を比較的簡単に特定するといった試みを行う.
お断り
本エントリでの試行は当然ながら私個人のローカル LAN 上で行なっており, 同様の試行を公衆回線上などで行うと迷惑/法に抵触する可能性があるのでやめること. 本エントリに起因する直接的又は間接的な損害に関して, その理由及び原因を問わず著者(Roki) は一切の責任を負わない.
ネットワーク盗聴を検出する原理
ネットワークに接続するためには, 大抵コンピュータに NIC を装着して TCP/IP の設定を済まし,
ハブに接続する.
同プロトコルにおける各コンピュータの通信では, IP アドレスと MAC アドレスによる論理情報と物理情報の組み合わせを利用して,
目的のコンピュータに対するパケットの送信を実現する. 通常, その過程で NIC は自分とは無関係であるパケットを破棄する.
しかし NIC をプロミスキャスモードにすると, 自分とは無関係であるパケットを破棄せずに取り込むようになる.
盗聴者はこれを利用して, 同一ネットワーク上を流れる他人のパケットを取得できる.
ベジェ曲線
- 2018/04/21 01:50
-
典型的なパラメトリック曲線の一種である, ベジェ曲線(Bézier curve)についての学習メモ. パラメトリック曲線とその一種であるエルミート曲線に関しては, 前回の記事を参照.
ベジェ曲線は, パラメータ と複数の制御点 から構成されるパラメトリック曲線の一種である1. 始点と終点の線分から成る, 次数 のベジェ曲線は の制御点をもち ( の制御点があるベジェ曲線を 次ベジェ曲線という), この内分点を繰り返し取ることによって, 曲線を得ることができる. この始点と終点の線分を, セグメントといい, これが得られる曲線そのものになる2. まず, ここでは 2 次ベジェ曲線を描くとして, そのイメージをつけるために, 図3を用いてその概要を見る. なお, 2 次ベジェ曲線は true type フォントなどで使われている.
エルミート曲線
- 2018/04/16 01:50
-
典型的なパラメトリック曲線の一種である, エルミート曲線についてのメモ.
パラメトリック曲線
そもそもパラメトリック曲線とは, 任意のパラメータから各々の座標を陽関数形式で表現できる曲線のことをいう. このとき定義できる関数 がパラメータ 1 の多項式である場合, それを多項式曲線といい, 有理式である場合, それを有理曲線という. 例えば, 直線の方程式 は,
とパラメタライズできる. この方程式では, パラメタライズせずとも, に 1 つの実数を代入すれば, 必ず が求まる(逆も言える)ことは明らかである. 次に, 3 次曲線 について考える.
ghc パターンマッチの時間計算量
- 2018/04/08 01:50
-
reddit で見かけて, ふと気になったのでメモ.
GCC で C/C++ コードの switch 文および case 節をコンパイルするとき,
case 節の数が一定以上を超えると, ジャンプテーブルを利用したアセンブリが吐き出される1.
同様にして, ghc はパターンマッチでジャンプテーブルが用いられる場合がある.