English

CommonSense: Efficient Set Intersection (SetX) Protocol Based on Compressed Sensing

Distributed, Parallel, and Cluster Computing 2025-10-23 v1 Networking and Internet Architecture

Abstract

In the set reconciliation (\textsf{SetR}) problem, two parties Alice and Bob, holding sets A\mathsf{A} and B\mathsf{B}, communicate to learn the symmetric difference AΔB\mathsf{A} \Delta \mathsf{B}. In this work, we study a related but under-explored problem: set intersection (\textsf{SetX})~\cite{Ozisik2019}, where both parties learn AB\mathsf{A} \cap \mathsf{B} instead. However, existing solutions typically reuse \textsf{SetR} protocols due to the absence of dedicated \textsf{SetX} protocols and the misconception that \textsf{SetR} and \textsf{SetX} have comparable costs. Observing that \textsf{SetX} is fundamentally cheaper than \textsf{SetR}, we developed a multi-round \textsf{SetX} protocol that outperforms the information-theoretic lower bound of \textsf{SetR} problem. In our \textsf{SetX} protocol, Alice sends Bob a compressed sensing (CS) sketch of A\mathsf{A} to help Bob identify his unique elements (those in BA\mathsf{B \setminus A}). This solves the \textsf{SetX} problem, if AB\mathsf{A} \subseteq \mathsf{B}. Otherwise, Bob sends a CS sketch of the residue (a set of elements he cannot decode) back to Alice for her to decode her unique elements (those in AB\mathsf{A \setminus B}). As such, Alice and Bob communicate back and forth %with a set membership filter (SMF) of estimated BA\mathsf{B \setminus A}. Alice updates A\mathsf{A} and communication repeats until both parties agrees on AB\mathsf{A} \cap \mathsf{B}. On real world datasets, experiments show that our SetX\mathsf{SetX} protocol reduces the communication cost by 8 to 10 times compared to the IBLT-based SetR\mathsf{SetR} protocol.

Cite

@article{arxiv.2510.19725,
  title  = {CommonSense: Efficient Set Intersection (SetX) Protocol Based on Compressed Sensing},
  author = {Jingfan Meng and Tianji Yang and Jun Xu},
  journal= {arXiv preprint arXiv:2510.19725},
  year   = {2025}
}
R2 v1 2026-07-01T07:00:03.801Z