Keskeiset käsitteet
非適応型セルプローブデータ構造を用いて、n個のキー値ペアを s個のメモリセルに格納し、t個のプローブで高速にクエリを処理できる。また、n-wise独立なハッシング関数を同様の方法で実装できる。
Tiivistelmä
本研究では、非適応型セルプローブデータ構造を用いた辞書とハッシング関数の実装を提案している。
辞書の構築:
[u] × [u]のn個のキー値ペアを格納する
(≤n)-non-contractive expander Γ: [u] × [t] → [s]を使用
Γを用いて、各キーに対応するメモリセルを決定し、キー値ペアを格納
クエリ時は、Γを使ってアクセスするメモリセルを決定し、そこに格納された値を返す
構築時間はpoly(n, s) + O(nt)
ハッシング関数の構築:
n-wise独立なハッシング関数h: [u] → Fpを実装
(≤n, 2)-expander Γ: [u] × [t] → [s]と重み付け関数Π: [u] × [t] → Fpを使用
メモリセルにランダムな値を格納し、クエリ時にΓとΠを使ってハッシュ値を計算
両方のデータ構造は、非適応型であり、最適な時間・空間計算量を達成する。また、ハッシング関数の実装は、Siegelの下界を達成する。
Tilastot
辞書の格納に必要なメモリセル数は s個
辞書のクエリ時間は t = O(lg(u/n)/ lg(s/n))プローブ
ハッシング関数の評価時間は t = O(lg(u/n)/ lg(s/n))プローブ