sympol(1)
πΈ SYMPOL π
okay so real talk, bestie β this is sympol, section 1 of the manual, and it's literally the symmetric polyhedra tool. Like, that's the whole vibe. Buckle up π
β¨ SYNOPSIS β¨
sympol [OPTIONS] [INPUT_FILE]
π¦ DESCRIPTION π¦
SymPol computes restricted automorphisms of polyhedra, and it also does polyhedral description conversion β up to a symmetry group that you either hand it or it figures out itself. Obsessed, honestly. π
Mostly it speaks the .ine/.ext file format that cddlib and lrslib use (the lore lives at http://cgm.cs.mcgill.ca/~avis/C/lrslib/USERGUIDE.html#File%20Formats, iykyk). But here's the tea: unlike cddlib, SymPol requires that every inequality (that's the H-representation) or every vertex and ray (the V-representation) sit on a single line. No wrapping, no exceptions, periodt.
On top of that, SymPol offers an extension to the format. π
That extension lets you embed the automorphism group of a polyhedron β or just parts of it β right there in the file. It goes after the end of the H- or V-representation of a permutation group, like this:
permutation group
p
{ list of #p group generators }
q
{ #q base points separated by whitespace }
The p group generators get written in cycle form, where commas separate the cycles. And the value q? You can set it to zero if no base of the group is known. Easy. π
π OPTIONS π
-h,--helpβ shows you a help message. The classic. π«Ά-v,--verbose[=N]β sets the verbosity level, which is0by default. If you leaveNoff,1is assumed. π-t,--timeβ turns on time measurement. Clock it. β±οΈ-i,--input-file FILEβ reads an input file (.ineor.ext). You can also just list the file last on the command line, if that's more your vibe.--automorphisms-onlyβ computes only restricted automorphisms, then dips out. βοΈ--no-automorphismsβ ignores the symmetry group you gave it and doesn't even try to compute restricted automorphisms. Not me ignoring the assignment π--blissβ uses the bliss graph automorphism tool to compute restricted automorphisms. This is the default if bliss is available.--permlibmatrixβ uses the PermLib matrix automorphism search to compute restricted automorphisms.--eigenβ uses floating point arithmetic based on Eigen to compute restricted automorphisms.-e,--estimation-onlyβ computes only the LRS estimation, then bails. πͺ-d,--directβ computes the dual description directly.-a,--admβ uses one level of adjacency decomposition and solves the subproblems directly.--idm-adm-level idm-level adm-levelβ uses a combined IDM/ADM strategy with the levels you indicate.--adm-idm-level adm-level idm-levelβ uses a combined ADM/IDM strategy with the levels you indicate. (yes, the order of the arguments flips too, stay woke ποΈ)--adm-estimate thresholdβ uses the adjacency decomposition method right up to the given estimate threshold.--adm-dim thresholdβ uses the adjacency decomposition method right up to the given dimension threshold.--adm-incidence thresholdβ uses the adjacency decomposition method right up to the given incidence number threshold.--idm-adm idm-threshold adm-thresholdβ uses a combined IDM/ADM strategy with the thresholds you indicate.--cddβ uses cdd for core dual description conversion. β οΈ EXPERIMENTAL, so likeβ¦ be careful, bestie.--adjacenciesβ records facet adjacencies. Requires the ADM method at level0. No level 0, no adjacency recording β that's the rule. π§
π§ PARAMETERS π§
--conf-lrs-estimates=Nβ how many estimates LRS performs (default:8).--conf-lrs-estimate-maxdepth=Nβ the maximal allowed depth of LRS estimates (default:3).--conf-compute-invariants=Nβ the maximal degree of permutation group invariant polynomials to use (default:0).--conf-compute-orbit-limit=Nβ memory limit, in megabytes, for computing the full orbit (default:1024).--conf-compute-canonical-representatives=Nβ nonzero to compute canonical representatives for faces (default:0).--conf-intermediate-poly-fileprefix=PREFIXβ prefix for the filenames in which intermediate polyhedra get saved. Super useful for debugging and analyzing instances. Default: empty prefix (so, like, nothing π«§).
ngl, that.ine/.extsingle-line rule is the one thing people trip on the most β every inequality, vertex and ray on its own one line, no cap. π
okay that's the whole page, bestie!! mwah π
SymPol version 0.1.6 β and this served you all of that as sympol(1). go slay some polyhedra ππ
π¦ where this page comes from
- arch rolling: sympol 0.1.9-24 Β· GPL-2.0-or-later
- opensuse-leap 16.0: sympol 0.1.9-bp160.1.13 Β· GPL-2.0-or-later
- opensuse-leap 16.0: sympol 0.1.9-bp160.1.13 Β· GPL-2.0-or-later
- opensuse-leap 16.0: sympol 0.1.9-bp160.1.13 Β· GPL-2.0-or-later
- opensuse-leap 16.0: sympol 0.1.9-bp160.1.13 Β· GPL-2.0-or-later
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms