Combinatorial Computing, Assignments
CSCI761, Spring 2021
Upload single pdf with your solutions to each assignment to myCourses,
or if infeasible, send it by email to spr@cs.rit.edu with a single pdf
attachment containing entire submission.
Show the details of your work,
give brief reasons for your answers.
Assignment 1, due Tuesday, February 9
Part 1, connecting nauty (25 = 15 + 10 points)
nauty by
Brendan McKay

Install nauty on your computer, or get other access to nauty package,
and learn its basic commandline usage. Try first the functions
geng, countg and pickg. In each case 'help' lists available options.
Describe briefly your environment.

There are exactly 2 nonisomorphic graphs on 10 vertices
which have 16 or 17 edges, without cycles of length 4,
and with maximum degree 4. Find these graphs using nauty
functions.

Which nauty functions and with what options did you use?

Print g6format of the nauty canonical labeling of these two graphs.

Show 01 matrices of these graphs when
labeled canonically according to nauty.
zooming in on the two graphs resulting from 2
Part 2, no programming (25 = 5 + 10 + 10 points)
Some small graphs.

Draw all nonisomorphic graphs on up to 4 vertices.

How many distinct (5 x 5) 01 matrices are there
representing a pentagon? Prove it in just a few
lines of common sense reasoning
(say by counting the same things in different ways).

Draw the two graphs from the second part of
Part 1 as nicely as you can.
matrices and graphs for questions 2 and 3 of part 2
Assignment 2, due Thursday, February 18
(due date extended to 2/20)
Part 1, nauty, pipes and graph6 (40 = 10 + 15 + 15 points)
In this part of the assignment,
use (nauty, yours or other) functions which read and write graphs in
g6format
of graphs. Use pipes in at least some places.

In part 2.1 of the previous assignment you found 11 graphs
on 4 vertices. Print g6format of those among them which have
no triangles, put them into the file n4.g6.

Show that you can read, process and write graphs in g6format.
Write a program which reads graphs from input file I=n[k].g6
and constructs from it the output file O=n[k+1].g6, such
that O consists exactly of all canonically labeled graphs,
which have (k+1) vertices, have no triangles,
and no independent sets of order 5.

Iterate your program for (k=4;k<14;k++).
Which nauty functions and with what options did you use?
Make use of some pipes. Include any special script, if any.
You may corroborate your results with the contents of table
III on page 46 of the paper at position #97 of the
list
(here are just the 4 needed tables extracted from
tabs88.pdf).

Print canonical g6format of graphs in
n12.g6, n13.g6 and n14.g6.

Include commented source code you wrote for this assignment
(do not include nauty code or any parts of other libraries,
but do include any of your scripts using them).

[optional]
Follow the process of item 2., suitably adjusted, for
trianglefree graphs but avoiding K_{6} instead of K_{5}.
Part 2, no programming, just some nauty help (10 points)
For each graph below list generators of its automorphism
group and explain why they show up (or not) in your drawing
(dreadnaut and countg a may help). Label your graphs suitably.

Draw nicely any graph in n13.g6.

Draw nicely the two most symmetric graphs among those in n12.g6.
Sample solution by Hannah Miller.
Assignment 3, due Tuesday, March 2
(50 = 2*25 points)

List all the elements of automorphism groups
of two (3,4;8)graphs (Graph 2 and Graph 3 on
the page).
Make two listings of permutations for each:
as mappings and in cycle
notation (thus, 4 listings in total).

For classical twocolor Ramsey numbers R(s,t),
it holds that R(s,t) <= R(s,t1) + R(s1,t)
for all r, s >= 3. Furthermore, this inequality is strict
if both R(s,t1) and R(s1,t) are even. Using this,
R(s,t) = R(t,s), and R(s,2) = s, derive the best upper bounds you can
obtain for R(s,t), for all 3 <= s <= t <= 10. Present the bounds in a table.
Mark the entries for which you used the clause
"if both R(s,t1) and R(s1,t) are even".
Sample solution by Daman Morris,
sample solution by Jiaqing Shen,
sample solution by Xiaoyi Yang.
Assignment 4, due Tuesday, March 16

Draw
Cayley graphs of the two automorphism groups of
Graph 2 and Graph 3 on
this page,
using the generators as listed there.
Since in these cases all generators
are involutions, your Cayley graphs can be shown as undirected
graphs (example:
Cayley graphs of the group of automorphisms of C5 for
three different pairs of generators).

Let J_{n}=K_{n}e denote the complete graph K_{n} with
one edge dropped. Trivially, R(J_{4},J_{3})=5.
It is known that R(J_{4},J_{4})=10,
R(J_{4},J_{5})=13, R(J_{4},J_{6})=17
and R(J_{4},J_{7})=28. The first open case for
the Ramsey numbers of this type is for J_{4}
versus J_{8}, for which the best
known bounds are 30 <= R(J_{4},J_{8}) <= 32
(see pages 12 and 13 of the survey
SRN
for more details and references).

Generate and describe all
graphs in (J_{4},J_{4};9) and (J_{4},J_{5};12).

[Optional] Generate and describe all graphs in (J_{4},J_{6};16).

[Optional] Generate and describe all graphs in (J_{4},J_{7};27).
Hint: the famous
Schläfli graph,
which remarkably has 51840 automorphisms, is involved.
See the bounds listed in Table IIIa in the survey paper
SRN.
Submit a description of what and how you did it.
Include source code developed specifically for this assignment.
Sample solution by Daman Morris,
sample solution by Xiaoyi Yang.
TakeHome Midterm Exam, due Saturday, March 20
Posted on myCourses on Thursday, March 18, at 5pm.
Key on myCourses available from March 23 until March 31.
Assignment 6, due Thursday, April 8
This assignment is posted as a
pdf here,
and also the same is on myCourses.
Final Exam, Thu 5/13, 7pm9:30pm, 701610
Back to the course page