这个问题出现在#haskell 的讨论中。
如果它的出现是积极的,那么将深层嵌套的 forall 提升到顶部是否总是正确的?
例如:
((forall a. P(a)) -> S) -> T
(其中 P、S、T 应理解为元变量)
forall a. (P(a) -> S) -> T
(我们通常会写成(P(a) -> S) -> T
我知道你当然可以从一些积极的位置收集foralls,比如在最后的右边->
等等。
这在经典逻辑中是有效的,所以它不是一个荒谬的想法,但总的来说它在直觉逻辑中是无效的。然而,我对量词的非正式博弈论直觉,即每个类型变量都是“由调用者选择”或“由被调用者选择”表明实际上只有两种选择,您可以将所有“由调用者选择”选项提升到顶端。除非游戏中动作的交错很重要?