Coq在Rdefinitions.v和Field_theory.v中都将乘法逆函数1/x
定义为总函数R -> R
。值1/0
未定义,所有计算公理都忽略它。
但是,在构造数学中这是一个问题,因为所有全部函数R -> R
必须是连续的。而且我们不能将正无穷大和零无穷大连接起来。因此,构造性逆是相当一部分函数:
Finv : forall x : R, (0 < x \/ x < 0) -> R
例如,这是C-CoRN库中的定义方式。
现在是否可以将field
策略与这些部分逆函数一起使用?直接Add Field
无效。
答案 0 :(得分:2)
答案是否定的。 Add Field
命令依赖于类型为R -> R
的函数,该函数表示反函数,因此不能以构造方式定义此函数。