| Step |
Hyp |
Ref |
Expression |
| 1 |
|
derang.d |
|- D = ( x e. Fin |-> ( # ` { f | ( f : x -1-1-onto-> x /\ A. y e. x ( f ` y ) =/= y ) } ) ) |
| 2 |
|
subfac.n |
|- S = ( n e. NN0 |-> ( D ` ( 1 ... n ) ) ) |
| 3 |
|
subfacp1lem.a |
|- A = { f | ( f : ( 1 ... ( N + 1 ) ) -1-1-onto-> ( 1 ... ( N + 1 ) ) /\ A. y e. ( 1 ... ( N + 1 ) ) ( f ` y ) =/= y ) } |
| 4 |
|
subfacp1lem1.n |
|- ( ph -> N e. NN ) |
| 5 |
|
subfacp1lem1.m |
|- ( ph -> M e. ( 2 ... ( N + 1 ) ) ) |
| 6 |
|
subfacp1lem1.x |
|- M e. _V |
| 7 |
|
subfacp1lem1.k |
|- K = ( ( 2 ... ( N + 1 ) ) \ { M } ) |
| 8 |
|
disj |
|- ( ( K i^i { 1 , M } ) = (/) <-> A. x e. K -. x e. { 1 , M } ) |
| 9 |
|
eldifi |
|- ( x e. ( ( 2 ... ( N + 1 ) ) \ { M } ) -> x e. ( 2 ... ( N + 1 ) ) ) |
| 10 |
|
elfzle1 |
|- ( x e. ( 2 ... ( N + 1 ) ) -> 2 <_ x ) |
| 11 |
|
1lt2 |
|- 1 < 2 |
| 12 |
|
1re |
|- 1 e. RR |
| 13 |
|
2re |
|- 2 e. RR |
| 14 |
12 13
|
ltnlei |
|- ( 1 < 2 <-> -. 2 <_ 1 ) |
| 15 |
11 14
|
mpbi |
|- -. 2 <_ 1 |
| 16 |
|
breq2 |
|- ( x = 1 -> ( 2 <_ x <-> 2 <_ 1 ) ) |
| 17 |
15 16
|
mtbiri |
|- ( x = 1 -> -. 2 <_ x ) |
| 18 |
17
|
necon2ai |
|- ( 2 <_ x -> x =/= 1 ) |
| 19 |
9 10 18
|
3syl |
|- ( x e. ( ( 2 ... ( N + 1 ) ) \ { M } ) -> x =/= 1 ) |
| 20 |
|
eldifsni |
|- ( x e. ( ( 2 ... ( N + 1 ) ) \ { M } ) -> x =/= M ) |
| 21 |
19 20
|
jca |
|- ( x e. ( ( 2 ... ( N + 1 ) ) \ { M } ) -> ( x =/= 1 /\ x =/= M ) ) |
| 22 |
21 7
|
eleq2s |
|- ( x e. K -> ( x =/= 1 /\ x =/= M ) ) |
| 23 |
|
neanior |
|- ( ( x =/= 1 /\ x =/= M ) <-> -. ( x = 1 \/ x = M ) ) |
| 24 |
22 23
|
sylib |
|- ( x e. K -> -. ( x = 1 \/ x = M ) ) |
| 25 |
|
vex |
|- x e. _V |
| 26 |
25
|
elpr |
|- ( x e. { 1 , M } <-> ( x = 1 \/ x = M ) ) |
| 27 |
24 26
|
sylnibr |
|- ( x e. K -> -. x e. { 1 , M } ) |
| 28 |
8 27
|
mprgbir |
|- ( K i^i { 1 , M } ) = (/) |
| 29 |
28
|
a1i |
|- ( ph -> ( K i^i { 1 , M } ) = (/) ) |
| 30 |
|
uncom |
|- ( { 1 } u. ( K u. { M } ) ) = ( ( K u. { M } ) u. { 1 } ) |
| 31 |
|
1z |
|- 1 e. ZZ |
| 32 |
|
fzsn |
|- ( 1 e. ZZ -> ( 1 ... 1 ) = { 1 } ) |
| 33 |
31 32
|
ax-mp |
|- ( 1 ... 1 ) = { 1 } |
| 34 |
7
|
uneq1i |
|- ( K u. { M } ) = ( ( ( 2 ... ( N + 1 ) ) \ { M } ) u. { M } ) |
| 35 |
|
undif1 |
|- ( ( ( 2 ... ( N + 1 ) ) \ { M } ) u. { M } ) = ( ( 2 ... ( N + 1 ) ) u. { M } ) |
| 36 |
34 35
|
eqtr2i |
|- ( ( 2 ... ( N + 1 ) ) u. { M } ) = ( K u. { M } ) |
| 37 |
33 36
|
uneq12i |
|- ( ( 1 ... 1 ) u. ( ( 2 ... ( N + 1 ) ) u. { M } ) ) = ( { 1 } u. ( K u. { M } ) ) |
| 38 |
|
df-pr |
|- { 1 , M } = ( { 1 } u. { M } ) |
| 39 |
38
|
equncomi |
|- { 1 , M } = ( { M } u. { 1 } ) |
| 40 |
39
|
uneq2i |
|- ( K u. { 1 , M } ) = ( K u. ( { M } u. { 1 } ) ) |
| 41 |
|
unass |
|- ( ( K u. { M } ) u. { 1 } ) = ( K u. ( { M } u. { 1 } ) ) |
| 42 |
40 41
|
eqtr4i |
|- ( K u. { 1 , M } ) = ( ( K u. { M } ) u. { 1 } ) |
| 43 |
30 37 42
|
3eqtr4i |
|- ( ( 1 ... 1 ) u. ( ( 2 ... ( N + 1 ) ) u. { M } ) ) = ( K u. { 1 , M } ) |
| 44 |
5
|
snssd |
|- ( ph -> { M } C_ ( 2 ... ( N + 1 ) ) ) |
| 45 |
|
ssequn2 |
|- ( { M } C_ ( 2 ... ( N + 1 ) ) <-> ( ( 2 ... ( N + 1 ) ) u. { M } ) = ( 2 ... ( N + 1 ) ) ) |
| 46 |
44 45
|
sylib |
|- ( ph -> ( ( 2 ... ( N + 1 ) ) u. { M } ) = ( 2 ... ( N + 1 ) ) ) |
| 47 |
|
df-2 |
|- 2 = ( 1 + 1 ) |
| 48 |
47
|
oveq1i |
|- ( 2 ... ( N + 1 ) ) = ( ( 1 + 1 ) ... ( N + 1 ) ) |
| 49 |
46 48
|
eqtrdi |
|- ( ph -> ( ( 2 ... ( N + 1 ) ) u. { M } ) = ( ( 1 + 1 ) ... ( N + 1 ) ) ) |
| 50 |
49
|
uneq2d |
|- ( ph -> ( ( 1 ... 1 ) u. ( ( 2 ... ( N + 1 ) ) u. { M } ) ) = ( ( 1 ... 1 ) u. ( ( 1 + 1 ) ... ( N + 1 ) ) ) ) |
| 51 |
4
|
peano2nnd |
|- ( ph -> ( N + 1 ) e. NN ) |
| 52 |
|
nnuz |
|- NN = ( ZZ>= ` 1 ) |
| 53 |
51 52
|
eleqtrdi |
|- ( ph -> ( N + 1 ) e. ( ZZ>= ` 1 ) ) |
| 54 |
|
eluzfz1 |
|- ( ( N + 1 ) e. ( ZZ>= ` 1 ) -> 1 e. ( 1 ... ( N + 1 ) ) ) |
| 55 |
|
fzsplit |
|- ( 1 e. ( 1 ... ( N + 1 ) ) -> ( 1 ... ( N + 1 ) ) = ( ( 1 ... 1 ) u. ( ( 1 + 1 ) ... ( N + 1 ) ) ) ) |
| 56 |
53 54 55
|
3syl |
|- ( ph -> ( 1 ... ( N + 1 ) ) = ( ( 1 ... 1 ) u. ( ( 1 + 1 ) ... ( N + 1 ) ) ) ) |
| 57 |
50 56
|
eqtr4d |
|- ( ph -> ( ( 1 ... 1 ) u. ( ( 2 ... ( N + 1 ) ) u. { M } ) ) = ( 1 ... ( N + 1 ) ) ) |
| 58 |
43 57
|
eqtr3id |
|- ( ph -> ( K u. { 1 , M } ) = ( 1 ... ( N + 1 ) ) ) |
| 59 |
47
|
oveq2i |
|- ( ( N + 1 ) - 2 ) = ( ( N + 1 ) - ( 1 + 1 ) ) |
| 60 |
|
fzfi |
|- ( 2 ... ( N + 1 ) ) e. Fin |
| 61 |
|
diffi |
|- ( ( 2 ... ( N + 1 ) ) e. Fin -> ( ( 2 ... ( N + 1 ) ) \ { M } ) e. Fin ) |
| 62 |
60 61
|
ax-mp |
|- ( ( 2 ... ( N + 1 ) ) \ { M } ) e. Fin |
| 63 |
7 62
|
eqeltri |
|- K e. Fin |
| 64 |
|
prfi |
|- { 1 , M } e. Fin |
| 65 |
|
hashun |
|- ( ( K e. Fin /\ { 1 , M } e. Fin /\ ( K i^i { 1 , M } ) = (/) ) -> ( # ` ( K u. { 1 , M } ) ) = ( ( # ` K ) + ( # ` { 1 , M } ) ) ) |
| 66 |
63 64 28 65
|
mp3an |
|- ( # ` ( K u. { 1 , M } ) ) = ( ( # ` K ) + ( # ` { 1 , M } ) ) |
| 67 |
58
|
fveq2d |
|- ( ph -> ( # ` ( K u. { 1 , M } ) ) = ( # ` ( 1 ... ( N + 1 ) ) ) ) |
| 68 |
|
neeq1 |
|- ( x = M -> ( x =/= 1 <-> M =/= 1 ) ) |
| 69 |
10 18
|
syl |
|- ( x e. ( 2 ... ( N + 1 ) ) -> x =/= 1 ) |
| 70 |
68 69
|
vtoclga |
|- ( M e. ( 2 ... ( N + 1 ) ) -> M =/= 1 ) |
| 71 |
5 70
|
syl |
|- ( ph -> M =/= 1 ) |
| 72 |
71
|
necomd |
|- ( ph -> 1 =/= M ) |
| 73 |
|
1ex |
|- 1 e. _V |
| 74 |
|
hashprg |
|- ( ( 1 e. _V /\ M e. _V ) -> ( 1 =/= M <-> ( # ` { 1 , M } ) = 2 ) ) |
| 75 |
73 6 74
|
mp2an |
|- ( 1 =/= M <-> ( # ` { 1 , M } ) = 2 ) |
| 76 |
72 75
|
sylib |
|- ( ph -> ( # ` { 1 , M } ) = 2 ) |
| 77 |
76
|
oveq2d |
|- ( ph -> ( ( # ` K ) + ( # ` { 1 , M } ) ) = ( ( # ` K ) + 2 ) ) |
| 78 |
66 67 77
|
3eqtr3a |
|- ( ph -> ( # ` ( 1 ... ( N + 1 ) ) ) = ( ( # ` K ) + 2 ) ) |
| 79 |
51
|
nnnn0d |
|- ( ph -> ( N + 1 ) e. NN0 ) |
| 80 |
|
hashfz1 |
|- ( ( N + 1 ) e. NN0 -> ( # ` ( 1 ... ( N + 1 ) ) ) = ( N + 1 ) ) |
| 81 |
79 80
|
syl |
|- ( ph -> ( # ` ( 1 ... ( N + 1 ) ) ) = ( N + 1 ) ) |
| 82 |
78 81
|
eqtr3d |
|- ( ph -> ( ( # ` K ) + 2 ) = ( N + 1 ) ) |
| 83 |
51
|
nncnd |
|- ( ph -> ( N + 1 ) e. CC ) |
| 84 |
|
2cnd |
|- ( ph -> 2 e. CC ) |
| 85 |
|
hashcl |
|- ( K e. Fin -> ( # ` K ) e. NN0 ) |
| 86 |
63 85
|
ax-mp |
|- ( # ` K ) e. NN0 |
| 87 |
86
|
nn0cni |
|- ( # ` K ) e. CC |
| 88 |
87
|
a1i |
|- ( ph -> ( # ` K ) e. CC ) |
| 89 |
83 84 88
|
subadd2d |
|- ( ph -> ( ( ( N + 1 ) - 2 ) = ( # ` K ) <-> ( ( # ` K ) + 2 ) = ( N + 1 ) ) ) |
| 90 |
82 89
|
mpbird |
|- ( ph -> ( ( N + 1 ) - 2 ) = ( # ` K ) ) |
| 91 |
4
|
nncnd |
|- ( ph -> N e. CC ) |
| 92 |
|
1cnd |
|- ( ph -> 1 e. CC ) |
| 93 |
91 92 92
|
pnpcan2d |
|- ( ph -> ( ( N + 1 ) - ( 1 + 1 ) ) = ( N - 1 ) ) |
| 94 |
59 90 93
|
3eqtr3a |
|- ( ph -> ( # ` K ) = ( N - 1 ) ) |
| 95 |
29 58 94
|
3jca |
|- ( ph -> ( ( K i^i { 1 , M } ) = (/) /\ ( K u. { 1 , M } ) = ( 1 ... ( N + 1 ) ) /\ ( # ` K ) = ( N - 1 ) ) ) |