机器学习似乎也无法学习简单的算术关系。比如总结大量的数字规律,以及大数相乘。人们可以想象将机器学习和符号数学工具结合起来,一定能得到很好的效果。虽然我们已经在定理的证明应用方面看到了一些进步,但是距离梦想中的功能还比较遥远。我也正在写一篇相关的论文。同样的,P=NP将使这些任务变得更加容易,或者至少更加易于处理。机器学习在面对和训练数据分布不同的样本的时候,表现通常不好。这可能是由于低概率的边缘情况,例如在训练数据中没有很好的包括所有人种的时候,对于一些国家或者种族的人的识别效果比较差。深度神经网络算法可能有数百万个参数,因此,它们可能无法达成良好的泛化分布。如果P=NP,那就可以生成最小尺寸的模型,并且能够做出最好的泛化,但是如果我们无法进行实验,我们永远不知道这是不是P=NP问题。跟机器学习一样,我们目前还没有任何的工作能够接近真正意义上的通用人工智能。这个通用人工智能是指对某个主题的真正理解,或者真正具有意识或者自我意识的人工系统。定义这些术语可能比较棘手,也具有一些争议。就我个人而言,我目前还没见过一个正式的通用人工智能的合理定义,我只是抓住了对它概念的知觉的理解并且总结。我怀疑我们永远不会实现真正意义上的通用人工智能,即使P=NP。虽然我们在解决NP问题方面取得了很大的进展,但是很多密码学的领域仍旧毫无进展。包括单向函数、安全散列和公钥密码等多种形式的加密。一种有效的NP算法,其实是能够破解所有密码系统的,除了那些信息理论上安全的密码系统(比如一次性密码和一些量子物理学的安全系统)。我们已经看到过很多成功的网络安全攻击,但是它们通常源于服务器糟糕的设置、很差的随机数生成器,或者人为的一些错误,几乎都不是由于密码学本身的问题所导致的。现在的大多数CPU芯片都内置AEC,因此一旦我们使用公钥密码技术来设置私钥,我们就可以像发送纯文本一样轻松的发送加密数据了。加密为区块链和加密货币提供了底层的技术支持,这意味着人们对加密技术的信任十分高,足以将现金和比特币进行交换。Michael Kearns和Lesilie Valiant在1994年的研究表明,学习最小的电路,甚至学习最小的有界层神经网络,都可以用来分解质因数和破解公钥密码系统。但是到目前为止,机器学习尚未成功用于破解密码协议。可能有人会问,我们既然已经在许多其他NP问题上取得了很多的进展,为什么单单是密码学上失灵了呢?在密码学中,我们可以选择问题,专门设计为这个场景单独设计的方法来加密,从而达到不错的效果。而其他的NP问题通常使用通用的、通过程序自己形成的方法来执行。这些自动匹配的方法可能不是量体裁衣的,就并不是最合适和最困难的方法。量子计算是目前我们知道的唯一一个能够威胁到互联网公钥协议安全的存在。Shor的算法可以用于对大数进行质因数分解和其他相关的数论计算。这种担忧可以通过几种方法来加以解决。虽然目前来看量子计算取得了一些令人惊叹的进步,但是它距离能够破解当今的密码系统相去甚远,毕竟还不能够处理足够多的纠缠位。有人估计,可能还得需要几十年甚至几个世纪才能真正使用Shor算法+量子计算机对目前的公钥产生威胁。另外,研究人员在开发对量子攻击具有抵抗力的公钥密码系统方面取得了良好的进展。我们将在本文后面的部分详细介绍量子计算。