MURPHI2MURPHI(1)
๐ MURPHI2MURPHI ๐
okay bestie, welcome to murphi2murphi, section 1 of the General Commands Manual โ she's a preprocessor for Murphi models and she's lowkey iconic โจ
๐ธ NAME ๐ธ
murphi2murphi โ preprocessor for Murphi models ๐ฆ
โจ SYNOPSIS โจ
murphi2murphi options [--output FILE] [FILE]
๐ DESCRIPTION ๐
Murphi2Murphi is a lil utility that ships bundled with the Rumur model checker ๐ซถ. She's your girl for all kinds of source-to-source transformations of Murphi models, no cap.
She's got options for "desugaring" Rumur-specific constructs into equivalent constructs that are more widely supported by Murphi-land, and she's also super useful for cutting down the number of different constructs hanging out in a Murphi model โ which makes life so much easier for downstream tools that have to consume the model ๐ญ
๐ important vibe check: all transformations are off by default. Like, Murphi2Murphi will literally just reproduce the source model unmodified. Nothing happens unless you ask, periodt.
Transformations get selectively enabled with the options below. And here's the cute part โ every transformation option has an inverse no-prefixed option (so like, --no-explicit-semicolons is the inverse of --explicit-semicolons) for turning that transformation back off. Whichever one shows up last wins: the enabling option or the disabling option, whichever occurred most recently takes precedence ๐
If you wanna know more about Rumur or Murphi, go peek at rumur(1) ๐
๐ OPTIONS ๐
--decompose-complex-comparisonsโ Rumur lets you compare values of complex type (records and arrays) against each other using the=and!=operators. But other Murphi tools? They typically only support comparing values of simple type (booleans, ranges, enums, scalarsets) ๐. This option breaks comparisons of complex-typed values down into element-wise comparisons of their members, so other tools can keep up. Slay.--explicit-semicolonsโ Rumur allows semi-colons to be omitted in some places inside a Murphi model. Like, for example, the semi-colon following a rule definition is optional, no biggie ๐ . This option adds semi-colons back wherever they were omitted, to help out other Murphi tools that might actually require them.--output FILEor-o FILEโ sets the path to write the resulting model to. Without this option, the model goes tostdout๐จ๏ธ.--remove-livenessโ removes any liveness properties from the model. These are not supported by other Murphi tools, so out they go ๐ฎ.--switch-to-ifโ transformsswitchstatements intoif-then-elsestatements. Super handy for downstream tools that then only need to handleif-then-elseand don't also have to deal withswitchstatements ๐ง.--to-asciiโ turns extended unicode operators into their ASCII equivalents. This makes models that use those extended characters compatible with other Murphi tools โญ.--versionโ display version information and exit ๐.
๐ฆ SEE ALSO ๐ฆ
๐ AUTHOR ๐
All comments, questions and complaints should be directed to Matthew Fernandez <matthew.fernandez@gmail.com> ๐ฌ
๐ LICENSE ๐
This is free and unencumbered software released into the public domain ๐
Anyone is free to copy, modify, publish, use, compile, sell, or distribute this software, either in source code form or as a compiled binary, for any purpose, commercial or non-commercial, and by any means. fr fr.
In jurisdictions that recognize copyright laws, the author or authors of this software dedicate any and all copyright interest in the software to the public domain. We make this dedication for the benefit of the public at large and to the detriment of our heirs and successors. We intend this dedication to be an overt act of relinquishment in perpetuity of all present and future rights to this software under copyright law.
๐ THE SOFTWARE IS PROVIDED โAS ISโ, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
For more information, please refer to <http://unlicense.org> ๐
and that's the whole page bestie ๐ซถ this was MURPHI2MURPHI(1) from the General Commands Manual โ thanks for reading, you ate ๐ โจ
๐ฆ where this page comes from
- debian trixie: rumur 2025.02.02-1 ยท Unlicense
- ubuntu noble: rumur 2023.11.27-1 ยท Unlicense
- ubuntu resolute: rumur 2025.02.02-1 ยท Unlicense
- ubuntu stonking: rumur 2025.02.02-1 ยท Unlicense
- ๐ girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms