Wolfram Language Paclet Repository

Community-contributed installable additions to the Wolfram Language

Primary Navigation

    • Cloud & Deployment
    • Core Language & Structure
    • Data Manipulation & Analysis
    • Engineering Data & Computation
    • External Interfaces & Connections
    • Financial Data & Computation
    • Geographic Data & Computation
    • Geometry
    • Graphs & Networks
    • Higher Mathematical Computation
    • Images
    • Knowledge Representation & Natural Language
    • Machine Learning
    • Notebook Documents & Presentation
    • Scientific and Medical Data & Computation
    • Social, Cultural & Linguistic Data
    • Strings & Text
    • Symbolic & Numeric Computation
    • System Operation & Setup
    • Time-Related Computation
    • User Interface Construction
    • Visualization & Graphics
    • Random Paclet
    • Alphabetical List
  • Using Paclets
    • Get Started
    • Download Definition Notebook
  • Learn More about Wolfram Language

Hypergraph

Guides

  • Hypergraph Functionality

Tech Notes

  • Hypergraph Rewriting

Symbols

  • AdjacencyHypergraph
  • AdjacencyTensor
  • CanonicalHypergraph
  • CanonicalHypergraphRule
  • ConnectedHypergraphQ
  • CyclicEdge
  • EdgeListTagged
  • EdgeMultiplicity
  • EdgeSymmetry
  • EnumerateHypergraphRules
  • EnumerateHypergraphs
  • EnumerateOrderedHypergraphs
  • EnumerateWolframModelRules
  • HighlightRule
  • HyperedgeList
  • Hyperedge
  • Hyperedges
  • HyperedgesQ
  • Hypergraph3D
  • HypergraphArityReduce
  • HypergraphDraw
  • HypergraphEmbedding
  • HypergraphHadamardProduct
  • HypergraphIncidenceMatrix
  • HypergraphIncidence
  • HypergraphInsertionBracketDegree
  • HypergraphInsertionBracket
  • HypergraphInsertion
  • HypergraphLargeQ
  • Hypergraph
  • HypergraphQ
  • HypergraphRuleDraw
  • HypergraphRule
  • HypergraphRuleQ
  • HypergraphToGraph
  • HypergraphTransitionMatrix
  • HypergraphUnion
  • HypermatrixGraph
  • Hypermatrix
  • HypermatrixQ
  • IncidenceHypergraph
  • IsomorphicHypergraphQ
  • KoszulSign
  • LinkedHypergraph
  • OrderedHypergraphToGraph
  • RandomAllHypergraph
  • RandomConnectedHypergraph
  • RandomHypergraph
  • RandomHypergraphRule
  • SetHypergraphSummaryThresholds
  • SimpleHypergraph
  • SimpleHypergraphPlot3D
  • SimpleHypergraphPlot
  • SimpleHypergraphQ
  • ToLabeledEdges
  • ToLabeledPatternEdges
  • ToOrderedHypergraph
  • ToPatternRules
WolframInstitute`Hypergraph`
EnumerateHypergraphRules
​
EnumerateHypergraphRules
[{{
m
1
,
a
1
},…}{{
k
1
,
b
1
},…}]
enumerates canonical hypergraph rewrite rules whose input has
𝑚
1
hyperedges of arity
𝑎
1
, etc, and whose output has
𝑘
1
hyperedges of arity
𝑏
1
, etc.
​
​
EnumerateHypergraphRules
[sig,s]
enumerates rules with exactly s distinct atoms.
​
​
EnumerateHypergraphRules
[sig,{s,type}]
enumerates rules with connectivity type.
​
Details and Options
▪
EnumerateHypergraphRules
returns a list of
HypergraphRule
objects, one representative per equivalence class of Wolfram-model-style rules with the given signature.
▪
The signature is a rule of two hyperedge specifications
{{m1,a1},{m2,a2},...}
, each specifying
m1
hyperedges of arity
a1
,
m2
hyperedges of arity
a2
, etc.
▪
With no explicit atom count, all rules with up to the maximum number of atoms that the connectivity type allows are enumerated, matching the default of the Wolfram Function Repository function
EnumerateWolframModelRules
.
▪
An explicit atom count s selects the rules with exactly s distinct atoms; this differs from the Wolfram Function Repository function, whose integer argument means up to s atoms.
▪
Possible connectivity types are:
type
constraint
Automatic
the input is connected, and connected to the output
All
input and output are each connected, and connected to each other
None
no connectivity constraint
▪
EnumerateHypergraphRules
[sig,type]
is equivalent to
EnumerateHypergraphRules
[sig,{
Automatic
,type}]
.
▪
Additional options are forwarded to
HypergraphRule
.
​
Examples  
(12)
Basic Examples  
(2)
Enumerate all canonical rules with one binary hyperedge on each side:
In[1]:=
EnumerateHypergraphRules
[{{1,2}}{{1,2}}]
Out[1]=

,
,
,
,
,
,
,
,
,
,

Count the rules taking one binary hyperedge to two binary hyperedges:

© 2026 Wolfram. All rights reserved.

  • Legal & Privacy Policy
  • Contact Us
  • WolframAlpha.com
  • WolframCloud.com