我努力证明我的inductive_set
满足必要的单调性要求。有人可以告诉我这里做错了吗?
theory Scratch imports Main begin
consts foo :: "'a set ⇒ 'a set"
lemma foo_mono [mono]:
"x ⊆ y ⟶ foo x ⊆ foo y"
sorry
inductive_set blah :: "'a set"
where
"x ∈ foo blah ⟹ x ∈ blah"
monos foo_mono
end
答案 0 :(得分:2)
如果你说出像这样的单调性引理,那就有用了:
lemma foo_mono [mono_set]:
"A ⊆ B ⟹ x ∈ foo A ⟶ x ∈ foo B"
另请注意,如果您希望mono_set
自动使用引理,则应使用mono
属性而不是inductive_set
。也就是说,使用mono_set
会使monos
命令上的inductive_set
子句变得不必要。