New Foundations Explorer |
< Previous
Next >
Nearby theorems |
||
Mirrors > Home > NFE Home > Th. List > xpcan | GIF version |
Description: Cancellation law for cross-product. (Contributed by set.mm contributors, 30-Aug-2011.) |
Ref | Expression |
---|---|
xpcan | ⊢ (C ≠ ∅ → ((C × A) = (C × B) ↔ A = B)) |
Step | Hyp | Ref | Expression |
---|---|---|---|
1 | xp11 5057 | . . 3 ⊢ ((C ≠ ∅ ∧ A ≠ ∅) → ((C × A) = (C × B) ↔ (C = C ∧ A = B))) | |
2 | eqid 2353 | . . . 4 ⊢ C = C | |
3 | 2 | biantrur 492 | . . 3 ⊢ (A = B ↔ (C = C ∧ A = B)) |
4 | 1, 3 | syl6bbr 254 | . 2 ⊢ ((C ≠ ∅ ∧ A ≠ ∅) → ((C × A) = (C × B) ↔ A = B)) |
5 | nne 2521 | . . . 4 ⊢ (¬ A ≠ ∅ ↔ A = ∅) | |
6 | xpeq2 4800 | . . . . . . . . . . 11 ⊢ (A = ∅ → (C × A) = (C × ∅)) | |
7 | xp0 5045 | . . . . . . . . . . 11 ⊢ (C × ∅) = ∅ | |
8 | 6, 7 | syl6eq 2401 | . . . . . . . . . 10 ⊢ (A = ∅ → (C × A) = ∅) |
9 | 8 | eqeq1d 2361 | . . . . . . . . 9 ⊢ (A = ∅ → ((C × A) = (C × B) ↔ ∅ = (C × B))) |
10 | eqcom 2355 | . . . . . . . . 9 ⊢ (∅ = (C × B) ↔ (C × B) = ∅) | |
11 | 9, 10 | syl6bb 252 | . . . . . . . 8 ⊢ (A = ∅ → ((C × A) = (C × B) ↔ (C × B) = ∅)) |
12 | 11 | adantl 452 | . . . . . . 7 ⊢ ((C ≠ ∅ ∧ A = ∅) → ((C × A) = (C × B) ↔ (C × B) = ∅)) |
13 | df-ne 2519 | . . . . . . . . 9 ⊢ (C ≠ ∅ ↔ ¬ C = ∅) | |
14 | xpeq0 5047 | . . . . . . . . . 10 ⊢ ((C × B) = ∅ ↔ (C = ∅ ∨ B = ∅)) | |
15 | orel1 371 | . . . . . . . . . 10 ⊢ (¬ C = ∅ → ((C = ∅ ∨ B = ∅) → B = ∅)) | |
16 | 14, 15 | syl5bi 208 | . . . . . . . . 9 ⊢ (¬ C = ∅ → ((C × B) = ∅ → B = ∅)) |
17 | 13, 16 | sylbi 187 | . . . . . . . 8 ⊢ (C ≠ ∅ → ((C × B) = ∅ → B = ∅)) |
18 | 17 | adantr 451 | . . . . . . 7 ⊢ ((C ≠ ∅ ∧ A = ∅) → ((C × B) = ∅ → B = ∅)) |
19 | 12, 18 | sylbid 206 | . . . . . 6 ⊢ ((C ≠ ∅ ∧ A = ∅) → ((C × A) = (C × B) → B = ∅)) |
20 | simpr 447 | . . . . . 6 ⊢ ((C ≠ ∅ ∧ A = ∅) → A = ∅) | |
21 | 19, 20 | jctild 527 | . . . . 5 ⊢ ((C ≠ ∅ ∧ A = ∅) → ((C × A) = (C × B) → (A = ∅ ∧ B = ∅))) |
22 | eqtr3 2372 | . . . . 5 ⊢ ((A = ∅ ∧ B = ∅) → A = B) | |
23 | 21, 22 | syl6 29 | . . . 4 ⊢ ((C ≠ ∅ ∧ A = ∅) → ((C × A) = (C × B) → A = B)) |
24 | 5, 23 | sylan2b 461 | . . 3 ⊢ ((C ≠ ∅ ∧ ¬ A ≠ ∅) → ((C × A) = (C × B) → A = B)) |
25 | xpeq2 4800 | . . 3 ⊢ (A = B → (C × A) = (C × B)) | |
26 | 24, 25 | impbid1 194 | . 2 ⊢ ((C ≠ ∅ ∧ ¬ A ≠ ∅) → ((C × A) = (C × B) ↔ A = B)) |
27 | 4, 26 | pm2.61dan 766 | 1 ⊢ (C ≠ ∅ → ((C × A) = (C × B) ↔ A = B)) |
Colors of variables: wff setvar class |
Syntax hints: ¬ wn 3 → wi 4 ↔ wb 176 ∨ wo 357 ∧ wa 358 = wceq 1642 ≠ wne 2517 ∅c0 3551 × cxp 4771 |
This theorem was proved from axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1546 ax-5 1557 ax-17 1616 ax-9 1654 ax-8 1675 ax-13 1712 ax-14 1714 ax-6 1729 ax-7 1734 ax-11 1746 ax-12 1925 ax-ext 2334 ax-nin 4079 ax-xp 4080 ax-cnv 4081 ax-1c 4082 ax-sset 4083 ax-si 4084 ax-ins2 4085 ax-ins3 4086 ax-typlower 4087 ax-sn 4088 |
This theorem depends on definitions: df-bi 177 df-or 359 df-an 360 df-3or 935 df-3an 936 df-nan 1288 df-tru 1319 df-ex 1542 df-nf 1545 df-sb 1649 df-eu 2208 df-mo 2209 df-clab 2340 df-cleq 2346 df-clel 2349 df-nfc 2479 df-ne 2519 df-ral 2620 df-rex 2621 df-reu 2622 df-rmo 2623 df-rab 2624 df-v 2862 df-sbc 3048 df-nin 3212 df-compl 3213 df-in 3214 df-un 3215 df-dif 3216 df-symdif 3217 df-ss 3260 df-pss 3262 df-nul 3552 df-if 3664 df-pw 3725 df-sn 3742 df-pr 3743 df-uni 3893 df-int 3928 df-opk 4059 df-1c 4137 df-pw1 4138 df-uni1 4139 df-xpk 4186 df-cnvk 4187 df-ins2k 4188 df-ins3k 4189 df-imak 4190 df-cok 4191 df-p6 4192 df-sik 4193 df-ssetk 4194 df-imagek 4195 df-idk 4196 df-iota 4340 df-0c 4378 df-addc 4379 df-nnc 4380 df-fin 4381 df-lefin 4441 df-ltfin 4442 df-ncfin 4443 df-tfin 4444 df-evenfin 4445 df-oddfin 4446 df-sfin 4447 df-spfin 4448 df-phi 4566 df-op 4567 df-proj1 4568 df-proj2 4569 df-opab 4624 df-br 4641 df-ima 4728 df-xp 4785 df-cnv 4786 df-rn 4787 df-dm 4788 |
This theorem is referenced by: (None) |
Copyright terms: Public domain | W3C validator |