This is a followup on 2014 blog posting "4 interlaced bisections from oeis.org":

https://www.ibm.com/developerworks/community/blogs/HermannSW/entry/4_interlaced_bisections_from_oeis_org

In that blog posting I described 4 integer sequences where two sequences share a bisection (each sequence has an even element number bisection, and an odd bisection). I found these relations because I worked on those sequences and realized at one point about the bisection sharing.

The 4 interlaced bisections form a 4-cycle in the "oeis share bisection" graph (oeis.org sequences are the nodes of the graph, and two nodes share an edge if the sequences share a bisection). This blog posting is on finding a 6-cycle in "oeis share bisection" graph.

Unlike 5 years ago I did not find the 6-cycle by looking deep into integer sequences, but I used many programs and scripts helping me to find a 6-cycle. Before describing what and how I did, here is the result, 6 oeis org integer sequences lying on a 6-cycle in "oeis share bisection" graph. The diagram is my biggest handcrafted SVG, but since even today some browsers might have problems displaying, I provide SVG URL and a .png image in addition:

https://oeis.org/A049651/a049651_2.svg

On the left you see the 6 sequences, with edges between successive numbers of the sequence, and always connecting a number from even bisection with a number from odd bisection of the sequence. On the right you see a connected component of "oeis share bisection" graph, and the top 6-cycle of the 8 node connected component corresponds to the left sequence diagram.

Now on the how and what I did.

It began with realizing that you can download a daily upbdated gzipped file containing all sequences in oeis.org that day. I downloaded that file on 4/11 and at that day the file contained exactly 232000 integer sequences:

https://oeis.org/wiki/Welcome#Compressed_Versions

I wrote a 120 line C program that reads the file, and creates the "oeis share bisection" graph in Graphviz .dot format. Not a nice program, many hard coded bounds for arrays (you need to adjust those when the program should run with later versions of stripped.gz with more sequences or sequences containing more elements. Because some sequences contain really huge numbers, I used C datatype "long long" for sequence numbers, which is a 128bit number type up to 10^38):

https://stamm-wilbrandt.de/en/blog/ana.c

Some sequences only contain a very low number of sequence elements. I wanted to consider only sequences of 20 numbers or more, so that both bisections have at least 10 numbers. So I did not look at all sequences, but there are still 241227 sequences of minimal 20 entries. The generated oeis.dot graph contains 2623751 edges.

There was a reason different to visualizing that graph on why I generated Graphviz .dot format. The Graphviz tool ccomps allows to convert the input graph into a new graph containing the connected components of the input graph as Graphviz subgraphs. There are 6538 connected components in generated oeis.ccomps:

https://manpages.debian.org/jessie/graphviz/ccomps.1.en.html

The first connected component (subgraph G_cc_0) is very big, it contains 2598826 edges. It contains many functions that I find not interesting (eg. A000007, the characteristic function of 0 which is 1,0,0,....). So I deleted that first connected component and got o.ccomps, containing 6537 connected components and only 24925 edges in total.

In a next step I made o.ccomps easily grepable, by first inserting a blank line after each subgraph, and then joining all lines of a paragraph into a single line with an sed script found in sed1line.txt. Each newline gets replaced by a "@" in addition, and all subgraphs containing a single edge only get dropped. The resulting graph m.ccomps contains only 3314 connected components:

$ sed "s/}/}\n/" o.ccomps | sed '/./{H;d;};x;s/\n/@/g' | grep -v "{@[^@]*@[^@}]*}" > m.ccomps

$

Because I was searching for a 6-cycle I started with looking at all connected component containing exactly 6 edges. As you can see I had to frame the result with "graph G [" and "}":

$ grep "{@[^@]*@[^@]*@[^@]*@[^@]*@[^@]*@[^@]*@[^@}]*}" m.ccomps | sed "s/@//g" > x

$ diff 6.dot x

1d0

< graph G {

181d179

< }

$

I found no 6.cycle in 6-edge, 7-edge, 8-edge and 9-edge subgraphs, but found one in 10-edge subgraphs. I used this sed script to convert the variable length oeis sequence numbers into the "A" followed by six digits format:

$ cat A.sed

s/\([\t ]\)\([0-9][0-9][0-9][0-9][0-9][0-9]\)\([\t; ]\)/\1A\2\3/g;

s/\([\t ]\)\([0-9][0-9][0-9][0-9][0-9]\)\([\t; ]\)/\1A0\2\3/g;

s/\([\t ]\)\([0-9][0-9][0-9][0-9]\)\([\t; ]\)/\1A00\2\3/g;

s/\([\t ]\)\([0-9][0-9][0-9]\)\([\t; ]\)/\1A000\2\3/g;

s/\([\t ]\)\([0-9][0-9]\)\([\t; ]\)/\1A0000\2\3/g;

s/\([\t ]\)\([0-9]\)\([\t; ]\)/\1A00000\2\3/g;

$

I added node definitions with another script with links to the corresponding sequence in oeis.org. The Graphvizfiddle share URL for the "all 40 10-edge subgraphs" graphs is of length 42767 bytes. Neither twitter nor this blog software can deal with such long URLs. So I created a URL shortener link for that graph:

https://stamm-wilbrandt.de/en/oeis/oeis.10-edge_CCs.html

That's it -- now that you know the tools, you can start yourself to find interesting new sequences or formulas!

My submissions to oeis.org got approved already, two formulas in FORMULA section with reference to LINKS section link to the SVG for the 6 sequences:

https://oeis.org/A049651

https://oeis.org/A077259

https://oeis.org/A110679

https://oeis.org/A232970

https://oeis.org/A254627

https://oeis.org/A294262

Hermann.