perm filename ENUMER.PUB[DOC,LMM] blob
sn#056028 filedate 1973-07-31 generic text, type C, neo UTF8
COMMENT ⊗ VALID 00011 PAGES
C REC PAGE DESCRIPTION
C00001 00001
C00003 00002 .<< TITLE PAGE, INITIAL DECLARATIONS >>
C00006 00003 .HD INTRODUCTION
C00008 00004 Def. Given a set X, the ↓_symmetric group on X_↓, or S↓X, is defined
C00009 00005 .HD STATEMENT OF PROBLEM
C00010 00006 .HD Burnside lemma.
C00011 00007 To apply the Bernside lemma to this problem,
C00014 00008 This weight function satisfies our requirements:
C00015 00009 Consider ↓[f=f%α]&[ ∃ ]w↓o(f) and the cycles of %α.
C00017 00010 Our generating function is now ↓[n!]&↑[1 ]&[--]∂↓[αεS↓N]&[ ∃ ] V(α).
C00019 00011 .comment << special chars %=chi, ∃=big sigma, #=script F, =circle, ↔ eqiv>>
C00022 ENDMK
C⊗;
.<< TITLE PAGE, INITIAL DECLARATIONS >>
.DEVICE TTY
.FOOTSEP←"------------------";
.BEGIN CENTER
ENUMERATION OF THE GRAPHS OF MOLECULES
by
Larry Masinter
Stanford University
Computer Science Department
.END
.GROUP SKIP 5
.BEGIN INDENT 6,6,6
ABSTRACT. Previously, enumerations of the number of equialence classes of
graphs with a given partitions have been given (1,2). These results are
extended to give enumerations for the number of equivalence classes of
connected multigraphs.
Connected multigraphs correspond directly with chemical molecules; thus
the enumeration can be applied to count the number of chemical isomers
constructable from a given set of atoms.
Bounds may be placed on the
multiplicity of each edge, corrsponding to restructions on multiple bonds
in chemical structures.
.END
.MACRO HD (HEADING) ⊂ BEGIN TURNON "{";
.IF LINES<4 THEN SKIP TO COLUMN 1 ELSE SKIP 1;NOFILL;}HEADING{END;⊃
.TURNON "∪↑↓[]&_";
.TURNOFF "{}α%⊗#⊂⊃ε";
.EVERY HEADING(,ENUMERATION OF THE GRAPHS OF MOLECULES,{PAGE});
.MACRO TITL(TITLE)⊂BEGIN TURNON "{";SKIP 2;NOFILL;BREAK;CENTER;}TITLE{END;⊃
.AREA TEXT LINES 4 TO 45;
.SKIP TO COLUMN 1;
.HD INTRODUCTION
.HD DEFINITIONS
Def. A ↓_multi-graph_↓ of order n is the set N={1,...,n} (called
the ∪nodes of the graph) together with a mapping f from the set
E(n)={{i,j}|1≤i<j≤n} to the set of non-negative integers I+. Those
eεE for which f(e)≠0 are said to be edges of the graph; the
∪multiplicity of e is f(e). Also, if e={i,j} then node i is said to
be connected to node j with multiplicity f({i,j}). Multi-graphs may
be restricted to those whose edges have maximum multiplicity k by
restricting the range of f to be the set of integers {0,1,...,k}. A
↓_k-multigraph_↓ is thus an element of k↑[E(n)].
. break
Def. The ∪degree of a node nεN is d(n)=↓[m≠n]&∃ f({n,m}). The
degree is the total number of other nodes n is connected to, with
each connection counted the appropriate multiplicity number of
times.
. break
Def. The ∪degree ∪seqence of a graph f is defined to be the ordered
list ds(f)=(o↓1,o↓2,...), where o↓1≤o↓2≤...≤o↓n, and
|{j:o↓j=k}|=|{l:d(l)=k}|. It is the sorted list of the degrees of
the nodes of f.
. break
Def. Given a set X, the ↓_symmetric group on X_↓, or S↓X, is defined
to be the set of all automorphisms from X onto X.
. break
Def. Two graphs f, g of order n are said to be ∪isomorphic if there
exists a permutation αεS↓N such that ∀i,jεN f({i,j})=g({α(i),α(j)}).
This is written f↔g.
. break
Lemma. f↔g => ds(f) = ds(g).
. break
Def. Given a set F and an equivalence relation ↔ on F, we define
the set of equivalence classes of F under ↔, F/↔, to be {{fεF:f↔g}
| gεF}.
. BREAK
.HD STATEMENT OF PROBLEM
Thus, the the problem is to find a generating function for the
number of equivalence classes of k-multigraphs with a given
degree sequence (o↓0,o↓1,o↓2,...)
. break
.HD Burnside lemma.
Given a set E, and a group G, a mapping %:G→S↓E, a set B, and #=B↑E;
and the equivalence relation for f,gε# f↔g if there exists αεG such
that f=g⊗%(α).
. break
Given a weight function w:#→@, where @ is a field, such that
f↔g => w(f)=w(g).
. break
For F an equivalence class in #/↔, define W(F) to be w(f) for any fεF.
Then
. begin nofill
↓[Fε#/↔]&[ ∃ ]W(F) = ↑[ 1 ]&↓[|G|]&--↓[αεG]&[ ∃ ]↓[f=f⊗%α]&[ ∃ ]w(f).
. end
To apply the Bernside lemma to this problem,
it is necessary to devise a weight function such that two graphs with
the same degree sequence have the same weight and graphs with different
degree sequences have different weights. Further, to construct a generating
function for the number of graphs with given degree sequences, the degree
sequences should be reflected in the exponents of terms in the weight rather
than in the coefficient.
. break
Thus, we define the weight function w↓o on k↑[E(n)] into the set of real
polynomials in u↓1,u↓2,...,u↓n by:
.begin nofill
w↓o(f)=↓[1≤i<j≤n]&[ π ] (u↓iu↓j)↑[f({i,j})]
.end
The exponent of u↓i in w↓o(f) will be the degree of node i in the graph (N,f).
Unfortunately, ds(f)=ds(g) (or even f↔g) does not imply w↓o(f)=w↓o(g);
although f and g have the same degree sequence, the exponents may be permuted
among the u↓i.
It is necessary to apply a symmetrizing operator ∂:
. break
Def. For w a function in u↓1, u↓2, ... u↓n, define
. begin nofill
∂(w)(u↓1,u↓2,...,u↓n)=↑[1 ]&↓[n!]&[--] ↓[αεS↓N]&[ ∃ ]w(u↓[α↓1],u↓[α↓2],...,u↓[α↓n])
Note: 1) ∂ is linear
2) if w is symmetric, then ∂w=w;
specifically, ∂∂w=∂w for any w.
The weight function w can now be defined by:
for fεk↑E, w(f)=∂w↓o(f).
. end
This weight function satisfies our requirements:
if the degree sequence of f is o↓1≤o↓2≤o↓3≤...o↓n, the weight of f
will be:
. begin nofill
∂u↓1&↑[o1]u↓2&↑[o2]...u↓n&↑[on]
. end
Then, using the definition of ↔ given earlier, with
the representation of the group G=S↓N by:
. break
Def. %:S↓N→S↓E by %(β){i,j}={β(i),β(j)}
. break
we obtain:
. begin nofill
↓[fε#/↔]&[ ∃ ]w(f)=↓[n!]&↑[1 ]&[--] ↓[αεS↓n]&[ ∃ ]↓[f=f⊗%α]&[ ∃ ]w(f)
=↓[n!]&↑[1 ]&[--] ∂↓[αεS↓n]&[ ∃ ]↓[f=f⊗%α]&[ ∃ ] w↓o(f)
. end
Consider ↓[f=f⊗%α]&[ ∃ ]w↓o(f) and the cycles of %α.
f=f⊗%α <=> f is constant on each cycle of %α.
For a given α, let M↓α be the number of cycles of %α; for
1≤r≤M↓α, let C↓r&↑α be the set of edges (elements of E) in
the r-th cycle of %α, and
. begin nofill
U↑α&↓r=↓[{l,p}εC↓r]&[ π ] u↓lu↓p
Then for f=f⊗%α,
w↓o(f)=↓[i,j]&[ π ](u↓iu↓j)↑[f({i,j})]
=↓[r=1]&↑[ M ]&[ π] (U↓r&↑α)↑[f(cycle r)]
. end
Since each f=f⊗%α can be specified by its value on the cycles
of %α, there is a 1-1 correspondence between such f and
∨ε{0,1,...,k}↑M, where k is the maximum multiplicity (can be ∞),
by ∨(r)=f(cycle r).
In particular,
. begin nofill
V(α) =↓[f=f⊗%α]&[ ∃ ] w↓o(f) =↓∨&∃ ↓[r=1]&↑[ Mα]&[ π ] ( U↓r&↑α )↑[∨(r)]
.turnon "{";
= ↓[r=1]&↑[ Mα]&[ π ] ↑[1-(U↓r)↑k]&↓[1 - U↓r]&[-------] (or {
}↓[r=1]&↑[ Mα]&[ π ] ↑[ 1 ]&↓[1-U↓r]&[-------] if k=∞)
. end
Our generating function is now ↓[n!]&↑[1 ]&[--]∂↓[αεS↓N]&[ ∃ ] V(α).
We wish to group the summation by those permutations α with cycle index
λ↓1+2λ↓2+...+nλ↓n=n (λ↓i is the number of i-cycles of α; note that
this is different from the number of various cycles of %α).
Let α↑⊗(λ↓1,λ↓2,...,λ↓n) be the permutation obtained by filling in
the integers 1,...,n into the slots in
. begin nofill
(.)(.)...(.) (..)(..)(..) ... (.. ...)
---------- ---------- -----
λ↓1 1-cycles λ↓2 2-cycles ... λ↓n n-cycles
. end
For ∨εS↓N, ∨α↑⊗∨↑[-1] has the same cycle structure as α↑⊗; further, there
are exactly Y(λ↓1,λ↓2,...,λ↓n)=↓[k=1]&↑[ n ]&[ π ] (k↑[↑λk]λ↓k!) such
permutations.
. BREAK
Thus,
. BREAK
↓[αεS↓N]&[ ∃ ] V(α)
=↓[λ↓1+...+λ↓n=n]&[ ∃ ] ↓[Y(λ)]&↑[ 1 ]&[-----] ↓[∨εS↓N]&[ ∃ ] V(∨α↑⊗&↓λ∨↑[-1])
. BREAK
.comment << special chars %=chi, ∃=big sigma, #=script F, ⊗=circle, ↔ eqiv>>;
.comment << also @ is fancy f, ∂ is script O >> ;