Я пытался доказать следующую импликацию:Isabelle тривиальный вопрос: «Max (S :: нац набор) = 0» означает все элементы S равны нулю
lemma Max_lemma:
fixes s::nat and S :: "nat set"
shows " ((Max S) = (0::nat)) ⟹ (∀ s ∈ S . (s = 0))"
sorry
(*
Note: I added additional parentheses just to be sure.*)
я думал, что это будет довольно тривиально, поэтому я попытался получить доказательство с помощью кувалды. К сожалению, это не удалось. Либо мое определение неверно, либо есть некоторые трудности с автоматическими доказательствами с участием крупных операторов, таких как Макс.
Я попытался лучше понять Max и max, посмотрев их определения, а также любую документацию, которую я мог найти. Поскольку я ранее сталкивался с проблемой с Isabelle, которая, в конце концов, потребовала большого опыта, несмотря на ее тривиальное появление («Why won't Isabelle simplify the body of my "if _ then _ else" construct?»), я решил опубликовать этот вопрос здесь.