昨晚一个同学问我立方和分解,突发奇想想到了这个问题。看到网上关于这个问题的许多解答都不是很准确。在此修正一下。

引理一:立方和公式

对于形如 \(a^3 + b^3\) 的式子,有因式分解:

\(a^3 + b^3 = (a + b)(a^2 - ab + b^2)\)

式子两边展开即可证明。

现在考虑 \(x^3 + 1\) 的因式分解,套用立方和公式可知,\(a = x, b = 1\)。因此因式分解可以表示为:

\[x ^ 3 + 1 = (x + 1)(x^2 - x + 1)
\]

接下来将 \(x\) 的指数扩展到 \(n(n \in \Z^{+})\)。

考虑可以将 \(x^n + 1\) 分解成 \((x^k + 1)(x^{n - k} - x^{n - 2k} + x^{n - 3k} - x^{n - 4k} + \cdots + 1)\),其中 \(k \in \Z^{+}\) 且 \(k | n\)。显然,若 \(k = 1\),对于所有的 \(n\) 都满足 \(k | n\)。

因此可以将 \(x^n + 1\) 分解为 \((x + 1)(x^{n - 1} - x^{n - 2} + x^{n - 3} - x^{n - 4} + \cdots + 1)\)。然而由于 \(\dfrac{n}{1}\) 不一定是奇数,所以最后一位可能出现 \(\pm 1\) 两种情况。其中 \(-1\) 的情况不成立。

引理二:对于 \(x^n + 1\),\(n \in \Z^{+}\) 且 \(n \equiv1 \pmod 2\)(即 \(n\) 为奇数),都有一下因式分解形式:

\(x^n + 1 = (x+1)(x^{n - 1} - x^{n - 2} + x^{n - 3} - x^{n - 4} + \cdots + 1)\)

当然,刚才已经解释过一部分了。

\[(x+1)(x^{n - 1} - x^{n - 2} + x^{n - 3} - x^{n - 4} + \cdots + 1) = (x + 1)\sum_{i = 0}^{n - 1} (-1)^{i} x^i \\ = x \sum_{i = 0}^{n - 1} (-1)^{i} x^i + \sum_{i = 0}^{n - 1} (-1)^{i} x^i \\ = \sum_{i = 0}^{n - 1} (-1)^{i} x^{i + 1} + \sum_{i = 0}^{n - 1} (-1)^{i} x^i \\ =x^n + 1
\]

显然,对于 \(n\) 为奇数的情况都有分解。然后有许多文章就断言对于偶数没有分解。这是完全错误的。考虑 \(n = 6\) 的情况。\(x ^ 6 + 1 = (x^2)^3 + 1\)。设 \(a = x^3\),可以对于 \(a^3 + 1\) 因式分解。所以虽然 \(n = 6\) 为偶数,仍然是可以分解的。

引理三:唯一分解定理:

对于任意大于 \(1\) 的正整数,都可以分解为 \(n = p_1^{c_1} p_2^{c_2} \cdots p_k^{c_k}\),且表示方式唯一。(\(p\) 为不相等的质数。

对于 \(n = p_1^{c_1} p_2^{c_2} \cdots p_k^{c_k}\),\((x^n + 1)\) 可以表示为 \(((x^{p_1^{c_1}})^{p_2^{c_2}})^{\cdots p_k^{c_k}} + 1\) 的形式,如果 \(k \ge 2\),必定有一个 \(p\) 为奇数。(因为只有二为偶质数)。那么它可以被分解。

用类似筛法的思想,我们可以发现,大部分 \(n\) 都可以因式分解,当且仅当 \(k = 1\) 且 \(p = 2\) 时,原式没有因式分解。即:

\(n = 2^a, a\in \Z^{+}\) 时,原式没有因式分解。当然,\(n\) 可以等于 \(2, 4, 8, 16, 32 \cdots\)

对于最后的这种情况,并没有想过完整的证明,希望有人来补充。

最后来一个思考题:

对形如 \(2 ^ n - 1\) 的质数,我们称之为“梅森质数”。

对形如 \(2 ^ n + 1\) 的质数,我们称之为“费马质数”。

费马质数的结论之一就是:一个数是费马质数的充分条件为 \(n\) 一定是 \(2\) 的整数次幂。

当然,这与 \(x ^ n + 1\) 的因式分解紧密相关。关于费马质数可以看这里 费马质数

关于 x^n + 1 形式因式分解的讨论的更多相关文章

  1. ACM-ICPC (10/11)

    莫比乌斯 今年的多校比赛,莫比乌斯反演的题目经常出现,但是我们队对于这种题可以说是直接放掉,不是因为没学过,多少了解一些,但是也只是皮毛,导致根本就做不出来,其实想一想,其实次数多了,就可以看出原因了 ...

  2. Android Contextual Menus之二:contextual action mode

    Android Contextual Menus之二:contextual action mode 接上文:Android Contextual Menus之一:floating context me ...

  3. Java 内存分配全面浅析

    本文将由浅入深详细介绍Java内存分配的原理,以帮助新手更轻松的学习Java.这类文章网上有很多,但大多比较零碎.本文从认知过程角度出发,将带给读者一个系统的介绍. 进入正题前首先要知道的是Java程 ...

  4. Java内存分配全面浅析

    本文将由浅入深详细介绍Java内存分配的原理,以帮助新手更轻松的学习Java.这类文章网上有很多,但大多比较零碎.本文从认知过程角度出发,将带给读者一个系统的介绍. 进入正题前首先要知道的是Java程 ...

  5. TGL站长关于常见问题的回复

    问题地址: http://www.thegrouplet.com/thread-112923-1-1.html 问题: 网站配有太多的模板是否影响网站加载速度 月光答复: wp不需要删除其他的模板,不 ...

  6. 机器学习中的数学(3)-模型组合(Model Combining)之Boosting与Gradient Boosting

    版权声明: 本文由LeftNotEasy发布于http://leftnoteasy.cnblogs.com, 本文可以被全部的转载或者部分使用,但请注明出处,如果有问题,请联系wheeleast@gm ...

  7. Gradient Boost Decision Tree(&Treelink)

    http://www.cnblogs.com/joneswood/archive/2012/03/04/2379615.html 1.      什么是Treelink Treelink是阿里集团内部 ...

  8. Java内存分配全面浅析(转)

           原文引自CSDN:        本文将由浅入深详细介绍Java内存分配的原理,以帮助新手更轻松的学习Java.这类文章网上有很多,但大多比较零碎.本文从认知过程角度出发,将带给读者一个 ...

  9. Coursera《machine learning》--(6)逻辑回归

    六 逻辑回归(Logistic Regression:LR) 逻辑回归(Logistic Regression, LR)模型其实仅在线性回归的基础上,套用了一个逻辑函数,但也就是由于这个逻辑函数,使得 ...

  10. 《University Calculus》-chape6-定积分的应用-平面曲线长度

    平面曲线的长度: 积分的重要作用体现在处理曲线和曲面. 在这里我们讨论平面中一条用参数形式表达的曲线:x=f(t),y=g(t),a≤t≤b. 如图. y=f(x)形式的弧长计算: 之前我们讨论过平面 ...

随机推荐

  1. 33家国内外知名的手机广告平台的SDK名单汇总,吐血推荐

    下面格式:第一行是广告平台名称,第二行是SDK的包名特征,第三行是平台网站 多盟cn.domob.androidhttp://www.domob.cn/百度推广SDK com.baidu统计SDK c ...

  2. How to start with Gradle?

    How to start with Gradle? Download the latest Gradle release from http://www.gradle.org/downloads Se ...

  3. Appendix D. Gradle Command Line

    http://www.gradle.org/docs/current/userguide/gradle_command_line.html Appendix D. Gradle Command Lin ...

  4. 2020/4/27 日常补坑-tarjan第一道awa

    第一题 luoguP1407 我们已知n对夫妻的婚姻状况,称第i对夫妻的男方为Bi,女方为Gi.若某男Bi与某女Gj曾经交往过(无论是大学,高中,亦或是幼儿园阶段,i≠j),则当某方与其配偶(即Bi与 ...

  5. 如何将Python程序打包并保护源代码

    导言: 在某些情况下,我们可能希望将Python程序打包成可执行文件,以便用户无法查看程序的源代码.这种需求通常出现在商业软件.数据分析工具或其他需要保护知识产权的场景中.本文将介绍如何使用PyIns ...

  6. k 分算法是 k 越大越好吗?

    引入 我们有二分算法,就是: 定义 二分查找(英语:binary search),也称折半搜索(英语:half-interval search).对数搜索(英语:logarithmic search) ...

  7. Python 批量合并图片到word文档

    这段代码是一个用Python编写的功能,它将指定文件夹中的所有图片插入到Word文档中并保存.以下是代码的主要步骤和功能: 导入必要的库 Python中的docx库用于操作Word文档,glob库用于 ...

  8. [C++]vector的基本的用法

    [vector/容器/向量/动态数组]的基本的用法 容器的定义 向量/容器(Vector)是一个封装了动态大小数组的顺序容器(Sequence Container). 跟任意其它类型容器一样,它能够存 ...

  9. JavaSE中的一些面试题

    list与Set区别 List 和 Set 是 Java 集合中两个重要的接口,它们在数据存储.数据查找.数据操作等方面有以下几个不同点: 1. 数据存储方式不同:List 是一个有序的 Collec ...

  10. python函数str()避免类型错误

    python中当输出需要拼接字符串(char)和整数(int)时,需要用到str()函数 如果编写如下代码: age = 23 print("Happy " + age +&quo ...