我尝试做以下简单的事情:给定拓扑空间,提取其拓扑并将其视为poset。为此,我导入了Topology.thy和Orders.thy并尝试了这些方面的内容
fun undtop :: "'a top ⇒'a partial_order" where
"undtop T = (leq ::"T ⇒ T ⇒ bool" where
"leq x y = (x ⊆ y)")"
其中'a top
类型为'a set set
,partial_order
类型为'a=>'a => bool
(理论Orders.thy定义了类类partial_order
)。我们的想法是,a' top
类型的某些T应该提供拓扑,然后undtop
会选择这样的T并关联部分订单leq
,将其视为地图T => T => bool
。显然这不是它的工作原理,所以我想问一下
1)你如何定义一个函数来选择某个特定类型的每个T并用域T定义一个新函数?
2)如何指定类型为'a top
的T是拓扑,而不仅仅是随机的子集集合,即如何告诉Isabelle它应该遵守语言环境的公理"拓扑"在Topology.thy?
感谢您的支持,作为初学者,我仍然在努力学习语法和Isabelle的运作方式。