I would be very comfortable with - re-run 100 times with different seeds. If the outcome is the same every time, you're reliably good to go.
How you define your proof is up to you. It might be a simple test, or an exhaustive suite of tests, or a formal proof. It doesn't matter. If the output of the code is correct by your definition, then it doesn't matter what the underlying code actually is.