Subgraph Isomorphism with backtracking #22
Draft
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.
Context
Before applying rewrites, we need a way to find matches. This is a subgraph isomorphism problem. Here, we provide a simple implementation of VF2.
Details
SubgraphIsomorphismcan be created only viafind_subgraph_isomorphismandfind_subgraph_isomorphism_bymethods that guarantee that it is actually a morphism. We can use it as input for rewrite function in here Rewriting for Lax Hypergraphs #20 where we may relax assertions on the candidate match.0/7 != 7/0.To understand
m, i.e. embedding? No, counterexample: targetf(a,a)whereais a wire connected to two ports and rule isf(x,x)with two wires with the same label.