-
Notifications
You must be signed in to change notification settings - Fork 9
Description
Summary
The purpose of this issue is to develop an enhanced testing framework based around fault-injection. This will work particularly well for zkasm modules, but also be applied to assignments as well.
An application of this idea is discussed in the following paper:
https://arxiv.org/abs/2509.10819
Approach
Injecting faults into the current pipeline is tricky because it must be done twice: once during trace propagation, then again during trace expansion.
One way to get around this is to allow "partially expanded" traces. These are fully expanded traces with respect to assembly, but not expanded with respect to general assignments. Its not clear how this can be done easily though.
With partially expanded traces, we can then develop a custom "executor" which injects faults and produces a faulty trace. This could then be written to disk or run in a fuzzing style campaign.