| Step | Hyp | Ref
| Expression |
| 1 | | oveq2 6658 |
. . . . 5

 g   g    |
| 2 | | fveq2 6191 |
. . . . . . 7

reverse  reverse    |
| 3 | | rev0 13513 |
. . . . . . 7
reverse   |
| 4 | 2, 3 | syl6eq 2672 |
. . . . . 6

reverse    |
| 5 | 4 | oveq2d 6666 |
. . . . 5

 g reverse    g    |
| 6 | 1, 5 | eqeq12d 2637 |
. . . 4

  g   g reverse    g   g     |
| 7 | 6 | imbi2d 330 |
. . 3

   g   g reverse   

 g   g      |
| 8 | | oveq2 6658 |
. . . . 5
  g   g    |
| 9 | | fveq2 6191 |
. . . . . 6
 reverse  reverse    |
| 10 | 9 | oveq2d 6666 |
. . . . 5
  g reverse    g reverse     |
| 11 | 8, 10 | eqeq12d 2637 |
. . . 4
   g   g reverse    g   g reverse      |
| 12 | 11 | imbi2d 330 |
. . 3
    g   g reverse   

 g   g reverse       |
| 13 | | oveq2 6658 |
. . . . 5
  ++       g   g  ++         |
| 14 | | fveq2 6191 |
. . . . . 6
  ++      reverse  reverse  ++         |
| 15 | 14 | oveq2d 6666 |
. . . . 5
  ++       g reverse    g reverse  ++          |
| 16 | 13, 15 | eqeq12d 2637 |
. . . 4
  ++        g   g reverse  
 g  ++        g reverse  ++           |
| 17 | 16 | imbi2d 330 |
. . 3
  ++         g   g reverse   

 g  ++        g reverse  ++            |
| 18 | | oveq2 6658 |
. . . . 5
  g   g    |
| 19 | | fveq2 6191 |
. . . . . 6
 reverse  reverse    |
| 20 | 19 | oveq2d 6666 |
. . . . 5
  g reverse    g reverse     |
| 21 | 18, 20 | eqeq12d 2637 |
. . . 4
   g   g reverse    g   g reverse      |
| 22 | 21 | imbi2d 330 |
. . 3
    g   g reverse   

 g   g reverse       |
| 23 | | gsumwrev.o |
. . . . . . 7
oppg   |
| 24 | | eqid 2622 |
. . . . . . 7
         |
| 25 | 23, 24 | oppgid 17786 |
. . . . . 6
         |
| 26 | 25 | gsum0 17278 |
. . . . 5
 g       |
| 27 | 24 | gsum0 17278 |
. . . . 5
 g       |
| 28 | 26, 27 | eqtr4i 2647 |
. . . 4
 g   g   |
| 29 | 28 | a1i 11 |
. . 3
  g 
 g    |
| 30 | | oveq2 6658 |
. . . . . 6
  g   g reverse  
  
    g          g reverse      |
| 31 | 23 | oppgmnd 17784 |
. . . . . . . . . 10
   |
| 32 | 31 | adantr 481 |
. . . . . . . . 9
   Word
    |
| 33 | | simprl 794 |
. . . . . . . . 9
   Word
  Word   |
| 34 | | simprr 796 |
. . . . . . . . . 10
   Word
    |
| 35 | 34 | s1cld 13383 |
. . . . . . . . 9
   Word
      Word
  |
| 36 | | gsumwrev.b |
. . . . . . . . . . 11
     |
| 37 | 23, 36 | oppgbas 17781 |
. . . . . . . . . 10
     |
| 38 | | eqid 2622 |
. . . . . . . . . 10
       |
| 39 | 37, 38 | gsumccat 17378 |
. . . . . . . . 9
 
Word     Word 
 g  ++         g        g         |
| 40 | 32, 33, 35, 39 | syl3anc 1326 |
. . . . . . . 8
   Word
   g  ++         g        g         |
| 41 | 37 | gsumws1 17376 |
. . . . . . . . . . 11
  g     
  |
| 42 | 41 | ad2antll 765 |
. . . . . . . . . 10
   Word
   g     
  |
| 43 | 42 | oveq2d 6666 |
. . . . . . . . 9
   Word
    g        g         g          |
| 44 | | eqid 2622 |
. . . . . . . . . 10
       |
| 45 | 44, 23, 38 | oppgplus 17779 |
. . . . . . . . 9
  g               g    |
| 46 | 43, 45 | syl6eq 2672 |
. . . . . . . 8
   Word
    g        g              g     |
| 47 | 40, 46 | eqtrd 2656 |
. . . . . . 7
   Word
   g  ++              g     |
| 48 | | revccat 13515 |
. . . . . . . . . . 11
  Word     Word  reverse  ++        reverse      ++ reverse     |
| 49 | 33, 35, 48 | syl2anc 693 |
. . . . . . . . . 10
   Word
  reverse  ++        reverse      ++ reverse     |
| 50 | | revs1 13514 |
. . . . . . . . . . 11
reverse           |
| 51 | 50 | oveq1i 6660 |
. . . . . . . . . 10
 reverse      ++ reverse        ++ reverse    |
| 52 | 49, 51 | syl6eq 2672 |
. . . . . . . . 9
   Word
  reverse  ++            ++ reverse     |
| 53 | 52 | oveq2d 6666 |
. . . . . . . 8
   Word
   g reverse  ++         g      ++ reverse      |
| 54 | | simpl 473 |
. . . . . . . . 9
   Word
    |
| 55 | | revcl 13510 |
. . . . . . . . . 10
 Word reverse  Word   |
| 56 | 55 | ad2antrl 764 |
. . . . . . . . 9
   Word
  reverse  Word   |
| 57 | 36, 44 | gsumccat 17378 |
. . . . . . . . 9
      Word reverse  Word
  g      ++ reverse      g            g reverse      |
| 58 | 54, 35, 56, 57 | syl3anc 1326 |
. . . . . . . 8
   Word
   g      ++ reverse      g            g reverse      |
| 59 | 36 | gsumws1 17376 |
. . . . . . . . . 10
  g     
  |
| 60 | 59 | ad2antll 765 |
. . . . . . . . 9
   Word
   g     
  |
| 61 | 60 | oveq1d 6665 |
. . . . . . . 8
   Word
    g            g reverse           g reverse      |
| 62 | 53, 58, 61 | 3eqtrd 2660 |
. . . . . . 7
   Word
   g reverse  ++               g reverse      |
| 63 | 47, 62 | eqeq12d 2637 |
. . . . . 6
   Word
    g  ++        g reverse  ++       
  
    g          g reverse       |
| 64 | 30, 63 | syl5ibr 236 |
. . . . 5
   Word
    g   g reverse  
 g  ++        g reverse  ++           |
| 65 | 64 | expcom 451 |
. . . 4
  Word
    g   g reverse    g  ++        g reverse  ++            |
| 66 | 65 | a2d 29 |
. . 3
  Word
    g   g reverse      g  ++        g reverse  ++            |
| 67 | 7, 12, 17, 22, 29, 66 | wrdind 13476 |
. 2
 Word 
 g   g reverse      |
| 68 | 67 | impcom 446 |
1
 
Word   g   g reverse     |