Proof of Theorem s3rex
| Step | Hyp | Ref
| Expression |
| 1 | | id 23 |
. . . . 5
⊢ (𝑥 = (𝐴‘0) → 𝑥 = (𝐴‘0)) |
| 2 | | eqidd 2763 |
. . . . 5
⊢ (𝑥 = (𝐴‘0) → 𝑦 = 𝑦) |
| 3 | | eqidd 2763 |
. . . . 5
⊢ (𝑥 = (𝐴‘0) → 𝑧 = 𝑧) |
| 4 | 1, 2, 3 | s3eqd 14935 |
. . . 4
⊢ (𝑥 = (𝐴‘0) → 〈“𝑥𝑦𝑧”〉 = 〈“(𝐴‘0)𝑦𝑧”〉) |
| 5 | 4 | eqeq2d 2773 |
. . 3
⊢ (𝑥 = (𝐴‘0) → (𝐴 = 〈“𝑥𝑦𝑧”〉 ↔ 𝐴 = 〈“(𝐴‘0)𝑦𝑧”〉)) |
| 6 | | s3eq2 14941 |
. . . 4
⊢ (𝑦 = (𝐴‘1) → 〈“(𝐴‘0)𝑦𝑧”〉 = 〈“(𝐴‘0)(𝐴‘1)𝑧”〉) |
| 7 | 6 | eqeq2d 2773 |
. . 3
⊢ (𝑦 = (𝐴‘1) → (𝐴 = 〈“(𝐴‘0)𝑦𝑧”〉 ↔ 𝐴 = 〈“(𝐴‘0)(𝐴‘1)𝑧”〉)) |
| 8 | | eqidd 2763 |
. . . . 5
⊢ (𝑧 = (𝐴‘2) → (𝐴‘0) = (𝐴‘0)) |
| 9 | | eqidd 2763 |
. . . . 5
⊢ (𝑧 = (𝐴‘2) → (𝐴‘1) = (𝐴‘1)) |
| 10 | | id 23 |
. . . . 5
⊢ (𝑧 = (𝐴‘2) → 𝑧 = (𝐴‘2)) |
| 11 | 8, 9, 10 | s3eqd 14935 |
. . . 4
⊢ (𝑧 = (𝐴‘2) → 〈“(𝐴‘0)(𝐴‘1)𝑧”〉 = 〈“(𝐴‘0)(𝐴‘1)(𝐴‘2)”〉) |
| 12 | 11 | eqeq2d 2773 |
. . 3
⊢ (𝑧 = (𝐴‘2) → (𝐴 = 〈“(𝐴‘0)(𝐴‘1)𝑧”〉 ↔ 𝐴 = 〈“(𝐴‘0)(𝐴‘1)(𝐴‘2)”〉)) |
| 13 | | elmapi 8851 |
. . . 4
⊢ (𝐴 ∈ (𝑆 ↑m (0..^3)) → 𝐴:(0..^3)⟶𝑆) |
| 14 | | c0ex 11225 |
. . . . . . 7
⊢ 0 ∈
V |
| 15 | 14 | tpid1 4732 |
. . . . . 6
⊢ 0 ∈
{0, 1, 2} |
| 16 | | fzo0to3tp 13808 |
. . . . . 6
⊢ (0..^3) =
{0, 1, 2} |
| 17 | 15, 16 | eleqtrri 2861 |
. . . . 5
⊢ 0 ∈
(0..^3) |
| 18 | 17 | a1i 11 |
. . . 4
⊢ (𝐴 ∈ (𝑆 ↑m (0..^3)) → 0 ∈
(0..^3)) |
| 19 | 13, 18 | ffvelcdmd 7081 |
. . 3
⊢ (𝐴 ∈ (𝑆 ↑m (0..^3)) → (𝐴‘0) ∈ 𝑆) |
| 20 | | 1eltp012 12336 |
. . . . . 6
⊢ 1 ∈
{0, 1, 2} |
| 21 | 20, 16 | eleqtrri 2861 |
. . . . 5
⊢ 1 ∈
(0..^3) |
| 22 | 21 | a1i 11 |
. . . 4
⊢ (𝐴 ∈ (𝑆 ↑m (0..^3)) → 1 ∈
(0..^3)) |
| 23 | 13, 22 | ffvelcdmd 7081 |
. . 3
⊢ (𝐴 ∈ (𝑆 ↑m (0..^3)) → (𝐴‘1) ∈ 𝑆) |
| 24 | | 2ex 12343 |
. . . . . . 7
⊢ 2 ∈
V |
| 25 | 24 | tpid3 4737 |
. . . . . 6
⊢ 2 ∈
{0, 1, 2} |
| 26 | 25, 16 | eleqtrri 2861 |
. . . . 5
⊢ 2 ∈
(0..^3) |
| 27 | 26 | a1i 11 |
. . . 4
⊢ (𝐴 ∈ (𝑆 ↑m (0..^3)) → 2 ∈
(0..^3)) |
| 28 | 13, 27 | ffvelcdmd 7081 |
. . 3
⊢ (𝐴 ∈ (𝑆 ↑m (0..^3)) → (𝐴‘2) ∈ 𝑆) |
| 29 | | iswrdi 14582 |
. . . . 5
⊢ (𝐴:(0..^3)⟶𝑆 → 𝐴 ∈ Word 𝑆) |
| 30 | 13, 29 | syl 18 |
. . . 4
⊢ (𝐴 ∈ (𝑆 ↑m (0..^3)) → 𝐴 ∈ Word 𝑆) |
| 31 | | elmapfn 8869 |
. . . . . 6
⊢ (𝐴 ∈ (𝑆 ↑m (0..^3)) → 𝐴 Fn (0..^3)) |
| 32 | | hashfn 14439 |
. . . . . 6
⊢ (𝐴 Fn (0..^3) →
(♯‘𝐴) =
(♯‘(0..^3))) |
| 33 | 31, 32 | syl 18 |
. . . . 5
⊢ (𝐴 ∈ (𝑆 ↑m (0..^3)) →
(♯‘𝐴) =
(♯‘(0..^3))) |
| 34 | | 3nn0 12547 |
. . . . . 6
⊢ 3 ∈
ℕ0 |
| 35 | | hashfzo0 14495 |
. . . . . 6
⊢ (3 ∈
ℕ0 → (♯‘(0..^3)) = 3) |
| 36 | 34, 35 | ax-mp 5 |
. . . . 5
⊢
(♯‘(0..^3)) = 3 |
| 37 | 33, 36 | eqtrdi 2813 |
. . . 4
⊢ (𝐴 ∈ (𝑆 ↑m (0..^3)) →
(♯‘𝐴) =
3) |
| 38 | | wrdlen3s3 15020 |
. . . 4
⊢ ((𝐴 ∈ Word 𝑆 ∧ (♯‘𝐴) = 3) → 𝐴 = 〈“(𝐴‘0)(𝐴‘1)(𝐴‘2)”〉) |
| 39 | 30, 37, 38 | syl2anc 596 |
. . 3
⊢ (𝐴 ∈ (𝑆 ↑m (0..^3)) → 𝐴 = 〈“(𝐴‘0)(𝐴‘1)(𝐴‘2)”〉) |
| 40 | 5, 7, 12, 19, 23, 28, 39 | 3rspcedvdw 3597 |
. 2
⊢ (𝐴 ∈ (𝑆 ↑m (0..^3)) →
∃𝑥 ∈ 𝑆 ∃𝑦 ∈ 𝑆 ∃𝑧 ∈ 𝑆 𝐴 = 〈“𝑥𝑦𝑧”〉) |
| 41 | | s3rex.1 |
. . . . . 6
⊢ 𝑆 ∈ V |
| 42 | 41 | a1i 11 |
. . . . 5
⊢ ((((𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆) ∧ 𝑧 ∈ 𝑆) ∧ 𝐴 = 〈“𝑥𝑦𝑧”〉) → 𝑆 ∈ V) |
| 43 | | ovexd 7451 |
. . . . 5
⊢ ((((𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆) ∧ 𝑧 ∈ 𝑆) ∧ 𝐴 = 〈“𝑥𝑦𝑧”〉) → (0..^3) ∈
V) |
| 44 | | simpr 490 |
. . . . . . . 8
⊢ ((((𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆) ∧ 𝑧 ∈ 𝑆) ∧ 𝐴 = 〈“𝑥𝑦𝑧”〉) → 𝐴 = 〈“𝑥𝑦𝑧”〉) |
| 45 | 44 | fveq2d 6886 |
. . . . . . 7
⊢ ((((𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆) ∧ 𝑧 ∈ 𝑆) ∧ 𝐴 = 〈“𝑥𝑦𝑧”〉) → (♯‘𝐴) =
(♯‘〈“𝑥𝑦𝑧”〉)) |
| 46 | | s3len 14965 |
. . . . . . 7
⊢
(♯‘〈“𝑥𝑦𝑧”〉) = 3 |
| 47 | 45, 46 | eqtr2di 2814 |
. . . . . 6
⊢ ((((𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆) ∧ 𝑧 ∈ 𝑆) ∧ 𝐴 = 〈“𝑥𝑦𝑧”〉) → 3 =
(♯‘𝐴)) |
| 48 | | simplll 787 |
. . . . . . . 8
⊢ ((((𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆) ∧ 𝑧 ∈ 𝑆) ∧ 𝐴 = 〈“𝑥𝑦𝑧”〉) → 𝑥 ∈ 𝑆) |
| 49 | | simpllr 788 |
. . . . . . . 8
⊢ ((((𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆) ∧ 𝑧 ∈ 𝑆) ∧ 𝐴 = 〈“𝑥𝑦𝑧”〉) → 𝑦 ∈ 𝑆) |
| 50 | | simplr 781 |
. . . . . . . 8
⊢ ((((𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆) ∧ 𝑧 ∈ 𝑆) ∧ 𝐴 = 〈“𝑥𝑦𝑧”〉) → 𝑧 ∈ 𝑆) |
| 51 | 48, 49, 50 | s3cld 14943 |
. . . . . . 7
⊢ ((((𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆) ∧ 𝑧 ∈ 𝑆) ∧ 𝐴 = 〈“𝑥𝑦𝑧”〉) → 〈“𝑥𝑦𝑧”〉 ∈ Word 𝑆) |
| 52 | 44, 51 | eqeltrd 2862 |
. . . . . 6
⊢ ((((𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆) ∧ 𝑧 ∈ 𝑆) ∧ 𝐴 = 〈“𝑥𝑦𝑧”〉) → 𝐴 ∈ Word 𝑆) |
| 53 | 47, 52 | wrdfd 14584 |
. . . . 5
⊢ ((((𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆) ∧ 𝑧 ∈ 𝑆) ∧ 𝐴 = 〈“𝑥𝑦𝑧”〉) → 𝐴:(0..^3)⟶𝑆) |
| 54 | 42, 43, 53 | elmapdd 8843 |
. . . 4
⊢ ((((𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆) ∧ 𝑧 ∈ 𝑆) ∧ 𝐴 = 〈“𝑥𝑦𝑧”〉) → 𝐴 ∈ (𝑆 ↑m
(0..^3))) |
| 55 | 54 | rexlimdva2 3167 |
. . 3
⊢ ((𝑥 ∈ 𝑆 ∧ 𝑦 ∈ 𝑆) → (∃𝑧 ∈ 𝑆 𝐴 = 〈“𝑥𝑦𝑧”〉 → 𝐴 ∈ (𝑆 ↑m
(0..^3)))) |
| 56 | 55 | rexlimivv 3206 |
. 2
⊢
(∃𝑥 ∈
𝑆 ∃𝑦 ∈ 𝑆 ∃𝑧 ∈ 𝑆 𝐴 = 〈“𝑥𝑦𝑧”〉 → 𝐴 ∈ (𝑆 ↑m
(0..^3))) |
| 57 | 40, 56 | impbii 212 |
1
⊢ (𝐴 ∈ (𝑆 ↑m (0..^3)) ↔
∃𝑥 ∈ 𝑆 ∃𝑦 ∈ 𝑆 ∃𝑧 ∈ 𝑆 𝐴 = 〈“𝑥𝑦𝑧”〉) |