Да, добавление утверждений assert может помочь Дафни доказать леммы, и именно так программист ведет поисковый поиск Дафни. В частности, Дафни мог бы доказать данное промежуточное утверждение, и он мог бы использовать это утверждение, чтобы доказать желаемую лемму, но он не знал бы, чтобы искать это утверждение без того, чтобы его предоставил программист.
Опыт работы с Дафни помогает понять, какие утверждения полезны для Дафни. (Я предлагаю прочитать о триггерах , которые осветят, как работает поиск доказательства Dafny. Триггеры - это шаблоны, которые Dafny использует в качестве подсказок, чтобы знать, когда создавать экземпляр количественной переменной; искусство использования утверждений для руководства Dafny часто найти правильные триггеры.)