← Back to context

Comment by 0x457

15 days ago

It can prove absence of specific bugs though.

no it can't. what if this bug is still there but the timing window is now one CPU instruction?

  • > what if this bug is still there but the timing window is now one CPU instruction?

    I think a model checker or something similar that can exhaustively cover a search space would suffice, though at that point I think the boundary between "test" and "formal verification" becomes somewhat fuzzy.

    • > exhaustively cover a search space

      This is the gotcha: in stateful environments you'll have state-space explosion so big you'll have to come up with some compromising measure of "equivalent". You're right that that would constitute a proof by exhaustion of correctness. Unfortunately in practice it's entirely impractical.

      1 reply →

  • Then it’s a different bug: they fixed a bug with a wider timing window and introduced a new bug with a narrower timing window.