求证:是否存在n个小于s的正实数,其非平凡有理线性组合均不为整数
嘿,这个问题挺有意思的!答案是肯定的——不管n是多大的正整数,s是多大的正实数,我们总能找到n个小于s的正实数x₁到xₙ,满足它们任意非平凡有理系数线性组合都不是整数。下面给你两种直观的构造思路和对应的证明:
我们可以借助超越数的性质来实现目标。超越数是指不满足任何非零有理系数多项式方程的实数(比如e、π,或者构造出来的Liouville数),它们的核心特点是:非零有理系数多项式在超越数处的取值一定不是代数数——而整数都是代数数,自然不可能等于整数。
具体构造步骤:
- 找一个正的超越数t,让它小于
min(s, 1)(比如把经典的Liouville数缩放到足够小的范围)。 - 令x₁=t,x₂=t²,x₃=t³……直到xₙ=tⁿ。因为t<1,所以tⁿ≤t<s,每个x_i都严格小于s,满足条件。
证明过程:
假设存在不全为0的有理数a₁,a₂,…,aₙ,使得a₁x₁ + a₂x₂ + … + aₙxₙ是整数。代入x_i的表达式后,这等价于一个非零的有理系数多项式P(t) = a₁t + a₂t² + … + aₙtⁿ的值等于整数。但t是超越数,非零有理系数多项式在超越数上的取值必然不是代数数,而整数属于代数数,这就产生了矛盾。因此这种情况不可能发生,满足题目的要求。
如果不想用超越数,我们可以用有理数域上线性无关的无理数来构造,核心是确保它们的非平凡有理组合不可能是有理数(自然也就不可能是整数)。
具体构造步骤:
- 选取n个不同的素数p₁,p₂,…,pₙ,我们知道
√p₁, √p₂, …, √pₙ在有理数域上是线性无关的(简单来说,你没法用有理数系数的组合把它们加起来等于0,除非所有系数都是0)。 - 找一个足够大的正整数M,使得每个
√p_i / M < s(比如M取大于max(√p₁, √p₂, …, √pₙ)/s的整数即可),然后令x_i = √p_i / M。显然每个x_i都严格小于s。
证明过程:
假设存在不全为0的有理数a₁,…,aₙ,使得a₁x₁ + … + aₙxₙ是整数。把等式两边乘以M,得到a₁√p₁ + … + aₙ√pₙ = m*M(m是整数)。左边是Q-线性无关的无理数的非平凡组合,结果必然是无理数;而右边是整数,属于有理数。无理数不可能等于有理数,这就矛盾了,因此这种构造也满足条件。
其实两种思路的核心逻辑是一致的:让x_i的非平凡有理系数组合要么是超越数,要么是无理数,反正都不可能是整数。
内容的提问来源于stack exchange,提问作者nan

