Proof of Theorem xpcan
Step | Hyp | Ref
| Expression |
1 | | xp11 6078 |
. . 3
⊢ ((𝐶 ≠ ∅ ∧ 𝐴 ≠ ∅) → ((𝐶 × 𝐴) = (𝐶 × 𝐵) ↔ (𝐶 = 𝐶 ∧ 𝐴 = 𝐵))) |
2 | | eqid 2738 |
. . . 4
⊢ 𝐶 = 𝐶 |
3 | 2 | biantrur 531 |
. . 3
⊢ (𝐴 = 𝐵 ↔ (𝐶 = 𝐶 ∧ 𝐴 = 𝐵)) |
4 | 1, 3 | bitr4di 289 |
. 2
⊢ ((𝐶 ≠ ∅ ∧ 𝐴 ≠ ∅) → ((𝐶 × 𝐴) = (𝐶 × 𝐵) ↔ 𝐴 = 𝐵)) |
5 | | nne 2947 |
. . . 4
⊢ (¬
𝐴 ≠ ∅ ↔ 𝐴 = ∅) |
6 | | simpr 485 |
. . . . 5
⊢ ((𝐶 ≠ ∅ ∧ 𝐴 = ∅) → 𝐴 = ∅) |
7 | | xpeq2 5610 |
. . . . . . . . . 10
⊢ (𝐴 = ∅ → (𝐶 × 𝐴) = (𝐶 × ∅)) |
8 | | xp0 6061 |
. . . . . . . . . 10
⊢ (𝐶 × ∅) =
∅ |
9 | 7, 8 | eqtrdi 2794 |
. . . . . . . . 9
⊢ (𝐴 = ∅ → (𝐶 × 𝐴) = ∅) |
10 | 9 | eqeq1d 2740 |
. . . . . . . 8
⊢ (𝐴 = ∅ → ((𝐶 × 𝐴) = (𝐶 × 𝐵) ↔ ∅ = (𝐶 × 𝐵))) |
11 | | eqcom 2745 |
. . . . . . . 8
⊢ (∅
= (𝐶 × 𝐵) ↔ (𝐶 × 𝐵) = ∅) |
12 | 10, 11 | bitrdi 287 |
. . . . . . 7
⊢ (𝐴 = ∅ → ((𝐶 × 𝐴) = (𝐶 × 𝐵) ↔ (𝐶 × 𝐵) = ∅)) |
13 | 12 | adantl 482 |
. . . . . 6
⊢ ((𝐶 ≠ ∅ ∧ 𝐴 = ∅) → ((𝐶 × 𝐴) = (𝐶 × 𝐵) ↔ (𝐶 × 𝐵) = ∅)) |
14 | | df-ne 2944 |
. . . . . . . 8
⊢ (𝐶 ≠ ∅ ↔ ¬ 𝐶 = ∅) |
15 | | xpeq0 6063 |
. . . . . . . . 9
⊢ ((𝐶 × 𝐵) = ∅ ↔ (𝐶 = ∅ ∨ 𝐵 = ∅)) |
16 | | orel1 886 |
. . . . . . . . 9
⊢ (¬
𝐶 = ∅ → ((𝐶 = ∅ ∨ 𝐵 = ∅) → 𝐵 = ∅)) |
17 | 15, 16 | syl5bi 241 |
. . . . . . . 8
⊢ (¬
𝐶 = ∅ → ((𝐶 × 𝐵) = ∅ → 𝐵 = ∅)) |
18 | 14, 17 | sylbi 216 |
. . . . . . 7
⊢ (𝐶 ≠ ∅ → ((𝐶 × 𝐵) = ∅ → 𝐵 = ∅)) |
19 | 18 | adantr 481 |
. . . . . 6
⊢ ((𝐶 ≠ ∅ ∧ 𝐴 = ∅) → ((𝐶 × 𝐵) = ∅ → 𝐵 = ∅)) |
20 | 13, 19 | sylbid 239 |
. . . . 5
⊢ ((𝐶 ≠ ∅ ∧ 𝐴 = ∅) → ((𝐶 × 𝐴) = (𝐶 × 𝐵) → 𝐵 = ∅)) |
21 | | eqtr3 2764 |
. . . . 5
⊢ ((𝐴 = ∅ ∧ 𝐵 = ∅) → 𝐴 = 𝐵) |
22 | 6, 20, 21 | syl6an 681 |
. . . 4
⊢ ((𝐶 ≠ ∅ ∧ 𝐴 = ∅) → ((𝐶 × 𝐴) = (𝐶 × 𝐵) → 𝐴 = 𝐵)) |
23 | 5, 22 | sylan2b 594 |
. . 3
⊢ ((𝐶 ≠ ∅ ∧ ¬ 𝐴 ≠ ∅) → ((𝐶 × 𝐴) = (𝐶 × 𝐵) → 𝐴 = 𝐵)) |
24 | | xpeq2 5610 |
. . 3
⊢ (𝐴 = 𝐵 → (𝐶 × 𝐴) = (𝐶 × 𝐵)) |
25 | 23, 24 | impbid1 224 |
. 2
⊢ ((𝐶 ≠ ∅ ∧ ¬ 𝐴 ≠ ∅) → ((𝐶 × 𝐴) = (𝐶 × 𝐵) ↔ 𝐴 = 𝐵)) |
26 | 4, 25 | pm2.61dan 810 |
1
⊢ (𝐶 ≠ ∅ → ((𝐶 × 𝐴) = (𝐶 × 𝐵) ↔ 𝐴 = 𝐵)) |