Isabelle:未定义函数的新公理
Isabelle: new axiom for undefined functions
我正在研究一种理论,我大量使用 Funcset 理论中定义的外延函数。我需要使用函数值函数,其中函数和值都是外延的。很烦人的是,我的一些引理失败了,因为 undefined
函数没有将所有内容映射到 undefined
。所以目标
undefined x = undefined
无法证明。我可以使用限制来解决这个问题,但如果没有这些限制,它会更加优雅。添加新公理是否安全:
axiomatization where
undefined_at [simp]: "undefined x = undefined"
?我很担心这个因为
1) 我不确定我是否应该 fiddle 这样的逻辑。
2) 添加这个公理后,对于像“undefined \in A”这样的目标,nitpick 会产生错误:Limit reached: too many nested axioms (256).
3) 看似无辜的公理
axiomatization where
at_undefined [simp]: "f undefined = undefined"
产生奇怪的目标,例如 "P ==> undefined" .
常量 undefined
并没有真正模拟 undefined
的数学概念。相反,它是否表示未指定,正如我在 Isabelle 邮件列表的 thread 中所解释的那样。
Back in 2008、undefined
实际上是用公理undefined x = undefined
指定的,即函数undefined
将所有内容映射到undefined
。很快,人们意识到这不是undefined
应该表示的,因为它把函数undefined
限制为一个常数函数,根本不是一个任意函数。添加这个公理不会使 HOL 不可靠,但它严重限制了已证明内容的普遍性,因为 undefined
被 Isabelle 的包大量使用。
另一个公理 at_undefined
然而会导致不一致。如前所述,这意味着每个函数 f
都应该是未指定值 undefined
上的恒等式。考虑布尔值的类型 bool
。 undefined
必须是 True
或 False
。因此,如果您对 f
取反,则公理要求 ~ True = True
或 ~ False = False
。显然,这与op ~
的规范不一致,所以公理也不一致
我正在研究一种理论,我大量使用 Funcset 理论中定义的外延函数。我需要使用函数值函数,其中函数和值都是外延的。很烦人的是,我的一些引理失败了,因为 undefined
函数没有将所有内容映射到 undefined
。所以目标
undefined x = undefined
无法证明。我可以使用限制来解决这个问题,但如果没有这些限制,它会更加优雅。添加新公理是否安全:
axiomatization where
undefined_at [simp]: "undefined x = undefined"
?我很担心这个因为
1) 我不确定我是否应该 fiddle 这样的逻辑。
2) 添加这个公理后,对于像“undefined \in A”这样的目标,nitpick 会产生错误:Limit reached: too many nested axioms (256).
3) 看似无辜的公理
axiomatization where
at_undefined [simp]: "f undefined = undefined"
产生奇怪的目标,例如 "P ==> undefined" .
常量 undefined
并没有真正模拟 undefined
的数学概念。相反,它是否表示未指定,正如我在 Isabelle 邮件列表的 thread 中所解释的那样。
Back in 2008、undefined
实际上是用公理undefined x = undefined
指定的,即函数undefined
将所有内容映射到undefined
。很快,人们意识到这不是undefined
应该表示的,因为它把函数undefined
限制为一个常数函数,根本不是一个任意函数。添加这个公理不会使 HOL 不可靠,但它严重限制了已证明内容的普遍性,因为 undefined
被 Isabelle 的包大量使用。
另一个公理 at_undefined
然而会导致不一致。如前所述,这意味着每个函数 f
都应该是未指定值 undefined
上的恒等式。考虑布尔值的类型 bool
。 undefined
必须是 True
或 False
。因此,如果您对 f
取反,则公理要求 ~ True = True
或 ~ False = False
。显然,这与op ~
的规范不一致,所以公理也不一致