Step | Hyp | Ref
| Expression |
1 | | inss1 4228 |
. . . . . . . . . . 11
β’ (π΄ β© (0..^π)) β π΄ |
2 | | sadasslem.1 |
. . . . . . . . . . 11
β’ (π β π΄ β
β0) |
3 | 1, 2 | sstrid 3993 |
. . . . . . . . . 10
β’ (π β (π΄ β© (0..^π)) β
β0) |
4 | | fzofi 13936 |
. . . . . . . . . . . 12
β’
(0..^π) β
Fin |
5 | 4 | a1i 11 |
. . . . . . . . . . 11
β’ (π β (0..^π) β Fin) |
6 | | inss2 4229 |
. . . . . . . . . . 11
β’ (π΄ β© (0..^π)) β (0..^π) |
7 | | ssfi 9170 |
. . . . . . . . . . 11
β’
(((0..^π) β Fin
β§ (π΄ β© (0..^π)) β (0..^π)) β (π΄ β© (0..^π)) β Fin) |
8 | 5, 6, 7 | sylancl 587 |
. . . . . . . . . 10
β’ (π β (π΄ β© (0..^π)) β Fin) |
9 | | elfpw 9351 |
. . . . . . . . . 10
β’ ((π΄ β© (0..^π)) β (π« β0
β© Fin) β ((π΄ β©
(0..^π)) β
β0 β§ (π΄ β© (0..^π)) β Fin)) |
10 | 3, 8, 9 | sylanbrc 584 |
. . . . . . . . 9
β’ (π β (π΄ β© (0..^π)) β (π« β0
β© Fin)) |
11 | | bitsf1o 16383 |
. . . . . . . . . . 11
β’ (bits
βΎ β0):β0β1-1-ontoβ(π« β0 β©
Fin) |
12 | | f1ocnv 6843 |
. . . . . . . . . . 11
β’ ((bits
βΎ β0):β0β1-1-ontoβ(π« β0 β© Fin)
β β‘(bits βΎ
β0):(π« β0 β© Fin)β1-1-ontoββ0) |
13 | | f1of 6831 |
. . . . . . . . . . 11
β’ (β‘(bits βΎ
β0):(π« β0 β© Fin)β1-1-ontoββ0 β β‘(bits βΎ
β0):(π« β0 β©
Fin)βΆβ0) |
14 | 11, 12, 13 | mp2b 10 |
. . . . . . . . . 10
β’ β‘(bits βΎ
β0):(π« β0 β©
Fin)βΆβ0 |
15 | 14 | ffvelcdmi 7083 |
. . . . . . . . 9
β’ ((π΄ β© (0..^π)) β (π« β0
β© Fin) β (β‘(bits βΎ
β0)β(π΄ β© (0..^π))) β
β0) |
16 | 10, 15 | syl 17 |
. . . . . . . 8
β’ (π β (β‘(bits βΎ
β0)β(π΄ β© (0..^π))) β
β0) |
17 | 16 | nn0cnd 12531 |
. . . . . . 7
β’ (π β (β‘(bits βΎ
β0)β(π΄ β© (0..^π))) β β) |
18 | | inss1 4228 |
. . . . . . . . . . 11
β’ (π΅ β© (0..^π)) β π΅ |
19 | | sadasslem.2 |
. . . . . . . . . . 11
β’ (π β π΅ β
β0) |
20 | 18, 19 | sstrid 3993 |
. . . . . . . . . 10
β’ (π β (π΅ β© (0..^π)) β
β0) |
21 | | inss2 4229 |
. . . . . . . . . . 11
β’ (π΅ β© (0..^π)) β (0..^π) |
22 | | ssfi 9170 |
. . . . . . . . . . 11
β’
(((0..^π) β Fin
β§ (π΅ β© (0..^π)) β (0..^π)) β (π΅ β© (0..^π)) β Fin) |
23 | 5, 21, 22 | sylancl 587 |
. . . . . . . . . 10
β’ (π β (π΅ β© (0..^π)) β Fin) |
24 | | elfpw 9351 |
. . . . . . . . . 10
β’ ((π΅ β© (0..^π)) β (π« β0
β© Fin) β ((π΅ β©
(0..^π)) β
β0 β§ (π΅ β© (0..^π)) β Fin)) |
25 | 20, 23, 24 | sylanbrc 584 |
. . . . . . . . 9
β’ (π β (π΅ β© (0..^π)) β (π« β0
β© Fin)) |
26 | 14 | ffvelcdmi 7083 |
. . . . . . . . 9
β’ ((π΅ β© (0..^π)) β (π« β0
β© Fin) β (β‘(bits βΎ
β0)β(π΅ β© (0..^π))) β
β0) |
27 | 25, 26 | syl 17 |
. . . . . . . 8
β’ (π β (β‘(bits βΎ
β0)β(π΅ β© (0..^π))) β
β0) |
28 | 27 | nn0cnd 12531 |
. . . . . . 7
β’ (π β (β‘(bits βΎ
β0)β(π΅ β© (0..^π))) β β) |
29 | | inss1 4228 |
. . . . . . . . . . 11
β’ (πΆ β© (0..^π)) β πΆ |
30 | | sadasslem.3 |
. . . . . . . . . . 11
β’ (π β πΆ β
β0) |
31 | 29, 30 | sstrid 3993 |
. . . . . . . . . 10
β’ (π β (πΆ β© (0..^π)) β
β0) |
32 | | inss2 4229 |
. . . . . . . . . . 11
β’ (πΆ β© (0..^π)) β (0..^π) |
33 | | ssfi 9170 |
. . . . . . . . . . 11
β’
(((0..^π) β Fin
β§ (πΆ β© (0..^π)) β (0..^π)) β (πΆ β© (0..^π)) β Fin) |
34 | 5, 32, 33 | sylancl 587 |
. . . . . . . . . 10
β’ (π β (πΆ β© (0..^π)) β Fin) |
35 | | elfpw 9351 |
. . . . . . . . . 10
β’ ((πΆ β© (0..^π)) β (π« β0
β© Fin) β ((πΆ β©
(0..^π)) β
β0 β§ (πΆ β© (0..^π)) β Fin)) |
36 | 31, 34, 35 | sylanbrc 584 |
. . . . . . . . 9
β’ (π β (πΆ β© (0..^π)) β (π« β0
β© Fin)) |
37 | 14 | ffvelcdmi 7083 |
. . . . . . . . 9
β’ ((πΆ β© (0..^π)) β (π« β0
β© Fin) β (β‘(bits βΎ
β0)β(πΆ β© (0..^π))) β
β0) |
38 | 36, 37 | syl 17 |
. . . . . . . 8
β’ (π β (β‘(bits βΎ
β0)β(πΆ β© (0..^π))) β
β0) |
39 | 38 | nn0cnd 12531 |
. . . . . . 7
β’ (π β (β‘(bits βΎ
β0)β(πΆ β© (0..^π))) β β) |
40 | 17, 28, 39 | addassd 11233 |
. . . . . 6
β’ (π β (((β‘(bits βΎ
β0)β(π΄ β© (0..^π))) + (β‘(bits βΎ
β0)β(π΅ β© (0..^π)))) + (β‘(bits βΎ
β0)β(πΆ β© (0..^π)))) = ((β‘(bits βΎ
β0)β(π΄ β© (0..^π))) + ((β‘(bits βΎ
β0)β(π΅ β© (0..^π))) + (β‘(bits βΎ
β0)β(πΆ β© (0..^π)))))) |
41 | 40 | oveq1d 7421 |
. . . . 5
β’ (π β ((((β‘(bits βΎ
β0)β(π΄ β© (0..^π))) + (β‘(bits βΎ
β0)β(π΅ β© (0..^π)))) + (β‘(bits βΎ
β0)β(πΆ β© (0..^π)))) mod (2βπ)) = (((β‘(bits βΎ
β0)β(π΄ β© (0..^π))) + ((β‘(bits βΎ
β0)β(π΅ β© (0..^π))) + (β‘(bits βΎ
β0)β(πΆ β© (0..^π))))) mod (2βπ))) |
42 | | inss1 4228 |
. . . . . . . . . 10
β’ ((π΄ sadd π΅) β© (0..^π)) β (π΄ sadd π΅) |
43 | | sadcl 16400 |
. . . . . . . . . . 11
β’ ((π΄ β β0
β§ π΅ β
β0) β (π΄ sadd π΅) β
β0) |
44 | 2, 19, 43 | syl2anc 585 |
. . . . . . . . . 10
β’ (π β (π΄ sadd π΅) β
β0) |
45 | 42, 44 | sstrid 3993 |
. . . . . . . . 9
β’ (π β ((π΄ sadd π΅) β© (0..^π)) β
β0) |
46 | | inss2 4229 |
. . . . . . . . . 10
β’ ((π΄ sadd π΅) β© (0..^π)) β (0..^π) |
47 | | ssfi 9170 |
. . . . . . . . . 10
β’
(((0..^π) β Fin
β§ ((π΄ sadd π΅) β© (0..^π)) β (0..^π)) β ((π΄ sadd π΅) β© (0..^π)) β Fin) |
48 | 5, 46, 47 | sylancl 587 |
. . . . . . . . 9
β’ (π β ((π΄ sadd π΅) β© (0..^π)) β Fin) |
49 | | elfpw 9351 |
. . . . . . . . 9
β’ (((π΄ sadd π΅) β© (0..^π)) β (π« β0
β© Fin) β (((π΄ sadd
π΅) β© (0..^π)) β β0
β§ ((π΄ sadd π΅) β© (0..^π)) β Fin)) |
50 | 45, 48, 49 | sylanbrc 584 |
. . . . . . . 8
β’ (π β ((π΄ sadd π΅) β© (0..^π)) β (π« β0
β© Fin)) |
51 | 14 | ffvelcdmi 7083 |
. . . . . . . 8
β’ (((π΄ sadd π΅) β© (0..^π)) β (π« β0
β© Fin) β (β‘(bits βΎ
β0)β((π΄ sadd π΅) β© (0..^π))) β
β0) |
52 | 50, 51 | syl 17 |
. . . . . . 7
β’ (π β (β‘(bits βΎ
β0)β((π΄ sadd π΅) β© (0..^π))) β
β0) |
53 | 52 | nn0red 12530 |
. . . . . 6
β’ (π β (β‘(bits βΎ
β0)β((π΄ sadd π΅) β© (0..^π))) β β) |
54 | 16 | nn0red 12530 |
. . . . . . 7
β’ (π β (β‘(bits βΎ
β0)β(π΄ β© (0..^π))) β β) |
55 | 27 | nn0red 12530 |
. . . . . . 7
β’ (π β (β‘(bits βΎ
β0)β(π΅ β© (0..^π))) β β) |
56 | 54, 55 | readdcld 11240 |
. . . . . 6
β’ (π β ((β‘(bits βΎ
β0)β(π΄ β© (0..^π))) + (β‘(bits βΎ
β0)β(π΅ β© (0..^π)))) β β) |
57 | 38 | nn0red 12530 |
. . . . . 6
β’ (π β (β‘(bits βΎ
β0)β(πΆ β© (0..^π))) β β) |
58 | | 2rp 12976 |
. . . . . . . 8
β’ 2 β
β+ |
59 | 58 | a1i 11 |
. . . . . . 7
β’ (π β 2 β
β+) |
60 | | sadasslem.4 |
. . . . . . . 8
β’ (π β π β
β0) |
61 | 60 | nn0zd 12581 |
. . . . . . 7
β’ (π β π β β€) |
62 | 59, 61 | rpexpcld 14207 |
. . . . . 6
β’ (π β (2βπ) β
β+) |
63 | | eqid 2733 |
. . . . . . 7
β’
seq0((π β
2o, π β
β0 β¦ if(cadd(π β π΄, π β π΅, β
β π), 1o, β
)), (π β β0
β¦ if(π = 0, β
,
(π β 1)))) =
seq0((π β
2o, π β
β0 β¦ if(cadd(π β π΄, π β π΅, β
β π), 1o, β
)), (π β β0
β¦ if(π = 0, β
,
(π β
1)))) |
64 | | eqid 2733 |
. . . . . . 7
β’ β‘(bits βΎ β0) = β‘(bits βΎ
β0) |
65 | 2, 19, 63, 60, 64 | sadadd3 16399 |
. . . . . 6
β’ (π β ((β‘(bits βΎ
β0)β((π΄ sadd π΅) β© (0..^π))) mod (2βπ)) = (((β‘(bits βΎ
β0)β(π΄ β© (0..^π))) + (β‘(bits βΎ
β0)β(π΅ β© (0..^π)))) mod (2βπ))) |
66 | | eqidd 2734 |
. . . . . 6
β’ (π β ((β‘(bits βΎ
β0)β(πΆ β© (0..^π))) mod (2βπ)) = ((β‘(bits βΎ
β0)β(πΆ β© (0..^π))) mod (2βπ))) |
67 | 53, 56, 57, 57, 62, 65, 66 | modadd12d 13889 |
. . . . 5
β’ (π β (((β‘(bits βΎ
β0)β((π΄ sadd π΅) β© (0..^π))) + (β‘(bits βΎ
β0)β(πΆ β© (0..^π)))) mod (2βπ)) = ((((β‘(bits βΎ
β0)β(π΄ β© (0..^π))) + (β‘(bits βΎ
β0)β(π΅ β© (0..^π)))) + (β‘(bits βΎ
β0)β(πΆ β© (0..^π)))) mod (2βπ))) |
68 | | inss1 4228 |
. . . . . . . . . 10
β’ ((π΅ sadd πΆ) β© (0..^π)) β (π΅ sadd πΆ) |
69 | | sadcl 16400 |
. . . . . . . . . . 11
β’ ((π΅ β β0
β§ πΆ β
β0) β (π΅ sadd πΆ) β
β0) |
70 | 19, 30, 69 | syl2anc 585 |
. . . . . . . . . 10
β’ (π β (π΅ sadd πΆ) β
β0) |
71 | 68, 70 | sstrid 3993 |
. . . . . . . . 9
β’ (π β ((π΅ sadd πΆ) β© (0..^π)) β
β0) |
72 | | inss2 4229 |
. . . . . . . . . 10
β’ ((π΅ sadd πΆ) β© (0..^π)) β (0..^π) |
73 | | ssfi 9170 |
. . . . . . . . . 10
β’
(((0..^π) β Fin
β§ ((π΅ sadd πΆ) β© (0..^π)) β (0..^π)) β ((π΅ sadd πΆ) β© (0..^π)) β Fin) |
74 | 5, 72, 73 | sylancl 587 |
. . . . . . . . 9
β’ (π β ((π΅ sadd πΆ) β© (0..^π)) β Fin) |
75 | | elfpw 9351 |
. . . . . . . . 9
β’ (((π΅ sadd πΆ) β© (0..^π)) β (π« β0
β© Fin) β (((π΅ sadd
πΆ) β© (0..^π)) β β0
β§ ((π΅ sadd πΆ) β© (0..^π)) β Fin)) |
76 | 71, 74, 75 | sylanbrc 584 |
. . . . . . . 8
β’ (π β ((π΅ sadd πΆ) β© (0..^π)) β (π« β0
β© Fin)) |
77 | 14 | ffvelcdmi 7083 |
. . . . . . . 8
β’ (((π΅ sadd πΆ) β© (0..^π)) β (π« β0
β© Fin) β (β‘(bits βΎ
β0)β((π΅ sadd πΆ) β© (0..^π))) β
β0) |
78 | 76, 77 | syl 17 |
. . . . . . 7
β’ (π β (β‘(bits βΎ
β0)β((π΅ sadd πΆ) β© (0..^π))) β
β0) |
79 | 78 | nn0red 12530 |
. . . . . 6
β’ (π β (β‘(bits βΎ
β0)β((π΅ sadd πΆ) β© (0..^π))) β β) |
80 | 55, 57 | readdcld 11240 |
. . . . . 6
β’ (π β ((β‘(bits βΎ
β0)β(π΅ β© (0..^π))) + (β‘(bits βΎ
β0)β(πΆ β© (0..^π)))) β β) |
81 | | eqidd 2734 |
. . . . . 6
β’ (π β ((β‘(bits βΎ
β0)β(π΄ β© (0..^π))) mod (2βπ)) = ((β‘(bits βΎ
β0)β(π΄ β© (0..^π))) mod (2βπ))) |
82 | | eqid 2733 |
. . . . . . 7
β’
seq0((π β
2o, π β
β0 β¦ if(cadd(π β π΅, π β πΆ, β
β π), 1o, β
)), (π β β0
β¦ if(π = 0, β
,
(π β 1)))) =
seq0((π β
2o, π β
β0 β¦ if(cadd(π β π΅, π β πΆ, β
β π), 1o, β
)), (π β β0
β¦ if(π = 0, β
,
(π β
1)))) |
83 | 19, 30, 82, 60, 64 | sadadd3 16399 |
. . . . . 6
β’ (π β ((β‘(bits βΎ
β0)β((π΅ sadd πΆ) β© (0..^π))) mod (2βπ)) = (((β‘(bits βΎ
β0)β(π΅ β© (0..^π))) + (β‘(bits βΎ
β0)β(πΆ β© (0..^π)))) mod (2βπ))) |
84 | 54, 54, 79, 80, 62, 81, 83 | modadd12d 13889 |
. . . . 5
β’ (π β (((β‘(bits βΎ
β0)β(π΄ β© (0..^π))) + (β‘(bits βΎ
β0)β((π΅ sadd πΆ) β© (0..^π)))) mod (2βπ)) = (((β‘(bits βΎ
β0)β(π΄ β© (0..^π))) + ((β‘(bits βΎ
β0)β(π΅ β© (0..^π))) + (β‘(bits βΎ
β0)β(πΆ β© (0..^π))))) mod (2βπ))) |
85 | 41, 67, 84 | 3eqtr4d 2783 |
. . . 4
β’ (π β (((β‘(bits βΎ
β0)β((π΄ sadd π΅) β© (0..^π))) + (β‘(bits βΎ
β0)β(πΆ β© (0..^π)))) mod (2βπ)) = (((β‘(bits βΎ
β0)β(π΄ β© (0..^π))) + (β‘(bits βΎ
β0)β((π΅ sadd πΆ) β© (0..^π)))) mod (2βπ))) |
86 | | eqid 2733 |
. . . . 5
β’
seq0((π β
2o, π β
β0 β¦ if(cadd(π β (π΄ sadd π΅), π β πΆ, β
β π), 1o, β
)), (π β β0
β¦ if(π = 0, β
,
(π β 1)))) =
seq0((π β
2o, π β
β0 β¦ if(cadd(π β (π΄ sadd π΅), π β πΆ, β
β π), 1o, β
)), (π β β0
β¦ if(π = 0, β
,
(π β
1)))) |
87 | 44, 30, 86, 60, 64 | sadadd3 16399 |
. . . 4
β’ (π β ((β‘(bits βΎ
β0)β(((π΄ sadd π΅) sadd πΆ) β© (0..^π))) mod (2βπ)) = (((β‘(bits βΎ
β0)β((π΄ sadd π΅) β© (0..^π))) + (β‘(bits βΎ
β0)β(πΆ β© (0..^π)))) mod (2βπ))) |
88 | | eqid 2733 |
. . . . 5
β’
seq0((π β
2o, π β
β0 β¦ if(cadd(π β π΄, π β (π΅ sadd πΆ), β
β π), 1o, β
)), (π β β0
β¦ if(π = 0, β
,
(π β 1)))) =
seq0((π β
2o, π β
β0 β¦ if(cadd(π β π΄, π β (π΅ sadd πΆ), β
β π), 1o, β
)), (π β β0
β¦ if(π = 0, β
,
(π β
1)))) |
89 | 2, 70, 88, 60, 64 | sadadd3 16399 |
. . . 4
β’ (π β ((β‘(bits βΎ
β0)β((π΄ sadd (π΅ sadd πΆ)) β© (0..^π))) mod (2βπ)) = (((β‘(bits βΎ
β0)β(π΄ β© (0..^π))) + (β‘(bits βΎ
β0)β((π΅ sadd πΆ) β© (0..^π)))) mod (2βπ))) |
90 | 85, 87, 89 | 3eqtr4d 2783 |
. . 3
β’ (π β ((β‘(bits βΎ
β0)β(((π΄ sadd π΅) sadd πΆ) β© (0..^π))) mod (2βπ)) = ((β‘(bits βΎ
β0)β((π΄ sadd (π΅ sadd πΆ)) β© (0..^π))) mod (2βπ))) |
91 | | inss1 4228 |
. . . . . . . 8
β’ (((π΄ sadd π΅) sadd πΆ) β© (0..^π)) β ((π΄ sadd π΅) sadd πΆ) |
92 | | sadcl 16400 |
. . . . . . . . 9
β’ (((π΄ sadd π΅) β β0 β§ πΆ β β0)
β ((π΄ sadd π΅) sadd πΆ) β
β0) |
93 | 44, 30, 92 | syl2anc 585 |
. . . . . . . 8
β’ (π β ((π΄ sadd π΅) sadd πΆ) β
β0) |
94 | 91, 93 | sstrid 3993 |
. . . . . . 7
β’ (π β (((π΄ sadd π΅) sadd πΆ) β© (0..^π)) β
β0) |
95 | | inss2 4229 |
. . . . . . . 8
β’ (((π΄ sadd π΅) sadd πΆ) β© (0..^π)) β (0..^π) |
96 | | ssfi 9170 |
. . . . . . . 8
β’
(((0..^π) β Fin
β§ (((π΄ sadd π΅) sadd πΆ) β© (0..^π)) β (0..^π)) β (((π΄ sadd π΅) sadd πΆ) β© (0..^π)) β Fin) |
97 | 5, 95, 96 | sylancl 587 |
. . . . . . 7
β’ (π β (((π΄ sadd π΅) sadd πΆ) β© (0..^π)) β Fin) |
98 | | elfpw 9351 |
. . . . . . 7
β’ ((((π΄ sadd π΅) sadd πΆ) β© (0..^π)) β (π« β0
β© Fin) β ((((π΄
sadd π΅) sadd πΆ) β© (0..^π)) β β0 β§
(((π΄ sadd π΅) sadd πΆ) β© (0..^π)) β Fin)) |
99 | 94, 97, 98 | sylanbrc 584 |
. . . . . 6
β’ (π β (((π΄ sadd π΅) sadd πΆ) β© (0..^π)) β (π« β0
β© Fin)) |
100 | 14 | ffvelcdmi 7083 |
. . . . . 6
β’ ((((π΄ sadd π΅) sadd πΆ) β© (0..^π)) β (π« β0
β© Fin) β (β‘(bits βΎ
β0)β(((π΄ sadd π΅) sadd πΆ) β© (0..^π))) β
β0) |
101 | 99, 100 | syl 17 |
. . . . 5
β’ (π β (β‘(bits βΎ
β0)β(((π΄ sadd π΅) sadd πΆ) β© (0..^π))) β
β0) |
102 | 101 | nn0red 12530 |
. . . 4
β’ (π β (β‘(bits βΎ
β0)β(((π΄ sadd π΅) sadd πΆ) β© (0..^π))) β β) |
103 | 101 | nn0ge0d 12532 |
. . . 4
β’ (π β 0 β€ (β‘(bits βΎ
β0)β(((π΄ sadd π΅) sadd πΆ) β© (0..^π)))) |
104 | 101 | fvresd 6909 |
. . . . . . . 8
β’ (π β ((bits βΎ
β0)β(β‘(bits
βΎ β0)β(((π΄ sadd π΅) sadd πΆ) β© (0..^π)))) = (bitsβ(β‘(bits βΎ
β0)β(((π΄ sadd π΅) sadd πΆ) β© (0..^π))))) |
105 | | f1ocnvfv2 7272 |
. . . . . . . . 9
β’ (((bits
βΎ β0):β0β1-1-ontoβ(π« β0 β© Fin)
β§ (((π΄ sadd π΅) sadd πΆ) β© (0..^π)) β (π« β0
β© Fin)) β ((bits βΎ β0)β(β‘(bits βΎ
β0)β(((π΄ sadd π΅) sadd πΆ) β© (0..^π)))) = (((π΄ sadd π΅) sadd πΆ) β© (0..^π))) |
106 | 11, 99, 105 | sylancr 588 |
. . . . . . . 8
β’ (π β ((bits βΎ
β0)β(β‘(bits
βΎ β0)β(((π΄ sadd π΅) sadd πΆ) β© (0..^π)))) = (((π΄ sadd π΅) sadd πΆ) β© (0..^π))) |
107 | 104, 106 | eqtr3d 2775 |
. . . . . . 7
β’ (π β (bitsβ(β‘(bits βΎ
β0)β(((π΄ sadd π΅) sadd πΆ) β© (0..^π)))) = (((π΄ sadd π΅) sadd πΆ) β© (0..^π))) |
108 | 107, 95 | eqsstrdi 4036 |
. . . . . 6
β’ (π β (bitsβ(β‘(bits βΎ
β0)β(((π΄ sadd π΅) sadd πΆ) β© (0..^π)))) β (0..^π)) |
109 | 101 | nn0zd 12581 |
. . . . . . 7
β’ (π β (β‘(bits βΎ
β0)β(((π΄ sadd π΅) sadd πΆ) β© (0..^π))) β β€) |
110 | | bitsfzo 16373 |
. . . . . . 7
β’ (((β‘(bits βΎ
β0)β(((π΄ sadd π΅) sadd πΆ) β© (0..^π))) β β€ β§ π β β0) β ((β‘(bits βΎ
β0)β(((π΄ sadd π΅) sadd πΆ) β© (0..^π))) β (0..^(2βπ)) β (bitsβ(β‘(bits βΎ
β0)β(((π΄ sadd π΅) sadd πΆ) β© (0..^π)))) β (0..^π))) |
111 | 109, 60, 110 | syl2anc 585 |
. . . . . 6
β’ (π β ((β‘(bits βΎ
β0)β(((π΄ sadd π΅) sadd πΆ) β© (0..^π))) β (0..^(2βπ)) β (bitsβ(β‘(bits βΎ
β0)β(((π΄ sadd π΅) sadd πΆ) β© (0..^π)))) β (0..^π))) |
112 | 108, 111 | mpbird 257 |
. . . . 5
β’ (π β (β‘(bits βΎ
β0)β(((π΄ sadd π΅) sadd πΆ) β© (0..^π))) β (0..^(2βπ))) |
113 | | elfzolt2 13638 |
. . . . 5
β’ ((β‘(bits βΎ
β0)β(((π΄ sadd π΅) sadd πΆ) β© (0..^π))) β (0..^(2βπ)) β (β‘(bits βΎ
β0)β(((π΄ sadd π΅) sadd πΆ) β© (0..^π))) < (2βπ)) |
114 | 112, 113 | syl 17 |
. . . 4
β’ (π β (β‘(bits βΎ
β0)β(((π΄ sadd π΅) sadd πΆ) β© (0..^π))) < (2βπ)) |
115 | | modid 13858 |
. . . 4
β’ ((((β‘(bits βΎ
β0)β(((π΄ sadd π΅) sadd πΆ) β© (0..^π))) β β β§ (2βπ) β β+)
β§ (0 β€ (β‘(bits βΎ
β0)β(((π΄ sadd π΅) sadd πΆ) β© (0..^π))) β§ (β‘(bits βΎ
β0)β(((π΄ sadd π΅) sadd πΆ) β© (0..^π))) < (2βπ))) β ((β‘(bits βΎ
β0)β(((π΄ sadd π΅) sadd πΆ) β© (0..^π))) mod (2βπ)) = (β‘(bits βΎ
β0)β(((π΄ sadd π΅) sadd πΆ) β© (0..^π)))) |
116 | 102, 62, 103, 114, 115 | syl22anc 838 |
. . 3
β’ (π β ((β‘(bits βΎ
β0)β(((π΄ sadd π΅) sadd πΆ) β© (0..^π))) mod (2βπ)) = (β‘(bits βΎ
β0)β(((π΄ sadd π΅) sadd πΆ) β© (0..^π)))) |
117 | | inss1 4228 |
. . . . . . . 8
β’ ((π΄ sadd (π΅ sadd πΆ)) β© (0..^π)) β (π΄ sadd (π΅ sadd πΆ)) |
118 | | sadcl 16400 |
. . . . . . . . 9
β’ ((π΄ β β0
β§ (π΅ sadd πΆ) β β0)
β (π΄ sadd (π΅ sadd πΆ)) β
β0) |
119 | 2, 70, 118 | syl2anc 585 |
. . . . . . . 8
β’ (π β (π΄ sadd (π΅ sadd πΆ)) β
β0) |
120 | 117, 119 | sstrid 3993 |
. . . . . . 7
β’ (π β ((π΄ sadd (π΅ sadd πΆ)) β© (0..^π)) β
β0) |
121 | | inss2 4229 |
. . . . . . . 8
β’ ((π΄ sadd (π΅ sadd πΆ)) β© (0..^π)) β (0..^π) |
122 | | ssfi 9170 |
. . . . . . . 8
β’
(((0..^π) β Fin
β§ ((π΄ sadd (π΅ sadd πΆ)) β© (0..^π)) β (0..^π)) β ((π΄ sadd (π΅ sadd πΆ)) β© (0..^π)) β Fin) |
123 | 5, 121, 122 | sylancl 587 |
. . . . . . 7
β’ (π β ((π΄ sadd (π΅ sadd πΆ)) β© (0..^π)) β Fin) |
124 | | elfpw 9351 |
. . . . . . 7
β’ (((π΄ sadd (π΅ sadd πΆ)) β© (0..^π)) β (π« β0
β© Fin) β (((π΄ sadd
(π΅ sadd πΆ)) β© (0..^π)) β β0 β§ ((π΄ sadd (π΅ sadd πΆ)) β© (0..^π)) β Fin)) |
125 | 120, 123,
124 | sylanbrc 584 |
. . . . . 6
β’ (π β ((π΄ sadd (π΅ sadd πΆ)) β© (0..^π)) β (π« β0
β© Fin)) |
126 | 14 | ffvelcdmi 7083 |
. . . . . 6
β’ (((π΄ sadd (π΅ sadd πΆ)) β© (0..^π)) β (π« β0
β© Fin) β (β‘(bits βΎ
β0)β((π΄ sadd (π΅ sadd πΆ)) β© (0..^π))) β
β0) |
127 | 125, 126 | syl 17 |
. . . . 5
β’ (π β (β‘(bits βΎ
β0)β((π΄ sadd (π΅ sadd πΆ)) β© (0..^π))) β
β0) |
128 | 127 | nn0red 12530 |
. . . 4
β’ (π β (β‘(bits βΎ
β0)β((π΄ sadd (π΅ sadd πΆ)) β© (0..^π))) β β) |
129 | | 2nn 12282 |
. . . . . . 7
β’ 2 β
β |
130 | 129 | a1i 11 |
. . . . . 6
β’ (π β 2 β
β) |
131 | 130, 60 | nnexpcld 14205 |
. . . . 5
β’ (π β (2βπ) β β) |
132 | 131 | nnrpd 13011 |
. . . 4
β’ (π β (2βπ) β
β+) |
133 | 127 | nn0ge0d 12532 |
. . . 4
β’ (π β 0 β€ (β‘(bits βΎ
β0)β((π΄ sadd (π΅ sadd πΆ)) β© (0..^π)))) |
134 | 127 | fvresd 6909 |
. . . . . . . 8
β’ (π β ((bits βΎ
β0)β(β‘(bits
βΎ β0)β((π΄ sadd (π΅ sadd πΆ)) β© (0..^π)))) = (bitsβ(β‘(bits βΎ
β0)β((π΄ sadd (π΅ sadd πΆ)) β© (0..^π))))) |
135 | | f1ocnvfv2 7272 |
. . . . . . . . 9
β’ (((bits
βΎ β0):β0β1-1-ontoβ(π« β0 β© Fin)
β§ ((π΄ sadd (π΅ sadd πΆ)) β© (0..^π)) β (π« β0
β© Fin)) β ((bits βΎ β0)β(β‘(bits βΎ
β0)β((π΄ sadd (π΅ sadd πΆ)) β© (0..^π)))) = ((π΄ sadd (π΅ sadd πΆ)) β© (0..^π))) |
136 | 11, 125, 135 | sylancr 588 |
. . . . . . . 8
β’ (π β ((bits βΎ
β0)β(β‘(bits
βΎ β0)β((π΄ sadd (π΅ sadd πΆ)) β© (0..^π)))) = ((π΄ sadd (π΅ sadd πΆ)) β© (0..^π))) |
137 | 134, 136 | eqtr3d 2775 |
. . . . . . 7
β’ (π β (bitsβ(β‘(bits βΎ
β0)β((π΄ sadd (π΅ sadd πΆ)) β© (0..^π)))) = ((π΄ sadd (π΅ sadd πΆ)) β© (0..^π))) |
138 | 137, 121 | eqsstrdi 4036 |
. . . . . 6
β’ (π β (bitsβ(β‘(bits βΎ
β0)β((π΄ sadd (π΅ sadd πΆ)) β© (0..^π)))) β (0..^π)) |
139 | 127 | nn0zd 12581 |
. . . . . . 7
β’ (π β (β‘(bits βΎ
β0)β((π΄ sadd (π΅ sadd πΆ)) β© (0..^π))) β β€) |
140 | | bitsfzo 16373 |
. . . . . . 7
β’ (((β‘(bits βΎ
β0)β((π΄ sadd (π΅ sadd πΆ)) β© (0..^π))) β β€ β§ π β β0) β ((β‘(bits βΎ
β0)β((π΄ sadd (π΅ sadd πΆ)) β© (0..^π))) β (0..^(2βπ)) β (bitsβ(β‘(bits βΎ
β0)β((π΄ sadd (π΅ sadd πΆ)) β© (0..^π)))) β (0..^π))) |
141 | 139, 60, 140 | syl2anc 585 |
. . . . . 6
β’ (π β ((β‘(bits βΎ
β0)β((π΄ sadd (π΅ sadd πΆ)) β© (0..^π))) β (0..^(2βπ)) β (bitsβ(β‘(bits βΎ
β0)β((π΄ sadd (π΅ sadd πΆ)) β© (0..^π)))) β (0..^π))) |
142 | 138, 141 | mpbird 257 |
. . . . 5
β’ (π β (β‘(bits βΎ
β0)β((π΄ sadd (π΅ sadd πΆ)) β© (0..^π))) β (0..^(2βπ))) |
143 | | elfzolt2 13638 |
. . . . 5
β’ ((β‘(bits βΎ
β0)β((π΄ sadd (π΅ sadd πΆ)) β© (0..^π))) β (0..^(2βπ)) β (β‘(bits βΎ
β0)β((π΄ sadd (π΅ sadd πΆ)) β© (0..^π))) < (2βπ)) |
144 | 142, 143 | syl 17 |
. . . 4
β’ (π β (β‘(bits βΎ
β0)β((π΄ sadd (π΅ sadd πΆ)) β© (0..^π))) < (2βπ)) |
145 | | modid 13858 |
. . . 4
β’ ((((β‘(bits βΎ
β0)β((π΄ sadd (π΅ sadd πΆ)) β© (0..^π))) β β β§ (2βπ) β β+)
β§ (0 β€ (β‘(bits βΎ
β0)β((π΄ sadd (π΅ sadd πΆ)) β© (0..^π))) β§ (β‘(bits βΎ
β0)β((π΄ sadd (π΅ sadd πΆ)) β© (0..^π))) < (2βπ))) β ((β‘(bits βΎ
β0)β((π΄ sadd (π΅ sadd πΆ)) β© (0..^π))) mod (2βπ)) = (β‘(bits βΎ
β0)β((π΄ sadd (π΅ sadd πΆ)) β© (0..^π)))) |
146 | 128, 132,
133, 144, 145 | syl22anc 838 |
. . 3
β’ (π β ((β‘(bits βΎ
β0)β((π΄ sadd (π΅ sadd πΆ)) β© (0..^π))) mod (2βπ)) = (β‘(bits βΎ
β0)β((π΄ sadd (π΅ sadd πΆ)) β© (0..^π)))) |
147 | 90, 116, 146 | 3eqtr3d 2781 |
. 2
β’ (π β (β‘(bits βΎ
β0)β(((π΄ sadd π΅) sadd πΆ) β© (0..^π))) = (β‘(bits βΎ
β0)β((π΄ sadd (π΅ sadd πΆ)) β© (0..^π)))) |
148 | | f1of1 6830 |
. . . . 5
β’ (β‘(bits βΎ
β0):(π« β0 β© Fin)β1-1-ontoββ0 β β‘(bits βΎ
β0):(π« β0 β© Fin)β1-1ββ0) |
149 | 11, 12, 148 | mp2b 10 |
. . . 4
β’ β‘(bits βΎ
β0):(π« β0 β© Fin)β1-1ββ0 |
150 | | f1fveq 7258 |
. . . 4
β’ ((β‘(bits βΎ
β0):(π« β0 β© Fin)β1-1ββ0 β§ ((((π΄ sadd π΅) sadd πΆ) β© (0..^π)) β (π« β0
β© Fin) β§ ((π΄ sadd
(π΅ sadd πΆ)) β© (0..^π)) β (π« β0
β© Fin))) β ((β‘(bits βΎ
β0)β(((π΄ sadd π΅) sadd πΆ) β© (0..^π))) = (β‘(bits βΎ
β0)β((π΄ sadd (π΅ sadd πΆ)) β© (0..^π))) β (((π΄ sadd π΅) sadd πΆ) β© (0..^π)) = ((π΄ sadd (π΅ sadd πΆ)) β© (0..^π)))) |
151 | 149, 150 | mpan 689 |
. . 3
β’
(((((π΄ sadd π΅) sadd πΆ) β© (0..^π)) β (π« β0
β© Fin) β§ ((π΄ sadd
(π΅ sadd πΆ)) β© (0..^π)) β (π« β0
β© Fin)) β ((β‘(bits βΎ
β0)β(((π΄ sadd π΅) sadd πΆ) β© (0..^π))) = (β‘(bits βΎ
β0)β((π΄ sadd (π΅ sadd πΆ)) β© (0..^π))) β (((π΄ sadd π΅) sadd πΆ) β© (0..^π)) = ((π΄ sadd (π΅ sadd πΆ)) β© (0..^π)))) |
152 | 99, 125, 151 | syl2anc 585 |
. 2
β’ (π β ((β‘(bits βΎ
β0)β(((π΄ sadd π΅) sadd πΆ) β© (0..^π))) = (β‘(bits βΎ
β0)β((π΄ sadd (π΅ sadd πΆ)) β© (0..^π))) β (((π΄ sadd π΅) sadd πΆ) β© (0..^π)) = ((π΄ sadd (π΅ sadd πΆ)) β© (0..^π)))) |
153 | 147, 152 | mpbid 231 |
1
β’ (π β (((π΄ sadd π΅) sadd πΆ) β© (0..^π)) = ((π΄ sadd (π΅ sadd πΆ)) β© (0..^π))) |