Skip to content
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 functions to obtain isomorphisms between graphs #497

Closed
vlvrd opened this issue Jun 8, 2022 · 0 comments
Closed

Add functions to obtain isomorphisms between graphs #497

vlvrd opened this issue Jun 8, 2022 · 0 comments

Comments

@vlvrd
Copy link
Contributor

vlvrd commented Jun 8, 2022

Summary

Add functions to the isomorphism module that return the possible mappings between isomorphic graphs.

Motivation

Currently, Petgraph is only comparing graphs to indicate whether or not graphs are isomorphic. It doesn't allow users to explore the isomorphism solutions, which may be of interest too.

Details

I suggest updating the try_match function from the isomorphism matching private module to return an iterator that contains the isomorphisms between two graphs, then adding public isomorphism functions to return those mappings. This is similar to what NetworkX does in the functions isomorphisms_iter and subgraph_isomorphisms_iter.

I'm going to implement this myself in my fork since I need these mappings anyways, so if there's interest on whether or not these changes should make their way upstream I'll be happy to discuss them here and hopefully send a PR later.

@vlvrd vlvrd changed the title Add methods to obtain isomorphisms between graphs Add functions to obtain isomorphisms between graphs Jun 8, 2022
@ABorgna ABorgna closed this as completed Jul 26, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants