PBES2BOOL(1)

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

πŸ’… PBES2BOOL πŸ’…

ok so this is the pbes2bool page from the User Commands manual, and honestly? it's a little icon. quick vibe check before we dive in: it takes a (P)BES and solves it. that's the whole thing. let's get into it 🫢


✨ NAME ✨

pbes2bool β€” bestie, it generates a BES from a PBES and solves it. that's the job. that's the assignment. periodt πŸ’…


🌸 SYNOPSIS 🌸

pbes2bool [OPTION]... [INFILE]

πŸ¦‹ DESCRIPTION πŸ¦‹

okay so here's what's actually happening: pbes2bool solves a (P)BES from INFILE. and if INFILE isn't there? no stress, it just reads from stdin instead 🫢

the PBES first gets instantiated into a parity game, and then that parity game gets solved using Zielonka's algorithm. iconic algorithm, no notes.

and the best part β€” it supports generating a witness or a counter example for the property that's encoded by the PBES. so you don't just get a yes/no, you can get the receipts πŸ”₯


πŸŽ€ OPTIONS πŸŽ€

OPTION can be any of the following, bestie:

  • --evidence-file=NAME β€” the file where the evidence gets written. if you don't set it, a default name is chosen for you. lowkey convenient ✨
  • -fNAME, --file=NAME β€” the file containing the LPS or LTS that was used to generate the PBES using lps2pbes -c. if you set this, a counter example or witness for the encoded property will be generated. heads up on the extension: it should be .lps in case of an LPS file, and in all other cases it's assumed to be an LTS.
  • -iFORMAT, --in=FORMAT β€” use input format FORMAT: 'pbes' means PBES in internal format (and that's the default btw).
  • --prune-todo-list β€” prune the todo list periodically. she's tidy πŸ’…
  • -QNUM, --qlimit=NUM β€” limit enumeration of universal and existential quantifiers in data expressions to NUM iterations (default NUM=10, and NUM=0 means unlimited).
  • -rNAME, --rewriter=NAME β€” use rewrite strategy NAME:
    • 'jitty' β€” jitty rewriting (default)
    • 'jittyc' β€” compiled jitty rewriting
    • 'jittyp' β€” jitty rewriting with prover
  • -zNAME, --search-strategy=NAME β€” use search strategy NAME:
    • 'breadth-first' β€” leads to smaller counter examples (default)
    • 'depth-first'
  • -sNAME, --solve-strategy=NAME β€” use solve strategy NAME. strategies 1–4 periodically apply on-the-fly solving, which may lead to early termination. πŸ‘€
    • '0' β€” no on-the-fly solving is applied (default)
    • '1' β€” propagate solved equations using an attractor
    • '2' β€” detect winning loops
    • '3' β€” solve subgames using a fatal attractor
    • '4' β€” solve subgames using the solver
  • --threads=NUM β€” run with NUM threads (default=1). ⚠️ with multiple threads the stack size on a Mac is limited, which can lead to bus errors. so like... be careful out there 🫢
  • --timings[=FILE] β€” append timing measurements to FILE. measurements are written to standard error if no FILE is provided.

⭐ Standard options ⭐

the everyday essentials, fr fr:

  • -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 LEVEL; 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 Wieger Wesselink. thank you legend 🫢


πŸ’€ REPORTING BUGS πŸ’€

found a bug? don't suffer in silence bestie, report it at <http://www.mcrl2.org/issuetracker>. the maintainers wanna know, fr fr πŸ™ˆ


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 just so we're clear: there is NO WARRANTY, to the extent permitted by law. none. zero. don't come for them if it goes sideways πŸ’€

🧚 SEE ALSO 🧚

see also the manual at <http://www.mcrl2.org/web/user_manual/tools/release/pbes2bool.html>. iykyk πŸ’–


and that's the whole page, bestie ✨ this one's from the mCRL2 toolset, version 202507..., dated October 2026 β€” and the page itself is PBES2BOOL(1). go solve some PBESes, you absolute main character πŸ‘‘πŸ’…

πŸ“¦ where this page comes from