Proof of Theorem addcanpi
Step | Hyp | Ref
| Expression |
1 | | addclpi 10648 |
. . . . . . . . . 10
⊢ ((𝐴 ∈ N ∧
𝐵 ∈ N)
→ (𝐴
+N 𝐵) ∈ N) |
2 | | eleq1 2826 |
. . . . . . . . . 10
⊢ ((𝐴 +N
𝐵) = (𝐴 +N 𝐶) → ((𝐴 +N 𝐵) ∈ N ↔
(𝐴
+N 𝐶) ∈ N)) |
3 | 1, 2 | syl5ib 243 |
. . . . . . . . 9
⊢ ((𝐴 +N
𝐵) = (𝐴 +N 𝐶) → ((𝐴 ∈ N ∧ 𝐵 ∈ N) →
(𝐴
+N 𝐶) ∈ N)) |
4 | 3 | imp 407 |
. . . . . . . 8
⊢ (((𝐴 +N
𝐵) = (𝐴 +N 𝐶) ∧ (𝐴 ∈ N ∧ 𝐵 ∈ N)) →
(𝐴
+N 𝐶) ∈ N) |
5 | | dmaddpi 10646 |
. . . . . . . . 9
⊢ dom
+N = (N ×
N) |
6 | | 0npi 10638 |
. . . . . . . . 9
⊢ ¬
∅ ∈ N |
7 | 5, 6 | ndmovrcl 7458 |
. . . . . . . 8
⊢ ((𝐴 +N
𝐶) ∈ N
→ (𝐴 ∈
N ∧ 𝐶
∈ N)) |
8 | | simpr 485 |
. . . . . . . 8
⊢ ((𝐴 ∈ N ∧
𝐶 ∈ N)
→ 𝐶 ∈
N) |
9 | 4, 7, 8 | 3syl 18 |
. . . . . . 7
⊢ (((𝐴 +N
𝐵) = (𝐴 +N 𝐶) ∧ (𝐴 ∈ N ∧ 𝐵 ∈ N)) →
𝐶 ∈
N) |
10 | | addpiord 10640 |
. . . . . . . . . 10
⊢ ((𝐴 ∈ N ∧
𝐵 ∈ N)
→ (𝐴
+N 𝐵) = (𝐴 +o 𝐵)) |
11 | 10 | adantr 481 |
. . . . . . . . 9
⊢ (((𝐴 ∈ N ∧
𝐵 ∈ N)
∧ 𝐶 ∈
N) → (𝐴
+N 𝐵) = (𝐴 +o 𝐵)) |
12 | | addpiord 10640 |
. . . . . . . . . 10
⊢ ((𝐴 ∈ N ∧
𝐶 ∈ N)
→ (𝐴
+N 𝐶) = (𝐴 +o 𝐶)) |
13 | 12 | adantlr 712 |
. . . . . . . . 9
⊢ (((𝐴 ∈ N ∧
𝐵 ∈ N)
∧ 𝐶 ∈
N) → (𝐴
+N 𝐶) = (𝐴 +o 𝐶)) |
14 | 11, 13 | eqeq12d 2754 |
. . . . . . . 8
⊢ (((𝐴 ∈ N ∧
𝐵 ∈ N)
∧ 𝐶 ∈
N) → ((𝐴
+N 𝐵) = (𝐴 +N 𝐶) ↔ (𝐴 +o 𝐵) = (𝐴 +o 𝐶))) |
15 | | pinn 10634 |
. . . . . . . . . 10
⊢ (𝐴 ∈ N →
𝐴 ∈
ω) |
16 | | pinn 10634 |
. . . . . . . . . 10
⊢ (𝐵 ∈ N →
𝐵 ∈
ω) |
17 | | pinn 10634 |
. . . . . . . . . 10
⊢ (𝐶 ∈ N →
𝐶 ∈
ω) |
18 | | nnacan 8459 |
. . . . . . . . . . 11
⊢ ((𝐴 ∈ ω ∧ 𝐵 ∈ ω ∧ 𝐶 ∈ ω) → ((𝐴 +o 𝐵) = (𝐴 +o 𝐶) ↔ 𝐵 = 𝐶)) |
19 | 18 | biimpd 228 |
. . . . . . . . . 10
⊢ ((𝐴 ∈ ω ∧ 𝐵 ∈ ω ∧ 𝐶 ∈ ω) → ((𝐴 +o 𝐵) = (𝐴 +o 𝐶) → 𝐵 = 𝐶)) |
20 | 15, 16, 17, 19 | syl3an 1159 |
. . . . . . . . 9
⊢ ((𝐴 ∈ N ∧
𝐵 ∈ N
∧ 𝐶 ∈
N) → ((𝐴
+o 𝐵) = (𝐴 +o 𝐶) → 𝐵 = 𝐶)) |
21 | 20 | 3expa 1117 |
. . . . . . . 8
⊢ (((𝐴 ∈ N ∧
𝐵 ∈ N)
∧ 𝐶 ∈
N) → ((𝐴
+o 𝐵) = (𝐴 +o 𝐶) → 𝐵 = 𝐶)) |
22 | 14, 21 | sylbid 239 |
. . . . . . 7
⊢ (((𝐴 ∈ N ∧
𝐵 ∈ N)
∧ 𝐶 ∈
N) → ((𝐴
+N 𝐵) = (𝐴 +N 𝐶) → 𝐵 = 𝐶)) |
23 | 9, 22 | sylan2 593 |
. . . . . 6
⊢ (((𝐴 ∈ N ∧
𝐵 ∈ N)
∧ ((𝐴
+N 𝐵) = (𝐴 +N 𝐶) ∧ (𝐴 ∈ N ∧ 𝐵 ∈ N)))
→ ((𝐴
+N 𝐵) = (𝐴 +N 𝐶) → 𝐵 = 𝐶)) |
24 | 23 | exp32 421 |
. . . . 5
⊢ ((𝐴 ∈ N ∧
𝐵 ∈ N)
→ ((𝐴
+N 𝐵) = (𝐴 +N 𝐶) → ((𝐴 ∈ N ∧ 𝐵 ∈ N) →
((𝐴
+N 𝐵) = (𝐴 +N 𝐶) → 𝐵 = 𝐶)))) |
25 | 24 | imp4b 422 |
. . . 4
⊢ (((𝐴 ∈ N ∧
𝐵 ∈ N)
∧ (𝐴
+N 𝐵) = (𝐴 +N 𝐶)) → (((𝐴 ∈ N ∧ 𝐵 ∈ N) ∧
(𝐴
+N 𝐵) = (𝐴 +N 𝐶)) → 𝐵 = 𝐶)) |
26 | 25 | pm2.43i 52 |
. . 3
⊢ (((𝐴 ∈ N ∧
𝐵 ∈ N)
∧ (𝐴
+N 𝐵) = (𝐴 +N 𝐶)) → 𝐵 = 𝐶) |
27 | 26 | ex 413 |
. 2
⊢ ((𝐴 ∈ N ∧
𝐵 ∈ N)
→ ((𝐴
+N 𝐵) = (𝐴 +N 𝐶) → 𝐵 = 𝐶)) |
28 | | oveq2 7283 |
. 2
⊢ (𝐵 = 𝐶 → (𝐴 +N 𝐵) = (𝐴 +N 𝐶)) |
29 | 27, 28 | impbid1 224 |
1
⊢ ((𝐴 ∈ N ∧
𝐵 ∈ N)
→ ((𝐴
+N 𝐵) = (𝐴 +N 𝐶) ↔ 𝐵 = 𝐶)) |