This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: Obsolete version of fodomfib as of 23-Jun-2025. (Contributed by NM, 23-Mar-2006) (Proof modification is discouraged.) (New usage is discouraged.)
| Ref | Expression | ||
|---|---|---|---|
| Assertion | fodomfibOLD | |- ( A e. Fin -> ( ( A =/= (/) /\ E. f f : A -onto-> B ) <-> ( (/) ~< B /\ B ~<_ A ) ) ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | fof | |- ( f : A -onto-> B -> f : A --> B ) |
|
| 2 | 1 | fdmd | |- ( f : A -onto-> B -> dom f = A ) |
| 3 | 2 | eqeq1d | |- ( f : A -onto-> B -> ( dom f = (/) <-> A = (/) ) ) |
| 4 | dm0rn0 | |- ( dom f = (/) <-> ran f = (/) ) |
|
| 5 | forn | |- ( f : A -onto-> B -> ran f = B ) |
|
| 6 | 5 | eqeq1d | |- ( f : A -onto-> B -> ( ran f = (/) <-> B = (/) ) ) |
| 7 | 4 6 | bitrid | |- ( f : A -onto-> B -> ( dom f = (/) <-> B = (/) ) ) |
| 8 | 3 7 | bitr3d | |- ( f : A -onto-> B -> ( A = (/) <-> B = (/) ) ) |
| 9 | 8 | necon3bid | |- ( f : A -onto-> B -> ( A =/= (/) <-> B =/= (/) ) ) |
| 10 | 9 | biimpac | |- ( ( A =/= (/) /\ f : A -onto-> B ) -> B =/= (/) ) |
| 11 | 10 | adantll | |- ( ( ( A e. Fin /\ A =/= (/) ) /\ f : A -onto-> B ) -> B =/= (/) ) |
| 12 | vex | |- f e. _V |
|
| 13 | 12 | rnex | |- ran f e. _V |
| 14 | 5 13 | eqeltrrdi | |- ( f : A -onto-> B -> B e. _V ) |
| 15 | 14 | adantl | |- ( ( A e. Fin /\ f : A -onto-> B ) -> B e. _V ) |
| 16 | 0sdomg | |- ( B e. _V -> ( (/) ~< B <-> B =/= (/) ) ) |
|
| 17 | 15 16 | syl | |- ( ( A e. Fin /\ f : A -onto-> B ) -> ( (/) ~< B <-> B =/= (/) ) ) |
| 18 | 17 | adantlr | |- ( ( ( A e. Fin /\ A =/= (/) ) /\ f : A -onto-> B ) -> ( (/) ~< B <-> B =/= (/) ) ) |
| 19 | 11 18 | mpbird | |- ( ( ( A e. Fin /\ A =/= (/) ) /\ f : A -onto-> B ) -> (/) ~< B ) |
| 20 | 19 | ex | |- ( ( A e. Fin /\ A =/= (/) ) -> ( f : A -onto-> B -> (/) ~< B ) ) |
| 21 | fodomfi | |- ( ( A e. Fin /\ f : A -onto-> B ) -> B ~<_ A ) |
|
| 22 | 21 | ex | |- ( A e. Fin -> ( f : A -onto-> B -> B ~<_ A ) ) |
| 23 | 22 | adantr | |- ( ( A e. Fin /\ A =/= (/) ) -> ( f : A -onto-> B -> B ~<_ A ) ) |
| 24 | 20 23 | jcad | |- ( ( A e. Fin /\ A =/= (/) ) -> ( f : A -onto-> B -> ( (/) ~< B /\ B ~<_ A ) ) ) |
| 25 | 24 | exlimdv | |- ( ( A e. Fin /\ A =/= (/) ) -> ( E. f f : A -onto-> B -> ( (/) ~< B /\ B ~<_ A ) ) ) |
| 26 | 25 | expimpd | |- ( A e. Fin -> ( ( A =/= (/) /\ E. f f : A -onto-> B ) -> ( (/) ~< B /\ B ~<_ A ) ) ) |
| 27 | sdomdomtr | |- ( ( (/) ~< B /\ B ~<_ A ) -> (/) ~< A ) |
|
| 28 | 0sdomg | |- ( A e. Fin -> ( (/) ~< A <-> A =/= (/) ) ) |
|
| 29 | 27 28 | imbitrid | |- ( A e. Fin -> ( ( (/) ~< B /\ B ~<_ A ) -> A =/= (/) ) ) |
| 30 | fodomr | |- ( ( (/) ~< B /\ B ~<_ A ) -> E. f f : A -onto-> B ) |
|
| 31 | 29 30 | jca2 | |- ( A e. Fin -> ( ( (/) ~< B /\ B ~<_ A ) -> ( A =/= (/) /\ E. f f : A -onto-> B ) ) ) |
| 32 | 26 31 | impbid | |- ( A e. Fin -> ( ( A =/= (/) /\ E. f f : A -onto-> B ) <-> ( (/) ~< B /\ B ~<_ A ) ) ) |