Metamath Proof Explorer


Theorem ipodrsfi

Description: Finite upper bound property for directed collections of sets. (Contributed by Stefan O'Rear, 2-Apr-2015)

Ref Expression
Assertion ipodrsfi
|- ( ( ( toInc ` A ) e. Dirset /\ X C_ A /\ X e. Fin ) -> E. z e. A U. X C_ z )

Proof

Step Hyp Ref Expression
1 simp2
 |-  ( ( ( toInc ` A ) e. Dirset /\ X C_ A /\ X e. Fin ) -> X C_ A )
2 ipodrscl
 |-  ( ( toInc ` A ) e. Dirset -> A e. _V )
3 eqid
 |-  ( toInc ` A ) = ( toInc ` A )
4 3 ipobas
 |-  ( A e. _V -> A = ( Base ` ( toInc ` A ) ) )
5 2 4 syl
 |-  ( ( toInc ` A ) e. Dirset -> A = ( Base ` ( toInc ` A ) ) )
6 5 3ad2ant1
 |-  ( ( ( toInc ` A ) e. Dirset /\ X C_ A /\ X e. Fin ) -> A = ( Base ` ( toInc ` A ) ) )
7 1 6 sseqtrd
 |-  ( ( ( toInc ` A ) e. Dirset /\ X C_ A /\ X e. Fin ) -> X C_ ( Base ` ( toInc ` A ) ) )
8 eqid
 |-  ( Base ` ( toInc ` A ) ) = ( Base ` ( toInc ` A ) )
9 eqid
 |-  ( le ` ( toInc ` A ) ) = ( le ` ( toInc ` A ) )
10 8 9 drsdirfi
 |-  ( ( ( toInc ` A ) e. Dirset /\ X C_ ( Base ` ( toInc ` A ) ) /\ X e. Fin ) -> E. z e. ( Base ` ( toInc ` A ) ) A. w e. X w ( le ` ( toInc ` A ) ) z )
11 7 10 syld3an2
 |-  ( ( ( toInc ` A ) e. Dirset /\ X C_ A /\ X e. Fin ) -> E. z e. ( Base ` ( toInc ` A ) ) A. w e. X w ( le ` ( toInc ` A ) ) z )
12 6 rexeqdv
 |-  ( ( ( toInc ` A ) e. Dirset /\ X C_ A /\ X e. Fin ) -> ( E. z e. A A. w e. X w ( le ` ( toInc ` A ) ) z <-> E. z e. ( Base ` ( toInc ` A ) ) A. w e. X w ( le ` ( toInc ` A ) ) z ) )
13 2 3ad2ant1
 |-  ( ( ( toInc ` A ) e. Dirset /\ X C_ A /\ X e. Fin ) -> A e. _V )
14 13 adantr
 |-  ( ( ( ( toInc ` A ) e. Dirset /\ X C_ A /\ X e. Fin ) /\ ( z e. A /\ w e. X ) ) -> A e. _V )
15 1 sselda
 |-  ( ( ( ( toInc ` A ) e. Dirset /\ X C_ A /\ X e. Fin ) /\ w e. X ) -> w e. A )
16 15 adantrl
 |-  ( ( ( ( toInc ` A ) e. Dirset /\ X C_ A /\ X e. Fin ) /\ ( z e. A /\ w e. X ) ) -> w e. A )
17 simprl
 |-  ( ( ( ( toInc ` A ) e. Dirset /\ X C_ A /\ X e. Fin ) /\ ( z e. A /\ w e. X ) ) -> z e. A )
18 3 9 ipole
 |-  ( ( A e. _V /\ w e. A /\ z e. A ) -> ( w ( le ` ( toInc ` A ) ) z <-> w C_ z ) )
19 14 16 17 18 syl3anc
 |-  ( ( ( ( toInc ` A ) e. Dirset /\ X C_ A /\ X e. Fin ) /\ ( z e. A /\ w e. X ) ) -> ( w ( le ` ( toInc ` A ) ) z <-> w C_ z ) )
20 19 anassrs
 |-  ( ( ( ( ( toInc ` A ) e. Dirset /\ X C_ A /\ X e. Fin ) /\ z e. A ) /\ w e. X ) -> ( w ( le ` ( toInc ` A ) ) z <-> w C_ z ) )
21 20 ralbidva
 |-  ( ( ( ( toInc ` A ) e. Dirset /\ X C_ A /\ X e. Fin ) /\ z e. A ) -> ( A. w e. X w ( le ` ( toInc ` A ) ) z <-> A. w e. X w C_ z ) )
22 unissb
 |-  ( U. X C_ z <-> A. w e. X w C_ z )
23 21 22 bitr4di
 |-  ( ( ( ( toInc ` A ) e. Dirset /\ X C_ A /\ X e. Fin ) /\ z e. A ) -> ( A. w e. X w ( le ` ( toInc ` A ) ) z <-> U. X C_ z ) )
24 23 rexbidva
 |-  ( ( ( toInc ` A ) e. Dirset /\ X C_ A /\ X e. Fin ) -> ( E. z e. A A. w e. X w ( le ` ( toInc ` A ) ) z <-> E. z e. A U. X C_ z ) )
25 12 24 bitr3d
 |-  ( ( ( toInc ` A ) e. Dirset /\ X C_ A /\ X e. Fin ) -> ( E. z e. ( Base ` ( toInc ` A ) ) A. w e. X w ( le ` ( toInc ` A ) ) z <-> E. z e. A U. X C_ z ) )
26 11 25 mpbid
 |-  ( ( ( toInc ` A ) e. Dirset /\ X C_ A /\ X e. Fin ) -> E. z e. A U. X C_ z )