Proof of Theorem addcanpi
| Step | Hyp | Ref | Expression | 
|---|
| 1 |  | addclpi 10933 | . . . . . . . . . 10
⊢ ((𝐴 ∈ N ∧
𝐵 ∈ N)
→ (𝐴
+N 𝐵) ∈ N) | 
| 2 |  | eleq1 2828 | . . . . . . . . . 10
⊢ ((𝐴 +N
𝐵) = (𝐴 +N 𝐶) → ((𝐴 +N 𝐵) ∈ N ↔
(𝐴
+N 𝐶) ∈ N)) | 
| 3 | 1, 2 | imbitrid 244 | . . . . . . . . 9
⊢ ((𝐴 +N
𝐵) = (𝐴 +N 𝐶) → ((𝐴 ∈ N ∧ 𝐵 ∈ N) →
(𝐴
+N 𝐶) ∈ N)) | 
| 4 | 3 | imp 406 | . . . . . . . 8
⊢ (((𝐴 +N
𝐵) = (𝐴 +N 𝐶) ∧ (𝐴 ∈ N ∧ 𝐵 ∈ N)) →
(𝐴
+N 𝐶) ∈ N) | 
| 5 |  | dmaddpi 10931 | . . . . . . . . 9
⊢ dom
+N = (N ×
N) | 
| 6 |  | 0npi 10923 | . . . . . . . . 9
⊢  ¬
∅ ∈ N | 
| 7 | 5, 6 | ndmovrcl 7620 | . . . . . . . 8
⊢ ((𝐴 +N
𝐶) ∈ N
→ (𝐴 ∈
N ∧ 𝐶
∈ N)) | 
| 8 |  | simpr 484 | . . . . . . . 8
⊢ ((𝐴 ∈ N ∧
𝐶 ∈ N)
→ 𝐶 ∈
N) | 
| 9 | 4, 7, 8 | 3syl 18 | . . . . . . 7
⊢ (((𝐴 +N
𝐵) = (𝐴 +N 𝐶) ∧ (𝐴 ∈ N ∧ 𝐵 ∈ N)) →
𝐶 ∈
N) | 
| 10 |  | addpiord 10925 | . . . . . . . . . 10
⊢ ((𝐴 ∈ N ∧
𝐵 ∈ N)
→ (𝐴
+N 𝐵) = (𝐴 +o 𝐵)) | 
| 11 | 10 | adantr 480 | . . . . . . . . 9
⊢ (((𝐴 ∈ N ∧
𝐵 ∈ N)
∧ 𝐶 ∈
N) → (𝐴
+N 𝐵) = (𝐴 +o 𝐵)) | 
| 12 |  | addpiord 10925 | . . . . . . . . . 10
⊢ ((𝐴 ∈ N ∧
𝐶 ∈ N)
→ (𝐴
+N 𝐶) = (𝐴 +o 𝐶)) | 
| 13 | 12 | adantlr 715 | . . . . . . . . 9
⊢ (((𝐴 ∈ N ∧
𝐵 ∈ N)
∧ 𝐶 ∈
N) → (𝐴
+N 𝐶) = (𝐴 +o 𝐶)) | 
| 14 | 11, 13 | eqeq12d 2752 | . . . . . . . 8
⊢ (((𝐴 ∈ N ∧
𝐵 ∈ N)
∧ 𝐶 ∈
N) → ((𝐴
+N 𝐵) = (𝐴 +N 𝐶) ↔ (𝐴 +o 𝐵) = (𝐴 +o 𝐶))) | 
| 15 |  | pinn 10919 | . . . . . . . . . 10
⊢ (𝐴 ∈ N →
𝐴 ∈
ω) | 
| 16 |  | pinn 10919 | . . . . . . . . . 10
⊢ (𝐵 ∈ N →
𝐵 ∈
ω) | 
| 17 |  | pinn 10919 | . . . . . . . . . 10
⊢ (𝐶 ∈ N →
𝐶 ∈
ω) | 
| 18 |  | nnacan 8667 | . . . . . . . . . . 11
⊢ ((𝐴 ∈ ω ∧ 𝐵 ∈ ω ∧ 𝐶 ∈ ω) → ((𝐴 +o 𝐵) = (𝐴 +o 𝐶) ↔ 𝐵 = 𝐶)) | 
| 19 | 18 | biimpd 229 | . . . . . . . . . 10
⊢ ((𝐴 ∈ ω ∧ 𝐵 ∈ ω ∧ 𝐶 ∈ ω) → ((𝐴 +o 𝐵) = (𝐴 +o 𝐶) → 𝐵 = 𝐶)) | 
| 20 | 15, 16, 17, 19 | syl3an 1160 | . . . . . . . . 9
⊢ ((𝐴 ∈ N ∧
𝐵 ∈ N
∧ 𝐶 ∈
N) → ((𝐴
+o 𝐵) = (𝐴 +o 𝐶) → 𝐵 = 𝐶)) | 
| 21 | 20 | 3expa 1118 | . . . . . . . 8
⊢ (((𝐴 ∈ N ∧
𝐵 ∈ N)
∧ 𝐶 ∈
N) → ((𝐴
+o 𝐵) = (𝐴 +o 𝐶) → 𝐵 = 𝐶)) | 
| 22 | 14, 21 | sylbid 240 | . . . . . . 7
⊢ (((𝐴 ∈ N ∧
𝐵 ∈ N)
∧ 𝐶 ∈
N) → ((𝐴
+N 𝐵) = (𝐴 +N 𝐶) → 𝐵 = 𝐶)) | 
| 23 | 9, 22 | sylan2 593 | . . . . . 6
⊢ (((𝐴 ∈ N ∧
𝐵 ∈ N)
∧ ((𝐴
+N 𝐵) = (𝐴 +N 𝐶) ∧ (𝐴 ∈ N ∧ 𝐵 ∈ N)))
→ ((𝐴
+N 𝐵) = (𝐴 +N 𝐶) → 𝐵 = 𝐶)) | 
| 24 | 23 | exp32 420 | . . . . 5
⊢ ((𝐴 ∈ N ∧
𝐵 ∈ N)
→ ((𝐴
+N 𝐵) = (𝐴 +N 𝐶) → ((𝐴 ∈ N ∧ 𝐵 ∈ N) →
((𝐴
+N 𝐵) = (𝐴 +N 𝐶) → 𝐵 = 𝐶)))) | 
| 25 | 24 | imp4b 421 | . . . 4
⊢ (((𝐴 ∈ N ∧
𝐵 ∈ N)
∧ (𝐴
+N 𝐵) = (𝐴 +N 𝐶)) → (((𝐴 ∈ N ∧ 𝐵 ∈ N) ∧
(𝐴
+N 𝐵) = (𝐴 +N 𝐶)) → 𝐵 = 𝐶)) | 
| 26 | 25 | pm2.43i 52 | . . 3
⊢ (((𝐴 ∈ N ∧
𝐵 ∈ N)
∧ (𝐴
+N 𝐵) = (𝐴 +N 𝐶)) → 𝐵 = 𝐶) | 
| 27 | 26 | ex 412 | . 2
⊢ ((𝐴 ∈ N ∧
𝐵 ∈ N)
→ ((𝐴
+N 𝐵) = (𝐴 +N 𝐶) → 𝐵 = 𝐶)) | 
| 28 |  | oveq2 7440 | . 2
⊢ (𝐵 = 𝐶 → (𝐴 +N 𝐵) = (𝐴 +N 𝐶)) | 
| 29 | 27, 28 | impbid1 225 | 1
⊢ ((𝐴 ∈ N ∧
𝐵 ∈ N)
→ ((𝐴
+N 𝐵) = (𝐴 +N 𝐶) ↔ 𝐵 = 𝐶)) |