Я знаю, что повторение применяется тактически несколько раз, пока не сработает.
Повторная тактика принимает другую тактику и продолжает применять эту тактику до тех пор, пока не потерпит неудачу.
и тактика попытки ничего не делает, когда "терпит неудачу":
Если T - это тактика, то попытка T - это такая же тактика, как и T, за исключением того, что если T не удается, попытка T вообще ничего не делает (вместо того, чтобы потерпеть неудачу).
Означает ли это, что если бы я сделал что-то вроде:
repeat (try reflexivity).
, если рефлексивность не сработает, то попытка ничего не делает (но не сбоит), поэтому повторение просто продолжает применять try reflexivity
.Это правильно?Или что происходит?
Причина, по которой я спрашиваю, заключается в том, что я увидел эту теорему:
Theorem In10 : In 10 [1;2;3;4;5;6;7;8;9;10].
Proof.
repeat (try (left; reflexivity); right).
Qed.
, когда я задал связанный вопрос: Правильно ли ассоциируются тактики Coq илилевый ассоциативный?
источник: https://softwarefoundations.cis.upenn.edu/lf-current/Imp.html