The \(k^2\) -tree is a compact data structure designed to efficiently store sparse binary matrices leveraging both sparsity and clustering of nonzero elements. This representation efficiently supports navigational operations and complex binary operations, such as matrix-matrix multiplication, while maintaining space efficiency. The standard \(k^2\) -tree follows a level-by-level representation, which, while effective, prevents further compression of identical subtrees and it is not cache friendly when accessing individual subtrees. In this work, we introduce some novel depth-first representations of the \(k^2\) -tree and propose an efficient linear-time algorithm to identify and compress identical subtrees within these structures. Our experimental results show that the use of a depth-first representation is a strategy worth pursuing: for the adjacency matrix of web graphs exploiting the presence of identical subtrees does improve both compression ratio and peak memory usage, and for some matrices, depth-first representations turn out to be faster than the standard \(k^2\) -tree in computing the matrix-matrix multiplication.

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

Depth First Representations of  \(k^2\) -trees

  • Gabriel Carmona,
  • Giovanni Manzini

摘要

The \(k^2\) -tree is a compact data structure designed to efficiently store sparse binary matrices leveraging both sparsity and clustering of nonzero elements. This representation efficiently supports navigational operations and complex binary operations, such as matrix-matrix multiplication, while maintaining space efficiency. The standard \(k^2\) -tree follows a level-by-level representation, which, while effective, prevents further compression of identical subtrees and it is not cache friendly when accessing individual subtrees. In this work, we introduce some novel depth-first representations of the \(k^2\) -tree and propose an efficient linear-time algorithm to identify and compress identical subtrees within these structures. Our experimental results show that the use of a depth-first representation is a strategy worth pursuing: for the adjacency matrix of web graphs exploiting the presence of identical subtrees does improve both compression ratio and peak memory usage, and for some matrices, depth-first representations turn out to be faster than the standard \(k^2\) -tree in computing the matrix-matrix multiplication.