A가 B에 포함되면 R (H (A), H (B))와 같은 세트 H (.) 및 관계 R (.,.)에 대한 해시 함수를 찾고 있습니다. 물론, R (.,.)은 검증하기 쉬워야하고 (일정한 시간), H (A)는 선형 시간으로 계산되어야합니다.
H와 R의 한 예는 다음과 같습니다.
- (K)가 고정 된 정수 및 h (x)를 통해 정수 해시 함수이다.
- R (H (A), H (B)) = ((H (A) & H (B)) == H (A))
다른 좋은 예가 있습니까? (R (H (A), H (B))이면 whp A가 B에 포함되어 있으면 직관적으로 정의하기는 쉽지만 직관적입니다.)
나중에 편집 :
- 해시 함수 제품군을 찾고 있습니다. 나는 많은 세트를 가지고있다. 각 세트에 3 ~ 8 개의 요소가 있습니다. 90 %는 3 개 또는 4 개의 요소를 갖습니다. 내가 준 예제 해시 함수는이 경우에 잘 배포되지 않았습니다.
- 작아야하는 H (.)의 비트 수 (예 : k) (즉, H (.)는 정수 또는 길이에 맞아야합니다).
- R의 좋은 특성 중 하나는 H (.)에 k 비트가 있으면 (3 ^ k-2 ^ k) / 4 ^ k 쌍에 대해 R (.,.)이 참이라는 것입니다. 아주 적은 쌍.
- 블룸 필터는 특히 큰 세트에 좋습니다. 이 문제에 대해 BF를 사용해 보았지만 최적의 결과는 단 하나의 기능으로 이루어졌습니다.
( stackoverflow의 크로스 포스트에서 충분한 답변을 얻지 못했습니다)
무엇에 대한 "whp"? 입력 값이 특정 분포에서 나온 것으로 가정합니까?
—
Jukka Suomela
그리고 해시 함수 계열이 아닌 단일 고정 해시 함수를 실제로 찾고 있습니까?
—
Jukka Suomela
@ Jukka : 나는 그가 R (H (A), H (B))이면 높은 확률로 A가 B의 부분 집합이라는 결론을 내립니다. 확률은 A와 B의 무작위 선택뿐만 아니라 H와 R의 내부 동전 던지기 (있는 경우).
—
MS Dousti
해시 함수 제품군을 찾고 있습니다. 내 세트는 작습니다 (각각 3-8 개의 요소; 그들 중 90 %에는 3 또는 4 개의 요소가 있음). 내가주는 해시 함수의 예는 잘 분산되어 있지 않습니다.
—
Alexandru
R의 좋은 특성 중 하나는 H (.)에 n 비트가 있으면 (3 ^ n-2 ^ n) / 4 ^ n 쌍에 대해 R (.,.)이 참이라는 것입니다. 아주 적은 쌍.
—
Alexandru