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 5056 | . . 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 2520 | . . . 4 ⊢ (¬ A ≠ ∅ ↔ A = ∅) | |
6 | xpeq2 4799 | . . . . . . . . . . 11 ⊢ (A = ∅ → (C × A) = (C × ∅)) | |
7 | xp0 5044 | . . . . . . . . . . 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 2518 | . . . . . . . . 9 ⊢ (C ≠ ∅ ↔ ¬ C = ∅) | |
14 | xpeq0 5046 | . . . . . . . . . 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 4799 | . . 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 2516 ∅c0 3550 × cxp 4770 |
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 4078 ax-xp 4079 ax-cnv 4080 ax-1c 4081 ax-sset 4082 ax-si 4083 ax-ins2 4084 ax-ins3 4085 ax-typlower 4086 ax-sn 4087 |
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 2478 df-ne 2518 df-ral 2619 df-rex 2620 df-reu 2621 df-rmo 2622 df-rab 2623 df-v 2861 df-sbc 3047 df-nin 3211 df-compl 3212 df-in 3213 df-un 3214 df-dif 3215 df-symdif 3216 df-ss 3259 df-pss 3261 df-nul 3551 df-if 3663 df-pw 3724 df-sn 3741 df-pr 3742 df-uni 3892 df-int 3927 df-opk 4058 df-1c 4136 df-pw1 4137 df-uni1 4138 df-xpk 4185 df-cnvk 4186 df-ins2k 4187 df-ins3k 4188 df-imak 4189 df-cok 4190 df-p6 4191 df-sik 4192 df-ssetk 4193 df-imagek 4194 df-idk 4195 df-iota 4339 df-0c 4377 df-addc 4378 df-nnc 4379 df-fin 4380 df-lefin 4440 df-ltfin 4441 df-ncfin 4442 df-tfin 4443 df-evenfin 4444 df-oddfin 4445 df-sfin 4446 df-spfin 4447 df-phi 4565 df-op 4566 df-proj1 4567 df-proj2 4568 df-opab 4623 df-br 4640 df-ima 4727 df-xp 4784 df-cnv 4785 df-rn 4786 df-dm 4787 |
This theorem is referenced by: (None) |
Copyright terms: Public domain | W3C validator |