| Hilbert Space Explorer |
< Previous
Next >
Nearby theorems |
||
| Mirrors > Home > HSE Home > Th. List > cnlnssadj | Structured version Visualization version GIF version | ||
| Description: Every continuous linear Hilbert space operator has an adjoint. (Contributed by NM, 18-Feb-2006.) (New usage is discouraged.) |
| Ref | Expression |
|---|---|
| cnlnssadj | ⊢ (LinOp ∩ ContOp) ⊆ dom adjℎ |
| Step | Hyp | Ref | Expression |
|---|---|---|---|
| 1 | cnlnadj 32546 | . . . . 5 ⊢ (𝑦 ∈ (LinOp ∩ ContOp) → ∃𝑡 ∈ (LinOp ∩ ContOp)∀𝑥 ∈ ℋ ∀𝑧 ∈ ℋ ((𝑦‘𝑥) ·ih 𝑧) = (𝑥 ·ih (𝑡‘𝑧))) | |
| 2 | df-rex 3089 | . . . . 5 ⊢ (∃𝑡 ∈ (LinOp ∩ ContOp)∀𝑥 ∈ ℋ ∀𝑧 ∈ ℋ ((𝑦‘𝑥) ·ih 𝑧) = (𝑥 ·ih (𝑡‘𝑧)) ↔ ∃𝑡(𝑡 ∈ (LinOp ∩ ContOp) ∧ ∀𝑥 ∈ ℋ ∀𝑧 ∈ ℋ ((𝑦‘𝑥) ·ih 𝑧) = (𝑥 ·ih (𝑡‘𝑧)))) | |
| 3 | 1, 2 | sylib 221 | . . . 4 ⊢ (𝑦 ∈ (LinOp ∩ ContOp) → ∃𝑡(𝑡 ∈ (LinOp ∩ ContOp) ∧ ∀𝑥 ∈ ℋ ∀𝑧 ∈ ℋ ((𝑦‘𝑥) ·ih 𝑧) = (𝑥 ·ih (𝑡‘𝑧)))) |
| 4 | inss1 4185 | . . . . . . . . . 10 ⊢ (LinOp ∩ ContOp) ⊆ LinOp | |
| 5 | 4 | sseli 3930 | . . . . . . . . 9 ⊢ (𝑦 ∈ (LinOp ∩ ContOp) → 𝑦 ∈ LinOp) |
| 6 | lnopf 32326 | . . . . . . . . 9 ⊢ (𝑦 ∈ LinOp → 𝑦: ℋ⟶ ℋ) | |
| 7 | 5, 6 | syl 18 | . . . . . . . 8 ⊢ (𝑦 ∈ (LinOp ∩ ContOp) → 𝑦: ℋ⟶ ℋ) |
| 8 | 7 | a1d 26 | . . . . . . 7 ⊢ (𝑦 ∈ (LinOp ∩ ContOp) → ((𝑡 ∈ (LinOp ∩ ContOp) ∧ ∀𝑥 ∈ ℋ ∀𝑧 ∈ ℋ ((𝑦‘𝑥) ·ih 𝑧) = (𝑥 ·ih (𝑡‘𝑧))) → 𝑦: ℋ⟶ ℋ)) |
| 9 | 4 | sseli 3930 | . . . . . . . . . 10 ⊢ (𝑡 ∈ (LinOp ∩ ContOp) → 𝑡 ∈ LinOp) |
| 10 | lnopf 32326 | . . . . . . . . . 10 ⊢ (𝑡 ∈ LinOp → 𝑡: ℋ⟶ ℋ) | |
| 11 | 9, 10 | syl 18 | . . . . . . . . 9 ⊢ (𝑡 ∈ (LinOp ∩ ContOp) → 𝑡: ℋ⟶ ℋ) |
| 12 | 11 | a1i 11 | . . . . . . . 8 ⊢ (𝑦 ∈ (LinOp ∩ ContOp) → (𝑡 ∈ (LinOp ∩ ContOp) → 𝑡: ℋ⟶ ℋ)) |
| 13 | 12 | adantrd 497 | . . . . . . 7 ⊢ (𝑦 ∈ (LinOp ∩ ContOp) → ((𝑡 ∈ (LinOp ∩ ContOp) ∧ ∀𝑥 ∈ ℋ ∀𝑧 ∈ ℋ ((𝑦‘𝑥) ·ih 𝑧) = (𝑥 ·ih (𝑡‘𝑧))) → 𝑡: ℋ⟶ ℋ)) |
| 14 | eqcom 2769 | . . . . . . . . . . 11 ⊢ (((𝑦‘𝑥) ·ih 𝑧) = (𝑥 ·ih (𝑡‘𝑧)) ↔ (𝑥 ·ih (𝑡‘𝑧)) = ((𝑦‘𝑥) ·ih 𝑧)) | |
| 15 | 14 | biimpi 219 | . . . . . . . . . 10 ⊢ (((𝑦‘𝑥) ·ih 𝑧) = (𝑥 ·ih (𝑡‘𝑧)) → (𝑥 ·ih (𝑡‘𝑧)) = ((𝑦‘𝑥) ·ih 𝑧)) |
| 16 | 15 | 2ralimi 3134 | . . . . . . . . 9 ⊢ (∀𝑥 ∈ ℋ ∀𝑧 ∈ ℋ ((𝑦‘𝑥) ·ih 𝑧) = (𝑥 ·ih (𝑡‘𝑧)) → ∀𝑥 ∈ ℋ ∀𝑧 ∈ ℋ (𝑥 ·ih (𝑡‘𝑧)) = ((𝑦‘𝑥) ·ih 𝑧)) |
| 17 | adjsym 32300 | . . . . . . . . . 10 ⊢ ((𝑡: ℋ⟶ ℋ ∧ 𝑦: ℋ⟶ ℋ) → (∀𝑥 ∈ ℋ ∀𝑧 ∈ ℋ (𝑥 ·ih (𝑡‘𝑧)) = ((𝑦‘𝑥) ·ih 𝑧) ↔ ∀𝑥 ∈ ℋ ∀𝑧 ∈ ℋ (𝑥 ·ih (𝑦‘𝑧)) = ((𝑡‘𝑥) ·ih 𝑧))) | |
| 18 | 11, 7, 17 | syl2anr 609 | . . . . . . . . 9 ⊢ ((𝑦 ∈ (LinOp ∩ ContOp) ∧ 𝑡 ∈ (LinOp ∩ ContOp)) → (∀𝑥 ∈ ℋ ∀𝑧 ∈ ℋ (𝑥 ·ih (𝑡‘𝑧)) = ((𝑦‘𝑥) ·ih 𝑧) ↔ ∀𝑥 ∈ ℋ ∀𝑧 ∈ ℋ (𝑥 ·ih (𝑦‘𝑧)) = ((𝑡‘𝑥) ·ih 𝑧))) |
| 19 | 16, 18 | imbitrid 247 | . . . . . . . 8 ⊢ ((𝑦 ∈ (LinOp ∩ ContOp) ∧ 𝑡 ∈ (LinOp ∩ ContOp)) → (∀𝑥 ∈ ℋ ∀𝑧 ∈ ℋ ((𝑦‘𝑥) ·ih 𝑧) = (𝑥 ·ih (𝑡‘𝑧)) → ∀𝑥 ∈ ℋ ∀𝑧 ∈ ℋ (𝑥 ·ih (𝑦‘𝑧)) = ((𝑡‘𝑥) ·ih 𝑧))) |
| 20 | 19 | expimpd 459 | . . . . . . 7 ⊢ (𝑦 ∈ (LinOp ∩ ContOp) → ((𝑡 ∈ (LinOp ∩ ContOp) ∧ ∀𝑥 ∈ ℋ ∀𝑧 ∈ ℋ ((𝑦‘𝑥) ·ih 𝑧) = (𝑥 ·ih (𝑡‘𝑧))) → ∀𝑥 ∈ ℋ ∀𝑧 ∈ ℋ (𝑥 ·ih (𝑦‘𝑧)) = ((𝑡‘𝑥) ·ih 𝑧))) |
| 21 | 8, 13, 20 | 3jcad 1147 | . . . . . 6 ⊢ (𝑦 ∈ (LinOp ∩ ContOp) → ((𝑡 ∈ (LinOp ∩ ContOp) ∧ ∀𝑥 ∈ ℋ ∀𝑧 ∈ ℋ ((𝑦‘𝑥) ·ih 𝑧) = (𝑥 ·ih (𝑡‘𝑧))) → (𝑦: ℋ⟶ ℋ ∧ 𝑡: ℋ⟶ ℋ ∧ ∀𝑥 ∈ ℋ ∀𝑧 ∈ ℋ (𝑥 ·ih (𝑦‘𝑧)) = ((𝑡‘𝑥) ·ih 𝑧)))) |
| 22 | dfadj2 32352 | . . . . . . . 8 ⊢ adjℎ = {〈𝑢, 𝑣〉 ∣ (𝑢: ℋ⟶ ℋ ∧ 𝑣: ℋ⟶ ℋ ∧ ∀𝑥 ∈ ℋ ∀𝑧 ∈ ℋ (𝑥 ·ih (𝑢‘𝑧)) = ((𝑣‘𝑥) ·ih 𝑧))} | |
| 23 | 22 | eleq2i 2854 | . . . . . . 7 ⊢ (〈𝑦, 𝑡〉 ∈ adjℎ ↔ 〈𝑦, 𝑡〉 ∈ {〈𝑢, 𝑣〉 ∣ (𝑢: ℋ⟶ ℋ ∧ 𝑣: ℋ⟶ ℋ ∧ ∀𝑥 ∈ ℋ ∀𝑧 ∈ ℋ (𝑥 ·ih (𝑢‘𝑧)) = ((𝑣‘𝑥) ·ih 𝑧))}) |
| 24 | vex 3457 | . . . . . . . 8 ⊢ 𝑦 ∈ V | |
| 25 | vex 3457 | . . . . . . . 8 ⊢ 𝑡 ∈ V | |
| 26 | feq1 6684 | . . . . . . . . 9 ⊢ (𝑢 = 𝑦 → (𝑢: ℋ⟶ ℋ ↔ 𝑦: ℋ⟶ ℋ)) | |
| 27 | fveq1 6881 | . . . . . . . . . . . 12 ⊢ (𝑢 = 𝑦 → (𝑢‘𝑧) = (𝑦‘𝑧)) | |
| 28 | 27 | oveq2d 7432 | . . . . . . . . . . 11 ⊢ (𝑢 = 𝑦 → (𝑥 ·ih (𝑢‘𝑧)) = (𝑥 ·ih (𝑦‘𝑧))) |
| 29 | 28 | eqeq1d 2764 | . . . . . . . . . 10 ⊢ (𝑢 = 𝑦 → ((𝑥 ·ih (𝑢‘𝑧)) = ((𝑣‘𝑥) ·ih 𝑧) ↔ (𝑥 ·ih (𝑦‘𝑧)) = ((𝑣‘𝑥) ·ih 𝑧))) |
| 30 | 29 | 2ralbidv 3228 | . . . . . . . . 9 ⊢ (𝑢 = 𝑦 → (∀𝑥 ∈ ℋ ∀𝑧 ∈ ℋ (𝑥 ·ih (𝑢‘𝑧)) = ((𝑣‘𝑥) ·ih 𝑧) ↔ ∀𝑥 ∈ ℋ ∀𝑧 ∈ ℋ (𝑥 ·ih (𝑦‘𝑧)) = ((𝑣‘𝑥) ·ih 𝑧))) |
| 31 | 26, 30 | 3anbi13d 1466 | . . . . . . . 8 ⊢ (𝑢 = 𝑦 → ((𝑢: ℋ⟶ ℋ ∧ 𝑣: ℋ⟶ ℋ ∧ ∀𝑥 ∈ ℋ ∀𝑧 ∈ ℋ (𝑥 ·ih (𝑢‘𝑧)) = ((𝑣‘𝑥) ·ih 𝑧)) ↔ (𝑦: ℋ⟶ ℋ ∧ 𝑣: ℋ⟶ ℋ ∧ ∀𝑥 ∈ ℋ ∀𝑧 ∈ ℋ (𝑥 ·ih (𝑦‘𝑧)) = ((𝑣‘𝑥) ·ih 𝑧)))) |
| 32 | feq1 6684 | . . . . . . . . 9 ⊢ (𝑣 = 𝑡 → (𝑣: ℋ⟶ ℋ ↔ 𝑡: ℋ⟶ ℋ)) | |
| 33 | fveq1 6881 | . . . . . . . . . . . 12 ⊢ (𝑣 = 𝑡 → (𝑣‘𝑥) = (𝑡‘𝑥)) | |
| 34 | 33 | oveq1d 7431 | . . . . . . . . . . 11 ⊢ (𝑣 = 𝑡 → ((𝑣‘𝑥) ·ih 𝑧) = ((𝑡‘𝑥) ·ih 𝑧)) |
| 35 | 34 | eqeq2d 2773 | . . . . . . . . . 10 ⊢ (𝑣 = 𝑡 → ((𝑥 ·ih (𝑦‘𝑧)) = ((𝑣‘𝑥) ·ih 𝑧) ↔ (𝑥 ·ih (𝑦‘𝑧)) = ((𝑡‘𝑥) ·ih 𝑧))) |
| 36 | 35 | 2ralbidv 3228 | . . . . . . . . 9 ⊢ (𝑣 = 𝑡 → (∀𝑥 ∈ ℋ ∀𝑧 ∈ ℋ (𝑥 ·ih (𝑦‘𝑧)) = ((𝑣‘𝑥) ·ih 𝑧) ↔ ∀𝑥 ∈ ℋ ∀𝑧 ∈ ℋ (𝑥 ·ih (𝑦‘𝑧)) = ((𝑡‘𝑥) ·ih 𝑧))) |
| 37 | 32, 36 | 3anbi23d 1467 | . . . . . . . 8 ⊢ (𝑣 = 𝑡 → ((𝑦: ℋ⟶ ℋ ∧ 𝑣: ℋ⟶ ℋ ∧ ∀𝑥 ∈ ℋ ∀𝑧 ∈ ℋ (𝑥 ·ih (𝑦‘𝑧)) = ((𝑣‘𝑥) ·ih 𝑧)) ↔ (𝑦: ℋ⟶ ℋ ∧ 𝑡: ℋ⟶ ℋ ∧ ∀𝑥 ∈ ℋ ∀𝑧 ∈ ℋ (𝑥 ·ih (𝑦‘𝑧)) = ((𝑡‘𝑥) ·ih 𝑧)))) |
| 38 | 24, 25, 31, 37 | opelopab 5525 | . . . . . . 7 ⊢ (〈𝑦, 𝑡〉 ∈ {〈𝑢, 𝑣〉 ∣ (𝑢: ℋ⟶ ℋ ∧ 𝑣: ℋ⟶ ℋ ∧ ∀𝑥 ∈ ℋ ∀𝑧 ∈ ℋ (𝑥 ·ih (𝑢‘𝑧)) = ((𝑣‘𝑥) ·ih 𝑧))} ↔ (𝑦: ℋ⟶ ℋ ∧ 𝑡: ℋ⟶ ℋ ∧ ∀𝑥 ∈ ℋ ∀𝑧 ∈ ℋ (𝑥 ·ih (𝑦‘𝑧)) = ((𝑡‘𝑥) ·ih 𝑧))) |
| 39 | 23, 38 | bitr2i 279 | . . . . . 6 ⊢ ((𝑦: ℋ⟶ ℋ ∧ 𝑡: ℋ⟶ ℋ ∧ ∀𝑥 ∈ ℋ ∀𝑧 ∈ ℋ (𝑥 ·ih (𝑦‘𝑧)) = ((𝑡‘𝑥) ·ih 𝑧)) ↔ 〈𝑦, 𝑡〉 ∈ adjℎ) |
| 40 | 21, 39 | imbitrdi 254 | . . . . 5 ⊢ (𝑦 ∈ (LinOp ∩ ContOp) → ((𝑡 ∈ (LinOp ∩ ContOp) ∧ ∀𝑥 ∈ ℋ ∀𝑧 ∈ ℋ ((𝑦‘𝑥) ·ih 𝑧) = (𝑥 ·ih (𝑡‘𝑧))) → 〈𝑦, 𝑡〉 ∈ adjℎ)) |
| 41 | 40 | eximdv 1950 | . . . 4 ⊢ (𝑦 ∈ (LinOp ∩ ContOp) → (∃𝑡(𝑡 ∈ (LinOp ∩ ContOp) ∧ ∀𝑥 ∈ ℋ ∀𝑧 ∈ ℋ ((𝑦‘𝑥) ·ih 𝑧) = (𝑥 ·ih (𝑡‘𝑧))) → ∃𝑡〈𝑦, 𝑡〉 ∈ adjℎ)) |
| 42 | 3, 41 | mpd 16 | . . 3 ⊢ (𝑦 ∈ (LinOp ∩ ContOp) → ∃𝑡〈𝑦, 𝑡〉 ∈ adjℎ) |
| 43 | 24 | eldm2 5889 | . . 3 ⊢ (𝑦 ∈ dom adjℎ ↔ ∃𝑡〈𝑦, 𝑡〉 ∈ adjℎ) |
| 44 | 42, 43 | sylibr 237 | . 2 ⊢ (𝑦 ∈ (LinOp ∩ ContOp) → 𝑦 ∈ dom adjℎ) |
| 45 | 44 | ssriv 3938 | 1 ⊢ (LinOp ∩ ContOp) ⊆ dom adjℎ |
| Colors of variables: wff setvar class |
| This proof depends on syntax axioms: → wi 4 ↔ wb 209 ∧ wa 401 ∧ w3a 1103 = wceq 1570 ∃wex 1812 ∈ wcel 2145 ∀wral 3078 ∃wrex 3088 ∩ cin 3901 ⊆ wss 3902 〈cop 4593 {copab 5171 dom cdm 5659 ⟶wf 6533 ‘cfv 6537 (class class class)co 7416 ℋchba 31386 ·ih csp 31389 ContOpccop 31413 LinOpclo 31414 adjℎcado 31422 |
| This proof depends on axioms: ax-mp 5 ax-1 6 ax-2 7 ax-3 8 ax-gen 1828 ax-4 1842 ax-5 1943 ax-6 2000 ax-7 2041 ax-8 2147 ax-9 2155 ax-10 2178 ax-11 2194 ax-12 2215 ax-ext 2734 ax-rep 5236 ax-sep 5255 ax-nul 5267 ax-pow 5334 ax-pr 5402 ax-un 7739 ax-inf2 9623 ax-cc 10440 ax-cnex 11183 ax-resscn 11184 ax-1cn 11185 ax-icn 11186 ax-addcl 11187 ax-addrcl 11188 ax-mulcl 11189 ax-mulrcl 11190 ax-mulcom 11191 ax-addass 11192 ax-mulass 11193 ax-distr 11194 ax-i2m1 11195 ax-1ne0 11196 ax-1rid 11197 ax-rnegex 11198 ax-rrecex 11199 ax-cnre 11200 ax-pre-lttri 11201 ax-pre-lttrn 11202 ax-pre-ltadd 11203 ax-pre-mulgt0 11204 ax-pre-sup 11205 ax-addf 11206 ax-mulf 11207 ax-hilex 31466 ax-hfvadd 31467 ax-hvcom 31468 ax-hvass 31469 ax-hv0cl 31470 ax-hvaddid 31471 ax-hfvmul 31472 ax-hvmulid 31473 ax-hvmulass 31474 ax-hvdistr1 31475 ax-hvdistr2 31476 ax-hvmul0 31477 ax-hfi 31546 ax-his1 31549 ax-his2 31550 ax-his3 31551 ax-his4 31552 ax-hcompl 31669 |
| This proof depends on definitions: df-bi 210 df-an 402 df-or 862 df-3or 1104 df-3an 1105 df-tru 1573 df-fal 1583 df-ex 1813 df-nf 1817 df-sb 2100 df-mo 2566 df-eu 2596 df-clab 2741 df-cleq 2754 df-clel 2837 df-nfc 2911 df-ne 2958 df-nel 3064 df-ral 3079 df-rex 3089 df-rmo 3367 df-reu 3368 df-rab 3415 df-v 3455 df-sbc 3743 df-csb 3851 df-dif 3905 df-un 3907 df-in 3909 df-ss 3919 df-pss 3922 df-nul 4283 df-if 4486 df-pw 4562 df-sn 4588 df-pr 4590 df-tp 4592 df-op 4594 df-uni 4871 df-int 4911 df-iun 4956 df-iin 4957 df-br 5108 df-opab 5172 df-mpt 5191 df-tr 5217 df-id 5554 df-eprel 5559 df-po 5567 df-so 5568 df-fr 5612 df-se 5613 df-we 5614 df-xp 5665 df-rel 5666 df-cnv 5667 df-co 5668 df-dm 5669 df-rn 5670 df-res 5671 df-ima 5672 df-pred 6303 df-ord 6364 df-on 6365 df-lim 6366 df-suc 6367 df-iota 6493 df-fun 6539 df-fn 6540 df-f 6541 df-f1 6542 df-fo 6543 df-f1o 6544 df-fv 6545 df-isom 6546 df-riota 7373 df-ov 7419 df-oprab 7420 df-mpo 7421 df-of 7681 df-om 7866 df-1st 7989 df-2nd 7990 df-supp 8162 df-frecs 8283 df-wrecs 8314 df-recs 8363 df-rdg 8402 df-1o 8458 df-2o 8459 df-oadd 8462 df-omul 8463 df-er 8699 df-map 8831 df-pm 8832 df-ixp 8908 df-en 8956 df-dom 8957 df-sdom 8958 df-fin 8959 df-fsupp 9335 df-fi 9384 df-sup 9415 df-inf 9416 df-oi 9485 df-card 9947 df-acn 9950 df-pnf 11272 df-mnf 11273 df-xr 11274 df-ltxr 11275 df-le 11276 df-sub 11470 df-neg 11471 df-div 11899 df-nn 12261 df-2 12330 df-3 12331 df-4 12332 df-5 12333 df-6 12334 df-7 12335 df-8 12336 df-9 12337 df-n0 12532 df-z 12619 df-dec 12740 df-uz 12891 df-q 13001 df-rp 13045 df-xneg 13165 df-xadd 13166 df-xmul 13167 df-ioo 13404 df-ico 13406 df-icc 13407 df-fz 13564 df-fzo 13712 df-fl 13855 df-seq 14068 df-exp 14128 df-hash 14397 df-cj 15188 df-re 15189 df-im 15190 df-sqrt 15324 df-abs 15325 df-clim 15577 df-rlim 15578 df-sum 15776 df-struct 17243 df-sets 17260 df-slot 17278 df-ndx 17290 df-base 17306 df-ress 17327 df-plusg 17359 df-mulr 17360 df-starv 17361 df-sca 17362 df-vsca 17363 df-ip 17364 df-tset 17365 df-ple 17366 df-ds 17368 df-unif 17369 df-hom 17370 df-cco 17371 df-rest 17511 df-topn 17512 df-0g 17530 df-gsum 17531 df-topgen 17532 df-pt 17533 df-prds 17536 df-xrs 17592 df-qtop 17597 df-imas 17598 df-xps 17600 df-mre 17674 df-mrc 17675 df-acs 17677 df-mgm 18734 df-sgrp 18823 df-mnd 18839 df-submnd 18893 df-mulg 19192 df-cntz 19445 df-cmn 19910 df-psmet 21578 df-xmet 21579 df-met 21580 df-bl 21581 df-mopn 21582 df-fbas 21583 df-fg 21584 df-cnfld 21587 df-top 23120 df-topon 23137 df-topsp 23159 df-bases 23172 df-cld 23245 df-ntr 23246 df-cls 23247 df-nei 23324 df-cn 23453 df-cnp 23454 df-lm 23455 df-t1 23540 df-haus 23541 df-tx 23789 df-hmeo 23982 df-fil 24073 df-fm 24165 df-flim 24166 df-flf 24167 df-xms 24547 df-ms 24548 df-tms 24549 df-cfil 25484 df-cau 25485 df-cmet 25486 df-grpo 30960 df-gid 30961 df-ginv 30962 df-gdiv 30963 df-ablo 31012 df-vc 31026 df-nv 31059 df-va 31062 df-ba 31063 df-sm 31064 df-0v 31065 df-vs 31066 df-nmcv 31067 df-ims 31068 df-dip 31168 df-ssp 31189 df-ph 31280 df-cbn 31330 df-hnorm 31435 df-hba 31436 df-hvsub 31438 df-hlim 31439 df-hcau 31440 df-sh 31674 df-ch 31688 df-oc 31719 df-ch0 31720 df-shs 31775 df-pjh 31862 df-h0op 32215 df-nmop 32306 df-cnop 32307 df-lnop 32308 df-unop 32310 df-hmop 32311 df-nmfn 32312 df-nlfn 32313 df-cnfn 32314 df-lnfn 32315 df-adjh 32316 |
| This theorem is used by: bdopssadj 32548 |
| Copyright terms: Public domain | W3C validator |