Searchable Symmetric Encryption: Attacks, Constructions, and ...

152

Transcript of Searchable Symmetric Encryption: Attacks, Constructions, and ...

���������� ������ ��������� ��������

�������������� ��� ���������

��

����� ���

�������� � ��� � ����� � ����������� � ����� ��� ��������

�� � ��� � ���������� � ��� ������������ �� ��� ����� �

���� � ��������

� ���

����� ���! "� ��#$�"%"&! �!���!

�'����� ()*+

�© ���'������ � �������� ����� ()*+, -�� ������ �����'�,

���������� ����� �� ���������

� ������� �� �� ��� �� ��� ����� � ��� ���������� ���� ��������� ��� ������

��� � �� ���� ��������� � ��� �� ������������ ��� ������ ������ � ��� �� ��

����������� ������� ������ ����� ����� � ��������� ����� �� �����

� ��� ������� �� �� ����� � ���� ������� �� ��� ��� ��� �� � �� ��������

�� �� ������ ��� �� �� ��������� �� �� ����� ������ � ���� � ����������

�� �������� � ������� �� �� ���������� ������� �� ��������� ���� �� �������� ��

�� ������

��� ����� �� �� ������ �� ������ ��������� ��������� ������� ��� ������

��������� �� ��������� � ��� �� ����������� !������ �������

"������� �� "������#

!��#

$

���������� ������ ��������� �������� ��������������

��� ���������

��

����� �

��������

���� ��������� ��� ����� �� �� ��� ���� ���������� ��������� �� ����� ��������� �� � �������� ������� ���� ������ ����� � ���� ������� �� ����������� ������ ������ ���������� ������ ���� ��� �� � �������� ����� ������������������ ������� ����� ���� �� ���� �������� ������� ��� ���� ������� ��� ������� ������ �������� ���� � ��������� ���� �������� ����� ������ ��� � ������� ��� �� ��������� � � ������� ������������ ������� ������ ������� ���������� ������� !���"� �� � ����� ���� ��� �#��� ��� ������� ���� ��$���������� �%���� �� ��������� &���� ' ��� ��������� �� ������� ����� ��� ������ �������� (���� �� ������� ��� ������ ������ ��� ��� ����� )� �������������� ������� ����� � �#�� �� ��� �� � ��������� ��� ���� �� ����� ������������ ������ ������ ������� )� ��� ������� � ������ ������������� �� ��������� � �#��� ��� ������ �� � �� ������ ����� ��� ������ ������ � ����������� �������� � ��� �������� ������� ���� ��������� ������� �������� ���� � ���� ���� ���� ������� ���� �������� �� ������� �%��� ��� ����������� ���� ����� ���� ���� ������ �� ��� � ����� ��# �������� �� �� ����� ������� ������� �� ����� ��� ����� ��#�� �� � ��� �� ��� ����� �� �$�� ��%��� ��**� ������ ������� ������ �� �� �� ��� �������� ��**� ��������������� (������ �� �#��� ��� �� ����� ������� ��� ������� ��� ����������� +������ (�� �#������ �� �������� ��� �� ������� �������� ������ +������� ���� ������ ������ �������� � � �������� ������

,

������������

�� ������� ������� � �� � �� �� � � ���� ������ ����� �� ������� ������� �

� ��� � �������� �� �� ������ �������� �� ��� ��� �� � ������� ���������

�� ��� �� �� � �� � ������ ���� �� ��� � �������� �� ����������� �������� ��

���� ������ � ��� � � ��� ���� � ��������

�� ����� �� � � � ���� ������� ���� �� ������� � !" ����� #�

��� �� ��� ��� # �� � ����� � ��� � #��� ! � ���� ������� � !"� $�

� � �� ��������� �� !�� ��� � %������� ��������� �� &������ ���� ����� #����

����� � �� �� ��� ����� � ���� ' ��� (�� ���� �� ����� �� � # � �

������� ����#� � # � #��� ����� ���� � # � ���� �������� �� �� ����

! # ��� ���� � ���� ��) ������ �� �������� � *"% � #��� � !" � ����

���� ����� ��� �������� �� ���������� ��������+ � �� ,������ $�� &-� ��

����� ����� &-� �� ����.� �� ���� � �� /�0� "�� 1���� ������ ������

���� 2��� "��� ��� $ ����� ���� ���� ��� ,� � �� %���� � �� 3� � /���

��� ��� $����� �� ���

'������ ! � �������� � �� #���� 4���� ����� �� �� ������ ������� ���

�� $ ���� & � � ���� #���� ��� �#������ � �� �� �� ��� ����� �� �����

5

��� ������ ��� �������

�� ����� ���� ������ ���� ������ ��� ��� �� ����� �����

����� � �������� ��������� ������ �! ����������� "#��$���

�������� %���$ &'(� ���� �)'��**� &+�,�

&� ����� ���� ������ ���� -�.� /��� 01���� �������� ��$$����� ��

������� #�� ������ $������� ������ � � ���� � " ��� �,�� "000 "����

���� /�#����� � ������ �������� 2��%�� � /�$����� /�$$���

����� 3"000 �����/�$��(4� ���� ,(��,(*� &+�(�

5� ����� ���� ������ ���� -�.� /��� 01���� �������� ��$$����� ��

������� #�� ������ $������� ������ �$�� ����� � � ���� � -���� �#

6��!��� /�$����� ����������� %���$ *'� ���� 5��,� &+�)�

,� ����� ���� ������ ���� -�.� /��� 7��� �������� #�� ����� �����

���!�� ����� 8������ � ���� � "000 �������� � �������� /�$������

� ������ &+�)�

9

��

��������

� ���������� �

��� ������� ���� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

�� ����� ������� ��� ������������ � � � � � � � � � � � � � � � � � � � � � �

� � ������ ��� ����� ������� �������� ������ ��� �����������

����� �

�� ����������� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

� ������������� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

�� ��� ������ ����� � � � � � � � � � � � � � � � � � � � � � � � � � � � �

�� ��� ������������ � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �!

���� �� �����"�#������ ������������ � � � � � � � � � � � � � � � � �$

��� ��� ���� ������������% �� "���&��"'����� ������������ ()*�+ �,

�! -.&�������� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

�!�� ���#������� �# ��� ������ ������ � � � � � � � � � � � � � � � �

�!� ���#������� �# )*� � � � � � � � � � � � � � � � � � � � � � � � !

�$ ������� /��� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � $

�� ���������� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ,

� ������ �� �!����� ���!���� "�� #������ $��� ������ �%

��� ����������� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

�� ������������� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

�� �� 0�1������ �# 02'22- � � � � � � � � � � � � � � � � � � � � � � �

�� � 0�1������ �# 02'22- � � � � � � � � � � � � � � � � � � � � � � ��

��

����� ������ � ��� � � � � � � � � � � � � � � � � � � � � � � � � � � ��

����� � � �� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

��� ����� � � �� ����� ������ � � � � � � � � � � � � � � � � � � � � � ��

��� ��� ��� ��� ������� � � � � � � � � � � � � � � � � � � � � � � � � � �!

����" # ��� ��� ��� ������ � � � � � � � � � � � � � � � � � � � � �!

����� # ������ ��� ��� ������ � � � � � � � � � � � � � � � � � � ��

��� ������ � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �!

��� $��� ������ �%���� � � � � � � � � � � � � � � � � � � � � � � � � � � ��

��� &����� ' �( � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

��) * ����� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

� ��������� ������ � ������ �� ��� ���� ������ �������� ��

��" +�� ��� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �,

��� �� ���� -���� .�//� �� * ����� � � � � � � � � � � � � � � � � � �,

��� ��� .��� ������ � � � � � � � � � � � � � � � � � � � � � � � � � � � � �"

����" � ���� ��0� �� � � � � � � � � � � � � � � � � � � � � � � � � ��

����� 1�� ������ � .��� � � � � � � � � � � � � � � � � � � � � � � � ��

��� $��� ������ �%���� � � � � � � � � � � � � � � � � � � � � � � � � � � ��

����" ���2�� � .�//� 3��4 ��� � � � � � � � � � � � � � � � � � � � ��

����� +���� �/� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

��� * ����� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

� ����� ������ �� ��� �������� � ������ ���� �� ��

��" +�� ��� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �,

��� $��������� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

����" 5��6� �����6 � .����4 �( ��� ����� � ��� � � � � � � � ��

����� #������� ��� ������ � � � � � � � � � � � � � � � � � � � � � � ��

����� 1 �� ��� � � �� � � � � � � � � � � � � � � � � � � � � � � � ��

��� �� ��� ������ * �6�� � � �����6�� 7����� � � � � � � � � � ��

��� ��� 5��6� �����6 � ������ � � � � � � � � � � � � � � � � � � � � � ),

����" �%��%�4 � � ������ �4��� �66� ��� � � � � � � � � � � � � � )"

"�

����� ��� �� �� � ����� ��� ������ ����� � � � � � � � � � � ��

��� ������� �� ������� ������ � � � � � � � � � � � � � � � � � � � � � � ��

��� ���������� ������� � � � � � � � � � � � � � � � � � � � � � � � � � �

���� !����� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

����� ���� ���������� � � � � � � � � � � � � � � � � � � � � � � � � ��

����" #���� ���������� � � � � � � � � � � � � � � � � � � � � � � � � ��

����� ������� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

��$ %����� &��' � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

��� (�������� �� )����� &��' � � � � � � � � � � � � � � � � � � � � � � � �$

� ����� ������ � � � � ��� ������� ��� �� ������� ��

�� *���������� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

�� � ��� (����+����� � � � � � � � � � � � � � � � � � � � � � � � � ,,

��� ��������� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ,,

���� ������ -���� � � � � � � � � � � � � � � � � � � � � � � � � � � � ,,

����� ������� -���� � � � � � � � � � � � � � � � � � � � � � � � � � � ,�

����" .���� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ,"

��" ��� (���������� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ,�

��� ������� ������ � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

��� ���������� ������� � � � � � � � � � � � � � � � � � � � � � � � � � �

���� ���� ���������� � � � � � � � � � � � � � � � � � � � � � � � � �,

����� #���� ���������� � � � � � � � � � � � � � � � � � � � � � � � � �,

��� (�������� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

� � ����� �� ��� ������ � �� !"

"

��

���� �� �����

��� ������ ����� �

��� ������ �������� ���� ��� ��

��� ������ �� ������ ������ �� ������������� ��������� ��

�� ������ �� ������ ������ �� ��������!���� ��������� "#$%& �'

��� (��) ������� �� ��� ������� ��� ��� ��*���� ������� �� )������

�� ��+� ��

��, (��) ������� �� ��� ����� ��� ��� ��*���� ������� �� x �

��� -.����� ��� ��� ��������� �� !�� ���� ����� �� �.������ ����

����� ������ ��

��/ ��� ���) ������� �� ��� ������� ��� ��� ��*���� p ���� ��

��0 (������ ���� ��� ������ �.����� ��� �� ����� ��� #$% ��

�� ��� ����� ����� �� 12����-� �� ��������� �

�� 3����� �!��� �� ��������� /

� 4���������� �������� �� 12����-� ����. ��+� ,

�� 4���������� �������� �� 12����-� ������ ��� ,�

�, 4���������� �������� �� 12����-� ���� ��� ,�

��� ��� ��������� �� �� 5��- ������ ��

��� 4���������� �������� �� 25�%� ��!�� �� �++� )������� �,

�� 4���������� �������� �� 25�%� ����. ��+� ��

,�� %������ �� ������ ������� ���� ����� ����� ��!����� �������

�� ��������� /6

�,

��� ����� ���� �� ��� � ����� � � � � � � � � � � � � � � � � � � � � � ��

��� �� ��� ���� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

��� �� � ����� ������� ����� ���� �� ���� � � � � � � � � � � � � � ��

��� �������� ��� � �� �� �!"#$% �&� �� (u, d) ����� � � �'()

��*� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � +�

��, �������� ��� � �� �� �!"#$% *� �� �� ��� ������ � � � � +�

��� �������� ��� � �� �� �!"#$% ��* ��-� � � � � � � � � � � � � � +�

��� �������� ��� � �� �� �!"#$% *� �� �� ��� . ��� � � � � +�

��+ �������� ��� � �� �� �!"#$% �������� �� ������ �� ���� � +�

���/ �������� ��� � �� �� �!"#$% ��� �� �� *�� �� � �� � � � +�

���� �������� ��� � �� �� �!"#$% �� �� ��� � ����� � � � � � � +,

,�� ����� � �� ���� ��� � ����% � ��� � �� �� � � � � � � � � � � � � �/�

,�� ����� ���� �� ��� 0"1 2 ���% ��� � �� �� ��� ������ �� � ������ ��/

,�� ����� ���� �� ��� 0"1 2 ���% ��� � �� �� ��� ������������ ��

��������������� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���

,�� �������� ��� � �� �� ����� ���� �� ��� 0"1 2 ���% ��*

��� �� �� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � ���

,�� �������� ��� � �� �� ����� ���� �� ��� 0"1 2 ���% ��* ��- ��+

,�, �������� ��� � �� �� ����� ���� �� ��� 0"1 2 ���% 2 ��

�� ��� 0����� ��2 �� ��� �� �� �������� � � � � � � � � � � � ���

,�� �������� ��� � �� �� ����� ���� �� ��� 0"1 2 ���% 2 ��

�� ��� 0����� ��2 �� ��� �� �� ������ � � � � � � � � � � � � ���

,�� �������� ��� � �� �� ����� ���� �� ��� 0"1 2 ���% 2 ��

�� ��� 0����� ��2 �� ��� �� �� ������� � � � � � � � � � � � � ���

�,

���� �� ����

��� ������� � ��� ��� � � � � � � � � � � � � � � � � � � � � � � � � � � � ��

��� ���������� ��������� �� �������� ���� ���������� � � � � � � � � � �

�� ���������� ��������� �� !��"#� ������ �������� � � � � � � � � � $�

��� ������� � ��� ��� � � � � � � � � � � � � � � � � � � � � � � � � � � �%�

��� ���������� ��������� �� &�� � ���' ��� ��� (�) *������ ������ ��+

�,

������� �

���� ����

����� ����� �� ����� ��� �� ��� ���� ���������� �� ����������� �� ��� ��� ������

�� ����� ������ ����� �������� ������ ������������ ������� ������ ������ ���

������� ���� ������� �� ��� ���� ����� ����! ��� ���� ������� ������� ����

��������� ����� ����� ����� ����� ������� ����� ��� ����� ������� �� ���

�� � ����������� ����� ����� ����� � ���� ������� ����� �� ���� ��� ���

���������� �� �� ��� ����� ��� �� ������ ��������� ����� �� �� ����� �����

��������� ���� � "��� �# �� $�%�� &' �� �������� ��� ���� �� �� ����� ��

�������� (�������� �������� �� ������ ���)� ��� ����� ��� ���� ������� ��

������� ����� ����� ��� *+,� -'� -./� 01� /02� � �� ������ ���� ���� ��� �������

������� ���� ����� �� ����� ��� ����� ����� �������� �� �������� �����3 �� ��

������ ��� ���� �������� ���4��� ����� ��� ����� ����� ��������� ���� ���

���� ������� �����3 ��� �� �� ����� ��� � ������ ������ �� �����3 ������� ���

�������� ���) �� ��� ������ )��� ���� �� ��� ����� ��������� ����� ��� ��� ��

������� ���������� ����� ��������� �� �� �� ������� ���� �� �� �������� ���

5�������� �� ����� ���������� �� � �������� �� �� ������ ��� ��� ������

$� ��� ���� �� ������ ���� ������ )��� �� ����� �� ��������� ������� ��� ���

�� � ��� � ��� ������ )�� �� ��� �������� 6��� �� �� ��� ���������� ���

������� ����� ��� ��������� �� �� ��� ����� ��� ����� ���� �������� ��7�����

��� ������� ����� �� ��� ��� �� ������ ���� ������ � ������ ����������� ������

���� �� ��� ��������� �������� )���� � ���������� ������ �������� �&&5!

-

����� ��� ��� � � ���� ������� ������ ������ ������ ������� � ������ ��

�� � �� �� ������� ���� ������ �� ��� �� �� � �� �� �� �� �������� ����

����� � �������� � ������ ������� � ��� �� ���! " �� � ���� #$%& ���

� �� � �� � '�� � ����� � � ���� ������� #�(&� $% ���� ��� �������

�������� ������ �� �� �� ������ �� �� �� )�������* $% ��� ��� ���

��� �+ �� �� � � ��� ��� #����� �� ������ �� ����� �� ����+& ����� ����

��� ��������� "� �� �� * $% � ������ ������ �� �� � '�� ��� ����+ �(� "�

�� ���,�� �� � ���� #$-& ��� ������ � ������ ������ ���� �� ����� � �����

���� ��� ���� ������ ���� ��� �� ���� �� ������ �� ���� � ���� �+ ��������

%��� �( �������� � ������ ��� ��� $-* � ��� ��� � ������� �������� ������

���� �� ��� �� ���� � ������ ���� $-� .��� $- �������� �� ������ ���� ���

�� ������ ������ �� � '��� /� �� � ��� ���* �� ����� ��� �( �� �� ����������

�( ������� 0���� ��� �������1 �� �� ��� ������! %� �� ����* �( ��� ��

���� ��� �������� �� �� ������� %� �� ��� ����* �( ���� ������ �� ����

����� � ������ �� �� ������ �� � ��,��� � ����� � � ��� �� ����

" ���� � ������ � ��� ������� �23* 45* 2�* 2�* 53* 5�* 36* ��* 27* 5�* 76* 3�� ����

���� ������ �� �� � ��� ���* ��� � � ���� �� ����� ��������� � ��� � ����

• .��� ��� ����8� ������ �� ��� �� ���������� .�� ������ �� ��� �� �������� �� ������ ��� ��� ��� � ���� ��� �������� �� ���� ������ �� ���

� �������� 9�����* �� � �� �� ����� � �� ������ �� ��� ������ ��� � �

�������

• .��� ������ � ������ �� ���� �� � �� ��� � ����� �� � ������ /� ������������� ���* ������* ���� �� � �� � �� ��� ���� �� ��� �� ��� �� � �������

• .��� ����� �� �+�� ������ ������ � �� �� ������ ��� ��� ��� ������ ������ ��� ����

• .��� ����� �� �+ �� �� � ��� ������ ������ �����* ����� �� ��� �����'��� ���� ��� ��������

5

��� ������� ����

�� ���������� � ����� ���� ������� ������ �� �������� � � �� ��� �� � ����

���� ���� �� �� � �� ������� � ����� ����� ������ � ������ ������ ������

����������� ��� �� � ����� �� ��������� �� ��� �� �� ��� �� � ��������������

�� �������� �� ��� ������� � ������ ���������� � �� ��������� ��� ������ ��

�� ��� ��� � ����� ������� ����� �� ���� �� � ���� ��� � ������� �������� ��

����� � ����� � ������� �� � �������� ���������� ��� ��� ���������� �

������� � �����!���� ��� �"������ �� � �������� �����������

#� ��������� � ��� ����� �� �� �� ��� ���� �� ��� �������� $���� ��

�����%� � ����� � ������� � �� ��� ��� ������� ��� �������� $�� �������� �

��������� ����� ����� � ����� ����� �����!����� ��� ���� �� ��������� ������

� ���� !� �������� ������� �� ����� � ��������� ��� &�������'��������� �� �

� �� �������� � �� ��� ������ ����� ������ ��� ������� ������ ( ���� �����

� ���������� �� ����� �� �"���� &'���� �� ��� ��� ����� �� ������� ����

������� �������� �� ������ $��� � �� ������� � ����������� �� � ��������

�� ��� ���� ���������� �������

)� �������� ����� ������� ������� ��� ���� �� ��� ���� �� � ��������

������� ��� � ���"������ �� ������ $�%%� �� �� ����� ( �� �� �*�� �� ��������

�� �� � ������ � ���!�� �� ��%%� ��������� !���� �� � �� �� !���� �� �"����

$�%%� �� �� ���� $������� �� ������ ����������� ����������� ���� ��� �� ���

��� � �� �� �����

+� �� ����� ���� ��� � �� ��� ����� � ��� ,������ ����� ���� ��� ���

�� ��� �� � ��� ������� ��� ���� �� �������� ������������ ( �������� �

���!�� ������ ��� ���������� �� ���� �� � ������ � ��� �� � �������

��� -���� ��� ���� !� ���������� .��� -������ ��� ���� ������� �� �����

������� ����� �� �� �� ���� ������� ��������� ����������� ��� �� ��������� ����

����������� ��� ������� ������������ ( �� ������� �� ��������� �� � ������

�� �� � ���!�� � �!��� ����������� �� �������� ���� � �� �� ���"����� ( ����

����� �� � ���� �� � ��� �� ���� �������� �� ��������� ��� �� ���������

)

����������

��������� �� �� �� � ����� �� � �� ��� ��� �� ��������� ������

• � ���� ����� ���� ��� ����� ������� ������� �� ��� ������� �� � � �� ������ � ��� �������� ������ ����� � � ��� ��� ������ ����� � ���� ���� ���

��� ���� ��� ��������� �������� ��� ���� ����� ������ � ��� ������

������ �

• � ��� ��� ����� �������� �� ����� � � ������� ��� �������� ����� ���� ���� ��� ��� ���� ��� ����� ���� � ������������������ ������ �� ����� �

��� �������� � ������ ������ �� �� � ��� ���� �� � ������

�� �� ��� ��������� ���������� ��� ������ �������� ������ � � �

• !� �"�� ��� ��������� �� #��������$���������� ���������� ��������� ����������� %#$�����&� #$����� ����� ���� ��� ����� �� ��������� ���� �

������� ��� �� ��� ���� ��� �'������� ��� ������ ������� ��� ����� ���

�������� ���� � ������ �����

• !� ����� � � ����� #$����� ������ �� ���� ����� �� ��� ����� � '����� ������ � �� ������� ���� ()* ��������� � !� ������� ����� ��� ����� ����

� ������ #$����� ����� �� ������ � �� ��� ����� � +�� �������� ���

����� ��� ������ �� �� ����� ����� � ��� ���������������� %,-./& �� ���

����� ����� ���������� �� ��������� ��� �� ���� ����� ��� � ������

�� ��� ����� � ����� �

�� �� ��� ��������� ���������� ��� �!!� "��#��� �� �����

• !� ����� � �� ������� ����� �� �������� ��00� ������ ��� ����� $������������ � +�00� ��� ,�� �������� %$+�,&� ����� ���������� ��� ���� ����� ��

� ����� ������

• � ��� $+�, � � ������� ������ �� ����� � �� � ����� +�00� ���������� ���������� ���������� %+���& ������ ���������� ���� ����� ��� � ������ ��

��� ����� � +��� ������

1

����� �������� �� ������ ������� �������

• �� ����� ��� ���� � � ��� ������� � � �� ���� ������� ������� ��

�������� ��� ������� � ��� �� �������� � � ��� ���� � ��� � !� "��

� ������� � ��� �� ������#�� $� ��� � ������� $ ���� � �%� � � &�

�$����� �������

• �� � � �� ��� ��� ������� � ������ � �� ���� ������� ������� � �%

��� ���� ����� � � '()*� � ������ ����&�� $���� �+������ �� �����

$� �������� � ���� ��� ������� ������� ����� �� ��� ������ $� ����������

� ����� ��%� �� ����� ,� ������ �� � &�� � $� ����� ����� �� ���%

����%���� -�.��/�

����� �������� �� ����� ������ ������ ��������

• �� ����� ����� � � � ����� ��� ���� ���� ����� � �%� ����� ���� �

-��� / ����� �� ����� ��� ���� � � ��� ������� � � ��� ����

�������

• �� ������ ��� ������� � ������ � ��� ���� ������� "�� ������

��& �&�� � � ������� �� �� ���� ��������� ����� � � � ����� �� ����&�

����� � � ��� ����� �� �� � ����� ��� ����� � �� �� ����������

����� � &���� ��� ������0� ������� �� �+������� �������&����

1

������� �

��� � �� ��� ������ �������

�������� ������� ���

���������������

�������� ���� �� �������� ��������� ������� ��� ����� ���� ����� �� ���

� ����� �� ��� ������ ��� �� ������ ��������� �������� �� ����

������ �� ��� ������ ��� ������� ���� ������� �� ���� ��� ��� ���� �����

����� ���� ����� �� ���� ��������� � ����� ��� �� ���� ������ ���������

�� ������ ��� ��������� ������� �� ��� ������� � ����� ���� ������ �� ����

������� �������! ��� ����������� "#$%& �� ������ � �������� ���� ��

��������� ������ �� ��� ������ ������ ��� ���� ������ '������ ����������

��� �� ��� ��!���� ����� ��������� ��� �(���������� �� �� ���� �������

�� ��� ���� ����� �� �� ������������

��� ����������

�� �� ��� ������ ������� �� ��� ������� ��� ��� ��������� �� �� ����

���� ������ ��� � ������ ��������� � ����� �� �� ��� ���� ���� )� ���� ���

���� �� ��������� �� � ������� ����� ��� ������� ������ ����� � �������

*+, -./� /.� 01� .2� 34� /2� .0� 5/6� ����� ����� ��� ������ ������� "����� �������

.

������ �� ��� ��� ���� � ������� ��� ��� �� ��������� � �������� ��� �� ���

������������� ���������� ��� ����������� ��������� ������� � ����� ��

��������� ������� �������� ���� ������� ������ !"� #$� "%� "!� &"� '(� $!) ����

���� ������� ���� ����� ������ ��������� �� ������ �*������ ������� ���

������ ������ ��� ��� ����� ������ �� ������ � ��� �������� +��������� ���

������ ������ � ��� �������� ����� ���� ��������� ������ ��� ,���� ����

��� ����� ��� ����� ����� �� ���� �� ��� ��� ,����� ���� ��� ����� ������ �

��� �������� ����� ������ ��� ��� ,���� �� �������� ��� ��� ���� ������

� ���� +� ����� ������� $() ��� �������� � ������� ������ �-������ ��� ������

������ �� ������� ��� �������� ������� �� ��� ,����� ������� ��� ��������

��� �� ��� ����� ������ ������� �� ���� ������ � ��� �������� .� � � �����

� $!)� � ������� �� ���� ����� ��� ������� � ��� ������� �� ��� ����� ����

���� +� ����� ��� ������� ���� �-��� � ��������� �������� �������� �������

������ /&� &) � 0� ��� ������ ������ �� �� �������� �� ��������� �� ��� �����

������ ������� ���� ��� ������� � ��� ��������� �������� ���������� ����

��� ����� ������ �,��������

����������� 1��2� ���� ��� �����3�� ��� ����� ������ � ������ � ���

�������� �� ��� ���� �� �� ���������� ��� ,��� �������� �� �-���� ��� �������

� ��� ������� �� ������ ���������� ���� ����� ��� ���� ������ ��� ������

������� ��� ���� ,���� +� ��� ������ �� ������� ��� ����� 4���� ������ ���

��� ,���� �� �������� ��� ��� ���� ������ � ���� �� �� �� ����� ��� ����2

����� ������� 5�� ��� ����� ��������� ,��� �������� �� ����� ��� �������

������� ����� ����� ��� �� ��������� ,��� �������� !!) ���� ������ ��� ���

����� ������� ������� ��� ���� ������� � ���� ����� ������ �������� ��� �����

������ �� ����� +� ���� ����� �� ��� ���� ������� �� ���������� ���� �

��� ���- ���� �� ��� ����� �� ���� ��� ������� ��� ������� ����2 ����� ������

4��� �� ������� ��� ����� ������� � ��� ���- ���� ��� ����� ������� 0�

��� ������ ��� ����� ������ � ���� ������ � ��������� �������� ��������

������� ��������� �������� ��� ������ ������ 6�7� � ����� ,��� ��������

�� ��������� /&� &� 8&� #(� #&� "$� "")� �������� �����3�� ,��� �������

!

���� ��������� �� ���� ���� � ��������� � ��� ����� � ��������� ������ ���

� �������������� �� �� ���� ���������� �� ����� �� ���� ��� ������ ������� ����� ����

��� ������ ������� �� ��� ���� ��� ������ ��� ���� ������ ����� ����� ���� ��� ����

����� ������ �� �� ����� ��� ��� �� �� �� ! ��� ��� ������ �� ��� �� �� � ��� ������

�������� "�� ���� �� ���� ������� ������ �� ��� ������ ������� ������� ���� � ���

������ �� �� �#� $ ������� �������� �� �� � ��� ������ ������� �� �������� �������

���� ������ ����� ���� ��� ���� ���� �� ���� ��� � ������� ������ � ������ ��� ����

����� %��� �� ���� � ��� �� ������ � ��� ��������� ���������� ����������� �����

��� ���� �� �&������ ������ ��� ���� ���� �� ��� ���� ������� ��� ���� ����

�� ���������'� � � �������� ��������� k� �� ���� ���� � ������ ���������� ��

(������ ���

�� ������ ��� ����������� �� ���� ������� �� ��� ���������)

*� �� � ���� ��� ������ ������� ������� ���� �� ���������� ��� ��������� �����

�� ��� ��������� ������������ � ������ ��� �������� ������ ����� �� �� ���&

������� ���� �� ������ ����� �� �� � ������� ��� ��� ������ ����+ ������

������� ��� �,�������� ������ ��� � ������� ������ � �� ��� ��� ������ �&

�� ��� ���� �� ���� ���� �������� ������ ���

� �� ������� � �������&��� ����������� �-%.� ����� ���������� �� �#������

�� �#&��� ��������� ���������� ������ �� � ��� ������ �� ��� ��� ������

�������� -%. �� ������ �� � �� ���� ��� �� ��� � ������� ��������� ��&

�������� ������� �� ���� ���� ������� ������� �/�� 01� 02� 30� 4 � �2! ��� �

�� �� -%.�

0� �� ����� ���� ��� �������� ������ �� -%. �����5�� � �������� ������� ���&

����� ���� ��� �#������ ��������� ���������� ������� -%. �� ��� ��� ������

������� ������� �� ��� ���� ������� ��������

/� %��� �� ��� ����&���� ������ �2!� �� ���� ��� ����������� �� ��� �������

������ ����� � �� ��� ������� ������������ "�� �#�������� ������ �� �����

��� �,���������� �� ���������� �� ������� ������ ����� � �� ������������

3

��� �������� � ��� ������� � ������� � ���� � ������ ��� ������� ��

������������ � �� �������� �� ������ ���� �� ������ ���� �� ������ ��� �� ����

� ����� ��� ���������� � �� �������� ������ �� �� �!���������� ���� ��

�"�������� ��� ���������� � ��� ��� � ������ ���� �� �� �������� ��

��"��� ������ ��� �� ������ ��# �� ������ ��� ������� �� ������ ��$�

��� �����������

%�&����� ' �&�� ��� ���!��� � ��������� ����(����) ����� �"�� ��� ������

���� (������� ����(���� �� ��������� � (������� ����(�����

��������� � *���������� �(������� +���(����, �� ��������� ��� ���� ���

������� ���� ���� � ����� �� � �������� �� - *������) ��� ����) ���������)

����) ������) ���������,�

�� ������*1λ,� ��� �� ��������� �������� � � � ����� ������� λ �����!

�� ������ � ��� �� K�

"� ��� ����*D,� ��� ����� �������� �������� � � �� ����� ���� ���� D =

{D1, ..., Dn} �����! �� ������ � ����� I�

#� ���������*D, I, K,� ��� �� ������� �������� � � �� ����� ���� ���� D!� ����� I �� � ��� �� K �����! �� ������ � �� ������ �� �����

���� ���� C = {C1, ..., Cn} �� � ��� ����� SI�

$� ����*w,K,� ��� %���� �������� � � ��&��� w �� � ��� �� K

�����! �� ������ � �� ������ %���� qw�

'� ������*qw,SI,� ��� �� � �������� � � %���� qw �� � ��� ����� SI

�����! �� ������ ���� ���� �� �� ����� ������(�� &��� ����������� ��

(�� �������� ��� ��&��� w! &�� � ������� R(w) = {�(w, 1), ..., �(w, p)}!&���� �(w, i)(1 ≤ i ≤ p) ������ ��� i��� ������(�� �� R(w)�

�� ���������*Ci, K,� ��� �� ������� �������� � � � �� ������ �� (�� Ci ∈ C�� � ��� �� K �����! �� ������ Di�

'.

������ ��� ���� ��� ���� �� ��� ����� ����� � ��� ����� ����� � �� ����

���� ��� ��� ���� �� ��������

��������� � ��������� �� D � �� ���� ��� ����� �� n����� ������� ��� D�� � ���� H = (D,�) ��� � = {w1, ..., wn} �� � � ��� �� ��������� ������� ���� n ������

���� �� � ��� ������� �� ��� ����� ������ �� ���� ���� ��� ��������

��������� ������ ����� � �� ��� � ������ ��� �� n����� ������� H =

(D,�) �� � n× n ������� ����� ������ τH �� � ���� ��� 1 ≤ i, j ≤ n� τH[i][j] = 1

�� wi = wj� ��� � ��������

��������� � � ����� ����� � �� � �� ������ ��� �� n����� ������� H =

(D,�) �� � ���� ϕH = (R(w1), ...,R(wn))�

!�� ���� " ��� �� ��� ����� ����� ��� �� ������ #� �����$#��� �� ��������

�������#�� � ������ %�"�%�� ����� &������� �� ������� � �� �������

��������� � �'���� ����� � �� ����� ������ ��� �� n����� ������� H =

(D,�) �� � n× n ������� ����� ������ ρH �� � ���� ��� 1 ≤ i, j ≤ n� ρH[i][j] = 1

�� wi ��� wj ���� �� �� ��� ����� ��� � ��������

!�� ���� ( ���� � ��� �� ���� �� )* %$�������� ���� +,-� ,./� ����� �� #��

�� ������� � 0���� �� ��� ��1�

��������� �)* %$��������� �� �� 2 �������� ��� ����� ���������� �����

������� ���������� �� �������� ��� ��� � ������� � �� ��� �� L �

������� ���������� �� �� �������� A ��� � ��������� S� � ������ �� ������������������� ��������!

������

A (λ)! �� ������� ���� ������(1λ) �� ����� � �� K� A ����� D ���

� ��� (C,SI) �� � ���� (C,SI) ← ���������(D, I, K) ��� I �� �� ������� �� ��� ����(D)� ��� A ���� � ���������� ���� �� ������� �����

��� ��� � � ����� ������ w � ��� � ���� qw ← ����(w,K) ���� ��

�������� ������� A ������ � �� b ���� �� ������ � �� ��������

--

� �� �� �� �� �� �� �� �� ���

��

��

��

��

���

��������������

����

������������ �

���

� �� �� �� �� �� �� �� �� ���

��

��

��

��

���

��������������

����

������

����

��� ��

���

������ �� ���� � ������� � ���� ����

�������

A,S(λ)� A ������� D� ��� L(D) S ��������� ��� ����� (C,SI) �� A� ����A ����� � ��������� ������ �� ������ ������� ��� ���� ������ �������wi ��� H = (D,�) ������ ��� i������ ������ ����� � = {w1, ..., wi} S � ���L(H) ��� ������� �� ���������� ����� qwi

� ������ A ������� � �� b ���� ������� �� ��� ����������

� ��� ���� �� � L������� ������ ������ �������������� ������� � ��� ��� ���

�������� A ����� ����� � ��� �������� S ���� ����

|Pr[������

A (λ) = 1]− Pr[�������A,S(λ) = 1]| ≤ negl(λ).

��� ��� ���� � �����

�� � ��� ���� � ������� �� ������� ��� ��������� �� ����� ��� � ����� � ������� �

�� �� � ����� !����������� ��� ���� �������"�� ���#���� ��� ����� �� ������� � ���

��� � ������� ��� ��� �$������ ��� ���#��� %������������& �� ��� ��� ���#��� ��

������������ '�� ��� � ��� ��������� �� �"�� �� �������� ��� ����� #��� ��� �������

� ����� � ������� � �� ������������ '��� ��(��� ���#� ��� ���������� ���#��� ��

���� ����� �� %������������&

�� ���� � ���� ������� ���� �� ��� ��������� �� ���� ��� � ����� � ������� � ��

� ��� �) ����� ���� �� �������� �� ���� *� �� �� ���#� �� ������ ��+�,� ��� ���������

������� ��� �������� ������ � �� � ������� ��� � ���� ���� �� ��� ��� �����

��� �� ���� ����� ������� �������� ���� � ����� ��� ������� ����� � ������

������� ������ ������ ���� !"# ����� ����� ��� ���� � ��������� ������$���� ��

������ � ����� %�� ����������� �� ���� ����� ������ �� ����� � %���� �$�&�'

�� ��� ��� ���� ����(�� �� �������� ���� ���� �������� � ��� ��(����� � )���

��� ��(����� ���� �� �� �� �������� ��� ����$������� �� ���� � ���� �� ����

������� �� ��������� ��������� &����� *������ �������'�

+ ���� ������ ���� ���� ����� ��(� � ������� �������� &��� �� + � ��������

����'� �� ��� ������ ����� �� ����� ���� ��� ��������� ��� �������� ���� ����

�� ��� ������ ����� � ������ ��� ���� ���� � ������� ��������� ��� ��(�����

���� �� ��,�� ��� ������� �������� ��������� � ��� �� �������� ������ ������

���� ���� �-��� ���������� ��� (����� ����������� ����� �� �� ������� �� ���

���������� �������� ��� ���(�� �� ��� �������� ���� ���� � �� ����������� ���

��� ��(����� ������ ����. ������ ������ �� � ����������� ������� ���������

)� ,�� ���� ������ ���� ��� ���������� �� �(�� ��������� ��� ���������� �� ���

��(����� ��� ����� ���� �� ������� ��������� �� ���� ������� ��� �������

�������� �� �� ��� ����. ������ ������ ��� ���� �������� ��� ������ ���� ���

/����� � ���� �� ���� ������ � ����. ������ ������ ��� ��� �� ��� �����

&����� !�� "� 0#'� ����� ����� ����������� ��� ������� �� ��(� ������� ���(�� /���$

���� � ��� ������ ������ ������� ���� ����(��� ������� ��� �� ���� ���(�� � )�

���� �������1� ��� �� ���� ������ ������� � ������ ��"�

+ ���� ������� �� �������1� ��� ������ ������� ����� ������� ��� ������ ������

�� ��(�� ��� ���� �� �� ����� �� ��� ������� 2�� q �� � ������� ��� ����

��� ��(����� ���� �� ������� ��� ��(����� ������� ��� �������� ������ ��

q � ���� ������ �� ���� &����� �� � ����� ����� ����'� ����� �� ����� �� f iq ���

1 ≤ i ≤ p ����� p �� ��� ����� ���� �� ������ ����� &����� p = 50 � %���� �$�&�''�

�� ��� ��(����� ���� � ������ (����� �� q ������ �� Vq = (f 1q , ..., f

pq )� 2�� K

���� ������ ��������� ����� �� � ��� ������ ��� � �������� ��� ��������� � � ����� �� �� � ���� ������ ��� ��� ��� ������� ������� �� ����� ��� ������ � ��� ���� ���� � �� � � � ��������� � � ! � � ������� ��� ����� ����� "� ���� �������� !��� !� ����� ������ ��������� # � �������� ���������$ !���� ��� ��� � � �������� !��� ��� ���� �� � ��� ������� !� ���������� ������� ������ ��%� ���� � �������� ��� ������ �� ������

�"

������ � �������� �� �� ��� ��� m ������ ��� ���� �� K� �� �� ������ ��������

� ������ ��� ������ ��� ������� ��� ����� ����� ����� ����� ������ ������

������ ����� � !"� #�� Vwi= (f 1

wi, ..., f p

wi) ������ ��� ������� ��$���� ����� ��

��� �� �� wi ∈ K(i ∈ {1, ...,m})� ��� ��� ���� ������� �� ���������� ��� Vq� #��

V = {Vw1 , ..., Vwm} ������ ��� ��� �� ��� ������� ��$���� ������� #�� Dist(Vq, Vwi)

�� � �������� �������� ��� �������� �� Vq ��� Vwi������ %�������� &�������� '�����

&�������� ����"�

'��� ���� �� ������� ��� �������� �� �� �� q� ���� ��� �� ����� ��������

����� ��� ����� ��� ������ ������� (� ���� ���� ������ ������ ��� ������� ���

��� ������ �� �� ���General)

• ���General�Vq, V ")

*� ��� i∗ = argmini∈{1,...,m}

Dist(Vq, Vwi)�

+� ���� wi∗ �

(� ���� ��������� ���� ���� ����� ���� �,���-� ��������� ���� ��� ������

���� ��� ��� �� �� ��� ���������� �� ���� ��� ���� ���������� � ,����� ���

����� ��� �������� �� ���Adaptive" ���� ��������� ��.��� ��� �������

��� ����� ����� �� ��� ,������ ����� �� ������� /� ����,��� �� ��� ������ ���

�������� -�� �� ��� 01�23� 0��������3� 0 ����3� 0����3 ��� 0�������3 �� ���

-�� -�� ����� �� ������� ��� ��� ����� ��� ���� �� �������4������ ��� �,����

��� ������� ��$���� ����� �� �� ���������� ������� 1��� � ������ ���� ���

������� ��� ����� �5�� ���������� �� ��� ������� ���� ��5���� ��������� ����

��� �� ��5���� ��� �����������

#�� C = {c1, ..., cr} �� ��� ��� �� ��� ,������� ��������� �� ��� ������� ��� ������

#�� Vwi,cj = (f 1wi,cj

, ..., f pwi,cj

) (1 ≤ i ≤ m, 1 ≤ j ≤ r) �� ��� ������� ��$����

����� �� wi ���� ��� ������ cj� #�� Vcj = {Vw1,cj , ..., Vwm,cj} ������ ��� ��� �� ���

������� ��$���� ������ ���� ��� ������ cj� (� ������ ���� �� �� �� K ��

���� ������� ��� � ������ �� C �������� �� ��� ��������� �� ��� �� ��� (� ��� �

����� ����� �� ���� �� ��� ������ �������� �� vj(1 ≤ j ≤ r)"� ���� �$���� �� ���

*6

���������� �� ������� ������ ������� ���� ���� �������� �� ��� ������ ����

�� ����� � ��� ������ ������ ��� � �������

• ���Adaptive({Vqi}i=1,2,..., {Vcj}j∈{1,...,r})�

�� ��� 1 ≤ j ≤ r� �� vj = 0�

�� �������� ����� Vcurrent ���� {Vcj}j∈{1,...,r}�

�� �� ��� = 1�

�� ���� wi∗ = ���General(Vq��� , Vcurrent)�

�� ��� cj∗ �� ��� �������� ������� �� wi∗ �

�� ��� 1 ≤ j ≤ r(j �= j∗)� ��� vj =vj ·(���−1)

����

� ��� vj∗ =vj∗ ·(���−1)+1

����

!� �� jmax = argmaxj∈{1,...,r}

vj�

"� ��� Vcurrent = Vcjmax�

�#� ��� ��� = ���+ 1�

��� ���� ��

��� ������ ������ ����� �� ��������� �� ��� $�� ��� ���� �� ����� � ����

��� �������� �� �� ���� ���� ��� �%��� �� ��� ����� �� ��� ���������� &���

��� ������� �� ����� ����� ��� �������� ��� �������� �������� ��� �%��� ��

��� ������ &� ���� ��� ��� ����� ������� �� '������ ����

��� ��� ���������

(� ��� ������� �� ������ ��� ��������� ���������� ���������� �� ������ ���

������ ����� � )�� ������ ������������ �� ���� $�� �������� � ��������������

����������� ��� ���� �� ���� ����������� *��� ���������� ��� ���� �� �� �%+

����� ����%+���� ��������� ���������� ������ *����� ��������� �� ����������

�� ������� �� �������� ��� ���������� ��������� ,�� W -W ⊆ K. �� ��� ��� �� ���

������� ������ ��������� �� ������� ���������� D �� ������������ ����� ��� |W|

��

�� �������1λ�� ����� K ← ���������(1λ)

� �� �� ���D�� ����� I ← ����� �� ��(D)�� �����������D, I, K�� ����� (C,SI)← �������������(D, I, K)

�� �����k, w,K,W��

� � � ������ ������ k − 1 ���������wi1 , ..., wik−1

∈ W\w��� � ������ ������ b ∈ {1, ..., k}��� ��� 1 ≤ j ≤ b− 1�

��� sqj ← �������(wij , K)

��� ��� sqb ← �������(w,K)

��� ��� b+ 1 ≤ j ≤ k�

��� sqj ← �������(wij−1)

��� ����� (b,Q = {sq1, ..., sqk})�� �������Q,SI��

� � ��� � �� sqi �� Q���� Ri ← ���������(sqi,SI)

��� ����� R = {R1, ...,Rk}�� ��������R, b�� ����� Rb

�� �����������Ci, K�� ����� Di ← �������������(Ci, K)

�!��� "� #����! ��� �� ��� ������ ��� ��� �!������ �� ������������

�� ��� ��$�� %�� wi ������ ��� i�� ������� �� W � %�� k �� ��� ��������� � �����

���� �� ��� �������������� %�� �� �� ����&� ����'"� ��� �� ��� ��� ���������

������ �� � � ���&�� (�&������ ��

����� ��� ��� ������ ���������

)� ��� ��� �!������ �� ������������* ��� +���� !���� ��� �� ,�� �� ���������� �� k

���"+������* ����� �������� ��� ���"+���� �� ��� �� � ������� ,�� � ��� �� �� ���

�� k− 1 ���"+������ �� � ������ �������� ��������� -� ��.��� ��� �.��� �� ����

��

����������� �� �� ����� �� �� ���� �������� ��� ���� �� ����� �� �� �����

�� � ������ ������� �� �� ����� ��������� ��� �� �������� ������� � �����

������ � ���������� �� k �� ������� ���� ���� ��� ��� �� ������ � ���� �� ����

�������� �� ������ �� �� ����� ������ �� �� ����������� ��� � ��� ���

�� ��� ���� ����� �� �� ���� �� k �� ����� ��� �� �������� ����� �� ��

�� ������� ��� ��� �� �� ���� !���� ��� ���� �� ������� ������� �� �� ���� ��

������ � �"����� �� �� ����� �� �� ���� �� ����� ��� ������ ���� �� ������

��� ��� �� � ����� ��� �� ������� �� �� ����� ��� ��� �� ����� ������

�� �� �� ������� �������� �� �������� �� ����� �� �"�������� �� ���� ��

����� ���� �� ���� ����� ��������� �� ������ �� �� ������������� �����������

��� ��� �� #����� $ $�

��������� �� ���� ���� �� �� ������������� ����������� � �������� ��

�� ����� �� �� ���� ������� ��� ������ �� ������ �� ���� ������� ��� ���

�������� ������� �� W � %� �� ���� �� �������� ������ �������� �� ���� ��

������ �� �� ���� ������� � ����� ������������� &������� �� ������ ��� ��

����������� � ��� ����� �� ��� ���� %� � ������ ��� ��� ���������� �������

��� ������� ��� ���� ���� ��� ���� �������� %� �� ���� �� �������� � ����

�� ���� ��� �� ���� �� ������ �� ��� ������� �� ���������� �� �����������

���������� #�� �"������ ��� �� �������� ��������� k �� '� (������ �� �����

������� (w1, w2, w1, w1, w1) ��� ������������ ������ �������� �� �� ��������

���� ��

Q1 = {sq(w7), sq(w1), sq(w38)}

Q2 = {sq(w34), sq(w91), sq(w2)}

Q3 = {sq(w1), sq(w51), sq(w67)}

Q4 = {sq(w8), sq(w77), sq(w1)}

Q5 = {sq(w1), sq(w12), sq(w83)}

����� �� ����������� ���������� �� �������� ��� ����� ������ ��� sq(w1) ��

���� ���� ���� ����� �� �� ������� � � ������� ��� �� ���� �� ����� ��

)*

��� ����� ����� ����� � ��� ����� �� sq(w1)� ���� ��� ���� � ��� ���� ��

� � �� ������� � V iew = {Q1 = {sq(w1)},Q2 = {sq(w34), sq(w91), sq(w2)},Q3 =

{sq(w1)},Q4 = {sq(w1)},Q5 = {sq(w1)}}� ����� �� �� ����� �� ��� � ����� �� ����

� �� ������ ��� � � ����� �� � sq(w1) � � ��� ��� � �� ����� ���� �� �� �������

� �� ���������� ��� � ��� �������� ������ ���� ��� ������ ��� ���� ������ ����

!"# ��� ������ ��� ��$� �� � ���� �� !%# k � ��� �� �� ���

����� ��� �� �� ������� ��� ��������� �� �� ������

�����

�� ���� ��� � �� ��� � ��� ��� ������� � ������������� �� ��� ������� ���

� �� ������������� ����� �� � �� ��� ���������� �� ������������ !&�'#� (� &�'�

�� � ����� � �������� � �� ��������� ����� ����� W ���� |W|/k �������

{S1, ..., S|W|/k}� )���� �� ����� |W| �� � ������ � �������� � k�� ���� ������

w ∈ W �� ������� � �� ������ �� � ��� �� �� ��� � �� ������ ���� w ���� ��

�������� �� �� � ��� �� � ����� ��� ���� ��� ��� �� � ��������� � k − 1 ��

������������

'�� ���� ��� �������� �������� ����� � �� ��� �������� ����������� � ���

������ �� ������� � ������ � �������� �� ���� �� ������$� ��� �� � ��� *��� �� �

��� ���� �� ����� �� ��� ��� ����������� � �� ����� !����� ��� �+��� �� ��������#

�� ������ �� ���� ����� � � ��� ��� �� �� ����� ��� �� ��� � ������ (� &�'� ���

�������� �������� � ��� ��� �+��� �� �������� V � ��� � ��� ������ ! � �� �� �����

�� ,����� %�-#� .� ���� ���� ��� ������ ���� W �� ������ �������� ������� ��

V � ���� �� ���� ��� � ��� ������ ���� ���� k ��������� .� � ����� �+�� �� ���

������ ��� � �� � ��� �������� � ��� ������ � k �������� (� ���� � �� ��

� � �� ��� ��� �� |W|/k ������� ���� ��� ������ ������ �������� ������������

��� �� ��� � &�' �� ����� �� ,����� %�-� /����� ��� ��� ������� � ����

���������� ����� � ����� ������� �� ����������� ��� ��� ����� W � &�' �����

W ���� ������ � ������� �� �� � ��� ����� �� ������� ���� �� �� �� ��� � ��

���� ��� ��� |W| ��� �� ������ �� �� � �� k� ��� ��� ���������� � ��� W ��� �����

��������

"0

�� �������1λ�� ����� K ← ���������(1λ)

� �� �� ���D�� ����� I ← ����� �� ��(D)�� �����������D, I, K�� ����� (C,SI)← �������������(D, I, K)

�� ���� ����k,W , V ��

� � ���� �� ��� �������� �� W �� ����� ��� � ���������� ��������� ��������� �� V � ��� W ′ �� ��� � ���� ���� �� w′

i �� ��� i�� ������� ��W ′

��� �� ��� W ���� k �������� � ����������� 1 ≤ i ≤ k�

��� W ′i = {w′

(i−1)·k+1, ..., w′(i−1)·k+k}

��� ����� ��!� |W|/k �"�� ������� S1, ..., S|W|/k# ��� 1 ≤ i ≤ |W|/k���� 1 ≤ j ≤ k�

� ���" ������ w ���" W ′j

������ w ���� Si

������ w ���" W ′j

��� ����� {Si}i∈{1,...,|W|/k}

$� �����k, w,K, {Si}i∈{1,...,|W|/k}��

� � ��� Sq �� ��� ������ ���� ����� w �� Sq[j] �� ��� j�� ���"��� �� Sq�%���� w �� ��� b�� ���"��� �� Sq�

��� ��� 1 ≤ j ≤ k�

��� sqj ← �������(Sq[j], K)

��� ����� (b,Q = {sq1, ..., sqk})&� �������Q,SI��

� � ��� � �� sqi �� Q���� Ri ← ���������(sqi,SI)

��� ����� R = {R1, ...,Rk}'� ��������R, b�� ����� Rb

(� �����������Ci, K�� ����� Di ← �������������(Ci, K)

)����� ��� *����� ��� �� ��� ������ ��� ��������� ��� ������������ �+,-�

�.

���� ��� ����� ���� �� ��� �� � ��� ���� ������� ��� �� ����� �� � ���

���������� ������ �� ���� ���� ������������ � ����� �� � � �������� �� ��� k

�� � �� ���� �� w1 �� w2 ��� �� � ��� ������ (w33, w1, w74) �� (w85, w41, w2)

������������ ����� � ���� ��� � �� ��� ��� � ��� �������� V iew = {Q1 =

{sq(w33), sq(w1), sq(w74)},Q2 = {sq(w85), sq(w41), sq(w2)},Q3 = {sq(w33), sq(w1),

sq(w74)},Q4 = {sq(w33), sq(w1), sq(w74)},Q5 = {sq(w33), sq(w1), sq(w74)}}� !��� ���

Q1� Q3� Q4 �� Q5 ��� ������� � � � � ��� ��� � � ��� �������� � ����� ��� ����

���������� � ��� "���� ���� � ���� �� "��� ������ ��� #$% sq(w1)� ������� sq(w33)

�� sq(w74) ��� ������ ��� ����� �& � #'% ������� ������� (����� ���� ��

��� �������� ��� ���� ����� � ����� ���� �� ��� � ��� ���� �������

!� � ������� ��� ��������� ���������� ������� � ������ � )*+ ����"�� � ��� ����

������� �� ������ ,���"������ ��� ������ ������� � ������� ����� � #��� -�"�� �

.% � ������� �� ��� �� �� �������� /� (�� ��� � ���� �� � � !����0� 1�

,��� � '�2 �� ��� �� � ���� ��� ������� ����� � ��� ������������ ���� ��� �������

�� � �� � ��� �������� 3�� � ��� ��� � ������ �� � ��� ������� � � �� ���

��� � ������ ���� � ��� ������ ������� �������� ��� �� ��� � � ���� � ���������

���� �������� ��� ������ ������� ��� ��� �� �� ������� � ������ �� ���� /� �����

� ������ ���������� � ��� �� �� ������� ������� �� �� ��� �� �����

4 �� ���� � ��� ���� ��� � ������ ��� ��� ������� � ����� � ���� �������

����� ��� ���� ���� � � � ��� ���� � ����� ��� ��� ������� � ��� ������ � �

�0������ #�%�� ��� ������� �� �� ������� ���� ��� ����� ������ ��� �� ��� � �

� ��� ������� ! ��� ���� 5��� ��� �� �� ������� � �� � ����� ������

� � � �� ��� �������� ���� � ������� � �� )*+� k = 1 ����� �� ��������

���������� ������� � ������ ��� ���� k = |W| ����� ���� ����� � ����� ����

������ � ��� ��� ���� ��� ��� ������ k �� ��� ��� ���� ������� ������� ��� ���

����� � ������� � �� � ������ � ������ ������� ������ ��� � � �� �����

� �� �� k �� ����� ��� ��� � ��� � ����� ��� ������� ���

'6

��� ��������

�� ���� ������ ��� ����� ������ ���� � �� ���������� ��� ����� � ��� ����

������� ���� ���������� �� ������������ ��� ����������� ���� ��� ��� �

� ������� ���� ����� !�� �"��#$$ !�% ��&$'() �� #�$$'* +�,� -�� �. ���

/�� �� � �� �������� 0��� ��� ���� �������� �� ��� ���������� ������� ��� ���

���� &$ ����������

�� �� ����������� ��� ����� � ���� ������� �� 0��� ����� ������ 123 �����

�� � �������� ������ ��������� � ���� ���� "$$$$$ �������� ���� &"$ ������

/� ������� � ������ ��� ������ �� �� ������ �� ������� 45&$� �������� �� ���

6.��� ,���7 ���������� -�� ���� ������ ������� �� � �� ��� ����� �� &��#�5�

/� ����� ����� �� � ���� ��������� ��8����� �� ���� ��� �� �$$$ �� � ��

�� ����� ���� (��� ��� 0������ ����� � 153 ���� �� 6�7 6���7 �� 6����7 ��

���� 9����� �����

����� ������� � � �� ���� � �����

- ��������� ��� ���������� �� �:����;����� �� ������ ���� � �� ����� �����

������ ��������� �� �� �:����� ��������� ��������� /� ������ ���� ��� � ;������

�� ���� � ��� ��������� ��8����� ���� 8���� ������� �� ����� � ��������;�

����� �� ��� ���� �$&& ���� ��� �� ������ ��� ��8����� ;���� ���� 8����� -��

������ ��� ��8����� ;���� ��� �8��� � ��� ������ ���� � ������ ��� � �

;������<� ��������� ����� �� � ���������� �����< ������ ������ ��� �������� ��

'��� -��� � 1�3 ����� ������� ��� ��8����� ;����� ��� ��� ����� � �� ���

����� ���� �� �� �;��� ���� ��� ������ �������� ���� �� & � ��� ��8����� ;�����

�����< 8������ ��� ����� ����� ��� ��������� ����� ��� (��;�� �� �� ������ ����

���� ��� ����� ����� ��� �� ���� ������� ���� '���<� ���� ��� ���������� ���

���� �����< 8������ ���� �� ���;������ �;���� �� ��� ��������� ����� ��� !��� ���

��� ��� �����9���� �:������� ������� ���������� �����< 8���� ����;��� =����� �� ���

���� ������ ������ ����� �� ��� ������� �� ������ ���� �� ����������� �������� � ���

�������

�&

��� ��� ��� ��� ��� ��� �� �� ��� �����

��

��

��

���

�����������

������������

������������

���

�� �� �� �� �� �� �� �� ����

��

��

��

���

�����������

������������������ ���� ��

�������������

�������������

���

������ �� ��� �� ���� �� �� ��� ������� ��� ��� �������� ������� �� ���������� �����

����� �� ����� �� �� �� !����!� "���� ��� �� ��� #���� � � ��� � � ���� $��!�����

�� ��� ���� �� ��� �����% ���� ��&�! � ���� ��� ��&�! ���� �� ���� �� ��&�! �� ���

���"����� %����� �� ��� ���� "���� �� $ �����! � ������� ������� ����� ' ���� �

����� N (0, α · σ2) �� ��� ���"����� %����� �� ���� ������� �� ��� �(�!� �� ����!�����

)��� σ2 �� ��� % �� ��� �� ��� ���"����� %����� �� α �� ����� �� ��$��������� ���

����� !�%�!��

������ ��* � ����� ��� �� �� ���� �� �� ��� ������� ��� ����� ��������

������� ��� ����� �� α % !���� +� ��� ���� ��� !����� �� ��� ���"����� %����� � �

,(�� � �� *���� �� ����� �� ��� �� � �-..� �� ��� ������� ��� ���� � � ������ ��

�� .--- �--- �� /--- ���$����%�!�� 0� � � ��� �� � ��� �� �� ���� �� � � !&���

.--1 ���� α ≤ 0.5 �� �� ���� �� ����� �� ���� α > 0.5� 2�� ����!�� ����� ��

�� � ��� ������� ��� �� "���� ���� �� �� � � �����3 �� ����� �� ��!! ����������

���� '���!�3� �� ������ �� ��� �� �� �� !�� ���������! �� � � �����3 �� ����� � %�

! ��� ��%� ���� �� '���!�3� �� ������� ����� ��� �� �� ���� �� � � $$��(�& ��!�

4�1 �%�� ���� α = 1� 0��� ��� ����� �� �� ������� ��� ���� ��� �� �� ���� ��

�!����!� ����� ���� 2��� �� ��� ��� ��� ! ���� ���� �� ������� ��� ���%�� �!� ������ ���

������ $��� ��!��� �� &��& ����

������ ��*�� ����� ��� �� �� ���� �� �� ��� ������� ��� ����� ��������

������� ��� ����� �� !������ �� ��� ���"����� %������ +� ���� ���� ��� α % !�� � �

���� ������ α ���� ���� ��� ������ �� � �������

��

� �� �� �� �� �� �� �� �� �� �� �� �� �� �� � � � � �����

��

��

��

��

��

��

��

��

��

��

��

��

������������������ ��

�������

�������

�������

������

������ �� ��� �� ���� �� �� ��� ������ ������ ��� �������� ������� �� x�

��� � �� �� ��� ������� ��� ���� � � ������ �� �� ����� ���� �� ���� ��� ����!�"��

#� � � ��� �� � ��� �� �� ���� �� ���� ���� ��� ����� �� �� ��� ���$����� !�����

"����� �� �� ���� %�& ���� ��� !����� "����� � '� �� �� (� �������� ��� �� ��

���� �� � � ������ �� � �& �!�� ���� ��� !����� "����� � � � ����� � ��� ��

���� ��� ��!���� ����� ��� �� �� ���� �� �"����"� ����� ��� ���� ��� ������� ���

���� ����� ����

)� ���� ��� �� �� ���� �� �� ��� ������ ������� �� " ��"�� ���� ��������

���� ��* � ��������� ����� ���� +�������,� +�� "��,� +� '��,� +� ����,� +����, ��

+�����" ���-��,� #� "�� ����"� ��� ��� ����� ��� ���$����� !������ ����� � ��

�� ��� ��* � �������� ���' .���"� )������ ����� ���'�� ��� �!��� ��/� �*�"� ��

����"����� (� ���� �* ���'���� � � ����� ���� ���'�� �� �� �� � ���-� � �������

)� ��'�" �� ��� �����/ �� ������ �� ���'�� �� � ����� �� � ���-� � ������ �� �����

��� �������� �� ���� !��� � ������ ���� ������ ��� ��"��� �� � �������� �� �����

� ��������� #� ����� ��� ��$����� �� ��� ��������� ����� x �� ���' ���� " ��"��

���� ��� � '� � ������ � ��� ������ (� ��� ����� x � � ��� �� �� �� 0�� 1�� 2� �� %�

��� ����!�"�� )�� ����� � '���� α �� ��� "����� �� ��� ���$����� !����� ���� ���

�� �� �� �� � ��� ����!�"�� ��������� �� ��� ������ ������ �� � !� ���������

�� 3������ ���� ������ � �� ����� �� ��� �� �� ������ ��� �!��� �� �4���� ���

���"���� ���$����� !������ � ��� �� ��� ��!���� ������� ���' ������ �� �� � �

��

�� �� �� �� �� �� �� �� ���

��

��

��

��

�����������

���

������������������ ���� ��

�������������

�������������

�������������

������ �� ��� ����� ���� ��� ���� ��

��� ��� ���� ��� � ����� ��� ������

���� ������� � �� �����

���� ���� ���� ���� ���� ���� ���� ���� �����

��

������ ��� ��� ���� � � ��� � ��

��� ������� ��� ��� �� ����� p������

��� ���� ��� ���� � � ��� � �� ��� !��� ����� "�� ���� ����� �#$% ���� �� �� ����

��� ��������� ��� �� ���� �� ��� �����& ������� �� ��� ���������% ���� ��� �������

�� ��� ��������� ���"����� ��� ���� "�� ���� ������ �� ������ � ��� �����& ��������

'��� ��� �� ����� �� ������% ��� ��������� ��� � �����! ��� (���������� �� !���� ���

��� �����& ��� � �������% �� ���� ��� ���� � � ��� � �� ��� )##�� ����� ��� ��

����� *$ "��� x = 50 ��� ���� +#$ "��� x = 90� ��� ������ x ��(���� ��� ������

�(� ����� �� ���� ���� ��� �� ���� ��� ��������� �� �������� ��� ��� � ���� �������

���� ������� ����&� "�� ��� ���� � � ��� � "�� ������ "��� x "�� �������

��� ��(������� ������� ������� �����! ��� ������ ����� ����� ��� ������� � �� �

���� �� �� � ���"���% ���� ����� "� ��(����,� ���� ��� ���� ����� �� ��(���� � ����

������� �����& ���� � (������ �� ���������� �� ��� (��(���� ���� � ��������

������ �� ���"� ��� ��� ����� ���� ��� ���� ���� ��� ���� ��� � ����� ��� ����

������ ������� � �� ���� ����� �� ����� ������� �� ��� ������� � �� ���� ��� ���"���

��� ��,� "�� ��� �� �� )###% �### ��� -### ���(� ������� '� �� ��� ���� ��������

��� ���� ��� "�� ������ �� ��� ������ �� ��� ������� � �� ��� ��� ��� ������ ��

���"����% �� "�� �� ������� ��� �����% "�� � ������������ ��� �. ��� � �� ��� ���� �

��������

�/

����� ��������� �� ��

���� ������ ��� ���� ��� ���������� �� ���� � ���� � ��� � ��� �� � ��� �� k−1

���� � ��� ����� �� �� ���� � ��� ���� � ����� �� ����� ��� ������� ���� ���

�������� ��� �� ���� � ��� ��� ���� � ��� ��� ��� ���� �� ��� ��� � ������ �� ��

!�" ������� ��� ������ ��� ���� �� ��� ����� ��� ��� � ����������� p �� ���

�������� ��������� � ����� ��� ���� � ��� ���� � ��� ����� ��� ���#��� ��� ��$��

��� ����� �� ��� ���� ��� ����� �� ��� ���� ��������� α #��� %&&&� '! �� &�'

������������ ��� �� �� !�" #� �� ��� ���� ��� ������ ��� ���� #�� �����(�������

�� ��# �� )* �� ��� �������� �� �� ��������� � ��� ��� ���� � ��� ��� #��� �

����������� �� &�'� ��� ������ ��� ���� #�� ����� �� & #�� p ≤ 0.25� +��� ���� #�

���,� ���� �� ��� ����� �� ��� ���������� ��� �������� ����� �� �� � ��� ���

���� � ��� ����

-��� ���� ��� p �� � #��� �� . �� ��� ������ ������ �� ������ �� ��� ��������� �

���� ��� ��� ��� � ������ �� ������� �� � ��� p �� � #� �� ������� �� 1/k� #����

���� ���� ��� �������� ������� ������� � � ��� ��� �� ��� /����0 � ��� ���� ���

p �� � ����� �������� ������ ��� 1/k �� ��� �������� �� ���� �� ��� �� ���� ��� �

��������� ���� ��� ��� � ������� 1� ��� ��� ������� #� ��� ���� ���� �

2����� !�3� �� �� �� � � ��� ��� �� p �� � �� ��� �� � ����� ��� ������� �� ���

��� � ������� +����������� � � �(������� ����� ����������� ���� ��� �� �

������ �4����� #�� �� ����� ��� ������� 5� ����������� � ����� �� ������� k � ����

��� %�

5� ���� ��� ���� ��� ���� ����� ������� �� ���� � � � �(��������� ���

����! ������ � 6%78 #�� ����� �� ��� ������� ���������� �������� ������ �

���� �� �� !�7 ������� ��� �(�� ��� ���� ��� ��� ����� �� ��� ���� ����������

��� ��4���� ������� �� k �� �� �� �� !�79�: ���#� ���� � ��� ��� �(�� ���

���� ��� ��� ����� ��������� #�� ����� �� ��� k �� �� � �������� ��� ���� �����

#��� ��� � k ����� ��� �(�� ��� ���� � ����!� +����������� ��� ����� ����������

�� ��� � ��� ���������� ���� ��� �(�� ��� ���� #�� ���� ��� .�� �� #��

k = 10� � �� �� !�79�:� ���������� ��� �(�� ��� ���� ��� ��� ���� ��������� #��

!'

� � � � � � � �

������������

��

����������

���

� � � � � � � �

�����������

��

�����������

� �������

���

������ �� ���� �� ����� �� �� ��� ��������� ���� �� ����� �� ����

���� � �� ��� k � ���� �� �� � � ��� k ����� ��� ��������� ���� �� ������ !� ������

����� � � ���� ����� � �� � ��� ����� ������� O(1) ���"��# ����� $����%���� ���

�� ��� ���� �% ��� �� % ���� ����� ���� ���� �� k�

������� ��� ����� �� ��� ���� ���������� ��� �� ����� �������� �� ��� ���

���� ��������� ��� ��#��� ���#�� ���� ������ �� &������� ��� �� ����� ��������

���� ����� ��������� ���� � ��� ����# #� �� %�� � �� ����� �� ��� ��������� ����

�% ��� ������ ��������� � � � �������� !� ����������� ��� ������� � ���#�� ����

������ � ������� � ��� �� ���#� ��� ' �������� ��� ������� � �������� ����

������ � (����� ��� % "� ������� �� �������) �� ��� �� �� ���� ���# ��� ���� ��� ����

�% ����������� �� ���������� ��� � � *����

��� ������ ��

$�� #�� ���� �% �� ������ �� �������� �����#��� � � � �� ��� ������ ������� ��

��� ����� ����� ���� �% ����� %���� �� ��� ����� #��� �� �� � ����� �� �#����+�

��� �,������� $�� �� ���� � ������ #��#���� � ��������� �� '������"� -./� /.0�

����� � ���� � ������� 1�2� � � ������� ��� #�� ��� ������� �� "��� �� ��%���

� ���� �� ��� ����� # ���� &������� �� ����� �� ��� #���#������ �% #� ���� � #�

#��� ������ ���� ������� �� �� ���#� �� ��� �� ����� #������� ������� ���#�� �

���� �� �������� ���� ������ ��� � ��� �� �% �� ��� �� �����#���� �������

�3

���� ��� ��� �� ��� ��� �� ��� ��� ���� �������� ����� ������ �������� ������

���� !�� �"������# $����%��&&�� $��� �� �&# ���� ���� � ��������& ��&����� ���������

����� ��'� � �� �� &����� �� � � ���� ��(�# ) �� ������������ �� ��� ������ �������

����������& ���&���� ����� � � ��������� ��� ������ � � ������������ ��!��'����� �! � �

�����&���� �&�����*� � ���� ��������� ������� ��# )� !��'�&�(� ��������� +� ����

!��'�&���� � �������� '���& �� ��'����� �������� ������� ��������&� � ���� �������

������ ,-./ 0123 ��� � �&�� �&� �������� -./� 012# 4� �&�� ����&���� �� -./

012 ������ ����* ��&&�� 5 -/6 � �� ���&�(�� 7&��' %&��� ���� �� ���&� �� ����* !��

��� ���� %&�# ) � ���� ��� �! 5 -/6 !�� ������� � �� �� � ������� ��&���� �� �

���� %&� �� O(1)� � �� ����� ��� �� � � � �&� %&� ��&&������ ����� O(n) ��'�# ) �

�������� ��%������ �� ��� �� ��'�&�� ��� -./� 012 �*���� !�� � � ��8����'��� � ��

��������� � ��&� ��� &��� ��� ��!��'����� �! � � 8������ ��������# 2� !��� �� ��&����

����� 0���'�&� �� �&# ���� ��� !������ �������� �������� ��%�������# ) ��� ��������

��%������ ��8����� ��� ��� �� &����� '��� � �� � � &���� �! � � ����'����� � � ����

��%��� �! � � ����'����� � � ������ ������� ��� � � ����� �������# -� ��������� ���

��� �������� ��� �������� ����������� ��� ���������� �� � ��� ����#

) � ������� �� '�������� ����� ��� �� � � ����� �! ����� ��� �� ��''����� ���

��������� ����� � �� � �� ��&&�� ����� ��&� ��''����� ���������� ,$$93# :�� ��

�&������� ����� ���� �� ������� %�&� �! ����� ��&� ���������� !������ �� � � ���&��

��� �������# 2� ������� ����� 7��� �� �&# ���� �������� � ����� ��&� ����������

�� �'� ��&&�� ;91$ ,�#�#� ;��&�� ��� 9��������� ��� 1������ $���� 3� � ��� ����

���� !������� �� �������&�����# ) �� �������� ���'� �� ���������� �� ����� � � �����

�������# <�!��������&�� ��� ��&� ��������� ��� ����* ��� ����� �����'�� &��� � �

����� �������� � �� �� ��� ��������� �� $������ �#�#

=�� � � �*������� �! ��&������ >2?� �&& �������� ����� ��&� ���������� �� �'��

&��� � � ����� �������# ) � ����� �! ������������ ����� ��&� ���������� �� �'�� ����

�&��� ��� ��� ��� ��� �� ��� �� ��� �� &�� �� � � ��������& ����� �! ����� �������

&������ ,�� ��&& �� ������ ������� &������3# ) �� �� ������� &���� �'����� �! ����

������&�(��� ���� � � �&��� ������� �"&����� �@������ ��������� �������# ?�������� ���

������� ��� �� &���� �� ��&& ����� � � '������ ��'������ ����� �! �&��� �������#

�A

�� ��� ����� �� � ���� ���� �� ������ ��� ���������� � ���������� ���� ��

�� ���� �� ����� � ��� ����� ����� �� ����� � ��� ����� � ����� �� ������ ��������

� ���� ���� �� �� ���� �� ������ ��� ������� � �������� �� ��������

�������� �� ���� ������� !�� ��������� � ���� ���� �� ������� � ���� ���������

�������� � �� ������� ��������� �� ����"� ������ ��������� !��� ����

������ � ������� � ����� � ���� �� ������ ���� #�� ���� �� ��� ��$���

��� ����� ��� �% &'( ���� � �� �� �� ������ ��� ������� ����� ���� �� �� ������

��� �������) &�( �� ��������� �������� ���� �� � ��������� �� ��$���) ��

&*( �� ���� ����� �� ���� ������ �� ��� �������� ��� ��$��� &����� ���� ���� ��

� �� �� ���� ����� ������� � ���� ������ ������� �� �� ������� � � �����

������ ����� ���� �� � ������ ���� ������ ���� ��� �� ���� ����(� +�����������

��� ���� �� ��� ���� �������� �� �������� �������� �� ���� ������ �� ��

��������� ��� �� ������ ��� �� �� ������ ��� �� �������

��� ��������

� ��� ��� ��� �� ������ ���������� ���� �� ������� � �� �������� �� ��

�� �� ������ ��� ������� ������ ,� ����� �� ������ ���� ������� ��

�������� �� �� ������ ��� �� �� ����-�� � ���� �� �������� ������

��������� .������ �� ��� ����� �� ���� � �� ���������� ���� �� ������/

�� ����� � �� ���� �� ������� ���� ������� 0������ � ������� �� ���������

�� �� ���� ���� ������ �� ���������� �� ���� ������� �� ������ �����

��� ����� � �� ����/����� ������

�1

������� �

�������� ������ ��� ����� ���

�������� ���� �����

�������� ��� �� �������� ���������� �� �� ���������� ���� � � �������

��� �� �� �������� �� � � ��� �� ���� �� � ����� � ���� ���� �

���� ������� �� ����� ��������� ����������� ������� �� ����������� �� ���

������� ����� ��� �������� ������ ��������� � �� �� ��� ������� ��

������ �� � �� � ���� � ���� ������ � ������ �� �����!������� ��� ��

�������� ���������� " !�����#� � �� ����� � �� ����� �� ����� ����

���� ����������� �� ���� � ����� ������� �� ��� �� ���� ����� ����

����� ���� ������� $ � � ������ � %���� !����� �� �� �� � ��

� ������ ���� ���� � ����� �� �� ������� � ����� �� ���� �� ����

� ���� ����� �� � ��� ������ ��� ��� �� �� � ������������ ����������

��� � �� �� ��� �� ��� ������ � ���������� ��� �� ������� &��� ��

���� � ���� � !����� �� � ���� ������ !����� �� ������� ���

�� ������ '� ���� � �(� �������� ������� ����� �� ��� �� �� �� �����

�������� ������ �� �������� � %����� �� ��� �� ���

)*

��� ����������

�� ���� ��������� � ��������� �� �� ��� ��������� �� ������ ���� ��� ���� �� ���

�������� �� ������ ���� ��� ���� �� ������ ���������� ��� ����� �� ���� ������

��������� �� ���� ���� ���� ��� ��� ���� ��� �!��� ��������� ��� ���� ����

����� �� ���� ������ �"� #������ ���� �� ������� ����� �� ����� �� �������

������ ��� �� ���$�� �� �� �� �� ���� ������ ��� �������� �%� ���� ����� �� ����

����� ������ ���� ������ ��� ����� ��� ���� �� �� ���� �� �� ������ �����������

&������ �������� '������� '������ (�� ���� �''(� ������ �� ������ ������

���� ��� ���� �� !�� � ������ ���� ���� �� ���� ���� �� ��� �� ������ ���� ��

��� ������� ��������� ������

'� ��� ���� �� k ���� ������ � ����� � ��� �� ���� ��� ���� ���� ����

��� �������� ''( ����� �� ����� ��� ��� ���� ����� ��� � ����� �� �� ��� �����

)� ����� � ���� *���� ��� ���� �� ������ ������ �� k ������� ��� ������

��� ������� )�� �����$� �! ���� � ��� �� ����!���+ ��� ,��������� ��!�������

�� ���$�� �� ��� ���� ����� ��� ���� -��� ��� ���� ������ �� ���������� ���

k ���� ������ '�� ��!������� ���$��� ����� ���� �� ����� ���� �� �����

������ �� ���������� ����$��� �"� .��� �/���� �� �0���� ������ ���� �� ������

k ���� ������ ����� �������

)� ���� ���� -�� ������������ ��� ������ ���$ ��� �������� ������� ���� -���

��� ���� ������ ���� ����� ���� -��� ������ �� ����������� ���� ���� �� ���

����� )��� �� �� ������� ����� ��������� ����������� �����*��� ��� ��

1���� 2������ 345� 5"� 6�� 78� 4�9� )� ���� ���� ����� ������������ ��� ����

����� �����! ������ ��� �� ���� �� ����� ���� *������ ��������� ��� ���� ��

���� �� ��� ����� ��� ������� ���� ����� ������������

�� ������ ���� ��� ������ ''( ����� � ���� �� :��� �� ��� 3";9 ��

�� � ��� ����-�� �� �� �� ����� �� ���� ������ �� ���� ������� �������

�� '����� %�%� &�� �� ���<� ������� �� ����� )�� ������� ����� ������� �

����� !� ��� $�����=������-� �� �� ��� ��������� �� � � ��- $������

�! ���� �� r �������� ��������� ��� $������ ���� ��� r $�����=������-� ���

%8

�� �������� � ����� �� � � r� ������������� ��� ������� ������ ����� ��� ��

����� ������� ���� ����� ������ �������� ���� ����� ��� ������ ����������

������ � ��� ���� ������� �� �������� ���� ���� � ��� � ������������ ��� r1

��� r2 ������� ��������� � ����� � ������� ���� � ������� ������ �� � � r1

����� � ������� ������ �� � � r2� ����� �� �� �� ��� ����� ����� ������� !�����

�� � � r1 + r2"� � ������� ��#���� ���� ��������� ������� �� ����� �� �����

����� ����� � ���� ��� ���� ����� ������ ������$�������� ������ � ��� ���

����� � ������� ���� ��� � ��� � ������� ������ �� � � r1� �� ���� ������

��� ����������� ����� ����� �� ��� ����� ����� ����� � r1� �� �� � �������

������� �� ��� �������� ��� ����� ����� ����� � ����� ��� ������ ����� ������

����� r1� ��� ���� ������� ������ �� r1 + 1 � r1 + r2� � ��� ����� � ������ ���

����� ����� � r2� ���� ��� ��� �� ������ ������ ������� ���� ������ ��

����� ��� ����� ���������� !�" %� �� �� ������ ��������� � ��&��� ����� ���� ����

� ���� ������ � ��� ����� ������ !'" ��� ���� ��� ����� ����� ��� ��������

����� �� ����$���� �������� ����� �� �������� �� ���� ����� � ���� ���� �����

��� ����� �� ��������� ��� ����� ��� ����� ������� � ���� ���� ����� !("

��� ������ ����� ����� ������ � ������� )*�'$��������

%� ���� �������� ����� �������� ��� ��������� �������� �� ���� ���� ����

���� � ���� ��� ���� ����� ����� ��� ������ ��� ���� ����� ��� ���� ������� ���

� ����� ��� +� ������,� � ���������� �� ����-

��� ��������� � ��� ���� � ��������� �� ��� ��� ��� � �������

��� ./0$001 ���� ��� ������ �� �� ��� ���� ./0$001� �� ��� �������

�� ������ �� ��� ��� 2�����$ $���$���3 001 ������� ���� �� 4567 ����� ������

������ ��� ������ � � ��� ����$����$���� ��������

� ������� �� � ����� ������ +� ������ ��� ������� 001 ������ �� 4'87

��� � ������� ./0$001 �������

��� ������ +� ����� �� �9����� ./0$001 ������ ��� ������ �� � � ��$

����� ./0$001 ������� :� ������� ��� ����� � �� )*�'$����� �� ��� ��������

�����

�������������� +� ���� ����������� � ������� ./0$001 ������ ���

(�

��� �������� ����� � � �� ��� �������� ��������� ��������� ��������� �� ����

� ��� ����� ���� ��� ��� �������� ��� �� ������� ��� ��� �������

��� ���� � ��� ������� �� �������� �� ������ ������ �� �������� ���������

������������� � ��� �� � ���� ��� ������ ��! ����� �� � �� �� ������

���� "� ������ ��# �� $�� �� ������ %&�'��! ����� ��� ������ %&�'��!

������ "� ������ ��( �� ���� ��� �������� ��� � ������ ������ !��������

������� ��� ��������� �� ������ ��)� ������ ��� ������� ������� ��*� +� ����� ��

������� ��� ������� �� ������ ��,�

��� �����������

"� ���� ������� �� �������� ��� ������ � � ������-������ %&�'��! ������ ����

�� ������.� ����� ��� ��� �������� ����

����� ������ �� ������

��� ������� ��/��� � ������� ������ %&�'��! ����� ��� � ������� ������ %&�'

��! ������

��������� � 0������ %&�'��!1 � ������ ��������� ���� ��������� ���������

�������� � ������ �� � � ���� � � ��� �� ������ �������� �������� ���������

������������ �������� ������ ���

• K ←�������1λ�� �� �� �� ����� � �������� ��������� λ ��� ������ � ��� �

������ ��� K!

• Isid ←��������K,D, sid�� �� �� �� ����� � ��� � ������ ��� K� � � ���� � �

���� ��� D ��� �� �������� � � ���� � ���� sid! "� ������ � ������ ���������

����# Isid! $�� sid ��� ����� �� �������� � ���� %� ��� �� 1, ..., k �� ��� sid

� � k ���� � ����� �����������!

• I ← ���������{Isid}1≤sid≤k�� �� �� �� ����� k ����#�� ��������� �� � k ����

� �����! "� ������ � ������ ������ ��������� ����# I!

• τw ←����������K,w�� ����� �� ��� � ��� � ������ ���� K �� � ������

� �� w� �� ������ � ������ � �� τw�

• ID(w) ←�������τw, I�� ����� �� ��� � ������ � �� τw �� � ��� I� ��

������ ID(w)� ���� �� ��� � � ����� � ������� �� �� � ����� ��

���� ���� � ��� ��� ������ � �� w�

��������� � �������� ���� � � ����� ����� ����! ���� !������"�� !���

����� #����� ������ � � � ����� � � ��� ����� ���� �� ����������

���������� ���������� ������� ������� ���� ���������� �������� ����� ���

• K ←��� ��1λ�� ����� �� ��� � ������� ��������� λ �� ������ � ��� �

������ ���� K�

• Isid ←����������K,D, sid�� ����� �� ��� � ��� � ������ ���� K� � � ����� ����� ���� D �� � ����� � � ���� � ���� sid� �� ������ � ������ �������"��

��� Isid� $�� sid �� ����� "� ������ � ���� �� �� �� 1, ..., k �� ��� sid

� � k ���� � ����� �������%����

• I ←����������{Isid}1≤sid≤k�� ����� �� ��� k ����� �������� �� � k ����

� ������ �� ������ � ������ ������ �������"�� ��� I�

• τw ←����������K,w�� ����� �� ��� � ��� � ������ ���� K �� � ������

� �� w� �� ������ � ������ � �� τw�

• ID(w) ←�������τw, I�� ����� �� ��� � ������ � �� τw �� � ��� I� ��

������ ID(w)� ���� �� ��� � � ����� � ������� �� �� � ����� ��

���� ���� � ��� ��� ������ � �� w�

• τadd ← ������(K, f, fid)� ����� �� ��� � ��� � ������ ���� K� � ���� ��� f

�� �� ������ fid� �� ������ � ��� � �� τadd�

• (C ′, I ′)← ���(τadd, C, I)� ����� �� ��� � ��� � �� τadd� � ��� � ����� ����

���� C �� � ��� I� �� ������ � ������� ��� � ���� ���� C ′ �� � ���������� I ′�

��

������ �� ��� � ��� ����� �� ������� �� ���� ��������

• τdel ← �����������(fid)� ����� �� ��� �� �������� �� ��� ��� �� �� �������

fid� �� ���� � ������ ����� τdel�

• C ′, I ′ ← ������(τdel, C, I)� ����� �� ��� � ������ ����� τdel� � ��� �� ��������

���� ���� C ��� �� ����� I� �� ���� �� ����� ��� �� ���� ���� C ′ ��� ��

����� ����� I ′�

����� ������� � �� � �

������ ������ ����� ��� ����� ���� �� �� ������� � ��� �� k ���� ����� �

������� � ��� = {��1, ...,��k}� �� � � k ���������� �� ���� !�� � �"� ����

� �� � ������� � ���� �� � �� ����� #����� ��� ������ ��� $�� ��� � ��� �������

%��&����� ������� � ��� �� ���� �����%��� � �� ���� !�� ��� �� %�� � ���'

����� #����� ��� ���' ���(������ #����� � )��� ���� ��� ��� *� ��� ���� ��&� � ��

��� �������+�� � �� �� ���� ��� ����� $�� ��� ��� ��� � ��� ����� ��&��&�

��� ����� ��� � � %������� �� ���� ������ �� ������ ���

• ���� � %�������� *� ��� ��� ��� ������ ��� ���% %�������� ��� ��������

��� ���� � �� �� ����� $�� � ��� ���� %��%��� ��� ����������� ������ ��

*���� ����,� � ������� ��� ��� ����� �����%��� ���� !�� ��� ����� ������*��

����,� ���� �� ���� ��� ���� !�� ��� ����� ��� ����,� �

• ���� � %�������� *� ���� ��� ��� ��� ������ ��� #���� %�������� ��� ���

����� ��$�� �� �� ��� ��� ������ ������ ����� �� ��� � -� ������� ����

���� ��� ��� ��� ���(������ ��$�� �� �� ��� ��� ������ �%���� ���� �� ���

����,�

�.

����� ������ � ���

�� ����� ��� ������� �� � ��� ������� ��� ������ ������������������� ��

��� ��� ��� ������� ������ ��� ��� ��������� ������� �� ��� ������� ���

���� �� ��� ����� ��� �� ���� �� ���� ������� ����� ����� ����� ��� ���!����

��� �� ������ "������

#�� $%&'�������� ��� ������� � ���� �����(� �� ��� ���"�!� �������� Lsetup

�� Lquery ����� ������� ��� ����� ����� ���"�!� ����! ����� �� ���� ���������

#�� ������� ��� !�������� ���� ������! � ���"� ��� ���� ��� ������ �� Lsetup

�� Lquery ���� �� ��� ������� �� ��� ������� �� ������ ������� ������"�����

�����" �� ����������� ������ ��� �� � )**#+� �� !��� � ����������� �,������

� ������-

��������� � )$%&'�������� ��� �������+ ��� � �������� �������� �������

��� ������������ ������� ������� �� ����������� ������ ������ ������ ��

�� �� ������� ���� � � L = (Lsetup,Lquery) �� ��� ����� ��������� ��� k ��

��� �� ��� �� � �������� ��� � �� G� � ����� A � �� ����� S� !�

�"�� ��� �����!��� � ��#

• ����G,A(λ)# G �������� ������ ��� K ← ������(1λ)� A ������� k �������

����� �� � "��� D1, ...,Dk ��������� n � "��� � ��� ��� �� G� G�����$�� ��� � ���������� C � �� $���� Ii ← �������(K,Di, i) ��� ��

1 ≤ i ≤ k� %��� A ��� $����� �� �� ��� �� $�� � &������� ���

��� &����� A ����� �� ����� ����� τw ← �����������(K,w)� � �����

τadd ← ������(K, f, fid)� �� ����� ����� τdel ← ����������(fid) ��� G�������� A ������� ��� b ��� �� ���$�� �� ��� � ��

• �����G,A,S(λ)# A ������� k ����������� �� � "��� D1, ...,Dk ��������� n �

"��� � ��� ��� �� G� G ���� ���� ��� ���$�� �� Lsetup �� S� S �� ����� �

�����$�� � ���������� C∗ �� A� %��� A ��� $����� �� �� ��� �� $�

�� � &������� ��� ��� &����� S ����� �� ��� ���$�� �� Lquery ��� mathcalG�

� �� ����� ������ ����� ����� τ ∗w� � ����� τ ∗add� �� ����� ����� τ ∗del

�� A� ������� A ������� ��� b ��� �� ���$�� �� ��� � ��

./

����� ��� ���� ��� � ������� �

���� �� ����� �� ��n �ni� ������ �� ���� ���� ��� ��i�N ��� ��� ������ �� ���� ����D �Di� ���� ������� �� ��� ��i�C ��������� ���� ������� ��W ��� ��� �� !����λ ����� �� ���������K ������ ��� ���sid ���� ������ ���� ��L ���"�� � �� ��� �� ��� �" ��� ��� � ��� �� � �� � ��� � � ��� �"A (Ai) ����� ���� �"�������� �� ��i�I "����� ����w ��� ���f ���� ���fid ��� ���� ���ID(w) ���� ���� ���� ���������� �" ���� ����� � wFID � �� ����� �� ��� ���� ���τw/τadd/τdel ������#���#������ �����ζ ������� �� ��� ��� ��� � �� � ��� ���� ��� � �� ���Q $���� ��� ���� �" ��������� ζ ����m ���%������ $���� � &�

x$← X x � �������� �������� ���� ��� X

F (·)[1 : x] ��� ���� x � �� �� ��� ������ �� ����� �� F'� ��������� ������ ��� �� ����� $��

�� ��� ���� �� L����� � ����� �������� ������������ ������ �� ��� ��� ���

��������� A� ����� ������ � ��� ��������� S ��� ����

|Pr[����A(λ) = 1]− Pr[�����A,S(λ) = 1]| ≤ negl(λ).

����� negl ������ ��� � �� �� ���� ��������

����� �������

(�� ���!�� ����) � � �� ����� ��� ���� �� �� ���� � ��� ������ ����� �� ��� �

����� ����

�*

w1 �w2 ���� ���

��� ������� ���

w1 ��w2 ���� ���

��� � �� �����������

w1 ��w2 ���� ���

��� � �� ����� ��������

���� � �� ������ ������ �� ������������

��� ������� � �� ����� ������

�� ���� ��� �� �������� ������ ��� ����� ������� ! ������ �� "��# �� $� ���

������� %& ! ������� '�� �������� ������ �� (�������� �� � ������� (������ �

�� )������� *+�+ �� ����� F �� � ,������� ���� ����� )-��

.� ��� ������� ������+ � /������ w ��� ��� ������������ $�� ������$��� ID(w) ��

�����0�� �� � ������ �( (w, fid) ������ '�� ������ ������� ���� w ��� � /������

�����$� /�� 1����+ Ka �� )������� *2 ��� � ��������� ������ 1����+ c �� )������� *2�

'�� �,�� ��� /������ �����$� /��+ ��� ���,�� ��� $�� ��� fid ∈ ID(w) �� ���������

� ������ ��������0�� �� � ���� ������������ ������ ⊥����� ����� ��� k ���+ � /������ w ���������� k ,������� �( ID(w)+ ������� ��

ID1(w)+���+IDk(w) ⊂ ID(w)� -������� ���� ���� (w, fid) ���� �� ������� � �����$�

������ c ∈ {0, ..., |ID(w)|}� '� ���,��� ���3���� �� ��� �������+ ���� �� �����

������� ���� ��� ������� ������� (�� ��� /������ ��,� ��� ���� ��� �� ��� �����

��� '��+ ��� ������ ��� �� ������ �� ������ ����� ����� ������� ��� ��� /�������

�� W � !��� /������ ���������� � ������ ��������0�� �� 0 1�� ���������� �� ����

� �1�22� !,��� ���� ��i ��������� � /������+ ��i ������,�� ��� ������ ������ �(

���� /������ (��� ��� ������ �����+ ��� ���� ������ �� �� ����� |IDi(w)|� '��

������,�� ������ ���� �� ��� ������� ������ (�� ���� /������ �� ��i4� ���� 1����� ��

������ � �� ��� ������� ������2� '�� ������ ����� �� ���� � �1�2 ��� ���� � �1�2

��� ������ �� ��� ��� ��� �� �� ��� �5 ���� $��� ��������� w1+ ��������,����

6��� ���� ��� ���� �������� �� � �� ����� ��� �� ���� �� �� ��������+ ������

��� ����� �( ��� ���� ���� ��,��� ���� ��(�������� ���� ��� ����� �( ���� $��� ���

��� ��� ��������� � ������� ������� �� �������� ���� �������� ��� �������������� !��� "#$ �� ��� ����������� �� %�����

��

�������� �� �����

��� ��� ��� ����� ����� ���� Ka ← �.��(1λ) Kb$← {0, 1}λ

� ��� ������� �� ������ ����� T, T+ ���� �� T [w] = 0, T+[w] = 0 ��� ���w ∈ W��i(1 ≤ i ≤ k) �

��������� �� ���� ��� Li

��� w ∈ W �K1 = F (Ka, 1||w) K2 = F (Ka, 2||w)� �� c = T [w]� �� T [w] = c+ |IDi(w)|��� fid ∈ ID(w)�

l = F (K1, c) d = �.��(K2, f id)�� c = c+ 1��� (l, d) ��� Li

������ ��� ���� �� D ����� �

� ���� D � � �� �!� ����� Li ��� �������� �� �"��� ������� ���� ���� ������� � � �� �!

��������� � ��������� I��������� � ��������� I+

��������� � �� I−

��� ��� (l, d) �� ���������� I[l] = d

���� I, I+, I−

�� ������� �� ��� ��# $� � ��� ��� ���������� ������ ���� �� ������ �� ���

��� �������� �� �"��� ���� %�#�# ���� ������� ������� &'' �����( ��� ����� ���

�������� �� ��������� ������������# �� ��� ��� � �� �� ���� � ������� ��

�������� ����� �� ���� ���#

�� ��� �)������� �� �� �*�� �� ������� ����� �� �� ������ �� ����� ��

������� � +,-. ��� �� !/�,0������� ������#

12

�������� �� �����

������ ������ �

����� w��� K+ = F (Ka, 3)� K

− = F (Ka, 4)��� K1 = F (Ka, 1||w)� K2 = F (Ka, 2||w)��� K+

1 = F (K+, 1||w)� K+2 = F (K+, 2||w)

��� K−1 = F (K−, w)

��� (K1, K2, K+1 , K

+2 , K

−1 ) � �

������ ��� � ��� ID(W )�� c = 0 ���� d = ⊥�

d = I[F (K1, c)]fid = ��.���(K2, d)�� fid /∈ I−�

� fid ��� ID(W )�� c = 0 ���� d = ⊥�

d = I+[F (K1, c)]fid = ��.���(K+

2 , d)�� fid /∈ I−�

� fid ��� ID(W )��� ID(W ) � ��

��� ��� ��� � ����

����� � ���� ��� ��� �����

������ �

��� ���������� ������� ��� ��� ��� ��������� � ������ ���� ��������� ��

��� ��� �� ��� � � ��������� �� ��������� �� ���� ����� � ���� λ� ��

��� �� ���! ��������� �� ���� ���������" ������ ���� ��� � �������� � ���

�� � �� �� ����� ���� ��� ������ ��� ����� ���� ���� � ���� �� #$%� &%'"

�� ���� �������� (� ������ ���� ������ ���� ��� ����� � ����� � �� �� �� "

����� ������� ������� ��� ���� �� ���� ���������� � ������ � ��

� �� ���! �� ��� (� ���" ��� �� ���! �� ��������� �� �� ����� ���������"

���� ��� � ��� ����� ����� � ���(� �� � n� �� ������ ��������� (���� ��� � ��

������ ��� ���(�" �� ��� ��� i�� )1 ≤ i ≤ n* �� �� $ �� ��� ��� � � (��� fid = i

������� ��� ���(�" �� �!��� �� ������ n = 10� ��� ������ 0110000001 �����

+,

�������� �� �����

��� �������� ��

����� (f, fid)�������� � ���� L�� K+ = F (Ka, 3) �� w ∈ f �

�� K+1 = F (K+, 1||w)� K+

2 = F (K+, 2||w)� �� c = T+[w]� �� T+[w] = c+ 1l = F (K+

1 , c)� d = �.��(K+2 , f id)

��� (l, d) ���� L� ��� L �� �� ��� ��

�� ��� (l, d) ∈ L�� I+[l] = d

���� ������

�� ��

����� (f, fid)�������� � ���� L�� K− = F (Ka, 4) �� w ∈ f �

�� K−1 = F (K−, w)� l = F (K−

1 , f id)��� l ���� L

��� L �� �� �� ��� l ∈ L

��� l ���� I−

������ �� �� ��

������ ������ K

� �� K1$← {0, 1}λ

� �� K2 ← �. �(1λ)� ������ K = (K1, K2)

�� ������ ������ �� �� �� � ��� � ! "� ����� L �� � ���� �# ���$�� ����%����$

���%� &��� '�(��$ �� ����� n &���) �� ����$�� #�� � ��%��% ��! *���� � ���� ����

��� �� ����$� L #�� �%� ��!

�#�� �&������$ ������+�����$ ����� #�� ��� ������� �� W � ��,� %������ ��� ��

�%���� ��( ��� ��� �� ����� ��( ���� �� �����! -�� � (���� ��� �����&�.

/

�������� � ���������

� ���� K,D,W , L, sid, n������� A

� ����� K �� (K1, K2)� ��� Kshuffle = ��(K1, 1)� ������ � ���� A �� ����� |W|�� ������ � ������ �� = 1� ��� w ∈ W ��

� ������ � ������ i = 1� ������ � n��� ���� ���� γ� ��� f ∈ D ��

�� w ∈ f ���

� ��� γ[L[i]] = 1

�� i = i+ 1

�� α = ��(K1, 1||w)� β = ��(K1, 2||w)�� κsid = ��

′(β||sid)[1 : n]�� ��� γ = γ ⊕ κsid

�� ��� A[�(Kshuffle, ��)] = (α, γ)�� �� = ��+ 1

�� ������ A

��������� ������������ ������ �� �� ��′ ��� ��� ������� �����������

�� : {0, 1}λ × {0, 1}∗ → {0, 1}λ

��′ : {0, 1}λ × {0, 1}∗ → {0, 1}N

� �� ���� w � ������ �� α = ��(K, 1||w)� � !"�!# �������� " �����

��� ��� ��� �� ��� � �� ���� ���� �� ���������$� �� ����������������$��

%� ���� ��� ��� � ���� &�' �������� (��� ���� W � �� ��)���� �� ��

��$������ ���� � W � ������� �� �� ��� �� ��� ��*����� �� +��������� ��

���� ���� ��� ��� �� ����,���� ���� �� ��� ���� ��� ����� �� ���� �� ���

����� ��� W � +� ����*� ����� ����� ���� ���� � ���� ����� ���� ���

����� ��� ���� �� ��� �� � � ������ ��� �� ���� �� W�

-!

�������� � ����������

� ���� {Ai}1≤i≤k

������� I� ���������� �� ��� �� ������� I� ��� 1 ≤ i ≤ k ��� ����� Ai �� (αi,1, γi,1), ..., (αi,|W|, γi,|W|)

� ��� 1 ≤ j ≤ |W| ��� ��� α = α1,j ����� ���� α1,j = α2,j = ... = αk,j�

� ��� γ =k⊕

i=1γi,j

� ��� I[α] = γ

� ����� I

�� �� ���� � ����������� ��������� � � ���� ��� ��������� ���������

� � : {0, 1}λ × {1, ..., |W|} → {1, ..., |W|}

��� �� ��� ��� ��� � �� ��� � �� ��� ��� ��� � ���� �� ��� ����� �� � �(K1, 1)!

���� ��� � ��� ��� ��� ��� � ��� ��� ������ �������"������ ���� ���� ��� �����

�� � ��� ��� �� �����!

#��� ���� �� ��$���� ��� � �� ����� � ��� ������� ���%���� W ! &���%�������� �� �� ���� ��� �� � �� ����� � �� �� ����! &��� �� �'�� � ���������������

���� � �� ����� W ! (���� W ��� )��� ���� ���� ��� �� � �� ���� �� �� W ′ ←������(K2,W) ��� ������ W ′ �� �! �� � W �� ������� �� � *��� ���������

W ′ ��� �� ���� �� �� W ← ������(K2,W ′)!

� ��� ����� � ��������� �� ���� ������� k ����� �� ���� ���� ���� ��

����� ���� ���� �������� ��������� ��� ��������� ����� �� �� �� ����� �� �

��������� ��������� ������ �������� ������ ������ ������ �� ����� k ������ ����

�� ����� ��� ���� ����� �� ��� � �� ���� k �������� ������ � ������ α �� ��������

! �� k �������� ��� ������ ������ γ �� �������� ! ������������ �� ��� ��� ����

���� α ����� �� ���� �� ���� ������ �� "��� ������� ��� ��� �� ���� �� ��� ������ ��

#�����$ ����� % �� �������� &!� �� ���� k �������� ��� ������� �� �������� ���

'() ������� ���� ��� ������ ����� * �� �������� &!� �� ���� ������� ��� ����

+

�������� � ���������

� ���� K,w, n������� τw

� ����� K �� (K1, K2)� ��� α = �� (K1, 1||w)� β = �� (K1, 2||w)� ��� κ =

k⊕i=1

�� ′(β, i)[1 : n]

� ��� τw = (α, κ)

�������� �� ������

� ���� τw, I, F ID������� ID(w)

� ����� τw �� < α, κ >� ��� γ = I[α]� � �������� � ����� ��� ID(w)� �� γ �= ⊥ ��� � ��� γ = γ ⊕ κ� ��� 1 ≤ i ≤ |γ| ��� �� γ[i] = 1 ��� � ��� i � �� ID(w)

��� ID(w)

������������ � ���� � �� ��� ������ ��� � � ��������� ��� ��� �� ��

������ ���� �� ������ ��������� �� ��� �� ��� ������ ��� �� �� �����

������ ���� � ��� �������� ���� �� � �� ������ ���� � ������ ���� �� � (α, κ) �����

� ����� α ���� �� ��� �� ������ ��� ������� � ��� �� ��� ������ ��� ����� κ ���� ��

��� �� ������� ��� �������� �� � ��� ���� ��

������ ��������� ��� �� �����!� � � ������ ���� τw = (α, κ) ���� � ���

�� �������� ��� � ��� �� � α � � ����� � � � ������� ��� ���� �� � � ��� κ ��

������� ��� ��� ���� � �� � "# �������� �� ����� ��� ������ ������

���������

����� ��������� �� $�� � ��� ���� ��������� ��� � ����� ����� ���� %��� � �

���� ���������� � ������ �� �����!�� � ������� ���� %��� � � � ����� ���� �� � �

������ ��� � ������ &������� ���� �� ����� � n �� �������' ��i(1 ≤ i ≤ k) � ������

()

�������� �� �����

��� ��� ��� ����� � ��� ������ �� K ← ����(1λ)

��i(1 ≤ i ≤ k) �

��� n′i � ��.���(K2, ni)

���� n′i � �

���� (n′1, ..., n

′k) � ���� ��

���������� �� ���� ���� L��� K ′

shuffle = ��(K1, 2)�� 1 ≤ j ≤ k�

nj = ��.���(K2, n′j)

��� n =∑k

j=1 nj� n′ =

∑i−1j=1 nj

�� 1 ≤ j ≤ n�aj = � ′(K ′

shuffle, j)�� n′ + 1 ≤ j ≤ n′ + ni :

������ aj � L�� 1 ≤ j ≤ ni�

��� fidj = L[j]cj = ��.���(K2, fj)���� (fidj, fj) � � ��� ��

Ai ← ����������(K,Di,W , L, i, n)���� Ai � �

��� I ← ����������({Ai}1≤i≤k)���������� �� ���� �������� FID���������� �� ���� ��� C���������� �� ���� ����� Q�� ���� �������� (c, fid)�

��� c ��� C��� addr �� ��� ������ � f��� FID[fid] = addr

��� n �� ��� ���� ������ ������� n, I, FID, C, Q

ni ��� ����� �� � � ! � ���� ����� ��� ���� ���� ni � ���� ��! "��� �� ���� ���

���� �� ��� ni ��� ��� ���� �#����� � ����� n! ������ � ��i ����� � ��$ $����

ni ���� �� ��� n%��� �����# ��� ����#��� � ���&��� '�!�!� ��� ���� L �� ��#����� ()!

* ������� ����� ����#������� $� ��� ������ �����%����� ���������� � ′

����� ���������� �� �� � ���� � �� �� � ������ ���� ��� � � � �� ��� ����� � ���� �����

����� ��������� ���� �� � �� ���� � �� � ������ � � ���� ��������� �� ��� ���� ���� ���

�� ��� ����� ��� �� ���� �� ���� � ���� ���� �� �� ��� �� � � ���� ��� �� ����� �� � ��

��� ����� ��� �� �� �� ��� ���� �� ���� � ��������� ��� ������ ����� �� ��� � � ����

�� � �� ���� ���� ���� �

++

�������� �� �����

������ ������ �

���� ������ �� �

���� n �� ��

��� τw ← ����� ����(K,w, n)���� τw �� �

ID(w)← �����(τw, I, F ID)���� ID(w) �� ��

��� �� ��������� �����������

�′ : {0, 1}λ × {1, ..., n} → {1, ..., n}

�� ���� �� �������� (1, ..., n) ��1 ������� ������ n1 �������� ���� �� �����

��������� ��� ��2 ������� ������ n2 ���������� ��������� ��� �� �� ������� ���

������� ��� ���� ���� ��� ���� ��� �� � ��� ! "������� ��� ����� ����� ����#��

����� �������� ���������� ��� ���� ��� �� � "������ � ������ ��� ����#�� �����

�������� ����������� ��� ������ �� ������ ����#� ��� ������������ ��������� ����������

��� �� ������ �� ���� ���� � ������������ ������� � ����� ��� ���� �� ���� ��

��� �������

��� �������� ��� $����� �� ����� ��������� ��� �������� ����� ��%���

����� ����� ���� �������� � ��������� ��� ����� ����� ����� ��������

����� � ����� ������ �����

&�� ������� '$�(��) ����� �� �#������ ���� ��� ������ '$�(��) ����� ��

������� ����� ���� ���� ��������� *��� ��������������� �����������+� ��� ����(

���� �#������ �� ����� �������� ��� ����� �������� ,� ��� �������� �� ���������

�����-�#������ ���������-���������

./

�������� � ������ ��� ��� �� ��������

� ���� τw, I, F ID������� ID(w)

� ����� τw �� < α, κ >� ��� γ = I[α]� ������ � � ��� ��� ID(w)� �� γ �= ⊥ ��� � ��� γ = γ ⊕ κ� ��� 1 ≤ i ≤ |γ| ��� �� γ[i] = 1 ��� � �� FID[i] �= ⊥ ��� ��� i �� ID(w)

� ������ ������ I[α][i] �� I[α][i] = I[α][i]⊕ 1

�� ������ ID(w)

�������� �� �����

� ���� K, f, fid,W , ζ������� τadd

� ����� K �� (K1, K2)� ��� Kshuffle = ���(K1, 1)� ������ � �� ���� γnew �� ����� |W|� ��� 1 ≤ i ≤ |W| ��� �� W [i] ∈ f ��� � γnew[���(Kshuffle, i)] = ζ[i]⊕ 1

����� γnew[���(Kshuffle, i)] = ζ[i]

��� c = ���.���(K2, f)� ������ τadd = (c, fid, γnew)

���������

���� ��� ������ ��������� �� ��� � �� ������ � ���� ��� �� ��� �

����� �������� �� ������ ��!" #��� �� ��� ��� ��� ���� �� ������� ���

������ ������ �� � �����$��� ������ $����� �� ��%���� ��� ���������� �� ��� ��

���� &�� ���� �� '' �� ������� ()"

��� ���� � ������ ��������� ��� ��� ��� ��� ������ *�� �� �������

+(

�������� � ���

� ���� τadd, C, I, F ID������� ⊥

� ����� τadd �� (c, fid, γnew)� �������� �� � ���� i = 1� ��� ���� ��� ���� γ � I ��� �� γ = γ||γnew[i]� i = i+ 1

� ��� c �� C� �� addr �� �� � ���� ��� �� c� �� FID[fid] = addr

��� ���� � � ��� ��� ��� �� ������ ������� � ��� �� ��� �� ��������� �� ���

��� ������� � �� ����� �γnew �� �� ���� ! ��������� ������ �� ��� ��� ��

� ����� ���� ��"� �� �� W � #����"� γnew �� �� �� ����"��� �� �� ���� ��" ��

���� ����� ����$� % ��&��� ���� ����"�� � ��'����� � �� ������ �� (n+1)�

�� � κ1, ..., κk � � �&��" ��"� �� �� W � �� ��� � ���� � �� ��� �$���� k× |W|���� � ���′� ����� �� ���(� ������� ��� ����" &������� �� �� ����� ���

��� ������� ��� ) ���&�� ���� �� ��� � ���(� ����� � �����" �� � �� ��

���(� ����� �� ����"�� � ��"� � � γnew � � � ������ � ��� ���� ��� ���� ���

� ��� � �� ��"� �� ����"��� � �� � �� ����� *&��" ��� � �� �������� �� ���

���� ��+��� ,�� �����&�� �� ��" �� � �� ��� ����"�� �� -� �� � ����� ���

�� ���� ��� �� �� � .� )�� ������ ��" �ζ �� �� ���� ! ������� �� ��

���� � ����� � /��� � ���(� ����� ��"� ��&� ���� �����&��� � �� ��� �����

���(� ����� � ������ � ��"� � � �����'��� ��� ����

��� ��������� �� 0� � �����&��� �� ��� ��� τadd = (c, fid, γnew) �� � �

��� �� ���� c �� �� �� � ��� � C ��� ���� fid �� �� �������� ���� ���"

FID� ��� ��� ������� ���� �� � γnew �� �� n+1 �� � ���� �$����� n(�� �����

�� �� ����$ ��� �� ���� �� ������ �� ������ � �� ����$!�

������ ���� �� ������ ��������� ��� � ���� ��� �� ����" �� ����(

���� � �� ��� �� �� ������

������� ��������� ��� 0� � �����&��� � ���� ��� τdel = fid �� � � ���

�� ����� �� ��� �� ��� �������� fid �� � C� ��� ����� �� ���" � fid �� �

.

�������� � �����������

� ���� fid������� τdel

� ������ τdel = fid

�������� ��� ������

� ���� τdel, C, F ID������� ⊥

� ������ c� �� � ������� �� FID[τdel]� ������ FID[τdel] ���� FID

��������� ���������� FID� � ���������� � � � �� ������ �������� ������� �� ������

������

���������

����� ��������� ��� ������ �� ����� ��������� � �������� ���� �� �� � ���

��� ������� ��������� �� �� ��� � ��� ����� � ��� ��� �� ��������� �� ��������

���!������ �� �� � ��� ��������!����������� ��������� �� �� ��� � ��� �����

� ��� ���!������ ���������

����������� ��������� �� "� �#� ��������� ��� ��� ��� ��� ����� � ��

���� �� ������#� �� ��������� �� ���� �� ���$�������� ����� ����� �� �� ����

���� �� ����� � ������ � �� � � ���������� �������� �� ��� �� ������

%������� ���������� �� � ����� � &�� ���� ��� ��� w ∈ W � �� ������� �

m$��� �� ��� �� �������� m �� ���� ��� � '� � |W| ×m ��� ������ M ��� ��

���������� (�������� �� ������� �� ���� �� � �� M � ��� ��� ���� �� MT � �

|W|$��� ����� �������� �� |W| �� ��� �� ��� �� � �� �� �� �����#��� �������

�� |W| ��� ��� � ���� ����� ���� ���� '������ �� ������� ��� �� ���� �� MT

��� ��� �� �� ��� �� ��� �� ��� m ��������� �� )����� m ���� �� MT * ���� ��

����� Q�

+,

�������� �� ����� ���� ��� � ��������

������ ������ ��

���� ������ �� ������ n �� ��

��� τw ← ����������(K,w, n)���� τw �� ��

ID(w)← ������(τw, I, F ID)���� ID(w) �� ��

��� ������ ��

���� ���� �� ������ n �� ����� ζ = Q.���()�� ζ �= ⊥�

���� ζ �� �������

���� ����� �� ����� �� ���� �������� ������ �� ������

������� �������� ����������������� ��� �����

��� ζ = ���.���(K2, ζ)��� n = n+ 1��� τadd = �����(K, f, n,W , ζ)���� τadd �� �� ��� ��

�(τadd, C, I, F ID)��� n = n+ 1

����� ������ ��

��� τdel ← �� �������(fid)���� τdel �� ��

�� ���(τdel, C, F ID)

��� ������

�� �� ������ ��� ����� �� � �� ��� �� �� ������� ��� �����! �� ��� �������! "�

���� �����#� �� �������� �� ��� ������� $%�&��� �����

'� ���(�)� ��������� �� ��� ����� ��� ��*��� �� �����"� +��� "� ������ Lquery

���� Lsearch! Lsearch ��� Lsearch,�

-.

�������� �� �����������

���������� �� |W| ×m �� ����� M���������� � ������ i = 1��� w ∈ W �

��� β = �� (K1, 2||w)��� M [i] =

k⊕j=1

�� ′(β||j)[n+ 1, n+m]

i = i+ 1��� M = MT

��� 1 ≤ i ≤ m�M [i] = ��.���(K2,M [i])

���� M �� �

��� 1 ≤ i ≤ m�Q.������(M [i])

• Lsetup({Dj}1≤j≤k,W) = (k, n, {|cj|}1≤j≤n, {fidj}1≤j≤n,W)

• Lsearch() = (ϕ�, ρ�)

• Ladd(f, fid) = (|f |, f id)

• Ldelete(fid) = fid

����� k, n, |cj|, f idj,W , ϕ�, ρ�, f, fid ������ ��� ��� ���� �� ���� ���� ������ ���

����� ���� �� ���� ����� ��� ������ �� �� ������ ��� cj� ��� ��������� �� ��� cj�

��� ������� ��������� ��� � ��� ������� ���� ��� ����� ������ � � ��� ���� � ���

���� ���� ��� ����� ������ � � ��� ����� ���� ��� ��������� �� �����!������� ���

����� ������"

����� �� �� ���,���′,���, ��� ��� ������ ���� ����� ���������� ���� ���

������ �� (Lsetup,Lsearch,Ladd,Ldelete)������� � ����� ������� ������������� �������

������ �� ��� �������� ������

����� �� ��� ��������� ���� #��� ���� �� $�������� %&� A �� ����� ({cj}1≤j≤n,

{fidj}1≤j≤n, {Ij}1≤j≤k, {τj}1≤j≤q)" �� �������� �� ��� ���� �� ���������� A ���� ��

����� k �� ������ �������� {n′j}1≤j≤k ������ ��� ���� ����� ��� ��� � ����� Q ����

� ��� ������ ���� m ������ ��� ����� ����� ��" '� ������ � � �������� S �� ���

()

���������� ����� ����� � �� ��������� ��� ��� ��������� ({n′∗j }1≤j≤k, {c∗j}1≤j≤n,

{fid∗j}1≤j≤n, {I∗j }1≤j≤k, {τ ∗j }1≤j≤q, Q∗) ����� ��� ������ �� Lsetup� Lsearch� Ladd ��

Ldelete� �� ����� ���� A ������ ���������� ������ ����������� ���� �� ������

�� ����� ����� A ������ ���������� ������ ({n′∗j }1≤j≤k, {c∗j}1≤j≤n, {fid∗j}1≤j≤n,

{I∗j }1≤j≤k, {τ ∗j }1≤j≤q, Q∗) �� ({n′

j}1≤j≤k, {cj}1≤j≤n, {fidj}1≤j≤n, {Ij}1≤j≤k, {τj}1≤j≤q, Q)�

�� ��� ��������� ������ ���� �� ��� ������������� ��! �� ������ ����������! ��

���� ��� �������� �� ������������� ��� ����� ��� �� ������ � negl(λ)�

��������� {n′j}1≤j≤k" S ������� ������� � #�� K∗ �� ������ λ �� k ��������

n∗1, ..., n

∗k� $�� ���� ������� n∗

i (1 ≤ i ≤ k)� S ���� n′∗i = ���.���(K∗, n∗

i )� %� ��� ��

������� (n′∗1 , ..., n

′∗k ) �� (n′

1, ..., n′k) ��� ������������� �� �� A�

��������� {c∗j}1≤j≤n" $�� 1 ≤ j ≤ n� S ������� ������� � �� ������ c∗j �� ������

|cj|� %� ��� �� ������� {c∗j}1≤j≤n �� {cj}1≤j≤n ��� ������������� �� �� A�

��������� {fid∗j}1≤j≤n" $�� 1 ≤ j ≤ n� S ������ ���� fid∗j = fidj�

��������� {I∗j }1≤j≤k" S ��������&� k ������ {I∗j }1≤j≤k �� ��&� |W|� S �������

������� |W| �� ������� {α∗j}1≤j≤|W| �� ������ λ �� k·|W| �� ������� {γ∗

c,j}1≤c≤k,1≤j≤|W|

�� ������ n� S ���� I∗c [j] =< α∗j , γ

∗c,j > ��� 1 ≤ c ≤ k, 1 ≤ j ≤ |W|�

%� ��� �� � ������ �����'����� ��������� {I∗j }1≤j≤k �� {Ij}1≤j≤k ��� �������'

������ �� �� A�

��������� Q∗" S ��������&� � m × |W| �� ������ Q∗ �� ����� ���� %� ��� ��

������� Q∗ �� Q ��� ������������� �� �� A�

��������� {τ ∗j }1≤j≤q" S �������� I ← �� ���({I∗j }1≤j≤k)� $�� 1 ≤ i ≤ q�

�������� �� ρ�

• �� ��� i�� (���� �� � ������ (����� %������� �� ρ��

� �� ��� i�� (���� ��� ����� ������� ������ ���� S ������� ������� ��

α∗i ���� {α∗

j}1≤j≤|W| �� ��� �������� �� ��� ���������� ���� ���� (����

������� � ����� ���� ������� ��#��� ���� α∗i ��� ��� ��� �������

������ $��� ϕ� S �������� ��� ������ ������� �� ��� i�� (����� ����� ��

ID(wi)� �� ��������� � �� ������ γ∗ �� ������ n� ��#��� ��� j�� �� �� γ∗

� ) �� j ∈ ID(wi) �� * ���������� S �������� κ∗i = γ∗ ⊕ I[α∗

i ]� S ����

+)

τ ∗i =< α∗i , κ

∗i >

� �� ��� i�� ���� � ��� ��� ��� � ����� ����� ���� � ����� �� �� ���

j�� (j < i) ����� S �� τ ∗i =< α∗j , κ

∗j >�

• �� ��� i�� ���� � �� ��� ����� ���� S ������� ����� � ��� ����� γ∗new

�� ������ |W|� ��� � ��� ����� c∗ �� ������ |f |� S �� τ ∗i = (c∗, f id, γ∗new)�

���� ����� S �� I[α∗j ] = I[α∗

j ]||γ∗new[j] ��� 1 ≤ j ≤ |W|�

• �� ��� i�� ���� � � ������ ����� ���� S �� τ ∗i = fid

�� ��� � �� S ������� ������� ���������������� ����� ���� ���� ��� ������������������� ����� � �� ��� ���������� ����� ���������� A ������ ������������ ��� {τ ∗j }1≤j≤q ��� {τj}1≤j≤q�

�� ������ A ������ ��������� ��� ��� ��� ��� �� ��� ���������� ���� ���

��� ��� �� ��� ���������� ������ ��� � ����

|Pr[����A(λ) = 1]− Pr[�����A,S(λ) = 1]| ≤ negl(λ).

��� ��������� �������

�� ����������� ��� ������ � !"!!# ����� ��� ��� �������� ����� �� $%&'

(�� )�)* ���� +���� %�&�)� �� ��� ������� � ������� ��� ����������� �� ���

� � ����� �� ���� �� ����� �,� ��� ���� ���� ����� ��-����� ������ �������

.�� ��� ������� ��� ��������� �� �� ����� /��� �0"10&2 )�%234, �������� ���

536 7.� ������� ����� 5�8� #��� ���� ����� �� ��� 9���� � �� ������� �� 82

����������

�������� �� ���� ����� ��� �� ����" ���� ���� ������� � �� � �� �����

)�%� ��� .������"8:�%:�): ���������� ��� ��������� ���� +����� ������ ��

#��� ���� 9�� ��������� �� ������� �� � ������ ��� #����"8: ���������� ���

�������� �� ��

0%

����� ��� ��� ������ �������� � � ������� ���� � ������ ���

���� � � ���� � � � ���

��������!" !#$$$ !%&#'�% ���������" �#$$$ �&'#()( ���������" �#$$$ *(&#$*!������!" !#$$$ %%�#�!$+��,�-��!" !#$$$ *#�*�#%(�

0 5

10 15 20 25 30 35 40

1000 2000 3000

Inde

x si

ze (M

B)

# of files

Extension of [27]Our Scheme

��� ����� ���� �����������

0 5

10 15 20 25 30 35 40

Abstract Email WebpageIn

dex

size

(MB

)

File type

Extension of [27]Our Scheme

�� ����� ���� ������������������

.�-��� ��� ��� ������ �������� � � ������� ����/ ��0��

�/������� �� � ��� � ��������� ���1 ���� ��� ��� �� ����� ���1 �� �����1������

�1� +��,�-��!" � ������ �� ���� �/������� �� � �23��� ��������� ���1 ���� ���

��� � ���,�-� � � ,��� ��� 1 ��,�-�� 4� ��� �����# �� ���� � 5�6� �� �������� �

*$$$ � �� � ��-���1 � �����

.�-��� ��� ��, ��� �1� ����/ ��0� � � ��7����� ���� � ������ � ��0�� � ��� �6,��� 4�

.�-��� ���8�9 �� ���6 �1� ������ � ���� ���� �� � !$$$ � �$$$� +� ��� ������

�1�� �1� ����/ ��0� � � �1 ��1���� -� �� �������6 � �1� ������ � ���� ����� . �

�� ��1���# �� �1� ���-�1 � ��� �����- �:���� � �1� ������ � ���� ����# �1� ��������

� �1� ���-�1 � ��� �����- ����� � �1� �������� � �1� ����/ ��0�� . � ;�(<# �1� ��������

� �1� ����/ ��0� �� ��� � �1� �������� � �1� ������ � <5�6� ��# ���������> ,�����

4� .�-��� ���8�9 �� ���6 �1� ���� � ������ � ��0� 8����# �1� ������ � � ��� �� �1�

� ������ �9� +� ��� ��� �1�� �1� ����/ ��0� � ;�(< -� �� ���1 �1� ���� � ������ � ��0��

����������� ���� !"�#������ ���� �"����������� ���� $"

*�

0

0.5

1

1.5

2

50 100 150

Tim

e (m

s)

# of results

Search - Extension of [27]SearchToken - Extension of [27]

Search - Our SchemeSearchToken - Our Scheme

��� ����� ���� ���� ��� ����� k = 2�

0

0.5

1

1.5

2

1000 2000 3000

Tim

e (m

s)

# of files

Search - Extension of [27]SearchToken - Extension of [27]

Search - Our SchemeSearchToken - Our Scheme

�� ����� ���� ���������� ��� ����� k = 2��� �� ��� ���� ���� ��� �����

0

0.5

1

1.5

2

2 6 10

Tim

e (m

s)

k

Search - Extension of [27]SearchToken - Extension of [27]

Search - Our SchemeSearchToken - Our Scheme

� � ����� ���� ���� ��� ����� �� �� ��� ����� ���� ��� �����

������ �� ���� ������ �������� � � ������� ������ �����

��� � �� � ��� �� ��� � ������ �� ��� � �� < �!� ��� ������"��> #���� ���� � $�

����%��� ���� � ���� ���� ��##�� ����� ��� � ������ � ��� �������� ��� �!� ��� �� ���

�!� �� ��������� &! � ������� ��� ����% ��'� � �� ������ �� ����#������ � ����

� ������ � ��'�� (� ��� ������ ����% ��'�� � �� ������ ��� ������� ���� ���� � )*+,�

������ �� �� ������ ��� � � �#��� ������� ��� ����������� � �##������ �� �����

���� "��� ��� ������

������ �� ��# ��� ��� �%����� � ���� � � � ������ -���! � � ��.����� ���$���

� ������ �������� ���� � ������ � ��'��� � k ������� � ���� ���� "�� �!#� � �� � �

�.��� ��� ������ -���! ���� � � $ �� �������� / ������ -���! �� �#���"�� ��� ������

� �� �������� � ��� ������� ��� ������ �������� ����� ���� � #����� ��� �����!�

����� ���! ������� ������ ����!#�� � ��� ������ �%������ ��

(� ������ ��0�1 �� ���! ��� ���$�� � ������ ������� �� � 23 � 423� 5$�� ���!�

2

��� ���� ����� �� �� ���� �� ��� ����� ���� �������� �� �������� ��

�� � �� �� ����� �� ���� ������ ��� ���� ����� �� ����� �� �������

��� �� ��� �� ����� �� ��� �� �� ���� ��� � � ���� �� ����� �� ���

��� �� �� �� �� ���������� � � ������ �� ����� �� ���������� ����� ��� �� ��

���������� ������� �� �� �� ��������� �� � � ��� �� � �� �� ���� � ��� ������

��� ��� ��� ��������� ��� �� ��� �� �� �� ��������� �� ����� !���� ��

���� �� ������ �� ����� �� �� ������� " � ��� #$%&� �� ����� �� ��� ��� ��

���������� ������� �� �� �� ����������� ��� �� �� �� ����������� '���(� ���

�� ����� �� �� #$%& �� �� �� ������� �� �� � �� �� �� ��� ���� ���� ��

� � ����

)� ��� � *+,-�.� � ���� �� � �� �� ���� ��� ��� �/// �� */// ���� �����

�� � �� �� ����� �� ��� ���� ����� ��� 01 �� �� ���� ��������� ����� ���� �

��� � ��� ��� � �� ������� � ������ 2 �� � ���� ��������� � ��� �������

�� ���� ���� )� � � ���� �� ����� �� �� ��� ������ ����� �� �� � �� ��

���� ���� '� ����� ��� ������� �� �� �� ��� �� ����� 345 ����������

�� 345 ��������� ���� ����� �� ����� ���� �������� ��� ������ ��� ����

���� �� ����� ������� ��� #$%&� ���� �� ����� �� �� �6���� �� �� �� ���

���� � �� ��� ��� �� � �� �� ���� ��� ������ ������ �� ���� �����

2 �� �� �� � � ��� ����� � ������� ���� �� #$%&�

'� k ��� ���� �6��� �� ����� ���� �������� �� �� � � ���� 7� �

��� � �� 7������� ,� k ��� ����� ��� ��� 345 ��������� ���� ��� �

*+,-�. ����� �� �� ���� 8 ��� � ���� �� ���� ����� 2 �� �� �� � � ���

�� ��� ���� ���� �� #$%& �� ��� k = 10� 9�� ���� ���� k ��� � �� �� ����

�� ���+����� �������������

��� � *+0 ������ �� �� ���� �� ��� �� ���� 2 ��� ���� ��� �� ���� ���

��6��� � ��� �� ������� �������� �� �� ����� ��� )� �� ���� � ����

�� �� ��������� �� ��� �� �� ���� �� ��� ��� ���� ��������� )� ��� �

*+0-�. ��� ��� � *+0-�. � ��� � ���� �� �� ���� �� ��� ��� ���� ��������

��� ��� ���� �������� �� #$%& ��������� ������� �� ���� ��� ��� ���

2 �� ��� ��� ��� � � ��� �� ��� �� ��� � �� ������� �� �� ���� ���

00

0

5

10

15

20

25

30

500 1000 1500

Tim

e (m

s)

# of keywords in added file

Add - Extension of [27]AddToken - Extension of [27]

Add - Our SchemeAddToken - Our Scheme

���

0

5

10

15

20

500 1000 1500

Tim

e (m

s)

# of keywords in deleted file

Delete - Extension of [27]DeleteToken - Extension of [27]

Delete - Our SchemeDeleteToken - Our Scheme

���

������ �� ���� ������ �������� � � ������� ������ �����

����� ���� ����� ��� ������ ������ ����� ���� � ��� � !�� � "�� ��� ����� ���� ���

������ ����� ���� ��� # �� ����������� � ��� ���#�� � $��� �� �� ��� %��& �����

��� ������ �� '()*� +����� ��& �� ����� ��� �� �,����� ���� ������ �

��� ������ ��

-���� ��� � ������ ��� ��� � �$ #� .���� �� �� ��� '�)*& � �� ��� � �� � �$ � ��

� ��� �,������ � ������ �������

������� �� + ��� �� ���� ������� ������ & ������� ��� /����0 �����

���� �� � �� �������� �� '1& 12& )�& ()*� +�� ����� �� '1* ��� '()* � � ������ ���

���� �������� � ������ ����� ����� ���� � ������� ����� +�� ����� �� '12*

������� ��� ����� � ���$��� ������ ������ #�� ������� � ���� ��������� �������

� � � � ��� ������� � '1* ��� '()*� 3� ')�*& ��� ���� � ��� ��� � � ��� ����

�������� ������ 4���� �� ����& ����� ������� � �� � ���� ���� /� �� ���� �!� �

������� ����0 #�� ��$� ��� ����� � ������� � �����

�� ���� ��� � ��� �� �� ��� �� 3� '�5*& .�� � ��� 6����� � � ������ � $���

�� ������ � �����7 ����& ����� ������ � ��#���� ����& �����# � ��� ��8������

������ � ����� ����& ��� �#����� ������ � ��#���� ����� ����� 3� ')5*& ����

�� ��� ������ ���� 7����� � ��� � �� ����� ������ � ����� ����� 9�� :� �� ���

� � ������ ��!!� $��� �� ����� ������ �� ';;*� <��$�� ����� �� ����� ��� ��

;

���� ���� �� � �� ������� � ��� ����� ����� ��� ��� ��������� ������

���� �� �� ��

�������� ������ �������� ������ �� ���� ��� �� ���� �� ����� ��� ������ �� ����

���� ��������� �� �� � ������� O((r/p) log n) �������� ������ ���� ���� ��� ������

�� ���� ���� ������������� �� �� � ������� O(r/p) �������� ������ ����� ���� r

���� � �� ��� ������ � ������ ������� �� p ���� � �� ��� ������ � ���������

��� ��� ����� ��� ���� � ��� ����� ! "# !$ �� %��� ����� �� �&���

'���( # ! � ��� ��� ��� ������)� ��� ������ ������� �� �� ��������� ������ �

�������� ��� ������ *� ��� ��� ���� # ! �� #+ � ! ��� � �,����� �����

������� ��� ����� ������� �������� ��� ����� ���� ��� ������ ������� ��������

��� �����

��� ��������

#������ �� ��� ��������� �������� �� ����� ����- ��� ��������( ��������

���� ���� ��� �� ���� ���������� ��������� � � ����� ���� #+ � ! ��������

��� �- � ���� �� ��� ��� �������( �- ���� ������ � � ������ ���������

���-�(� �� ��� �������� ��� ����� ������( ����� ����� � �%������ .�� ������

#+ � ! ������ ��������� ��� ������ �� ���� �� ����� �������� /������� �����

������ ��� � �������� �� ����� ����� ���� ��� ��� � ���� ��0��������� ��� ���

�� ������ �������� 123���������� �� ��� ���� �� � ��� ���� ��� �� ������ ���

������ ���������� �� ����� � �� �� ��)� �� 0���� ���� �� �� ������� ������� ���

����������

��

��

������� �

�������� ������ ��� ����� ���

���� �� ���� ������

�������� ���� �� �������� ��������� ������� ������ ��� �� ������� ��

���� �� �������� ��� �� ���� ���� ������ ���� ������ ����� ���� ������

���� �� ��� ���� �� �� ����� ����� ������� ����� �� ���� ��� ���� ���� �����

�� �������� ��� � ���� ���������������� ����� ����� ��� ������ �� ������ ��

����� ���� ������ �� �� �� ���� ������� ���� �� �������� ��������� ������

���� ������ �� �� � ������ ������� ���� �������� ��� !�����" ��� #� �

$�� %���������� &!#$%'� �� ����� ��� ������ �� �������� ���� O(ld) �� �

������� ���� ��� ������ ������ �� l �� ��� ���� ������� �� d� (� �� � ����� ���

���� ����������� ���� ��� ��� �� ��� �� ��� ���� ������� (� ���� ������ ��

������ ��� )�������" ��� #� � $�� %���������� &)#$%'� �� ����� ��� ������

�� �������� ���� ���� ���� �� � �������� ���� ���������� �������� ������

��� ���� �� ������������ �������� ��� ��������� ������ ���� ��� ���� ���

��� � �� ������� �� *+�+++� ��� ����� �� � ��� ������ ��� �� ����� �� 1 : 3.4

���� d = 1 �� 1 : 20.4 ���� d = 2�

,-

��� ����������

�� �� ��� �� ���� � ������� �� ����� ����� ���� ��� ������� ��� �� �����

���� ����� ��� ��� �� ���� ���� !�� "��������� #� !"$% �� ����� ����

����� � ������� ���� � �� �� �� ����� �� � ��� ������� � &������� �� ���

� �� ������� '� ��� ����� ���(�� � l �� ��� � �� ������ � d% ��� ��)�� �� ��

����� ����� ���� �� O(ld)% ����� ���� ���� � ��� ��(� �� �*� �� �� ����

���� �� �* ������� )��� )�����(�� �� % ����� �� ��� ������ �� �� ��� ��

��� �� �*� '� ��� ������% �� ����� ��� +������������ ���� !�� "���������

#+ !"$ �� �)���� ��� ���� ������ � ,� ������� � �� � �� �� � ��� ����

�������� #��(�% ��))�� -�(��� �� $ �� ���� ��� ����� ����� � � �*�)���%

(���� � ����� .��)����/% � ����� ����� .�)����/ � ����� � �� ��� ����� �� ��

� !"� 0�����% + !" ����� ��� ����� ����� ������ �� � ��� �� ��� ��������

�� �� �� )�����(�����

��� �� �� ��� ������ � �(����� � ������1 '� !������ 2�3% �� ���� ��� ���

+ !" ��(�� '� !������ 2�4% �� ����� � ��)����� ���������� �� ����� �����

�������� �))���� ��������� ���)� # !!-$ ��� �� ��� + !"� '� !������ 2�2%

�� �*���)������� ��)��� ��� ������� �� �* ��� �� � !" �� + !"� ������%

�� �))���� ��� ������ �� !������ 2�5�

�� ��������������� ���� ��� �����������

�� �� ���� ��� ������� � �� ������ ������� ��� ���(� 6��� ��( �� �78�%

���( �������� ��� �� ���� � ������1

• '������1 '��� ��� ������� ������� �� ��� ���(�

• +�������1 +����� ��� ������� �� ��� ���(�

• !����������1 9������ � ������� �� ��� ���(�

��������� � #- �� +������$ ��� ���� ������ ������ �� ������ str1 �� str2

�� ��� ������ � ������ �� ������ �� �� ���������� � �������� � ����� �� str1

�8

���� str2� ������� � ED(str1, str2)

�� ��� � ������� ���� �� ���� � ���� �� ����� �� ��� ����� ��� ��

���� �� ���� ����� �� �� �� ������� � �� �������� �� ��� ���� �� �������

����� ��� ���� ������� ����� ��� ��� �� �� ���� ��� ���� �� ���� �� ��

����� ���� �� ����� ������� ����� �� �� ������ �� ���� ���� �� ��� ��� ����

����� �� �������� ��� �� ������� � � �� ������ ��!�� �� ���� �� � �

��"�� �� ����

��������� �� #���� $� ��� %�& ���� � �� ���� w� � ��������� D ��� ��

���� ������� d� ��� ���� �� ���� �� �� w � FDw,d = {w1, ..., wp} ��� ���� ��� ���

1 ≤ i ≤ p wi ∈ D ��� 0 ≤ ED(w,wi) ≤ d�

%����� �� ��� ����� � ������� D �������� ���� ������� ����� ���� ��'

����� �� ���� �� ��� �� � �� �� ��� ()*������()+ ����� ����� ��� ���'

���� ,� -� � ������ ����� �� .�%/� �� ���� �� ��� �� FDcomputer,1 = {computer,

compute, commuted, computes, computers, commute}� 0�� �� ������ � ����

�� ���� �� 1� 2��"��� �� ��%/ � 3� � ��� 4115� �� ���� �� ��� �� ��

Fcomputer,1 = {computer, ∗computer, ∗omputer, c∗omputer, c∗mputer, co∗mputer, co∗puter, com∗puter, com∗uter, comp∗uter, comp∗ ter, compu∗ ter, compu∗er, comput∗er, comput∗r, compute∗r, compute∗, computer∗}� �� ����� �6� �� � �������� ��������'��� ������� ��������� 0�� �� ������ � ���� �� ���� �� ,7� �� ��� �"����

��� �� ����!� � ����� .������ � � �� ��� �������� ��� ��� �� ��������

� �� ��� ����� ��� �� ����� ��� �������� �� ��"����� � .�%/ ���� �� ������

��� ������ #�� �� ���� ��� �� %���� 8&�

��� ��� ��� ��� �

0�� ���������� � �� ���� ���������� � ������ ���� ��� #�%%�& ������ ��

���� �� ������ 8',� 0���� ��� ���� ���� �� �� ����������� .�� 9����� .��

:���� ��� /��� %���� ;�"����� �� ������ �� .�� 9���� ������ � ����� ��

��� .�� :���� �� ���� .�� :��� ��� �� .�� 9���� ������

1,

������ �� ��� ����������� �� ��� ���� �������

����� ���� �� ���� �

��� �� ���� � �������� �� ������� �� ��� ���� �������

������� � �� �� �� ����

������ ��� ��� �� � � ������� ��� �� �� ���������� �� ������� �

FILE = {(fid1, f ile1), (fid2, f ile2), ..., (fidn, f ilen)}

����� fidi (1 ≤ i ≤ n) �� ��� ������ �� �� �� filei �� n �� ��� ������ �� ����

��� �������� � � �� � ! � "� " ����! �� ����� � ���� � ���� � #��$��%

#�����% #�&���% ���� ��$� �$�� ���� �� ���� �� �$�� �� ��� &��� ��$� ������� �� ��� ���

'�� texti �� ��� ��$� �� �� filei�

(�&�� FILE

���&�� TEXT = {(fid1, text1), (fid2, text2), ..., (fidn, textn)}

)*

���� ������ �� ��� ������� ����� ����� �� ��� ������� ����� �� ��� ����

������ � ��� � ���������� �� �������� ��� �� ����������� ����������� ��� ����

������ �� ��� �� ����� ���������� �� �������� �� �������� � ���� � ����� ��� listi

�� ��� ���� � ������ ���� �� texti�

������ TEXT �

������ LIST = {(fid1, list1), (fid2, list2), ..., (fidn, listn)}����� ������ !��� �� ��� "�#$ �� ��%� ������ �� #����� &� �� ���� ���

���� !����� �� ������� ��� FIDword �� ��� ��� � ��������� ����� �����������

��� ���� ������ ��� ��� word�

������ LIST � � �������� D� �� � �������� ������ ��� ������ d�

������ INDEX = {(FDword,d, F IDword)}word∈list1∪list2∪...∪listn �

��� ����� � �� � ������ � ��� ���� �� ��� ��� �� ���� ��� ��� � �� ���

����� � �� ���� �� O(1) �����

��������� ��� K �� ��� �� �� ��� �� �� ������� �� ���� �� �� ���

�� ��� �� ��� �� ������ ��� ���� �� ������ ����� �� ������ ��� ! ������

"��#�$ FILE% INDEX �� K�

�#��#�$

INDEXEnc = {{(���(K,w))}w∈FDword,d

,���(K,FIDword)}word∈list1∪list2∪...∪listn

�� FILEEnc = {��������}file∈FILE

�� ��� �� ���� ���� ����

� ��� &��� �� ��� '#� ��� ����� � w% ��(��� ��� ���� ��� ��� )#��� ����

�� �� �) w �� '#� ��� ���� ���#�����#���� "� �#� ��% �*�� �) ��� '#� ���

����� � w �� �����% �� ��� � ����� ����� ��� � �� �� � ��#�� ��#�� ���

�� ����� ����� � ������ �� ��� )#��� ����� � ����

"��#�$ ����� � w% ������ � D% �� �� ��� ���� ������ d′�

�#��#�$ FUZZY = FDw,d′

������ �� � �*��� +��#� ��� �� , �*��� ) �� �� ���� ��� �������� ����

-.

������ ��� ��� ��� �� �� �� �������� ��� �� � ������ ��� �� � ����� ��������

��� � K ��� FUZZY �

� � � FUZZYEnc = {���(K,w)}w∈FUZZY �

��������� ���� ��� ��� ������� �� ������ ��� �� ����� � �� �� ��������

��� ���� ������ �� FILE ′Enc!� ��"��� ������� ��� ���# �� ��� ��#����� ��

�� $%& �������

��� � K ��� FILE ′Enc�

� � � FILE ′ = {���(K, fileEnc)}fileEnc∈FILE′Enc

� � ����� ������ �� ���� ������ ������� ����

'�� � $���#� (��)���� ����� �� �������� ����* � �� �� ��� ������ ��� �� �

�� ������ ��� ���+� ������� ���������

��� � INDEXEnc ��� FUZZYEnc�

$������ ,�� ���� wEnc ∈ FUZZYEnc� '�� � $���#� (��)���� ��� �� ���� ��

wEnc �� �� ����* ��� ����� �� �������� ��������� FIDEnc,wEnc�

� � � {FIDEnc,wEnc}w∈FUZZYEnc

����� ��� ���� � �� ����

-�� �� ,$$& ��������� �� ,�# �� ./0 �� � ��#�/��)�� ������� �� ����� #��������

# ���� ������� ������ ����#��� ���������� �� ��� ��� �� � ������� ,$$& ������ ��/

���� �� �� ������� ����#�� ���� ���# �����#������ ������)��� ����* �� � ���� � ���

������� ���

��� ��������� � �����

�� ��� ������� �� ��� � �� �� ����� �)������ ���������� ������ 1,$' ��� �,$'�

��� ���#���� ���� ���������� ���# '22� ��� ����# ��� ������� �� �� � �� 0

��� 3�

4.

��� d = 1 ��� d = 2

��� ��������� � ���� �������� d = 1 � d = 2

������ �� ���� ������ �������� � � ���� ������ � ����� ���� ����

����� ����� � �� � ������

� ���� ��� �������� !" ���� ��� � �����# $% !"% !$ ��� "% ���&��������� '#�

������� ������ � ����� ���� ��� �� ��� ��� ���� �� �# �� �� ������ ���

�� � ������ �� �� ��� ��� �#� � �� ���� � ������ ��

!� '#� ������� � ����� ���� ��� �� ��� �������� ���# �#� ���� �� �����#

�#��� �#� ������� � ����� ���� ��� �� ���� #�� � � ������ ����� �#��

���� �� �����# ����������

� (���� �#� ���� ���� ��������% �#� ������� � ����� ���� ��� �� ���� ��� ���#

������� �#�� �#�� �� ����

)� #�� ��������� �#� ���� ��������% �#� ������� � ����� ���� ��� �� ���

*$

��� d = 1 ��� d = 2

��� ��������� � ���� �������� d = 1 � d = 2

������ �� ���� ������ �������� � � ���� ����� �����

�������� ������������ � ��� �� ���� � �� �������� ���� ����

����� ����� ��

!� ���� ��� �������� ��"����� ���#��� � $��� ��� ������ � � ����� � ������� � ��

� � � ��� ���#�� � �������� %��� ��� � ������� �� � � $��� ���� �� &�'''� ��'''� (�'''�

)�''' ��� *'�'''� ���+��������� , � ������� ��� � �� �� ������ ���

�� � ������ ��� �� ��� ��� � � � �� ���� � ������ ��

*� , � ����� ����� �� # � ���� ��� !��� ��� ������ � � � ���#�� � %��� ����

&� -���� � � ���� ���� ��������� � � ����� ����� � ���� ��� ��� ������� � ��

� �� � !���� ., � ���� ���� �� 1 : 3.2 � �� d = 1 ��� 1 : 18.8 � �� d = 2 �

((

���������

�� �� �� ������� �� ���� ������ �� �� ����� ����� �� ��� �� ����� ������ �����

���� �� ����� ����� �� ���� �� ����� �������� ��� �� ������� d ���� � �� �

�� ����� ����� �� ��� �� ����� !"��#$ ��� �� ����� ����� �� ���� �� �����

���� #���$ �� ���������

��� ��������

%� ��� �&���� �� &������ �� ��&����� �'��� ��� �����' ���� ����� �� �������()����

�'��� ��� ������' ���� ������ ��� '�� �� �� )'��� � �'��� ���� �)�� ��������

*� ��&���� ����*� � ���� � �)����� ��� ���� �� � '�������� ����� ��

�� )� �&&���� �� ���� �������� ��* � ���� %� ��� ������ �� �'���� ���� � ��

��&����������� �� ��*� �� ��+�� ��* ���� &�� �� ���

#,

��

������� �

���� ��� ����� ��� ��������

�������� �������

�������� �� � ���� � ��� �� ����� ������� �������� � �������� ������� �����

������� ������� ����� ����� ���� �� ���� ������ � �������� ���� � ��������� ������

������ ���� �� ������ �������� ���� �������� �� ���������� �������� ����������

��������� �������� ���!� ����"��� ���� ����� ����� ���� �� ����� #�������

$ ���� �������� �� ����� ��� �� ��� ��� �������� ������� #������ � � ��������

������ %�� ����&��� �������� �� ��� �� ������� ��� �������� ������� � � �����

����� �'���� �� ������ ���� %��� ����� �� ��������� �� � ����� ����� ����� �����

��� � �������� ����������� �������� �()�! �� ������ ������� "����� ������

�� � ���� ��"�� ������� )�*! ������� )���"��� �� ��� ������ ����� ������ ��

�"� ����� �����"� �������� �������� �()� ����� �� ��� ������������ �� �����

������� $ ���� �������� �� ������� +�,-.� � �"�� +���� �,������� ������ ��

��-����� ����.�� #������� +�,-. ������� ��� �'���� ������������� �������"��

����� ����&����� ������ ��� �������� �������� �� ��� ����� ����� .� � ���������

�������/� �� ����������� ��"���� ��� ����� � ������� ���� #������ ������� "�����

� ��� )�* ����� (� ������������� ���"� ��� �������� �� �������� � +�,-. ��

��� �������� ������������� ������ 0������� ���������� � ����� ���������� ������

���������� ���� +�,-. �� �'���� �� �� ������� ������ ����� �������

12

������ �� �� ������ ��� �������� �������� ����� ����� ����� �������� ���� � ���������������

��� ����������

���������� �� ����� ���������� ��� ������� ���� ��� ���� ����������� ������� ��

��� ���� ������ ��� � ������ !��"#� $������ ������� ����% ����� ���� �� ���� ��

� ������� ���� ���� �� ��� ������������% ���� �� ������ ���&��'�% ���� ���&��'� ���

���������� ���&��'�� (�&����% ��& ��������� ���� ���� �������� �� ������ ��������

���������� )������ �� ��������� ����� ����% &���� �� ��� ��� ������������ �� �����

���� ������������

�� ����� &��� ������� ����% ��� )���� ����� �� ����� ���� ��� ������ !*+% ,�%

-�% ./% *,% 0% /.% ��"� (�&����% �� ��� � ��� �������� �� ������ � ����� ����������

���� � &���� �������� ��������� ����� )������% ���� &� ������ ����� �� �� � �����1�

)���� ����� 2� ��� �� ��� ��� ����� ����� ����� )������% �������� �������� )����

!/*% �% /.% ," ��� &��� ������������ ���� �� ��������� ������� �� ������ ���&��'�%

����� �������� �� ���� ���&��'�% ������ ��������� �� ���������� ���&��'�% ���� 3� ����

�������% &� ����������� ��& �� ������ �������� �������� )������ �� ��������� �����

����� 4��� ��% � ���� �&��� �������� �������� � ����� ��� ���������� �� �� � �������

�������� &���� ��� ������ ��� ����� ���&�� �������� �������� )������ &������ ��������

������ ����� ����� ����� ��� ����� ��� )�������

2 ������ �� ����� ����� �������� �(�5# ���� �� !-% % +% ��% �% ,*% .�" ����

���� �������� �� �� ���� �������� ��������� �� ��������� �������� ���� ���� ��

������ ���� �� ����� �� ���� �����)���� �������� �������� )������ ��� �� ���&����

�6�������� �����1�����% ����� � ����� G% ��� ���� ������ v ∈ G ��� �(�5 ���� �

�������� �������� � ��� S(v) �� ��������� �������� ���� ���� ��� ���� ������ ���� (s, t)

����� �� �� ����� ��� ������ u ���������� ���� # u ∈ S(s)% �# u ∈ S(t)% ��� .# u ��

,+

�� � �������� �� �� ����� ��� ��������� ��� ������� s ��� t� ���� ������ v ∈ G

�� ������� ���� Lv = {(u, du,v)}u∈S(v)� �� ����� u �� � ������ ��������� ��� du,v �� ���

�������� �������� ������� u ��� v� ��� ���� ����� �� ��� ���������� �� ��� �������

�� ��� {Lv}v∈G� ����� �� ������ �������� ��� �������� �������� ������� ��������

s ��� t �� �� �� �� !��� min{du,s + du,t|(u, du,s) ∈ L(s), (u, du,t) ∈ L(t)}� "� � #$%����� �� ��� �� ���� ��� �� ������ ��� �������� �������� ������� �������� a ���

h�

&����!� ���������� ��� ���� ����� ���� ������ !�� ����� ����� �� ��� ����� �

�������� "������� �� ��� ��� ���� �� !���������� ��� ����� �������� ������� ������

���������� ��� �������� ���!��� ��!� ��� ����� � ������� �� ���� �� �� !�� ���

�������� �������� ������� ��� ��� �������� �� ��� ���� '�������� ��� �! ��� ��

������ �� ��� ����� ������� ��� �! ��� �� �������� �� ��� ���� �������� ��� �����

������� ��� ��� �� �� ���� ������ (�� ��!������ �!��� )!������ ��� ����� � �������

������ ����� �������� ��� ���� )!����� �� ��� ������� ��� ����� ����� ����� ��

�� �� ��� ��� ������ �� ��� ������� ���������� �!� ��������� ��� �� ���� ������ ��

�� ���������� ������ ��� ���� ����� �� ���� ��� ����� � ������� ��� ����� !�� ��

�� ������ �������� �������� )!������

��� ���� ������� ������ �!��� ��������� ��� ����� ���!� ����� �� � ������

���* �� +�� �� ��� ,-%.� �������� ����� ������ ����� ���� �� �!/��� ���!����

��� �0������ �������*�1 %� 2� �� � ��� ��� � ������ ���� !��� �� �����$����

���� �� (� � ���!��� ����� ���� � ���� ������ �� ����� ��������� �� �� � ������ ��

2� �*�� !�� �� �� ����� �� � ����� ��������� '&��� ���� � �� �� ��� 345

������!����� �� ,�6.� ����� �� !������!��� �!���� !����� �� � ����� ���������

��� �� ����� ��� �� � ����� !������������ �� ���� ���� �� �����$*�� ���$

�� ����� �� ������ �!�� �� ��!��$����� �!������� 78"��� ��� ��)!���� '&��

���� � �� !�� ��� �� �$����! �� � ������ ��� �� ������� ���� �� ���� �� !��$

���� ���� �� !����� �� !�� ��� ���� ��

2� ���� ������� �� ����� � ��� ���� � ����� �������� !�� ������ ���!����

����� �� ��� �� �� ��� ����� ��� � ����� ���� ������� �� � ���������� ���� ����� ��� ��� ��������� ����� ��������1� ��������2 ��� ��������3 �� ����� � ��� �� ���� ��� ���� �� ������� ������� ��������3 ������� ��� �� ������ �� �� ��� ��� ��������

-%

��� �������� � � ��� � ���� ��������� �������� ������������ �� ������� �

����� �� ������� ����� ��� � � ������� ������ �� � ���� ������ ��� �����

����� �������� � �������� � � ���������� ���� ������ ��� � ������� ����

��������!��� ����������� ��������� �� � � ��� ���� "��� #��� �� ������

����!#���� ������ �� #� #��� ��# �� ������ $�%�

&� �������'� ��� ����������� �� ����#�(

• &� ������� � ����� � �������!���������� ����� ������� "���� �� ������������ ��� �� ������� � ����#��� � ����!����� ���� ���������� )� ���!

������� #� ������ �� �������� �������� #�� �� ��������'�� �� � ��������

������ � � ���������� ���� ����� ��� � ��������� ������ ������� ��

� ������� �������

• &� ������� �� �����!���������� ��������� ����� ��� ��� ��# �# � ���!��� ���������� ����� �������� �� *+,!�������� ������� �������

• -���� ��� �� � �������� ������ #� ������� ������ � .��� ,/������� ����� �� �*��� ��� ��� "������� ����� �� 012 ������� ! ��������� ��� ����

������� 0�2 ������� ! ����� ���������� � �������� � � ���������� ����

������ 032 ������ ! ��������� ������ �� ������� � � ������ ��������� ���

042 ������ ! ��"������ ��# ��������� ��� ����� ���������

• &� �������� ����� ��� ������ ������� ��� ������� ���������� �� � ���!��� � ����!#���� ������

5� ��� � �� ����� �� ������'�� �� ����#�� )� ������ $�� #� ������ �������

�������������� )� ������ $�3 #� �������� �# � ��� ��� ������� ����������

�� �������� ������� &� ������� ������� ������ � ����� �� ������ $�4 ��� ��

�������� ��� ������� ���� � �� ������ $�$� &� ������� ��� ��� ������� ���������

������ �� ������ $�%� &� �����# ������ #��� �� ������ $�6 ��� �������� � �����

�� ������ $�7�

6�

������ �� ��� � ����� ���� ������ ������

��� �����������

����� ���� ��� ����� ��������� ��� � ���� �����

�� ����� ��� ��������� �� �� �!���� ��� � ����� ���� �� �������

��������� � "�� �!���� ��� � #���� ����$ � �������� � ��� �� ������

��� Р� � ��������� �� �� ���� ���� Р= (����,���,���,����,��)�

• (K, {Lv}v∈G) ← ����(λ,G)� � �� ���� ���� ���� ��� � ����� � �� ��� ���

��� λ ��� � � ��� G� �� ������ � � � �� K ��� � ���� ��� {Lv}v∈G�

• I ← ���(K, {Lv}v∈G)� � �� ���� ���� ���� ��� � ����� � � � �� K ��� �

���� ��� {Lv}v∈G� �� ������ �� �� ���� ��� I�

• τs,t ← ���(K, s, t)� � �� ���� ���� ���� ��� � ����� � � � �� K ���

�!� � ��� s, t� �� ������ � "� � ���� τs,t�

• Ds,t ← ����(I, τs,t)� � �� ���� ���� ���� ��� � ����� �� ��� I ��� � ����

τs,t� �� ������ �� �� ���� ������ Ds,t�

• ds,t ← ��(K,Ds,t)� � �� ���� ���� ���� ��� � ����� � � � �� K ��� ��

�� ���� ������ Ds,t� �� ������ � �� ���� ������ ds,t�

�� �������� � ��� � ����� ���� ������ ��%��%��� � ������ C ��� ���� � ��� � G

��� � ������� ��%���� P ��� ������ ����� ��� ���� ���������� !� C� &�� ����������� �������� ��� �������� ����� ��� �����' ������ �� �������

()

• ������ C ������ ����� (K, {Lv}v∈G)← ����(λ,G) � ���� �������� � �� ��

I ← �(K, {Lv}v∈G)� ������ C ��� � I �� P � P �������� � ������ ��� �� ���

• ���� � �� ����� ��� �������� ������ ������ �������� s, t ∈ G� C �����

����� τs,t ← �����(K, s, t) � ��� � �� �� P � P ���� �������� Ds,t ←����(I, τs,t) � ������� �� �� C� ������� C ������� ��� ������ � ds,t ←��(K,Ds,t)�

�� ���� � ����������� �� ��� ������ �� �� �� ���� !"�

����� ������� �� � �����

#�$����� "%&' ������� ��� �$����� ��������� ��� ��������� ����� (��� )*+�

� *", �� ����� ���� �������� ������� ����� ���� )-*� **� ./� 0", ���� �����

��������� �������� �������� �� ��� ��� ������ ����!"%&' ������� � ���

����� ���������!"%&' �������� ��� ������ �� "%&' ������ �� ������ �

����� ��� Blower � � ����� ��� Bupper� ��� ������� ��� ds,t � ��� ����

������ ������ ������ �������� s, t �� ��� ����� ��� ���������!"%&' ������

� 1���� �� �� )**, �� Blower(s, t) = ds,t � Bupper(s, t) = 2 · ds,t� 2�������� ��

����!"%&' ������ �� Blower(s, t) = Bupper(s, t) = ds,t�

3� ��� �������� ���� ���������� ������ �� ���� ���� "%&' ������� ����

��� ������ �� ��� ���� ���������� ������ ���� � �� ��� ������ ��� � ��

��� �� ������� "%&' ������� 4��� ��� ��� ���� ���������� ������ �� ������

������ ������ �� �� ������� ������ ���� �� ��� ��� �������� α, β �� �����

��� ���� ��� ���� ���������� ������ ���� ��� ����� ��� � ����� ��� ��

��� �� ������� "%&' ������� ������������� 2�� ������ �������� �� � ��������

��������� � 51������6 ��� Р= (����,���,���,����, ��) �� � ��������

� ��� ��� ������ ������ ����� � � ��� G ��� ��� �� ���� s, t ∈ G� ��� Blower

��� Bupper �� ��� ���� ��� ���� ��� ���� ����� �� ��� ���� ����� ���� ������

���� λ � � ��� ��� �� ����� � �� �� Π ������� (Blower,Bupper, α, β)���� ���

.7

�� ��� ��� ���� G s, t ∈ G

Pr[Blower(s, t)− α ≤ ds,t ≤ Bupper(s, t) + β] ≥ 1− negl(λ)

���� negl � � ���������� �������� ��� ds,t � �������� � ��� �� ��������� ��������

(K, {Lv}v∈G) ← ����(λ,G) I ← ���(K, {Lv}v∈G) τs,t ← ���(K, s, t) Ds,t ←����(I, τs,t) ds,t ← ��(K,Ds,t)�

�� ����� ��� ����� �� � ���������� ����� ��� ����� ����� ���� ��� �����

���� ��������������� ����� ���� ��� ���� ����� ������� � ���� ���������

����� ��� �! �!" ��# �� ������� �� ��$����� � ��� ��� ���� �� ��� ��� ����

���� ��� %����� ���� C# &�� ��$����� ����$�� �������������� ����� ��� ���

$����� ������� �������� ��� ���������� ��%���� � �� � ���� ����� �� �����

������ ���$��� ����������� ���� C'� ���� ��� %�����#

��������� � ()���� * ��� Р= (����,���,���, ����,��) �� � ������� �� ����

���������� ����� ��� Lsetup ��� Lquery �� ������� �������� ��� ������� �� ������

����������� ������ ��� ��� ���� �� ���������� ��� A �� �� ����� ��� ��� S �� � ��������� ��� λ � � ������� ���������� !� ��"�� ��� ���� � ������ �

• ����A(λ)� A ��� � � ���� G� #� ���� ��� �������� (K, {Lv}v∈G) ←����(λ,G) ��� ������� I ← ���(K, {Lv}v∈G) ��� ���� I �� A� #�� A ������ � ���������� ������ �� ���� � �� ����� ������ � q = {(s1, t1), ..., (sq, tq)}� $����� ����� (s, t) ∈ q �� ���� �������� � ����� τs,t ← ���(K, s, t) ��� ����

�� �� A� A ������ Ds,t ← ����(I, τs,t)� $������ A ������ � ��� b ∈ {0, 1} ���� �� � �� ������ �� �� �����

• �����A,S(λ)� A ��� � � ���� G� %���� Lsetup(G) S ������� �� ����& I∗

��� ��� �� �� A� #�� A ������ � ���������� ������ �� ���� � �� �����

������ � q = {(s1, t1), ..., (sq, tq)}� %���� Lquery(G,q) S ������� ��� ��� ��A � ����� τ ∗s,t ��� ��� ����� (s, t) ∈ q� A ������ D∗

s,t ← ����(I∗, τ ∗s,t)� $������

A ������ � ��� b ∈ {0, 1} ��� � �� � �� ������ �� �� �������� ������� P �� �� � ������ ��������

�+

�� ��� ������� (Lsetup,Lquery)������ � �� ��� ��� ��������� � ���������� ���

����� �������� A ���� ���� � � ��� ������ �� S ���� ��

|Pr[����A(λ) = 1]− Pr[�����A,S(λ) = 1]| ≤ negl(λ).

����� negl �� � ���������� ���� ���� ��� ������ � ����� ������ ��� �� � ������ �����

������ ��� ������ ���� �� ���� ���� ��� �� �� �� �� ������� ���� ����� �� ������

�� ������� ������� ���� ���� �� ��� ������ �� �� ��� !�!�

����� ����� � �� ���

"��� ���� ��������� � ���� ��� ��� ���� ��� �� ��� ����� ���� �� ���� ��

����� �� ����� ��� �� ������� � ����� �������� �� ����� �� ��� �� �� � ������

� ���� �� �� ���� �� ����� ��� ����� ���� �� ���� � ����� G� � ������� �

���� ��� {Lv}v∈G� ���� Lv �� ���� �� !��� v� ��� �� ����� �� Lv � ��

���� �� (u, du,v) �� �� � Lv�

#��� �������� ����� ���� �� ���� "��� �#�� $������ �� %"&$' ���

(����#)���� *���� �� %()*'� �� "&$ ��� ()* �� ���� ����������� � �� #

� !�� � � � �� � ����� ���� �� �+� � �� � �� � �������

$�� ������� ,�� ��� � �� �� �� � � �� ����� ���� ��������� � � �� ����� I �����

(key, value) �� �� ���� ���� � !� � key� �� ��������� �� value ��� � ������ �

O(1) � � �� I[key] �� ���� �� value ����� �� key � I� �� key ��� ���

� �� � I� ��� I[key] ������ ⊥�

%� � ����� �� �� ��� �� �� ������� � �� � ����� �� ���� ���� �� ��

����� �� ��� �� ��� � � %���� ���������'� �� � y ← ���(x) ��� ��� �� y

�� �� ������ �� ����� �� ��� �� ���� x� -� ����� �� a||b ��� � ��������� ���� ��� �� a ��� b� x

$← X ��� ������� ���� �� �� ��� x ��� �� X�

./

��� ������ ��� �� ������ ���� �� �������� � ��

�� ���� ������ �� ���� ��� �� � ������� ������� ������ �� ��� ���� �� �� �

���� ������� ������� ���������� ��� �� ������� � �������� �������

�� ���� �� ��� ������� �� ���� !" ��� ��������� �������� � � ������� �������

��������� ����� � � �������� #$%&' �� � ������� ������ #$���&'� � ����� ��

��������� ��(���� ���� ���� �� �� ��� � �������!�������� ��� ��� � ��!

����������� ������ �� ��� �� �� )�� ���� �� ��������� �� ����� ������� ��� ���

������� �����������

* � ���� ���� ������ ��� ��) �� +��� �� ��� ,-". ��������� � �������

�������� ��������� #����/#��������'' � ������ $%& �������� ��� ��!

������ ������� ������� 0���� ��� ��������� �� �� � ��!���������� ��� �����(����

$���& ������� ����� �� ��������� �� ����� �� ��� ���� �� ��� � ��� ������� *����

� �� �� � ����� �� ���������� ������ ��� ��� ��� � ��� ������� �� �����1 C ��!

������ ���� ������� ����� d �� ��� ���� �� �� �� D ← ��������(K, 2dmax−d) ��

����� dmax �� ��� ������� ������� ������ 2���� � (���� (s, t) P ������� c =

Σ(u,Du,s)∈L(s),(u,Du,t)∈L(t)Du,s ×Du,t ����� $×& �� $Σ& ��� ��������� �� ��������

������� C ������� ds,t = 2dmax− log ��������(K, c)� �� ��� ������� �� ���� !"

C ������ da,h = 2dmax − log(22dmax−(1+2) + 22dmax−(3+1)) = − log(2−3 + 2−4) ≈ 2.42�

�� ������� min{r1, ..., rx} �� ���������� �� rapprox = − log(2−r1+, ...,+2−rx)�

*���� ������ ��� ����� ������)�1 #"' �� ���� � ����� �������� x > 1� #�' ��

��� ���� ����� �������� ����� ���������� ���� ������� ������ ��� ����� �� x ��

������ �� ������� ���� �� ��� ��� � ��� ������� 3�34 ��� ���������� ������ ��

5�63 ���� � �������� ���� 5� 6 � #3' �� �� �� ����� �� � ����� dmax ������� �����

2dmax−d ��� ��� �� ��� ��������� �� �� ��� ���� ���� �������� ��� �����

������ �

7� 8�� � ��� ������ ����� ��� ����� ������)� ��� ��� � �� � �������� ���)!

��� ��� ���������� 7� �������� �� � ��!���������� ��������� #9:;' ������

�� ����� ������� �� ��� ��� ���� � �<�� �� �����1

--

��� S �� ��� ��� �� ���� �� ���� � ��� ���� � ���� � dmin, dmax �� ����� ���� � ������ ��� ������������ ��� ��� �� ����

• ���(K, d)� ���� � � ��� ������ ��� K � ���� �� ��� d ∈ S ���� � �������� � ������� (enc, ord, itv)� � !���� enc ← �������(K, d)�ord← ��(S, d)� itv ← ��(dmin, dmax, k, d)�

• �(K,D)� ���� � � ��� ������ ��� K � � ������� ��� D� ������ D � (enc, ord, itv) � ������� �����(K, enc)�

"�#��� $%&� '�� ��� ������

��������� � ()���� � ���� # ()�** �� �� � ������� ��� ����� �� �� �� � ��� S

� ������ ��� � ����� d ∈ S� �� �� ��� �� ���� ���� ����� � ������ � d �� S�

"�� ������ #��� ��� S = {45, 23, 57, 7, 16}� ��� ��(S, 45) = 4� ��(S, 23) = 3�

��(S, 57) = 5� ��(S, 7) = 1� ��(S, 16) = 2�

��������� �� ( ���� � ���� # ( �** �� �� � ������� ��� ����� �� �� �� � �����

dmin� � ����� dmax �dmax > dmin�� �� ������� �������� k ��������� ��� � �����

dmin ≤ d ≤ dmax� �� ������� ������� �� �������� [dmin, dmax] ��� k �������������

������� ��� ���� ������� 0, ..., k − 1� ��� �� ��� �� ���� ������ � �� ����

�������� ��� ������� d�

"�� ������ #��� dmin = 0� dmax = 60 � k = 3� ��� ��(dmin, dmax, k, 7) = 0�

��(dmin, dmax, k, 21) = 1� ��(dmin, dmax, k, 35) = 1� ��(dmin, dmax, k, 52) = 2�

"�#� $%& ����� �� ��� ��� ������� +� ��� �� ������� ��� ��#� �� ��� �� ����

�� � ��� � ����� ��������� � ���!��

• ����� ���������� )���� � ������� � ������ ��� �����%����� � (����� ,<-�

,>- �� ,=-* ���!�� ��� � ����� # ���� �� � �!� � ������� ����� +���%

�� ����� � ������� �� ���� �� � ).��

• �������� ���������� ���� � ������� �� �������/�� �� ��� ������� �%

������ k� � � ������ ��� ����� ����� �� ��� ���%� ���� !���� �� �� � ���

� ����� # ��� �� � ������� ���� ��� �� ����� � � ������� ����

dmin� dmax�

01

�� ������� ���� ���� ������� �� �� ������� ������� �� � ���� �� ���� �����

���� � ��� �� ��� ��� � ������ � �� � ������ �� ����� ����� �� � �� !������

�"� ���#�$� �� ��� � ���� �"�� ���� ������� ��� %��� �"�� �"� ���#�$� �� ��� �

�������� &� ! k� �"�� k = 1� ��� ��" ���� �"� ��� ��� ����� � ��� �� �����

������� �$ ������ �� ��"���� ���� ��� ���# �$ ���� ������� ���

'�� D1, D2 !� ��� ����������� ������� �� �� D1 < D2� D1 = D2� D1 > D2

� D1.ord < D2.ord� D1.ord = D2.ord� D1.ord > D2.ord� ������� ���� � ��� ���

������ � � �� � �� ��� ������� ������ (D1, D2) �� �� ����� ������� D1 ≤ D2� (�

�"��� � ���� �"�� ��� ��� ��� �������� �� ��� ��� ����� �� ����� ��� ���$�� ��� ���

�������� (� �"� ���� ����� �� ��#� ��� �� ���� ������� ��� )��� �� ��� ��� ���

������� (D1, D2) �� (D3, D4)� �� "���*

• (D1, D2) = (D3, D4)� � D1 = D3 �� D2 = D4�

• (D1, D2) < (D3, D4)� � D1 < D3 �� D2 <= D4 �� D1 <= D3 �� D2 < D4�

• (D1, D2) �� (D3, D4) ��� ��� �������!��� � D1 < D3 ��D2 > D4� ��D1 > D3

�� D2 < D4�

�"�������� � �"��� ������� �$ +,- ������ ��� �� ��� �� �� ����� ��� ���� ��� ���

�������� ���" �� �" �" � �� ����� �.��� �� ���$�� �"�� ��� �� �"� ��"�� ��� ��� ��������

/ ��� � ��� �� ��� ��� �������� �� ���� �� 0 ����� ��� �� �������*

��������� � �0 ����� ���� ����� � ��� C ��������� ������� ��� ����� �� ��� F

��������� ��� F ⊆ C� ��� � ��� f ∈ F ��� c ∈ C \ F � f ≤ c� ��� � ��� ��

��������� ������ f1, f2 ∈ F � f1 ��� f2 � � �� ���� �����

(� ��$�� �"� 1 �� ��������� �� ��$�� �"� ����� ��� $������ �$ 0 ����� ����

����� �$ �� �"� ��� � ��� �"� � � ��� ��� ��� ������ ���� !� � �"� 0 �����

���� � ��� �"� ��� ��� ������� � 0 ����� ��� ��� �����������!�� �� ���" ��"���

�� ������ ������ ��� �� �"�� �� �"� ���� ������ � �"��� ��� �� �� ���� �"�� ���

��� ��� ������� � �"� 0 ����� ���� (� ���� �� ��2 �� � �� �"�� �"�� ��� � ���

�������� ��� �� �"���� ��� ��� ������� ��� ���� � 0 ����� ���� �"��$" �� "���

�����#�!�� �"���� �� ����������� ������ �"� � � ��� ������� � � �� �� �"����� ����

13

�������� � ������

� ���� C� � ��� �� ������ ������������� F � � ��� �� ���� �� ������ ������

� �������� ����� ��� F� ��� c ∈ C ��

� flag = 0� ��� f ∈ F ��

� �� c < f ���

� ������ f � �� F

� ���� �� c ≥ f ���

� flag = 1 �����

� �� flag = 0 ��� �� ��� c ��� F

�� F �� ����� ���

�� ��� c ��� F

�� ���� F

�������� �� ������

� ���� F � � ��� �� ���� �� ������ ������������� R� � �� �����

� R = argmin(D1,D2)∈F

D1.itv +D2.itv

� ���� R

�������� �� ������ ������ ����� ����� �� ���� � �� �� ��� ������ ���

��� ��� �� � ��� ����� ����� �� ��� ��� �� ��� ��� �� ��� ���� �� ����

� � �� ��� !���� �� "��� �� ������ ��� �� ����� ���� ��� ������ ��� ��

���#��� �� � �� ���� �� � ���� � ���� ���� $�

%� ���� ������� � �&�� ������� ���� ��� ��� �� �� �� ������� � "��#

��� '�' � "����� '�(� ������������

��� ��� ��� �� ������ � ���

)��� � � ������� ������ �� � ���� �� � �� �� ����� ������ �� ��� ����

������ *�� ���� � �� ������ �� ��� ��� ������� +�!� f, g ���� ��� ��������

$,

• ������ C ������� � ���� �� K � ����� � ����� G� ��� �������������� ��� ���� ��� {Lv}v∈G ← �������(G)� ��� ���� (u, du,v) ∈Lv� C ���� ��� f �� ���� ����� ����!�� u �� U ← f(K, u||0)� ����� �� �� ������ ������ ���� du,v �� Du,v ← �����(K, du,v)� ������� v ∈ G� C �������� � �� � Tv ← f(K, v||1)� � ������ ��� (Tv, Lv)����� ��� � �������� I "���� "� ��#�� �� �� � ������� ���� $� �����C ��� I �� P• ������ C ����� �"� ������� s, t� �������� ����� �� �� Ts ←f(K, s||1), Tt ← f(K, t||1)� � ��� Ts, Tt �� P � P �������� � ��� �%�� I � �&���� Ls, Lt� ��� ���� ���� ����� ����!�� U ���� &���������� � Ls � Lt� P �&���� � ������ ������ (Du,s, Du,t)� $#��� ���%#����� ������ � ������ P ������ ��� ������� ������ r �� C� ������� C������� ��� �"� ������ ����� � r � ���������� ��� ��� �� ��� �������������� &��"�� s, t�

������ '%(� ��� ��������#��"�� ����� �������� ������

�����������

f : {0, 1}λ × {0, 1}∗ → {0, 1}λ

g : {0, 1}λ × {0, 1}∗ → {0, 1}λ+2·len(int)

"���� λ �� ��� �������� ��������� � len(int) �� ��� ��&�� �# &��� ��� #�� ������

� ������ �����

����� ������ �� ��� ������ �� ���� ��

)� ����� "��� � ��������#��"�� ����� �������� ������ �����&� � ���� '%(� $�

� ����%�� ��� ��� ��������#��"�� ������ "�� � �� #����"�� *���� ����� ������� C�������� � ���� ��� � ����� ���� ����� ����!�� ���� f "���� �������

���� ������ ���� ���� ��� C ��� ���������� ��� ������� ���� ��� �� P �*���� ����� ������ C �������� ��� ���� #��� �# ��� �"� ������� �� &� +�����

� ��� ���� �� P � P ��� ������� ��� ���������� �"� ������ � ��� ����

�������� � ������� ������ ���� ��� ����� "� ������� � ,����� '�-� �

������ ��� ������ �� C� ������� C ������� ��� �������

��� ��������#��"�� ������ �������#���� ��"��� �������� ������ +������ � �%

./

�������� � ����

� ���� (λ,G)� � ������ ���� ��� ��� � ������������ (K, {Lv}v∈G)� � ����� �� ��� � �� �� ������

� K$← {0, 1}λ

� {Lv}v∈G ← �������(G)� ����� (K, {Lv}v∈G)

����� ������ �������� ����� � ������� ��� ����� ��������� ��� ������� �������

� ���� ����� ��� ����� ����� ������ � ����� �� ����� �� ���� Lv� �������

��� �� f �� � ���� ������ �������� P ��� !���� �� �"���� �� �� �� �������

������� �� �� ������ #� ��� ������ �� ������������� ���� � ����� �� �� ��� ��

�� �� ������� ������ �� �� ������� $��� �� �� ��� �� %���� P ������ �� ��

��������� �� ������� ��� ������������ &������ � ����� �� ����� ����� ���� ���

������� ����� ���� �� ��� ������� ������ �� �� '�() ������

����� ��� �� �� � ����� ��� ������ �����

*� ��� ������ ��� ��� ����� �������� ���� � ����� ����� ������� �� ��+

��� ���� ������� �� �� ������������� ���� �� *� �������� �� ��� ������� �

,-������� .'/� �����������

����� #� �� �������%���� ������� � �� ���� � ����� �� K ��� ������� '�()

������ ����� ������� �� �� �� � �� �� ������������� ���� �� &�� ������� ��

��� ����� �� ������� 0�

���� *� ��� ������� ������� ��� ����� ���������� #� ������ �� ��� �� �������

��������� ������ �� ��������

����� ����� ���� &� ���� �� ����� �� ���� Lv� �� ������ Lv ��� ���� ����

(U,Du,v) ∈ Lv ��� �� ����� ����������� &�� ���� �� ��� � ���������� ��������

���� � (��� � ��� 1'23� ����� ����� �� �� ��� �� ��� ���� ��������� � �������

������� ���� ��������� � ���� Tv ← f(K, v||1) ��� Lv� �� ������ ��� Tv �

�� ��� � ���+���� Tu,v ��� ���� (U,Du,v) ∈ Lv �� �������� ������ Lv �������

l ������ �� ������� l ���+����� �� �� ���� �� f(Tv, c) �� ����� c �� �� ������

������ ���������� ��� . � l� ������� �� ���� ���� (U,Du,v) ∈ Lv ��� �� ����� I

4'

�������� �� ���

����� (K, {Lv}v∈G)� � ������ �� �� ��� � ������������ I� �� �����

� ��������� ����� �� I� ��� v ∈ G ��

� Tv ← f(K, v||1)� Kv ← f(K, v||2)� ��������� � ����� c = 0� ��� (u, du,v) ∈ Lv ��

� U ← f(K, u||0)� Du,v ← �������(K, du,v) Tu,v ← f(Tv, c)� Ku,v ← g(Kv, c)�� Cu,v = Ku,v ⊕ (U ||Du,v.ord||Du,v.itv)�� I[Tu,v] = (Cu,v, Du,v.enc)�� c = c+ 1

�� ������ I

�������� � ���

����� (K, s, t)� � ������ �� �� �� ��������������� τs,t� � � ���

� Ts ← f(K, s||1)� Ks ← f(K, s||2)� Tt ← f(K, t||1)� Kt ← f(K, t||2)� ������ τs,t ← (Ts, Tt, Ks, Kt)

���� ��� �� �� ������� � ��� ����� ��� Tu,v�

������� ���� ���� ������ ����� �� ��� � ����� ��� ������ � � �� �

�������� ����� ��� ������ � ������� �������! � ��� ��� ���� ������ ��� ���� ���

� ���� � �� ��� ������� ��� ���� � � ��� ������� ����� �� ��� �� ��� ��� ����

������ " ������ � � �� �� ����� ����� � � ���� �������� �� �� ��� � �� � �� ����

��� #����� ��� �� ��� � ���� � ��� � ����$�� �� ����� ��� ����� ��� ��$�� �

f � �� �� ��� %$���&���� � � ��� (U,Du,v) ∈ Lv, v ∈ G� �� ����$� U � Du,v.ord�

Du,v.itv � Cu,v = Ku,v ⊕ (U ||Du,v.ord||Du,v.itv)� ����� Ku,v �� �������� �� ��� �����

�� � �� � �$��� ����� ����� ����� �������� $��������� �� Kv ← f(K, v||2)� � v �� � �$����� ������� Ku,v ← f(Kv, c) ���� � ��������� � ����� c�

' � ��� � ��������� � ������� �� �������� ��� ���� � f � � �� ���

()

�������� �� ����

����� (I, τs,t)� �� ����� ��� � ���

������� Ds,t� �� ��� ���� ����

� �� �� τs,t �� (Ts, Tt, Ks, Kt)� ��������� � �� Ls, Lt

� ��� c = 0 ����� I[Tu,s] = ⊥ ��

� Tu,s ← f(Ts, c)� Ku,s ← g(Ks, c)� (Cu,s, Du,s.enc)← I[Tu,s]� U ||Du,s.ord||Du,s.itv = Ku,s ⊕ Cu,s

� Du,s ← (Du,s.enc,Du,s.ord,Du,s.itv) ���� (U,Du,s) �� Ls

� ��� c = 0 ����� I[Tu,t] = ⊥ ��

�� Tu,t ← f(Tt, c)�� Ku,t ← g(Kt, c)�� (Cu,t, Du,t.enc)← I[Tu,t]�� U ||Du,t.ord||Du,t.itv = Ku,t ⊕ Cu,t

�� Du,t ← (Du,t.enc,Du,t.ord,Du,t.itv)�� ���� (U,Du,t) �� Lt

�� ��������� � �� C�� ��� (U1, D1) ∈ Ls ��

� ��� (U2, D2) ∈ Lt ��

� �� U1 = U2 ����

�� ���� (D1, D2) �� C

�� F ← ������(C)�� Ds,t ← ����(F )�� ��� � Ds,t

�������� �� ��

����� K,Ds,t� � ��� � ��� ��� �� ��� ���� ����

������� ds,t� � ������� �����

� �� �� Ds,t �� (D1, D2)� d1 ← �� ���(K,D1)� d2 ← �� ���(K,D2)� ��� � ds,t = d1 + d2

• V ← f(K, v||0)� �� ����� �� �� �� ������� v�

• Tv ← f(K, v||1)� �� ���� �� �� ��� � v�

��

�������� �� �����

C�� ������ � ����� ������� λ ��� � ����� G� (K, {Lv}v∈G)← ����(λ,G)� I ← �(K, {Lv}v∈G)� ���� I �� P� ����� K

P �� ���� ��� ����� I

�������� � ����

C�� ������ ��� ����� s, t� τs,t ← �����(K, s, t)� ����� τs,t �� PP �

� ������ τs,t� Ds,t ← ����(I, τs,t)� ����� Ds,t �� CC�

� ������ Ds,t

� ds,t ← ���(K,Ds,t)

• Kv ← f(K, v||2)� �� �� ������� ��� ���������� ��� �� v�

• Tu,v ← f(Tv, c)� �� �� ������� ��� ���������� ��� ��� ����� �� Lv�

• Ku,v ← f(Kv, c)� �� �� ������� ��� �������� ��� ��� ����� �� Lv�

��� ������ ���������� �� ��� �� ��������� �� �� ������ ���

���� � ���� ����� ��� ������ ���� (s, t) ������� !�" ����� ������ Ts, Tt# $���

��� ���� �� ������ ��� ����������# ��� !%" ���������� ���� Ks, Kt# $��� ��� ����

�� ������ ��� ��������� &� ��������� ��� �� �� ������ ���

����� '��� ������� ��� ����� Ts,t# P (��� ������� ���������� Tu,s ← f(Ts, c)#

Tu,t ← f(Tt, c) $��� �� �������� ������ c# ��� ������� ��� �$����������������

������ )���$����# P ������� ��� �������� Ku,s ← f(Ks, c)# Ku,t ← f(Kt, c) $���

�� �������� ������ c# ������� ��� ����� ����� ���������� ��� ������ Ls ���

*+

Lt ����������� � ��� P ����� �� ������ �������� ������� Ls ��� Lt ��� ����� �

��� �� ��������� ������� ����� P �������� ������ ��� ������ �� ������ � ��� ������

�� �������� �� �� ������ � ���

��� ��� ��������� � � �������� ����� Ds,t ���� P � C ������ �� �� (D1, D2) ���

������� � �� �� d1 ← �� ���(K,D1) ��� d2 ← �� ���(K,D2)� ���� C ����� � !�����������" � ������ �������� ds,t = d1 + d2� �� �������� �� �� ������ �

�#�

���� ������ � $%�#� �� �������� ������� ����� ��� ����� �� &������ ����

��� �������� � ����� �� ������

������� �� �� ��� �� � ����� �� f, g �� ����� ���� ��� ��� ��� �����

��� ���� ����� Blower ��� ���� ����� Bupper ���� �� � ����� ���� G ����

�������� (Blower,Bupper, 0, dmax − dmin

k)−accuracy �� k = 1, 2 ��� (Blower,Bupper, 0, 2·

dmax − dmin

k)− accuracy �� k > 2 �� ����� dmax, dmin �� ��� ������� ��� �����

��� �������� ������ �� ��� !"# ����� ������ �� ������ �(G) ��� k �� ��� ��������

�������$

����$ ��� �� ���� G ��� �������� s, t ∈ G� �� d���s,t �� � � �������� � ������

�������� ������ � ���� �����

d���s,t = min{d���u,s + d���u,t |(u, d���u,s ) ∈ L���s , (u, d���u,t ) ∈ L���t }

� ��� L���s , L���t ∈ {L���v }v∈G ← ���������(G)� ��� �� ds,t �� � � �������� � ������

�������� ������ � � ���� ����� (K, {L���v }v∈G)← ����(λ,G)� I ← ��(K, {L���v }v∈G)�τs,t ← �����(K, s, t)� Ds,t ← ��(I, τs,t)� ds,t ← ��(K,Ds,t)�

��������� �� ������ � �'� ��� ��� �� v ∈ G� �� ��� �������� � � ��������

������� �� L���v ������ � �� ��� �������� ��������� �������� ����� ������� � �

������� �� f � �� g �� ��� � ������ &(�� �� ��� ������� ������ � � ������ ����� ��%

������� ��� ������ � (U,D) ������ � ��� U ← f(K, u||0) ��� D ← �� � ��(K, d)

��� � (u, d) ∈ L���v � )������� � ���� (u1, d1) ∈ L���s ��� � ���� (u2, d2) ∈ L���t � ��

*+

���� f(K, u1||0) = f(K, u2||0) �� u1 = u2� �� f(K, u1||0) �= f(K, u2||0) �� u1 �= u2 ��

�� � ���� ���� ���������� ���������� ���������� �� �� ������� ��� ��� ��� f � ������

����� ���� ���� ���������� ��� ������� ������� ������� ���� ����� �� ������ ���

������ ��� ��� �� ������� �� ���� ������� ���� ������� �� ������� �� ��� ���

�� ��� �� ������� ��� ����� �� ������� ������� ��� �� ��������� ���� ��� ������

����� �� �����

Pr[ds,t = ����(���(C))] ≥ 1− negl(λ)

����� C �� ��� ������� ������ ��� ������� ���� L���s �� L���t �

�� �� ��� d���s,t ������� ���� d���s + d���t �� ds,t ������� ���� ds + dt� ���� ����

d���s,t = min{d1 + d2|(d1, d2) ∈ C}� �����

(ds + dt)− (d���s + d���t ) ≥ 0

�������� �� ��� �������� �� ����� �� �����

d���s < ds �� d���t > dt

��

d���s > ds �� d���t < dt

��

d���s = ds �� d���t = dt

� ��� itv(d���s ) ← �(dmin, dmax, k, d���

s )� itv(d���t ) ← �(dmin, dmax, k, d���

t )�

itv(ds)← �(dmin, dmax, k, ds)� itv(dt)← �(dmin, dmax, k, dt) �� l =dmax − dmin

k� ��

�����

itv(d���s ) · l ≤ d���s < itv(d���s ) · l + l

itv(d���t ) · l ≤ d���t < itv(d���t ) · l + l

itv(ds) · l ≤ ds < itv(ds) · l + l

itv(dt) · l ≤ dt < itv(dt) · l + l

!"

��������� � � �������� � ������� �� ����

itv(d���s ) + itv(d���t ) = itv(ds) + itv(dt)

���� ����

(ds + dt)− (d���s + d���t )

<itv(ds) · l + l + itv(dt) · l + l − itv(d���s ) · l − itv(d���t ) · l=2 · l

�������� ��� k = 1, 2� � ���� � itv(d���s ) = itv(ds) ��� itv(d���

t ) = itv(dt)� ��

����

(ds + dt)− (d���s + d���t )

=(ds − d���s ) + (dt − d���t )

<l

����� Blower(s, t) ≤ d���s,t ≤ Bupper(s, t)� �� ����

Pr[Blower(s, t) ≤ ds,t ≤ Bupper(s, t) + 2 · l] ≥ 1− negl(λ)

�� k > 2� ����

Pr[Blower(s, t) ≤ ds,t ≤ Bupper(s, t) + l] ≥ 1− negl(λ)

�� k = 1, 2�

�� ��� � ������� ���� � ���� �� ��� �������� � ������� ������� � �

��� �� !� � ����� �������� �� ��������� � ���� � � �������� ����" �

��������� ���� ������ � ��� �� ��� � (u, d) ����� �� � #�$% ����"� ���� ����

����� � ���� G

Lsetup(G) = Σv∈G|Lv|

&&

����� Lv ∈ ���������(G)�

���� � �� � ����� (s, t) � ��� ������� � ��� ��������� ���� ��� ���

(u, d) ����� ��� � Ls �� Lt� ����� �������� ��� ����� ���� ��������� ���

��������� ���� ��� ����� �� ����� �������� ������ Ls �� Lt� �� ��� �����

��������� �� ������ ��������� ��� � ���� �� ������� �� ��� ������ � Ls

�� Lt�

�� �������� ���� �� �������� � ����� ���� �� ��� � �������� �� ���� �������

���� ��� ��������� �������� � ���� ���� ��� ������� (s1, t1) �� (s2, t2)� ���� f ��

������������� �� ������� ��� ����� ��� ��������� �� �� � �� ������� ��� ������ ���

��� s1, t1, s2, t2 ����� s1 �= t1, s1 = s2, t1 = t2 � !� �� ���� ��������� ���

��������� ��������� �� ��� ��������� ���� ������� � �����" �� �������� � ��������

#�� �� ��� � �������� ��� ��������� �������� � ���� ��� ��������� ���������

��� � �������� $ �������� ��� � ���� G �� � ������� �� q ������� q =

(s1, t1), ..., (sq, tq)�

Lquery(G,q) = (�� , �, ���, ���, ���)

����� �� � �� ���� ���� ��� ��� ����� � ����� �� �� ���%

• ������ �������� �� � �� �� � ����� �� ��&� 2q ���� ���� �� [i] = |Lsi | ���i = 1, 3, ..., 2q−1 �� �� [i] = |Lti | ��� i = 2, 4, ..., 2q� ����� Lv ∈ ���������(G)�

• ����� � ���� ������� �������� � � � �� � ����� �� ��&� q

���� ���� ��� 1 ≤ i ≤ q �[i] = |{u|(u, ∗) ∈ Lsi , (u, ∗) ∈ Lsi}|� ����� Lv ∈���������(G) �� ∗ ������ ��������� ������� �� �� �

• ��� �������� ��� � '�� S �� ��� ��� �� � ������� �� ��� � ���������(G)�

��� �� � ����� �� ��&� Σ1≤i≤2q�� [i] ���� ���� ��� 1 ≤ i ≤ Σ1≤i≤2q�� [i] ���[i] =

{��(S, d)|(u, d) ∈ Ls1 ||Lt1 ||...||Lsq ||Ltq}�

• ������� �������� ��� � '�� S �� ��� ��� �� � ������� �� ��� � ���������(G)�

��� �� � ����� �� ��&� Σ1≤i≤2q�� [i] ���� ���� ��� 1 ≤ i ≤ Σ1≤i≤2q�� [i] ���[i] =

{��(S, d)|(u, d) ∈ Ls1 ||Lt1 ||...||Lsq ||Ltq}�

()

• ���������� ��������� � ����� ��� �� �� ����� ���� q � �� ���� � 1 ≤ i ≤ q

���[i] = (x, y) � si, ti �� ��� x���y�� �������� ������ �� ��� ��� ���� s1, t1, ..., si, ti�

�������������

�� �� ���� ��� ��� ���� ������

������� �� � ��� �� � ����� ���� f, g �� ����� ����� ���� ����� ��������

(Lsetup,Lquery)���������

����� �� � ���� ������ ��� �� �� � ����� �� � ��� ���� S �� ��� ���� Ideal� ��

��� Lsetup ��� Lquery � ��� ���� � ����� ����� I∗� ��� ����� τ ∗s,t � ��� (s, t) ∈ q�

�� ��� ������ ���� �� ��� X ��� X∗ ��� ��������� ���� �� � A � ���� ����

��� �� � ����� ������� ������ X ��� X∗ �� ���� � negl(λ)�

!�� m = Σ1≤i≤2q�[i]� S ��� ����� � ��� Σv∈G|Lv| �������� ��� �� S∗ =

{d∗1, ..., d∗m} � �� ���� � 1 ≤ i ≤ m� ��(S∗, d∗i ) = ���[i] ��� �(min{S∗},max{S∗},max{itv}+1, d∗i ) = ���[i]� "���� S ��� ����� m ������ ������#��� u∗

1, ..., u∗m ��� ������

(d∗i , u∗i ) ��� 2q �� ��� L∗

1, ..., L∗2q � �� ���� $%� � 1 ≤ i ≤ 2q� |Li| = �[i] ��� $&� �

1 ≤ i ≤ q� ��� � � �� ���� �������� �� L∗2i−1 ��� L∗

2i �� �� �� � ��[i]� S ����

������� ���������� �� ��� ��� #����� ������ ��� p �������� �� ���� !��'� ��(�����

���� �� L∗1, ..., L

∗p� S ��� ����� L∗

p+1 � �� ���� ��� ������ ������#��� ��� �������� ���(

�� ��� ������� ����� ��� |L∗p+1| = Σv∈G|Lv| − Σ1≤i≤p|L∗

i |� "��� S �� ����� �

��� ���� ����� ��� ������

��������� ��� ���� I∗� S ���� K∗ $← {0, 1}λ ��� ����� I∗ ← ��������(K,

{Li}1≤i≤p+1)� )���� Σv∈G|Lv| = Σ1≤i≤p+1|L∗i |� ��� ������ I ��� I∗ ��� �� ��� )����

���� f ��� g ��� ��� ��� ��� ������ I ��� I∗ ��� ��������� ���� �� � A ���

� ������

��������� ��� !��� τ ∗si,ti �1 ≤ i ≤ q"� S ������ ���[i] �� (x, y) ��� �����

τ ∗x,y ← ����(K∗, si, ti)� )���� f �� ��� ��� (si, ti) ��� (s∗i , t∗i ) ��� ��������� ���� �� �

A� )���� ���� f ��� g ��� ��� ��� ��� �������� ��� ����� ������ ��� ����

I ��� I∗ ��� ��������� ���� �� � A � ���� � ������

*+

����� ��� ��� ������ �������� � � ����� ������� ������������������ ���� �������� �� ��

!���� " � ���� ���# �" $%&'( ))%*'$��+� � ���� ���� � ���# �" �%*$* �$%$(,

�������� -�� �.���� ���# �" )%)$, '�%)'(/��. � ���� ���� � ���# �" �*%&&) ��)%�*����� . � ���� ���� � ���# �" �)%00* �()%��&1 ��2�� � ���� ���� � ���# �" *'%�'' ('%$(0��� � ����� � ��������� � ���# �" ',%,(* �)'%)'�

3�� .�"��� � ���� ���# �" �)%**) *�$%&0)

�.���� ��% �.� ���# � A �� ��� Real ��� Ideal ��� �������� ���.���� � A% ����%

|Pr[����A(λ) = 1]− Pr[�����A,S(λ) = 1]| ≤ negl(λ).

��� ��������� �������

4� �.�� ����� �% #� �������� �.� ���� ������ � ������ ��� ���� �� ���� #��� #������

�� ��. � ��� ��� � � ,$5��� 6��� #� ���.��� #��. 4���� 1 �� ��5$�0& 7'�*&�/89

1: ��� )�3 ;�2� 6� ����������� �.� *5. � � ��� ������� ��.��� �� � ���

�� �"���% <#��� ��� = �.��� >�*?% #.��. �� �� �@���5*/1<� AB� ��� ;!� #���

����������� ���� ��A ��� /2�1 �� � �.� ��. � 1���� ���.� � �"�� � 7�5

1���� 9� �.� �������� ��������� #�� ��� �� �*)5���� �.� ������� ����� � k �� ��� ��

�,% . #����% �.� ������ � k � �� � � �C���� �.� ������� � �D������ ������

����� �������

6� �������� ���� �� ������ � ����5# ��� ���.� �� � A�� >,$?% �� �. #� �� ����� ����

! � !���� " ��� 3�� .�"���% ���. �����@ ������ � � � ���� ��� ���. �� � ������ � � �

������ ������ ��.��� ��+�% /��.% ���� . ��� 1� �2�� ��� � ���� ���� � ���# �"�

� ��@�� � ��C����� �������. �����% �� #.��. ���. �����@ ���������� �� ���. � ���

����������������� ���������������������

(�

0

0.5

1

1.5

2

2.5

3

Facebook

GrQcGnutella

HepPh

AstroPh

CondMat

EnronBrightkite

Num

ber o

f pai

rs (m

illion

)

��� �����

20 30 40 50 60 70 80 90

100 110 120 130

Facebook

GrQcGnutella

HepPh

AstroPh

CondMat

EnronBrightkite

Num

ber o

f pai

rs p

er v

erte

x

��� �� ���

������ ��� ����� ���� ���������� �� ����� �� ��� �� (u, d) ����� �� ��� ��� ��!�"#

0

50

100

150

200

Facebook

GrQcGnutella

HepPh

AstroPh

CondMat

EnronBrightkite

Set

up ti

me

(s)

label generationlabel encryption

��� �����

0

2

4

6

8

10

Facebook

GrQcGnutella

HepPh

AstroPh

CondMat

EnronBrightkite

Set

up ti

me

per v

erte

x (m

s)

label generationlabel encryption

��� �� ���

������ ��$ ����� ���� ���������� �� ����� �"������� �� � ��� �����#

���� �!�� ���������� � �������������# �������� �� � ������������ %�� ������� ���&��'(

&���� ���� �����" ���������� � ���� �� ��� �������� ���&��' �������) ��! ���� �!��

���������� � ���������� ���&��� �&� �����# ����� �� �� � ��� �� ��������� ���&��'(

&���� ���� �����" ���������� �� � ��� �!!���� ��! ���� �!�� ���������� ���� �����

�� �� ����� ��� � ��� �"������ ���&��� ��� �&� �!!������# ���� �!�� �� ��� ���&��'�

&��� �������! � ���!� !��� �� !������� ����� �� ��� ����� *+(,+- &��� ��� ���������

+#+,#

����� ���� ��� ������

.� ������ ��� �"������� �� � ��! ��� ��������� ��!�" ��/� �� �����# �� ����� �������

��� �����) ������! �� ��� �� ��� �� (u, d) ����� �� ��� ��� ��!�"( &� %��� ���& ����

0�

0

100

200

300

400

500

600

Facebook

GrQcGnutella

HepPh

AstroPh

CondMat

EnronBrightkite

Inde

x si

ze (M

B)

��� �����

0

5

10

15

20

25

30

Facebook

GrQcGnutella

HepPh

AstroPh

CondMat

EnronBrightkite

Inde

x si

ze p

er v

erte

x (K

B)

��� �� ���

������ �� ���� ������ �������� � � ����� ����� �����

0

0.02

0.04

0.06

0.08

0.1

0.12

Facebook

GrQcGnutella

HepPh

AstroPh

CondMat

EnronBrightkite

Clie

nt-s

ide

quer

y tim

e (m

s)

token generationresult decryption

��� ����� ���

0

2

4

6

8

10

12

14

Facebook

GrQcGnutella

HepPh

AstroPh

CondMat

EnronBrightkite

Ser

ver-

side

que

ry ti

me

(ms)

distance computation

��� �� � ���

������ ��� ���� ������ �������� � � ����� ������� � ���� � � ���!�

���"��� � ��� � �������� �� ���� ���� #� ��� ��� �$�� �$� ���"�� � (u, d) %���� � ��

� � �������! ����� &��$ �$� ���"�� � �������� � �$� ���"�� � ������ '$�� �� "������

�$� ���"�� � %���� �� ��� �(����� "! �$� ���������� �$������������� � �$� ���& �)�

*�������!+ �$� ������ � ���& �)+ �$� � �� %���� &��� "� ���������� ,������ ������� ���

"� � ��� �� -./0� #� �%��� �$� ������ ����� ���� ��� ��"�� �������� � ���� ��� ��"��

����!%�� � ����+ �� �$ &� �� ���� ��1� �� �$� ��"�� �������� � ���� �� ������� "! �$�

�%���2� /345 ��$���+ &� ����� �$� ������� � -./0 � � �������� ����!���� #� ��� ���

�� � ���� ���6�7+��16�7 �$�� �$� � ��� ����!%�� � ���� �� ������ �� �$� ���"�� � (u, d)

%����+ &$��$ � ��$�! �� &� &��$ �$� ���� � �$� ���& �)� ���� � � ������� *���$�)���

&��$ � �� �$�� /�� ����� � %����+ �$� ����!%�� � 2���$�� �� �" �� 8 �������� 9� ����

��16"7 &� ������ �$� ������� "! �$� ���"�� � ��������� '$� %��������� ����!%�� �

����� ��� ���� �$�� .: �������� �� � � ��� ���������

;8

���� ���� �� ���� ��� ����� ������ ��������� �� ��������� �������� �� �

�� ����� ���� ����� �� ���� ������ �� �� ����� �� (u, d) ������ �� �� ���������

�������� �� ������� ����� �� ����� �� �� ��� �!����" #��� �� ������� ����� ��

����� $%& �� ��� �����"��� � '�����(� ���!�)�*+, �!��� (���� ��� (u, d) �����

��� ����������)�*+, �!���� �� ��� ������ #� !�� ��� �-�� ������ ����� �� #�

��� �� ����������)�*+, �!��� �� ��� $)%�� � #� ������� �� ���)-����� ������

.� ������� ����� ��� / 0�1-����� ��� 2�3! �� �& 0�1-����� ��� 2������� �

����� ���� ����� ����

4����!�� ����� ��-��-�� !�����)���� ������ C)���� ��"�� ���������� �������� �� �

������ ��!�(����� �������� �5 ��� ���-��)���� ������ P)���� ������!� !����������������� �� � �� P 6��� �� !�������� ������ ��� � 7���(� C #��� ��� �� ������ �� ����#����� ��!�(������ �� ��! � !���� #� ��� �� ��!�(����� ��� �� ����� �� �� ����� #�

!��� ������ ����� 7������ ��� �������� �� �-����� ���!����� ���� �� ��#� �� ���

$)&� �� ������� �� #� !�� ��� ��� �� ��"�� ���������� ��� �� ����������� ��

�� �������� .�� �� ��"�� ���������� ���� ��������� �� ����� ��� ������!����� .�

������ ��!�(����� ���� ��� 7���� ���� ��!���� ������� �5 ��7����� ���( �#� 809

��!�(������� �!!������ �� ������� ��� �� ������!� !��������� ��� �� ��!���� �(

�� ����� �� Ls, Lt ��� �� ����� �� !�������� �������� 8��!�6!���(� �� ���!�����

��7����� |Ls| + |Lt| 4: !����������� ��!������( ����!�� ��� ;<:�� |Ls| × |Lt|!�������� =�������� � ����� ���!����� ��� � ���� ���!������ .� ������� ��# ���

�� ������!� !��������� �� �����( ��� ��-���� 9-�� ��� 2�������� #��� ���)-�����

���� ����� �� �� �������� �� �-����� ���!����� ��� �� =��� ���-� �� ������!�����

����� �������

>� 6��� ��# �� ������� �� �� ��������!� �� ����� �������� % �� ��� $)��

.� �-����� ����� �� !�������� ������� �� � 7���( ������ ��� %�� ��� �!����"

�� 5/�� ��� 2������� � ����� ��������� ������ �� �-����� ������ �����6!����(

����!�� ������� ��� ��/ ��� 2�3! �� 5�� ��� 2������� � .� ������� ����!��� ��� P

�?

0

5

10

15

20

25

30

35

40

Facebook

GrQcGnutella

HepPh

AstroPh

CondMat

EnronBrightkite

Num

ber o

f can

dida

te re

sults

Before FilterAfter Filter

������ �� ���� ������ �������� � � ����� ���� ������ � ��� ����� ������

0

20

40

60

80

100

Facebook GrQc Gnutella HepPh AstroPh CondMat Enron Brightkite

Per

cent

age

of e

xact

resu

lts (%

)

GRECS GENOA (k=1) GENOA (k=16) GENOA (k=64)

������ ���� ���� ������ �������� � � ����� ���������� � ����� �������

���� �����!�"�� ������ � "���� ��� ����� #������� ���� $��� �� ����� ��� ��������

��� ����� �

%� � �����# ��� �������& � ��� �� � ��# ��� ������ ��# ��� ������ ��

'(�) *�����# ��� �+ ,� ��� ����� $� �� �� ��-��� ���# � .������ ��# "�����# ���

������� ���������� � ����� ������� ��# ��� ������� ������# ��� � � � " �� �������

� � ���- $� ���������& ��� ��� #����� � ��������� k ���# �� ������ *��� �����

/+ �� �- �0- 01 �� � ��� ���� $� ��� ��� ���� ��� &���#� ���� � �� �����

������� ���� ��� � ���� $��� k = 1 2����� k ����� � �������� ��� �������& � � ���

#�������- � �� ���� ��3 ������� � ��� ��� ����� $��� k = 64 ��� ���� ��� ���

��� ����� � ������# ��� � � � ��� #�������- ��� ������# ��� � � ��� �� �������

���� � � $��� k = 1 ��# � �4 $��� k = 64 5 $����- ��� ������# ��� � � ��� � ��

������ ���� � 4 � � ( �� � / #�������- ��# ���� �����#� � 0 � ���� ��

0

0.2

0.4

0.6

0.8

1

Facebook GrQc Gnutella HepPh AstroPh CondMat Enron Brightkite

Mea

n of

rela

tive

erro

rGRECS GENOA (k=1) GENOA (k=16) GENOA (k=64)

������ �� ���� ������ �������� � � ����� ���� � ������� ��� ��

��� ������ ��

��� ����� � ������� �����!��� ���� �� "��� ��������� � ���#�� $��% �� ������ �

��&���� ���� '�() �*) +() +,) (-) ,*.� ��� !� ! ��� ������� ��� � �� ��� $� %� ��

/������#�� /�������� �����!�� � 0//�1� � ������ �� � //� �� ��� % �$ #� 2���� ��

�� �� '*,.) �� ���� ���� � � ��� �������� ��"���� � � � //�� ����� �������� � ���

%�� ���� ��������3�� #� 2���� ��� 4����� �� '*. ���� ���� �� ���!�� � ��#������

���������� ���� ��!�) ��������� ���!��� 5� ������) ��� �������� � ��� ���� ���$���

������ �� � ��!���� %��� �� ���$�� ������ ��� �&����� � � ��� ������� � ������ ��

� �������� ������ �� ����� �� � ������� �) %� �� ����� ��� ��!�� � ���$��� ������ ��)

��� �������� � ������� ����� ����� %���� �� ��������������#�� �� � ��� ���� �������

����� ������ �� ���� �������� � ��� ��� #��� %����� ����!��� �� ��� ����������) %�

��� �� �� ���� ���!����

6������� ��� ����� ��� �����!��� ���!�� ��� ���%� � �� ��� � �� ������� �

��������� ��� % �$ #� 2���� ��� 4����� '*. ������� �����# � ���� %���� ���%���

��� ��� �����# � �������� � ��� ������ �����&) ��7������ ���� %���� ������� 0 � 81 ��

�% ������ �������� ��� ��7����� 0 � � �1) ��� � �!����� ��#���!� ���� %���� �������

� ��#���!� � �������� ��� �������� ������ ���$�� � � ���$�� #� � ��� � ������ ���������

5� '88.) 9�� �� ��� ������� !�������!��������� ������#����� ����� 5� '+:.) 2� �� ���

������� ��#���!� ���� ��� �� �����!��� ���!� ����#���) ����) ��������� ��� ���!��

�� ��� ����#��� ���� ��� ��!�����!�� � � ������ ���!�� /� ����� �������� ����

%�� �������� ������� #� ;��� �� ��� �� ',.� ����� ������ �� ��� #���� � � +<2=

>:

������� �� ��� ������� ��� ���� ��� ����� � ������ �������� ����������

����� � ���� ��� �� ��� � ��� �min� �� ����� � ���� ��� ������ �� ��

���� � �������� ����� �� ��� �� ���� �������� �� ��� � � � � � ���� �� ���������

����� �� ��� ������� ���� �� �� � !"#� $�� �� �� ��� ������ ����� ��� ��� ���

� ����� ��� ������ �� ���� ��������� �� �� ���� �������� �� ������ !�%

$�� � � � � ���� � ��� � ����� � &� ��� ��'� ��� ��� ��� ����� ����

�� ��� � ���� (#)#� *+� ,,- � ���� ��� �� �� ��� ����� ��� ������.�"

��� ������/�� �� � �� ������ ��� �� ���� ��� ����� � ��� ��� �� ���� ��

��� /� � � ������ ��� ��� ����� (*%� 01- ���� ��� /� � ��� ����� �� ��"

������� ���& ��� ��� ����� � ��� ��� ������� 2���/������ ����� � &� � � ��

���� ��� ����� ���� �� ��� ����� ��

��� �������� �� ���� ����

�� ���� ������ � �� � ���� � 1"�� ��� ������� ����� ��� ��� ����� ������ �

����� �� ���� �������� /� ��� � �� ��� ����� ��� ������ �� �� ���� 2�"

�� �� � � � � &� ������ ��� �� ���� �� �� ���� ������ � �� � �� ���� �

�� � �3������ ��� ��� ���� �� ���� ������� ����� ��� ���� ��� ������ ��

/��� ����"����� � �����"����� � ��� ��� ����� ����� ����� �� ���� ���������� ��

������� ���� ��� ���&� � � ������ �� ���������� �� ���� ������������

$�� � � � ���� �� �� � �� ������� 4��� ��� � ���� ����� ������ �� �

������ ���&� �� ��� ���� �� � ����� ��� � ��� ��� ����� ������� ��� �"

�� �� �� "����� /� � ����� ��� �� k"��� ��� ��� �� 5&667� �� �� ��� ���� ����� �

���� � �� � � ���� �� � ������ ��� �� ������� ���� �� � �� ��� ����������

����� /� ���� �� ��� � ����� �� ���� � �������"�� �8���� ��������

+0

��

������� �

���� ��� ����� ��� ����� �������

�� ���� ��������

�� ���� ������ ������ ��������� ���� �������� ���� ������ � ��� ����

�� ���� ���� �� ����� ���� ����� �� ��� ����� ������� ����� ���

��� ����� �� ���� ������� ����������� ��� ��� ���� ����� ��� ������� ����

����� ����������� �!��� �� ���� ���� �� ���� �����"��� �� ����� ��� ���

�� ������ �� ������� #������ ��� $����� �� ��� ���� �������� ����

�� ���������� !� ��������� ����� ��� ������� �� ���� ���� �������� ��

��������

��� ����������

%��k ����� �� ��� ����� ����� ��� !� ������� ������ �� �� ��� ��������

���������� �� ����� &'(� )*� ++� *,-� ��� ����� ������� � ���� G = (V,E) ��

���� ��� ���� v ∈ V �� ��!�� ��� � ���� �� �� ����� .� ���� (k, v, w)�

��� ����� ������ k ������ �� �� ���� ���� �� ��!�� ��� �� ��� w ��� ��

����� �� ���� v� /�� ����� �� � ������ �� ���� ��� ����� ��� ��� � ���� ��

0k = 5 ���� ������ ����� ���� �� v = John ��� ������ keyword = basketball1�

�� ���� ������ ����� ���� ����� �� ���� ���� ����������� ������� ���� �� ��

����� � ���� ����� ��� ��� � ��� ����� ����� �� � ���� ������

((

���� �������� ��� � ���� �� �� ��������� ������ ������ �������� �� ��

�� ������ ��� ���� ��� ����� ��� ��� � ����� ��� ��� ������ �� ��� �� �� �����

��� ��� ������ ��������� �� ���� ��� �� ��� ���������� � �� ���� �� �����

� ���� � ���� ����� ��� � � ��� (k, v, w)� �� ��� �� �� ����� ��� ��� �������

�� v ��� ��� ������� �� w� �� ����� ��� ����� ��� ������� ��� ��������� �����

��� ��� ����� ��� �� �� �������� �������� ��� �� ��� ��������� ������������

��������� ����� � �� �� � ! �� ������� ��� ����� ����� ��� ���� ��� ��������

�������� ��� ��� ����� ��������� ����� ���� ������� �� �� � ����� ������� ��

�������� ������� � ����� � �� �� ���� ��������� ������ �������� ��� ���������

��� ��� ����� ��������� ����� ����� ��� �� �������� ���� �� �� ��� �� � ���

���� � ���� ����� ��� ������� ��� ����� ��� �� �� � ��������� ������ �� ���� ��

��������� � ���� �� ������ ���� � ������� � �� �� ������ ��"���������� �������

#$%� &'(�

����� ��� ��������

��� ������� ���� ��� �������� ������ ����)

• �� ��� ���� �� � � ���������� �� ��� ��� ���� �� ��������� ��� � ���� ����

��������� ������� �� ����� � ������ ����� ��������� ����� � ������� ���

� ���� ��� �*�� �� ��� ��� �����

• �� ������� �� �+���� ��� ��� �� ����� ��������� ������

• �� ���� �������� ��� �������� ����� ��������� ����� ��� ���� ���� ������������ ���� ����� ���� ����"����� �������

��� �����������

����� �� �� �����

�� ������� � !����� &�,� ��� ����� �� �� �� �� � ������� ������ ���� ��� � ���

�������� �� ���� �� ����� �������� �� ����� ������ �� ����� � ����� �� �������)

,%%

������ �� ��� � ����������� ������ ����� �� ������������

��������� � ���� �� � ����� G �� � ��� G = (V,W ) ����� V �� � ���������

��� �� ��� ��� ����� �������� v �� �� ������ V [v] ����� ��� �� ��������� �� v��

��������� ��� W �� � ��������� ��� �� ��� ��� ������� w ������� �� �� ������

W [w] ����� �� ��������� �� ������� ����� ��� ������� ��� w

�� ��� ��� � ����������� ��������� � ��� � ������ �� �� ���� ����� ��� ����

���� ��� ������� ��� �� �������� ���� ����� ��� ��� ����� ��� ��� � !� ��"�� �

�� ���� ��� � ����� ���� ������ �� #������

��������� �� ���� � $���� ���� %������ ������� �� ��������� ���� �������

� ����� ��������� ������ Р�� � ��������� �� ��������� Р= {������,���� ,��������,������,����� }� �����

• K ← ������(λ) �� �� ����� ��� ��������� �������� �� ���� �� ��� �

������ �������� λ ��� ��� � ����� ��� K

• I ← ���� (K,G) �� �� ��������� �������� �� ���� �� ��� � ����� ���

K ��� � ����� G ��� ��� � ����� ����� ����� I

• T ← ��������(K, k, v, w)! �� �� ���� ��������� �������� �� ���� �� ���

� ����� ��� K� �� ������ k� � ����� �������� v ��� � ������� w ��� ���

� ���� T

• R ← ������(I, T )! �� �� ������ �������� �� ���� �� ��� �� ����� I ���

� ���� T ��� ��� �� �������� ���� R

&

• S ← �������(K,R)� �� ��� ������� �������� ���� ����� �� � ��� � ����� ��

K � � � � ����� ����� R � � ������� � ��� �� k ����� ��� ����� S�

���� ���� ����� �� ��� �� ���� ��� �� ������ � ������ ��� �����

��� ������ ��������� ��� ����� ��� �� �� ��� ���� ������� � ������� ���

� �� ������ ������������ ������� ������� ��������� �� ��� ��� ������

��� ������� �� ��� ����� ��� ����� ��� ��������

� ����� ������� ���� ��� ��������� ������ !��!�� � ���� C � � ����������! �� P � C ��� � ����� G �� �� ��������� � � P ��� ����� � ������� ������ G � ����� C"� ��� #������ �� ������ ��� !� � ����� �������� � � ���

��������� ���� ����� ��������� C ����� ��� �� � ����� ������� ������ ��

������ G� � ���������� ��� ������� ���� �� G �� P � ���� ��� ���������

C ����� ��� #���� ������ ���� ��� ���� ������� ��� ��� ���� �������

�������� �� � $�� ���� #����� P ������ � ������� ��� �� k ����� !�������

$���� %�� ���������� ��� ������ �� ���

����� ������ � ���

&���� ������� �� �� ��� �� � �'���� �� ���������� �������� �������

())*+� �� �� � ��� ��� ������������ ������ (,-�+ ������� �� �� �� ))* �� �����

������� ������ �� � ���� ������� ��� ��� ���� ������ ����� ./�� 0�1� 2�

���� ��� �� �� !���� ��� ������#���� ������ (,3�+ ������� �� ��� 4 ,3�

������� �� ��� ��� ����� �� �� ��������� � ��� #����� �� �� ���� ��� �����

�� � � !������ A� ,3� ������� �� �� !��!�� ��� ������ 5� � ����� �����

���� ������� ��� ���� �������� ������ C � P � ������� C � �������� ��A � P � �'����� �� ��� ����� �� ����� � ����� ������ ����� A ������� ���� �������� S� S � �!� ��� ������ �� ��� ������� ������ �� ��� ����� �������������� 4� A ���� ������ ��� ���!� ��� ������ �� �� ��������� ��� ��� ��������� ��� ����� ������� ������ �#���� �� ��� ������ �� ��� ������� ������� ��

,3� ������� �� �� � ��� �� �������6

�78

��������� � ���� ������ ����� ����� � ��� ����� ��� ����� Р= (������,

�����,�� �����, ������,�����)� � � ������� ���� ���� Lsetup ��� Lquery� � �����

�� � ����� �� λ� �� ��������� A ��� � ������ �� S� �� ����� ���� ���� ��� �����

�� ��������

• ����A(λ)� A ���� ��� � � ��� G� �� ���� �� ���� � ����� ��� K ←������(1λ) ��� �� � ������ ����� � ��� ��� I ← �����(K,G)� ����� I� A��� ����� ������ �� ������� !�� ��� ���� (k, v, w)� � ���� ������� � A� ���� T ← �� �����(K, k, v, w)� A �� �� ���� � ����� R ← ������(I, T )�

" ��� A �� � � � �� b ∈ {0, 1} �� � �� � �� � �����

• �����A,S(λ)� A ���� ��� � � ��� G� �� ���� ������� Lsetup(G) � S� S �� ������ �� � ������ ����� � ��� ��� I∗� ����� I∗� A ��� ����� ������ ��

������� �� ���� ������� Lquery(G,q) � S �� ��� q ������ � � ��� ��

��� ���� �� ������� !�� ��� ���� (k, v, w)� S ������ �� � ���� T ∗ ��� �����

� � A� A �� �� ���� � ����� R∗ ← ������(I∗, T ∗)� " ��� A �� � � � ��

b ∈ {0, 1} �� � �� � �� � �����

������� #$"������� � �� ��� ��� �������� � ��������� ��� %&&�' ��������� A��� ��� ���� ��� � &&� ������ �� S �� �������

|Pr[����A(λ) = 1]− Pr[�����A,S(λ) = 1]| ≤ negl(λ).

���� negl ������ � � ���������� ���� ����

����� �����

(�� ��������� ����� ������� ���� ��� ��� ��� ��� !� "�# � ��� ���� ������ ��

�������� �� ���� $� �%������ ��� ������� ������� ���&��� �&� '����� � ���

����( )�� ���� ��� � �� $����&�( *��� '���% v � ��� ���� � ������� &�� �

��� L(v) ����� � �� �� �$ (u, d) ��� &��� u � � '���% ����+� ��� d � ���

������� ������� ���&��� u ��� v( � ����� ������� ���� � ��������� ���� $� ���

�&� �������� '����� s ��� t� ���� �%��� �� ����� � �� (u1, d1) ∈ L(s) ��� � ��

��"

(u2, d2) ∈ L(t) ���� ����� � u1 = u2� �� u1 ������ �� ��� �������� ���� ������� s

��� t� ���������� ��� �������� �������� ������� s ��� t ��

min{d1 + d2|(u1, d1) ∈ L(s), (u2, d2) ∈ L(t), u1 = u2} ���

��� ��� �� � ����� ��� ��� ������� �� ������� � ��� �� ��� � L ← ���(G) ��

����� G = (V,W )� ����� L = {L(v)}v∈V ������������ �� ���� ������������� �������� �� ! �� � ���� "����� ��"��

��������� �������#�� ����� �� ������������ " ��������������� � ���� � ������ �����

����� ��� ��� �� � � !� ��������� � ������ $�" K ��� �� ��������"� ������� ������

X� �� ������� � %������& ������ Y ← ���(K,X) �� ����� λ� ����� λ �� ��� �������"

����������

�������� ���� � ������ � ����������� � ������� '"��������$�" ����"��

���� �'() ��� ������������� ����"����� �*)� ��� ������� ��� ������ ��"����

������� �������#�� +� '() ������ �� �������� �� � ����"����� � ������� ����

��� � ����"����� � ������� �� ��� *)� ��,��� ���� '() �� ���� ��� ���� ����

����� �� �� � ��"� ����"���� �� ��� ���� ��������-��� ��� ����� �������" ��.������

�� '()� *)� �� �� �� � ! ��� �� ���� �� /012�

��� �� ��� 3� ��� � ���� �������� ���� : {0, 1}∗ → {0, 1}λ� ����� ��� ����� ������� ����� 4*�0�

��������������� � ����� !��� ����� � �� �� ��� ��� ���� ��� �������� ��������

����������� ��5����� ��� ��� ��� ���������� ��� #� �� ������������ ���������� ����

������ �� ��� ����"���� �������� �� ���� �� ��� �" � ������ ������������#��� ������

��� �6�) ������ ����������� ��� ������������#��� �������" �#�� ����� ����������

�� ��� ���������� !���� "� �� ��.�� ���� ������������#��� �������" �� �� ����

��������� � �6�����������#��� �������" � ��� � ���� ��� ������� ������

��������� �������� �� ��� � �� ��� ��� K � ���� ����� d1, d2, d3, d4� �� d1 + d2 >

d3+ d4� ��� encd1 + encd2 > encd3 + encd4� ���� encdi ← ���(K, di) (i = 1, 2, 3, 4)�

3� ������ ��� ������������#��� �������� ������ �������� �� /�72 ��� �� � ���� "

����.�� �� .� 6�����������#��� �������"� ����� ������� 6�) ������ ������� ��

89

������� d �� encd ← K · d + r (0 < r < K) �� ���� K �� � ������� ������� ������

��� ��� r �� �� ������� ����� ����� ���� �� ��������� ��� ��� ��� ��������� �� ���

����� �� ���� ���� K ���� � ������ �������������� ���� ��� ������ ��� ����� �� ���

�������� ������� ��� ���� ����������� � ���� �� �� ����� r �� ��� ����� (0, K/2) ��

���� ����� ��������� �� ��� ��� ����� ����� �� ����� ���� ���� K� ��� ������� ���

������ �� �� �������

�������� �� ���

���� K, d� � ������� ������ ��� ��� �� ������� ����� ������ encd� � ����� ��� �����

� r$← (0, K/2)

� !����� encd ← K · d+ r

������� �� ��� �������� ������������ � ���������

������ "�� ��� ������� ������ ��� K ��� ���� ������� ������ d1, d2, d3, d4 �� d1 + d2 >

d3 + d4 ����

encd1 + encd2 − (encd3 + encd4)

= K · d1 + r1 +K · d2 + r2 − (K · d3 + r3 +K · d4 + r5)

= K · (d1 + d2 − d3 − d4) + r1 + r2 − r3 − r4

≥ K + r1 + r2 − r3 − r4

> 0

∴ encd1 + encd2 > encd3 + encd4

������� �� ���� ��������� ��� ����� ����� ����������� ����� ��� �������� ��#

������ ������ �� encd1 ≥ encd2 ���� d1 ≥ d2� ������� ���� ����������� ������� ��

����������� ��� ��� ��� ������ ��������� �� ��� ���������� $��� ���� ��� �� ��� ��

� ������ �������������� ��� ������� ������� ��������� ��� ������������ ����� ���

� ��%����� ������������ �� ��� ������ �������

������ ���� &��������� �� � ���� ��������� �� ������ �'����� ��������� ������#

���� D ������ (label, value) ����� (���� � ����� l ��� ����� D[l] ��� �� �������� ��

O(1) ���� !��������� �� ��� ������ �� ���� ������ �� D�

)*+

����� ��� ���� ��� � ������� �

���� �� ����� �� ��

��� � ����� ����� �� ������

��� � ������������� ����� ��

�� � ������� ����� ������� �� ������

� � ������ � �� � ������� �� ������

� �� � ���� ����� ��

�� �� ������������ �� ����� �� ������

λ ��� ����� �� ���������

K1 ��� ������ ��� ��� ���

K2 ��� ������ ��� ��� �

K3 ��� ������ ��� ��� ��

I ��� ������ ���! ���������

D1 ��� ���������D2 ��� �����D3 ��� �����������D4 ��� ���������k ��� ������� ��������� ��� � ��� �����v � ������w � ������T � ����� �����R �� �������� ������S � ��������� ������G =< V,W > ��� ����� �� �� ���������labw � ������ �� �� ����� �� � ������!�����"� �����keyw � ������ �� �� ����� �� � ������!�����"� ���labv � ������ �� �� ����� �� � ������!�����"� �����keyv � ������ �� �� ����� �� � ������!�����"� ���encv ��� ���������� ���� �� ������ vencencv ��� �����!���� ���������� ���� �� ������ v

��� ��� ������� �

� ���� �������# �� ������� ��� ����� ���������� ������$ �� ������% �����������

�� ������� � �������� ���� �� &���� '$($

)������� �� *�"������ (+# � ����� ���������� ������ �������� �� "�� ����������$

,� ��� ������� ��� ������$

��� �������� -)�������� ./$ 0�� ��� ���������� ��������� ������� ����� ���!

�� ������ ���� K1, K2, K3$ &�� ������ �� ������ ���� ��� ���� �� ��� ��������

��������� λ$ K1 �� K2 ��� ��� �� �� �� *1&# ������������$ K3 �� �� �������

(2'

�������� � ������

� ���� λ� � ������ ���� ��� ��� � ������������ K� � ����� �� ��� � �� �� ������

� K1$← {0, 1}λ

� K2$← {0, 1}λ

� K3$← Z2λ

� ����� K ← (K1, K2, K3)

�� ���� �� ������������

� ���� K,G� � ����� �� ��� � ������������ D� � ������ �����������

� ����� G �� (V,W )� ����� K �� (K1, K2, K3)� ��������� � �������� D� ��� w ∈ W ��

� labw ← � �(K1, w||′lab′)� keyw ← � �(K1, w||′key′)� ��������� � ��� Lw

� ��� v ∈ W [w] �� encv ← �������(K2, v)� encencv ← �������(keyw, encv)�� ��� encencv ��� Lw

�� ��� (labw, Lw) ��� D

�� ����� D

�� ��� �� ���������������� �������� ���� � �������� � !"#$

��������� %������� &'$ (�������) �� �� ������ ����� � ����� ����� �����

����� ����������� ���� ���� �� �*+) �� ������� ����� ���� �� �� ,�������$

-� ���� ��� �� �� ����� ������� %�$�$) ��� ������� ���� ��� ���� ����' ������

�� ������ ��� P ) ��� �������� P �� �� ������� � ������ ����� ��������� �� ��

������� �����$ �� ���� �����) � ������ � ��� ,��� (k, v, w)) P ����� �����

��� v � ������ k ������ ������� ��������� w$

*��������� � �� �������� ���� �� ++* ����� ���� �� &.) /") 0.#) �� ��� ����

�� ��� � ������ ����� ������� ����� �� �����1���� �������� � ������ ��� ,������$

2�������) ��� ,������ ��� �� �������� �� � �� ���� ��� ����� ��������$ 3����

� ��� ,��� (k, v, w)) �� 1�� 1�� �� � ��� �� ��� ������� ��������� w) �$�$) W [w]$

45.

�������� � ����������

���� K,G� � ������ �� �� ���

������ D� � ������ ��������

� ���� G � (V,W )� ���� K � (K1, K2, K3)� ��������� �������� D� L← ��(G)� �� v ∈ V ��

� encv ← ������(K2, v)� ��������� ���� Lencv

� �� (u, d) ∈ L(v) �� labu ← ���(K1, u||′lab′)� encd ← ���(K3, d)�� ��� (labu, encd) ���� Lencv

�� ��� (encv, Lencv) ���� D

�� ������ D

�������� � ����������� �

���� K,G� � ������ �� �� ��������� D� � ������ ��� ���������

� ���� G � (V,W )� ���� K � (K1, K2, K3)� ��������� �������� D� �� v ∈ V ��

� labv ← ���(K1, v||′lab′)� keyv ← ���(K1, v||′key′)� ��� Nv �� ���� �� m �������� ����� �� ������ �� v

�m �������� �� �� ��� ����� ���� ��� �� �� � ��������� ���� Lv

�� u ∈ Nv ��

� encu ← ������(K2, u)�� encencu ← ������(keyv, encu)�� ��� encencu ���� Lv

�� ��� (labv, Lv) ���� D

�� !����� D

"��� �� �� ���� �� ���#�������� �������� ������ �� (w,W [w]) ����$ %� ���

���� �������� ��� &����������$

"�� &���������� �� �������� � �������$ '�� ��� ������ w( �� �� ������� �

)*+

�������� � �����������

���� K,G� � ������ �� �� ���

������ D� � ������ �����������

� ���� G � (V,W )� ���� K � (K1, K2, K3)� ��������� �������� D� �� w ∈ W ��

� labw ← � �(K1, w||′lab′)� �� v ∈ W [w] ��� encv ← �������(K2, w||v)� wv ← ����(labw||encv) ��� (wv, 1) ���� D

� ������ D

��������� � �������

���� K,G� � ������ �� �� ���

������ I� � ������ ����� ���������

� D1 ← �����������(K,G)� D2 ← ��������(K,G)� D3 ← ���� �������(K,G)� D4 ← �����������(K,G)� ������ I ← (D1, D2, D3, D4)

labw ← � �(K1, w||′lab′)� ��� ��� ����W [w]� �� ������� !����� ��������� ��� ���

v ∈ W [w]� �� ��� "��� ����� ���������� v �� �������� � encv ← �������(K2, v)� ��

��� ������ ����� ���������� encv �� ������� �������� � encencv ← !������(keyw, encv)�

����� keyw �� w!�����"� �� ������� � keyw ← � �(K1, w||′key′)� #�� �� ��!

���� �� ��� "��� ����� ��������� ���� ��� �� $%& ����� ��� '(% �� �� ��

���� ��� ������ �� ����������� &�� "��� ����� ��������� �� ����� �� ���� ��� )��!

��� ������"��� *� ���� ���� ���� ��� ��� ��� ���������� �� ��� ���� �� ������

������ �� �� ���� P �� ���� ��� ����������� �� ��� ��� )����� ������� ��������

����� &��� �� ��� ��� �� $%& �� ������ ��� ��� ��� �������� ������� �� ���

����������� +���)��� �� �� ��� ���� P �� ������� ����� ���� �� ,����� C-� .��������� �� �� ������ ����� ��������� �)�� ��� "��� ����� ���������� �� ��� ������

����� ���������� ��� ����� �� '(% �� ����� (���������� �������� �� ���������

/01

��� ������ ���� � � ���������� ��� ����� �� ���

��� ������� �� ��� ������ ��� ����������

������ �� ��� � ����� ���� ��� ��� ������� ������������ ��� ��������� ��������

�� �������� �� �� ���� �� � �� �� ��� � �� ������ ��!�" ��# ��� ������#$�#� ��

������ ��!%"�

&�'��� �%�����# ��� '������� ���������� ��� ������# ������# w( ��� ��%�������

��%��� �� �� �#������ ����� k '������� ��� ��� ������� �� v� �� ���'� �� ����� ��� ���

��%����� �����#� ��� ��� � �� �� ��� � �� ������ ��!�"( �� ��� ��� ��� ��%�����

�����# �� )�* �� �������� ��� ��%��� {L(v)}v∈V ( �� ����� �� ������ ��!�"� �� ���

������� #��������� �����# &� $�#� �� ����� ��� (v, L(v)) ����� +��� (v, L(v)) ��� ��

����� ��# �� �������� ��� ��� '���� �#����,��( �� �� ����� ��# �� encv ← ��(K2, v)(

����� �� ��� ���� �� ��� ,��� ����# ����� ���� �� ������#$�#� �� -��� ��������#�

��� ���� (u, d) ��� �� L(v)( u �� ����#�# �� labu ← ��(K1, u||′lab′) ����� d ��

����#�# �� encd ← �(K3, d)� �� ��������� &� $�#� ���������� �� �������� �

������ ��!#" ����� �� � �� �� �� &� $�#� �

������#$�#� ��# &� $�#� ��� ������ ��� P �� ������ ��� �������� &���'��(

�� ����� ��� ��� ���� '������� ���������� ��� ������# ������#( ��� ��������� ������

����# %� ����� ��� �� �����#��� �� ��������� � ����� �� ���#�� ���� ����� .��

�#�� �� �� ������ ��� ��# ����� m ������� �����%��� Nv �� ���� '���� v ���� ���

��#�� �����#��� �� ��� ��������� �� v( ����� m �� �� ������� ��������� ��� � �����

(k, v, w)( P ����� Nv ��# ����� ������� u ∈ Nv �������� w� /�� �������� ��#� ����

��0

�������� � ��������

� ���� K, k, v, w� � ������ �� �� ������ �� ������ ���� ��� ��� � ������������� T � � ���� �����

� ����� K �� (K1, K2, K3)� labw ← ��(K1, w||′lab′)� keyw ← ��(K1, w||′key′)� labv ← ��(K1, v||′lab′)� keyv ← ��(K1, v||′key′)� encv ← ����� (K2, v)� ������ T ← (k, labw, keyw, labv, keyv, encv)

k ������� ��� ��� �� ��� m �� ������ ��� �������� ��� ���� ���� ��� ����� � �� ���

���� �� ������ ��� ���� � ��� ��� ��� ������ m �� ������ ������ k ��������

�� ������� ��� ���� ������� ����� �� ��� �� ��� ���� ������� ��� ���� �

������ !� �����"���� �� �� � � � �� ���� ���� �� ��� (v,Nv) �� ��� #� ������

(v,Nv) �� � � � � � ��� �� �� �� �� $�� %�����"����� &����� ���� ��� v �

������� �� labv ← ��(K1, v||′lab′)� v'� �� ����� u ∈ Nv � ( ����� ��������

��� encu ← ��(K2, u) ��� encencu ← ������ (keyv, encu) ����� keyv � � ������

���� �� �� �������� $��� keyv ← ��(K1, v||′key′)� !� �����"���� ������� �� �

$��������� � )���� �� * ��� �� ������� �$ !� �����"���� � ����� � ) ���� + (,�-�

������� ���� � ������ .�����"���� �� �� � $�� ����� �� ������� � ������

����� �� � ������� .�����"���� � � � �� ���� ���� �� ((w, v), 1) �� ��� "$ � �� �

(w, v) �� ��� ���� ����� 1 � �� �� ��������� �� ������ � (w, v) �� � �� ���� �������

labw ← ��(K1, w||′lab′) ��� encv ← ����� (K2, v)� ���� �� ������ (labw||encv)�� ����((labw||encv)) �� ���� P ������ ����� �� ���$�� �$����� �� ��$��� ���� ���

)���� �� / �������� ��� ��� ��� �$ .�����"���� ������� �� ��� ) ���� + (,$- �����

�� ��������

!�� �� ���� ��������� ��� ������ ������ � ��� �� ���� ����� ���� �� ���� �

� ��� �� ���� $���� �� ��������������� ����������� ���������������� ��� ��������!

��� ��� ������� ��� �������

�������� ,����� ��� /-� ����� ������� �� ����� ��� ������� ������� ������

����� �� P �� �������� ������ ��� ���� �� �$ ������ ��� ������ ������ �$����� ���

000

�������� � ��������

���� L1, L2� ��� ����������� d� � ����� ���

� d←∞� �� (u1, d1) ∈ L1 ��

� �� (u2, d2) ∈ L2 ��

� � u1 = u2 ����

� d′ = d1 + d2� � d > d′ ����� d← d′

� � ���� d

�������� � ���� ������

���� I, T � �� �� � �������� � �� �� ��� ������� R� �� ������ � ����

� ��� I � (D1, D2, D3, D4)� ��� T � (k, labw, keyw, labv, keyv, encv)� Lw ← D1[labw]� Lencv ← D2[encv]� �������� ��� ����� L,R� �� encencu ∈ Lw ��

� encu ← �������(keyw, encencu)� Lencu ← D2[encu] Duv ← ��������(Lencu , Lencv)� � (encu, Duv) ���� L

�� ���� L ������� �� ����� ��� � � � �� ����k ������ � ���� � � R�� � ���� R

� ��� � ���� ��� P �� � �� � � � ��� �� �� ��� � ��� �� �� �

������ !��������" #$ � ��� ��� P �� ��� � ��� ���� �� � �� ��� � ���

�� �� %� ���� �� �� � & ������ � �� '� ��� �� � ���� � ��������� w � �� �

�� � (���� � �� �)��� k �* �� " ����� � ���� �� �� v + ��� ���� � ��� �����

�� �� ���� ������ ����� � ���� �� �� � � ���)���� � �� '� ��� m ���� ��

� ���)��� � �� � �� � ,������� � �� �)��� k �* �� " !�* �����)� $ ����� ������

w + ��� ���� � ��� ���� �� �� ������� ������ -� ����� �* ���� �� � ��

�� �� ��") � �* � ���� � ��������� �� �� �� � ���� !����� � ��� � ����

*� �� ���$ -� � *�� � � �� � ��� � � ��� ���� t �� �� ���� �� %�� ������

../

�������� � ������������

���� I, T � �� ����� ����� �� ���� ���������� R� �� ������� ����

� � �� I � (D1, D2, D3, D4)� � �� T � (k, labw, keyw, labv, keyv, encv)� Lv ← D1[labv]� ���� ���� ��� R� �� c← 0� �� encencu ∈ Lv ��

� encu ← ��� ��(keyv, encencu)� � D4[���(labw||encu)] = 1 ���� ��� encu ��� R� �� c← c+ 1�� � c = k ����

�� �����

�� ���� R

��������� � �����������������

���� I, T, t� �� ����� ������ ���� ���� �� � ����� ������������� R� �� ������� ����

� � �� I � (D1, D2, D3, D4)� � �� T � (k, labw, keyw, labv, keyv, encv)� Lw ← D1[labw]� � |Lw| < t ����� R← �����������(I, T )

� ����

� R← ������������(I, T )� � |R| < k ����

R← �����������(I, T )

� ���� R

������ ���� �� ���������� � ��� � ����� �� �� �� ��� �� �������� �� ����

� � t� ��� �� ����������� ��� !� ����� �� ��� ��� �� ������������ ���

!� ����" �� � �� � �� ������������ � ��� � ��� k ������ P ��� ���� ��� �������������"

#� ��� � ������ �� ����� �� $���� %&'" $���� %&'� � ����� �� ��������

���� ����� (�� ������� �� )������� � � *� ��� � �� $���� %&+�!� �� $����

,,'

��� ����������� ����� �� ������ ��� � �����

��� ����������� ����� ����� ����� ��� � �������

������ �� ��� � ����� ���� ��� ��� ������� ������������ ��� ����������� ���������������

������� ��� ��� �� �� ����� (2, labw2 , keyw2 , laba, keya, enca) ��� ����� (2, a, w2)! ���

����������� �������� �� ��� �����"��� ��� �

• #�� $ %� ���"���%���&! P ���� labw2 �� �'���� � ���� �� ������� ����� ���

������� Lw2 = {encencc , encencd , encence}� (���� ������� ��� ������� ��� �������

$$)

������� w2�

• �� � P ���� �� ��������������� ����� ��� keyw2 � ������ �� ������

����� ���������� ��� ������ encc� encd ��� ence�

• �� � �� ��������� P ���� �� ������� encc� encd� ence �� ���� �� enca �

����� ���� �������� ����� �������

• �� � �������� � !��"��� #�$ ��� %������ &� P ��"���� �� ������

������� !��" a � c� d ��� e� �������'���� P ������ � �������� '������

����� ��� ������ � a� ����� encc ��� encd�

�� ���"��� �! �� ������������ ������� �� #��(�)� *�'�� � +���� (2, a, w1) ��� ��

���� (2, labw1 , keyw1 , laba, keya, enca)� �� ������������ ���� �������� !��� �����

�� !������

• �� $ �� ,�� ���������� P ���� laba � ����� ��� ������� �������� ��� �����

�! �� +������ '���� v�

• �� � P ���� �� '������������ ����� ��� keya � ������ �� ������ �����

���������� ��� ������ enca� encb� encc ��� encd�

• �� � �� -����������� P ������ �� �������� �! ���(labw1 ||enca)� ���(labw1 ||encb)����(labw1 ||encc) ��� ���(labw1 ||enca)�

• �� � P ������ ��� � �������� '������ ����� ����� $ � ��� �� ����� enca

��� encb�

������� (�� ����" #)� .�� ��������� �� ����" � ����� ���� �� ��"��� �������

�� �� ��� ����� ��������� !�� ��� '������ ������� !��" P ��������� ����� ���� � .��� ���� �� ��� ���������� ��������� ������ ���

������ ��� ���� ��������� ����"� ������� ������� ����� �� � ���� �!������

���� .� ������ � ������� ����� ���� �� ���� �� ���� � �� ���� ($) .�� �"�

������ ����� ������� ����"� ������ ������ ������� ����� (�) /��� �������

�� ,�� ���������� ���� ��������� ��� ����� ������ �� ��������

$$&

�������� � �������

� ���� K,R� � ������ �� �� �� ���� ��� ������������� S� � ������� ������

� ���� K � (K1, K2, K3)� ��������� ���� S� ��� encv ∈ R ��

� v ← �����(K2, encv)� ��� v ���� S

� ������ S

��� ������ � �����

��������� �� ��� ������� ����� �� ��������� ��� ��� ������� �� �� � ���� ����

������ �� ��������� ����� ��������� Lsetup �� Lquery! "�# #� ������ � ���

����� ��������� �� ��� �� � ���� ���� ������!

$����� C ������� �� %������� �� � �&���� A �� �� ��� ������ ����� ���������!

'�������� Lsetup ���� ���� ���� ���������� ��� ��� �� �! ����� A ������ %�������

A ��������� ����� ���� %��� ������! (�� ��� ��� A �� ��������� #������

&����� �� ��#��� �� �� ����� %������ ����� ��� ����� ��������� �������� ��

�������������! ) �������� Lsetup(G) ��� ��� (|W |, |V |, |P |,m, len1, len2)� �� #����

• |W | �� ��� ��� �� �� ��#����!

• |V | �� ��� ��� �� �� &�����!

• |P | �� ��� ��� �� �� *��#����&�����+ ���!

• m �� ��� ������� ������ ��� "���� �������!

• len1 �� ���� �� |W | �������� �������� ��� ������� �� |W | &���� �� ,�-

#��������!

• len2 �� ���� �� |V | �������� �������� ��� ������� �� |V | &���� �� .� �����

/�� q � C0� %��� ��%����� ��������� n %������! Lquery(G,q) ��� ��� (repv, repw,

k, info1, info2)� �� #����

112

• repv ������ ��� ��������� � ����������� � ������ ��������� repv �� � ���� �

���� n ���� ���� �� 1 ≤ i ≤ n repv[i] = j � ��� ������ �� q[i] �� ��� j�� ��������

������ �� �� ����� (q[1], ...,q[i])� ��� ������� ������� ��� �� ����� � ������

�������� �� (a, b, c, d, c, e, b, a)� ���� repv = (1, 2, 3, 4, 3, 5, 2, 1)�

• repw �� ������ �� repv ������ ���� �� ������� ��� ����������� � ������ ���������

• k �� � ���� � n �������� ���� ���� �� 1 ≤ i ≤ n k[i] � ���� �� ��� k ����� �� q[i]�

• info1 ���������� ��� ��������� ����� ���� ������� ������ ����� ����� �������

��� ������� �� � ����� ��� ���� ��������

• info2 ���������� ��� ��������� ����� ����� ����� ������� ������ ������� ���

������� �� ��� ����� ��� ��� ���� ��� ��� ����� ��������� ������� � ���

�� ��!�����

������� �� �� ����������� ��� ������ ���� ���� ���� �� �� ������� ���� ���

�������� ��� ���������� ���� � ������� ������������ ���� ���� ��������� ���

���� �����

������ "�� ����� ���� �� �� ��������� � �������� S ��� ���� ������� �������� Lsetup

��� Lquery �� �������� �������� � ��� ����� ��������� I∗ = (D∗1, D

∗2, D

∗3, D

∗4) ��� �

���� � n ��� ������ q∗� #�� ���� �� �� ������� A �� �������������� ������� ���

�� ��� � ���

S $��� ��������� ��� ������ ���� K∗ ← ������(λ)� |V | �������� ������ ������$���v∗1, ..., v|V |∗ ��� |W | �������� �������� w∗

1, ..., w∗|W |�

• � ����� I∗� S ����� ��� %������!���� D∗1� ��!���� D∗

2� &�������!����

D∗3 ��� '�����!���� D∗

4 ���� ��� ����� ����� ��� �� ������� �� Lsetup(G)�

(���� D∗1 ������ ������� |W | ������ "�� ������� ��� ����� ���� ���� ������ ����

�������� ��� ��������� )������������ �� ����� ������� �� �� ������� �� ���

����� ���� ������� S ���� ��� ���� ��� ���������� ��������� ������� ����info1 ��� info2� ��� ����� �������� S $��� ��� ���� ����� ��������

**+

����� ��� ��� ������ �������� � � ����� �������� � � � ��� ������� ��������������� � !������� � "���� � #�����$%���& ��' �����

�������� (%)*+ ,,%�*( *,%--���� �.%..) */�%,). �+�%�**� ���� ,-%*)� -%.�,%-(+ -%)+,%)�*

10-1

100

101

102

103

104

Facebook HepTh Twitter

Inde

x ge

nera

tion

time

(s)

KeywordIndex HopIndex NeighborIndex LookupIndex Total

������ �� ���� ������ �������� � � ����� �������� � � � ��� ������� ����� ����

����� � ����

• ��������� q∗� �� ����� � ��� ����� �� ���� ��� ����� � �� info1! S �������� ����� ����� ����� �� "���� ������� �� ��� � ���� �� � ������ S ����� �������� ���� ����� � � ����� ������� #� ��� ��� ����� � �� repv ��� repw�

$���� ����� ������� ���������� ���! ���! ���! �� ��� ������! ���� ����� ������

���� I∗ ��� ����� �������� q∗ �� ��������������"�� �� � ���� ���� %��� &� ����

|Pr[����A(λ) = 1]− Pr[�����A,S(λ) = 1]| ≤ negl(λ).

��� ��������� �������

'� ���� ����� �! &� �������� ��� ���� ������ � ��� �� � ��� ����� �������� � �������

�� ���� �� ����� &��� &������ ����� ���� � (�) ��� ��� � � *��� &� ������� &���

'���� + �� �)�),- .��- /01 +�2 ��� 3 /4 5 6� % �� �� ����� ��� ��! ���� � ���

�� ��� #����� � � ��� ���� ����� �� �� ������� � 7- ������� ���

773

10-1

100

101

102

103

104

Facebook HepTh Twitter

Inde

x si

ze (M

B)

KeywordIndex HopIndex NeighborIndex LookupIndex Total

������ �� ���� ������ �������� � � ����� �������� � � � ��� ������� ����� ����

�������������� �� !�� � ��"����� ������ #� ���� ��� �� �� � ��� # �� "�

$��"�% &#��� ��� ' ����� ()!*+ ���� ������ ���#��� ����� �� ����� �������� "��#���

�# �������� �� ��� �����% � ��� ������� � �� ��� ������� ��� ��� �����+ �,�% -.

��� /�. #��� ����������� ����� ��0���� #��� �������� ��������� λ = 128+ 1�.

#�� � ��2�� �� � ��� # �� "� 3�� ���4��� (�5*+ -���� ������ #��� 6��� �����������

����� ���� � ����� ���� ���� ���������+

�������� 4� ���� ��� ����� �����# ��� ����� �������� �� � /���� �� ���# ��

$������� �� 6���� 7/�$�8+ 4� ���� ������� ���������� �� �"�� �+!+ -������ ������

�� � � ���� ���# �� �������% �� #���� ���� ������ ��� ��� � ���� � #���� ���� ����

��� ��� � ������ ������ ����� "��#��� �# ��������+ &� ������� ������% ���� ������

��� � ���� � �������� ���� �� "�������% ������% ������� �% ���+ 4� ��� ��� ��������

� ������ ��� ��� ���# ��� ��"���� � ���� ������+ � ��� ��� ������� �� �������

��� ������� � ����� � ��� ��������% �� � �� � � �9��� �� �����+ ��� �� "������

��� ���� ������ � �� ����� �������� � ������ �� ����������� � ���������+ � �

�������% �# ������� �������� :"�����"���; ��� :�#������; # ��� "� �� ������� ��

:�������); ��� :�������!;% #� ������ ��� :�������); ��� :�������!; �� ���# ���+ -������

��� �� � ������ � ����� �" �� ���� ������ ������� ��� ��+ .��� ������ ���������� �

����� ��� ���� ���� ���������� � ������ � "����� �+ .���� ����� ��� ���� ��� ����� �

���� �� ����% $��� ��% $"�������% ���+ 4� �������� ��� # ��� �� ���� ��� $��� �� ��

��� ���# ��� ��"���� � ��� ������+ -������ ������� �� ������� � ������� ������

������������������ � ���� ������

))<

������ ���� �� ����� � �� ��� ��������� ����� �� ��������������� ������

����� ���� ��� ������

��� ��� ���� � ����� ����� �� � ������� �� ������ ������� �� ������ ���

���� �� ����� �� �������� ��� ��� �� ���� ��� �� �� ����� ��������� �������

� ��� ���� � ��� ������ �� ���� ������� ������ ��������� m �� ����� ��������� m

��� ��� � � !"" �� ������� ������ #"" �� ������� ��� � �� $""" �� �������

������� ���� ��� ��� ��� ��� � %�� �� &'(� )������ ��� ���� ������� ������ ���

������� ����� �� *�����+���� ,�+���� -���� �+���� �� .� �+��� ���

���������� �������� %� ��� ���� � ,�+��� �������� �� ���� ��� ��� ���� ��

���� �� !'�� �� ���� �������� �� �� ��������� ������ ��� ��� !'�� �� ����

������� ����� �� � ��� ���� � ���� �������� ��� ��� ��� ��������� ���� � ����

������� �������� ������ �������� �������� / �� �0����� �� ��� ���� ���� �� ���

������� ������� ������ �� �� �� � $""" ������ +��� ����� ��� ������� � %�� ��

&'#� ��� ���� ���� ���� ������ ��� #" 1) ��� ������� ������ � (�& 2) ���

������� �������� ����� �� ������� �� �� ��������� �����

����� ����� ��� ������

+ ��� ��� 3 ��� ���� �� ���� ������ ��������� k ��� ��� �� 4 �� ��� ����� ���������

����� �������� t ��� ��� ��������� ���� ��� ����� ���������� �� ��� ����

����� �� ��� t = 200 �� ������� ������ t = 300 �� ������� ��� � �� t =

500 �� ������� ������� �� ������ $""" ��� 3 ����� �� ���� �������� %� ����

��� 3 ��� (k, v, w)� v ��� ������ �������� �� w ��� ������� ������� � ���

������ ���3 ��� ������ ���� �� ���������� ������ ��� 3 ��� ���� ��� ��

������������� �� �������������� � ������������ 5��� �����6� �� � ����� ����

�������������� ������ �� ������ ���� ����� ���� ��� ��� �� ������ ���������

%�� �� &'&� &'7 �� &'4 ��� ��� 3 ��� ���� �� ���� ��� ��� ������ ���3 ����

�� �� ��� ���� ����� �������� ��� �� ������� ��� ���� ��� ���� �� ���� �� ���

���� ������ ����� ��� ����� � w� ��� ������ �������� w �� ���������

$!"

10-2

10-1

100

101

102

101 102 103 104

Que

ry ti

me

(ms)

Keyword frequency

ForwardSearchBackwardSearch

BackwardSearch (failed)HybridSearch

������ ��� ����� ���� ���������� �� ����� ���������� ��� ��� ������� ����� �� �

���� ������� ��������� ��� ������� ���������

������� �� ��������� �������� �� ��� ������� ��������� ��� �� �� �!��� ��� � ���

���� ��� ������� ��������� �� ����� "###� $��������� ���������� ������� �����

���� ��� ������� ��������� �� ���������� ����� ��� ��� �!������� �� � ��������� ����

��� ������� ��������� ������ %��� �� ������� ��� ������ ������� ��������� ������� ��

� ������ ����������� ���� ����� �������� ���� �������� �� ��������&���!� %�� �!����

���� �� �� ��� ������ ���������� �������'� �� � ������� ����� �� ���� (���� �������

���� ������� ��� m ������� ��������� �� � ������� �����!� %�� �!������� �� � ���

��������� ��������� ����� ��� � ����� �!������� �� � ������� ��� ���������

��� ��� ���������� �!���� ��� ������� ������ ����� ������������� ������� ����

�������� ��� )��� � ������ ������ ���� t� %���� ������ ��*��� ��� ����� ����� ��� ���

�������� ������� ���� ������ ������� ��� ���� ���� m ��� t ���������� �� � ������

����� ������ ����� %�� �!������� �� �� ��� ����� ����� ����� ��� ���� ���� ����

+# � ��� ��� ����� �������� ���� ��� ����� ���������� ���� � �������� ���� �����

�,�������

��� ��������

&� ���� ������� �� ������� � ����� ���������� ���� � ��� ��� �������� %�� ��������

����� ���������� ���� � ���� ���� ��� �� ����������� ������������� ��� ������ ����

"-"

10-1

100

101

102

103

101 102 103 104 105

Que

ry ti

me

(ms)

Keyword frequency

ForwardSearchBackwardSearch

BackwardSearch (failed)HybridSearch

������ �� ���� ������ �������� � � ����� �������� � � � ��� ������� ����� ����

��� ���� �� ��������� � � ������� ������

�� ����� ����� � ������ � ��� ������������� �������� � ������ ���� �� � � � �

� ����� �������� ��� !����� �� ��� �� � ��� ����� �������� � ������ �� �������� �

� ���� ��� � ����� ���� "���� �� �� � ������� ��� ���� � ������� ��������� �� ����

�� � ���� ���� ��� ������ �������� �������� ���� # ����� � ����� �� ����$��� �

���� ����� �� � ����"��� � ������� �� ������ ������� ������ �������� ����� �� ���

����� ������ �� ��������� ��� �� � � � ���� ��� �������� �� � ��� ����� � ��������

%� ����������� ��� ����������� ������ � �� � ��� "� ����� ��� �� � ��� ���

����� �������� � ������ �� � "������� "� �� � ������ ���� ����� �������� � �������

���� ����� � �� � ����& ����� ����� ����� ���� �� ����������� ��� ������'���� ���

())

10-2

10-1

100

101

102

103

101 102 103 104

Que

ry ti

me

(ms)

Keyword frequency

ForwardSearchBackwardSearch

BackwardSearch (failed)HybridSearch

������ �� ���� ������ �������� � � ����� �������� � � � ��� ������� ����� ����

��� ���� �� ��������� � � ������� ��������

!"

���

������� �

��� ��� �� � � �� ���

���� ��� ���� ������ ���� �� ���� ������� �������� �� ������ ����� �� ���

���� ��� ���� ������ ������ �� �� ����������� ���������� ������� ����

������ ���������� ����� ��� ��� ���������� ���� � ���� ����������� ���� ����

�� ��� ������� � � ������ !�� �� ������� ��� �� ��� ������ �� ��� "���� ���

���������� ��������� ��� #��������� ��� ��� �� !�� ��� �� ��� ������

�� ����������� ���������� $� ���� ������� � ��� ������� ��� �� ��� ��� ���

����� �������

%� &� ��������� � ���� ��� ����� ������ �!�� ������ �� ������� � � ����

����� ���! ������� �� ��� ��� ������� ���!� �� ����� ������ �!��� ��

�����"����� �'�� ����� ������� ������������ ���� ��������� �� ��������

��� ������ ���� ������������������� �������

(� &� ���������� � ������� �� ��� ������ ���������� ������ �� ��������

��� �� ������ ��� ����� �� ���� ��������� ��� ��� � � ��� #�� ������

�������� �� �)������ ����� ����������� ���� ��� ����� �� ��� ��

�� �� �� ���� "������� &�� ������ ���� ��� �! �� ������� ����������

������ ��� ��� ������ �� �� �������� �� �� ������� � �)����� ��� ������

���������� �� � !�� ��� ������� ����� ������� ���� ��������

*� &� ������������� � ������ ��� �� ���� ���������� �� ���� ��� ������

�������� �� �� �� �������� ������� "������ �� ����! ������ !�� ��� �������

%(+

�� �� ������� ����� ��� ����� ��������� ������ ���������� �������

����� �� ���� �� �������� �� ��������

�� ���� ��� ���� ��� ������� ��������� ����� ��������� ��������� �� �������

� ����� �� ���� �� � !��� ���������� �� �� ������ ����� ������� ��

�� ������ ����� �������� �� ������� ����� �� ���� ���������� ������� ����

�� ���� ���� �� "���� ��� ��� ���� ������� #������� ������� ��� �������

��� ���� ���� ���������� ��������� ����������� ���� ����� ���������

���� ������� �� ������������ �������������� ���� !� �� ����� �����

���� �� �� ���� ���� ������� ���� ����� ��������� �� ������ �����

�� �� ������ ����� ��� ���� ������� ����� ���������� �� �� ��������$�

!�������� ��������� ��������� ���� ���������� ��� ���� !� � �����!��

����� ����

% ������� ��� ������� ������ ����� �� �� !���� ����� �� ������ ������� � � �

���� ������ ������ ��������� ����� ���� !� �� ������ �� �������� �����

��������� �� ��� ������ �� ������ ��� ������� ������ ���� ���������

�������� ���� �� ��&� ��������� ������� ������ ��������� ��

' ����� �� ���� ���� � ��� ���� ������ ����� ����������� ����� ������

��������� !���� ����� "������ ���� �� �����!�� "������� �(������ "������� ����&

�� ������ "������ �� ��&� ������ ������ ��������� ����� ��� ���� ��� ����

�������� ����� )�������� ����� ��������� ������� ������ ������ ������

����� "������ ���� �� ��!����� "������� ��*����� ������������ �� ���������

���� !� � ����������� �������

�%+

����������

��� ��� ���� ���� ��������������� ������������� �����

��� ������ ������ ������� ������������� ���

��� ������ ������ ����������������������� ���

��� ������ ������ �������������������������������� �

� � !���� ���� ���� �������������������������� �����������

�"� !��#$�� ����� ������������������������������� ������� �

�%� &�� ��'����( ��� ������������� ������������������

�)� *��� ���� �����+ �,,-� ������������������ ��������

�-� .����� �����+ .��� /����+ ��� 0����+ *�1� 2���3+ 4�(���� 2����+4�5 ����+ 6��� .���� ���+ ����( 7�8��+ ���� ������+ �� 9�:� !���!������ ���(#���� �8������; 0���������( #�#�����+ ������ �� ���(�������+ �� �:��������� <� �������� � �� ������ ����������+ 8����� �"��+#��� �, =���+ �,, �

��,� <��� ����+ ����� �������+ ����$ > �������+ �� ?���� @ &����1�9������� ��� �������� �� ������� #���� <� ���� ��� ��� ���� �� ������� �� �����!"�+ #��� ��=� � !#����+ �,���

���� ?���� ��$�+ � �����(+ �� !��� 9 ������ �##�:���� ������� '������� ���#�� ������ �� �#�� �#��� <� #��� #$%��&+ #��� �% �=�%"�+�,���

���� 41�( �1��+ A����� <$�+ �� A����� A������ @�� �:�� ������� #��������� '����� �� ��� ���$�1� �( #���� ����1 �������� <� �����������' � � "�!( �& �#)&�* #����������� ��'������ �� &��������� �' *�����#)&�*�!(�+ #��� ��-=�",+ �,���

���� .����� ������+ ����� @�:+ ?�� ��B��+ ������( �� 6���#�+ ?��(2�3+ ���( 2��$���1�+ ����� ���+ �8�� �������+ ���� ?�1��+ <�� !����+�� .��� C��� � 8��$ �� ����� ���#������ ����������� �' � � �&+ �D�E; ,= )+ �,�,�

��%

���� ���� ��� ��� ���� ��� � ��� ������ �� �� ������� ��� ������ ������� �� ��� � ����! " ����� �������� �� ����� � ��� ��� �#������������ ������������������� �� ��� ���� ���� �� ������ �������� �� ��� ������ ���������� ���������� ���� ���$%��&�� '(�)�

��&� *����� *������ �� ����� ����� +� ������� �,�������-���! � ������ � � �� ������ ��� ��� �� ��!��"���� �� ��� #��� ����������� ��������!� �� $���"$�"� $�% �$$$��#�� ���� $..%�(/� '(�'�

��)� ���� *���� � �� +����� 0���#��� 1����� �,������������ �� 2�� ��� ��,������� �"&�!�� �� ���������� ��'( ���)*�� ���� '$'%'�.� �..$�

��3� � �� *� ������� ����������� ��� ���� ���� ,�� �������� �� #������ �� ���� � � ��� ��� +���� �� ��������� �&!&�/%&3�� '(�)�

��/� *, ��� 4� *����� � ���5���� � ����6� �� ���� ����� #��� ����#���� � � ��������!����� �� ��� �� � �$738!�''%�')� �.3(�

��.� 9�� *����� �������� 9� : �����;�� 0����� "�� ���2�� �� ��,�� � +� ������� +,���� 2�� ��� � ���� #��� 2��#� ��� ��� �� �"&�!�� �� �����������,-'��'( ��.��� ���,�� $('3� ���� &()%&''� '((��

�'(� 9�� *����� 1,�<�� ���� �� =���� ������� 1���,����� '��� �� �,��� ���� �� ��-��� �� ������ �� ����������� ��������!�� ���� $'&%$��� '((&�

�'�� =� ���� �� *� �#� � �� 4����+��� = ������ ��� ����� ��� 2� ���� �� � � ����� ��!��"���� �� ��� �,,, /�� ����������� ��������!� �� 0� ��������0 �./�� '((&�

�''� :� ���� � *>���� +���� 4� ���� ?����� <��2� � �� � ��� +��� � �, ����� ������ ���, � ��� ������ ��� � ����� �� �������� ��&���� �37'8!�/�'(���

�'$� 0� ���� *���� �� ���! @� #� ���, � ��� ������ ��� � ����� �� ��!��"���� ����� #.�� �� ������ ��������!� �� ������� �" ������!����� ��!������������� ���� ���$%��&�� '(�)�

�'�� 1����� *���� �� ���� ��� � �� ��� � �� �������,� �� ��#� ��,�A �� ���!��"���� �� ��� #.�� �� ��������!� �� ����&����� �� ��������!� ��������!���!� ���������� ���� $&3%$)/� '(�)�

�'&� B� �2 * ����� ��� ��� +� *� ������ �� C����� :� @ ������ ����������� ���,����� �� ��������� �� ���#������� ���� ������ ��!�� 1��2��3�� ��!�&$%�&.�'(�)�

�')� ���� :��� D����, E���� :��� ?���� =,� 0��� �� ?��F��� C�,� + ������ ��� ���� G,� � ��� ��� � �� � � ���� ,��, � ��� �� ���, ��� ,����� �� ��!��"���� �� ��� �,,, *��� ����������� ��������!� �� 0�����%��" ��������� ���0������� ���� $.$%�('� '(���

�'/

���� ���� ��� ������ ������ ��������� ������� �������� ����� ���� ������ � !�����"������ #��� �� !������ �������$ � ��%�� �������&�� ���� ����� ����� ����� ���&����' ���� ���������� �� �%���%��������$ (� ������� ��� ������� �� ��� �������� ����� ��� ��������� �)*+$

��,� ���� ��� ��������� ������� �������� ����� ���� ������ � !�����"-�-��� #�.� �� !������ �������$ ����� "�����&�� �������&�� � %%��������� ����� ���� ������� /�� &������ 0������$ (� ����� � ������������� !"#��$� ����� 12131�1$ �)*1$

��4� 5����� ���� �� !���� #�%��������$ 6����� ��������� ��� ������� ���� ��� ���� ��%������ ������� /��%�����$ %&&& "�� ����� � ������� �������� 47*8'*1,3*2* �)*9$

�1)� :��"���� ���� �� !������ !�����%�����$ ;����� ���������� �� ����������� �� ��%��� ���� ��� ���$ (� %��������� ��'����� � ����������������(� � ������� �������� ������)*� ����� ++�3+22 �))2$

�1*� !������ ���� �� ��� ��%���$ ��������� ���� ����� �� ��������� �����"����$ (� ����� � ���������� ���%��� !"��)� ����� 2��324+$ �)*)$

�1�� ����� ������$ <����=�%��� ������� ������� ���� �������� 0��� ��%�$ (� !�������� �' �(� �+�( ���� ��, ����� ��� � "(���� �' �������� ��"#����� ����� 92+3991 �)*+$

�11� #���%�� ��� :� !� >��%�� :��� ?����� >�� �� @���/�� A���$ ����"������ ��&���"�� ���� ����� ���� �� ��� ������ /�� ������ ���� �������$ %&&&"�� ����� � %'������� -��� �� � �������� **7+8'�,43�4, �)*9$

�1+� A�� ��� :���� A��� �� �� � :���$ BC����� ��D����� %�=�%������� �������� ��������$ (� !������� �' �(� �*�( ��, �%./�� %��������� ���'����� � /������ �� ������ � ���� ,��� �/���)0� ����� *443�), �))4$

�12� :�"�� ���$ �����' ������ ������"���������� ��&��� �� ���� ����� ������ ��� ������ ������� �� ��� �������� �������$ "(� �������� 1����� 2,7+8'4��3411 �)*2$

�19� E������� �� F���� G�� �� G��� � A���$ �� "��������� �������&�� ���� �"���� 7����8 /�� ����� ��� ������� ��� ���� �������$ %&&& "�� ����� ��������� 927,8'�1�+3�1,2 �)*9$

�1�� #��� ���%��� ���� >��� ��� ��%��� �� #�/��� H������� $ ������"�&�� � %%����� ���� �����' (%����� �I������� �� �C����� �������������$ (�!������� �' �(� 2))+ ��, �%.��� ��'����� � �������� � ������������ �������� �����)+� ����� �43,, �))9$

*�4

���� ���� �� ���� ��� ������ ���� �� ���� ��� ������ ���������� ����� �!���� ����� �����"����# $ "����� ��%������� ��� �&����� ������������� ��������� ���� � � ������� '()*+#�(*,(�-� ./''�

��(� 0�1�� 2��3� ����� 4�� ��5�� 4�� ��� ���3�� 0 �� 6 ���7��� ����� �!�������"���� �� � � 8�� ���8��� �� ��������� �� � ���� �����3�� ����� � �� ������ ���� � ���� � ��������� ����� �� ./'9�

�-/� �������� 2������� :����� ��� 2�1�� �����" �� ;� <���� ��� 4��3 ���� =������ �� ��� 2����� ;�� �� ����� ��� # 6 �������� !���8��� !��8" �!�������� � �� ��� �� ������������ "�3�� '-*,'>-� ./'*�

�-'� ����� = ��� 6���� �������� ����� � � ��� ��� ��� � ���� ��� ?���� �?��� �� �� ����� ��� ����� �� �� �������� ��� ��5�# <�� �� ������� ��� "������"� � "�� ��������� ���� ������������ �� � ����� ������ ���������� -)'+#��,'/'� ./'9�

�-.� 4� ��3 <��3� ;���� ������ �"��3 ��� ��� �������3 ;��3� @!��� ��� ��7���"���� 8�� ���8��� ����� ����� �3����� ���8��� 3�����3 ������� 8�� ������� ������� ���������� ��� �� �� .��#..',.-'� ./'��

�-�� ���� ��3 ���� A��3 0 ��� ;�� ���� 6���� �� �8� �� �� �� ���� ������ 6 ��� B��7C��� 2��� �� � ������ "�� ��3���� � ��� �"��3��" ������� ! ������������ �� " �#��$���� .�)9+#'�/*,'�'>� ./'*�

�--� �� ���� ��D��� E F� �� ��3 ���� ���� �� 0 �� ?��31��� ;��3� ���2��35��3 F��3� C��3 !�� ���7"������ "�������� � ������ �������� �� "���3�� ����� $� %��� &���� �� �� '()) ! ���!*+ ��� ��������� ��� � �� �� !���� �� �� &��� ����!*+�))�� "�3�� -/(,-./� ./''�

�-*� =7��� �� � ����� ����G��� ��"����3� �@���� 6�� ���� ��"��� .//�H.'9�.//�� ���������������� ������������

�-9� 6����8 I� ����!��3 ��� ��� J��������� � "���3 � � � ������ "�� # 6����� ���� 3��" � ����� $� %��� &���� �� �� ),�� ����� !��� !������� �� +���� � ��������� ��*+ �(-�� "�3�� '*9,'9*� .//*�

�->� ���� �������� ��� ������ ���������� ����8��� "��������� ��� �� ������ ���!������ �� �� ������� �� �� !� -�)�+#-�',->�� '((9�

�-�� 2���� ������ ��3� :�� ��� ����� ��� @�� ��������� ����� �����3� ������������ �� �� !� -.).+#�(,-'� '(((�

�-(� 4����3 �� ��� ;��7 �� F�� =&����� �����7� ����� ���� "!��� ��� ��7���"���� 8�� ���8��� ����� ��� � �� �� ���� �����3�� ������� �� ! &�������� �� �()''+#',''� ./'*�

'�/

���� ����� � � ���� ������ ���� ����� ��� ����� � �� ������� ��� !���"��# �"���"��� �$���"�%�"��� �� ��� ��&� ����� �"����� '� ���������� �� �� ���� ������ � ����� (� �#� (�)*((+� )��,

��(� -��� '���� . � /�������"&� 0"� 1�� �� !2�� 3�"����� ����" ��#$��� �"4�� ��"� ���"��4�"� ����4� � ��"��� ��� �"��� '� ���� ���������� ����� � �� ��� �������� �������!"# � �#� 5�*(�6� )�(7

��)� ������ 0�2�� '���� ���" /�&�� �� ���" /�"����#�� 8���� �"$"�� ��������� �� ����4� ��� �"���9 !��%�"���� ""�� �� ��"�#"��� '� $� ���� �� ��� ��%& �� ��� �� ���&�� � �������&� $����!'# � )�()

��:� 0"����� ������ ;���<�" ��"�� ��#� /���& �� ���� !���� �� �����0"��� 3�"������ � ��"��� ����" ��2���"��� �"���� '� ��������� �� �� '(!) ��* �+,��� �������� � ����& �� �� ����&��� ��� ���&�� � ����!)#� �#� ,6�*,,,� )�(:

��+� ����� ���#� 8� ��$;� =�� �� ! ���� ;��$���# ���# .>�" "��$� ���" � ���� ���� �� ��# �"����� '� ��������� �� �� '(!- ��*�+,*.� + ��� ���/ �������� � *����� �� �� � �+,*.��!-# ��#� :5:*+�+� )�(�

���� !�����# ���� ?��# !��� -�# @��#� �� A��"�� 1 8 ��#�� $��"��� �$4���# ������ 2�� ������# ���"�� B���� �� ��# ���� #���� '� ���������� �� �� '(!' ��* �+,*.� + ��� ���/ �������� � *����� �� �� � �+,*.��!'#� �#� ++�*+�7� )�()

��7� 0� /�� �� /���"�� 1�"� ;� �"�#����� ����� �"��# '� + ��� ���/�������� � 0�����/ ���� ������ �� �� � ���&�� � 0��!(# � �#� (:7*(+5� )�(�

��6� 0� /�� �� ;������� ����"��� ����� �� � ���� ����4�� ��"��� ��� �"��� '� + ��� ���/ �������� � 0�����/ ���� �������� �� � ���&�� � 0��!)#� �#� )�,*)6+ )�(:

��,� 0� /��� ;������� ����"���� �� ��� !��� � ���� ����$4� � ��"��� ��� �"��� '� ��������� �� �� '(!' ��* �+,��� ��������� � ����& �� �� ����&��� ��� ���&�� � ����!'# � �#� 57�*567�)�()

��5� ���"�� /"& �� -��� 1����� + ���&� �� � ����� ���� ������1 �������/�� �� ��� ���/� ;!; ����� )��6

�7�� ���� /��� ��� /���4�#� �� CD� ����� �>���&��# "� ���� �2��E��� "����#� ����� �"���� '� ��������� �� �� 2 � ��* �+,3��+ ��� ���/ �������� � 3��/��� �����4��� �� �� � *�� 3���()# ��#� (:6*(+7� )��:

(:(

���� ������� ��� ����� ����������� ��� ������ ���� �� ������� ����������� �������� ����� ������� ! "�����#���� ��!$����� %� ����������� � � ������������� ���������� �� �������� ������� ��������� � &���� ''()*�+,,-�

��+� .���� �/�� .������ ��� �" %�"��� ��� .�!� ���!���"�� 01��������"�!�� ���!�� $�! ���!�&�� ���� %� ��������� �� � � ���� ��� �������������� ���������� �� ���� ��������� ��������� � &���� ��-�(���*� +,�+�

��2� �� 3 4��� 5����3���� 4��� ��� 6� 4���� ��� 7����� 8����� 9�$������"&�� &!�$��� &!����: ��$������" &�� &!�$��� &!����� %� ��������� ��� � ��� �� ���������� �� �����!����� ��� "��#���� !����!��� ���" ��$�� &���� �)�(*,,� +,,)�

��;� <�!� 4���$�� ��� ���!�� !�$"� �9�= >�����: ��� !� "�!�� ���!������ �""����� ����������������� � �� ���� <��� +,�;�

��-� ������ 4�� >��?�� 4��� �������� >��� ��� �� �� 4���� 0������!������!���#"� ���!�&�� �#�"� �"�� ���!��: ���� �� ���� �&� ����%����� ��!!&��������� ++@;A:*;(',� +,�-�

���� <�� 4�� B��� 5���� 3�� 5���� 9��� 3�� �� C��� ��� 5������ 4�� D�//�����!� ���!�� $�! ���!�&�� ��� �� �"�� ��&����� %� ��������� �� � ����� ���� �'()�) ��������������� &���� �(-� +,�,�

��*� 5������ 4��� E����� E��� <���� 3����� ��� ��!�$ �� 7������� 01�����"�!���� ! ����!�"�/�� ��#�!�&� ���!� &!�������� %� ��������� �� � � ����� ������������� ���������� �� �����!����� ��� "��#���� ����!������" ����� &���� 2+-(22;� +,�+�

��'� >��?� 4�� ��� ����"� 5���� =!�!����#"� !��!�&!���!$��� ����!� ����? ! ���!�&�� ���#��� ���!�� %� ���� ���� �� ������������� ���������� �����&� ��!*&��� ��+),������ &���� -,+(-,)� +,�+�

��)� �� 4�� ��� 0$���!�� ��!/�� ���!�� ������ ������/��� � �!�&��� %���������� �� � � ���� �� ��- )� ������������� ���������� �� �����!��� �� ���� ���- )������ &���� )2(�,�� +,,'�

�*,� ��$� 4� ��� C� ��" F�!$���� >��!�#��� #"�$��� !�� ! ����!� ��&�!���&����� � ���. �� ��.*����* .� &���� 2**(2)�� +,�2�

�*�� E���!�� .���� ���� ���!�� ##� 9������ ��� G�!�� ""��� G!���: G!�&����!�&�� ! �&&!?���� ��!�� ������� ���!���� %� ��������� �� � ����� �� ��-��� ���������� �� ��!*&��� ��� ��!!&�������� ���&���.��������� &���� -,-(-�*� +,�-�

�*+� �!���� .�!����� ��� .�� 4��� ���� ��!�� &�� ��&���� ��� ��� !���� "������� ��������� �� � � /+�0 ����#!���� -@'A:�)+(*,2� +,�+�

�2+

���� ����� ��� � ����� ������������ �� ���� �� ���� �� ������ ����!��� ����"���� ��� ���� ����# � $� ��������� �� � � ���� ���� ���������� �������� ��� ������� �������� %&'(�

��(� )� * ���� ��� +,�� �� ��"������� �� �������� �� � $� ��������� �� � ����� ������ � ! �������� �� " ���� �� ������� ��"# �$�� � "�# -'(.-%�� '//&�

��-� ������ ��"��� � 0�� 1���#� ���� ������ � �� 2�3 � 4��� 5� �� "��!� ��# �� "����� � �6��� ����� � $� ��������� �� � � �$� ������������� ��������� �� %��� &��� '��� (�� �%&'(��)�� "�# 7&%.7'�� %&&��

��8� 1����� 5�� 2��#��� 9���� :�� ;���� �� <��=�� >��#� 4�6�� � � ���� ����� 3�� �������!�� #��"� � ��������� �� � � %&'( ����*����� �?'@A8'.�%� %&'��

���� ���� 5���� B� 5��� <��# �� �#� 0 C� � 9� 2�� �� > ���� 4���� 4�"!�� �� � � �6�� ���� �� ���# #��"� � ��������� �� � � %&'( ����*�����"�# /&'./'%� %&'��

��7� B��# ) �� ��� �� D6��� +�� ;� 3����� +���� ;��� ���� � ��� ����� �� ;����!�� � ��� � ��� ���� �����A ��������� �"��� �� �� �������� ��� $� ��� +��,�- �������� �������� �+��,�- ����������.� � "�# ('-.(�&� %&'-�

��/� <��� ;��� )� � 0��# <6�� ����� �� ���# <��# B � � � ��� ��� ���������3 �#��� � � � "�����!� � ����"���� 6��� � �6�� ����� ������������������� %&-A/�.'&/� %&'%�

�7&� +��� ;� � )� �� �� � � � � 2������ � B �����# ����#! �� � ���� � ����"��������� �� ������� ������ ��� !�� ��� ����������� � %&?-@A-%%.-�%�'//7�

�7'� 0�6�� ; �� ;� "� � ���� �� ������ ;� B�� ;������� A �� ,�� �� #��"�E� �� ���#��# �� �� �����#� ���� "��������� �� /��*���� ��� '������������� %�?�@A'7%(.'7��� %&'-�

�7%� ���� ;�� � �� :���� � �� B ��� � � "������� 3�� ������� ������������� � �� ��� �� �� $� ��������� �� � � ���� � ! ��0�� ��������� �� ������� ��� ������������ �������� � ����� � "�# ��.(%� %&&&�

�7�� ��6� 9�����# ;��#� ���� >�#� �� �� ����� � ���#� ��������� � ����E� 3�� ������# �� ����"� ���� $� ���� �������� �� �������� ��� ��������������� "�# ((.--� %&&&�

�7(� +�� ;� 3����� �������"� ��"�������� �� +���� ;��� ��������� ����� ������� ����"���� 6��� ��� � ���# � $� ,��*��1 ��� '����2���� ������������� �������� �,'������� %&'(�

'��

���� ���� �� ���� � ��� � � ����� �� ��� ��� ���������� �������� ���� ���� � ��! � "#� �$ ����� � ��� $ �% & � �� �' (� �)�����! ������ �*���+��#� � � �������% ,� ��������� �� � � ���� ��� ������ ���������� ���������� ��� ������������� �������� �������� � � ��� -../012� -210%

��3� ���� �� ������ 4��� 5�#$��� �$ ���� �� 6 �$���% ��7�+����� � ��! $����+*#��� �)��$�$ � ���#� ����#��� ���% ,� ��������� �� � � � ! ��������� ���������� �� �������� ��� ������������� �������� ����� !� �� ��� 01/08� 1..3%

��8� ��+���� #�� 9����� :% ��#� (��� �; $� ��� ������$� �$ 5�; <�� "#��%� ��� *�� �!������ ����!����' =��� � ��� ��! �� ���� � �� �� �� >�+$�������� � * � ���$ ���� ����% ,� "������� �������� �� #����� �� ��������� �������� �"�$#�����!�� � ��� 1�?/18-� -213%

���� 6��� � #�� @���6 ��� A��� � �� ���� ��� 6������ ��#� "% 5��� � <�#� �$<#� ��% &��� �!+���������� �#��+��!>��$ �) �� ��� �� �� ���#$ �#������������ ��!+* ��$ � �����% ,� ��������� �� � � %� ��� ������ ��������� �����������& �������� ��� ������������� �������� ��������'��� � � ���81/�-� -210%

��.� "#��� 5 �� ���� & � $���#���� ����� ����� �$ :�� � �� ��$��% A� �����!>��$ �� ��� �� )�� $��#����% ,� ��������� �� � � ���� ��� ����$(������������) ���������� �� ��������� �� ���� �����$(���� � � ��� ��./322� -211%

�.2� 4��� 5�#$��� ����� B;#�� �$ ���������� (% 6��$% (�0�' (���!��#� ���+�#��� ��� �� �����+������ ��>������% ,� ��������� �� � � �""" �����)������� ������������� ��� *��+��,�� ���������� ���*���!� � -213%

�.1� ����C#� D D���� � @�#�� � ������ � ��$���� � � ;��� & #�� @ 4������� � ��$� � ��� ����� �$ @������ ��*����+A��% �7���� �� ��� � ����� �� ���� ���>����% ,� ��������� �� � � �!� ��� ���������� �� ����������� ���-��+)��� ��������� ���-���.�� � ��� �30/�8-� -228%

�.-� ���� 6 ��� A��� � �� 9�� ��� :#� ���� �$ 6������ ��#% ��#�� � ���$��!>��$ �� ��� ���� ����!��$ ���#$ $ % ,� ��������� �� � � �""" ��� �������������) ���������� �� (����/���� �������� ����� ���(������ � � ���-�0/-3-� -212%

�.0� ���� 6 ��� A��� � �� :#� ���� �$ 6������ ��#% �� *���� ���#�� �$ �7����� ���$ ��!>��$ �� ��� ���� �#��#���$ ���#$ $ % �""" 0��������� ������))�) ��� (����/���� ������ -0E�F'1?38/1?8.� -21-%

�.?� ���� 6 ��� :#� ���� �#����� "#� �$ : ���� � ���$� � �� B��% (�����+��� #� *�� �$ ���� �!+ ��#��$ ����� ��! �� ��� ���� �#��#���$ ���#$ $ % ,��""" �*1$�$�� � ��� ?�1/?�.� -21-%

10?

���� ����� � ��� �� ���� ��� ���� ���� �� ���� � �� � ��� �� ����� ������ ���������� ����� �� �� ������������ !�" ���������� ��������� ��� � ���� ���������� #$#%&'()*')�� +,,)�

��-� .� � / �� � ��� 0 � �� ��� 1��� ������ 2 �� 3�� /�" �� �� 4" ���/�� /��� �& 5�"�6���� � � �� ������ ������ ����� 7� ��������� �� � ����� ��� ������ ���������� �� ���� ��� !�� ���� ���!���� ��� ���"#���$��%� � ��� #�#*+,+� +,#'�

��(� �� �� ���� � �8�� 9�� 9�� � 2 �� .� �"�� :���� ���;�� �� � 0��"� 2��� ��3� � ���� <� < ��" =��� /������� �� ���6 �� �� ���� �� �� ������ ���� ���"��� ���������� ������!���� �������� +�)&>(#*>)-� +,#'�

��)� 9�� .� � .���� � ��� .������� /��� �� ?� � � ��� 3 ������ �� ���� ��� ��"���=��;��� � �=�� �� �� ����� �6�� ��������� �"��� � � � ����&�!�!����� �� �!�!''�' !�� �����( ��� �"���� +($+%&>',*>�+� +,#-�

���� 0 �8� �� 0 ��� � ����� ��� �� �� � ����� @�"������� ���6 �� =��;��� �� �� �� �"��� ���������� 7� ��������� �� � � ���� )�� ������!����!' ������������ �'� � ���� ��� &�� ��'�" !�� ������� #�'� ����$��% � � ��� +-'*+(#�+,##�

�#,,� /�!� �� 0��� 9� A �� B����� 0�� C���� 2��� �� �"� �� .�� �� /������9��� B��6 ���������6��� �� � ��"��� ����� ���6����� 7� ��������� ��� � ������!����!' ���������� �� �!�!(!� �"��� ��� ��*!���� ���'��!����#���+��$��%� � ��� +,>*+#�� +,#'�

�#,#� C�� 9�� �� �� � B��� B�����6��� ���6 �� �� ���� " ���;��=� � ���� ����������� �� �=�� 7� ��������� �� � � ���� ��� ������!����!' ���������� ���!�! ��������� #����$�,%� � ��� �,-*�#�� +,,)�

�#,+� :�������� 9����� �� :�������� ��== �� 3��������� �"��� ��������� ��������������� + � �� �����!���� ���� ��� �"���� +)$>%&�)>*��+� +,#+�

#>�