Step | Hyp | Ref
| Expression |
1 | | 3simpb 1059 |
. . . . . . 7
 
    
                    
      |
2 | 1 | reximi 3011 |
. . . . . 6
      
                  
          |
3 | | 3simpb 1059 |
. . . . . . 7
 
    
                    
      |
4 | 3 | reximi 3011 |
. . . . . 6
      
                  
          |
5 | | fveq2 6191 |
. . . . . . . . . . . 12
           |
6 | 5 | sseq2d 3633 |
. . . . . . . . . . 11
     
       |
7 | | seqeq1 12804 |
. . . . . . . . . . . 12
         |
8 | 7 | breq1d 4663 |
. . . . . . . . . . 11
   
      |
9 | 6, 8 | anbi12d 747 |
. . . . . . . . . 10
                       |
10 | 9 | cbvrexv 3172 |
. . . . . . . . 9
      
   
            |
11 | 10 | anbi2i 730 |
. . . . . . . 8
   
                                           |
12 | | reeanv 3107 |
. . . . . . . 8
  
                                            |
13 | 11, 12 | bitr4i 267 |
. . . . . . 7
   
                                           |
14 | | simprlr 803 |
. . . . . . . . . . . . 13
         
    
               |
15 | 14 | adantl 482 |
. . . . . . . . . . . 12
 
 
                            |
16 | | prodmo.1 |
. . . . . . . . . . . . 13
        |
17 | | prodmo.2 |
. . . . . . . . . . . . . 14
 
   |
18 | 17 | adantlr 751 |
. . . . . . . . . . . . 13
           
    
          
   |
19 | | simprll 802 |
. . . . . . . . . . . . 13
 
 
                      
  |
20 | | simprlr 803 |
. . . . . . . . . . . . 13
 
 
                      
  |
21 | | simprll 802 |
. . . . . . . . . . . . . 14
         
    
                |
22 | 21 | adantl 482 |
. . . . . . . . . . . . 13
 
 
                             |
23 | | simprrl 804 |
. . . . . . . . . . . . . 14
         
    
                |
24 | 23 | adantl 482 |
. . . . . . . . . . . . 13
 
 
                             |
25 | 16, 18, 19, 20, 22, 24 | prodrb 14662 |
. . . . . . . . . . . 12
 
 
                         
      |
26 | 15, 25 | mpbid 222 |
. . . . . . . . . . 11
 
 
                            |
27 | | simprrr 805 |
. . . . . . . . . . . 12
         
    
               |
28 | 27 | adantl 482 |
. . . . . . . . . . 11
 
 
                            |
29 | | climuni 14283 |
. . . . . . . . . . 11
          |
30 | 26, 28, 29 | syl2anc 693 |
. . . . . . . . . 10
 
 
                      
  |
31 | 30 | expcom 451 |
. . . . . . . . 9
         
    
              |
32 | 31 | ex 450 |
. . . . . . . 8
 
       
    
        
     |
33 | 32 | rexlimivv 3036 |
. . . . . . 7
  
                   
    |
34 | 13, 33 | sylbi 207 |
. . . . . 6
   
                  
    |
35 | 2, 4, 34 | syl2an 494 |
. . . . 5
   
    
                
    
                 
    |
36 | | prodmo.3 |
. . . . . . . . . 10
       ![]_ ]_](_urbrack.gif)   |
37 | 16, 17, 36 | prodmolem2 14665 |
. . . . . . . . 9
 
                       
 
                     |
38 | | equcomi 1944 |
. . . . . . . . 9
   |
39 | 37, 38 | syl6 35 |
. . . . . . . 8
 
                       
 
                 
   |
40 | 39 | expimpd 629 |
. . . . . . 7
                                     
       
   |
41 | 40 | com12 32 |
. . . . . 6
   
    
                
                       |
42 | 41 | ancoms 469 |
. . . . 5
                          
                 
    |
43 | 16, 17, 36 | prodmolem2 14665 |
. . . . . . 7
 
                       
 
                 
   |
44 | 43 | expimpd 629 |
. . . . . 6
                                     
       
   |
45 | 44 | com12 32 |
. . . . 5
   
    
                
                       |
46 | | reeanv 3107 |
. . . . . . . 8
  
                                       ![]_ ]_](_urbrack.gif)                    
       
                    ![]_ ]_](_urbrack.gif)          |
47 | | eeanv 2182 |
. . . . . . . . 9
                                        ![]_ ]_](_urbrack.gif)                   
                           ![]_ ]_](_urbrack.gif)          |
48 | 47 | 2rexbii 3042 |
. . . . . . . 8
  
                                       ![]_ ]_](_urbrack.gif)        
                                        ![]_ ]_](_urbrack.gif)          |
49 | | oveq2 6658 |
. . . . . . . . . . . . . 14
           |
50 | | f1oeq2 6128 |
. . . . . . . . . . . . . 14
                 
           |
51 | 49, 50 | syl 17 |
. . . . . . . . . . . . 13
         
           |
52 | | fveq2 6191 |
. . . . . . . . . . . . . 14
               |
53 | 52 | eqeq2d 2632 |
. . . . . . . . . . . . 13
                 |
54 | 51, 53 | anbi12d 747 |
. . . . . . . . . . . 12
                 
                   |
55 | 54 | exbidv 1850 |
. . . . . . . . . . 11
                   
                     |
56 | | f1oeq1 6127 |
. . . . . . . . . . . . 13
         
           |
57 | | fveq1 6190 |
. . . . . . . . . . . . . . . . . . 19
           |
58 | 57 | csbeq1d 3540 |
. . . . . . . . . . . . . . . . . 18
       ![]_ ]_](_urbrack.gif)       ![]_ ]_](_urbrack.gif)   |
59 | 58 | mpteq2dv 4745 |
. . . . . . . . . . . . . . . . 17
        ![]_ ]_](_urbrack.gif)         ![]_ ]_](_urbrack.gif)    |
60 | 36, 59 | syl5eq 2668 |
. . . . . . . . . . . . . . . 16
        ![]_ ]_](_urbrack.gif)    |
61 | 60 | seqeq3d 12809 |
. . . . . . . . . . . . . . 15
             ![]_ ]_](_urbrack.gif)     |
62 | 61 | fveq1d 6193 |
. . . . . . . . . . . . . 14
                ![]_ ]_](_urbrack.gif)        |
63 | 62 | eqeq2d 2632 |
. . . . . . . . . . . . 13
                 ![]_ ]_](_urbrack.gif)         |
64 | 56, 63 | anbi12d 747 |
. . . . . . . . . . . 12
                 
                  ![]_ ]_](_urbrack.gif)          |
65 | 64 | cbvexv 2275 |
. . . . . . . . . . 11
                  
                    ![]_ ]_](_urbrack.gif)         |
66 | 55, 65 | syl6bb 276 |
. . . . . . . . . 10
                   
                    ![]_ ]_](_urbrack.gif)          |
67 | 66 | cbvrexv 3172 |
. . . . . . . . 9
                   
           
         ![]_ ]_](_urbrack.gif)         |
68 | 67 | anbi2i 730 |
. . . . . . . 8
                                                     
       
                    ![]_ ]_](_urbrack.gif)          |
69 | 46, 48, 68 | 3bitr4i 292 |
. . . . . . 7
  
                                       ![]_ ]_](_urbrack.gif)                    
       
                     |
70 | | an4 865 |
. . . . . . . . . 10
                                    ![]_ ]_](_urbrack.gif)                                 
         ![]_ ]_](_urbrack.gif)          |
71 | | simpll 790 |
. . . . . . . . . . . . . 14
   
 
                     |
72 | 71, 17 | sylan 488 |
. . . . . . . . . . . . 13
    
                    
   |
73 | | fveq2 6191 |
. . . . . . . . . . . . . . . 16
           |
74 | 73 | csbeq1d 3540 |
. . . . . . . . . . . . . . 15
       ![]_ ]_](_urbrack.gif)       ![]_ ]_](_urbrack.gif)   |
75 | 74 | cbvmptv 4750 |
. . . . . . . . . . . . . 14
       ![]_ ]_](_urbrack.gif)         ![]_ ]_](_urbrack.gif)   |
76 | 36, 75 | eqtri 2644 |
. . . . . . . . . . . . 13
       ![]_ ]_](_urbrack.gif)   |
77 | | fveq2 6191 |
. . . . . . . . . . . . . . 15
           |
78 | 77 | csbeq1d 3540 |
. . . . . . . . . . . . . 14
       ![]_ ]_](_urbrack.gif)       ![]_ ]_](_urbrack.gif)   |
79 | 78 | cbvmptv 4750 |
. . . . . . . . . . . . 13
       ![]_ ]_](_urbrack.gif)         ![]_ ]_](_urbrack.gif)   |
80 | | simplr 792 |
. . . . . . . . . . . . 13
   
 
                       |
81 | | simprl 794 |
. . . . . . . . . . . . 13
   
 
                             |
82 | | simprr 796 |
. . . . . . . . . . . . 13
   
 
                             |
83 | 16, 72, 76, 79, 80, 81, 82 | prodmolem3 14663 |
. . . . . . . . . . . 12
   
 
                                  ![]_ ]_](_urbrack.gif)        |
84 | | eqeq12 2635 |
. . . . . . . . . . . 12
       
         ![]_ ]_](_urbrack.gif)                       ![]_ ]_](_urbrack.gif)         |
85 | 83, 84 | syl5ibrcom 237 |
. . . . . . . . . . 11
   
 
                          
         ![]_ ]_](_urbrack.gif)      
   |
86 | 85 | expimpd 629 |
. . . . . . . . . 10
 
                             
         ![]_ ]_](_urbrack.gif)           |
87 | 70, 86 | syl5bi 232 |
. . . . . . . . 9
 
                                       ![]_ ]_](_urbrack.gif)           |
88 | 87 | exlimdvv 1862 |
. . . . . . . 8
 
                                           ![]_ ]_](_urbrack.gif)           |
89 | 88 | rexlimdvva 3038 |
. . . . . . 7
                                           ![]_ ]_](_urbrack.gif)           |
90 | 69, 89 | syl5bir 233 |
. . . . . 6
              
       
                      |
91 | 90 | com12 32 |
. . . . 5
                                             |
92 | 35, 42, 45, 91 | ccase 987 |
. . . 4
                                     
          
    
                
                   
    |
93 | 92 | com12 32 |
. . 3
         
                            
          
    
                
                   
   |
94 | 93 | alrimivv 1856 |
. 2
             
                            
          
    
                
                   
   |
95 | | breq2 4657 |
. . . . . 6
   
      |
96 | 95 | 3anbi3d 1405 |
. . . . 5
                       
                         |
97 | 96 | rexbidv 3052 |
. . . 4
  

    
               
                          |
98 | | eqeq1 2626 |
. . . . . . 7
                 |
99 | 98 | anbi2d 740 |
. . . . . 6
                 
                   |
100 | 99 | exbidv 1850 |
. . . . 5
                   
                     |
101 | 100 | rexbidv 3052 |
. . . 4
  
                 
           
          |
102 | 97, 101 | orbi12d 746 |
. . 3
                                     
       
 
    
                            
           |
103 | 102 | mo4 2517 |
. 2
                                      
       
        
    
                
                                                      
            |
104 | 94, 103 | sylibr 224 |
1
         
                            
          |