| Step | Hyp | Ref | Expression | 
						
							| 1 |  | metakunt33.1 |  |-  ( ph -> M e. NN ) | 
						
							| 2 |  | metakunt33.2 |  |-  ( ph -> I e. NN ) | 
						
							| 3 |  | metakunt33.3 |  |-  ( ph -> I <_ M ) | 
						
							| 4 |  | metakunt33.4 |  |-  A = ( x e. ( 1 ... M ) |-> if ( x = I , M , if ( x < I , x , ( x - 1 ) ) ) ) | 
						
							| 5 |  | metakunt33.5 |  |-  B = ( z e. ( 1 ... M ) |-> if ( z = M , M , if ( z < I , ( z + ( M - I ) ) , ( z + ( 1 - I ) ) ) ) ) | 
						
							| 6 |  | metakunt33.6 |  |-  C = ( y e. ( 1 ... M ) |-> if ( y = M , I , if ( y < I , y , ( y + 1 ) ) ) ) | 
						
							| 7 |  | metakunt33.7 |  |-  D = ( w e. ( 1 ... M ) |-> if ( w = I , w , if ( w < I , ( ( w + ( M - I ) ) + if ( I <_ ( w + ( M - I ) ) , 1 , 0 ) ) , ( ( w - I ) + if ( I <_ ( w - I ) , 1 , 0 ) ) ) ) ) | 
						
							| 8 | 1 2 3 6 | metakunt2 |  |-  ( ph -> C : ( 1 ... M ) --> ( 1 ... M ) ) | 
						
							| 9 | 1 2 3 5 | metakunt25 |  |-  ( ph -> B : ( 1 ... M ) -1-1-onto-> ( 1 ... M ) ) | 
						
							| 10 |  | f1of |  |-  ( B : ( 1 ... M ) -1-1-onto-> ( 1 ... M ) -> B : ( 1 ... M ) --> ( 1 ... M ) ) | 
						
							| 11 | 9 10 | syl |  |-  ( ph -> B : ( 1 ... M ) --> ( 1 ... M ) ) | 
						
							| 12 | 1 2 3 4 | metakunt1 |  |-  ( ph -> A : ( 1 ... M ) --> ( 1 ... M ) ) | 
						
							| 13 | 11 12 | fcod |  |-  ( ph -> ( B o. A ) : ( 1 ... M ) --> ( 1 ... M ) ) | 
						
							| 14 | 8 13 | fcod |  |-  ( ph -> ( C o. ( B o. A ) ) : ( 1 ... M ) --> ( 1 ... M ) ) | 
						
							| 15 | 14 | ffnd |  |-  ( ph -> ( C o. ( B o. A ) ) Fn ( 1 ... M ) ) | 
						
							| 16 |  | nfv |  |-  F/ w ph | 
						
							| 17 |  | elfzelz |  |-  ( w e. ( 1 ... M ) -> w e. ZZ ) | 
						
							| 18 | 17 | adantl |  |-  ( ( ph /\ w e. ( 1 ... M ) ) -> w e. ZZ ) | 
						
							| 19 | 1 | nnzd |  |-  ( ph -> M e. ZZ ) | 
						
							| 20 | 19 | adantr |  |-  ( ( ph /\ w e. ( 1 ... M ) ) -> M e. ZZ ) | 
						
							| 21 | 2 | nnzd |  |-  ( ph -> I e. ZZ ) | 
						
							| 22 | 21 | adantr |  |-  ( ( ph /\ w e. ( 1 ... M ) ) -> I e. ZZ ) | 
						
							| 23 | 20 22 | zsubcld |  |-  ( ( ph /\ w e. ( 1 ... M ) ) -> ( M - I ) e. ZZ ) | 
						
							| 24 | 18 23 | zaddcld |  |-  ( ( ph /\ w e. ( 1 ... M ) ) -> ( w + ( M - I ) ) e. ZZ ) | 
						
							| 25 |  | 1zzd |  |-  ( ( ph /\ w e. ( 1 ... M ) ) -> 1 e. ZZ ) | 
						
							| 26 |  | 0zd |  |-  ( ( ph /\ w e. ( 1 ... M ) ) -> 0 e. ZZ ) | 
						
							| 27 | 25 26 | ifcld |  |-  ( ( ph /\ w e. ( 1 ... M ) ) -> if ( I <_ ( w + ( M - I ) ) , 1 , 0 ) e. ZZ ) | 
						
							| 28 | 24 27 | zaddcld |  |-  ( ( ph /\ w e. ( 1 ... M ) ) -> ( ( w + ( M - I ) ) + if ( I <_ ( w + ( M - I ) ) , 1 , 0 ) ) e. ZZ ) | 
						
							| 29 | 18 22 | zsubcld |  |-  ( ( ph /\ w e. ( 1 ... M ) ) -> ( w - I ) e. ZZ ) | 
						
							| 30 | 25 26 | ifcld |  |-  ( ( ph /\ w e. ( 1 ... M ) ) -> if ( I <_ ( w - I ) , 1 , 0 ) e. ZZ ) | 
						
							| 31 | 29 30 | zaddcld |  |-  ( ( ph /\ w e. ( 1 ... M ) ) -> ( ( w - I ) + if ( I <_ ( w - I ) , 1 , 0 ) ) e. ZZ ) | 
						
							| 32 | 28 31 | ifcld |  |-  ( ( ph /\ w e. ( 1 ... M ) ) -> if ( w < I , ( ( w + ( M - I ) ) + if ( I <_ ( w + ( M - I ) ) , 1 , 0 ) ) , ( ( w - I ) + if ( I <_ ( w - I ) , 1 , 0 ) ) ) e. ZZ ) | 
						
							| 33 | 18 32 | ifcld |  |-  ( ( ph /\ w e. ( 1 ... M ) ) -> if ( w = I , w , if ( w < I , ( ( w + ( M - I ) ) + if ( I <_ ( w + ( M - I ) ) , 1 , 0 ) ) , ( ( w - I ) + if ( I <_ ( w - I ) , 1 , 0 ) ) ) ) e. ZZ ) | 
						
							| 34 | 16 33 7 | fnmptd |  |-  ( ph -> D Fn ( 1 ... M ) ) | 
						
							| 35 | 13 | adantr |  |-  ( ( ph /\ a e. ( 1 ... M ) ) -> ( B o. A ) : ( 1 ... M ) --> ( 1 ... M ) ) | 
						
							| 36 |  | simpr |  |-  ( ( ph /\ a e. ( 1 ... M ) ) -> a e. ( 1 ... M ) ) | 
						
							| 37 | 35 36 | fvco3d |  |-  ( ( ph /\ a e. ( 1 ... M ) ) -> ( ( C o. ( B o. A ) ) ` a ) = ( C ` ( ( B o. A ) ` a ) ) ) | 
						
							| 38 | 12 | adantr |  |-  ( ( ph /\ a e. ( 1 ... M ) ) -> A : ( 1 ... M ) --> ( 1 ... M ) ) | 
						
							| 39 | 38 36 | fvco3d |  |-  ( ( ph /\ a e. ( 1 ... M ) ) -> ( ( B o. A ) ` a ) = ( B ` ( A ` a ) ) ) | 
						
							| 40 | 39 | fveq2d |  |-  ( ( ph /\ a e. ( 1 ... M ) ) -> ( C ` ( ( B o. A ) ` a ) ) = ( C ` ( B ` ( A ` a ) ) ) ) | 
						
							| 41 | 37 40 | eqtrd |  |-  ( ( ph /\ a e. ( 1 ... M ) ) -> ( ( C o. ( B o. A ) ) ` a ) = ( C ` ( B ` ( A ` a ) ) ) ) | 
						
							| 42 | 1 | adantr |  |-  ( ( ph /\ a e. ( 1 ... M ) ) -> M e. NN ) | 
						
							| 43 | 2 | adantr |  |-  ( ( ph /\ a e. ( 1 ... M ) ) -> I e. NN ) | 
						
							| 44 | 3 | adantr |  |-  ( ( ph /\ a e. ( 1 ... M ) ) -> I <_ M ) | 
						
							| 45 |  | eqid |  |-  if ( I <_ ( a + ( M - I ) ) , 1 , 0 ) = if ( I <_ ( a + ( M - I ) ) , 1 , 0 ) | 
						
							| 46 |  | eqid |  |-  if ( I <_ ( a - I ) , 1 , 0 ) = if ( I <_ ( a - I ) , 1 , 0 ) | 
						
							| 47 |  | eqid |  |-  if ( a = I , a , if ( a < I , ( ( a + ( M - I ) ) + if ( I <_ ( a + ( M - I ) ) , 1 , 0 ) ) , ( ( a - I ) + if ( I <_ ( a - I ) , 1 , 0 ) ) ) ) = if ( a = I , a , if ( a < I , ( ( a + ( M - I ) ) + if ( I <_ ( a + ( M - I ) ) , 1 , 0 ) ) , ( ( a - I ) + if ( I <_ ( a - I ) , 1 , 0 ) ) ) ) | 
						
							| 48 | 42 43 44 36 4 5 6 45 46 47 | metakunt31 |  |-  ( ( ph /\ a e. ( 1 ... M ) ) -> ( C ` ( B ` ( A ` a ) ) ) = if ( a = I , a , if ( a < I , ( ( a + ( M - I ) ) + if ( I <_ ( a + ( M - I ) ) , 1 , 0 ) ) , ( ( a - I ) + if ( I <_ ( a - I ) , 1 , 0 ) ) ) ) ) | 
						
							| 49 | 42 43 44 36 7 45 46 47 | metakunt32 |  |-  ( ( ph /\ a e. ( 1 ... M ) ) -> ( D ` a ) = if ( a = I , a , if ( a < I , ( ( a + ( M - I ) ) + if ( I <_ ( a + ( M - I ) ) , 1 , 0 ) ) , ( ( a - I ) + if ( I <_ ( a - I ) , 1 , 0 ) ) ) ) ) | 
						
							| 50 | 49 | eqcomd |  |-  ( ( ph /\ a e. ( 1 ... M ) ) -> if ( a = I , a , if ( a < I , ( ( a + ( M - I ) ) + if ( I <_ ( a + ( M - I ) ) , 1 , 0 ) ) , ( ( a - I ) + if ( I <_ ( a - I ) , 1 , 0 ) ) ) ) = ( D ` a ) ) | 
						
							| 51 | 48 50 | eqtrd |  |-  ( ( ph /\ a e. ( 1 ... M ) ) -> ( C ` ( B ` ( A ` a ) ) ) = ( D ` a ) ) | 
						
							| 52 | 41 51 | eqtrd |  |-  ( ( ph /\ a e. ( 1 ... M ) ) -> ( ( C o. ( B o. A ) ) ` a ) = ( D ` a ) ) | 
						
							| 53 | 15 34 52 | eqfnfvd |  |-  ( ph -> ( C o. ( B o. A ) ) = D ) |