This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: Two ways to say that A and B partition C (when A and B don't overlap and A is a part of C ). (Contributed by FL, 17-Nov-2008) (Proof shortened by JJ, 14-Jul-2021)
| Ref | Expression | ||
|---|---|---|---|
| Assertion | uneqdifeq | |- ( ( A C_ C /\ ( A i^i B ) = (/) ) -> ( ( A u. B ) = C <-> ( C \ A ) = B ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | uncom | |- ( B u. A ) = ( A u. B ) |
|
| 2 | eqtr | |- ( ( ( B u. A ) = ( A u. B ) /\ ( A u. B ) = C ) -> ( B u. A ) = C ) |
|
| 3 | 2 | eqcomd | |- ( ( ( B u. A ) = ( A u. B ) /\ ( A u. B ) = C ) -> C = ( B u. A ) ) |
| 4 | difeq1 | |- ( C = ( B u. A ) -> ( C \ A ) = ( ( B u. A ) \ A ) ) |
|
| 5 | difun2 | |- ( ( B u. A ) \ A ) = ( B \ A ) |
|
| 6 | eqtr | |- ( ( ( C \ A ) = ( ( B u. A ) \ A ) /\ ( ( B u. A ) \ A ) = ( B \ A ) ) -> ( C \ A ) = ( B \ A ) ) |
|
| 7 | incom | |- ( A i^i B ) = ( B i^i A ) |
|
| 8 | 7 | eqeq1i | |- ( ( A i^i B ) = (/) <-> ( B i^i A ) = (/) ) |
| 9 | disj3 | |- ( ( B i^i A ) = (/) <-> B = ( B \ A ) ) |
|
| 10 | 8 9 | bitri | |- ( ( A i^i B ) = (/) <-> B = ( B \ A ) ) |
| 11 | eqtr | |- ( ( ( C \ A ) = ( B \ A ) /\ ( B \ A ) = B ) -> ( C \ A ) = B ) |
|
| 12 | 11 | expcom | |- ( ( B \ A ) = B -> ( ( C \ A ) = ( B \ A ) -> ( C \ A ) = B ) ) |
| 13 | 12 | eqcoms | |- ( B = ( B \ A ) -> ( ( C \ A ) = ( B \ A ) -> ( C \ A ) = B ) ) |
| 14 | 10 13 | sylbi | |- ( ( A i^i B ) = (/) -> ( ( C \ A ) = ( B \ A ) -> ( C \ A ) = B ) ) |
| 15 | 6 14 | syl5com | |- ( ( ( C \ A ) = ( ( B u. A ) \ A ) /\ ( ( B u. A ) \ A ) = ( B \ A ) ) -> ( ( A i^i B ) = (/) -> ( C \ A ) = B ) ) |
| 16 | 4 5 15 | sylancl | |- ( C = ( B u. A ) -> ( ( A i^i B ) = (/) -> ( C \ A ) = B ) ) |
| 17 | 3 16 | syl | |- ( ( ( B u. A ) = ( A u. B ) /\ ( A u. B ) = C ) -> ( ( A i^i B ) = (/) -> ( C \ A ) = B ) ) |
| 18 | 1 17 | mpan | |- ( ( A u. B ) = C -> ( ( A i^i B ) = (/) -> ( C \ A ) = B ) ) |
| 19 | 18 | com12 | |- ( ( A i^i B ) = (/) -> ( ( A u. B ) = C -> ( C \ A ) = B ) ) |
| 20 | 19 | adantl | |- ( ( A C_ C /\ ( A i^i B ) = (/) ) -> ( ( A u. B ) = C -> ( C \ A ) = B ) ) |
| 21 | simpl | |- ( ( A C_ C /\ ( C \ A ) = B ) -> A C_ C ) |
|
| 22 | difssd | |- ( ( C \ A ) = B -> ( C \ A ) C_ C ) |
|
| 23 | sseq1 | |- ( ( C \ A ) = B -> ( ( C \ A ) C_ C <-> B C_ C ) ) |
|
| 24 | 22 23 | mpbid | |- ( ( C \ A ) = B -> B C_ C ) |
| 25 | 24 | adantl | |- ( ( A C_ C /\ ( C \ A ) = B ) -> B C_ C ) |
| 26 | 21 25 | unssd | |- ( ( A C_ C /\ ( C \ A ) = B ) -> ( A u. B ) C_ C ) |
| 27 | eqimss | |- ( ( C \ A ) = B -> ( C \ A ) C_ B ) |
|
| 28 | ssundif | |- ( C C_ ( A u. B ) <-> ( C \ A ) C_ B ) |
|
| 29 | 27 28 | sylibr | |- ( ( C \ A ) = B -> C C_ ( A u. B ) ) |
| 30 | 29 | adantl | |- ( ( A C_ C /\ ( C \ A ) = B ) -> C C_ ( A u. B ) ) |
| 31 | 26 30 | eqssd | |- ( ( A C_ C /\ ( C \ A ) = B ) -> ( A u. B ) = C ) |
| 32 | 31 | ex | |- ( A C_ C -> ( ( C \ A ) = B -> ( A u. B ) = C ) ) |
| 33 | 32 | adantr | |- ( ( A C_ C /\ ( A i^i B ) = (/) ) -> ( ( C \ A ) = B -> ( A u. B ) = C ) ) |
| 34 | 20 33 | impbid | |- ( ( A C_ C /\ ( A i^i B ) = (/) ) -> ( ( A u. B ) = C <-> ( C \ A ) = B ) ) |