Metamath Proof Explorer


Theorem trin2

Description: The intersection of two transitive classes is transitive. (Contributed by FL, 31-Jul-2009)

Ref Expression
Assertion trin2
|- ( ( ( R o. R ) C_ R /\ ( S o. S ) C_ S ) -> ( ( R i^i S ) o. ( R i^i S ) ) C_ ( R i^i S ) )

Proof

Step Hyp Ref Expression
1 cotr
 |-  ( ( R o. R ) C_ R <-> A. x A. y A. z ( ( x R y /\ y R z ) -> x R z ) )
2 cotr
 |-  ( ( S o. S ) C_ S <-> A. x A. y A. z ( ( x S y /\ y S z ) -> x S z ) )
3 brin
 |-  ( x ( R i^i S ) y <-> ( x R y /\ x S y ) )
4 brin
 |-  ( y ( R i^i S ) z <-> ( y R z /\ y S z ) )
5 simpr
 |-  ( ( ( ( x S y /\ y S z ) -> x S z ) /\ ( ( x R y /\ y R z ) -> x R z ) ) -> ( ( x R y /\ y R z ) -> x R z ) )
6 simpl
 |-  ( ( ( ( x S y /\ y S z ) -> x S z ) /\ ( ( x R y /\ y R z ) -> x R z ) ) -> ( ( x S y /\ y S z ) -> x S z ) )
7 5 6 anim12d
 |-  ( ( ( ( x S y /\ y S z ) -> x S z ) /\ ( ( x R y /\ y R z ) -> x R z ) ) -> ( ( ( x R y /\ y R z ) /\ ( x S y /\ y S z ) ) -> ( x R z /\ x S z ) ) )
8 7 com12
 |-  ( ( ( x R y /\ y R z ) /\ ( x S y /\ y S z ) ) -> ( ( ( ( x S y /\ y S z ) -> x S z ) /\ ( ( x R y /\ y R z ) -> x R z ) ) -> ( x R z /\ x S z ) ) )
9 8 an4s
 |-  ( ( ( x R y /\ x S y ) /\ ( y R z /\ y S z ) ) -> ( ( ( ( x S y /\ y S z ) -> x S z ) /\ ( ( x R y /\ y R z ) -> x R z ) ) -> ( x R z /\ x S z ) ) )
10 3 4 9 syl2anb
 |-  ( ( x ( R i^i S ) y /\ y ( R i^i S ) z ) -> ( ( ( ( x S y /\ y S z ) -> x S z ) /\ ( ( x R y /\ y R z ) -> x R z ) ) -> ( x R z /\ x S z ) ) )
11 10 com12
 |-  ( ( ( ( x S y /\ y S z ) -> x S z ) /\ ( ( x R y /\ y R z ) -> x R z ) ) -> ( ( x ( R i^i S ) y /\ y ( R i^i S ) z ) -> ( x R z /\ x S z ) ) )
12 brin
 |-  ( x ( R i^i S ) z <-> ( x R z /\ x S z ) )
13 11 12 syl6ibr
 |-  ( ( ( ( x S y /\ y S z ) -> x S z ) /\ ( ( x R y /\ y R z ) -> x R z ) ) -> ( ( x ( R i^i S ) y /\ y ( R i^i S ) z ) -> x ( R i^i S ) z ) )
14 13 alanimi
 |-  ( ( A. z ( ( x S y /\ y S z ) -> x S z ) /\ A. z ( ( x R y /\ y R z ) -> x R z ) ) -> A. z ( ( x ( R i^i S ) y /\ y ( R i^i S ) z ) -> x ( R i^i S ) z ) )
15 14 alanimi
 |-  ( ( A. y A. z ( ( x S y /\ y S z ) -> x S z ) /\ A. y A. z ( ( x R y /\ y R z ) -> x R z ) ) -> A. y A. z ( ( x ( R i^i S ) y /\ y ( R i^i S ) z ) -> x ( R i^i S ) z ) )
16 15 alanimi
 |-  ( ( A. x A. y A. z ( ( x S y /\ y S z ) -> x S z ) /\ A. x A. y A. z ( ( x R y /\ y R z ) -> x R z ) ) -> A. x A. y A. z ( ( x ( R i^i S ) y /\ y ( R i^i S ) z ) -> x ( R i^i S ) z ) )
17 16 ex
 |-  ( A. x A. y A. z ( ( x S y /\ y S z ) -> x S z ) -> ( A. x A. y A. z ( ( x R y /\ y R z ) -> x R z ) -> A. x A. y A. z ( ( x ( R i^i S ) y /\ y ( R i^i S ) z ) -> x ( R i^i S ) z ) ) )
18 2 17 sylbi
 |-  ( ( S o. S ) C_ S -> ( A. x A. y A. z ( ( x R y /\ y R z ) -> x R z ) -> A. x A. y A. z ( ( x ( R i^i S ) y /\ y ( R i^i S ) z ) -> x ( R i^i S ) z ) ) )
19 18 com12
 |-  ( A. x A. y A. z ( ( x R y /\ y R z ) -> x R z ) -> ( ( S o. S ) C_ S -> A. x A. y A. z ( ( x ( R i^i S ) y /\ y ( R i^i S ) z ) -> x ( R i^i S ) z ) ) )
20 1 19 sylbi
 |-  ( ( R o. R ) C_ R -> ( ( S o. S ) C_ S -> A. x A. y A. z ( ( x ( R i^i S ) y /\ y ( R i^i S ) z ) -> x ( R i^i S ) z ) ) )
21 20 imp
 |-  ( ( ( R o. R ) C_ R /\ ( S o. S ) C_ S ) -> A. x A. y A. z ( ( x ( R i^i S ) y /\ y ( R i^i S ) z ) -> x ( R i^i S ) z ) )
22 cotr
 |-  ( ( ( R i^i S ) o. ( R i^i S ) ) C_ ( R i^i S ) <-> A. x A. y A. z ( ( x ( R i^i S ) y /\ y ( R i^i S ) z ) -> x ( R i^i S ) z ) )
23 21 22 sylibr
 |-  ( ( ( R o. R ) C_ R /\ ( S o. S ) C_ S ) -> ( ( R i^i S ) o. ( R i^i S ) ) C_ ( R i^i S ) )