Step | Hyp | Ref
| Expression |
1 | | eqid 2622 |
. . . . 5
         |
2 | | simpr 477 |
. . . . 5
 

  |
3 | | prodss.3 |
. . . . . 6
                    
      |
4 | 3 | adantr 481 |
. . . . 5
 

                   
      |
5 | | prodss.1 |
. . . . . . 7

  |
6 | | prodss.5 |
. . . . . . 7

      |
7 | 5, 6 | sstrd 3613 |
. . . . . 6

      |
8 | 7 | adantr 481 |
. . . . 5
 

      |
9 | | simpr 477 |
. . . . . . 7
        
      |
10 | | iftrue 4092 |
. . . . . . . . . . . 12
  
   ![]_ ]_](_urbrack.gif)     ![]_ ]_](_urbrack.gif)   |
11 | 10 | adantl 482 |
. . . . . . . . . . 11
 
  
   ![]_ ]_](_urbrack.gif)     ![]_ ]_](_urbrack.gif)   |
12 | | prodss.2 |
. . . . . . . . . . . . . . . 16
 
   |
13 | 12 | ex 450 |
. . . . . . . . . . . . . . 15
     |
14 | 13 | adantr 481 |
. . . . . . . . . . . . . 14
 
 
   |
15 | | eldif 3584 |
. . . . . . . . . . . . . . . 16
  

   |
16 | | prodss.4 |
. . . . . . . . . . . . . . . . 17
 

 
  |
17 | | ax-1cn 9994 |
. . . . . . . . . . . . . . . . 17
 |
18 | 16, 17 | syl6eqel 2709 |
. . . . . . . . . . . . . . . 16
 

 
  |
19 | 15, 18 | sylan2br 493 |
. . . . . . . . . . . . . . 15
 

 
  |
20 | 19 | expr 643 |
. . . . . . . . . . . . . 14
 
 
   |
21 | 14, 20 | pm2.61d 170 |
. . . . . . . . . . . . 13
 
   |
22 | 21 | ralrimiva 2966 |
. . . . . . . . . . . 12
 
  |
23 | | nfcsb1v 3549 |
. . . . . . . . . . . . . 14
  
 ![]_ ]_](_urbrack.gif)  |
24 | 23 | nfel1 2779 |
. . . . . . . . . . . . 13
    ![]_ ]_](_urbrack.gif)
 |
25 | | csbeq1a 3542 |
. . . . . . . . . . . . . 14
   ![]_ ]_](_urbrack.gif)   |
26 | 25 | eleq1d 2686 |
. . . . . . . . . . . . 13
 
  ![]_ ]_](_urbrack.gif)    |
27 | 24, 26 | rspc 3303 |
. . . . . . . . . . . 12
  
  ![]_ ]_](_urbrack.gif)
   |
28 | 22, 27 | mpan9 486 |
. . . . . . . . . . 11
 
   ![]_ ]_](_urbrack.gif)   |
29 | 11, 28 | eqeltrd 2701 |
. . . . . . . . . 10
 
  
   ![]_ ]_](_urbrack.gif)     |
30 | | iffalse 4095 |
. . . . . . . . . . . 12
      ![]_ ]_](_urbrack.gif)     |
31 | 30, 17 | syl6eqel 2709 |
. . . . . . . . . . 11
      ![]_ ]_](_urbrack.gif)     |
32 | 31 | adantl 482 |
. . . . . . . . . 10
 
  
   ![]_ ]_](_urbrack.gif)     |
33 | 29, 32 | pm2.61dan 832 |
. . . . . . . . 9
      ![]_ ]_](_urbrack.gif)     |
34 | 33 | adantr 481 |
. . . . . . . 8
 

   
 ![]_ ]_](_urbrack.gif)     |
35 | 34 | adantr 481 |
. . . . . . 7
        
   
 ![]_ ]_](_urbrack.gif)     |
36 | | nfcv 2764 |
. . . . . . . 8
   |
37 | | nfv 1843 |
. . . . . . . . 9
  |
38 | | nfcv 2764 |
. . . . . . . . 9
   |
39 | 37, 23, 38 | nfif 4115 |
. . . . . . . 8
       ![]_ ]_](_urbrack.gif)    |
40 | | eleq1 2689 |
. . . . . . . . 9
 
   |
41 | 40, 25 | ifbieq1d 4109 |
. . . . . . . 8
           ![]_ ]_](_urbrack.gif)     |
42 | | eqid 2622 |
. . . . . . . 8
                       |
43 | 36, 39, 41, 42 | fvmptf 6301 |
. . . . . . 7
       
   ![]_ ]_](_urbrack.gif)                        ![]_ ]_](_urbrack.gif)     |
44 | 9, 35, 43 | syl2anc 693 |
. . . . . 6
        
         
          ![]_ ]_](_urbrack.gif)     |
45 | | iftrue 4092 |
. . . . . . . . . . . . . 14
  
                 |
46 | 45 | adantl 482 |
. . . . . . . . . . . . 13
      
                 |
47 | | simpr 477 |
. . . . . . . . . . . . . 14
       |
48 | 5 | adantr 481 |
. . . . . . . . . . . . . . . 16
 

  |
49 | 48 | sselda 3603 |
. . . . . . . . . . . . . . 15
       |
50 | 28 | adantlr 751 |
. . . . . . . . . . . . . . 15
       ![]_ ]_](_urbrack.gif)   |
51 | 49, 50 | syldan 487 |
. . . . . . . . . . . . . 14
       ![]_ ]_](_urbrack.gif)   |
52 | | eqid 2622 |
. . . . . . . . . . . . . . 15
     |
53 | 52 | fvmpts 6285 |
. . . . . . . . . . . . . 14
    ![]_ ]_](_urbrack.gif)
         ![]_ ]_](_urbrack.gif)   |
54 | 47, 51, 53 | syl2anc 693 |
. . . . . . . . . . . . 13
             ![]_ ]_](_urbrack.gif)   |
55 | 46, 54 | eqtrd 2656 |
. . . . . . . . . . . 12
      
           ![]_ ]_](_urbrack.gif)   |
56 | 55 | ex 450 |
. . . . . . . . . . 11
 

  
           ![]_ ]_](_urbrack.gif)    |
57 | 56 | adantr 481 |
. . . . . . . . . 10
                   ![]_ ]_](_urbrack.gif)    |
58 | | iffalse 4095 |
. . . . . . . . . . . . . 14
              |
59 | 58 | adantl 482 |
. . . . . . . . . . . . 13
 

             |
60 | 59 | adantl 482 |
. . . . . . . . . . . 12
    
   
           |
61 | | eldif 3584 |
. . . . . . . . . . . . 13
  

   |
62 | 16 | ralrimiva 2966 |
. . . . . . . . . . . . . . 15
       |
63 | 62 | adantr 481 |
. . . . . . . . . . . . . 14
 

      |
64 | 23 | nfeq1 2778 |
. . . . . . . . . . . . . . 15
    ![]_ ]_](_urbrack.gif)
 |
65 | 25 | eqeq1d 2624 |
. . . . . . . . . . . . . . 15
 
  ![]_ ]_](_urbrack.gif)    |
66 | 64, 65 | rspc 3303 |
. . . . . . . . . . . . . 14
    
     ![]_ ]_](_urbrack.gif)    |
67 | 63, 66 | mpan9 486 |
. . . . . . . . . . . . 13
         ![]_ ]_](_urbrack.gif)   |
68 | 61, 67 | sylan2br 493 |
. . . . . . . . . . . 12
    
    ![]_ ]_](_urbrack.gif)   |
69 | 60, 68 | eqtr4d 2659 |
. . . . . . . . . . 11
    
   
           ![]_ ]_](_urbrack.gif)   |
70 | 69 | expr 643 |
. . . . . . . . . 10
     
             ![]_ ]_](_urbrack.gif)    |
71 | 57, 70 | pm2.61d 170 |
. . . . . . . . 9
      
           ![]_ ]_](_urbrack.gif)   |
72 | 10 | adantl 482 |
. . . . . . . . 9
      
   ![]_ ]_](_urbrack.gif)     ![]_ ]_](_urbrack.gif)   |
73 | 71, 72 | eqtr4d 2659 |
. . . . . . . 8
      
              ![]_ ]_](_urbrack.gif)     |
74 | 48 | ssneld 3605 |
. . . . . . . . . . 11
 


   |
75 | 74 | imp 445 |
. . . . . . . . . 10
   
   |
76 | 75, 58 | syl 17 |
. . . . . . . . 9
   
              |
77 | 30 | adantl 482 |
. . . . . . . . 9
   
      ![]_ ]_](_urbrack.gif)     |
78 | 76, 77 | eqtr4d 2659 |
. . . . . . . 8
   
                 ![]_ ]_](_urbrack.gif)     |
79 | 73, 78 | pm2.61dan 832 |
. . . . . . 7
 

              
 ![]_ ]_](_urbrack.gif)     |
80 | 79 | adantr 481 |
. . . . . 6
        
              
 ![]_ ]_](_urbrack.gif)     |
81 | 44, 80 | eqtr4d 2659 |
. . . . 5
        
         
                  |
82 | 12, 52 | fmptd 6385 |
. . . . . . 7
         |
83 | 82 | adantr 481 |
. . . . . 6
 

        |
84 | 83 | ffvelrnda 6359 |
. . . . 5
             |
85 | 1, 2, 4, 8, 81, 84 | zprod 14667 |
. . . 4
 


                       |
86 | 6 | adantr 481 |
. . . . 5
 

      |
87 | 43 | ancoms 469 |
. . . . . . 7
       ![]_ ]_](_urbrack.gif)       
         
          ![]_ ]_](_urbrack.gif)     |
88 | 34, 87 | sylan 488 |
. . . . . 6
        
         
          ![]_ ]_](_urbrack.gif)     |
89 | | simpr 477 |
. . . . . . . . . 10
       |
90 | | eqid 2622 |
. . . . . . . . . . 11
     |
91 | 90 | fvmpts 6285 |
. . . . . . . . . 10
    ![]_ ]_](_urbrack.gif)
         ![]_ ]_](_urbrack.gif)   |
92 | 89, 50, 91 | syl2anc 693 |
. . . . . . . . 9
             ![]_ ]_](_urbrack.gif)   |
93 | 92 | ifeq1d 4104 |
. . . . . . . 8
      
              ![]_ ]_](_urbrack.gif)     |
94 | 93 | adantlr 751 |
. . . . . . 7
   

     
              
 ![]_ ]_](_urbrack.gif)     |
95 | | iffalse 4095 |
. . . . . . . . 9
              |
96 | 95, 30 | eqtr4d 2659 |
. . . . . . . 8
                 ![]_ ]_](_urbrack.gif)     |
97 | 96 | adantl 482 |
. . . . . . 7
   

       
              ![]_ ]_](_urbrack.gif)     |
98 | 94, 97 | pm2.61dan 832 |
. . . . . 6
        
              
 ![]_ ]_](_urbrack.gif)     |
99 | 88, 98 | eqtr4d 2659 |
. . . . 5
        
         
                  |
100 | 21, 90 | fmptd 6385 |
. . . . . . 7
         |
101 | 100 | adantr 481 |
. . . . . 6
 

        |
102 | 101 | ffvelrnda 6359 |
. . . . 5
             |
103 | 1, 2, 4, 86, 99, 102 | zprod 14667 |
. . . 4
 


                       |
104 | 85, 103 | eqtr4d 2659 |
. . 3
 


               |
105 | | prodfc 14675 |
. . 3

        |
106 | | prodfc 14675 |
. . 3

        |
107 | 104, 105,
106 | 3eqtr3g 2679 |
. 2
 


   |
108 | 5 | adantr 481 |
. . . . . 6
 
   |
109 | 6 | adantr 481 |
. . . . . . 7
 
       |
110 | | uzf 11690 |
. . . . . . . . . . 11
      |
111 | 110 | fdmi 6052 |
. . . . . . . . . 10
 |
112 | 111 | eleq2i 2693 |
. . . . . . . . 9

  |
113 | | ndmfv 6218 |
. . . . . . . . 9
       |
114 | 112, 113 | sylnbir 321 |
. . . . . . . 8
       |
115 | 114 | adantl 482 |
. . . . . . 7
 
       |
116 | 109, 115 | sseqtrd 3641 |
. . . . . 6
 
   |
117 | 108, 116 | sstrd 3613 |
. . . . 5
 
   |
118 | | ss0 3974 |
. . . . 5

  |
119 | 117, 118 | syl 17 |
. . . 4
 
   |
120 | | ss0 3974 |
. . . . 5

  |
121 | 116, 120 | syl 17 |
. . . 4
 
   |
122 | 119, 121 | eqtr4d 2659 |
. . 3
 
   |
123 | 122 | prodeq1d 14651 |
. 2
 
  
  |
124 | 107, 123 | pm2.61dan 832 |
1
 
   |