PBESPGSOLVE(1)

πŸ“¦ version 202507, in nixos 26.05, nixpkgs unstable

πŸ’… PBESPGSOLVE(1) β€” the manual page, bestie edition

ok so this is pbespgsolve, and it lives in section 1 (User Commands) of the mCRL2 toolset man pages. it solves (P)BES and parity games, and honestly? it's a whole vibe. let's get into it 🫢


✨ NAME ✨

pbespgsolve β€” solves a (P)BES or a parity game, using a parity game solver. that's it, that's the tweet. πŸ‘‘


🌸 SYNOPSIS 🌸

pbespgsolve [OPTION]... [INFILE]

πŸ¦‹ DESCRIPTION πŸ¦‹

okay so picture this: it reads a file containing a (P)BES or a max-parity game, in PGSolver format. simple enough, right? ✨

but the pipeline is where it gets iconic. if you hand it a PBES input, it first instantiates it to a BES, and from that a parity game can be obtained. then a parity game solver swoops in and solves that parity game. main character energy fr fr.

the solution of the first vertex β€” which also defines the solution of the initial equation of the (P)BES β€” gets printed to standard output. πŸ’–

and if INFILE isn't there? no worries bestie, it just uses standard input instead. easy.


πŸŽ€ OPTIONS πŸŽ€

OPTION can be literally any of these:

  • -C, --cycle β€” eliminate cycles πŸŒ€
  • -iFORMAT, --in=FORMAT β€” use input format FORMAT, and the choices are: 'pbes' = PBES in internal format (this is the default), 'pgsolver' = BES in PGSolver format, 'text' = PBES in textual (mCRL2) format. pick your fighter πŸ’…
  • -L, --loop β€” eliminate self-loops πŸ”
  • -g, --onlygenerate β€” only generate the BES without solving it. like, just the build, no conclusions. πŸ™ˆ
  • -QNUM, --qlimit=NUM β€” limit enumeration of universal and existential quantifiers in data expressions to NUM iterations. default is NUM=10, and NUM=0 means unlimited (go off, no cap 🌈)
  • -rNAME, --rewriter=NAME β€” use rewrite strategy NAME: 'jitty' = jitty rewriting (default), 'jittyc' = compiled jitty rewriting, 'jittyp' = jitty rewriting with prover ✨
  • -c, --scc β€” use scc decomposition 🧩
  • -sNAME, --solver-type=NAME β€” use the solver type NAME: 'spm' = Small progress measures (default), 'altspm' = Alternative implementation of small progress measures, 'recursive' = Recursive algorithm, 'prioprom' = Priority promotion (experimental β€” you've been warned bestie πŸ‘€)
  • --timings[=FILE] β€” append timing measurements to FILE. if you don't give it a FILE, the measurements get written to standard error instead ⏱️
  • -e, --verify β€” verify the solution. trust but verify, periodt βœ…

⭐ Standard options ⭐

the classics, the essentials, the staples of the toolset:

  • -q, --quiet β€” do not display warning messages 🀫
  • -v, --verbose β€” display short log messages
  • -d, --debug β€” display detailed log messages πŸ›
  • --log-level=LEVEL β€” display log messages up to and including this level; it's either warn, verbose, debug or trace
  • -h, --help β€” display help information 🫢
  • --version β€” display version information
  • --help-all β€” display help information, including hidden and experimental options πŸ‘€βœ¨

πŸ‘‘ AUTHOR πŸ‘‘

Written by Maks Verver and Wieger Wesselink; Michael Weber. legends, all of them πŸ’œ


πŸ’€ REPORTING BUGS πŸ’€

found a bug? Report bugs at <http://www.mcrl2.org/issuetracker>. do NOT just suffer in silence, bestie 😭


Copyright Β© 2025 Technische Universiteit Eindhoven.

This is free software. You may redistribute copies of it under the terms of the Boost Software License <http://www.boost.org/LICENSE_1_0.txt>.

and there is NO WARRANTY, to the extent permitted by law. like, none. zero. ngl that part is important, don't skip it 🫢

🌈 SEE ALSO 🌈

See also the manual at <http://www.mcrl2.org/web/user_manual/tools/release/pbespgsolve.html>. iykyk πŸ“–


and that's the page!! πŸ’… this one's pbespgsolve from the mCRL2 toolset 2025..., dated October 2026, hanging out at PBESPGSOLVE(1). go solve some games bestie, you've got this πŸ¦‹βœ¨πŸŽ€

πŸ“¦ where this page comes from