CUBHAMG(1)

πŸ“¦
version 2.9.3 Β· 3 versions
, in fedora 43, fedora 44

πŸ¦‹ CUBHAMG β€” the manual page for cubhamg 2.9.3, bestie edition

okay so. sit down, hydrate, because we're about to talk about finding hamiltonian cycles in sub-cubic graphs and honestly? it's giving main character energy. this is the manual page for cubhamg version 2.9.3 and i need you to be so fr with me rn.


✨ SYNOPSIS ✨

cubhamg [-#] [-v|-V] [-n#-#|-y#-#|-i|-I|-o|-O|-x|-e|-E|-c] [-b|-t]
[infile [outfile]]

πŸ’– DESCRIPTION πŸ’–

cubhamg is literally here to find hamiltonian cycles in sub-cubic graphs. that's the whole vibe.

graphs that are not hamiltonian, or that are not solved, get written out. slay.

  • infile is the name of the input file in graph6/sparse6 format
  • outfile is the name of the output file in the same format

stdin and stdout are the defaults for infile and outfile. so if you just pipe stuff in and let it fly, that's valid. 🫢

the output file will have a header if and only if the input file does. no cap. matching energy only.

Optional switches: (and bestie, there are a LOT of them, we're going through every single one)


πŸŽ€ OPTIONS πŸŽ€

  • -# β€” a parameter useful for tuning, default 100. just vibes-based tuning, iykyk.
  • -v β€” report nonhamiltonian graphs and noncubic graphs. (with -c, give count for each input)
  • -V β€” .. in addition give a cycle for the hamiltonian ones. (with -c list all the cycles in addition to the count) ✨
  • -n#-# β€” if the two numbers are v and i, then the i-th edge out of vertex v is required to be not in the cycle. it must be that i=1..3 and v=0..n-1. not me forcing edges out of the cycle πŸ’…
  • -y#-# β€” if the two numbers are v and i, then the i-th edge out of vertex v is required to be in the cycle. it must be that i=1..3 and v=0..n-1. forcing it IN. iconic.
you can use any number of -n/-y switches to force edges. out of range first arguments are ignored. if -y and -n specify the same edge, -y wins. periodt. πŸ’…
  • -i β€” test + property: for each edge e, there is a hamiltonian cycle using e.
  • -I β€” test ++ property: for each pair of edges e,e', there is a hamiltonian cycle which uses both e and e'.
  • -o β€” test - property: for each edge e, there is a hamiltonian cycle avoiding e
  • -O β€” test -- property: for each pair of nonadjacent edges e,e's, there is a hamiltonian cycle avoiding both. note that this is trivial unless the girth is at least 5.
  • -x β€” test +- property: for each pair of edges e,e', there is a hamiltonian cycle which uses e but avoids e'.
  • -e β€” test 3/4 property: for each edge e, at least 3 of the 4 paths of length 3 passing through e lie on hamiltonian cycles.
  • -E β€” test 3/4+ property: for each edge e failing the 3/4 property, all three ways of joining e to the rest of the graph are hamiltonian avoiding e.
  • -T# β€” specify a timeout, being a limit on how many search tree nodes are made. if the timeout occurs, the graph is written to the output as if it is nonhamiltonian. 😭
  • -R# β€” specify the number of repeat attempts for each stage.
  • -F β€” analyze covering paths from 2 or 4 vertices of degree 2.
  • -b β€” require biconnectivity
  • -t β€” require triconnectivity (note: quadratic algorithm)
  • -c β€” count hamiltonian cycles, output count for each graph. -V, -n and -y can also be used. no graphs are output. πŸ”₯

🌸 the fine print 🌸

-y, -n, -#, -R and -T are ignored for -i, -I, -x, -o, -e, -E, -F. like, don't even bother, they're not coming to the party.

and that's the whole thing bestie, we ate and left no crumbs. this was cubhamg 2.9.3, from the September 2026 era, a genuine user-commands classic. go find some hamiltonian cycles, you've got this πŸ’–βœ¨πŸŽ€πŸ¦‹

πŸ“¦ where this page comes from
  • fedora 43: nauty 2.9.3-3.fc43 Β· Apache-2.0 AND LicenseRef-Fedora-Public-Domain AND Knuth-CTAN AND GPL-1.0-or-later
  • fedora 44: nauty 2.9.3-4.fc44 Β· Apache-2.0 AND LicenseRef-Fedora-Public-Domain AND Knuth-CTAN AND GPL-1.0-or-later
  • πŸ’– girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms