---
id: "2935066162"
type: answer
title: "「不允许除以0」在数学中是逻辑自洽的，还是为避免出问题的而做出的强制规定？"
url: http://www.zhihu.com/api/v4/answers/2935066162
created: 2023-03-13T20:49:56.000Z
updated: 2023-10-30T03:39:59.000Z
voteup_count: 0
comment_count: 329
---

# 「不允许除以0」在数学中是逻辑自洽的，还是为避免出问题的而做出的强制规定？

杀鸡不要用牛刀，能用中学数学解释的问题，就不需要用微积分或抽象代数来解释。

首先，「不能除 0」与其说是强制规定，倒不如说是人们的自然选择。

其次，你可以除 0，只不过要付出一个小代价，这个代价就是数学大厦的轰然倒塌。

很多教科书上说「**除以 0 没有意义**」，这种简单粗暴的回答既不准确，又无法帮我们真正理解数学。

让我们换一种提问方式：

**如果允许「除以 0」，你将会进入一个怎样的数学世界**?

![​《除零之门》MidJourney 生成](../images/26124fc3b4318e130cefb7aa67ad7d3297389711ed63b12502b0e43a868f0020.png)

![​《除零之门》MidJourney 生成](../images/26124fc3b4318e130cefb7aa67ad7d3297389711ed63b12502b0e43a868f0020.png)

​《除零之门》MidJourney 生成

让我们从这个不起眼的问题出发，层层递进的提问，一起探索一个有趣的数学世界。

在这个世界里，你不仅能更好的理解这一规则背后的思想，还能帮助你避免在证明时犯低级的错误。

先说结论：

加入「不能除 0」这条限制，并不是因为除以 0 没有意义，而是因为这会让计算的结**果出现不**确定性，让计算的过**程出**现悖论，专业一点说，这破坏了**数学的**一致性。

# **为什么计算结果会出现不确定性？**

先解释什么是计算的确定性

比如，1+1=2，1/2=0.5

这些计算的结果是确定，你不会随便给出其他结果，这就是计算的确定性。

有人说，一元二次方程有两个解，三角函数有无穷多个解，这是确定的吗？

这也是确定的，因为根据这些函数的方程

![y=ax^2+bx+c](../images/017d4d14870d775d706f91570ebb040fc89f46d335f6711b29ab71658f1cca3a.svg)

![y=sin(x)](../images/04cffc3021ec332317fa253accbdf3ad5b5855bae7ce784f972f7c49eff2bb84.svg)

输入一个 x 的值，比如 0，我们就明确知道 y 的计算输出结果，而不是随便一个数值，所以这也是确定的。

但是，1/0=?，这个计算的结果是多少？你能确定有多少解吗？

有人说，很简单啊，结果是**无穷大** ∞ ，因为如果写成函数的形式

![y=\\frac{1}{x}](../images/b0f004c8a8be49483415c76e854a01fcd987fdf9213bf50259b2f72b3a992211.svg)

当分母 x 越趋近于 0，y 就会越趋近于无穷大 ∞ 。

例如下图，当 x 从大到小无限靠近 0 时，y 就会快速增大为无穷∞

![](../images/9261078a8d57ab921a27a32f52881f20f6d605ccd49924b48d4bbe5c88c78d33.png)

![](../images/9261078a8d57ab921a27a32f52881f20f6d605ccd49924b48d4bbe5c88c78d33.png)

​如果 y 的结果是无穷大，那计算的结果还是确定的，**因为无穷大也是确定的解**，很多函数在特定的点上也会出现无穷大。这不是随便给出结果，所以并不是问题所在。

真正的问题在于，这个计算结果是不完整的。

这个计算只考虑从正数一侧靠近 0，没有考虑到还有负数一侧。

如果 x 从负数一侧靠近 0，y 的计算结果就会靠近负无穷-∞。

例如下图给出了双侧的结果。

![](../images/fbbf93f89cc738503eb48ae346ba9ad19b7f349e6534fc4faebd4c2a26c0ede8.png)

![](../images/fbbf93f89cc738503eb48ae346ba9ad19b7f349e6534fc4faebd4c2a26c0ede8.png)

不同的趋近方向计算结果是完全不同。你就说，挣 1 个亿和赔 1 个亿，能一样吗?

那在 0 这个点上，y 的取值究竟是正无穷+∞，还是负无穷-∞？

你能确定吗？是不是不能？

也就说，对于函数

![y=\\frac{1}{x}](../images/b0f004c8a8be49483415c76e854a01fcd987fdf9213bf50259b2f72b3a992211.svg)

当它站在 x=0 这个点上成为 ![\\frac{1}{0}](../images/5e45521d0cc53d8c2d70f2efeaa01e899ff7b050f8c0dd1ad4433c0ca5b4d593.svg) 时，突然进入了一种不确定的状态，y 既不是正无穷，也不是负无穷，或者可以都是。

这就是**不确定的**。

有人说，两个结果好像也没问题啊？不就是正负两个无穷大吗？

问题在于，除了正负无穷大， ![\\frac{1}{0}](../images/5e45521d0cc53d8c2d70f2efeaa01e899ff7b050f8c0dd1ad4433c0ca5b4d593.svg) 还可以是从负无穷到正无穷中间的**任何一个值**。

也就是随便给个数，都可以算是 ![\\frac{1}{0}](../images/5e45521d0cc53d8c2d70f2efeaa01e899ff7b050f8c0dd1ad4433c0ca5b4d593.svg) 的正确结果，不再有对错之分，这是一种更诡异的不确定性。

怎么会这样？很奇怪是吧！具体原因后面再解释。

有人可能会问：

**这有什么问题吗，结果不确定又怎么了，我就想让除法保留「除以 0」不可以吗**？

可以，当然可以了！

[知乎原文](http://www.zhihu.com/api/v4/answers/2935066162)
