![]() |
Mathbox for Alexander van der Vekens |
< Previous
Next >
Nearby theorems |
|
Mirrors > Home > MPE Home > Th. List > Mathboxes > lswn0 | Structured version Visualization version GIF version |
Description: The last symbol of a not empty word exists. The empty set must be excluded as symbol, because otherwise, it cannot be distinguished between valid cases (∅ is the last symbol) and invalid cases (∅ means that no last symbol exists. This is because of the special definition of a function in set.mm. (Contributed by Alexander van der Vekens, 18-Mar-2018.) |
Ref | Expression |
---|---|
lswn0 | ⊢ ((𝑊 ∈ Word 𝑉 ∧ ∅ ∉ 𝑉 ∧ (♯‘𝑊) ≠ 0) → (lastS‘𝑊) ≠ ∅) |
Step | Hyp | Ref | Expression |
---|---|---|---|
1 | lsw 13558 | . . 3 ⊢ (𝑊 ∈ Word 𝑉 → (lastS‘𝑊) = (𝑊‘((♯‘𝑊) − 1))) | |
2 | 1 | 3ad2ant1 1128 | . 2 ⊢ ((𝑊 ∈ Word 𝑉 ∧ ∅ ∉ 𝑉 ∧ (♯‘𝑊) ≠ 0) → (lastS‘𝑊) = (𝑊‘((♯‘𝑊) − 1))) |
3 | wrdf 13516 | . . . . . 6 ⊢ (𝑊 ∈ Word 𝑉 → 𝑊:(0..^(♯‘𝑊))⟶𝑉) | |
4 | lencl 13530 | . . . . . 6 ⊢ (𝑊 ∈ Word 𝑉 → (♯‘𝑊) ∈ ℕ0) | |
5 | simpll 807 | . . . . . . . 8 ⊢ (((𝑊:(0..^(♯‘𝑊))⟶𝑉 ∧ (♯‘𝑊) ∈ ℕ0) ∧ (♯‘𝑊) ≠ 0) → 𝑊:(0..^(♯‘𝑊))⟶𝑉) | |
6 | elnnne0 11518 | . . . . . . . . . . . 12 ⊢ ((♯‘𝑊) ∈ ℕ ↔ ((♯‘𝑊) ∈ ℕ0 ∧ (♯‘𝑊) ≠ 0)) | |
7 | 6 | biimpri 218 | . . . . . . . . . . 11 ⊢ (((♯‘𝑊) ∈ ℕ0 ∧ (♯‘𝑊) ≠ 0) → (♯‘𝑊) ∈ ℕ) |
8 | nnm1nn0 11546 | . . . . . . . . . . 11 ⊢ ((♯‘𝑊) ∈ ℕ → ((♯‘𝑊) − 1) ∈ ℕ0) | |
9 | 7, 8 | syl 17 | . . . . . . . . . 10 ⊢ (((♯‘𝑊) ∈ ℕ0 ∧ (♯‘𝑊) ≠ 0) → ((♯‘𝑊) − 1) ∈ ℕ0) |
10 | nn0re 11513 | . . . . . . . . . . . 12 ⊢ ((♯‘𝑊) ∈ ℕ0 → (♯‘𝑊) ∈ ℝ) | |
11 | 10 | ltm1d 11168 | . . . . . . . . . . 11 ⊢ ((♯‘𝑊) ∈ ℕ0 → ((♯‘𝑊) − 1) < (♯‘𝑊)) |
12 | 11 | adantr 472 | . . . . . . . . . 10 ⊢ (((♯‘𝑊) ∈ ℕ0 ∧ (♯‘𝑊) ≠ 0) → ((♯‘𝑊) − 1) < (♯‘𝑊)) |
13 | elfzo0 12723 | . . . . . . . . . 10 ⊢ (((♯‘𝑊) − 1) ∈ (0..^(♯‘𝑊)) ↔ (((♯‘𝑊) − 1) ∈ ℕ0 ∧ (♯‘𝑊) ∈ ℕ ∧ ((♯‘𝑊) − 1) < (♯‘𝑊))) | |
14 | 9, 7, 12, 13 | syl3anbrc 1429 | . . . . . . . . 9 ⊢ (((♯‘𝑊) ∈ ℕ0 ∧ (♯‘𝑊) ≠ 0) → ((♯‘𝑊) − 1) ∈ (0..^(♯‘𝑊))) |
15 | 14 | adantll 752 | . . . . . . . 8 ⊢ (((𝑊:(0..^(♯‘𝑊))⟶𝑉 ∧ (♯‘𝑊) ∈ ℕ0) ∧ (♯‘𝑊) ≠ 0) → ((♯‘𝑊) − 1) ∈ (0..^(♯‘𝑊))) |
16 | 5, 15 | ffvelrnd 6524 | . . . . . . 7 ⊢ (((𝑊:(0..^(♯‘𝑊))⟶𝑉 ∧ (♯‘𝑊) ∈ ℕ0) ∧ (♯‘𝑊) ≠ 0) → (𝑊‘((♯‘𝑊) − 1)) ∈ 𝑉) |
17 | 16 | ex 449 | . . . . . 6 ⊢ ((𝑊:(0..^(♯‘𝑊))⟶𝑉 ∧ (♯‘𝑊) ∈ ℕ0) → ((♯‘𝑊) ≠ 0 → (𝑊‘((♯‘𝑊) − 1)) ∈ 𝑉)) |
18 | 3, 4, 17 | syl2anc 696 | . . . . 5 ⊢ (𝑊 ∈ Word 𝑉 → ((♯‘𝑊) ≠ 0 → (𝑊‘((♯‘𝑊) − 1)) ∈ 𝑉)) |
19 | eleq1a 2834 | . . . . . . . . . 10 ⊢ ((𝑊‘((♯‘𝑊) − 1)) ∈ 𝑉 → (∅ = (𝑊‘((♯‘𝑊) − 1)) → ∅ ∈ 𝑉)) | |
20 | 19 | com12 32 | . . . . . . . . 9 ⊢ (∅ = (𝑊‘((♯‘𝑊) − 1)) → ((𝑊‘((♯‘𝑊) − 1)) ∈ 𝑉 → ∅ ∈ 𝑉)) |
21 | 20 | eqcoms 2768 | . . . . . . . 8 ⊢ ((𝑊‘((♯‘𝑊) − 1)) = ∅ → ((𝑊‘((♯‘𝑊) − 1)) ∈ 𝑉 → ∅ ∈ 𝑉)) |
22 | 21 | com12 32 | . . . . . . 7 ⊢ ((𝑊‘((♯‘𝑊) − 1)) ∈ 𝑉 → ((𝑊‘((♯‘𝑊) − 1)) = ∅ → ∅ ∈ 𝑉)) |
23 | nnel 3044 | . . . . . . 7 ⊢ (¬ ∅ ∉ 𝑉 ↔ ∅ ∈ 𝑉) | |
24 | 22, 23 | syl6ibr 242 | . . . . . 6 ⊢ ((𝑊‘((♯‘𝑊) − 1)) ∈ 𝑉 → ((𝑊‘((♯‘𝑊) − 1)) = ∅ → ¬ ∅ ∉ 𝑉)) |
25 | 24 | necon2ad 2947 | . . . . 5 ⊢ ((𝑊‘((♯‘𝑊) − 1)) ∈ 𝑉 → (∅ ∉ 𝑉 → (𝑊‘((♯‘𝑊) − 1)) ≠ ∅)) |
26 | 18, 25 | syl6 35 | . . . 4 ⊢ (𝑊 ∈ Word 𝑉 → ((♯‘𝑊) ≠ 0 → (∅ ∉ 𝑉 → (𝑊‘((♯‘𝑊) − 1)) ≠ ∅))) |
27 | 26 | com23 86 | . . 3 ⊢ (𝑊 ∈ Word 𝑉 → (∅ ∉ 𝑉 → ((♯‘𝑊) ≠ 0 → (𝑊‘((♯‘𝑊) − 1)) ≠ ∅))) |
28 | 27 | 3imp 1102 | . 2 ⊢ ((𝑊 ∈ Word 𝑉 ∧ ∅ ∉ 𝑉 ∧ (♯‘𝑊) ≠ 0) → (𝑊‘((♯‘𝑊) − 1)) ≠ ∅) |
29 | 2, 28 | eqnetrd 2999 | 1 ⊢ ((𝑊 ∈ Word 𝑉 ∧ ∅ ∉ 𝑉 ∧ (♯‘𝑊) ≠ 0) → (lastS‘𝑊) ≠ ∅) |
Colors of variables: wff setvar class |
Syntax hints: ¬ wn 3 → wi 4 ∧ wa 383 ∧ w3a 1072 = wceq 1632 ∈ wcel 2139 ≠ wne 2932 ∉ wnel 3035 ∅c0 4058 class class class wbr 4804 ⟶wf 6045 ‘cfv 6049 (class class class)co 6814 0cc0 10148 1c1 10149 < clt 10286 − cmin 10478 ℕcn 11232 ℕ0cn0 11504 ..^cfzo 12679 ♯chash 13331 Word cword 13497 lastSclsw 13498 |
This theorem was proved from axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1871 ax-4 1886 ax-5 1988 ax-6 2054 ax-7 2090 ax-8 2141 ax-9 2148 ax-10 2168 ax-11 2183 ax-12 2196 ax-13 2391 ax-ext 2740 ax-rep 4923 ax-sep 4933 ax-nul 4941 ax-pow 4992 ax-pr 5055 ax-un 7115 ax-cnex 10204 ax-resscn 10205 ax-1cn 10206 ax-icn 10207 ax-addcl 10208 ax-addrcl 10209 ax-mulcl 10210 ax-mulrcl 10211 ax-mulcom 10212 ax-addass 10213 ax-mulass 10214 ax-distr 10215 ax-i2m1 10216 ax-1ne0 10217 ax-1rid 10218 ax-rnegex 10219 ax-rrecex 10220 ax-cnre 10221 ax-pre-lttri 10222 ax-pre-lttrn 10223 ax-pre-ltadd 10224 ax-pre-mulgt0 10225 |
This theorem depends on definitions: df-bi 197 df-or 384 df-an 385 df-3or 1073 df-3an 1074 df-tru 1635 df-ex 1854 df-nf 1859 df-sb 2047 df-eu 2611 df-mo 2612 df-clab 2747 df-cleq 2753 df-clel 2756 df-nfc 2891 df-ne 2933 df-nel 3036 df-ral 3055 df-rex 3056 df-reu 3057 df-rab 3059 df-v 3342 df-sbc 3577 df-csb 3675 df-dif 3718 df-un 3720 df-in 3722 df-ss 3729 df-pss 3731 df-nul 4059 df-if 4231 df-pw 4304 df-sn 4322 df-pr 4324 df-tp 4326 df-op 4328 df-uni 4589 df-int 4628 df-iun 4674 df-br 4805 df-opab 4865 df-mpt 4882 df-tr 4905 df-id 5174 df-eprel 5179 df-po 5187 df-so 5188 df-fr 5225 df-we 5227 df-xp 5272 df-rel 5273 df-cnv 5274 df-co 5275 df-dm 5276 df-rn 5277 df-res 5278 df-ima 5279 df-pred 5841 df-ord 5887 df-on 5888 df-lim 5889 df-suc 5890 df-iota 6012 df-fun 6051 df-fn 6052 df-f 6053 df-f1 6054 df-fo 6055 df-f1o 6056 df-fv 6057 df-riota 6775 df-ov 6817 df-oprab 6818 df-mpt2 6819 df-om 7232 df-1st 7334 df-2nd 7335 df-wrecs 7577 df-recs 7638 df-rdg 7676 df-1o 7730 df-oadd 7734 df-er 7913 df-en 8124 df-dom 8125 df-sdom 8126 df-fin 8127 df-card 8975 df-pnf 10288 df-mnf 10289 df-xr 10290 df-ltxr 10291 df-le 10292 df-sub 10480 df-neg 10481 df-nn 11233 df-n0 11505 df-z 11590 df-uz 11900 df-fz 12540 df-fzo 12680 df-hash 13332 df-word 13505 df-lsw 13506 |
This theorem is referenced by: (None) |
Copyright terms: Public domain | W3C validator |