Man betrachte das mit dem Standardpunktprodukt und Vektoren ausgestattet ist: . Wir wollen eine Datenstruktur aufzubauen , die Abfragen aus folgendem Format ermöglicht: Da Ausgang . Ist es möglich, die triviale -Abfragezeit zu überschreiten? Wenn zum Beispiel , ist es unmittelbar, zu erhalten .
Das Einzige, was ich mir einfallen lassen kann, ist das Folgende. Es ist eine unmittelbare Konsequenz von Johnson-Lindenstrauss-Lemma, dass für jedes und eine Verteilung auf eine lineare Abbildung (die in ausgewertet werden kann ), so dass . Also können wir in der Zeit O ((n + m) \ log m) berechnenetwas , das in gewisser Weise nahe an für die meisten (zumindest wenn die Normen und klein sind).
UPD Die oben genannte Grenze kann zur Abfragezeit O (n + m) etwas geschärft werden, wenn wir ortsabhängiges Hashing verwenden. Genauer gesagt wählen wir unabhängige Gaußsche Vektoren . Dann bilden wir zu , wie folgt: . Dann können wir den Winkel zwischen zwei Vektoren innerhalb eines additiven Fehlers \ varepsilon abschätzen, indem wir den im Bild dieser Abbildung berechnen . Somit können wir Punktprodukte innerhalb eines additiven Fehlers schätzenin Zeit.