Важна также и ПРЕЗУМПЦИЯ НАЛИЧИЯ УГРОЗ.

У Дейкстры и Хоара доказывается корректность программы исходя из некоторых необходимых условий. Если условия не удовлетворяются, программа не корректна. Дейкстра говорит в идеале об "интеллектуально-управляемых программах".
Я разобрал программу по зернышкам и отдаю на экспертизу - мне отвечают, а докажите ещеотсутствие взаимодействия каждого оператора одной процедуры с каждым оператором другой процедуры. Это - правильный подход.

Зато, когда речь идет о хорошем коммерческом ПО, предлагается всегда ПРЕЗУМПЦИЯ ОТСУТСТВИЯ УГРОЗ.
> -- PSV100 писал(а):
> К примеру,  ограничений больше, чем в Оберонах (прежде всего -- статическое выделение ресурсов). Но в итоге любая программа сразу же по построению, как минимум, с гарантией отсутствия deadlock-ов и livelock-ов
Я знаю, я в курсе АСУТП, но как разработчик я никаких гарантий не дам, до тех пор, пока мне не докажут каждую строчку кода.

Верификация посредством тестирования доказательством корректности не является.> -- Дейкстра писал(а):
> тестирование программы может весьма эффективно продемонстрировать наличие ошибок, но безнадежно неадекватно для демонстрации их отсутствия. Единственный эффективный способ значительно поднять уровень доверия к программам - предоставить убедительное доказательство их корректности.