逐步主鏈
S01 · implies
操作前
T
操作後
|T|=|D|,\ D=\{(d_1,d_2,d_3)\mid d_1\in W^{+},\ d_2,d_3\in W,\ 100d_1+10d_2+d_3\ \text{even},\ d_1,d_2,d_3\ \text{pairwise distinct}\}條件:無
規則:decimal_rep · 依賴:G1, G2, decimal_rep
葉節點依據:decimal_rep + injective_surjective_def + finite_counting_basics
把每個 n∈T 對應到它的數字三元組 (d₁,d₂,d₃)。依 decimal_rep,這個三元組存在且唯一,所以對應是一個函數;反向以 (d₁,d₂,d₃)↦100d₁+10d₂+d₃ 還原 n,所以它是 T 到 D 的雙射。「偶數」與「數字相異」兩個條件原封不動地搬到 D。依 finite_counting_basics,有雙射的兩個有限集合元素個數相同,所以 |T|=|D|。
S02 · equivalent
操作前
100d_1+10d_2+d_3\ \text{even}操作後
d_3\in E=\{0,2,4,6,8\}條件:d_3\in W
規則:divides_def · 依賴:S01, even_def, divides_def
葉節點依據:divides_def + even_def + distributive
令 n=100d₁+10d₂+d₃。因 100d₁+10d₂=2(50d₁+5d₂)(分配律),n−d₃ 是 2 的倍數。若 n=2k,則 d₃=2(k−50d₁−5d₂) 是偶數;反之若 d₃=2j,則 n=2(50d₁+5d₂+j) 是偶數。所以 n 偶 ⇔ d₃ 偶。0 到 9 之中的偶數字恰為 0、2、4、6、8。
S03 · equivalent
操作前
D
操作後
D=\{(d_1,d_2,d_3)\mid d_1\in W^{+},\ d_2\in W,\ d_3\in E,\ d_1\neq d_2,\ d_1\neq d_3,\ d_2\neq d_3\}條件:無
規則:set_extensionality · 依賴:S01, S02
葉節點依據:set_extensionality + set_builder
把 S01 中的「偶數」條件換成 S02 的等價條件 d₃∈E,並把「兩兩相異」拆成三個不等式。每個三元組在改寫前後滿足的條件同真同假,所以集合不變。
S04 · case_split
操作前
D
操作後
D=D_0\cup D_+,\ D_0\cap D_+=\varnothing,\ D_0=\{t\in D\mid d_3=0\},\ D_+=\{t\in D\mid d_3\in\{2,4,6,8\}\}條件:無
規則:set_operations_def · 依賴:S03, set_operations_def
葉節點依據:set_operations_def + case_analysis
為什麼要分支:若先選個位 d₃,百位 d₁ 的可選數會依 d₃ 而變。d₃=0 時,0 本來就不在 W⁺ 中,d₁ 有 9 種;d₃∈{2,4,6,8} 時,d₃ 是非零數字,必須從 W⁺ 中扣掉,只剩 8 種。MKO 假設 a3 要求每個階段的可選數相對於先前選擇明確給出,可選數不固定時就必須分支。兩類別互斥,因為 d₃ 不能同時是 0 又屬於 {2,4,6,8};合起來涵蓋 D,因為 E={0}∪{2,4,6,8}。
S05 · theorem_application
操作前
D=D_0\cup D_+,\ D_0\cap D_+=\varnothing
操作後
|D|=|D_0|+|D_+|
條件:D_0\cap D_+=\varnothing
規則:finite_counting_basics · 依賴:S04, finite_counting_basics, mko_counting
葉節點依據:finite_counting_basics + finite_subset + mko_counting
加法原理(MKO 第一句、finite_counting_basics):兩個互斥有限集合之聯集的元素個數是兩者個數之和。D₀、D₊ 都是有限集 D 的子集合,所以有限。
S06 · implies
操作前
d_3=0
操作後
|W^{+}\setminus\{0\}|=9,\ \ |W\setminus\{0,d_1\}|=8\ \text{for every}\ d_1\in W^{+}條件:d_1\neq 0
規則:L_remove · 依賴:S04, L_remove
葉節點依據:L_remove + finite_counting_basics + numeric_evaluation
在 D₀ 中 d₃=0。階段一選 d₁:允許集合是 W⁺∖{0},因 0∉W⁺,它就是 W⁺,有 9 個元素。階段二選 d₂:要與 d₁、d₃ 都不同,允許集合是 W∖{0,d₁}。因 d₁≥1,d₁≠0,所以 {0,d₁}⊆W 恰有 2 個元素;依引理 L_remove,|W∖{0,d₁}|=10−2=8,而且對每個 d₁ 都是 8。
S07 · theorem_application
操作前
D_0
操作後
|D_0|=9\cdot 8=72
條件:|W\setminus\{0,d_1\}|=8\ \text{for every}\ d_1\in W^{+}
規則:L_stage · 依賴:S04, S06, L_stage
葉節點依據:L_stage + finite_counting_basics + numeric_evaluation
映射 (d₁,d₂,0)↦(d₁,d₂) 是 D₀ 到 P₀={(d₁,d₂) ∣ d₁∈W⁺, d₂∈W∖{0,d₁}} 的雙射:在 d₃=0 時,d₁≠d₃ 自動成立,d₂≠d₃ 就是 d₂≠0,再加上 d₂≠d₁。取 X=W⁺(m=9)、Y_{d₁}=W∖{0,d₁}(依 S06 每個都是 n=8 個),依引理 L_stage 得 |D₀|=|P₀|=9·8=72。注意 Y_{d₁} 本身依 d₁ 而不同(Y₁ 不含 0、1,Y₂ 不含 0、2),但個數相同,這正是引理所要求的。
S08 · implies
操作前
d_3\in\{2,4,6,8\}操作後
|W^{+}\setminus\{d_3\}|=8,\ \ |W\setminus\{d_1,d_3\}|=8\ \text{for every}\ d_1\in W^{+}\setminus\{d_3\}條件:d_3\in W^{+}; d_1\neq d_3
規則:L_remove · 依賴:S04, L_remove
葉節點依據:L_remove + numeric_evaluation
在 D₊ 中,d₃∈{2,4,6,8}⊆W⁺,所以 {d₃}⊆W⁺,依 L_remove |W⁺∖{d₃}|=9−1=8,對四個 d₃ 都一樣。d₁ 從 W⁺∖{d₃} 中選,所以 d₁≠d₃,{d₁,d₃}⊆W 恰有 2 個元素,|W∖{d₁,d₃}|=10−2=8,對每一對 (d₃,d₁) 都一樣。
S09 · theorem_application
操作前
Q=\{(d_3,d_1)\mid d_3\in\{2,4,6,8\},\ d_1\in W^{+}\setminus\{d_3\}\}操作後
|Q|=4\cdot 8=32
條件:|W^{+}\setminus\{d_3\}|=8\ \text{for every}\ d_3\in\{2,4,6,8\}
規則:L_stage · 依賴:S08, L_stage
葉節點依據:L_stage + numeric_evaluation
D₊ 的前兩個階段:先選 d₃(4 種),再選 d₁(依 S08 每次 8 種)。依引理 L_stage(m=4、n=8),這些有序對共 32 個。
S10 · theorem_application
操作前
D_+
操作後
|D_+|=32\cdot 8=256
條件:|W\setminus\{d_1,d_3\}|=8\ \text{for every}\ (d_3,d_1)\in Q
規則:L_stage · 依賴:S03, S04, S08, S09, L_stage
葉節點依據:L_stage + injective_surjective_def + finite_counting_basics + numeric_evaluation
映射 (d₁,d₂,d₃)↦((d₃,d₁),d₂) 只重排坐標,是 D₊ 到 {(q,d₂) ∣ q=(d₃,d₁)∈Q, d₂∈W∖{d₁,d₃}} 的雙射;兩邊的條件相同:d₃ 為非零偶數字、d₁∈W⁺、d₁≠d₃、d₂≠d₁、d₂≠d₃。再用一次 L_stage(X=Q,m=32;依 S08 每個 q 之後 n=8)得 |D₊|=32·8=256。
S11 · equivalent
操作前
|D|=|D_0|+|D_+|
操作後
|D|=72+256=328
條件:無
規則:eq_replace · 依賴:S05, S07, S10
葉節點依據:eq_replace + numeric_evaluation
把 S07 的 |D₀|=72 與 S10 的 |D₊|=256 代入 S05 的加法式:|D|=72+256=328。
S12 · implies
操作前
D=D'_{\mathrm{odd}}\cup D'_{\mathrm{even}}\ \text{(branch on}\ d_1)操作後
|D|=5\cdot 5\cdot 8+4\cdot 4\cdot 8=200+128=328
條件:d_1\ \text{odd: } |E\setminus\{d_1\}|=5; d_1\ \text{even: } |E\setminus\{d_1\}|=4
規則:L_stage · 依賴:S03, L_stage, L_remove, S05
葉節點依據:L_stage + L_remove + finite_counting_basics + numeric_evaluation
獨立核對:改成先選百位 d₁。此時個位 d₃∈E∖{d₁} 的個數依 d₁ 的奇偶而變,所以依 d₁ 的奇偶分成兩個互斥類別。d₁ 奇(1、3、5、7、9,5 種):d₁∉E,d₃ 有 5 種,d₂∈W∖{d₁,d₃} 有 8 種,得 5·5·8=200。d₁ 偶(2、4、6、8,4 種):d₁∈E,d₃ 有 4 種,d₂ 有 8 種,得 4·4·8=128。相加 328,與 S11 一致。
S13 · implies
操作前
|T|=|D|,\ |D|=328
操作後
|T|=328
條件:無
規則:eq_refl_symm_trans · 依賴:S01, S11, S12
葉節點依據:eq_refl_symm_trans
由 S01 的 |T|=|D| 與 S11 的 |D|=328,依等號傳遞得 |T|=328:100 到 999 之間數字兩兩相異的偶數共 328 個,其中 72 個以 0 結尾,256 個以 2、4、6 或 8 結尾。
局部子步與引理
S06.1 · implies
操作前
R\subseteq S,\ |S|=s,\ |R|=r
操作後
|S\setminus R|=s-r
條件:R\subseteq S
規則:finite_counting_basics · 依賴:finite_counting_basics, set_operations_def, subset_def, finite_subset
葉節點依據:finite_counting_basics + set_operations_def + subset_def + finite_subset + eq_congruence
S 的每個元素要嘛屬於 R,要嘛屬於 S∖R,不會兩者都是;又因 R⊆S,R 的元素都在 S 中。所以 S=(S∖R)∪R 且 (S∖R)∩R=∅。S∖R 是 S 的子集合,因此有限。依加法原理 s=|S∖R|+r,兩邊同減 r 得 |S∖R|=s−r。此子步證得引理 L_remove。
S07.1 · definition
操作前
|X|=m,\ |Y_x|=n\ (x\in X)
操作後
\Phi:P\to X\times[n],\ \Phi(x,y)=(x,\varphi_x(y))
條件:|Y_x|=n\ \text{for every}\ x\in X
規則:def_intro · 依賴:G3, finite_counting_basics
葉節點依據:def_intro + function_def
依 G3,|Yₓ|=n 表示有雙射 φₓ:Yₓ→[n];對有限多個 x 各固定一個。定義 Φ(x,y)=(x,φₓ(y))。因 x∈X 且 φₓ(y)∈[n],Φ 的值確實在 X×[n] 中。
S07.2 · implies
操作前
\Phi(x,y)=(x,\varphi_x(y))
操作後
\Phi\ \text{is a bijection}條件:無
規則:injective_surjective_def · 依賴:S07.1, injective_surjective_def, cartesian_product_def
葉節點依據:injective_surjective_def + cartesian_product_def
單射:若 Φ(x,y)=Φ(x′,y′),依有序對相等得 x=x′ 且 φₓ(y)=φₓ(y′),φₓ 是單射,所以 y=y′。滿射:任取 (x,k)∈X×[n],φₓ 是滿射,有 y∈Yₓ 使 φₓ(y)=k,於是 (x,y)∈P 且 Φ(x,y)=(x,k)。可以依 x 而不同的是雙射 φₓ,不能依 x 而不同的是目標 [n]。
S07.3 · implies
操作前
\Phi:P\to X\times[n]\ \text{bijective}操作後
|P|=|X\times[n]|=m\cdot n
條件:無
規則:finite_counting_basics · 依賴:S07.2, finite_counting_basics
葉節點依據:finite_counting_basics
依 finite_counting_basics,有雙射的兩個有限集合個數相同,且 |X×[n]|=|X|·|[n]|=m·n。S07.1 到 S07.3 合起來證得引理 L_stage。