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

Enumeration of Hypergraphs and Hypergraph Rules #650

Open
maxitg opened this issue May 19, 2021 · 0 comments
Open

Enumeration of Hypergraphs and Hypergraph Rules #650

maxitg opened this issue May 19, 2021 · 0 comments
Labels
student project A potential student project for the Wolfram School

Comments

@maxitg
Copy link
Owner

maxitg commented May 19, 2021

image

The project goal

We currently don't have any way to enumerate ordered hypergraphs or HypergraphSubstitutionSystem rules in SetReplace. The closest thing we have is a RandomHypergraph function and a resource function (which being a WFR function is difficult to use).

This project is mostly a software engineering project to implement the enumeration as a SetReplace function.

The algorithm from WFR can be used. However, it will need to be carefully tested. There are also some improvements that can be made. For example, we can allow flat enumeration based on complexity (similar to a single argument version of RandomHypergraph). If possible, it will also be nice to have a numbering scheme that will assign (not necessarily unique) short codes to rules and produce the rule given the code.

Expected deliverables:

  • A function to enumerate ordered hypergraphs, and, time permitting, HypergraphSubstitutionSystem rules.
  • A documentation page for that function, which can also be turned into a community post.

Motivations

Any systematic study of HypergraphSubstitutionSystem rules will require a reliable enumeration algorithm. This project will be a foundation for that.

External prerequisites

  • Familiarity with graphs and graph algorithms.
  • Experience with C++ or Wolfram Language.

SetReplace prerequisites

  • Understanding of HypergraphSubstitutionSystem (aka WolframModel).

Difficulty

It should be fairly straightforward to port the WFR function to SetReplace. However, implementing additional features, especially the short codes, might be quite hard.

Potential instructors

@maxitg

Existing work

Required future SetReplace features

No additional features are required. The rules can be used with WolframModel already.

@maxitg maxitg added the student project A potential student project for the Wolfram School label May 19, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
student project A potential student project for the Wolfram School
Projects
None yet
Development

No branches or pull requests

1 participant