Jan Friso Groote: Rewriting with 64-bit digits in mCRL2

Event Details

Rewriting of numbers is often done with the Peano rewrite rules, but this is terribly slow and cumbersome. In mCRL2 the standard built in numbers are based on a binary encoding, using constructors @c0 for zero and @cDub for duplication. This is much faster. But when many calculations are done, the manipulation of these binary numbers is still sluggish. The question is whether we can employ machine arithmetic. This can be done by basing the rewrite system on an arbitrary base b. By taking b=2^64 we use the machine 64-bit numbers as digits. This can lead to substantial speed ups.