BOLT (Example and Testing)

WizToolKit delivers the wtk::bolt API for implementing ZK Backends in the IR. The wtk-bolt command-line tool serves for testing this API in a non-ZK and as an example of invoking the wtk::bolt API. More information may be found in WizToolKit for Backends.

wtk::bolt implements two intepreters, BOLT for relations with heavy use of loops and PLASMASnooze for relations which are largely IR-Simple. PLASMASnooze also implements the Parser’s streaming API for additional performance when parsing IR-Simple (rather than nearly simple). Invocation is wtk-bolt [ bolt | plasmasnooze | stream ] <relation.rel> <instance.ins> <witness.wit>.