Step | Hyp | Ref
| Expression |
1 | | ofccat.1 |
. . . . . . . . . . 11
 Word   |
2 | | wrdf 13310 |
. . . . . . . . . . 11
 Word    ..^         |
3 | | ffn 6045 |
. . . . . . . . . . 11
    ..^        ..^       |
4 | 1, 2, 3 | 3syl 18 |
. . . . . . . . . 10
  ..^       |
5 | | ofccat.3 |
. . . . . . . . . . . 12
 Word   |
6 | | wrdf 13310 |
. . . . . . . . . . . 12
 Word    ..^         |
7 | | ffn 6045 |
. . . . . . . . . . . 12
    ..^        ..^       |
8 | 5, 6, 7 | 3syl 18 |
. . . . . . . . . . 11
  ..^       |
9 | | ofccat.5 |
. . . . . . . . . . . . 13
           |
10 | 9 | oveq2d 6666 |
. . . . . . . . . . . 12
  ..^      ..^       |
11 | 10 | fneq2d 5982 |
. . . . . . . . . . 11
   ..^    
 ..^        |
12 | 8, 11 | mpbird 247 |
. . . . . . . . . 10
  ..^       |
13 | | ovexd 6680 |
. . . . . . . . . 10
  ..^       |
14 | | inidm 3822 |
. . . . . . . . . 10
  ..^      ..^       ..^      |
15 | 4, 12, 13, 13, 14 | offn 6908 |
. . . . . . . . 9
       ..^       |
16 | | hashfn 13164 |
. . . . . . . . 9
       ..^                  ..^        |
17 | 15, 16 | syl 17 |
. . . . . . . 8
              ..^        |
18 | | wrdfin 13323 |
. . . . . . . . . 10
 Word   |
19 | | hashcl 13147 |
. . . . . . . . . 10
       |
20 | 1, 18, 19 | 3syl 18 |
. . . . . . . . 9
       |
21 | | hashfzo0 13217 |
. . . . . . . . 9
    
    ..^            |
22 | 20, 21 | syl 17 |
. . . . . . . 8
     ..^            |
23 | 17, 22 | eqtrd 2656 |
. . . . . . 7
                |
24 | 23 | adantr 481 |
. . . . . 6
 
 ..^                           |
25 | 24 | oveq2d 6666 |
. . . . 5
 
 ..^             ..^           ..^       |
26 | 25 | eleq2d 2687 |
. . . 4
 
 ..^              ..^         
 ..^        |
27 | 4 | ad2antrr 762 |
. . . . 5
    ..^             ..^            ..^       |
28 | 12 | ad2antrr 762 |
. . . . 5
    ..^             ..^            ..^       |
29 | | ovexd 6680 |
. . . . 5
    ..^             ..^            ..^       |
30 | 26 | biimpa 501 |
. . . . 5
    ..^             ..^            ..^       |
31 | | fnfvof 6911 |
. . . . 5
    ..^      ..^        ..^      ..^                              |
32 | 27, 28, 29, 30, 31 | syl22anc 1327 |
. . . 4
    ..^             ..^                                  |
33 | 23 | ad2antrr 762 |
. . . . . . 7
    ..^             ..^                          |
34 | 33 | oveq2d 6666 |
. . . . . 6
    ..^             ..^                              |
35 | 34 | fveq2d 6195 |
. . . . 5
    ..^             ..^                                                |
36 | | ofccat.2 |
. . . . . . . 8
 Word   |
37 | | wrdf 13310 |
. . . . . . . 8
 Word    ..^         |
38 | | ffn 6045 |
. . . . . . . 8
    ..^        ..^       |
39 | 36, 37, 38 | 3syl 18 |
. . . . . . 7
  ..^       |
40 | 39 | ad2antrr 762 |
. . . . . 6
    ..^             ..^            ..^       |
41 | | ofccat.4 |
. . . . . . . . 9
 Word   |
42 | | wrdf 13310 |
. . . . . . . . 9
 Word    ..^         |
43 | | ffn 6045 |
. . . . . . . . 9
    ..^        ..^       |
44 | 41, 42, 43 | 3syl 18 |
. . . . . . . 8
  ..^       |
45 | | ofccat.6 |
. . . . . . . . . 10
           |
46 | 45 | oveq2d 6666 |
. . . . . . . . 9
  ..^      ..^       |
47 | 46 | fneq2d 5982 |
. . . . . . . 8
   ..^    
 ..^        |
48 | 44, 47 | mpbird 247 |
. . . . . . 7
  ..^       |
49 | 48 | ad2antrr 762 |
. . . . . 6
    ..^             ..^            ..^       |
50 | | ovexd 6680 |
. . . . . 6
    ..^             ..^            ..^       |
51 | | simplr 792 |
. . . . . . 7
    ..^             ..^            ..^             |
52 | | simpr 477 |
. . . . . . . 8
    ..^             ..^          
 ..^            |
53 | 25 | adantr 481 |
. . . . . . . 8
    ..^             ..^            ..^           ..^       |
54 | 52, 53 | neleqtrd 2722 |
. . . . . . 7
    ..^             ..^          
 ..^       |
55 | 20 | ad2antrr 762 |
. . . . . . . 8
    ..^             ..^                 |
56 | 55 | nn0zd 11480 |
. . . . . . 7
    ..^             ..^                 |
57 | | wrdfin 13323 |
. . . . . . . . . 10
 Word   |
58 | | hashcl 13147 |
. . . . . . . . . 10
       |
59 | 36, 57, 58 | 3syl 18 |
. . . . . . . . 9
       |
60 | 59 | ad2antrr 762 |
. . . . . . . 8
    ..^             ..^                 |
61 | 60 | nn0zd 11480 |
. . . . . . 7
    ..^             ..^                 |
62 | | fzocatel 12531 |
. . . . . . 7
    ..^          
 ..^                        ..^       |
63 | 51, 54, 56, 61, 62 | syl22anc 1327 |
. . . . . 6
    ..^             ..^                  ..^       |
64 | | fnfvof 6911 |
. . . . . 6
    ..^      ..^        ..^            ..^                                                |
65 | 40, 49, 50, 63, 64 | syl22anc 1327 |
. . . . 5
    ..^             ..^                                                    |
66 | 35, 65 | eqtrd 2656 |
. . . 4
    ..^             ..^                                                         |
67 | 26, 32, 66 | ifbieq12d2 4119 |
. . 3
 
 ..^               ..^                                             ..^                                              |
68 | 67 | mpteq2dva 4744 |
. 2
   ..^              ..^                                             ..^              ..^                                               |
69 | | ovex 6678 |
. . . 4
      |
70 | | ovex 6678 |
. . . 4
      |
71 | | ccatfval 13358 |
. . . 4
      
            ++         ..^                        ..^                                             |
72 | 69, 70, 71 | mp2an 708 |
. . 3
      ++         ..^                        ..^                                            |
73 | | ovexd 6680 |
. . . . . . . . 9
  ..^       |
74 | | inidm 3822 |
. . . . . . . . 9
  ..^      ..^       ..^      |
75 | 39, 48, 73, 73, 74 | offn 6908 |
. . . . . . . 8
       ..^       |
76 | | hashfn 13164 |
. . . . . . . 8
       ..^                  ..^        |
77 | 75, 76 | syl 17 |
. . . . . . 7
              ..^        |
78 | | hashfzo0 13217 |
. . . . . . . 8
    
    ..^            |
79 | 59, 78 | syl 17 |
. . . . . . 7
     ..^            |
80 | 77, 79 | eqtrd 2656 |
. . . . . 6
                |
81 | 23, 80 | oveq12d 6668 |
. . . . 5
                                 |
82 | 81 | oveq2d 6666 |
. . . 4
  ..^                      ..^             |
83 | 82 | mpteq1d 4738 |
. . 3
   ..^                        ..^                                             ..^              ..^                                             |
84 | 72, 83 | syl5eq 2668 |
. 2
       ++         ..^              ..^                                             |
85 | | ovexd 6680 |
. . . . 5
  ..^             |
86 | | fvex 6201 |
. . . . . . 7
     |
87 | | fvex 6201 |
. . . . . . 7
           |
88 | 86, 87 | ifex 4156 |
. . . . . 6
   ..^                       |
89 | 88 | a1i 11 |
. . . . 5
 
 ..^               ..^                        |
90 | | fvex 6201 |
. . . . . . 7
     |
91 | | fvex 6201 |
. . . . . . 7
           |
92 | 90, 91 | ifex 4156 |
. . . . . 6
   ..^                       |
93 | 92 | a1i 11 |
. . . . 5
 
 ..^               ..^                        |
94 | | ccatfval 13358 |
. . . . . 6
  Word
Word   ++    ..^              ..^                         |
95 | 1, 36, 94 | syl2anc 693 |
. . . . 5
  ++    ..^              ..^                         |
96 | | ccatfval 13358 |
. . . . . . 7
  Word
Word   ++    ..^              ..^                         |
97 | 5, 41, 96 | syl2anc 693 |
. . . . . 6
  ++    ..^              ..^                         |
98 | 9, 45 | oveq12d 6668 |
. . . . . . . 8
                       |
99 | 98 | oveq2d 6666 |
. . . . . . 7
  ..^            ..^             |
100 | 99 | mpteq1d 4738 |
. . . . . 6
   ..^              ..^                         ..^              ..^                         |
101 | 97, 100 | eqtr4d 2659 |
. . . . 5
  ++    ..^              ..^                         |
102 | 85, 89, 93, 95, 101 | offval2 6914 |
. . . 4
   ++      ++     ..^               ..^                           ..^                          |
103 | 9 | adantr 481 |
. . . . . . . . 9
 
 ..^                      |
104 | 103 | oveq2d 6666 |
. . . . . . . 8
 
 ..^             ..^      ..^       |
105 | 104 | eleq2d 2687 |
. . . . . . 7
 
 ..^              ..^    
 ..^        |
106 | 103 | oveq2d 6666 |
. . . . . . . 8
 
 ..^                          |
107 | 106 | fveq2d 6195 |
. . . . . . 7
 
 ..^                                  |
108 | 105, 107 | ifbieq2d 4111 |
. . . . . 6
 
 ..^               ..^                         ..^                        |
109 | 108 | oveq2d 6666 |
. . . . 5
 
 ..^                ..^                           ..^                           ..^                           ..^                         |
110 | 109 | mpteq2dva 4744 |
. . . 4
   ..^               ..^                           ..^                          ..^               ..^                           ..^                          |
111 | 102, 110 | eqtr4d 2659 |
. . 3
   ++      ++     ..^               ..^                           ..^                          |
112 | | ovif12 6739 |
. . . 4
    ..^                           ..^                          ..^                                             |
113 | 112 | mpteq2i 4741 |
. . 3
  ..^               ..^                           ..^                          ..^              ..^                                              |
114 | 111, 113 | syl6eq 2672 |
. 2
   ++      ++     ..^              ..^                                               |
115 | 68, 84, 114 | 3eqtr4rd 2667 |
1
   ++      ++         ++         |