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`
HypergraphInsertion
​
HypergraphInsertion
[hg1,hg2,…,hgn]
inserts hgn into hg(n-1), the result into hg(n-2), and so on down to hg1, at every allowed vertex at each step, giving a list of one-key associations <|hg -> sign|>, one for each way of performing the chain of insertions.
​
Details and Options
▪
Inserting a hypergraph hg' at a vertex v of a hypergraph hg identifies v with the root of hg', which by convention is the first vertex in
VertexList
[hg']; the rest of hg''s vertices are added as fresh vertices attached the way they were attached to the root in hg'.
▪
HypergraphInsertion
is the raw building block behind
HypergraphInsertionBracket
: the bracket symmetrizes (or antisymmetrizes)
HypergraphInsertion
's results over every ordering of its arguments and collects the outcomes up to isomorphism, while
HypergraphInsertion
itself returns the unsymmetrized, uncollected list of insertion terms.
▪
Each returned association pairs a resulting hypergraph with an integer Koszul sign (see
KoszulSign
) that keeps track of the sign incurred by inserting into the target's vertex ordering.
▪
Insertion at a vertex is intended to happen only when that vertex's "Degree" annotation matches the degree of the root of the inserted hypergraph (see
HypergraphInsertionBracketDegree
); every vertex defaults to degree 0, so plain hypergraphs (with no degree annotations) insert at every vertex.
​
Examples  
(5)
Basic Examples  
(3)
Insert a single edge into every vertex of a triangle:
In[1]:=
Length
HypergraphInsertion

Hypergraph
[{{1,2,3}}],
Hypergraph
[{{1,2}}]
Out[1]=
3
_________________________________________________________________________________________________________________
Because a triangle is vertex-transitive, every one of the three insertions gives an isomorphic result:
In[1]:=
EdgeList
CanonicalHypergraph
First@Keys
HypergraphInsertion

Hypergraph
[{{1,2,3}}],
Hypergraph
[{{1,2}}]1
Out[1]=
{{1,4},{2,3,4}}
_________________________________________________________________________________________________________________
Each term carries a Koszul sign; for plain (ungraded) hypergraphs, every sign is 1:
In[1]:=
Values/@
HypergraphInsertion

Hypergraph
[{{1,2,3}}],
Hypergraph
[{{1,2}}]
Out[1]=
{{1},{1},{1}}
Scope  
(1)

Possible Issues  
(1)

SeeAlso
HypergraphInsertionBracket
 
▪
HypergraphInsertionBracketDegree
 
▪
KoszulSign
 
▪
CanonicalHypergraph
RelatedGuides
▪
HypergraphFunctionality
""

© 2026 Wolfram. All rights reserved.

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