| Step | Hyp | Ref | Expression | 
						
							| 1 |  | gsmsymgrfix.s |  |-  S = ( SymGrp ` N ) | 
						
							| 2 |  | gsmsymgrfix.b |  |-  B = ( Base ` S ) | 
						
							| 3 |  | gsmsymgreq.z |  |-  Z = ( SymGrp ` M ) | 
						
							| 4 |  | gsmsymgreq.p |  |-  P = ( Base ` Z ) | 
						
							| 5 |  | gsmsymgreq.i |  |-  I = ( N i^i M ) | 
						
							| 6 |  | ccatws1len |  |-  ( X e. Word B -> ( # ` ( X ++ <" C "> ) ) = ( ( # ` X ) + 1 ) ) | 
						
							| 7 | 6 | oveq2d |  |-  ( X e. Word B -> ( 0 ..^ ( # ` ( X ++ <" C "> ) ) ) = ( 0 ..^ ( ( # ` X ) + 1 ) ) ) | 
						
							| 8 |  | lencl |  |-  ( X e. Word B -> ( # ` X ) e. NN0 ) | 
						
							| 9 |  | elnn0uz |  |-  ( ( # ` X ) e. NN0 <-> ( # ` X ) e. ( ZZ>= ` 0 ) ) | 
						
							| 10 | 8 9 | sylib |  |-  ( X e. Word B -> ( # ` X ) e. ( ZZ>= ` 0 ) ) | 
						
							| 11 |  | fzosplitsn |  |-  ( ( # ` X ) e. ( ZZ>= ` 0 ) -> ( 0 ..^ ( ( # ` X ) + 1 ) ) = ( ( 0 ..^ ( # ` X ) ) u. { ( # ` X ) } ) ) | 
						
							| 12 | 10 11 | syl |  |-  ( X e. Word B -> ( 0 ..^ ( ( # ` X ) + 1 ) ) = ( ( 0 ..^ ( # ` X ) ) u. { ( # ` X ) } ) ) | 
						
							| 13 | 7 12 | eqtrd |  |-  ( X e. Word B -> ( 0 ..^ ( # ` ( X ++ <" C "> ) ) ) = ( ( 0 ..^ ( # ` X ) ) u. { ( # ` X ) } ) ) | 
						
							| 14 | 13 | adantr |  |-  ( ( X e. Word B /\ C e. B ) -> ( 0 ..^ ( # ` ( X ++ <" C "> ) ) ) = ( ( 0 ..^ ( # ` X ) ) u. { ( # ` X ) } ) ) | 
						
							| 15 | 14 | 3ad2ant1 |  |-  ( ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) -> ( 0 ..^ ( # ` ( X ++ <" C "> ) ) ) = ( ( 0 ..^ ( # ` X ) ) u. { ( # ` X ) } ) ) | 
						
							| 16 | 15 | raleqdv |  |-  ( ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) -> ( A. i e. ( 0 ..^ ( # ` ( X ++ <" C "> ) ) ) A. n e. I ( ( ( X ++ <" C "> ) ` i ) ` n ) = ( ( ( Y ++ <" R "> ) ` i ) ` n ) <-> A. i e. ( ( 0 ..^ ( # ` X ) ) u. { ( # ` X ) } ) A. n e. I ( ( ( X ++ <" C "> ) ` i ) ` n ) = ( ( ( Y ++ <" R "> ) ` i ) ` n ) ) ) | 
						
							| 17 | 8 | adantr |  |-  ( ( X e. Word B /\ C e. B ) -> ( # ` X ) e. NN0 ) | 
						
							| 18 | 17 | 3ad2ant1 |  |-  ( ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) -> ( # ` X ) e. NN0 ) | 
						
							| 19 |  | fveq2 |  |-  ( i = ( # ` X ) -> ( ( X ++ <" C "> ) ` i ) = ( ( X ++ <" C "> ) ` ( # ` X ) ) ) | 
						
							| 20 | 19 | fveq1d |  |-  ( i = ( # ` X ) -> ( ( ( X ++ <" C "> ) ` i ) ` n ) = ( ( ( X ++ <" C "> ) ` ( # ` X ) ) ` n ) ) | 
						
							| 21 |  | fveq2 |  |-  ( i = ( # ` X ) -> ( ( Y ++ <" R "> ) ` i ) = ( ( Y ++ <" R "> ) ` ( # ` X ) ) ) | 
						
							| 22 | 21 | fveq1d |  |-  ( i = ( # ` X ) -> ( ( ( Y ++ <" R "> ) ` i ) ` n ) = ( ( ( Y ++ <" R "> ) ` ( # ` X ) ) ` n ) ) | 
						
							| 23 | 20 22 | eqeq12d |  |-  ( i = ( # ` X ) -> ( ( ( ( X ++ <" C "> ) ` i ) ` n ) = ( ( ( Y ++ <" R "> ) ` i ) ` n ) <-> ( ( ( X ++ <" C "> ) ` ( # ` X ) ) ` n ) = ( ( ( Y ++ <" R "> ) ` ( # ` X ) ) ` n ) ) ) | 
						
							| 24 | 23 | ralbidv |  |-  ( i = ( # ` X ) -> ( A. n e. I ( ( ( X ++ <" C "> ) ` i ) ` n ) = ( ( ( Y ++ <" R "> ) ` i ) ` n ) <-> A. n e. I ( ( ( X ++ <" C "> ) ` ( # ` X ) ) ` n ) = ( ( ( Y ++ <" R "> ) ` ( # ` X ) ) ` n ) ) ) | 
						
							| 25 | 24 | ralunsn |  |-  ( ( # ` X ) e. NN0 -> ( A. i e. ( ( 0 ..^ ( # ` X ) ) u. { ( # ` X ) } ) A. n e. I ( ( ( X ++ <" C "> ) ` i ) ` n ) = ( ( ( Y ++ <" R "> ) ` i ) ` n ) <-> ( A. i e. ( 0 ..^ ( # ` X ) ) A. n e. I ( ( ( X ++ <" C "> ) ` i ) ` n ) = ( ( ( Y ++ <" R "> ) ` i ) ` n ) /\ A. n e. I ( ( ( X ++ <" C "> ) ` ( # ` X ) ) ` n ) = ( ( ( Y ++ <" R "> ) ` ( # ` X ) ) ` n ) ) ) ) | 
						
							| 26 | 18 25 | syl |  |-  ( ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) -> ( A. i e. ( ( 0 ..^ ( # ` X ) ) u. { ( # ` X ) } ) A. n e. I ( ( ( X ++ <" C "> ) ` i ) ` n ) = ( ( ( Y ++ <" R "> ) ` i ) ` n ) <-> ( A. i e. ( 0 ..^ ( # ` X ) ) A. n e. I ( ( ( X ++ <" C "> ) ` i ) ` n ) = ( ( ( Y ++ <" R "> ) ` i ) ` n ) /\ A. n e. I ( ( ( X ++ <" C "> ) ` ( # ` X ) ) ` n ) = ( ( ( Y ++ <" R "> ) ` ( # ` X ) ) ` n ) ) ) ) | 
						
							| 27 |  | simp1l |  |-  ( ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) -> X e. Word B ) | 
						
							| 28 |  | ccats1val1 |  |-  ( ( X e. Word B /\ i e. ( 0 ..^ ( # ` X ) ) ) -> ( ( X ++ <" C "> ) ` i ) = ( X ` i ) ) | 
						
							| 29 | 27 28 | sylan |  |-  ( ( ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) /\ i e. ( 0 ..^ ( # ` X ) ) ) -> ( ( X ++ <" C "> ) ` i ) = ( X ` i ) ) | 
						
							| 30 | 29 | fveq1d |  |-  ( ( ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) /\ i e. ( 0 ..^ ( # ` X ) ) ) -> ( ( ( X ++ <" C "> ) ` i ) ` n ) = ( ( X ` i ) ` n ) ) | 
						
							| 31 |  | simp2l |  |-  ( ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) -> Y e. Word P ) | 
						
							| 32 |  | oveq2 |  |-  ( ( # ` X ) = ( # ` Y ) -> ( 0 ..^ ( # ` X ) ) = ( 0 ..^ ( # ` Y ) ) ) | 
						
							| 33 | 32 | eleq2d |  |-  ( ( # ` X ) = ( # ` Y ) -> ( i e. ( 0 ..^ ( # ` X ) ) <-> i e. ( 0 ..^ ( # ` Y ) ) ) ) | 
						
							| 34 | 33 | biimpd |  |-  ( ( # ` X ) = ( # ` Y ) -> ( i e. ( 0 ..^ ( # ` X ) ) -> i e. ( 0 ..^ ( # ` Y ) ) ) ) | 
						
							| 35 | 34 | 3ad2ant3 |  |-  ( ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) -> ( i e. ( 0 ..^ ( # ` X ) ) -> i e. ( 0 ..^ ( # ` Y ) ) ) ) | 
						
							| 36 | 35 | imp |  |-  ( ( ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) /\ i e. ( 0 ..^ ( # ` X ) ) ) -> i e. ( 0 ..^ ( # ` Y ) ) ) | 
						
							| 37 |  | ccats1val1 |  |-  ( ( Y e. Word P /\ i e. ( 0 ..^ ( # ` Y ) ) ) -> ( ( Y ++ <" R "> ) ` i ) = ( Y ` i ) ) | 
						
							| 38 | 31 36 37 | syl2an2r |  |-  ( ( ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) /\ i e. ( 0 ..^ ( # ` X ) ) ) -> ( ( Y ++ <" R "> ) ` i ) = ( Y ` i ) ) | 
						
							| 39 | 38 | fveq1d |  |-  ( ( ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) /\ i e. ( 0 ..^ ( # ` X ) ) ) -> ( ( ( Y ++ <" R "> ) ` i ) ` n ) = ( ( Y ` i ) ` n ) ) | 
						
							| 40 | 30 39 | eqeq12d |  |-  ( ( ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) /\ i e. ( 0 ..^ ( # ` X ) ) ) -> ( ( ( ( X ++ <" C "> ) ` i ) ` n ) = ( ( ( Y ++ <" R "> ) ` i ) ` n ) <-> ( ( X ` i ) ` n ) = ( ( Y ` i ) ` n ) ) ) | 
						
							| 41 | 40 | ralbidv |  |-  ( ( ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) /\ i e. ( 0 ..^ ( # ` X ) ) ) -> ( A. n e. I ( ( ( X ++ <" C "> ) ` i ) ` n ) = ( ( ( Y ++ <" R "> ) ` i ) ` n ) <-> A. n e. I ( ( X ` i ) ` n ) = ( ( Y ` i ) ` n ) ) ) | 
						
							| 42 | 41 | ralbidva |  |-  ( ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) -> ( A. i e. ( 0 ..^ ( # ` X ) ) A. n e. I ( ( ( X ++ <" C "> ) ` i ) ` n ) = ( ( ( Y ++ <" R "> ) ` i ) ` n ) <-> A. i e. ( 0 ..^ ( # ` X ) ) A. n e. I ( ( X ` i ) ` n ) = ( ( Y ` i ) ` n ) ) ) | 
						
							| 43 |  | eqidd |  |-  ( ( X e. Word B /\ C e. B ) -> ( # ` X ) = ( # ` X ) ) | 
						
							| 44 |  | ccats1val2 |  |-  ( ( X e. Word B /\ C e. B /\ ( # ` X ) = ( # ` X ) ) -> ( ( X ++ <" C "> ) ` ( # ` X ) ) = C ) | 
						
							| 45 | 44 | fveq1d |  |-  ( ( X e. Word B /\ C e. B /\ ( # ` X ) = ( # ` X ) ) -> ( ( ( X ++ <" C "> ) ` ( # ` X ) ) ` n ) = ( C ` n ) ) | 
						
							| 46 | 43 45 | mpd3an3 |  |-  ( ( X e. Word B /\ C e. B ) -> ( ( ( X ++ <" C "> ) ` ( # ` X ) ) ` n ) = ( C ` n ) ) | 
						
							| 47 | 46 | 3ad2ant1 |  |-  ( ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) -> ( ( ( X ++ <" C "> ) ` ( # ` X ) ) ` n ) = ( C ` n ) ) | 
						
							| 48 |  | ccats1val2 |  |-  ( ( Y e. Word P /\ R e. P /\ ( # ` X ) = ( # ` Y ) ) -> ( ( Y ++ <" R "> ) ` ( # ` X ) ) = R ) | 
						
							| 49 | 48 | fveq1d |  |-  ( ( Y e. Word P /\ R e. P /\ ( # ` X ) = ( # ` Y ) ) -> ( ( ( Y ++ <" R "> ) ` ( # ` X ) ) ` n ) = ( R ` n ) ) | 
						
							| 50 | 49 | 3expa |  |-  ( ( ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) -> ( ( ( Y ++ <" R "> ) ` ( # ` X ) ) ` n ) = ( R ` n ) ) | 
						
							| 51 | 50 | 3adant1 |  |-  ( ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) -> ( ( ( Y ++ <" R "> ) ` ( # ` X ) ) ` n ) = ( R ` n ) ) | 
						
							| 52 | 47 51 | eqeq12d |  |-  ( ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) -> ( ( ( ( X ++ <" C "> ) ` ( # ` X ) ) ` n ) = ( ( ( Y ++ <" R "> ) ` ( # ` X ) ) ` n ) <-> ( C ` n ) = ( R ` n ) ) ) | 
						
							| 53 | 52 | ralbidv |  |-  ( ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) -> ( A. n e. I ( ( ( X ++ <" C "> ) ` ( # ` X ) ) ` n ) = ( ( ( Y ++ <" R "> ) ` ( # ` X ) ) ` n ) <-> A. n e. I ( C ` n ) = ( R ` n ) ) ) | 
						
							| 54 | 42 53 | anbi12d |  |-  ( ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) -> ( ( A. i e. ( 0 ..^ ( # ` X ) ) A. n e. I ( ( ( X ++ <" C "> ) ` i ) ` n ) = ( ( ( Y ++ <" R "> ) ` i ) ` n ) /\ A. n e. I ( ( ( X ++ <" C "> ) ` ( # ` X ) ) ` n ) = ( ( ( Y ++ <" R "> ) ` ( # ` X ) ) ` n ) ) <-> ( A. i e. ( 0 ..^ ( # ` X ) ) A. n e. I ( ( X ` i ) ` n ) = ( ( Y ` i ) ` n ) /\ A. n e. I ( C ` n ) = ( R ` n ) ) ) ) | 
						
							| 55 | 16 26 54 | 3bitrd |  |-  ( ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) -> ( A. i e. ( 0 ..^ ( # ` ( X ++ <" C "> ) ) ) A. n e. I ( ( ( X ++ <" C "> ) ` i ) ` n ) = ( ( ( Y ++ <" R "> ) ` i ) ` n ) <-> ( A. i e. ( 0 ..^ ( # ` X ) ) A. n e. I ( ( X ` i ) ` n ) = ( ( Y ` i ) ` n ) /\ A. n e. I ( C ` n ) = ( R ` n ) ) ) ) | 
						
							| 56 | 55 | ad2antlr |  |-  ( ( ( ( N e. Fin /\ M e. Fin ) /\ ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) ) /\ ( A. i e. ( 0 ..^ ( # ` X ) ) A. n e. I ( ( X ` i ) ` n ) = ( ( Y ` i ) ` n ) -> A. n e. I ( ( S gsum X ) ` n ) = ( ( Z gsum Y ) ` n ) ) ) -> ( A. i e. ( 0 ..^ ( # ` ( X ++ <" C "> ) ) ) A. n e. I ( ( ( X ++ <" C "> ) ` i ) ` n ) = ( ( ( Y ++ <" R "> ) ` i ) ` n ) <-> ( A. i e. ( 0 ..^ ( # ` X ) ) A. n e. I ( ( X ` i ) ` n ) = ( ( Y ` i ) ` n ) /\ A. n e. I ( C ` n ) = ( R ` n ) ) ) ) | 
						
							| 57 |  | pm3.35 |  |-  ( ( A. i e. ( 0 ..^ ( # ` X ) ) A. n e. I ( ( X ` i ) ` n ) = ( ( Y ` i ) ` n ) /\ ( A. i e. ( 0 ..^ ( # ` X ) ) A. n e. I ( ( X ` i ) ` n ) = ( ( Y ` i ) ` n ) -> A. n e. I ( ( S gsum X ) ` n ) = ( ( Z gsum Y ) ` n ) ) ) -> A. n e. I ( ( S gsum X ) ` n ) = ( ( Z gsum Y ) ` n ) ) | 
						
							| 58 |  | fveq2 |  |-  ( n = j -> ( ( S gsum X ) ` n ) = ( ( S gsum X ) ` j ) ) | 
						
							| 59 |  | fveq2 |  |-  ( n = j -> ( ( Z gsum Y ) ` n ) = ( ( Z gsum Y ) ` j ) ) | 
						
							| 60 | 58 59 | eqeq12d |  |-  ( n = j -> ( ( ( S gsum X ) ` n ) = ( ( Z gsum Y ) ` n ) <-> ( ( S gsum X ) ` j ) = ( ( Z gsum Y ) ` j ) ) ) | 
						
							| 61 | 60 | cbvralvw |  |-  ( A. n e. I ( ( S gsum X ) ` n ) = ( ( Z gsum Y ) ` n ) <-> A. j e. I ( ( S gsum X ) ` j ) = ( ( Z gsum Y ) ` j ) ) | 
						
							| 62 |  | simp-4l |  |-  ( ( ( ( ( N e. Fin /\ M e. Fin ) /\ ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) ) /\ A. j e. I ( ( S gsum X ) ` j ) = ( ( Z gsum Y ) ` j ) ) /\ n e. I ) -> N e. Fin ) | 
						
							| 63 |  | simp-4r |  |-  ( ( ( ( ( N e. Fin /\ M e. Fin ) /\ ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) ) /\ A. j e. I ( ( S gsum X ) ` j ) = ( ( Z gsum Y ) ` j ) ) /\ n e. I ) -> M e. Fin ) | 
						
							| 64 |  | simpr |  |-  ( ( ( ( ( N e. Fin /\ M e. Fin ) /\ ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) ) /\ A. j e. I ( ( S gsum X ) ` j ) = ( ( Z gsum Y ) ` j ) ) /\ n e. I ) -> n e. I ) | 
						
							| 65 | 62 63 64 | 3jca |  |-  ( ( ( ( ( N e. Fin /\ M e. Fin ) /\ ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) ) /\ A. j e. I ( ( S gsum X ) ` j ) = ( ( Z gsum Y ) ` j ) ) /\ n e. I ) -> ( N e. Fin /\ M e. Fin /\ n e. I ) ) | 
						
							| 66 | 65 | adantr |  |-  ( ( ( ( ( ( N e. Fin /\ M e. Fin ) /\ ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) ) /\ A. j e. I ( ( S gsum X ) ` j ) = ( ( Z gsum Y ) ` j ) ) /\ n e. I ) /\ ( C ` n ) = ( R ` n ) ) -> ( N e. Fin /\ M e. Fin /\ n e. I ) ) | 
						
							| 67 |  | simp-4r |  |-  ( ( ( ( ( ( N e. Fin /\ M e. Fin ) /\ ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) ) /\ A. j e. I ( ( S gsum X ) ` j ) = ( ( Z gsum Y ) ` j ) ) /\ n e. I ) /\ ( C ` n ) = ( R ` n ) ) -> ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) ) | 
						
							| 68 |  | simplr |  |-  ( ( ( ( ( N e. Fin /\ M e. Fin ) /\ ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) ) /\ A. j e. I ( ( S gsum X ) ` j ) = ( ( Z gsum Y ) ` j ) ) /\ n e. I ) -> A. j e. I ( ( S gsum X ) ` j ) = ( ( Z gsum Y ) ` j ) ) | 
						
							| 69 | 68 | anim1i |  |-  ( ( ( ( ( ( N e. Fin /\ M e. Fin ) /\ ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) ) /\ A. j e. I ( ( S gsum X ) ` j ) = ( ( Z gsum Y ) ` j ) ) /\ n e. I ) /\ ( C ` n ) = ( R ` n ) ) -> ( A. j e. I ( ( S gsum X ) ` j ) = ( ( Z gsum Y ) ` j ) /\ ( C ` n ) = ( R ` n ) ) ) | 
						
							| 70 | 1 2 3 4 5 | gsmsymgreqlem1 |  |-  ( ( ( N e. Fin /\ M e. Fin /\ n e. I ) /\ ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) ) -> ( ( A. j e. I ( ( S gsum X ) ` j ) = ( ( Z gsum Y ) ` j ) /\ ( C ` n ) = ( R ` n ) ) -> ( ( S gsum ( X ++ <" C "> ) ) ` n ) = ( ( Z gsum ( Y ++ <" R "> ) ) ` n ) ) ) | 
						
							| 71 | 70 | imp |  |-  ( ( ( ( N e. Fin /\ M e. Fin /\ n e. I ) /\ ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) ) /\ ( A. j e. I ( ( S gsum X ) ` j ) = ( ( Z gsum Y ) ` j ) /\ ( C ` n ) = ( R ` n ) ) ) -> ( ( S gsum ( X ++ <" C "> ) ) ` n ) = ( ( Z gsum ( Y ++ <" R "> ) ) ` n ) ) | 
						
							| 72 | 66 67 69 71 | syl21anc |  |-  ( ( ( ( ( ( N e. Fin /\ M e. Fin ) /\ ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) ) /\ A. j e. I ( ( S gsum X ) ` j ) = ( ( Z gsum Y ) ` j ) ) /\ n e. I ) /\ ( C ` n ) = ( R ` n ) ) -> ( ( S gsum ( X ++ <" C "> ) ) ` n ) = ( ( Z gsum ( Y ++ <" R "> ) ) ` n ) ) | 
						
							| 73 | 72 | ex |  |-  ( ( ( ( ( N e. Fin /\ M e. Fin ) /\ ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) ) /\ A. j e. I ( ( S gsum X ) ` j ) = ( ( Z gsum Y ) ` j ) ) /\ n e. I ) -> ( ( C ` n ) = ( R ` n ) -> ( ( S gsum ( X ++ <" C "> ) ) ` n ) = ( ( Z gsum ( Y ++ <" R "> ) ) ` n ) ) ) | 
						
							| 74 | 73 | ralimdva |  |-  ( ( ( ( N e. Fin /\ M e. Fin ) /\ ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) ) /\ A. j e. I ( ( S gsum X ) ` j ) = ( ( Z gsum Y ) ` j ) ) -> ( A. n e. I ( C ` n ) = ( R ` n ) -> A. n e. I ( ( S gsum ( X ++ <" C "> ) ) ` n ) = ( ( Z gsum ( Y ++ <" R "> ) ) ` n ) ) ) | 
						
							| 75 | 74 | expcom |  |-  ( A. j e. I ( ( S gsum X ) ` j ) = ( ( Z gsum Y ) ` j ) -> ( ( ( N e. Fin /\ M e. Fin ) /\ ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) ) -> ( A. n e. I ( C ` n ) = ( R ` n ) -> A. n e. I ( ( S gsum ( X ++ <" C "> ) ) ` n ) = ( ( Z gsum ( Y ++ <" R "> ) ) ` n ) ) ) ) | 
						
							| 76 | 61 75 | sylbi |  |-  ( A. n e. I ( ( S gsum X ) ` n ) = ( ( Z gsum Y ) ` n ) -> ( ( ( N e. Fin /\ M e. Fin ) /\ ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) ) -> ( A. n e. I ( C ` n ) = ( R ` n ) -> A. n e. I ( ( S gsum ( X ++ <" C "> ) ) ` n ) = ( ( Z gsum ( Y ++ <" R "> ) ) ` n ) ) ) ) | 
						
							| 77 | 76 | com23 |  |-  ( A. n e. I ( ( S gsum X ) ` n ) = ( ( Z gsum Y ) ` n ) -> ( A. n e. I ( C ` n ) = ( R ` n ) -> ( ( ( N e. Fin /\ M e. Fin ) /\ ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) ) -> A. n e. I ( ( S gsum ( X ++ <" C "> ) ) ` n ) = ( ( Z gsum ( Y ++ <" R "> ) ) ` n ) ) ) ) | 
						
							| 78 | 57 77 | syl |  |-  ( ( A. i e. ( 0 ..^ ( # ` X ) ) A. n e. I ( ( X ` i ) ` n ) = ( ( Y ` i ) ` n ) /\ ( A. i e. ( 0 ..^ ( # ` X ) ) A. n e. I ( ( X ` i ) ` n ) = ( ( Y ` i ) ` n ) -> A. n e. I ( ( S gsum X ) ` n ) = ( ( Z gsum Y ) ` n ) ) ) -> ( A. n e. I ( C ` n ) = ( R ` n ) -> ( ( ( N e. Fin /\ M e. Fin ) /\ ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) ) -> A. n e. I ( ( S gsum ( X ++ <" C "> ) ) ` n ) = ( ( Z gsum ( Y ++ <" R "> ) ) ` n ) ) ) ) | 
						
							| 79 | 78 | impancom |  |-  ( ( A. i e. ( 0 ..^ ( # ` X ) ) A. n e. I ( ( X ` i ) ` n ) = ( ( Y ` i ) ` n ) /\ A. n e. I ( C ` n ) = ( R ` n ) ) -> ( ( A. i e. ( 0 ..^ ( # ` X ) ) A. n e. I ( ( X ` i ) ` n ) = ( ( Y ` i ) ` n ) -> A. n e. I ( ( S gsum X ) ` n ) = ( ( Z gsum Y ) ` n ) ) -> ( ( ( N e. Fin /\ M e. Fin ) /\ ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) ) -> A. n e. I ( ( S gsum ( X ++ <" C "> ) ) ` n ) = ( ( Z gsum ( Y ++ <" R "> ) ) ` n ) ) ) ) | 
						
							| 80 | 79 | com13 |  |-  ( ( ( N e. Fin /\ M e. Fin ) /\ ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) ) -> ( ( A. i e. ( 0 ..^ ( # ` X ) ) A. n e. I ( ( X ` i ) ` n ) = ( ( Y ` i ) ` n ) -> A. n e. I ( ( S gsum X ) ` n ) = ( ( Z gsum Y ) ` n ) ) -> ( ( A. i e. ( 0 ..^ ( # ` X ) ) A. n e. I ( ( X ` i ) ` n ) = ( ( Y ` i ) ` n ) /\ A. n e. I ( C ` n ) = ( R ` n ) ) -> A. n e. I ( ( S gsum ( X ++ <" C "> ) ) ` n ) = ( ( Z gsum ( Y ++ <" R "> ) ) ` n ) ) ) ) | 
						
							| 81 | 80 | imp |  |-  ( ( ( ( N e. Fin /\ M e. Fin ) /\ ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) ) /\ ( A. i e. ( 0 ..^ ( # ` X ) ) A. n e. I ( ( X ` i ) ` n ) = ( ( Y ` i ) ` n ) -> A. n e. I ( ( S gsum X ) ` n ) = ( ( Z gsum Y ) ` n ) ) ) -> ( ( A. i e. ( 0 ..^ ( # ` X ) ) A. n e. I ( ( X ` i ) ` n ) = ( ( Y ` i ) ` n ) /\ A. n e. I ( C ` n ) = ( R ` n ) ) -> A. n e. I ( ( S gsum ( X ++ <" C "> ) ) ` n ) = ( ( Z gsum ( Y ++ <" R "> ) ) ` n ) ) ) | 
						
							| 82 | 56 81 | sylbid |  |-  ( ( ( ( N e. Fin /\ M e. Fin ) /\ ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) ) /\ ( A. i e. ( 0 ..^ ( # ` X ) ) A. n e. I ( ( X ` i ) ` n ) = ( ( Y ` i ) ` n ) -> A. n e. I ( ( S gsum X ) ` n ) = ( ( Z gsum Y ) ` n ) ) ) -> ( A. i e. ( 0 ..^ ( # ` ( X ++ <" C "> ) ) ) A. n e. I ( ( ( X ++ <" C "> ) ` i ) ` n ) = ( ( ( Y ++ <" R "> ) ` i ) ` n ) -> A. n e. I ( ( S gsum ( X ++ <" C "> ) ) ` n ) = ( ( Z gsum ( Y ++ <" R "> ) ) ` n ) ) ) | 
						
							| 83 | 82 | ex |  |-  ( ( ( N e. Fin /\ M e. Fin ) /\ ( ( X e. Word B /\ C e. B ) /\ ( Y e. Word P /\ R e. P ) /\ ( # ` X ) = ( # ` Y ) ) ) -> ( ( A. i e. ( 0 ..^ ( # ` X ) ) A. n e. I ( ( X ` i ) ` n ) = ( ( Y ` i ) ` n ) -> A. n e. I ( ( S gsum X ) ` n ) = ( ( Z gsum Y ) ` n ) ) -> ( A. i e. ( 0 ..^ ( # ` ( X ++ <" C "> ) ) ) A. n e. I ( ( ( X ++ <" C "> ) ` i ) ` n ) = ( ( ( Y ++ <" R "> ) ` i ) ` n ) -> A. n e. I ( ( S gsum ( X ++ <" C "> ) ) ` n ) = ( ( Z gsum ( Y ++ <" R "> ) ) ` n ) ) ) ) |