跳到内容
导航菜单
切换导航
登录
产品
行动
自动化任何工作流
包装
托管和管理包
安全
查找并修复漏洞
代码空间
即时开发环境
GitHub Copilot公司
使用AI编写更好的代码
代码审查
管理代码更改
问题
计划和跟踪工作
讨论
在代码外协作
探索
所有功能
文档
GitHub技能
博客
解决
按大小
企业
团队
创业公司
按行业划分
保健
金融服务
制造业
按用例
CI/CD和自动化
开发运营
开发安全操作
资源
资源
学习途径
白皮书、电子书、网络研讨会
客户案例
合作伙伴
开放源代码
GitHub赞助商
资助开源开发人员
ReadME项目
GitHub社区文章
存储库
话题
趋向
收藏
企业
企业平台
AI驱动的开发人员平台
可用附加组件
高级安全
企业级安全功能
GitHub Copilot公司
企业级AI功能
特优支持
企业级全天候支持
定价
搜索或跳转到。。。
搜索代码、存储库、用户、问题、推送请求。。。
搜索
清除
搜索语法提示
提供反馈
我们阅读了每一条反馈,并非常认真地对待您的意见。
包括我的电子邮件地址以便联系我
保存的搜索
使用保存的搜索更快地筛选结果
姓名
查询
要查看所有可用的限定符,请参阅我们的
文档
.
登录
注册
您使用另一个选项卡或窗口登录。
重新加载
刷新会话。
您已在另一个选项卡或窗口中注销。
重新加载
刷新会话。
您在另一个选项卡或窗口上切换了帐户。
重新加载
刷新会话。
解除警报
{{消息}}
精益社区
/
数学实验室4
公共
通知
您必须登录才能更改通知设置
福克
251
星形
1.2公里
代码
问题
214
Pull请求
926
行动
项目
10
维基
安全
洞察力
其他导航选项
代码
问题
Pull请求
行动
项目
维基
安全
洞察力
文件夹
19f8立方厘米6
面包屑
数学实验室4
/
档案文件
/
Wiedijk100定理
/
分区.lean
责备
责备
最近一次提交
历史
历史
426行(383个位置)·18.1 KB
19f8立方厘米6
面包屑
数学实验室4
/
档案文件
/
Wiedijk100定理
/
分区.lean
顶部
文件元数据和控件
代码
责备
426行(383个位置)·18.1 KB
原始
1
2
三
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
/-
版权所有(c)2020 Bhavik Mehta,Aaron Anderson。
保留所有权利。
根据文件license中所述的Apache 2.0许可证发布。
作者:Bhavik Mehta,Aaron Anderson
-/
进口
马特里卜。
代数。
订单。
反诊断。
Finsupp公司
进口
马特里卜。
代数。
订单。
戒指。
防抱死制动系统
进口
马特里卜。
组合数学。
枚举。
分区
进口
马特里卜。
数据。
芬塞特。
Nat反对角线
进口
马特里卜。
数据。
财务。
塔普。
Nat反对角线
进口
马特里卜。
铃声理论。
PowerSeries系列。
反向
进口
马特里卜。
铃声理论。
PowerSeries系列。
订单
进口
马特里卜。
战术。
应用趣味
进口
马特里卜。
战术。
间隔案例
#align_inport wiedijk_100_理论分区
从
“leanprover-community/mathlib”
@
“5563b1b49e86e135e8c7b556da5ad2f5ff881cad”
/-!
#欧拉分划定理
这个文件证明了定理45
[
100定理列表
]
(
网址:https://www.cs.ru.nl/
~freek/100/)。
该定理涉及整数分区的计数——
将正整数`n`写成正整数部分的和。
具体来说,Euler证明了`n的整数分区数`
进入之内
*独特的*
parts等于将`n`划分为
*奇数*
部分。
##校样大纲
该证明基于奇数分区和不同分区的生成函数,其结果是
等于:
$$\prod_{i=0}^\infty\frac{1}{1-X^{2i+1}}=\prod_{i=0}^\ infty(1+X^{i+1})$$
事实上,我们没有取一个极限:事实证明,比较偏导数的“n”系数
直到“m:=n+1”的乘积就足够了。
特别是,我们
1.定义奇数分区的生成函数“partialOddGF m”的部分积:=
$$\prod_{i=0}^m\frac{1}{1-X^{2i+1}}$$;
2.证明`oddGF_prop`:如果`m`足够大(`m*2>n`),则偏积的系数计数
奇数分区的数量;
3.为不同分区的生成函数定义部分积
`partialDistinctGF m`:=$$\prod_{i=0}^m(1+X^{i+1})$$;
4.证明`distinctGF_prop`:如果`m`足够大(`m+1>n`)
partial product统计`n`的不同分区数;
5.证明`same_coeffs`:如果m足够大(`m≥n`),则部分积的`n`系数
是平等的;
6.将上述内容合并到“partition_theorem”中。
##参考文献
https://en.wikipedia.org/wiki/分区_
(数字_理论)#Odd_parts_and_distinact_parts
-/
打开
PowerSeries系列
命名空间
理论100
无可争辩的
部分
变量
{α :
类型
*}
打开
芬赛特
打开
有范围的
经典
/--奇数分区的生成函数的偏积。
TODO:随着`m`趋于无穷大,这会收敛(在`X`-adic拓扑中)。
如果`m`足够大,则`i`系数给出
自然数`i`:在`oddGF_prop`中证明。
它是为任意字段“α”指定的,但通常使用“ℚ”或“ℝ”就足够了。
-/
定义
部分奇数GF
(m:ℕ)[字段α]:=
∏i∈范围m(
1
-(X:PowerSeriesα)^(
2
*我+
1
))⁻¹
#对齐定理_100.partial_add_gf定理100.partialOddGF
/--不同分区生成函数的部分积。
TODO:随着`m`趋于无穷大,这会收敛(在`X`-adic拓扑中)。
如果`m`足够大,则`i`系数给出了
自然数“i”:在“distinctGF_prop”中证明。
它是针对任意交换半环“α”的,尽管它通常足以使用“ℕ”、“ℚ”`
或“ℝ”。
-/
定义
部分DistinctGF
(m:ℕ)[通用半环α]:=
∏i∈范围m(
1
+(X:PowerSeriesα)^(i)+
1
))
#对齐理论_100.partial_distinact_gf定理100.partialDistinctGF
打开
芬塞特。
Has反对角线装饰
宇宙
u个
变量
{ι :
类型
用户}
/--系数表示子集的幂级数的方便构造函数-/
定义
指示器系列
(α :
类型
*)[半环α](s:集ℕ):幂级数α:=
动力系列.mk
乐趣
n=>
如果
n∈s
然后
1
其他的
0
#对齐theorems_100.indicator_series定理100.indicator系列
定理
系数指示器
(s:Setℕ)[半环α](n:ℕ):
系数αn(指示符系列_ s)=
如果
n∈s
然后
1
其他的
0
:=
系数_mk __
#对齐理论_100.coeff_indicator定理100.coeff _ indicator
定理
系数_指标_位置
(s:集ℕ)[半环α](n:\8469;)(h:n∈s):
系数αn(指示符系列_ s)=
1
:=
通过
rw[系数_指示符,if_pos h]
#对齐理论_100.coeff_indicator_pos定理100.coeff _indicator _pos
定理
系数指示器名称
(s:集ℕ)[半环α](n:\8469;)(h:n∉s):
系数αn(指示符系列_ s)=
0
:=
通过
rw[系数_指示符,if_neg h]
#对齐理论_100.coeff_indicator_neg定理100.coeff _indicator _neg
定理
常数系数_指示器
(s:Setℕ)[半环α]:
常数系数α(指示器系列_ s)=
如果
0
∈s
然后
1
其他的
0
:=
射频识别
#对齐理论_100.constant_coeff_indicator定理100.constantCoeff_ndicator
定理
两个系列
(i:ℕ)[半环α]:
1
+(X:PowerSeriesα)^i.suc=指示器Seriesα{
0
,i.suc}:=
通过
扩展名n
仅simp[系数_指示符,系数_ one,系数_X_pow,设置.mem_insert_iff,设置.mem_singleton_iff,
地图_添加]
案例n
具有
d日
·simp[(Nat.succ_ne_zero i).symm]
·simp[自然.succ_ne_zero d]
#对齐定理100.two_series定理100.tw_series
定理
数字系列'
[字段α](i:ℕ):
(
1
-(X:动力系列α)^(i+
1
))⁻¹=指示器系列α{k|i+
1
k}:=
通过
rw[PowerSeries.inv_eq_iff_mul_eq_ one]
·扩展名n
案例n
具有
|zero=>simp[mul_sub,zero_pow,constantCoeff_indicator]
|成功n=>
仅限simp[系数one,if_false,mul_sub,mul_one,系数indicator,
线性映射.map_sub]
simp_rw[系数_mul,系数_X_pow,系数_indicator,@boole_mul _ _ _]
erw[总和,总和]
simp_rw[@filter_filter_____,sum_const_zero,add_zero、sum_cont、nsmul_eq_mul、mul_one,
sub _ eq _ if _ eq添加,zero添加]
对称
拆分(_ifs)
具有
小时
·
足够了
((反对角线(n+
1
)).过滤器
乐趣
a:×=>i+
1
a.fst∧a.snd=i+
1
).卡片=
1
通过
仅simp[Set.mem_setOf_eq];
转换congr_arg(↑):ℕ→α)this;
标准铸件
rw[卡片_eq_one]
案例'h
具有
p马力
精炼⟨(i+
1
)*(p-
1
),我+
1
), ?_⟩
分机⟨a₁,a⁄⟩
仅simp[mem_filter,Prod.mk.inj_iff,mem_antidiablen,mem_singleton]
建造师
·rintro左,右,右
精炼⟨,
rfl⟩
rw[Nat.mul_sub_left_distrib,←hp,←a_left,mul_one,Nat.add_sub_cancel]
·rintro⟨rfl,rfl⟩
比赛
第页
具有
|
0
=>马力时的rw[mul_zero];
案例hp
|第页+
1
=>相对湿度[hp];
simp[多个添加]
·
足够了
(过滤器(
乐趣
a:×=>i+
1
a.fst∧a.snd=i+
1
)(反对角线(n+
1
))).卡=
0
通过
仅simp[Set.mem_setOf_eq];
转换congr_arg(↑):ℕ→α)this;
标准铸件
rw[卡片_eq_zero]
应用eq_empty_of_forall_not_mem
仅simp[提供所有,mem_filter,not_and,mem_anti对角]
rintro _ h₁h⁄a,rfl⟩rfl
应用h
simp[←二氧化碳]
·simp[零流量]
#对齐theorems_100.num_series“Theorems100.num_servies”
定义
mk奇数
: ℕ
↪ ℕ :=
⟨
乐趣
i=>
2
*我+
1
,
乐趣
x y h=>
通过
利纳瑞斯
#对齐定理-100.mk_add定理100.mkOdd
--划分定理证明的主要工具。
定理
部分GF_prop
(α :
类型
*)[CommSemiringα](n:ℕ)(s:Finset \8469;)(hs:∀i∈s,
0
<i)
(c:→设置)(hc:i,i→s
0
∈c i):
(Finset.card
((univ:Finset(Nat.Partition n)).过滤器
乐趣
p=>
(∀j,p.parts.count j∈cj)∧\8704;j∈p.parts,j∈s):
α) =
(系数αn)(∏i∈s,指示符系列α((·*i)“c i)):=
通过
simp_rw[coeff_prod,coeff_indicator,prod_boole,sum_boole]
应用congr_arg
仅限simp[mem_univ,对于所有true_left、not_and、not_forall、exists_prop,
设置.mem_image,不存在]
设置φ:(a:自然分区n)→
a∈滤波器(
乐趣
p↦(∀(j:ℕ),Multiset.count j p.parts∈cj)∧j∈p.parts,j∈s)univ→
ℕ →₀ ℕ :=
乐趣
p_=>{
娱乐:=
乐趣
i=>多集计数i p.parts•i
支持:=Finset.filter(
乐趣
i=>i≠
0
)p.零件到Finset
mem_support_toFun(内存支持_乐趣):=
乐趣
a=>
通过
仅限simp[smul_eq_mul,ne_eq,mul_eq_0ro,Multiset.count_eq~zero]
rw[无或,无]
仅simp[Multiset.mem_toFinset,not_not,mem_filter]}
细化Finset.card_bijφ?_?__
·介绍ha
仅限simp[φ,not_forall,not_exists,not_and,exists_prop,mem_filter]
rw[mem_finsupAntidiag']
仅限dsimp[ne_eq、smul_eq_mul、id_eq,eq_mpr_eq_cast、le_eq_subset、Finsupp.coe_mk]
仅限simp[mem_univ,对于所有true_left、not_and、not_forall、exists_prop,
mem_filter,true_and]在ha
建造师
建造师
·简介i
仅simp[ne_eq、Multiset.mem_toFinset、not_not、mem_filter和_imp]
准确的
乐趣
hi_=>公顷。
2
我嗨
·conv_rhs=>simp[←a.parts_sum]
rw[sum _ multiset _ count _ of_subset _ s]
·仅限simp[smul_eq_mul]
·简介i
仅限simp[Multiset.mem_toFinset,not_not,mem_filter]
应用ha。
2
·精确
乐趣
i _=>⟨Multiset.count i a.parts,ha。
1
i、 rfl⟩
·仅限dsimp
介绍p₁hp \8321»p⁄hp⁄h
应用Nat.Partition.ext
仅在hp时使用simp[true_and_iff、mem_univ和mem_filter]
扩展名i
h时仅simp[φ,ne_eq,Multiset.mem_toFinset,not_not,smul_eq_mul,Finsupp.mk.injEq]
通过案例hi:i=
0
·rw[高]
rw[Multiset.count_eq_zero_of_not_mem]
·rw[Multiset.count_eq_zero_of_not_mem]
导言a;
精确的Nat.lt_irrefl
0
(小时
0
(马力。
2
0
a) )
导言a;
准确的Nat.lt_irerfl
0
(小时
0
(马力₁。
2
0
a) )
·rw[←mul_left_inj’hi]
rw[Function.funext_iff]在h
精确h。
2
我
·仅simp[φ,mem_filter,mem_ insuppAntidiag,mem__ univ,exists_prop,true_and_iff,and_assoc]
rintro f⟨hf,hf³,hf⟩
有
hf':f∈finsuppAntidiag s n:=mem_finsupAntidiag.mpr⟨hf,hf⟩
hf'时仅simp[mem_finsupAntidiag']
细化∑i∈s,多重集重复(fi/i)i,?_,?_
·介绍我嗨
hi时仅simp[exists_prop,mem_sum,mem_map,Function.Embedding.coeFn_mk]
rcases嗨
具有
⟨t、ht、z⟩
应用hs
rwa[Multise.eq_of_mem_replicate z]多组
·simp_rw[多集.sum_sum,多集.sum _复制,自然nsmul_eq_mul]
rw[←hf'。
2
]
细化sumcongr rfl
乐趣
i hi=>Nat.div_mul_cancel_
rcases hf₄i hi
具有
⟨w,_,hw⁄⟩
rw[←hw⁄]
精确的dvdmull_left_
·简介i
simp_rw[Multiset.count_sum',Multiset.count_replicate,sum_ite_eq]
拆分(_ifs)
具有
小时
·rcases hf₄i h
具有
⟨w、hw₁、hw⁄⟩
rwa[←硬件,自然.mul_div_cancel _(hs i h)]
·精确hch
·介绍我嗨
hi时的rw[mem_sum]
rcases嗨
具有
⟨j、hj₁、hj⁄⟩
rwa[Multiset.eq_of_mem_replicate hj⁄]
·扩展名i
simp_rw[Multiset.count_sum',Multiset.count_replicate,sum_ite_eq]
仅simp[ne_eq,Multiset.mem_toFinset,not_not,smul_eq_mul,ite_mul,
zero_mul,Finsupp.系数_mk]
拆分(_ifs)
具有
小时
·应用Nat.div_mul_cancel
rcases hf₄i h
具有
⟨w,_,hw⁄⟩
应用Dvd.intro_left _ hw⁄
·应用symm
rw[←Finsupp.not_mem_support_iff]
精确not_mem_mono hf h
#对齐定理_100.partial_gf_prop定理100.partialGF_prop
定理
部分奇数GF_prop
[字段α](n m:ℕ):
(Finset.card
((univ:Finset(Nat.Partition n)).过滤器
乐趣
p=>
∀j∈p.parts,j∈(范围m).map mkOdd):
α) =
系数αn(partialOddGF m):=
通过
rw[部分奇数GF]
转换部分GF_propαn
((范围m).map mkOdd)_(
乐趣
_=>集合.univ)(
乐趣
__=>琐碎)使用
2
·刚果
仅simp[true_and_iff,对于all_const,Set.mem_univ]
·rw[完成.prod_map]
simp_rw[数字系列']
恭喜!
2
具有
x个
扩展名k
建造师
·rintro⟨p、rfl⟩
精炼p、p、
应用mul_comm
rintro⟨a_w,-,rfl⟩
应用Dvd.intro_left a_w rfl
·简介i
rw[内存映射]
rintro⟨a,-,rfl⟩
准确的Nat.succ_pos_
#对齐定理_100.partial_odd_gf_prop定理100.partialOddGF_prop
/--如果m足够大,则偏积系数计算奇数分区的数量-/
定理
奇数GF_prop
[字段α](n m:ℕ)(h:n<m*
2
) :
(Finset.card(Nat.Partition.odts n):α)=系数αn(partialOddGF m):=
通过
rw[←partialOddGF_prop,Nat.Partition.obst]
刚果
具有
第页
申请所有⁄congr
介绍我嗨
有
hin:i≤n:=
通过
使用Multiset.single_sum的simpa[p.parts_sum](
乐趣
__=>Nat.zero_le_)_高
仅simp[mkOdd,exists_prop,mem_range,Function.Embedding.coeFn_mk,mem_映射]
构造函数
·介绍hi⁄
有
:=国家mod_add_div i
2
rw[Nat.not_even_iff]在hi⁄
rw[hi⁄,add_comm]在此
精炼⟨i/
2
, ?_,
这个⟩
rw[Nat.div_lt_iff_lt_mul zero_lt_two]
精确ltofleoflthinh
·rintro⟨a,-,rfl⟩
rw[偶数_偏移_偶数_偏差]
应用Nat.two_not_dvd_two_mul_add_one
#对齐定理_100.odd_gf_prop定理100.oddGF_prop
定理
部分差异GF_prop
[通用半环α](n m:ℕ):
(Finset.card)
((univ:Finset(Nat.Partition n)).过滤器
乐趣
p=>
p.零件。
Nodup∧∀j∈p.parts,j∈(范围m).map⟨Nat.succ,Nat.suc_injective⟩):
α) =
系数αn(partialDistinctGF m):=
通过
rw[partialDistinctGF]
转换部分GF_propαn
((范围m).map⟨Nat.succ,Nat.suc_injective⟩)_(
乐趣
_ => {
0
,
1
}) (
乐趣
__=>Or.inl rfl)
使用
2
·刚果
恭喜!
具有
第页
rw[多集.nodeup_iff_count_le_one]
恭喜!
具有
我
rcases Multiset.count i p.parts多用途零件
具有
(_ | _ |毫秒)<;>
简单
·simp_rw[完成.prod_map,两个系列]
刚果
具有
我
simp[Set.image_pair](设置图像路径)
·仅simp[mem_map,函数.嵌入.coeFn_mk]
rintro i⟨,_,rfl⟩
应用Nat.succ_pos
#对齐定理_100.partial_distinact_gf_prop定理100.partialDistinctGF_prop
/--如果m足够大,则偏积系数计算不同分区的数量
-/
定理
区别GF_prop
[通用半环α](n m:ℕ)(h:n<m+
1
) :
((Nat.Partition.distincts n).卡:α)=系数αn(partialDistinctGF m):=
通过
erw[←partialDistinctGF_prop,Nat.Partition.distincts]
刚果
具有
第页
应用(and_iff_left).symm
简介i hi
有
:i≤n:=
通过
使用Multiset.single_sum的simpa[p.parts_sum](
乐趣
__=>自然零度_)_嗨
仅simp[mkOdd,exists_prop,mem_range,Function.Embedding.coeFn_mk,mem_映射]
精炼⟨i-
1
, ?_,
国家succ_pred_eq_of_pos(p.parts_pos-hi)⟩
rw[tsub_lt_iff_right(Nat.one_le_iff_ne_zero.mpr(p.parts_pos-hi).ne')]
准确的ltofleoflt这个h
#对齐定理_100.disticont_gf_prop定理100.disticntGF_prop
/--配分定理的关键证明思想,表明两者的生成函数
序列最终是相同的(因为当m趋于无穷大时,因子收敛到0)。
不过,只要考虑到足够大的“m”,就可以不设限制。
-/
定理
相同_gf
[字段α](m:ℕ):
(partialOddGF m*(范围m).prod
乐趣
i=>
1
-(X:幂级数α)^(m+i+
1
)) =
局部差异GF m:=
通过
rw[partialOddGF,partialDistinctGF]
感应'm
具有
米ih
·简单
设置!
π₀:幂级数α:=∏i∈范围m(
1
-X ^(米+
1
+我+
1
))
具有
hπ₀
设置!
π₁:幂级数α:=∏i∈范围m(
1
-X ^(X ^)(
2
*我+
1
))⁻¹
具有
hπ₁
设置!
π⁄:幂级数α:=∏i∈范围m(
1
-X^(m+i+
1
))
具有
hπ_2
设置!
π∈:幂级数α:=πi∈范围m(
1
+X^(i)+
1
))
具有
hπ³
rw[←hπ⁄](在ih时)
有
h:常数系数α(
1
-X ^(X ^)(
2
*米+
1
)) ≠
0
:=
通过
rw[RingHom.map_sub,RingHom-map_pow,constantCoeff_one,constant_Coeff_ X,
零流量(
2
*m).sucd_e_zero,sub_zero]
精确的one_ne_zero
计算
(∏i∈范围(m+
1
), (
1
-X ^(X ^)(
2
*我+
1
))⁻¹) *
πi∈范围(m+
1
), (
1
-X ^(米+
1
+我+
1
)) =
π₁ * (
1
-X ^(X ^)(
2
*米+
1
))⁻¹ * (π₀ * (
1
-X ^(米+
1
+米+
1
))) :=
通过
rw[prod_range_succ_m,←hπ₁,prod_rage_succ_ m
_ = π₁ * (
1
-X ^(X ^)(
2
*米+
1
))⁻¹ * (π₀ * ((
1
+X ^(米+
1
)) * (
1
-X ^(米+
1
)))) :=
通过
rw[←sq_sub_sq,one_pow,add_assoc_m
1
,←两摩尔(m+
1
),pow_mul']
_ = π₀ * (
1
-X ^(米+
1
)) * (
1
-X ^(X ^)(
2
*米+
1
))⁻¹ * (π₁ * (
1
+X ^(米+
1
))) :=
通过
戒指
_ =
(∏i∈范围(m+
1
), (
1
-X ^(米+
1
+i))*(
1
-X ^(X ^)(
2
*米+
1
))⁻¹ *
(π₁ * (
1
+X ^(米+
1
))) :=
通过
rw[prod_range_succ',add_zero,hπ₀];simp_rw[←add_assoc]
_ = π₂ * (
1
-X ^(米+
1
+m))*(
1
-X ^(X ^)(
2
*米+
1
))⁻¹ * (π₁ * (
1
+X ^(米+
1
))) :=
通过
rw[add_right_comm,hπ⁄,←prod_range_succ];
simp_rw[add_right_comm]
_ = π₂ * (
1
-X ^(X ^)(
2
*米+
1
)) * (
1
-X ^(X ^)(
2
*米+
1
))⁻¹ * (π₁ * (
1
+X ^(米+
1
))) :=
通过
rw[two _ mul,add _ right _ comm _ m
1
]
_ = (
1
-X ^(X ^)(
2
*米+
1
)) * (
1
-X ^(X ^)(
2
*米+
1
))⁻¹ * π₂ * (π₁ * (
1
+X ^(米+
1
))) :=
通过
戒指
_ = π₂ * (π₁ * (
1
+X ^(米+
1
))) :=
通过
rw[PowerSeries.mul_inv_cancel _ h,one_mul]
_ = π₁ * π₂ * (
1
+X ^(米+
1
)) :=
通过
戒指
_ = π₃ * (
1
+X ^(米+
1
)) :=
通过
相对湿度[ih]
_ = _ :=
通过
rw[prod_range_succ]
#对齐定理_100.same_gf定理100.same_gf
定理
相同的效果
[字段α](m n:ℕ)(h:n≤m):
系数αn(partialOddGF m)=系数αn=
通过
rw[←相同gf,系数mul_prod_one_sub_of_lt_order]
林特罗一世-
rw[订单_X_pow]
准确的mod_cast Nat.lt_suc_of_le(le_add_right h)
#对齐定理_100.same_coeffs定理100.same_cofs
定理
分区_主题
(编号:ℕ):
(Nat.Partition.bird n).card=(Nat.Partition.distictions n).card:=
通过
--我们需要在某个字段中使用计数(其中包含ℕ),所以我们只使用ℚ
足够了
((Nat.Partition.odds n).card:ℚ)=(Nat.Partition.distincts n).card
从
mod_cast此
rw[区别GF_prop n(n+
1
) (
通过
利纳瑞斯)]
rw[oddGF_prop n(n+
1
) (
通过
利纳瑞斯)]
应用相同的系数(n+
1
)n n.le_succ号
#对齐理论_100.partition_theorem定理100.partition_theorem
结束
结束
定理100
此时无法执行该操作。