Coq中连续的拓扑定义

Coq中连续的拓扑定义,coq,topology,Coq,Topology,所以我对coq,函数式编程非常陌生,我试图用coq来表达连续性的拓扑定义。我在用这个 在coq中定义拓扑。对于一个特定的函数,我表达连续性的最佳尝试是 Definition Continuous (X:Type)(TX:Topology X)(Y:Type)(TY:Topology Y)(f:X->Y):= forall V, exists U, all y:V, some x:U, f x = y. 我发现了错误 术语“fx”的类型为“Y”,而预期的类型为“Y”

所以我对coq,函数式编程非常陌生,我试图用coq来表达连续性的拓扑定义。我在用这个 在coq中定义拓扑。对于一个特定的函数,我表达连续性的最佳尝试是

    Definition Continuous (X:Type)(TX:Topology X)(Y:Type)(TY:Topology Y)(f:X->Y):=
        forall V, exists U, all y:V, some x:U, f x = y.
我发现了错误

术语“fx”的类型为“Y”,而预期的类型为“Y” “道具”


不知道该怎么做,非常感谢您的帮助。

问题是Coq的解析器对
y
的解释有误。我可以通过稍微更改
所有
部分
的符号来解决此问题:

Notation "'all' x 'in' U , P" := (forall x, U x -> P) (at level 200).
Notation "'some' x 'in' U , P" := (exists x, U x /\ P) (at level 200).

Definition continuous (X:Type)(TX:topology X)(Y:Type)(TY:topology Y)(f:X->Y):=
  forall V, exists U, all y in V, some x in U, f x = y.

请注意符号级别的不同,以及它如何在
关键字中使用
而不是
。我不知道是否有办法让
发挥作用;如果我尝试的话,Coq 8.5会不断抱怨。

太棒了!非常感谢。