This is because implementations and specifications provide checks on each other: writing a specification requires precisely stating the behavior of an implementation, and implementation checks that a specification is possible, practical, and consistent.
Это связано с тем, что реализация и спецификация обеспечивают проверку друг друга: для написания спецификации требуется точно указать поведение реализации, а реализация проверяет, что спецификация является возможной, целесообразна и последовательна.