S01 · definition
操作前
a\mid b
操作後
\exists k\in\mathbb{N}:\ b=a\cdot k條件:a,b\in\mathbb{N}
規則:mko_dvd_def · 依賴:G1, G2, mko_dvd_def
葉節點依據:mko_dvd_def + def_unfold
依 MKO 的定義,a∣b 的意思是存在一個自然數 k(乘數見證)使 b=a·k。要證 a∣b,就要給出這樣的 k;要證 a∤b,就要說明沒有任何自然數 k 能做到。
derivation-mko-natural-divisibility-01 · production-20261019-adopted-96
依 MKO 定義(a∣b ⇔ 存在自然數 k 使 b=a·k):(1) 證明 6∣84;(2) 證明 6∤87;(3) 證明 4∤10,雖然 10/4=5/2 是一個數;(4) 證明每個 a 都整除 0;(5) 證明 0∣b ⇔ b=0,並說明 0∣0 的見證不唯一、0∤5;(6) 證明 a>0 時見證至多一個(若 a∣b,則既有見證唯一);(7) 證明整除的自反性與遞移性,並由 3∣6、6∣84 求出 3∣84 的見證。
只在包含 0 的自然數中工作(MKO 假設 a1),見證必須是自然數(a2)。為判定 a>0 的情形,本稿由帶餘除法(引用的前置規則)證明「a∣b ⇔ 餘數為 0」。不處理負整數的整除、最大公因數或質數;不改動 canonical MKO 或英文 edition。
division_algorithmorder_basicsmul_zeromul_assocnumeric_evaluationG1 — ℕ 包含 0;乘法是自然數乘法,自然數的和與積仍是自然數(MKO 假設 a1)。G2 — 整除的見證 k 必須是自然數;非整數的商不是見證(MKO 假設 a2)。G3 — 要判定的數對:(6,84)、(6,87)、(4,10)、(3,6)、(0,0)、(0,5)。a\mid b — a 整除 ba\nmid b — a 不整除 bk — 乘數見證,必須是自然數b\bmod a — b 除以 a(a>0)的餘數\mathbb{N} — 自然數,包含 0division_algorithm · prerequisite — 帶餘除法:對整數 a 與正整數 b,存在唯一的整數 q、r 使 a=bq+r 且 0≤r<b。order_basics · prerequisite — 實數的序:任兩數恰有 u<v、u=v、u>v 之一;u<v 且 v<w 推出 u<w;u<v 推出 u+w<v+w;u<v 且 w>0 推出 uw<vw;u<v 且 w<0 推出 uw>vw。mul_zero · prerequisite — 乘以零:u·0=0。理由:u·0=u·(0+0)=u·0+u·0,兩邊同減 u·0 得 0=u·0。mul_assoc · prerequisite — 乘法結合律:(uv)w=u(vw)。numeric_evaluation · prerequisite — 明確整數或有理數算式的精確求值;可以獨立重算。def_unfold · prerequisite — 展開定義:把一個已定義的詞換成它的定義內容(或反向收回),命題的真假不變。exists_intro · prerequisite — ∃引入:若找到 a∈D 使 P(a) 成立,則 ∃x∈D, P(x)。contradiction · prerequisite — 反證法:若假設 ¬P 推出矛盾(某命題與其否定同時成立),則 P 成立。add_zero · prerequisite — 加法單位元:u+0=u。mul_inverse_nonzero · prerequisite — 非零數的倒數:在 ℚ、ℝ、ℂ 中,若 u≠0,存在 1/u 使 u·(1/u)=1;對 u≠0 定義 v/u 為 v·(1/u)。u=0 時沒有倒數,v/0 不定義。frac_rules · prerequisite — 分數運算(分母皆非零):a/c+b/c=(a+b)/c;(a/b)(c/d)=(ac)/(bd);(a/b)/(c/d)=(ad)/(bc)(另需 c≠0);a/b=(ak)/(bk)(k≠0)。forall_intro · prerequisite — ∀引入(全稱推廣):若某命題對一個「任意的」元素 x 證成,而證明沒有對 x 加任何額外假設,則它對論域中所有 x 成立。mul_comm · prerequisite — 乘法交換律:uv=vu(在交換的數系中,例如 ℤ、ℚ、ℝ、ℂ)。case_analysis · prerequisite — 分情況論證:若 P∨Q 成立,且 P⇒R、Q⇒R 都已證,則 R 成立。所有情況必須涵蓋全部可能。mul_one · prerequisite — 乘法單位元:1·u=u。exists_elim · prerequisite — ∃消去:由 ∃x∈D, P(x),可取一個新名字 a 表示某個滿足 P(a) 的元素;只要最後結論不含 a,就可用 a 推理。eq_replace · prerequisite — 等值代換:命題中的一個式子可換成與它相等的式子,命題的真假不變。forall_elim · prerequisite — ∀消去(代入特例):若 ∀x∈D, P(x) 成立且 a∈D,則 P(a) 成立。mko_dvd_def · cited — 對自然數 a、b,a∣b 當且僅當存在自然數 k 使 b=a·k。 · mko-natural-divisibilitynat_discrete · prerequisite — 自然數沒有中間值:對自然數 k 與 n,必有 k≤n 或 k≥n+1。L_rem_test · lemma — 對自然數 b 與正自然數 a:a∣b ⇔ b 除以 a 的餘數 r 為 0。操作前
a\mid b
操作後
\exists k\in\mathbb{N}:\ b=a\cdot k條件:a,b\in\mathbb{N}
規則:mko_dvd_def · 依賴:G1, G2, mko_dvd_def
葉節點依據:mko_dvd_def + def_unfold
依 MKO 的定義,a∣b 的意思是存在一個自然數 k(乘數見證)使 b=a·k。要證 a∣b,就要給出這樣的 k;要證 a∤b,就要說明沒有任何自然數 k 能做到。
操作前
84=6\cdot 14,\ 14\in\mathbb{N}操作後
6\mid 84
條件:無
規則:exists_intro · 依賴:S01, G3
葉節點依據:exists_intro + numeric_evaluation
6·14=84(N1),且 14 是自然數,所以 k=14 是見證,6∣84。
操作前
a\mid b\quad(a>0)
操作後
b\bmod a=0
條件:a>0
規則:L_rem_test · 依賴:S01, L_rem_test
葉節點依據:division_algorithm + exists_intro + order_basics
a>0 時,整除可以用餘數判定:依引理 L_rem_test(S03.1 到 S03.3 證明),a∣b 恰好當 b 除以 a 的餘數為 0。這把「找見證」換成一次可重算的帶餘除法。
操作前
87=6\cdot 14+3,\ 0\le 3<6
操作後
6\nmid 87
條件:6>0
規則:L_rem_test · 依賴:S03, G3
葉節點依據:division_algorithm + nat_discrete + order_basics + numeric_evaluation
87 除以 6 的餘數是 3≠0(N2、N3),依 S03 的等價,6∤87。直接核對也一致:6·14=84<87<90=6·15,而每個自然數 k 都有 k≤14(則 6k≤84)或 k≥15(則 6k≥90),所以沒有 k 使 6k=87。在有理數中 87/6=29/2=14.5,不是自然數。
操作前
10=4k,\ k\in\mathbb{N}\ ?操作後
4\nmid 10
條件:4\neq 0
規則:mul_inverse_nonzero · 依賴:S01, S03, G2
葉節點依據:mul_inverse_nonzero + frac_rules + numeric_evaluation
在有理數中 4k=10 唯一的解是 k=10/4=5/2(4≠0,可除)。5/2 不是自然數,依 G2 不能當見證,所以沒有自然數見證,4∤10。用 S03 核對:10=4·2+2,餘數 2≠0,結論相同。
操作前
a\in\mathbb{N}操作後
0=a\cdot 0,\ \text{so}\ a\mid 0條件:無
規則:exists_intro · 依賴:S01, mul_zero
葉節點依據:mul_zero + exists_intro + forall_intro
對任意自然數 a,a·0=0,而 0 是自然數,所以 k=0 是見證,a∣0。a 是任意的,包括 a=0。
操作前
0\mid b
操作後
b=0
條件:無
規則:mul_zero · 依賴:S01, mul_zero
葉節點依據:mul_zero + mul_comm + exists_intro
0∣b 表示存在自然數 k 使 b=0·k。但對每個 k 都有 0·k=0,所以這句話等於說 b=0。
操作前
0=0\cdot 0=0\cdot 5,\quad 5\neq 0
操作後
0\mid 0\ \text{with non-unique witness};\ 0\nmid 5條件:無
規則:mul_zero · 依賴:S07, G3
葉節點依據:mul_zero + numeric_evaluation
0∣0 成立,而且 k=0 與 k=5 都是見證(0·5=0,N9),見證不唯一。5≠0,所以依 S07,0∤5。可見「除數是 0 就一律不整除」是錯的:0∣0 為真。
操作前
b=a k=a k',\ a>0,\ k,k'\in\mathbb{N}操作後
k=k'
條件:a>0
規則:order_basics · 依賴:S01, order_basics
葉節點依據:order_basics + case_analysis + contradiction
依三分律,k<k′、k=k′、k>k′ 恰有一個成立。若 k<k′,因 a>0 得 ak<ak′,與 ak=ak′ 矛盾;k>k′ 同理。所以 k=k′:在見證存在時它唯一,亦即 a>0 時見證至多一個。這與 S08 中 a=0 的情形形成對比。
操作前
a\in\mathbb{N}操作後
a=a\cdot 1,\ \text{so}\ a\mid a條件:無
規則:exists_intro · 依賴:S01, mul_one
葉節點依據:mul_one + mul_comm + exists_intro
自反性:a·1=a,1 是自然數,所以 a∣a;包括 0∣0(0=0·1)。
操作前
a\mid b,\ b\mid c
操作後
a\mid c
條件:無
規則:exists_elim · 依賴:S01
葉節點依據:exists_elim + mul_assoc + exists_intro
遞移性:由 a∣b 取見證 k 使 b=ak;由 b∣c 取見證 l 使 c=bl(S11.1)。代入並用結合律得 c=a(kl),且 kl 是自然數(S11.2),所以 a∣c,見證是 kl。
操作前
6=3\cdot 2,\ 84=6\cdot 14
操作後
84=3\cdot 28,\ 3\mid 84
條件:無
規則:forall_elim · 依賴:S11, G3
葉節點依據:forall_elim + numeric_evaluation
3∣6 的見證 k=2,6∣84 的見證 l=14;依 S11,3∣84 的見證是 kl=28。核對:3·28=84,84 除以 3 的餘數為 0(N10 到 N12)。
操作前
(a,b)\in\mathbb{N}^2操作後
a=0:\ a\mid b\iff b=0;\quad a>0:\ a\mid b\iff b\bmod a=0
條件:無
規則:case_analysis · 依賴:S03, S07, S02, S04, S05, S08
葉節點依據:case_analysis + order_basics
判定程序:先看 a=0,此時 a∣b ⇔ b=0(S07);否則 a>0,a∣b ⇔ 餘數為 0(S03)。兩種情況涵蓋所有自然數 a。套用:(6,84) 餘數 0,整除;(6,87) 餘數 3,不整除;(4,10) 餘數 2,不整除;(0,0) 整除;(0,5) 不整除。
操作前
b=aq+r,\ 0\le r<a,\ q\in\mathbb{Z},\ b\ge 0操作後
q\ge 0,\ \text{so}\ q\in\mathbb{N}條件:a>0
規則:order_basics · 依賴:division_algorithm, order_basics
葉節點依據:division_algorithm + order_basics + contradiction
帶餘除法給出整數 q 與 r。若 q≤−1,則 aq≤−a,於是 b=aq+r≤−a+r<−a+a=0,與 b≥0 矛盾。所以 q≥0,q 是自然數。
操作前
b=aq+0,\ q\in\mathbb{N}操作後
a\mid b
條件:r=0
規則:exists_intro · 依賴:S03.1, S01
葉節點依據:exists_intro + add_zero
(⇐ 方向)若餘數 r=0,則 b=aq,而 q 是自然數(S03.1),所以 q 是見證,a∣b。
操作前
b=a\cdot k,\ k\in\mathbb{N}操作後
b\bmod a=0
條件:a>0
規則:division_algorithm · 依賴:S01, division_algorithm
葉節點依據:division_algorithm + add_zero
(⇒ 方向)若 b=ak,則 b=a·k+0,且 0≤0<a。帶餘除法的商與餘數唯一,所以 b 除以 a 的餘數就是 0(商就是 k)。S03.1 到 S03.3 合起來證得引理 L_rem_test。
操作前
b=ak,\ c=bl
操作後
c=(ak)l
條件:無
規則:eq_replace · 依賴:S01, exists_elim
葉節點依據:eq_replace
把 c=bl 中的 b 換成相等的 ak。
操作前
c=(ak)l
操作後
c=a(kl),\ kl\in\mathbb{N}條件:無
規則:mul_assoc · 依賴:S11.1, G1
葉節點依據:mul_assoc
乘法結合律給 (ak)l=a(kl);自然數的積仍是自然數(G1),所以 kl 是合法見證。
S13 · sufficient_goal_reduction · S03, S07, case_analysis — 目標 G:對每個數對正確判定。足夠條件 H:a=0 與 a>0 兩種情況各有已證的判準;H⇒G 由分情況論證。H 由 S03、S07 正向證成。S12 · premise_audit · S11, forall_elim, numeric_evaluation — 這是 S11 的一個實例並附數值核對;它不能取代一般證明。S11.2 · premise_audit · mul_assoc, G1 — 需要 ℕ 對乘法封閉;在有理數中這一步會允許非自然數見證。S11.1 · premise_audit · eq_replace — 等值代換。S11 · premise_audit · S01, exists_elim, mul_assoc — 結論不含暫取的名字 k、l,所以 ∃消去合法。不宣稱反向:a∣c 不推出 a∣b。S10 · premise_audit · mul_one, exists_intro — 只用乘法單位元。S09 · premise_audit · order_basics, case_analysis — 需要 a>0 才能保持嚴格不等;a=0 時結論不成立(S08)。S08 · premise_audit · S07, mul_zero — 只是 S07 的兩個實例與一個見證不唯一的例子。S07 · inverse_equivalence · mul_zero, exists_intro — 反向:若 b=0,取 k=0 得 b=0·0,所以 0∣b。兩向都成立。S06 · premise_audit · S01, mul_zero, exists_intro, forall_intro — 只用乘以零的性質;對每個 a 都成立,所以可全稱推廣。S05 · premise_audit · S01, S03, G2, mul_inverse_nonzero — 論證依賴「有理解唯一」:若唯一的解不是自然數,就沒有自然數解。有一個數值商不代表整除。S04 · premise_audit · S03, nat_discrete, order_basics — 否定需要排除所有 k,S03 的等價或 nat_discrete 的兩段夾擠都做到了這一點;只檢查幾個 k 不夠。S03.3 · premise_audit · division_algorithm — 關鍵是帶餘除法的唯一性;若只有存在性,不能由一種寫法推出餘數為 0。沒有使用引理本身。S03.2 · premise_audit · S03.1, exists_intro — 只用到 q 是自然數;沒有使用引理本身。S03.1 · premise_audit · division_algorithm, order_basics — 需要 a>0 與 b≥0;這保證商可以當自然數見證。S03 · inverse_equivalence · L_rem_test — 引理的兩個方向(S03.2、S03.3)都已證;前提 a>0 是帶餘除法所需。S02 · premise_audit · S01, exists_intro, numeric_evaluation — 存在性只需一個見證;這一步不宣稱見證唯一(唯一性見 S09)。S01 · premise_audit · G1, G2, mko_dvd_def — 此步只展開定義;見證限定為自然數(G2),不是有理數。MKO 指出的誤解:看到 b/a 是一個數就宣稱 a∣b。10/4=5/2 是有理數,但見證必須是自然數,所以 4∤10(S05)。判定要看自然數見證或餘數是否為 0。
MKO 指出的另一個誤解:把除數為零一律判成沒有整除關係。依定義 0∣b ⇔ b=0(S07),所以 0∣0 成立,0∤5。注意這裡沒有做「除以 0」,只是找乘數見證。
證明 6∤87 時,試 k=14、15 兩個值不夠;必須用餘數引理或 nat_discrete 的夾擠排除所有 k(S04)。同理,6∣3 不成立:3=6·(1/2) 的 1/2 不是自然數,3 除以 6 的餘數是 3。
reject — 見證必須是自然數;10=4·2+2,餘數 2≠0。reject — 0=0·0,所以 0∣0。reject — 對每個 k,0·k=0≠5。reject — 1/2 不是自然數;3=6·0+3,餘數 3≠0。reject — 0=0·0=0·5,k=0 與 k=5 都是見證。6∣84(見證 14);6∤87(餘數 3);4∤10(唯一的有理解 5/2 不是自然數,餘數 2);每個 a 都整除 0(見證 0);0∣b ⇔ b=0,所以 0∣0 而 0∤5,且 0∣0 的見證不唯一;a>0 時見證至多一個,存在時唯一;整除具自反性與遞移性,3∣84 的見證為 2·14=28。
14 個本稿宣告算術檢查;只支持所列算式。
b28a5edbd46279b1db2a3f3f48bb3f447e18899fc7700b425af628e5a943830098f9039a8ba739a667d2577ec46189e0e21243241b68c27c071f5fe0cfe48fffd7605f00b4dfae82833e7c47a8a473157438e68fNOT_MEASURED