Metamath Proof Explorer


Theorem ingru

Description: The intersection of a universe with a class that acts like a universe is another universe. (Contributed by Mario Carneiro, 10-Jun-2013)

Ref Expression
Assertion ingru
|- ( ( Tr A /\ A. x e. A ( ~P x e. A /\ A. y e. A { x , y } e. A /\ A. y ( y : x --> A -> U. ran y e. A ) ) ) -> ( U e. Univ -> ( U i^i A ) e. Univ ) )

Proof

Step Hyp Ref Expression
1 ineq1
 |-  ( u = U -> ( u i^i A ) = ( U i^i A ) )
2 1 eleq1d
 |-  ( u = U -> ( ( u i^i A ) e. Univ <-> ( U i^i A ) e. Univ ) )
3 2 imbi2d
 |-  ( u = U -> ( ( ( Tr A /\ A. x e. A ( ~P x e. A /\ A. y e. A { x , y } e. A /\ A. y ( y : x --> A -> U. ran y e. A ) ) ) -> ( u i^i A ) e. Univ ) <-> ( ( Tr A /\ A. x e. A ( ~P x e. A /\ A. y e. A { x , y } e. A /\ A. y ( y : x --> A -> U. ran y e. A ) ) ) -> ( U i^i A ) e. Univ ) ) )
4 elgrug
 |-  ( u e. Univ -> ( u e. Univ <-> ( Tr u /\ A. x e. u ( ~P x e. u /\ A. y e. u { x , y } e. u /\ A. y e. ( u ^m x ) U. ran y e. u ) ) ) )
5 4 ibi
 |-  ( u e. Univ -> ( Tr u /\ A. x e. u ( ~P x e. u /\ A. y e. u { x , y } e. u /\ A. y e. ( u ^m x ) U. ran y e. u ) ) )
6 trin
 |-  ( ( Tr u /\ Tr A ) -> Tr ( u i^i A ) )
7 6 ex
 |-  ( Tr u -> ( Tr A -> Tr ( u i^i A ) ) )
8 inss1
 |-  ( u i^i A ) C_ u
9 ssralv
 |-  ( ( u i^i A ) C_ u -> ( A. x e. u ( ~P x e. u /\ A. y e. u { x , y } e. u /\ A. y e. ( u ^m x ) U. ran y e. u ) -> A. x e. ( u i^i A ) ( ~P x e. u /\ A. y e. u { x , y } e. u /\ A. y e. ( u ^m x ) U. ran y e. u ) ) )
10 8 9 ax-mp
 |-  ( A. x e. u ( ~P x e. u /\ A. y e. u { x , y } e. u /\ A. y e. ( u ^m x ) U. ran y e. u ) -> A. x e. ( u i^i A ) ( ~P x e. u /\ A. y e. u { x , y } e. u /\ A. y e. ( u ^m x ) U. ran y e. u ) )
11 inss2
 |-  ( u i^i A ) C_ A
12 ssralv
 |-  ( ( u i^i A ) C_ A -> ( A. x e. A ( ~P x e. A /\ A. y e. A { x , y } e. A /\ A. y ( y : x --> A -> U. ran y e. A ) ) -> A. x e. ( u i^i A ) ( ~P x e. A /\ A. y e. A { x , y } e. A /\ A. y ( y : x --> A -> U. ran y e. A ) ) ) )
13 11 12 ax-mp
 |-  ( A. x e. A ( ~P x e. A /\ A. y e. A { x , y } e. A /\ A. y ( y : x --> A -> U. ran y e. A ) ) -> A. x e. ( u i^i A ) ( ~P x e. A /\ A. y e. A { x , y } e. A /\ A. y ( y : x --> A -> U. ran y e. A ) ) )
14 elin
 |-  ( ~P x e. ( u i^i A ) <-> ( ~P x e. u /\ ~P x e. A ) )
15 14 simplbi2
 |-  ( ~P x e. u -> ( ~P x e. A -> ~P x e. ( u i^i A ) ) )
16 ssralv
 |-  ( ( u i^i A ) C_ u -> ( A. y e. u { x , y } e. u -> A. y e. ( u i^i A ) { x , y } e. u ) )
17 8 16 ax-mp
 |-  ( A. y e. u { x , y } e. u -> A. y e. ( u i^i A ) { x , y } e. u )
18 ssralv
 |-  ( ( u i^i A ) C_ A -> ( A. y e. A { x , y } e. A -> A. y e. ( u i^i A ) { x , y } e. A ) )
19 11 18 ax-mp
 |-  ( A. y e. A { x , y } e. A -> A. y e. ( u i^i A ) { x , y } e. A )
20 elin
 |-  ( { x , y } e. ( u i^i A ) <-> ( { x , y } e. u /\ { x , y } e. A ) )
21 20 simplbi2
 |-  ( { x , y } e. u -> ( { x , y } e. A -> { x , y } e. ( u i^i A ) ) )
22 21 ral2imi
 |-  ( A. y e. ( u i^i A ) { x , y } e. u -> ( A. y e. ( u i^i A ) { x , y } e. A -> A. y e. ( u i^i A ) { x , y } e. ( u i^i A ) ) )
23 17 19 22 syl2im
 |-  ( A. y e. u { x , y } e. u -> ( A. y e. A { x , y } e. A -> A. y e. ( u i^i A ) { x , y } e. ( u i^i A ) ) )
24 15 23 im2anan9
 |-  ( ( ~P x e. u /\ A. y e. u { x , y } e. u ) -> ( ( ~P x e. A /\ A. y e. A { x , y } e. A ) -> ( ~P x e. ( u i^i A ) /\ A. y e. ( u i^i A ) { x , y } e. ( u i^i A ) ) ) )
25 vex
 |-  u e. _V
26 mapss
 |-  ( ( u e. _V /\ ( u i^i A ) C_ u ) -> ( ( u i^i A ) ^m x ) C_ ( u ^m x ) )
27 25 8 26 mp2an
 |-  ( ( u i^i A ) ^m x ) C_ ( u ^m x )
28 ssralv
 |-  ( ( ( u i^i A ) ^m x ) C_ ( u ^m x ) -> ( A. y e. ( u ^m x ) U. ran y e. u -> A. y e. ( ( u i^i A ) ^m x ) U. ran y e. u ) )
29 27 28 ax-mp
 |-  ( A. y e. ( u ^m x ) U. ran y e. u -> A. y e. ( ( u i^i A ) ^m x ) U. ran y e. u )
30 25 inex1
 |-  ( u i^i A ) e. _V
31 vex
 |-  x e. _V
32 30 31 elmap
 |-  ( y e. ( ( u i^i A ) ^m x ) <-> y : x --> ( u i^i A ) )
33 fss
 |-  ( ( y : x --> ( u i^i A ) /\ ( u i^i A ) C_ A ) -> y : x --> A )
34 11 33 mpan2
 |-  ( y : x --> ( u i^i A ) -> y : x --> A )
35 32 34 sylbi
 |-  ( y e. ( ( u i^i A ) ^m x ) -> y : x --> A )
36 35 imim1i
 |-  ( ( y : x --> A -> U. ran y e. A ) -> ( y e. ( ( u i^i A ) ^m x ) -> U. ran y e. A ) )
37 36 alimi
 |-  ( A. y ( y : x --> A -> U. ran y e. A ) -> A. y ( y e. ( ( u i^i A ) ^m x ) -> U. ran y e. A ) )
38 df-ral
 |-  ( A. y e. ( ( u i^i A ) ^m x ) U. ran y e. A <-> A. y ( y e. ( ( u i^i A ) ^m x ) -> U. ran y e. A ) )
39 37 38 sylibr
 |-  ( A. y ( y : x --> A -> U. ran y e. A ) -> A. y e. ( ( u i^i A ) ^m x ) U. ran y e. A )
40 elin
 |-  ( U. ran y e. ( u i^i A ) <-> ( U. ran y e. u /\ U. ran y e. A ) )
41 40 simplbi2
 |-  ( U. ran y e. u -> ( U. ran y e. A -> U. ran y e. ( u i^i A ) ) )
42 41 ral2imi
 |-  ( A. y e. ( ( u i^i A ) ^m x ) U. ran y e. u -> ( A. y e. ( ( u i^i A ) ^m x ) U. ran y e. A -> A. y e. ( ( u i^i A ) ^m x ) U. ran y e. ( u i^i A ) ) )
43 29 39 42 syl2im
 |-  ( A. y e. ( u ^m x ) U. ran y e. u -> ( A. y ( y : x --> A -> U. ran y e. A ) -> A. y e. ( ( u i^i A ) ^m x ) U. ran y e. ( u i^i A ) ) )
44 24 43 im2anan9
 |-  ( ( ( ~P x e. u /\ A. y e. u { x , y } e. u ) /\ A. y e. ( u ^m x ) U. ran y e. u ) -> ( ( ( ~P x e. A /\ A. y e. A { x , y } e. A ) /\ A. y ( y : x --> A -> U. ran y e. A ) ) -> ( ( ~P x e. ( u i^i A ) /\ A. y e. ( u i^i A ) { x , y } e. ( u i^i A ) ) /\ A. y e. ( ( u i^i A ) ^m x ) U. ran y e. ( u i^i A ) ) ) )
45 44 3impa
 |-  ( ( ~P x e. u /\ A. y e. u { x , y } e. u /\ A. y e. ( u ^m x ) U. ran y e. u ) -> ( ( ( ~P x e. A /\ A. y e. A { x , y } e. A ) /\ A. y ( y : x --> A -> U. ran y e. A ) ) -> ( ( ~P x e. ( u i^i A ) /\ A. y e. ( u i^i A ) { x , y } e. ( u i^i A ) ) /\ A. y e. ( ( u i^i A ) ^m x ) U. ran y e. ( u i^i A ) ) ) )
46 df-3an
 |-  ( ( ~P x e. A /\ A. y e. A { x , y } e. A /\ A. y ( y : x --> A -> U. ran y e. A ) ) <-> ( ( ~P x e. A /\ A. y e. A { x , y } e. A ) /\ A. y ( y : x --> A -> U. ran y e. A ) ) )
47 df-3an
 |-  ( ( ~P x e. ( u i^i A ) /\ A. y e. ( u i^i A ) { x , y } e. ( u i^i A ) /\ A. y e. ( ( u i^i A ) ^m x ) U. ran y e. ( u i^i A ) ) <-> ( ( ~P x e. ( u i^i A ) /\ A. y e. ( u i^i A ) { x , y } e. ( u i^i A ) ) /\ A. y e. ( ( u i^i A ) ^m x ) U. ran y e. ( u i^i A ) ) )
48 45 46 47 3imtr4g
 |-  ( ( ~P x e. u /\ A. y e. u { x , y } e. u /\ A. y e. ( u ^m x ) U. ran y e. u ) -> ( ( ~P x e. A /\ A. y e. A { x , y } e. A /\ A. y ( y : x --> A -> U. ran y e. A ) ) -> ( ~P x e. ( u i^i A ) /\ A. y e. ( u i^i A ) { x , y } e. ( u i^i A ) /\ A. y e. ( ( u i^i A ) ^m x ) U. ran y e. ( u i^i A ) ) ) )
49 48 ral2imi
 |-  ( A. x e. ( u i^i A ) ( ~P x e. u /\ A. y e. u { x , y } e. u /\ A. y e. ( u ^m x ) U. ran y e. u ) -> ( A. x e. ( u i^i A ) ( ~P x e. A /\ A. y e. A { x , y } e. A /\ A. y ( y : x --> A -> U. ran y e. A ) ) -> A. x e. ( u i^i A ) ( ~P x e. ( u i^i A ) /\ A. y e. ( u i^i A ) { x , y } e. ( u i^i A ) /\ A. y e. ( ( u i^i A ) ^m x ) U. ran y e. ( u i^i A ) ) ) )
50 10 13 49 syl2im
 |-  ( A. x e. u ( ~P x e. u /\ A. y e. u { x , y } e. u /\ A. y e. ( u ^m x ) U. ran y e. u ) -> ( A. x e. A ( ~P x e. A /\ A. y e. A { x , y } e. A /\ A. y ( y : x --> A -> U. ran y e. A ) ) -> A. x e. ( u i^i A ) ( ~P x e. ( u i^i A ) /\ A. y e. ( u i^i A ) { x , y } e. ( u i^i A ) /\ A. y e. ( ( u i^i A ) ^m x ) U. ran y e. ( u i^i A ) ) ) )
51 7 50 im2anan9
 |-  ( ( Tr u /\ A. x e. u ( ~P x e. u /\ A. y e. u { x , y } e. u /\ A. y e. ( u ^m x ) U. ran y e. u ) ) -> ( ( Tr A /\ A. x e. A ( ~P x e. A /\ A. y e. A { x , y } e. A /\ A. y ( y : x --> A -> U. ran y e. A ) ) ) -> ( Tr ( u i^i A ) /\ A. x e. ( u i^i A ) ( ~P x e. ( u i^i A ) /\ A. y e. ( u i^i A ) { x , y } e. ( u i^i A ) /\ A. y e. ( ( u i^i A ) ^m x ) U. ran y e. ( u i^i A ) ) ) ) )
52 5 51 syl
 |-  ( u e. Univ -> ( ( Tr A /\ A. x e. A ( ~P x e. A /\ A. y e. A { x , y } e. A /\ A. y ( y : x --> A -> U. ran y e. A ) ) ) -> ( Tr ( u i^i A ) /\ A. x e. ( u i^i A ) ( ~P x e. ( u i^i A ) /\ A. y e. ( u i^i A ) { x , y } e. ( u i^i A ) /\ A. y e. ( ( u i^i A ) ^m x ) U. ran y e. ( u i^i A ) ) ) ) )
53 elgrug
 |-  ( ( u i^i A ) e. _V -> ( ( u i^i A ) e. Univ <-> ( Tr ( u i^i A ) /\ A. x e. ( u i^i A ) ( ~P x e. ( u i^i A ) /\ A. y e. ( u i^i A ) { x , y } e. ( u i^i A ) /\ A. y e. ( ( u i^i A ) ^m x ) U. ran y e. ( u i^i A ) ) ) ) )
54 30 53 ax-mp
 |-  ( ( u i^i A ) e. Univ <-> ( Tr ( u i^i A ) /\ A. x e. ( u i^i A ) ( ~P x e. ( u i^i A ) /\ A. y e. ( u i^i A ) { x , y } e. ( u i^i A ) /\ A. y e. ( ( u i^i A ) ^m x ) U. ran y e. ( u i^i A ) ) ) )
55 52 54 syl6ibr
 |-  ( u e. Univ -> ( ( Tr A /\ A. x e. A ( ~P x e. A /\ A. y e. A { x , y } e. A /\ A. y ( y : x --> A -> U. ran y e. A ) ) ) -> ( u i^i A ) e. Univ ) )
56 3 55 vtoclga
 |-  ( U e. Univ -> ( ( Tr A /\ A. x e. A ( ~P x e. A /\ A. y e. A { x , y } e. A /\ A. y ( y : x --> A -> U. ran y e. A ) ) ) -> ( U i^i A ) e. Univ ) )
57 56 com12
 |-  ( ( Tr A /\ A. x e. A ( ~P x e. A /\ A. y e. A { x , y } e. A /\ A. y ( y : x --> A -> U. ran y e. A ) ) ) -> ( U e. Univ -> ( U i^i A ) e. Univ ) )