LTSCOMPARE(1)
π ltscompare(1) β User Commands, bestie
okay so like, welcome to ltscompare, the tool that answers the one question every LTS girlie needs answered: are these two things literally the same, or nah? This is the LTSCOMPARE(1) situation and honestly it's giving main character energy. π¦
β¨ NAME β¨
ltscompare β compare two LTSs
πΈ SYNOPSIS πΈ
ltscompare [OPTION]... [INFILE1] INFILE2
π DESCRIPTION π
So here's the vibe check: ltscompare determines whether or not the labelled transition systems (LTSs) in INFILE1 and INFILE2 are related by some equivalence or preorder. That's it, that's the whole job, and it ate. π
- If INFILE1 is not supplied, stdin is used.
- If INFILE1 and/or INFILE2 is
-, stdin is used. - Reading two LTSs via stdin is only supported for the
'aut'format, and those LTSs must be separated by an EOT character (4). no cap, that's a hard requirement bestie π«Ά
The input formats are determined by the contents of INFILE1 and INFILE2. If you don't trust the vibes, options --in1 and --in2 can be used to force the input format of INFILE1 and INFILE2, respectively. The supported formats are:
'aut'for the Aldebaran format (CADP)'dot'for the GraphViz format (no longer supported as input format) π'fsm'for the Finite State Machine format'lts'for the mCRL2 LTS format
π₯ OPTIONS π₯
OPTION can be any of the following:
-c,--counter-exampleβ generate a counter example if the input lts's are not equivalent. iconic behavior tbh π--counter-example-file=NAMEβ the file to which the counterexample should be written-eNAME),--equivalence=NAME)β use equivalence NAME (not allowed in combination with-p/--preorder). here's the whole menu, bestie, and yes you're gonna read all of it π'none'β identity equivalence (default)'bisim'β strong bisimilarity using the O(m log n) algorithm [Jansen/Groote/Keiren/Wijs 2019]'bisim-gv'β strong bisimilarity using the O(mn) algorithm [Groote/Vaandrager 1990]'bisim-gjkw'β strong bisimilarity using the O(m log m) algorithm [Groote/Jansen/Keiren/Wijs 2017]'bisim-gj'β strong bisimilarity using the O(m log n) experimental algorithm [Groote/Jansen 2024]'branching-bisim'β branching bisimilarity using the O(m log n) algorithm [Jansen/Groote/Keiren/Wijs 2019]'branching-bisim-gv'β branching bisimilarity using the O(mn) algorithm [Groote/Vaandrager 1990]'branching-bisim-gjkw'β branching bisimilarity using the O(m log m) algorithm [Groote/Jansen/Keiren/Wijs 2017]'branching-bisim-gj'β branching bisimilarity using the O(m log n) experimental algorithm [Groote/Jansen 2024]'dpbranching-bisim'β divergence-preserving branching bisimilarity using the O(m log n) algorithm [Jansen/Groote/Keiren/Wijs 2019]'dpbranching-bisim-gv'β divergence-preserving branching bisimilarity using the O(mn) algorithm [Groote/Vaandrager 1990]'dpbranching-bisim-gjkw'β divergence-preserving branching bisimilarity using the O(m log m) algorithm [Groote/Jansen/Keiren/Wijs 2017]'dpbranching-bisim-gj'β divergence-preserving branching bisimilarity using the O(m log n) experimental algorithm [Groote/Jansen 2024]'weak-bisim'β weak bisimilarity'dpweak-bisim'β divergence-preserving weak bisimilarity'sim'β strong simulation equivalence'ready-sim'β strong ready simulation equivalence'trace'β strong trace equivalence'weak-trace'β weak trace equivalence'coupled-sim'β coupled simulation equivalence
-iFORMAT,--in1=FORMATβ use FORMAT as the format for INFILE1 (or stdin)-jFORMAT,--in2=FORMATβ use FORMAT as the format for INFILE2-pNAME,--preorder=NAMEβ use preorder NAME (not allowed in combination with-e/--equivalence). the preorder lineup, get into it β¨'unknown'β default void preorder (default)'sim'β strong simulation preorder'ready-sim'β strong ready simulation preorder'trace'β strong trace preorder'weak-trace'β weak trace preorder'trace-ac'β trace preorder based on an anti chain algorithm'weak-trace-ac'β weak trace preorder based on an anti chain algorithm'failures'β failures refinement'weak-failures'β weak failures refinement'failures-divergence'β failures divergence refinement (automatically weak)'impossible-futures'β impossible futures
-sNAME,--strategy=NAMEβ explore the state space using strategy NAME (only for antichain based algorithms; includes all failures refinements):'b','breadth'β breadth-first search (default)'d','depth'β depth-first search
--tau=ACTNAMESβ consider actions with a name in the comma separated list ACTNAMES to be internal (tau) actions in addition to those defined as such by the input--timings[=FILE]β append timing measurements to FILE. Measurements are written to standard error if no FILE is provided
β Standard options β
-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; eitherwarn,verbose,debugortrace-h,--helpβ display help information--versionβ display version information--help-allβ display help information, including hidden and experimental options π
π AUTHOR π
Written by Muck van Weerdenburg. we stan π«Ά
π¦ REPORTING BUGS π¦
Report bugs at <http://www.mcrl2.org/issuetracker>. please do it, the maintainers wanna know fr fr π
π COPYRIGHT π
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>. There is NO WARRANTY, to the extent permitted by law. (that's the dramatic part, bestie β no warranty at all π)
π SEE ALSO π
See also the manual at <http://www.mcrl2.org/web/user_manual/tools/release/ltscompare.html>. iykyk π₯
and that's the whole page, no skips, no cap. go compare some LTSs, you're gonna slay. π
ltscompare β mCRL2 toolset 20250... β October 2026 β that's the version and date, mwah π
π¦ where this page comes from
- nixos 26.05: mcrl2 202507
- nixpkgs unstable: mcrl2 202507
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms