This is an inofficial mirror of http://metamath.tirix.org for personal testing of a visualizer extension only.
Description: The range of a function with a first-countable domain is itself first-countable. This is a variation of 1stcrestlem , with a not-free hypothesis replacing a disjoint variable constraint. (Contributed by Glauco Siliprandi, 24-Jan-2025)
| Ref | Expression | ||
|---|---|---|---|
| Hypothesis | rn1st.1 | |- F/_ x B |
|
| Assertion | rn1st | |- ( B ~<_ _om -> ran ( x e. B |-> C ) ~<_ _om ) |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | rn1st.1 | |- F/_ x B |
|
| 2 | ordom | |- Ord _om |
|
| 3 | reldom | |- Rel ~<_ |
|
| 4 | 3 | brrelex2i | |- ( B ~<_ _om -> _om e. _V ) |
| 5 | elong | |- ( _om e. _V -> ( _om e. On <-> Ord _om ) ) |
|
| 6 | 4 5 | syl | |- ( B ~<_ _om -> ( _om e. On <-> Ord _om ) ) |
| 7 | 2 6 | mpbiri | |- ( B ~<_ _om -> _om e. On ) |
| 8 | ondomen | |- ( ( _om e. On /\ B ~<_ _om ) -> B e. dom card ) |
|
| 9 | 7 8 | mpancom | |- ( B ~<_ _om -> B e. dom card ) |
| 10 | eqid | |- ( x e. B |-> C ) = ( x e. B |-> C ) |
|
| 11 | 1 10 | dmmptssf | |- dom ( x e. B |-> C ) C_ B |
| 12 | ssnum | |- ( ( B e. dom card /\ dom ( x e. B |-> C ) C_ B ) -> dom ( x e. B |-> C ) e. dom card ) |
|
| 13 | 9 11 12 | sylancl | |- ( B ~<_ _om -> dom ( x e. B |-> C ) e. dom card ) |
| 14 | funmpt | |- Fun ( x e. B |-> C ) |
|
| 15 | funforn | |- ( Fun ( x e. B |-> C ) <-> ( x e. B |-> C ) : dom ( x e. B |-> C ) -onto-> ran ( x e. B |-> C ) ) |
|
| 16 | 14 15 | mpbi | |- ( x e. B |-> C ) : dom ( x e. B |-> C ) -onto-> ran ( x e. B |-> C ) |
| 17 | fodomnum | |- ( dom ( x e. B |-> C ) e. dom card -> ( ( x e. B |-> C ) : dom ( x e. B |-> C ) -onto-> ran ( x e. B |-> C ) -> ran ( x e. B |-> C ) ~<_ dom ( x e. B |-> C ) ) ) |
|
| 18 | 13 16 17 | mpisyl | |- ( B ~<_ _om -> ran ( x e. B |-> C ) ~<_ dom ( x e. B |-> C ) ) |
| 19 | ctex | |- ( B ~<_ _om -> B e. _V ) |
|
| 20 | ssdomg | |- ( B e. _V -> ( dom ( x e. B |-> C ) C_ B -> dom ( x e. B |-> C ) ~<_ B ) ) |
|
| 21 | 19 11 20 | mpisyl | |- ( B ~<_ _om -> dom ( x e. B |-> C ) ~<_ B ) |
| 22 | domtr | |- ( ( dom ( x e. B |-> C ) ~<_ B /\ B ~<_ _om ) -> dom ( x e. B |-> C ) ~<_ _om ) |
|
| 23 | 21 22 | mpancom | |- ( B ~<_ _om -> dom ( x e. B |-> C ) ~<_ _om ) |
| 24 | domtr | |- ( ( ran ( x e. B |-> C ) ~<_ dom ( x e. B |-> C ) /\ dom ( x e. B |-> C ) ~<_ _om ) -> ran ( x e. B |-> C ) ~<_ _om ) |
|
| 25 | 18 23 24 | syl2anc | |- ( B ~<_ _om -> ran ( x e. B |-> C ) ~<_ _om ) |