forked from GraphBLAS/LAGraph
-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add regular path query algorithm #2
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Points for discussion:
Thus, the PR is draft yet. |
gsvgit
reviewed
Nov 11, 2024
Currently, I am working on a benching utility for the algorithm. It's WIP. I guess we can add it to the organization when it's ready. |
georgiy-belyanin
force-pushed
the
rpq
branch
3 times, most recently
from
November 30, 2024 19:41
1cb4810
to
32f8a6f
Compare
georgiy-belyanin
changed the title
Add regular reachability algorithm
Add regular path query algorithm
Nov 30, 2024
georgiy-belyanin
force-pushed
the
rpq
branch
from
November 30, 2024 19:44
32f8a6f
to
30e086c
Compare
gsvgit
reviewed
Dec 2, 2024
georgiy-belyanin
commented
Dec 7, 2024
georgiy-belyanin
commented
Dec 7, 2024
georgiy-belyanin
commented
Dec 7, 2024
georgiy-belyanin
commented
Dec 7, 2024
georgiy-belyanin
commented
Dec 8, 2024
georgiy-belyanin
commented
Dec 8, 2024
georgiy-belyanin
commented
Dec 8, 2024
georgiy-belyanin
commented
Dec 8, 2024
georgiy-belyanin
force-pushed
the
rpq
branch
2 times, most recently
from
December 9, 2024 17:44
ff2e082
to
62d5172
Compare
The patch is almost OK except it lacks of Arxiv paper. |
This commit adds an implementation of the regular path query algorithm based on linear-algebra graph processing approach. The algorithm finds a set of nodes in a edge-labelled directed graph. These nodes are reachable by paths starting from one of source nodes and having edges labels conform a word from the specified regular language. This algorithm is based on the bread-first-search algorithm over the adjacency matrices. Regular languages are defined by non-deterministic finite automaton. The algorithm considers the paths on which "label words" are accepted by the specified NFA. The algorithm is used with the following inputs: * A regular automaton adjacency matrix decomposition. * A graph adjacency matrix decomposition. * An array of the starting node indices. It results with a vector, having v[i] = 1 iff the node is reachable by a path satisfying the provided regular constraints. Full description of the algorithm is available at: https://arxiv.org/abs/2412.10287
georgiy-belyanin
force-pushed
the
rpq
branch
from
December 16, 2024 06:36
62d5172
to
3668016
Compare
Merged to stable and opened GraphBLAS#261 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This patch adds an implementation of the regular path query algorithm based on linear-algebra graph processing approach. The algorithm finds a set of nodes in a edge-labelled directed graph. These nodes are reachable by paths starting from one of source nodes and having edges labels conform a word from the specified regular language.
This algorithm is based on the bread-first-search algorithm over the adjacency matrices. Regular languages are defined by non-deterministic finite automaton. The algorithm considers the paths on which "label words" are accepted by the specified NFA.
Algorithm is used with the following inputs:
It results with a vector, having v[i] = 1 iff the node is reachable by a path satisfying the provided regular constraints.
Full description of the algorithm is available at:
https://arxiv.org/abs/2412.10287