Metamath Proof Explorer


Theorem fzen

Description: A shifted finite set of sequential integers is equinumerous to the original set. (Contributed by Paul Chapman, 11-Apr-2009)

Ref Expression
Assertion fzen
|- ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( M ... N ) ~~ ( ( M + K ) ... ( N + K ) ) )

Proof

Step Hyp Ref Expression
1 ovexd
 |-  ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( M ... N ) e. _V )
2 ovexd
 |-  ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( ( M + K ) ... ( N + K ) ) e. _V )
3 elfz1
 |-  ( ( M e. ZZ /\ N e. ZZ ) -> ( k e. ( M ... N ) <-> ( k e. ZZ /\ M <_ k /\ k <_ N ) ) )
4 3 biimpd
 |-  ( ( M e. ZZ /\ N e. ZZ ) -> ( k e. ( M ... N ) -> ( k e. ZZ /\ M <_ k /\ k <_ N ) ) )
5 4 3adant3
 |-  ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( k e. ( M ... N ) -> ( k e. ZZ /\ M <_ k /\ k <_ N ) ) )
6 zaddcl
 |-  ( ( k e. ZZ /\ K e. ZZ ) -> ( k + K ) e. ZZ )
7 6 expcom
 |-  ( K e. ZZ -> ( k e. ZZ -> ( k + K ) e. ZZ ) )
8 7 3ad2ant3
 |-  ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( k e. ZZ -> ( k + K ) e. ZZ ) )
9 8 adantrd
 |-  ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( ( k e. ZZ /\ ( M <_ k /\ k <_ N ) ) -> ( k + K ) e. ZZ ) )
10 zre
 |-  ( M e. ZZ -> M e. RR )
11 zre
 |-  ( k e. ZZ -> k e. RR )
12 zre
 |-  ( K e. ZZ -> K e. RR )
13 leadd1
 |-  ( ( M e. RR /\ k e. RR /\ K e. RR ) -> ( M <_ k <-> ( M + K ) <_ ( k + K ) ) )
14 10 11 12 13 syl3an
 |-  ( ( M e. ZZ /\ k e. ZZ /\ K e. ZZ ) -> ( M <_ k <-> ( M + K ) <_ ( k + K ) ) )
15 14 biimpd
 |-  ( ( M e. ZZ /\ k e. ZZ /\ K e. ZZ ) -> ( M <_ k -> ( M + K ) <_ ( k + K ) ) )
16 15 adantrd
 |-  ( ( M e. ZZ /\ k e. ZZ /\ K e. ZZ ) -> ( ( M <_ k /\ k <_ N ) -> ( M + K ) <_ ( k + K ) ) )
17 16 3com23
 |-  ( ( M e. ZZ /\ K e. ZZ /\ k e. ZZ ) -> ( ( M <_ k /\ k <_ N ) -> ( M + K ) <_ ( k + K ) ) )
18 17 3expia
 |-  ( ( M e. ZZ /\ K e. ZZ ) -> ( k e. ZZ -> ( ( M <_ k /\ k <_ N ) -> ( M + K ) <_ ( k + K ) ) ) )
19 18 impd
 |-  ( ( M e. ZZ /\ K e. ZZ ) -> ( ( k e. ZZ /\ ( M <_ k /\ k <_ N ) ) -> ( M + K ) <_ ( k + K ) ) )
20 19 3adant2
 |-  ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( ( k e. ZZ /\ ( M <_ k /\ k <_ N ) ) -> ( M + K ) <_ ( k + K ) ) )
21 zre
 |-  ( N e. ZZ -> N e. RR )
22 leadd1
 |-  ( ( k e. RR /\ N e. RR /\ K e. RR ) -> ( k <_ N <-> ( k + K ) <_ ( N + K ) ) )
23 11 21 12 22 syl3an
 |-  ( ( k e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( k <_ N <-> ( k + K ) <_ ( N + K ) ) )
24 23 biimpd
 |-  ( ( k e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( k <_ N -> ( k + K ) <_ ( N + K ) ) )
25 24 adantld
 |-  ( ( k e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( ( M <_ k /\ k <_ N ) -> ( k + K ) <_ ( N + K ) ) )
26 25 3coml
 |-  ( ( N e. ZZ /\ K e. ZZ /\ k e. ZZ ) -> ( ( M <_ k /\ k <_ N ) -> ( k + K ) <_ ( N + K ) ) )
27 26 3expia
 |-  ( ( N e. ZZ /\ K e. ZZ ) -> ( k e. ZZ -> ( ( M <_ k /\ k <_ N ) -> ( k + K ) <_ ( N + K ) ) ) )
28 27 impd
 |-  ( ( N e. ZZ /\ K e. ZZ ) -> ( ( k e. ZZ /\ ( M <_ k /\ k <_ N ) ) -> ( k + K ) <_ ( N + K ) ) )
29 28 3adant1
 |-  ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( ( k e. ZZ /\ ( M <_ k /\ k <_ N ) ) -> ( k + K ) <_ ( N + K ) ) )
30 9 20 29 3jcad
 |-  ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( ( k e. ZZ /\ ( M <_ k /\ k <_ N ) ) -> ( ( k + K ) e. ZZ /\ ( M + K ) <_ ( k + K ) /\ ( k + K ) <_ ( N + K ) ) ) )
31 zaddcl
 |-  ( ( M e. ZZ /\ K e. ZZ ) -> ( M + K ) e. ZZ )
32 31 3adant2
 |-  ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( M + K ) e. ZZ )
33 zaddcl
 |-  ( ( N e. ZZ /\ K e. ZZ ) -> ( N + K ) e. ZZ )
34 33 3adant1
 |-  ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( N + K ) e. ZZ )
35 elfz1
 |-  ( ( ( M + K ) e. ZZ /\ ( N + K ) e. ZZ ) -> ( ( k + K ) e. ( ( M + K ) ... ( N + K ) ) <-> ( ( k + K ) e. ZZ /\ ( M + K ) <_ ( k + K ) /\ ( k + K ) <_ ( N + K ) ) ) )
36 32 34 35 syl2anc
 |-  ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( ( k + K ) e. ( ( M + K ) ... ( N + K ) ) <-> ( ( k + K ) e. ZZ /\ ( M + K ) <_ ( k + K ) /\ ( k + K ) <_ ( N + K ) ) ) )
37 36 biimprd
 |-  ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( ( ( k + K ) e. ZZ /\ ( M + K ) <_ ( k + K ) /\ ( k + K ) <_ ( N + K ) ) -> ( k + K ) e. ( ( M + K ) ... ( N + K ) ) ) )
38 30 37 syldc
 |-  ( ( k e. ZZ /\ ( M <_ k /\ k <_ N ) ) -> ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( k + K ) e. ( ( M + K ) ... ( N + K ) ) ) )
39 38 3impb
 |-  ( ( k e. ZZ /\ M <_ k /\ k <_ N ) -> ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( k + K ) e. ( ( M + K ) ... ( N + K ) ) ) )
40 39 com12
 |-  ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( ( k e. ZZ /\ M <_ k /\ k <_ N ) -> ( k + K ) e. ( ( M + K ) ... ( N + K ) ) ) )
41 5 40 syld
 |-  ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( k e. ( M ... N ) -> ( k + K ) e. ( ( M + K ) ... ( N + K ) ) ) )
42 elfz1
 |-  ( ( ( M + K ) e. ZZ /\ ( N + K ) e. ZZ ) -> ( m e. ( ( M + K ) ... ( N + K ) ) <-> ( m e. ZZ /\ ( M + K ) <_ m /\ m <_ ( N + K ) ) ) )
43 32 34 42 syl2anc
 |-  ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( m e. ( ( M + K ) ... ( N + K ) ) <-> ( m e. ZZ /\ ( M + K ) <_ m /\ m <_ ( N + K ) ) ) )
44 43 biimpd
 |-  ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( m e. ( ( M + K ) ... ( N + K ) ) -> ( m e. ZZ /\ ( M + K ) <_ m /\ m <_ ( N + K ) ) ) )
45 zsubcl
 |-  ( ( m e. ZZ /\ K e. ZZ ) -> ( m - K ) e. ZZ )
46 45 expcom
 |-  ( K e. ZZ -> ( m e. ZZ -> ( m - K ) e. ZZ ) )
47 46 3ad2ant3
 |-  ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( m e. ZZ -> ( m - K ) e. ZZ ) )
48 47 adantrd
 |-  ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( ( m e. ZZ /\ ( ( M + K ) <_ m /\ m <_ ( N + K ) ) ) -> ( m - K ) e. ZZ ) )
49 zre
 |-  ( m e. ZZ -> m e. RR )
50 leaddsub
 |-  ( ( M e. RR /\ K e. RR /\ m e. RR ) -> ( ( M + K ) <_ m <-> M <_ ( m - K ) ) )
51 10 12 49 50 syl3an
 |-  ( ( M e. ZZ /\ K e. ZZ /\ m e. ZZ ) -> ( ( M + K ) <_ m <-> M <_ ( m - K ) ) )
52 51 biimpd
 |-  ( ( M e. ZZ /\ K e. ZZ /\ m e. ZZ ) -> ( ( M + K ) <_ m -> M <_ ( m - K ) ) )
53 52 adantrd
 |-  ( ( M e. ZZ /\ K e. ZZ /\ m e. ZZ ) -> ( ( ( M + K ) <_ m /\ m <_ ( N + K ) ) -> M <_ ( m - K ) ) )
54 53 3expia
 |-  ( ( M e. ZZ /\ K e. ZZ ) -> ( m e. ZZ -> ( ( ( M + K ) <_ m /\ m <_ ( N + K ) ) -> M <_ ( m - K ) ) ) )
55 54 impd
 |-  ( ( M e. ZZ /\ K e. ZZ ) -> ( ( m e. ZZ /\ ( ( M + K ) <_ m /\ m <_ ( N + K ) ) ) -> M <_ ( m - K ) ) )
56 55 3adant2
 |-  ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( ( m e. ZZ /\ ( ( M + K ) <_ m /\ m <_ ( N + K ) ) ) -> M <_ ( m - K ) ) )
57 lesubadd
 |-  ( ( m e. RR /\ K e. RR /\ N e. RR ) -> ( ( m - K ) <_ N <-> m <_ ( N + K ) ) )
58 49 12 21 57 syl3an
 |-  ( ( m e. ZZ /\ K e. ZZ /\ N e. ZZ ) -> ( ( m - K ) <_ N <-> m <_ ( N + K ) ) )
59 58 biimprd
 |-  ( ( m e. ZZ /\ K e. ZZ /\ N e. ZZ ) -> ( m <_ ( N + K ) -> ( m - K ) <_ N ) )
60 59 adantld
 |-  ( ( m e. ZZ /\ K e. ZZ /\ N e. ZZ ) -> ( ( ( M + K ) <_ m /\ m <_ ( N + K ) ) -> ( m - K ) <_ N ) )
61 60 3coml
 |-  ( ( K e. ZZ /\ N e. ZZ /\ m e. ZZ ) -> ( ( ( M + K ) <_ m /\ m <_ ( N + K ) ) -> ( m - K ) <_ N ) )
62 61 3expia
 |-  ( ( K e. ZZ /\ N e. ZZ ) -> ( m e. ZZ -> ( ( ( M + K ) <_ m /\ m <_ ( N + K ) ) -> ( m - K ) <_ N ) ) )
63 62 impd
 |-  ( ( K e. ZZ /\ N e. ZZ ) -> ( ( m e. ZZ /\ ( ( M + K ) <_ m /\ m <_ ( N + K ) ) ) -> ( m - K ) <_ N ) )
64 63 ancoms
 |-  ( ( N e. ZZ /\ K e. ZZ ) -> ( ( m e. ZZ /\ ( ( M + K ) <_ m /\ m <_ ( N + K ) ) ) -> ( m - K ) <_ N ) )
65 64 3adant1
 |-  ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( ( m e. ZZ /\ ( ( M + K ) <_ m /\ m <_ ( N + K ) ) ) -> ( m - K ) <_ N ) )
66 48 56 65 3jcad
 |-  ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( ( m e. ZZ /\ ( ( M + K ) <_ m /\ m <_ ( N + K ) ) ) -> ( ( m - K ) e. ZZ /\ M <_ ( m - K ) /\ ( m - K ) <_ N ) ) )
67 elfz1
 |-  ( ( M e. ZZ /\ N e. ZZ ) -> ( ( m - K ) e. ( M ... N ) <-> ( ( m - K ) e. ZZ /\ M <_ ( m - K ) /\ ( m - K ) <_ N ) ) )
68 67 biimprd
 |-  ( ( M e. ZZ /\ N e. ZZ ) -> ( ( ( m - K ) e. ZZ /\ M <_ ( m - K ) /\ ( m - K ) <_ N ) -> ( m - K ) e. ( M ... N ) ) )
69 68 3adant3
 |-  ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( ( ( m - K ) e. ZZ /\ M <_ ( m - K ) /\ ( m - K ) <_ N ) -> ( m - K ) e. ( M ... N ) ) )
70 66 69 syldc
 |-  ( ( m e. ZZ /\ ( ( M + K ) <_ m /\ m <_ ( N + K ) ) ) -> ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( m - K ) e. ( M ... N ) ) )
71 70 3impb
 |-  ( ( m e. ZZ /\ ( M + K ) <_ m /\ m <_ ( N + K ) ) -> ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( m - K ) e. ( M ... N ) ) )
72 71 com12
 |-  ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( ( m e. ZZ /\ ( M + K ) <_ m /\ m <_ ( N + K ) ) -> ( m - K ) e. ( M ... N ) ) )
73 44 72 syld
 |-  ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( m e. ( ( M + K ) ... ( N + K ) ) -> ( m - K ) e. ( M ... N ) ) )
74 5 imp
 |-  ( ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) /\ k e. ( M ... N ) ) -> ( k e. ZZ /\ M <_ k /\ k <_ N ) )
75 74 simp1d
 |-  ( ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) /\ k e. ( M ... N ) ) -> k e. ZZ )
76 75 ex
 |-  ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( k e. ( M ... N ) -> k e. ZZ ) )
77 44 imp
 |-  ( ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) /\ m e. ( ( M + K ) ... ( N + K ) ) ) -> ( m e. ZZ /\ ( M + K ) <_ m /\ m <_ ( N + K ) ) )
78 77 simp1d
 |-  ( ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) /\ m e. ( ( M + K ) ... ( N + K ) ) ) -> m e. ZZ )
79 78 ex
 |-  ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( m e. ( ( M + K ) ... ( N + K ) ) -> m e. ZZ ) )
80 zcn
 |-  ( m e. ZZ -> m e. CC )
81 zcn
 |-  ( K e. ZZ -> K e. CC )
82 zcn
 |-  ( k e. ZZ -> k e. CC )
83 subadd
 |-  ( ( m e. CC /\ K e. CC /\ k e. CC ) -> ( ( m - K ) = k <-> ( K + k ) = m ) )
84 eqcom
 |-  ( ( m - K ) = k <-> k = ( m - K ) )
85 eqcom
 |-  ( ( K + k ) = m <-> m = ( K + k ) )
86 83 84 85 3bitr3g
 |-  ( ( m e. CC /\ K e. CC /\ k e. CC ) -> ( k = ( m - K ) <-> m = ( K + k ) ) )
87 addcom
 |-  ( ( K e. CC /\ k e. CC ) -> ( K + k ) = ( k + K ) )
88 87 3adant1
 |-  ( ( m e. CC /\ K e. CC /\ k e. CC ) -> ( K + k ) = ( k + K ) )
89 88 eqeq2d
 |-  ( ( m e. CC /\ K e. CC /\ k e. CC ) -> ( m = ( K + k ) <-> m = ( k + K ) ) )
90 86 89 bitrd
 |-  ( ( m e. CC /\ K e. CC /\ k e. CC ) -> ( k = ( m - K ) <-> m = ( k + K ) ) )
91 80 81 82 90 syl3an
 |-  ( ( m e. ZZ /\ K e. ZZ /\ k e. ZZ ) -> ( k = ( m - K ) <-> m = ( k + K ) ) )
92 91 3coml
 |-  ( ( K e. ZZ /\ k e. ZZ /\ m e. ZZ ) -> ( k = ( m - K ) <-> m = ( k + K ) ) )
93 92 3expib
 |-  ( K e. ZZ -> ( ( k e. ZZ /\ m e. ZZ ) -> ( k = ( m - K ) <-> m = ( k + K ) ) ) )
94 93 3ad2ant3
 |-  ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( ( k e. ZZ /\ m e. ZZ ) -> ( k = ( m - K ) <-> m = ( k + K ) ) ) )
95 76 79 94 syl2and
 |-  ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( ( k e. ( M ... N ) /\ m e. ( ( M + K ) ... ( N + K ) ) ) -> ( k = ( m - K ) <-> m = ( k + K ) ) ) )
96 1 2 41 73 95 en3d
 |-  ( ( M e. ZZ /\ N e. ZZ /\ K e. ZZ ) -> ( M ... N ) ~~ ( ( M + K ) ... ( N + K ) ) )