这是我对mailing-list post之后的整数指数的幂的定义:
definition
"ipow x n = (if n < 0 then (1 / x) ^ n else x ^ n)"
notation ipow (infixr "^⇩i" 80)
上下文
我正在处理复杂的指数,例如考虑以下定理:
在我证明了这一点之后,我意识到我需要不仅要使用自然数,还要使用整数n,这涉及使用幂从指数中取出n。
答案 0 :(得分:1)
我认为库中不存在类似的内容。但是,您的定义中有错字。我相信你想要类似的东西
definition
"ipow x n = (if n < 0 then (1 / x) ^ nat (-n) else x ^ nat n)"
除此之外,还可以。您可以编写inverse x ^ nat (-n)
,但在实践中应该没什么区别。我建议使用名称int_power
,因为具有自然指数的相应运算称为power
。
就我个人而言,我将避免引入这样的新常量,因为为了实际有效地使用它,您还需要围绕它的大量定理。这意味着相当繁琐的工作。您真的需要在这里谈论整数吗?我发现人们在实践中通常可以绕开它(尤其要注意,所讨论的指数无论如何都是周期性的。)
尽管如此,引入这样的幂运算符可能仍然有用。我要说的是,您应该意识到这种权衡。
旁注:在Isabelle中,一个经常被忽略的函数在讨论诸如cis
这样的指数时非常有用(例如'cosine + i·sine')。 cis x
等同于x
是真实的'exp(ix)'。