Table of Contents
Fetching ...

Graph traversals associated with iterative methods for solving systems of linear equations

A. V. Prolubnikov

TL;DR

The paper investigates how graph traversals relate to iterative methods for solving systems of linear equations, showing that Jacobi-based traversals correspond to BFS while Gauss-Seidel-based traversals form a distinct, non-BFS traversal that can leverage vertex numbering. It reframes graph traversal as algebraic iterations on a modified adjacency matrix with diagonal dominance, using updates such as $x^{(k+1)} = b - D^{-1}Ax^{(k)}$ and $(L+D)x^{(k+1)} = -U x^{(k)} + b$, with frontiers defined by $(x_i^{(k)} = 0) \land (x_i^{(k+1)} \neq 0)$. A key innovation is replacing division with multiplication by a positive $d$, yielding polynomial-in-$d$ updates that preserve traversal behavior while enabling faster, multiplication-based computation. The work also introduces CCS (combinatorial correct-chain search) as a traversal variant that uses correct chains with ascending vertex labels to propagate through multiple vertices in a single iteration, offering potential speedups on graphs rich in such chains. Overall, the algebraic framework unifies combinatorial and algebraic graph traversals, demonstrates convergence properties under diagonal dominance, and provides practical insights for scalable, large-sparse-graph connectivity problems.

Abstract

To solve many problems on graphs, graph traversals are used, the usual variants of which are the depth-first search and the breadth-first search. Implementing a graph traversal we consequently reach all vertices of the graph that belong to a connected component. The breadth-first search is the usual choice when constructing efficient algorithms for finding connected components of a graph. Methods of simple iteration for solving systems of linear equations with modified graph adjacency matrices and with the properly specified right-hand side can be considered as graph traversal algorithms. These traversal algorithms, generally speaking, turn out to be non-equivalent neither to the depth-first search nor the breadth-first search. The example of such a traversal algorithm is the one associated with the Gauss-Seidel method. For an arbitrary connected graph, to visit all its vertices, the algorithm requires not more iterations than that is required for BFS. For a large number of instances of the problem, fewer iterations will be required.

Graph traversals associated with iterative methods for solving systems of linear equations

TL;DR

The paper investigates how graph traversals relate to iterative methods for solving systems of linear equations, showing that Jacobi-based traversals correspond to BFS while Gauss-Seidel-based traversals form a distinct, non-BFS traversal that can leverage vertex numbering. It reframes graph traversal as algebraic iterations on a modified adjacency matrix with diagonal dominance, using updates such as and , with frontiers defined by . A key innovation is replacing division with multiplication by a positive , yielding polynomial-in- updates that preserve traversal behavior while enabling faster, multiplication-based computation. The work also introduces CCS (combinatorial correct-chain search) as a traversal variant that uses correct chains with ascending vertex labels to propagate through multiple vertices in a single iteration, offering potential speedups on graphs rich in such chains. Overall, the algebraic framework unifies combinatorial and algebraic graph traversals, demonstrates convergence properties under diagonal dominance, and provides practical insights for scalable, large-sparse-graph connectivity problems.

Abstract

To solve many problems on graphs, graph traversals are used, the usual variants of which are the depth-first search and the breadth-first search. Implementing a graph traversal we consequently reach all vertices of the graph that belong to a connected component. The breadth-first search is the usual choice when constructing efficient algorithms for finding connected components of a graph. Methods of simple iteration for solving systems of linear equations with modified graph adjacency matrices and with the properly specified right-hand side can be considered as graph traversal algorithms. These traversal algorithms, generally speaking, turn out to be non-equivalent neither to the depth-first search nor the breadth-first search. The example of such a traversal algorithm is the one associated with the Gauss-Seidel method. For an arbitrary connected graph, to visit all its vertices, the algorithm requires not more iterations than that is required for BFS. For a large number of instances of the problem, fewer iterations will be required.
Paper Structure (4 sections, 10 equations)