| Step | Hyp | Ref | Expression | 
						
							| 1 |  | derang.d |  | 
						
							| 2 |  | subfac.n |  | 
						
							| 3 |  | subfacp1lem.a |  | 
						
							| 4 |  | peano2nn |  | 
						
							| 5 | 4 | nnnn0d |  | 
						
							| 6 | 1 2 | subfacval |  | 
						
							| 7 | 5 6 | syl |  | 
						
							| 8 |  | fzfid |  | 
						
							| 9 | 1 | derangval |  | 
						
							| 10 | 8 9 | syl |  | 
						
							| 11 | 3 | fveq2i |  | 
						
							| 12 | 10 11 | eqtr4di |  | 
						
							| 13 |  | nnuz |  | 
						
							| 14 | 4 13 | eleqtrdi |  | 
						
							| 15 |  | eluzfz1 |  | 
						
							| 16 | 14 15 | syl |  | 
						
							| 17 |  | f1of |  | 
						
							| 18 | 17 | adantr |  | 
						
							| 19 |  | ffvelcdm |  | 
						
							| 20 | 19 | expcom |  | 
						
							| 21 | 16 18 20 | syl2im |  | 
						
							| 22 | 21 | ss2abdv |  | 
						
							| 23 |  | fveq1 |  | 
						
							| 24 | 23 | eleq1d |  | 
						
							| 25 | 24 | cbvabv |  | 
						
							| 26 | 22 3 25 | 3sstr4g |  | 
						
							| 27 |  | ssabral |  | 
						
							| 28 | 26 27 | sylib |  | 
						
							| 29 |  | rabid2 |  | 
						
							| 30 | 28 29 | sylibr |  | 
						
							| 31 | 30 | fveq2d |  | 
						
							| 32 | 7 12 31 | 3eqtrd |  | 
						
							| 33 |  | elfz1end |  | 
						
							| 34 | 4 33 | sylib |  | 
						
							| 35 |  | eleq1 |  | 
						
							| 36 |  | oveq2 |  | 
						
							| 37 |  | 1z |  | 
						
							| 38 |  | fzsn |  | 
						
							| 39 | 37 38 | ax-mp |  | 
						
							| 40 | 36 39 | eqtrdi |  | 
						
							| 41 | 40 | eleq2d |  | 
						
							| 42 |  | fvex |  | 
						
							| 43 | 42 | elsn |  | 
						
							| 44 | 41 43 | bitrdi |  | 
						
							| 45 | 44 | rabbidv |  | 
						
							| 46 | 45 | fveq2d |  | 
						
							| 47 |  | oveq1 |  | 
						
							| 48 |  | 1m1e0 |  | 
						
							| 49 | 47 48 | eqtrdi |  | 
						
							| 50 | 49 | oveq1d |  | 
						
							| 51 | 46 50 | eqeq12d |  | 
						
							| 52 | 35 51 | imbi12d |  | 
						
							| 53 | 52 | imbi2d |  | 
						
							| 54 |  | eleq1 |  | 
						
							| 55 |  | oveq2 |  | 
						
							| 56 | 55 | eleq2d |  | 
						
							| 57 | 56 | rabbidv |  | 
						
							| 58 | 57 | fveq2d |  | 
						
							| 59 |  | oveq1 |  | 
						
							| 60 | 59 | oveq1d |  | 
						
							| 61 | 58 60 | eqeq12d |  | 
						
							| 62 | 54 61 | imbi12d |  | 
						
							| 63 | 62 | imbi2d |  | 
						
							| 64 |  | eleq1 |  | 
						
							| 65 |  | oveq2 |  | 
						
							| 66 | 65 | eleq2d |  | 
						
							| 67 | 66 | rabbidv |  | 
						
							| 68 | 67 | fveq2d |  | 
						
							| 69 |  | oveq1 |  | 
						
							| 70 | 69 | oveq1d |  | 
						
							| 71 | 68 70 | eqeq12d |  | 
						
							| 72 | 64 71 | imbi12d |  | 
						
							| 73 | 72 | imbi2d |  | 
						
							| 74 |  | eleq1 |  | 
						
							| 75 |  | oveq2 |  | 
						
							| 76 | 75 | eleq2d |  | 
						
							| 77 | 76 | rabbidv |  | 
						
							| 78 | 77 | fveq2d |  | 
						
							| 79 |  | oveq1 |  | 
						
							| 80 | 79 | oveq1d |  | 
						
							| 81 | 78 80 | eqeq12d |  | 
						
							| 82 | 74 81 | imbi12d |  | 
						
							| 83 | 82 | imbi2d |  | 
						
							| 84 |  | hash0 |  | 
						
							| 85 |  | fveq2 |  | 
						
							| 86 |  | id |  | 
						
							| 87 | 85 86 | neeq12d |  | 
						
							| 88 | 87 | rspcv |  | 
						
							| 89 | 16 88 | syl |  | 
						
							| 90 | 89 | adantld |  | 
						
							| 91 | 90 | ss2abdv |  | 
						
							| 92 |  | df-ne |  | 
						
							| 93 | 23 | neeq1d |  | 
						
							| 94 | 92 93 | bitr3id |  | 
						
							| 95 | 94 | cbvabv |  | 
						
							| 96 | 91 3 95 | 3sstr4g |  | 
						
							| 97 |  | ssabral |  | 
						
							| 98 | 96 97 | sylib |  | 
						
							| 99 |  | rabeq0 |  | 
						
							| 100 | 98 99 | sylibr |  | 
						
							| 101 | 100 | fveq2d |  | 
						
							| 102 |  | nnnn0 |  | 
						
							| 103 | 1 2 | subfacf |  | 
						
							| 104 | 103 | ffvelcdmi |  | 
						
							| 105 | 102 104 | syl |  | 
						
							| 106 |  | nnm1nn0 |  | 
						
							| 107 | 103 | ffvelcdmi |  | 
						
							| 108 | 106 107 | syl |  | 
						
							| 109 | 105 108 | nn0addcld |  | 
						
							| 110 | 109 | nn0cnd |  | 
						
							| 111 | 110 | mul02d |  | 
						
							| 112 | 84 101 111 | 3eqtr4a |  | 
						
							| 113 | 112 | a1d |  | 
						
							| 114 |  | simplr |  | 
						
							| 115 | 114 13 | eleqtrdi |  | 
						
							| 116 |  | peano2fzr |  | 
						
							| 117 | 115 116 | sylancom |  | 
						
							| 118 | 117 | ex |  | 
						
							| 119 | 118 | imim1d |  | 
						
							| 120 |  | oveq1 |  | 
						
							| 121 |  | elfzp1 |  | 
						
							| 122 | 115 121 | syl |  | 
						
							| 123 | 122 | rabbidv |  | 
						
							| 124 |  | unrab |  | 
						
							| 125 | 123 124 | eqtr4di |  | 
						
							| 126 | 125 | fveq2d |  | 
						
							| 127 |  | fzfi |  | 
						
							| 128 |  | deranglem |  | 
						
							| 129 | 127 128 | ax-mp |  | 
						
							| 130 | 3 129 | eqeltri |  | 
						
							| 131 |  | ssrab2 |  | 
						
							| 132 |  | ssfi |  | 
						
							| 133 | 130 131 132 | mp2an |  | 
						
							| 134 |  | ssrab2 |  | 
						
							| 135 |  | ssfi |  | 
						
							| 136 | 130 134 135 | mp2an |  | 
						
							| 137 |  | inrab |  | 
						
							| 138 |  | fzp1disj |  | 
						
							| 139 | 42 | elsn |  | 
						
							| 140 |  | inelcm |  | 
						
							| 141 | 139 140 | sylan2br |  | 
						
							| 142 | 141 | necon2bi |  | 
						
							| 143 | 138 142 | ax-mp |  | 
						
							| 144 | 143 | rgenw |  | 
						
							| 145 |  | rabeq0 |  | 
						
							| 146 | 144 145 | mpbir |  | 
						
							| 147 | 137 146 | eqtri |  | 
						
							| 148 |  | hashun |  | 
						
							| 149 | 133 136 147 148 | mp3an |  | 
						
							| 150 | 126 149 | eqtrdi |  | 
						
							| 151 |  | nncn |  | 
						
							| 152 | 151 | ad2antlr |  | 
						
							| 153 |  | ax-1cn |  | 
						
							| 154 | 153 | a1i |  | 
						
							| 155 | 152 154 154 | addsubd |  | 
						
							| 156 | 155 | oveq1d |  | 
						
							| 157 |  | subcl |  | 
						
							| 158 | 152 153 157 | sylancl |  | 
						
							| 159 | 109 | ad2antrr |  | 
						
							| 160 | 159 | nn0cnd |  | 
						
							| 161 | 158 154 160 | adddird |  | 
						
							| 162 | 160 | mullidd |  | 
						
							| 163 |  | exmidne |  | 
						
							| 164 |  | orcom |  | 
						
							| 165 | 163 164 | mpbi |  | 
						
							| 166 | 165 | biantru |  | 
						
							| 167 |  | andi |  | 
						
							| 168 | 166 167 | bitri |  | 
						
							| 169 | 168 | rabbii |  | 
						
							| 170 |  | unrab |  | 
						
							| 171 | 169 170 | eqtr4i |  | 
						
							| 172 | 171 | fveq2i |  | 
						
							| 173 |  | ssrab2 |  | 
						
							| 174 |  | ssfi |  | 
						
							| 175 | 130 173 174 | mp2an |  | 
						
							| 176 |  | ssrab2 |  | 
						
							| 177 |  | ssfi |  | 
						
							| 178 | 130 176 177 | mp2an |  | 
						
							| 179 |  | inrab |  | 
						
							| 180 |  | simpr |  | 
						
							| 181 | 180 | necon3ai |  | 
						
							| 182 | 181 | adantl |  | 
						
							| 183 |  | imnan |  | 
						
							| 184 | 182 183 | mpbi |  | 
						
							| 185 | 184 | rgenw |  | 
						
							| 186 |  | rabeq0 |  | 
						
							| 187 | 185 186 | mpbir |  | 
						
							| 188 | 179 187 | eqtri |  | 
						
							| 189 |  | hashun |  | 
						
							| 190 | 175 178 188 189 | mp3an |  | 
						
							| 191 | 172 190 | eqtri |  | 
						
							| 192 |  | simpll |  | 
						
							| 193 |  | nnne0 |  | 
						
							| 194 |  | 0p1e1 |  | 
						
							| 195 | 194 | eqeq2i |  | 
						
							| 196 |  | 0cn |  | 
						
							| 197 |  | addcan2 |  | 
						
							| 198 | 196 153 197 | mp3an23 |  | 
						
							| 199 | 151 198 | syl |  | 
						
							| 200 | 195 199 | bitr3id |  | 
						
							| 201 | 200 | necon3bbid |  | 
						
							| 202 | 193 201 | mpbird |  | 
						
							| 203 | 202 | ad2antlr |  | 
						
							| 204 | 14 | adantr |  | 
						
							| 205 |  | elfzp12 |  | 
						
							| 206 | 204 205 | syl |  | 
						
							| 207 | 206 | biimpa |  | 
						
							| 208 | 207 | ord |  | 
						
							| 209 | 203 208 | mpd |  | 
						
							| 210 |  | df-2 |  | 
						
							| 211 | 210 | oveq1i |  | 
						
							| 212 | 209 211 | eleqtrrdi |  | 
						
							| 213 |  | ovex |  | 
						
							| 214 |  | eqid |  | 
						
							| 215 |  | fveq1 |  | 
						
							| 216 | 215 | eqeq1d |  | 
						
							| 217 |  | fveq1 |  | 
						
							| 218 | 217 | neeq1d |  | 
						
							| 219 | 216 218 | anbi12d |  | 
						
							| 220 | 219 | cbvrabv |  | 
						
							| 221 |  | eqid |  | 
						
							| 222 |  | f1oeq1 |  | 
						
							| 223 |  | fveq2 |  | 
						
							| 224 |  | id |  | 
						
							| 225 | 223 224 | neeq12d |  | 
						
							| 226 | 225 | cbvralvw |  | 
						
							| 227 |  | fveq1 |  | 
						
							| 228 | 227 | neeq1d |  | 
						
							| 229 | 228 | ralbidv |  | 
						
							| 230 | 226 229 | bitrid |  | 
						
							| 231 | 222 230 | anbi12d |  | 
						
							| 232 | 231 | cbvabv |  | 
						
							| 233 | 1 2 3 192 212 213 214 220 221 232 | subfacp1lem5 |  | 
						
							| 234 | 217 | eqeq1d |  | 
						
							| 235 | 216 234 | anbi12d |  | 
						
							| 236 | 235 | cbvrabv |  | 
						
							| 237 |  | f1oeq1 |  | 
						
							| 238 | 225 | cbvralvw |  | 
						
							| 239 | 228 | ralbidv |  | 
						
							| 240 | 238 239 | bitrid |  | 
						
							| 241 | 237 240 | anbi12d |  | 
						
							| 242 | 241 | cbvabv |  | 
						
							| 243 | 1 2 3 192 212 213 214 236 242 | subfacp1lem3 |  | 
						
							| 244 | 233 243 | oveq12d |  | 
						
							| 245 | 191 244 | eqtrid |  | 
						
							| 246 | 162 245 | eqtr4d |  | 
						
							| 247 | 246 | oveq2d |  | 
						
							| 248 | 156 161 247 | 3eqtrd |  | 
						
							| 249 | 150 248 | eqeq12d |  | 
						
							| 250 | 120 249 | imbitrrid |  | 
						
							| 251 | 250 | ex |  | 
						
							| 252 | 251 | a2d |  | 
						
							| 253 | 119 252 | syld |  | 
						
							| 254 | 253 | expcom |  | 
						
							| 255 | 254 | a2d |  | 
						
							| 256 | 53 63 73 83 113 255 | nnind |  | 
						
							| 257 | 4 256 | mpcom |  | 
						
							| 258 | 34 257 | mpd |  | 
						
							| 259 |  | nncn |  | 
						
							| 260 |  | pncan |  | 
						
							| 261 | 259 153 260 | sylancl |  | 
						
							| 262 | 261 | oveq1d |  | 
						
							| 263 | 32 258 262 | 3eqtrd |  |