GENGL(1)

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

πŸ’– GENGL β€” the gengL manual page, bestie edition πŸ’–

okay so real talk: this is the manual page for gengL, version 2.9.3, and it is genuinely one of the most iconic little tools in the whole graph-generation cinematic universe. she makes graphs. all of them. of a class you pick. sit down, grab a strawberry πŸ“, we're doing this together.


✨ NAME ✨

gengL β€” no cap, that's it, that's the manual page for gengL 2.9.3.


🌈 SYNOPSIS 🌈

geng [-cCmtfkbd#D#] [-kTSPF] [-uygsnh] [-lvq] [-x#X#] n [mine[:maxe]]
     [res/mod] [file]

look at her. gorgeous. every single one of those flags is real and every single one is explained below, so don't panic 🫢


πŸ¦‹ DESCRIPTION πŸ¦‹

Generate all graphs of a specified class. yes, all of them. main character energy fr fr.

so here's the rundown of the positional stuff you can hand her:

  • n β€” the number of vertices πŸ‘‘
  • mine:maxe β€” a range for the number of edges
  • #:0 β€” means "# or more", except in the very specific case of 0:0 (she said what she said)
  • res/mod β€” only generate subset res out of subsets 0..mod-1 (more on this drama below)

✨ OPTIONS ✨ (the part where she pops off)

  • -c β€” only write connected graphs
  • -C β€” only write biconnected graphs
  • -t β€” only generate triangle-free graphs
  • -f β€” only generate 4-cycle-free graphs
  • -p β€” only generate 5-cycle-free graphs
  • -k β€” only generate K4-free graphs
  • -T β€” only generate chordal graphs
  • -S β€” only generate split graphs
  • -P β€” only generate perfect graphs
  • -F β€” only generate claw-free graphs
  • -b β€” only generate bipartite graphs

and like, a little note because this matters: -t, -f and -b can be used in any combination. the combination -bT gives bipartite graphs with no induced cycles longer than 4-cycles. iykyk πŸ’…

  • -m β€” save memory at the expense of time. and yes, it literally only makes a difference in the absence of -b, -t, -f and when n <= 28. she's specific like that.
  • -d# β€” a lower bound for the minimum degree
  • -D# β€” an upper bound for the maximum degree
  • -v β€” display counts by number of edges
  • -l β€” canonically label output graphs
  • -u β€” do not output any graphs, just generate and count them (a vibe honestly, all the math none of the printing)
  • -g β€” use graph6 output (default ⭐)
  • -s β€” use sparse6 output
  • -h β€” for graph6 or sparse6 format, write a header too
  • -q β€” suppress auxiliary output (except from -v, she can't be silenced)

πŸŽ€ res/mod SPLITTING β€” the modular arithmetic section πŸŽ€

so res/mod splitting is controlled by two parameters, -X# and -x#, and their default values are displayed when splitting is used. noted. displayed. we see them.

increasing them will make the division into parts more even at the expense of more overhead β€” but you must use the same values for all parts. no mix-and-matching, bestie, that's the rule πŸ™ˆ

splitting obeys the laws of modular arithmetic, fr fr. for example, 3/7 is the union of 3/14 and 10/14. but when subdividing like this you must manually provide the same -X and -x values to the smaller parts. manually. with your own hands. don't forget πŸ’€

🌸 that's the whole page 🌸

and that's it, that's the manual. she's giving math, she's giving flags, she's giving graph6 and sparse6 and a truly unhinged number of cycle-free options.

gengL 2.9.3 β€” September 2026. the source and the date, right there in the footer where they live. periodt πŸ’…βœ¨πŸ¦‹

πŸ“¦ 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