我很困惑。 如果Andromeda实际上没有存储要由另一个工具验证的证明,那么如果它根本没有验证程序,它的验证程序怎么能小于Coq的验证程序呢?
也就是说,我们使用配对操作导出了一个判断,如a、B⊢a×B等。
从语义上讲,每个判断都是某个范畴结构中的一种“宾语或态射”,该判断的每个派生都代表一个特定的宾语或形态射。
现在,这些派生树通常太笨拙,无法直接使用,所以我们用变量和术语对它们进行注释,这样就可以从它分配给根的术语中重建整个树,如x:a,y:B⟨x,y⟩:a×B。
等等,那么你认为A,B×B和x:A,y:B×x,y×A×B是不同的判断? 我一直认为第二个词只是第一个词的注释。
我不知道“不言而喻”是什么意思。 但听起来好像你是在说,分析判断只能从一种方式推导出来? (也就是说,元理论的hprops?)
或者有一个算法来决定它是否有派生?
请给我下定义,不要用“不言而喻”这样的手语。
只是ETT不是这么做的
我不会因为你把注意力局限在类型理论的内在语义上而责备你,但请注意,这个故事还有更多内容。
但ETT不是这样做的
在我看来,这意味着我们不应该对ETT和ITT中出现的东西使用相同的单词“术语”,因为它们实际上是根本不同的东西。
我将使用短语“派生词”来表示派生词。 正如我在其他地方所说的那样,在我看来,如果这实际上是一种“表示”,而不是一系列提示来通知对派生词的搜索,那么从派生词推导派生词的过程必须是可判定的。
“意义术语”是指“意在”唯一标识语义对象的术语吗?
也就是说,不同的派生词被标记为相同的“意义项”,目的是表示一个类别中的相同同态?
然而,对你来说,“证明术语”是……一个没有意义的术语?
然而,对你来说,“证明术语”是……一个没有意义的术语?
不可以。一个证明词可能是也可能不是一个有意义的词。 “证明”/“含义”是术语角色之间的区别。 它们不一定是不相交的集合。
要明确解释一个有意义的术语,通常还需要考虑上下文。
“意义术语”是指“意在”唯一标识语义对象的术语吗?
不,因为判断意义相等的术语必须表示相同的对象,即使术语不同。
然而,对你来说,“证明术语”是……一个没有意义的术语?
不可以。一个证明词可能是也可能不是一个有意义的词。 “证明”/“含义”是术语角色之间的区别。 它们不一定是不相交的集合。
当然,我不是有意谈论个别术语。
我的意思是“如果一个‘术语概念’不包含‘含义术语’,那么它是否被认为包含‘证明术语’?”
“意义术语”是指“意在”唯一标识语义对象的术语吗?
不,因为判断意义相等的术语必须表示相同的对象,即使术语不同。
这与我说的并不矛盾…
类型理论推导是一种仅生成规范形式的方法,或者至少可以排除尽可能多的非规范形式。
……保持尽可能小的距离很好,能够使用与派生词和含义词相同的词似乎是一个很好的指标。
我没有提到的另一个原因是,如果你不需要经常检查解释函数的结果是否独立于求导,它可以使证明稳健性定理变得更容易。
计算表示为标准形式的约简。
这似乎表明你对ITT有强烈的偏好,其中的含义词也是派生词。
不管怎样,一致性定理甚至解决了具有自然数对象的自由范畴结构吗?
如果您不需要经常检查解释函数的结果是否独立于推导,那么它可以使稳健性定理的证明更容易。
我认为CwF机制和初等定理可以解决这个问题。
例如,我们可以使用无割序列演算来表示一个自由的范畴结构,然后通过首先消除纯句法上的割,然后解释由此产生的无割派生,来解释使用割到范畴中的派生。
这似乎表明你对ITT有强烈的偏好…
对。
嗯,是的,我说的是 证明 初等定理。
考虑到初等定理实际上还没有被证明,我不认为有理由掩盖一切。
此外,这不仅仅是一个一次性的定理,因为世界上不存在唯一的类型理论; 有很多有趣且重要的类型理论,我们关心所有这些理论的语义。 因此,设计类型理论使这些定理易于证明和根据需要进行推广是很好的。
我还没有花时间去理解OTT,但丹的这一评论表明,我可以将其视为“合理的第一步”,也许是走向立体类型理论?
我想我没有意识到这一点,因为我不知道你所说的“内在语义”是什么意思。 在我看来,语义学对一个理论来说总是外在的:一个人在某种元理论中构建了一个理论模型。
我很困惑。 如果Andromeda实际上没有存储要由另一个工具验证的证明,那么如果它根本没有验证程序,它的验证程序怎么能小于Coq的验证程序呢?
一个证明助手……应该包括……一些表示这些证明的数据结构 合理地忠实地
1) 我看不出有任何理由存储“为以后保存”的证明表示。 但是,对于一个要制作证据的证明助理来说,它必须在制作过程中以某种方式表示该证据。
2) “足够接近”是一种判断,不同的人可能会做出不同的判断。 我的意思是,类型选择的可判定性是一个合理的,实际上是相当小的条件,它可以表示“足够接近”。
也许一个类比会有所帮助:考虑英语口语和书面语之间的关系…
或者,更坦率地说:如果您对“证明表示”的半可判定类型检查感到满意,那么这里有一个证明表示。 每个证明都用单词“foo”表示…
…然后用其他语言生成所有可能的参数,并逐个检查它们是否是所需语句的证明。
当一个句子的发音影响它的意思时,书面形式往往会被误解。
我要求检查,这在实践中是可行的。 半可判定性和可判定性都不够。
检查器不需要在任何具体表示中生成参数,就可以半决定是否存在派生。 只需要陈述条款和判断。
我打算推迟回答(3),直到我得到这个问题的答案。
这与类比的意义无关。
一个不可决定的程序是可行的,这意味着什么? 你所说的“实践中”是指算法在“大多数现实世界”情况下在合理的时间内终止吗?
这当然是一件有用的事情,但我认为这不足以让算法中的“证明项”进行计数, 数学上 和 哲学地 ,作为输出证明的“表示”。
在缺乏可判定性的情况下,“证明项”充其量只是一个相当明确的提示,以帮助算法 搜索 为了证明,即使提示足够明确,在大多数实际情况下搜索也会很快结束。
我甚至不理解你所做的区分,因为术语和派生词都是我使用这个词时的一种特殊的“论点”; 但无论如何,这似乎也与重点无关。
这当然是一件有用的事情,但我认为这不足以让算法中的“证明项”进行计数, 数学上 和 哲学地 ,作为输出证明的“表示”。
第页
第页
Coq/Agda称为“证明证书”或“证明术语”的东西与(foo,C)具有完全相同的状态
它不会将集合缩减为单例,因为它没有指定如何导出等式。
在证明助手领域,游戏是如何有效地沟通和验证形式推导的存在性,因此唯一有趣的问题是效率问题。
为什么这是游戏? 我是一名数学家。 我不只是关心某件事是否有证据; 我在乎证据是什么。当有人声称已经证明了某件事时,我希望他们能够真正拿出证据,而不仅仅是说“你可以在我告诉你的时间内自己解决这个问题。”
我关心使用哪种推导,因为如果你声称已经推导出了它,我希望你实际上有它的推导,而不仅仅是告诉我我可以推导出它的推导。
我想我可能正在慢慢接近理解。 以下是对“LCF风格”校样助理的正确描述吗…
如果这就是“详细的证据隐含在证据检查器的执行轨迹中”的含义,那么在我看来,它实际上 做 满足我的要求“一些数据结构,合理地忠实地表示证据”。
因为它不只是用一个不明确的编码来表示归纳判断家族吗? 就像∀X的任何元素一样,X→(X→X)→X通过将其应用于ℕ,0和succ,给了我一个自然数,在这里,你定义了一个具有足够抽象类型的函数,它可以应用于实际的归纳判断族,以产生一个实际的证明。
Axiom NAT:类型。 公理归零:NAT。 Axiom SUCC:NAT->NAT。 定义三:NAT:=SUCC(SUCC(SUCC ZERO))。
定义三:对于所有X,X->(X->X)->X:= fun NAT ZERO SUCC=>SUCC(SUCC(SUCC ZERO))。
我认为: Axiom NAT:类型。 公理归零:NAT。 公理SUCC:NAT->NAT。 定义三:NAT:=SUCC(SUCC(SUCC ZERO))。
使用非指示性编码: 定义三:对于所有X,X->(X->X)->X:= fun NAT ZERO SUCC=>SUCC(SUCC(SUCC ZERO))。
当然,这意味着规则的应用程序在实现语言中可能类型良好,但仍然失败,但从道德上讲,这是因为它在真正的依赖类型版本中类型不正确。
当然,这意味着规则的应用程序在实现语言中可能类型良好,但仍然失败,但从道德上讲,这是因为它在真正的依赖类型版本中类型不正确。
modusPonens:对于所有f a:法官, 选项{fa:Jud|exists A B:Fmla, 证明f(Impl A B)/\证明A A/\ 证明fa B}
modusPonens:所有人(f a:法官)(a B:弗姆拉), 证明f(Impl A B)->证明A-> {fa:判断|证明fa B}
它是打错的 在真正的依赖类型版本中
你能举一个例子吗 完全依赖类型化规则
但什么时候 检查 试图通过应用构造函数生成派生的用户术语(我认为这就是你所说的战术?)…
假设我对稳健性/初等定理有一个构造性证明,即通过导子树上的结构归纳定义的函数; 也许是某种形式的自噬,或者只是普通初等定理相对于上下文范畴的形式化证明。 您的校对助手是否吐出(或者可以将其修改为吐出)一些东西,我可以将其插入此函数以生成对校对的实际解释?
因此,我必须添加一个问题: 3) 在什么条件下,证明助理应出示证明陈述?
我的回答是: 3) 只有当用户明确要求它将输入的证明表示转换为以不同格式输出时。 (例如,为了与其他校对助手兼容。)
这实际上是我想做的事…
我真希望其他类型的理论家也出现了,为可判定性辩护。 我真的很想看到关于这个问题的真正的双边辩论。
哦,你是想问为什么人们不喜欢有反射规则的等式类型吗?
HTS在某种程度上允许HoTT。 但它至少似乎将语义与模型范畴表示联系得更紧密了,在模型范畴表示中,存在一个“点集级别的相等”来解释严格的相等。
……在我看来,ITT更有可能做到这一点,因为它的判断平等性比HTS的严格平等性更受控制。
这个 新论文 在一个强有力的…