Step |
Hyp |
Ref |
Expression |
1 |
|
2nn0 |
⊢ 2 ∈ ℕ0 |
2 |
1
|
a1i |
⊢ ( ( 𝑊 ∈ Word 𝑉 ∧ 2 ≤ ( ♯ ‘ 𝑊 ) ) → 2 ∈ ℕ0 ) |
3 |
|
lencl |
⊢ ( 𝑊 ∈ Word 𝑉 → ( ♯ ‘ 𝑊 ) ∈ ℕ0 ) |
4 |
3
|
adantr |
⊢ ( ( 𝑊 ∈ Word 𝑉 ∧ 2 ≤ ( ♯ ‘ 𝑊 ) ) → ( ♯ ‘ 𝑊 ) ∈ ℕ0 ) |
5 |
|
simpr |
⊢ ( ( 𝑊 ∈ Word 𝑉 ∧ 2 ≤ ( ♯ ‘ 𝑊 ) ) → 2 ≤ ( ♯ ‘ 𝑊 ) ) |
6 |
|
elfz2nn0 |
⊢ ( 2 ∈ ( 0 ... ( ♯ ‘ 𝑊 ) ) ↔ ( 2 ∈ ℕ0 ∧ ( ♯ ‘ 𝑊 ) ∈ ℕ0 ∧ 2 ≤ ( ♯ ‘ 𝑊 ) ) ) |
7 |
2 4 5 6
|
syl3anbrc |
⊢ ( ( 𝑊 ∈ Word 𝑉 ∧ 2 ≤ ( ♯ ‘ 𝑊 ) ) → 2 ∈ ( 0 ... ( ♯ ‘ 𝑊 ) ) ) |
8 |
|
pfxlen |
⊢ ( ( 𝑊 ∈ Word 𝑉 ∧ 2 ∈ ( 0 ... ( ♯ ‘ 𝑊 ) ) ) → ( ♯ ‘ ( 𝑊 prefix 2 ) ) = 2 ) |
9 |
|
s2len |
⊢ ( ♯ ‘ 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ) = 2 |
10 |
9
|
eqcomi |
⊢ 2 = ( ♯ ‘ 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ) |
11 |
10
|
a1i |
⊢ ( ( ( 𝑊 ∈ Word 𝑉 ∧ 2 ∈ ( 0 ... ( ♯ ‘ 𝑊 ) ) ) ∧ ( ♯ ‘ ( 𝑊 prefix 2 ) ) = 2 ) → 2 = ( ♯ ‘ 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ) ) |
12 |
|
2nn |
⊢ 2 ∈ ℕ |
13 |
|
lbfzo0 |
⊢ ( 0 ∈ ( 0 ..^ 2 ) ↔ 2 ∈ ℕ ) |
14 |
12 13
|
mpbir |
⊢ 0 ∈ ( 0 ..^ 2 ) |
15 |
|
pfxfv |
⊢ ( ( 𝑊 ∈ Word 𝑉 ∧ 2 ∈ ( 0 ... ( ♯ ‘ 𝑊 ) ) ∧ 0 ∈ ( 0 ..^ 2 ) ) → ( ( 𝑊 prefix 2 ) ‘ 0 ) = ( 𝑊 ‘ 0 ) ) |
16 |
14 15
|
mp3an3 |
⊢ ( ( 𝑊 ∈ Word 𝑉 ∧ 2 ∈ ( 0 ... ( ♯ ‘ 𝑊 ) ) ) → ( ( 𝑊 prefix 2 ) ‘ 0 ) = ( 𝑊 ‘ 0 ) ) |
17 |
16
|
adantr |
⊢ ( ( ( 𝑊 ∈ Word 𝑉 ∧ 2 ∈ ( 0 ... ( ♯ ‘ 𝑊 ) ) ) ∧ ( ♯ ‘ ( 𝑊 prefix 2 ) ) = 2 ) → ( ( 𝑊 prefix 2 ) ‘ 0 ) = ( 𝑊 ‘ 0 ) ) |
18 |
|
fvex |
⊢ ( 𝑊 ‘ 0 ) ∈ V |
19 |
|
s2fv0 |
⊢ ( ( 𝑊 ‘ 0 ) ∈ V → ( 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ‘ 0 ) = ( 𝑊 ‘ 0 ) ) |
20 |
18 19
|
ax-mp |
⊢ ( 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ‘ 0 ) = ( 𝑊 ‘ 0 ) |
21 |
17 20
|
eqtr4di |
⊢ ( ( ( 𝑊 ∈ Word 𝑉 ∧ 2 ∈ ( 0 ... ( ♯ ‘ 𝑊 ) ) ) ∧ ( ♯ ‘ ( 𝑊 prefix 2 ) ) = 2 ) → ( ( 𝑊 prefix 2 ) ‘ 0 ) = ( 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ‘ 0 ) ) |
22 |
|
1nn0 |
⊢ 1 ∈ ℕ0 |
23 |
|
1lt2 |
⊢ 1 < 2 |
24 |
|
elfzo0 |
⊢ ( 1 ∈ ( 0 ..^ 2 ) ↔ ( 1 ∈ ℕ0 ∧ 2 ∈ ℕ ∧ 1 < 2 ) ) |
25 |
22 12 23 24
|
mpbir3an |
⊢ 1 ∈ ( 0 ..^ 2 ) |
26 |
|
pfxfv |
⊢ ( ( 𝑊 ∈ Word 𝑉 ∧ 2 ∈ ( 0 ... ( ♯ ‘ 𝑊 ) ) ∧ 1 ∈ ( 0 ..^ 2 ) ) → ( ( 𝑊 prefix 2 ) ‘ 1 ) = ( 𝑊 ‘ 1 ) ) |
27 |
25 26
|
mp3an3 |
⊢ ( ( 𝑊 ∈ Word 𝑉 ∧ 2 ∈ ( 0 ... ( ♯ ‘ 𝑊 ) ) ) → ( ( 𝑊 prefix 2 ) ‘ 1 ) = ( 𝑊 ‘ 1 ) ) |
28 |
|
fvex |
⊢ ( 𝑊 ‘ 1 ) ∈ V |
29 |
|
s2fv1 |
⊢ ( ( 𝑊 ‘ 1 ) ∈ V → ( 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ‘ 1 ) = ( 𝑊 ‘ 1 ) ) |
30 |
28 29
|
ax-mp |
⊢ ( 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ‘ 1 ) = ( 𝑊 ‘ 1 ) |
31 |
27 30
|
eqtr4di |
⊢ ( ( 𝑊 ∈ Word 𝑉 ∧ 2 ∈ ( 0 ... ( ♯ ‘ 𝑊 ) ) ) → ( ( 𝑊 prefix 2 ) ‘ 1 ) = ( 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ‘ 1 ) ) |
32 |
31
|
adantr |
⊢ ( ( ( 𝑊 ∈ Word 𝑉 ∧ 2 ∈ ( 0 ... ( ♯ ‘ 𝑊 ) ) ) ∧ ( ♯ ‘ ( 𝑊 prefix 2 ) ) = 2 ) → ( ( 𝑊 prefix 2 ) ‘ 1 ) = ( 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ‘ 1 ) ) |
33 |
|
0nn0 |
⊢ 0 ∈ ℕ0 |
34 |
|
fveq2 |
⊢ ( 𝑖 = 0 → ( ( 𝑊 prefix 2 ) ‘ 𝑖 ) = ( ( 𝑊 prefix 2 ) ‘ 0 ) ) |
35 |
|
fveq2 |
⊢ ( 𝑖 = 0 → ( 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ‘ 𝑖 ) = ( 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ‘ 0 ) ) |
36 |
34 35
|
eqeq12d |
⊢ ( 𝑖 = 0 → ( ( ( 𝑊 prefix 2 ) ‘ 𝑖 ) = ( 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ‘ 𝑖 ) ↔ ( ( 𝑊 prefix 2 ) ‘ 0 ) = ( 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ‘ 0 ) ) ) |
37 |
|
fveq2 |
⊢ ( 𝑖 = 1 → ( ( 𝑊 prefix 2 ) ‘ 𝑖 ) = ( ( 𝑊 prefix 2 ) ‘ 1 ) ) |
38 |
|
fveq2 |
⊢ ( 𝑖 = 1 → ( 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ‘ 𝑖 ) = ( 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ‘ 1 ) ) |
39 |
37 38
|
eqeq12d |
⊢ ( 𝑖 = 1 → ( ( ( 𝑊 prefix 2 ) ‘ 𝑖 ) = ( 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ‘ 𝑖 ) ↔ ( ( 𝑊 prefix 2 ) ‘ 1 ) = ( 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ‘ 1 ) ) ) |
40 |
36 39
|
ralprg |
⊢ ( ( 0 ∈ ℕ0 ∧ 1 ∈ ℕ0 ) → ( ∀ 𝑖 ∈ { 0 , 1 } ( ( 𝑊 prefix 2 ) ‘ 𝑖 ) = ( 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ‘ 𝑖 ) ↔ ( ( ( 𝑊 prefix 2 ) ‘ 0 ) = ( 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ‘ 0 ) ∧ ( ( 𝑊 prefix 2 ) ‘ 1 ) = ( 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ‘ 1 ) ) ) ) |
41 |
33 22 40
|
mp2an |
⊢ ( ∀ 𝑖 ∈ { 0 , 1 } ( ( 𝑊 prefix 2 ) ‘ 𝑖 ) = ( 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ‘ 𝑖 ) ↔ ( ( ( 𝑊 prefix 2 ) ‘ 0 ) = ( 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ‘ 0 ) ∧ ( ( 𝑊 prefix 2 ) ‘ 1 ) = ( 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ‘ 1 ) ) ) |
42 |
21 32 41
|
sylanbrc |
⊢ ( ( ( 𝑊 ∈ Word 𝑉 ∧ 2 ∈ ( 0 ... ( ♯ ‘ 𝑊 ) ) ) ∧ ( ♯ ‘ ( 𝑊 prefix 2 ) ) = 2 ) → ∀ 𝑖 ∈ { 0 , 1 } ( ( 𝑊 prefix 2 ) ‘ 𝑖 ) = ( 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ‘ 𝑖 ) ) |
43 |
|
eqeq1 |
⊢ ( ( ♯ ‘ ( 𝑊 prefix 2 ) ) = 2 → ( ( ♯ ‘ ( 𝑊 prefix 2 ) ) = ( ♯ ‘ 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ) ↔ 2 = ( ♯ ‘ 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ) ) ) |
44 |
|
oveq2 |
⊢ ( ( ♯ ‘ ( 𝑊 prefix 2 ) ) = 2 → ( 0 ..^ ( ♯ ‘ ( 𝑊 prefix 2 ) ) ) = ( 0 ..^ 2 ) ) |
45 |
|
fzo0to2pr |
⊢ ( 0 ..^ 2 ) = { 0 , 1 } |
46 |
44 45
|
eqtrdi |
⊢ ( ( ♯ ‘ ( 𝑊 prefix 2 ) ) = 2 → ( 0 ..^ ( ♯ ‘ ( 𝑊 prefix 2 ) ) ) = { 0 , 1 } ) |
47 |
46
|
raleqdv |
⊢ ( ( ♯ ‘ ( 𝑊 prefix 2 ) ) = 2 → ( ∀ 𝑖 ∈ ( 0 ..^ ( ♯ ‘ ( 𝑊 prefix 2 ) ) ) ( ( 𝑊 prefix 2 ) ‘ 𝑖 ) = ( 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ‘ 𝑖 ) ↔ ∀ 𝑖 ∈ { 0 , 1 } ( ( 𝑊 prefix 2 ) ‘ 𝑖 ) = ( 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ‘ 𝑖 ) ) ) |
48 |
43 47
|
anbi12d |
⊢ ( ( ♯ ‘ ( 𝑊 prefix 2 ) ) = 2 → ( ( ( ♯ ‘ ( 𝑊 prefix 2 ) ) = ( ♯ ‘ 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ) ∧ ∀ 𝑖 ∈ ( 0 ..^ ( ♯ ‘ ( 𝑊 prefix 2 ) ) ) ( ( 𝑊 prefix 2 ) ‘ 𝑖 ) = ( 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ‘ 𝑖 ) ) ↔ ( 2 = ( ♯ ‘ 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ) ∧ ∀ 𝑖 ∈ { 0 , 1 } ( ( 𝑊 prefix 2 ) ‘ 𝑖 ) = ( 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ‘ 𝑖 ) ) ) ) |
49 |
48
|
adantl |
⊢ ( ( ( 𝑊 ∈ Word 𝑉 ∧ 2 ∈ ( 0 ... ( ♯ ‘ 𝑊 ) ) ) ∧ ( ♯ ‘ ( 𝑊 prefix 2 ) ) = 2 ) → ( ( ( ♯ ‘ ( 𝑊 prefix 2 ) ) = ( ♯ ‘ 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ) ∧ ∀ 𝑖 ∈ ( 0 ..^ ( ♯ ‘ ( 𝑊 prefix 2 ) ) ) ( ( 𝑊 prefix 2 ) ‘ 𝑖 ) = ( 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ‘ 𝑖 ) ) ↔ ( 2 = ( ♯ ‘ 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ) ∧ ∀ 𝑖 ∈ { 0 , 1 } ( ( 𝑊 prefix 2 ) ‘ 𝑖 ) = ( 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ‘ 𝑖 ) ) ) ) |
50 |
11 42 49
|
mpbir2and |
⊢ ( ( ( 𝑊 ∈ Word 𝑉 ∧ 2 ∈ ( 0 ... ( ♯ ‘ 𝑊 ) ) ) ∧ ( ♯ ‘ ( 𝑊 prefix 2 ) ) = 2 ) → ( ( ♯ ‘ ( 𝑊 prefix 2 ) ) = ( ♯ ‘ 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ) ∧ ∀ 𝑖 ∈ ( 0 ..^ ( ♯ ‘ ( 𝑊 prefix 2 ) ) ) ( ( 𝑊 prefix 2 ) ‘ 𝑖 ) = ( 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ‘ 𝑖 ) ) ) |
51 |
8 50
|
mpdan |
⊢ ( ( 𝑊 ∈ Word 𝑉 ∧ 2 ∈ ( 0 ... ( ♯ ‘ 𝑊 ) ) ) → ( ( ♯ ‘ ( 𝑊 prefix 2 ) ) = ( ♯ ‘ 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ) ∧ ∀ 𝑖 ∈ ( 0 ..^ ( ♯ ‘ ( 𝑊 prefix 2 ) ) ) ( ( 𝑊 prefix 2 ) ‘ 𝑖 ) = ( 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ‘ 𝑖 ) ) ) |
52 |
|
pfxcl |
⊢ ( 𝑊 ∈ Word 𝑉 → ( 𝑊 prefix 2 ) ∈ Word 𝑉 ) |
53 |
|
s2cli |
⊢ 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ∈ Word V |
54 |
|
eqwrd |
⊢ ( ( ( 𝑊 prefix 2 ) ∈ Word 𝑉 ∧ 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ∈ Word V ) → ( ( 𝑊 prefix 2 ) = 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ↔ ( ( ♯ ‘ ( 𝑊 prefix 2 ) ) = ( ♯ ‘ 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ) ∧ ∀ 𝑖 ∈ ( 0 ..^ ( ♯ ‘ ( 𝑊 prefix 2 ) ) ) ( ( 𝑊 prefix 2 ) ‘ 𝑖 ) = ( 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ‘ 𝑖 ) ) ) ) |
55 |
52 53 54
|
sylancl |
⊢ ( 𝑊 ∈ Word 𝑉 → ( ( 𝑊 prefix 2 ) = 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ↔ ( ( ♯ ‘ ( 𝑊 prefix 2 ) ) = ( ♯ ‘ 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ) ∧ ∀ 𝑖 ∈ ( 0 ..^ ( ♯ ‘ ( 𝑊 prefix 2 ) ) ) ( ( 𝑊 prefix 2 ) ‘ 𝑖 ) = ( 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ‘ 𝑖 ) ) ) ) |
56 |
55
|
adantr |
⊢ ( ( 𝑊 ∈ Word 𝑉 ∧ 2 ∈ ( 0 ... ( ♯ ‘ 𝑊 ) ) ) → ( ( 𝑊 prefix 2 ) = 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ↔ ( ( ♯ ‘ ( 𝑊 prefix 2 ) ) = ( ♯ ‘ 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ) ∧ ∀ 𝑖 ∈ ( 0 ..^ ( ♯ ‘ ( 𝑊 prefix 2 ) ) ) ( ( 𝑊 prefix 2 ) ‘ 𝑖 ) = ( 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ‘ 𝑖 ) ) ) ) |
57 |
51 56
|
mpbird |
⊢ ( ( 𝑊 ∈ Word 𝑉 ∧ 2 ∈ ( 0 ... ( ♯ ‘ 𝑊 ) ) ) → ( 𝑊 prefix 2 ) = 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ) |
58 |
7 57
|
syldan |
⊢ ( ( 𝑊 ∈ Word 𝑉 ∧ 2 ≤ ( ♯ ‘ 𝑊 ) ) → ( 𝑊 prefix 2 ) = 〈“ ( 𝑊 ‘ 0 ) ( 𝑊 ‘ 1 ) ”〉 ) |