"The problem is not that we don’t know how to write correct software. The problem is that correct software is too expensive." That's something I've been saying for a while. It's all about the economics of the situation, rather than the impossibility if it. Naturally, there are also improvements here and there that decrease bugs without increasing efforts, and those are worth looking for.
But in a practical sense, the problem is that we don't know how to write correct software.
I've released a couple of things that were tested to exhaustion, so far as anyone knows. One advantage of the event-driven approach is that you can do that.