This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: A binary union is well-founded iff its elements are. (Contributed by Mario Carneiro, 10-Jun-2013) (Revised by Mario Carneiro, 17-Nov-2014)
| Ref | Expression | ||
|---|---|---|---|
| Assertion | unwf | |- ( ( A e. U. ( R1 " On ) /\ B e. U. ( R1 " On ) ) <-> ( A u. B ) e. U. ( R1 " On ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | r1rankidb | |- ( A e. U. ( R1 " On ) -> A C_ ( R1 ` ( rank ` A ) ) ) |
|
| 2 | 1 | adantr | |- ( ( A e. U. ( R1 " On ) /\ B e. U. ( R1 " On ) ) -> A C_ ( R1 ` ( rank ` A ) ) ) |
| 3 | ssun1 | |- ( rank ` A ) C_ ( ( rank ` A ) u. ( rank ` B ) ) |
|
| 4 | rankdmr1 | |- ( rank ` A ) e. dom R1 |
|
| 5 | r1funlim | |- ( Fun R1 /\ Lim dom R1 ) |
|
| 6 | 5 | simpri | |- Lim dom R1 |
| 7 | limord | |- ( Lim dom R1 -> Ord dom R1 ) |
|
| 8 | 6 7 | ax-mp | |- Ord dom R1 |
| 9 | rankdmr1 | |- ( rank ` B ) e. dom R1 |
|
| 10 | ordunel | |- ( ( Ord dom R1 /\ ( rank ` A ) e. dom R1 /\ ( rank ` B ) e. dom R1 ) -> ( ( rank ` A ) u. ( rank ` B ) ) e. dom R1 ) |
|
| 11 | 8 4 9 10 | mp3an | |- ( ( rank ` A ) u. ( rank ` B ) ) e. dom R1 |
| 12 | r1ord3g | |- ( ( ( rank ` A ) e. dom R1 /\ ( ( rank ` A ) u. ( rank ` B ) ) e. dom R1 ) -> ( ( rank ` A ) C_ ( ( rank ` A ) u. ( rank ` B ) ) -> ( R1 ` ( rank ` A ) ) C_ ( R1 ` ( ( rank ` A ) u. ( rank ` B ) ) ) ) ) |
|
| 13 | 4 11 12 | mp2an | |- ( ( rank ` A ) C_ ( ( rank ` A ) u. ( rank ` B ) ) -> ( R1 ` ( rank ` A ) ) C_ ( R1 ` ( ( rank ` A ) u. ( rank ` B ) ) ) ) |
| 14 | 3 13 | ax-mp | |- ( R1 ` ( rank ` A ) ) C_ ( R1 ` ( ( rank ` A ) u. ( rank ` B ) ) ) |
| 15 | 2 14 | sstrdi | |- ( ( A e. U. ( R1 " On ) /\ B e. U. ( R1 " On ) ) -> A C_ ( R1 ` ( ( rank ` A ) u. ( rank ` B ) ) ) ) |
| 16 | r1rankidb | |- ( B e. U. ( R1 " On ) -> B C_ ( R1 ` ( rank ` B ) ) ) |
|
| 17 | 16 | adantl | |- ( ( A e. U. ( R1 " On ) /\ B e. U. ( R1 " On ) ) -> B C_ ( R1 ` ( rank ` B ) ) ) |
| 18 | ssun2 | |- ( rank ` B ) C_ ( ( rank ` A ) u. ( rank ` B ) ) |
|
| 19 | r1ord3g | |- ( ( ( rank ` B ) e. dom R1 /\ ( ( rank ` A ) u. ( rank ` B ) ) e. dom R1 ) -> ( ( rank ` B ) C_ ( ( rank ` A ) u. ( rank ` B ) ) -> ( R1 ` ( rank ` B ) ) C_ ( R1 ` ( ( rank ` A ) u. ( rank ` B ) ) ) ) ) |
|
| 20 | 9 11 19 | mp2an | |- ( ( rank ` B ) C_ ( ( rank ` A ) u. ( rank ` B ) ) -> ( R1 ` ( rank ` B ) ) C_ ( R1 ` ( ( rank ` A ) u. ( rank ` B ) ) ) ) |
| 21 | 18 20 | ax-mp | |- ( R1 ` ( rank ` B ) ) C_ ( R1 ` ( ( rank ` A ) u. ( rank ` B ) ) ) |
| 22 | 17 21 | sstrdi | |- ( ( A e. U. ( R1 " On ) /\ B e. U. ( R1 " On ) ) -> B C_ ( R1 ` ( ( rank ` A ) u. ( rank ` B ) ) ) ) |
| 23 | 15 22 | unssd | |- ( ( A e. U. ( R1 " On ) /\ B e. U. ( R1 " On ) ) -> ( A u. B ) C_ ( R1 ` ( ( rank ` A ) u. ( rank ` B ) ) ) ) |
| 24 | fvex | |- ( R1 ` ( ( rank ` A ) u. ( rank ` B ) ) ) e. _V |
|
| 25 | 24 | elpw2 | |- ( ( A u. B ) e. ~P ( R1 ` ( ( rank ` A ) u. ( rank ` B ) ) ) <-> ( A u. B ) C_ ( R1 ` ( ( rank ` A ) u. ( rank ` B ) ) ) ) |
| 26 | 23 25 | sylibr | |- ( ( A e. U. ( R1 " On ) /\ B e. U. ( R1 " On ) ) -> ( A u. B ) e. ~P ( R1 ` ( ( rank ` A ) u. ( rank ` B ) ) ) ) |
| 27 | r1sucg | |- ( ( ( rank ` A ) u. ( rank ` B ) ) e. dom R1 -> ( R1 ` suc ( ( rank ` A ) u. ( rank ` B ) ) ) = ~P ( R1 ` ( ( rank ` A ) u. ( rank ` B ) ) ) ) |
|
| 28 | 11 27 | ax-mp | |- ( R1 ` suc ( ( rank ` A ) u. ( rank ` B ) ) ) = ~P ( R1 ` ( ( rank ` A ) u. ( rank ` B ) ) ) |
| 29 | 26 28 | eleqtrrdi | |- ( ( A e. U. ( R1 " On ) /\ B e. U. ( R1 " On ) ) -> ( A u. B ) e. ( R1 ` suc ( ( rank ` A ) u. ( rank ` B ) ) ) ) |
| 30 | r1elwf | |- ( ( A u. B ) e. ( R1 ` suc ( ( rank ` A ) u. ( rank ` B ) ) ) -> ( A u. B ) e. U. ( R1 " On ) ) |
|
| 31 | 29 30 | syl | |- ( ( A e. U. ( R1 " On ) /\ B e. U. ( R1 " On ) ) -> ( A u. B ) e. U. ( R1 " On ) ) |
| 32 | ssun1 | |- A C_ ( A u. B ) |
|
| 33 | sswf | |- ( ( ( A u. B ) e. U. ( R1 " On ) /\ A C_ ( A u. B ) ) -> A e. U. ( R1 " On ) ) |
|
| 34 | 32 33 | mpan2 | |- ( ( A u. B ) e. U. ( R1 " On ) -> A e. U. ( R1 " On ) ) |
| 35 | ssun2 | |- B C_ ( A u. B ) |
|
| 36 | sswf | |- ( ( ( A u. B ) e. U. ( R1 " On ) /\ B C_ ( A u. B ) ) -> B e. U. ( R1 " On ) ) |
|
| 37 | 35 36 | mpan2 | |- ( ( A u. B ) e. U. ( R1 " On ) -> B e. U. ( R1 " On ) ) |
| 38 | 34 37 | jca | |- ( ( A u. B ) e. U. ( R1 " On ) -> ( A e. U. ( R1 " On ) /\ B e. U. ( R1 " On ) ) ) |
| 39 | 31 38 | impbii | |- ( ( A e. U. ( R1 " On ) /\ B e. U. ( R1 " On ) ) <-> ( A u. B ) e. U. ( R1 " On ) ) |