MPE Home Metamath Proof Explorer < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >  dvrec Structured version   Visualization version   GIF version

Theorem dvrec 23763
Description: Derivative of the reciprocal function. (Contributed by Mario Carneiro, 25-Feb-2015.) (Revised by Mario Carneiro, 28-Dec-2016.)
Assertion
Ref Expression
dvrec (𝐴 ∈ ℂ → (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))) = (𝑥 ∈ (ℂ ∖ {0}) ↦ -(𝐴 / (𝑥↑2))))
Distinct variable group:   𝑥,𝐴

Proof of Theorem dvrec
Dummy variables 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 dvfcn 23717 . . . 4 (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))):dom (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥)))⟶ℂ
2 ssid 3657 . . . . . . . 8 ℂ ⊆ ℂ
32a1i 11 . . . . . . 7 (𝐴 ∈ ℂ → ℂ ⊆ ℂ)
4 eldifsn 4350 . . . . . . . . 9 (𝑥 ∈ (ℂ ∖ {0}) ↔ (𝑥 ∈ ℂ ∧ 𝑥 ≠ 0))
5 divcl 10729 . . . . . . . . . 10 ((𝐴 ∈ ℂ ∧ 𝑥 ∈ ℂ ∧ 𝑥 ≠ 0) → (𝐴 / 𝑥) ∈ ℂ)
653expb 1285 . . . . . . . . 9 ((𝐴 ∈ ℂ ∧ (𝑥 ∈ ℂ ∧ 𝑥 ≠ 0)) → (𝐴 / 𝑥) ∈ ℂ)
74, 6sylan2b 491 . . . . . . . 8 ((𝐴 ∈ ℂ ∧ 𝑥 ∈ (ℂ ∖ {0})) → (𝐴 / 𝑥) ∈ ℂ)
8 eqid 2651 . . . . . . . 8 (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥)) = (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))
97, 8fmptd 6425 . . . . . . 7 (𝐴 ∈ ℂ → (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥)):(ℂ ∖ {0})⟶ℂ)
10 difssd 3771 . . . . . . 7 (𝐴 ∈ ℂ → (ℂ ∖ {0}) ⊆ ℂ)
113, 9, 10dvbss 23710 . . . . . 6 (𝐴 ∈ ℂ → dom (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))) ⊆ (ℂ ∖ {0}))
12 simpr 476 . . . . . . . . . . 11 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → 𝑦 ∈ (ℂ ∖ {0}))
13 eqid 2651 . . . . . . . . . . . . 13 (TopOpen‘ℂfld) = (TopOpen‘ℂfld)
1413cnfldtop 22634 . . . . . . . . . . . 12 (TopOpen‘ℂfld) ∈ Top
1513cnfldhaus 22635 . . . . . . . . . . . . . 14 (TopOpen‘ℂfld) ∈ Haus
16 0cn 10070 . . . . . . . . . . . . . 14 0 ∈ ℂ
1713cnfldtopon 22633 . . . . . . . . . . . . . . . 16 (TopOpen‘ℂfld) ∈ (TopOn‘ℂ)
1817toponunii 20769 . . . . . . . . . . . . . . 15 ℂ = (TopOpen‘ℂfld)
1918sncld 21223 . . . . . . . . . . . . . 14 (((TopOpen‘ℂfld) ∈ Haus ∧ 0 ∈ ℂ) → {0} ∈ (Clsd‘(TopOpen‘ℂfld)))
2015, 16, 19mp2an 708 . . . . . . . . . . . . 13 {0} ∈ (Clsd‘(TopOpen‘ℂfld))
2118cldopn 20883 . . . . . . . . . . . . 13 ({0} ∈ (Clsd‘(TopOpen‘ℂfld)) → (ℂ ∖ {0}) ∈ (TopOpen‘ℂfld))
2220, 21ax-mp 5 . . . . . . . . . . . 12 (ℂ ∖ {0}) ∈ (TopOpen‘ℂfld)
23 isopn3i 20934 . . . . . . . . . . . 12 (((TopOpen‘ℂfld) ∈ Top ∧ (ℂ ∖ {0}) ∈ (TopOpen‘ℂfld)) → ((int‘(TopOpen‘ℂfld))‘(ℂ ∖ {0})) = (ℂ ∖ {0}))
2414, 22, 23mp2an 708 . . . . . . . . . . 11 ((int‘(TopOpen‘ℂfld))‘(ℂ ∖ {0})) = (ℂ ∖ {0})
2512, 24syl6eleqr 2741 . . . . . . . . . 10 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → 𝑦 ∈ ((int‘(TopOpen‘ℂfld))‘(ℂ ∖ {0})))
26 eldifi 3765 . . . . . . . . . . . . . . . . . 18 (𝑦 ∈ (ℂ ∖ {0}) → 𝑦 ∈ ℂ)
2726adantl 481 . . . . . . . . . . . . . . . . 17 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → 𝑦 ∈ ℂ)
2827sqvald 13045 . . . . . . . . . . . . . . . 16 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → (𝑦↑2) = (𝑦 · 𝑦))
2928oveq2d 6706 . . . . . . . . . . . . . . 15 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → (𝐴 / (𝑦↑2)) = (𝐴 / (𝑦 · 𝑦)))
30 simpl 472 . . . . . . . . . . . . . . . 16 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → 𝐴 ∈ ℂ)
31 eldifsni 4353 . . . . . . . . . . . . . . . . 17 (𝑦 ∈ (ℂ ∖ {0}) → 𝑦 ≠ 0)
3231adantl 481 . . . . . . . . . . . . . . . 16 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → 𝑦 ≠ 0)
3330, 27, 27, 32, 32divdiv1d 10870 . . . . . . . . . . . . . . 15 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → ((𝐴 / 𝑦) / 𝑦) = (𝐴 / (𝑦 · 𝑦)))
3429, 33eqtr4d 2688 . . . . . . . . . . . . . 14 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → (𝐴 / (𝑦↑2)) = ((𝐴 / 𝑦) / 𝑦))
3534negeqd 10313 . . . . . . . . . . . . 13 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → -(𝐴 / (𝑦↑2)) = -((𝐴 / 𝑦) / 𝑦))
3630, 27, 32divcld 10839 . . . . . . . . . . . . . 14 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → (𝐴 / 𝑦) ∈ ℂ)
3736, 27, 32divnegd 10852 . . . . . . . . . . . . 13 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → -((𝐴 / 𝑦) / 𝑦) = (-(𝐴 / 𝑦) / 𝑦))
3835, 37eqtrd 2685 . . . . . . . . . . . 12 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → -(𝐴 / (𝑦↑2)) = (-(𝐴 / 𝑦) / 𝑦))
3936negcld 10417 . . . . . . . . . . . . . 14 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → -(𝐴 / 𝑦) ∈ ℂ)
40 eqid 2651 . . . . . . . . . . . . . . 15 (𝑧 ∈ (ℂ ∖ {0}) ↦ (-(𝐴 / 𝑦) / 𝑧)) = (𝑧 ∈ (ℂ ∖ {0}) ↦ (-(𝐴 / 𝑦) / 𝑧))
4140cdivcncf 22767 . . . . . . . . . . . . . 14 (-(𝐴 / 𝑦) ∈ ℂ → (𝑧 ∈ (ℂ ∖ {0}) ↦ (-(𝐴 / 𝑦) / 𝑧)) ∈ ((ℂ ∖ {0})–cn→ℂ))
4239, 41syl 17 . . . . . . . . . . . . 13 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → (𝑧 ∈ (ℂ ∖ {0}) ↦ (-(𝐴 / 𝑦) / 𝑧)) ∈ ((ℂ ∖ {0})–cn→ℂ))
43 oveq2 6698 . . . . . . . . . . . . 13 (𝑧 = 𝑦 → (-(𝐴 / 𝑦) / 𝑧) = (-(𝐴 / 𝑦) / 𝑦))
4442, 12, 43cnmptlimc 23699 . . . . . . . . . . . 12 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → (-(𝐴 / 𝑦) / 𝑦) ∈ ((𝑧 ∈ (ℂ ∖ {0}) ↦ (-(𝐴 / 𝑦) / 𝑧)) lim 𝑦))
4538, 44eqeltrd 2730 . . . . . . . . . . 11 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → -(𝐴 / (𝑦↑2)) ∈ ((𝑧 ∈ (ℂ ∖ {0}) ↦ (-(𝐴 / 𝑦) / 𝑧)) lim 𝑦))
46 cncff 22743 . . . . . . . . . . . . . 14 ((𝑧 ∈ (ℂ ∖ {0}) ↦ (-(𝐴 / 𝑦) / 𝑧)) ∈ ((ℂ ∖ {0})–cn→ℂ) → (𝑧 ∈ (ℂ ∖ {0}) ↦ (-(𝐴 / 𝑦) / 𝑧)):(ℂ ∖ {0})⟶ℂ)
4742, 46syl 17 . . . . . . . . . . . . 13 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → (𝑧 ∈ (ℂ ∖ {0}) ↦ (-(𝐴 / 𝑦) / 𝑧)):(ℂ ∖ {0})⟶ℂ)
4847limcdif 23685 . . . . . . . . . . . 12 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → ((𝑧 ∈ (ℂ ∖ {0}) ↦ (-(𝐴 / 𝑦) / 𝑧)) lim 𝑦) = (((𝑧 ∈ (ℂ ∖ {0}) ↦ (-(𝐴 / 𝑦) / 𝑧)) ↾ ((ℂ ∖ {0}) ∖ {𝑦})) lim 𝑦))
49 eldifi 3765 . . . . . . . . . . . . . . . . . . . . . 22 (𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦}) → 𝑧 ∈ (ℂ ∖ {0}))
5049adantl 481 . . . . . . . . . . . . . . . . . . . . 21 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → 𝑧 ∈ (ℂ ∖ {0}))
5150eldifad 3619 . . . . . . . . . . . . . . . . . . . 20 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → 𝑧 ∈ ℂ)
5226ad2antlr 763 . . . . . . . . . . . . . . . . . . . 20 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → 𝑦 ∈ ℂ)
5351, 52subcld 10430 . . . . . . . . . . . . . . . . . . 19 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → (𝑧𝑦) ∈ ℂ)
5436adantr 480 . . . . . . . . . . . . . . . . . . . 20 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → (𝐴 / 𝑦) ∈ ℂ)
55 eldifsni 4353 . . . . . . . . . . . . . . . . . . . . 21 (𝑧 ∈ (ℂ ∖ {0}) → 𝑧 ≠ 0)
5650, 55syl 17 . . . . . . . . . . . . . . . . . . . 20 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → 𝑧 ≠ 0)
5754, 51, 56divcld 10839 . . . . . . . . . . . . . . . . . . 19 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → ((𝐴 / 𝑦) / 𝑧) ∈ ℂ)
58 mulneg12 10506 . . . . . . . . . . . . . . . . . . 19 (((𝑧𝑦) ∈ ℂ ∧ ((𝐴 / 𝑦) / 𝑧) ∈ ℂ) → (-(𝑧𝑦) · ((𝐴 / 𝑦) / 𝑧)) = ((𝑧𝑦) · -((𝐴 / 𝑦) / 𝑧)))
5953, 57, 58syl2anc 694 . . . . . . . . . . . . . . . . . 18 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → (-(𝑧𝑦) · ((𝐴 / 𝑦) / 𝑧)) = ((𝑧𝑦) · -((𝐴 / 𝑦) / 𝑧)))
6052, 51, 57subdird 10525 . . . . . . . . . . . . . . . . . . 19 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → ((𝑦𝑧) · ((𝐴 / 𝑦) / 𝑧)) = ((𝑦 · ((𝐴 / 𝑦) / 𝑧)) − (𝑧 · ((𝐴 / 𝑦) / 𝑧))))
6151, 52negsubdi2d 10446 . . . . . . . . . . . . . . . . . . . 20 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → -(𝑧𝑦) = (𝑦𝑧))
6261oveq1d 6705 . . . . . . . . . . . . . . . . . . 19 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → (-(𝑧𝑦) · ((𝐴 / 𝑦) / 𝑧)) = ((𝑦𝑧) · ((𝐴 / 𝑦) / 𝑧)))
63 oveq2 6698 . . . . . . . . . . . . . . . . . . . . . . 23 (𝑥 = 𝑧 → (𝐴 / 𝑥) = (𝐴 / 𝑧))
64 ovex 6718 . . . . . . . . . . . . . . . . . . . . . . 23 (𝐴 / 𝑧) ∈ V
6563, 8, 64fvmpt 6321 . . . . . . . . . . . . . . . . . . . . . 22 (𝑧 ∈ (ℂ ∖ {0}) → ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑧) = (𝐴 / 𝑧))
6650, 65syl 17 . . . . . . . . . . . . . . . . . . . . 21 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑧) = (𝐴 / 𝑧))
67 simpll 805 . . . . . . . . . . . . . . . . . . . . . . 23 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → 𝐴 ∈ ℂ)
6831ad2antlr 763 . . . . . . . . . . . . . . . . . . . . . . 23 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → 𝑦 ≠ 0)
6967, 52, 68divcan2d 10841 . . . . . . . . . . . . . . . . . . . . . 22 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → (𝑦 · (𝐴 / 𝑦)) = 𝐴)
7069oveq1d 6705 . . . . . . . . . . . . . . . . . . . . 21 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → ((𝑦 · (𝐴 / 𝑦)) / 𝑧) = (𝐴 / 𝑧))
7152, 54, 51, 56divassd 10874 . . . . . . . . . . . . . . . . . . . . 21 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → ((𝑦 · (𝐴 / 𝑦)) / 𝑧) = (𝑦 · ((𝐴 / 𝑦) / 𝑧)))
7266, 70, 713eqtr2d 2691 . . . . . . . . . . . . . . . . . . . 20 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑧) = (𝑦 · ((𝐴 / 𝑦) / 𝑧)))
73 oveq2 6698 . . . . . . . . . . . . . . . . . . . . . . 23 (𝑥 = 𝑦 → (𝐴 / 𝑥) = (𝐴 / 𝑦))
74 ovex 6718 . . . . . . . . . . . . . . . . . . . . . . 23 (𝐴 / 𝑦) ∈ V
7573, 8, 74fvmpt 6321 . . . . . . . . . . . . . . . . . . . . . 22 (𝑦 ∈ (ℂ ∖ {0}) → ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑦) = (𝐴 / 𝑦))
7675ad2antlr 763 . . . . . . . . . . . . . . . . . . . . 21 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑦) = (𝐴 / 𝑦))
7754, 51, 56divcan2d 10841 . . . . . . . . . . . . . . . . . . . . 21 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → (𝑧 · ((𝐴 / 𝑦) / 𝑧)) = (𝐴 / 𝑦))
7876, 77eqtr4d 2688 . . . . . . . . . . . . . . . . . . . 20 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑦) = (𝑧 · ((𝐴 / 𝑦) / 𝑧)))
7972, 78oveq12d 6708 . . . . . . . . . . . . . . . . . . 19 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → (((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑧) − ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑦)) = ((𝑦 · ((𝐴 / 𝑦) / 𝑧)) − (𝑧 · ((𝐴 / 𝑦) / 𝑧))))
8060, 62, 793eqtr4d 2695 . . . . . . . . . . . . . . . . . 18 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → (-(𝑧𝑦) · ((𝐴 / 𝑦) / 𝑧)) = (((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑧) − ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑦)))
8154, 51, 56divnegd 10852 . . . . . . . . . . . . . . . . . . 19 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → -((𝐴 / 𝑦) / 𝑧) = (-(𝐴 / 𝑦) / 𝑧))
8281oveq2d 6706 . . . . . . . . . . . . . . . . . 18 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → ((𝑧𝑦) · -((𝐴 / 𝑦) / 𝑧)) = ((𝑧𝑦) · (-(𝐴 / 𝑦) / 𝑧)))
8359, 80, 823eqtr3d 2693 . . . . . . . . . . . . . . . . 17 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → (((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑧) − ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑦)) = ((𝑧𝑦) · (-(𝐴 / 𝑦) / 𝑧)))
8483oveq1d 6705 . . . . . . . . . . . . . . . 16 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → ((((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑧) − ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑦)) / (𝑧𝑦)) = (((𝑧𝑦) · (-(𝐴 / 𝑦) / 𝑧)) / (𝑧𝑦)))
8554negcld 10417 . . . . . . . . . . . . . . . . . 18 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → -(𝐴 / 𝑦) ∈ ℂ)
8685, 51, 56divcld 10839 . . . . . . . . . . . . . . . . 17 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → (-(𝐴 / 𝑦) / 𝑧) ∈ ℂ)
87 eldifsni 4353 . . . . . . . . . . . . . . . . . . 19 (𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦}) → 𝑧𝑦)
8887adantl 481 . . . . . . . . . . . . . . . . . 18 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → 𝑧𝑦)
8951, 52, 88subne0d 10439 . . . . . . . . . . . . . . . . 17 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → (𝑧𝑦) ≠ 0)
9086, 53, 89divcan3d 10844 . . . . . . . . . . . . . . . 16 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → (((𝑧𝑦) · (-(𝐴 / 𝑦) / 𝑧)) / (𝑧𝑦)) = (-(𝐴 / 𝑦) / 𝑧))
9184, 90eqtrd 2685 . . . . . . . . . . . . . . 15 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → ((((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑧) − ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑦)) / (𝑧𝑦)) = (-(𝐴 / 𝑦) / 𝑧))
9291mpteq2dva 4777 . . . . . . . . . . . . . 14 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → (𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦}) ↦ ((((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑧) − ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑦)) / (𝑧𝑦))) = (𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦}) ↦ (-(𝐴 / 𝑦) / 𝑧)))
93 difss 3770 . . . . . . . . . . . . . . 15 ((ℂ ∖ {0}) ∖ {𝑦}) ⊆ (ℂ ∖ {0})
94 resmpt 5484 . . . . . . . . . . . . . . 15 (((ℂ ∖ {0}) ∖ {𝑦}) ⊆ (ℂ ∖ {0}) → ((𝑧 ∈ (ℂ ∖ {0}) ↦ (-(𝐴 / 𝑦) / 𝑧)) ↾ ((ℂ ∖ {0}) ∖ {𝑦})) = (𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦}) ↦ (-(𝐴 / 𝑦) / 𝑧)))
9593, 94ax-mp 5 . . . . . . . . . . . . . 14 ((𝑧 ∈ (ℂ ∖ {0}) ↦ (-(𝐴 / 𝑦) / 𝑧)) ↾ ((ℂ ∖ {0}) ∖ {𝑦})) = (𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦}) ↦ (-(𝐴 / 𝑦) / 𝑧))
9692, 95syl6eqr 2703 . . . . . . . . . . . . 13 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → (𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦}) ↦ ((((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑧) − ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑦)) / (𝑧𝑦))) = ((𝑧 ∈ (ℂ ∖ {0}) ↦ (-(𝐴 / 𝑦) / 𝑧)) ↾ ((ℂ ∖ {0}) ∖ {𝑦})))
9796oveq1d 6705 . . . . . . . . . . . 12 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → ((𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦}) ↦ ((((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑧) − ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑦)) / (𝑧𝑦))) lim 𝑦) = (((𝑧 ∈ (ℂ ∖ {0}) ↦ (-(𝐴 / 𝑦) / 𝑧)) ↾ ((ℂ ∖ {0}) ∖ {𝑦})) lim 𝑦))
9848, 97eqtr4d 2688 . . . . . . . . . . 11 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → ((𝑧 ∈ (ℂ ∖ {0}) ↦ (-(𝐴 / 𝑦) / 𝑧)) lim 𝑦) = ((𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦}) ↦ ((((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑧) − ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑦)) / (𝑧𝑦))) lim 𝑦))
9945, 98eleqtrd 2732 . . . . . . . . . 10 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → -(𝐴 / (𝑦↑2)) ∈ ((𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦}) ↦ ((((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑧) − ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑦)) / (𝑧𝑦))) lim 𝑦))
10018restid 16141 . . . . . . . . . . . . 13 ((TopOpen‘ℂfld) ∈ Top → ((TopOpen‘ℂfld) ↾t ℂ) = (TopOpen‘ℂfld))
10114, 100ax-mp 5 . . . . . . . . . . . 12 ((TopOpen‘ℂfld) ↾t ℂ) = (TopOpen‘ℂfld)
102101eqcomi 2660 . . . . . . . . . . 11 (TopOpen‘ℂfld) = ((TopOpen‘ℂfld) ↾t ℂ)
103 eqid 2651 . . . . . . . . . . 11 (𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦}) ↦ ((((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑧) − ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑦)) / (𝑧𝑦))) = (𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦}) ↦ ((((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑧) − ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑦)) / (𝑧𝑦)))
1042a1i 11 . . . . . . . . . . 11 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → ℂ ⊆ ℂ)
1059adantr 480 . . . . . . . . . . 11 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥)):(ℂ ∖ {0})⟶ℂ)
106 difssd 3771 . . . . . . . . . . 11 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → (ℂ ∖ {0}) ⊆ ℂ)
107102, 13, 103, 104, 105, 106eldv 23707 . . . . . . . . . 10 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → (𝑦(ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥)))-(𝐴 / (𝑦↑2)) ↔ (𝑦 ∈ ((int‘(TopOpen‘ℂfld))‘(ℂ ∖ {0})) ∧ -(𝐴 / (𝑦↑2)) ∈ ((𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦}) ↦ ((((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑧) − ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑦)) / (𝑧𝑦))) lim 𝑦))))
10825, 99, 107mpbir2and 977 . . . . . . . . 9 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → 𝑦(ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥)))-(𝐴 / (𝑦↑2)))
109 vex 3234 . . . . . . . . . 10 𝑦 ∈ V
110 negex 10317 . . . . . . . . . 10 -(𝐴 / (𝑦↑2)) ∈ V
111109, 110breldm 5361 . . . . . . . . 9 (𝑦(ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥)))-(𝐴 / (𝑦↑2)) → 𝑦 ∈ dom (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))))
112108, 111syl 17 . . . . . . . 8 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → 𝑦 ∈ dom (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))))
113112ex 449 . . . . . . 7 (𝐴 ∈ ℂ → (𝑦 ∈ (ℂ ∖ {0}) → 𝑦 ∈ dom (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥)))))
114113ssrdv 3642 . . . . . 6 (𝐴 ∈ ℂ → (ℂ ∖ {0}) ⊆ dom (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))))
11511, 114eqssd 3653 . . . . 5 (𝐴 ∈ ℂ → dom (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))) = (ℂ ∖ {0}))
116115feq2d 6069 . . . 4 (𝐴 ∈ ℂ → ((ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))):dom (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥)))⟶ℂ ↔ (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))):(ℂ ∖ {0})⟶ℂ))
1171, 116mpbii 223 . . 3 (𝐴 ∈ ℂ → (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))):(ℂ ∖ {0})⟶ℂ)
118 ffn 6083 . . 3 ((ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))):(ℂ ∖ {0})⟶ℂ → (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))) Fn (ℂ ∖ {0}))
119117, 118syl 17 . 2 (𝐴 ∈ ℂ → (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))) Fn (ℂ ∖ {0}))
120 negex 10317 . . . 4 -(𝐴 / (𝑥↑2)) ∈ V
121120rgenw 2953 . . 3 𝑥 ∈ (ℂ ∖ {0})-(𝐴 / (𝑥↑2)) ∈ V
122 eqid 2651 . . . 4 (𝑥 ∈ (ℂ ∖ {0}) ↦ -(𝐴 / (𝑥↑2))) = (𝑥 ∈ (ℂ ∖ {0}) ↦ -(𝐴 / (𝑥↑2)))
123122fnmpt 6058 . . 3 (∀𝑥 ∈ (ℂ ∖ {0})-(𝐴 / (𝑥↑2)) ∈ V → (𝑥 ∈ (ℂ ∖ {0}) ↦ -(𝐴 / (𝑥↑2))) Fn (ℂ ∖ {0}))
124121, 123mp1i 13 . 2 (𝐴 ∈ ℂ → (𝑥 ∈ (ℂ ∖ {0}) ↦ -(𝐴 / (𝑥↑2))) Fn (ℂ ∖ {0}))
125 ffun 6086 . . . . 5 ((ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))):dom (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥)))⟶ℂ → Fun (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))))
1261, 125mp1i 13 . . . 4 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → Fun (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))))
127 funbrfv 6272 . . . 4 (Fun (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))) → (𝑦(ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥)))-(𝐴 / (𝑦↑2)) → ((ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥)))‘𝑦) = -(𝐴 / (𝑦↑2))))
128126, 108, 127sylc 65 . . 3 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → ((ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥)))‘𝑦) = -(𝐴 / (𝑦↑2)))
129 oveq1 6697 . . . . . . 7 (𝑥 = 𝑦 → (𝑥↑2) = (𝑦↑2))
130129oveq2d 6706 . . . . . 6 (𝑥 = 𝑦 → (𝐴 / (𝑥↑2)) = (𝐴 / (𝑦↑2)))
131130negeqd 10313 . . . . 5 (𝑥 = 𝑦 → -(𝐴 / (𝑥↑2)) = -(𝐴 / (𝑦↑2)))
132131, 122, 110fvmpt 6321 . . . 4 (𝑦 ∈ (ℂ ∖ {0}) → ((𝑥 ∈ (ℂ ∖ {0}) ↦ -(𝐴 / (𝑥↑2)))‘𝑦) = -(𝐴 / (𝑦↑2)))
133132adantl 481 . . 3 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → ((𝑥 ∈ (ℂ ∖ {0}) ↦ -(𝐴 / (𝑥↑2)))‘𝑦) = -(𝐴 / (𝑦↑2)))
134128, 133eqtr4d 2688 . 2 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → ((ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥)))‘𝑦) = ((𝑥 ∈ (ℂ ∖ {0}) ↦ -(𝐴 / (𝑥↑2)))‘𝑦))
135119, 124, 134eqfnfvd 6354 1 (𝐴 ∈ ℂ → (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))) = (𝑥 ∈ (ℂ ∖ {0}) ↦ -(𝐴 / (𝑥↑2))))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 383   = wceq 1523  wcel 2030  wne 2823  wral 2941  Vcvv 3231  cdif 3604  wss 3607  {csn 4210   class class class wbr 4685  cmpt 4762  dom cdm 5143  cres 5145  Fun wfun 5920   Fn wfn 5921  wf 5922  cfv 5926  (class class class)co 6690  cc 9972  0cc0 9974   · cmul 9979  cmin 10304  -cneg 10305   / cdiv 10722  2c2 11108  cexp 12900  t crest 16128  TopOpenctopn 16129  fldccnfld 19794  Topctop 20746  Clsdccld 20868  intcnt 20869  Hauscha 21160  cnccncf 22726   lim climc 23671   D cdv 23672
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1762  ax-4 1777  ax-5 1879  ax-6 1945  ax-7 1981  ax-8 2032  ax-9 2039  ax-10 2059  ax-11 2074  ax-12 2087  ax-13 2282  ax-ext 2631  ax-rep 4804  ax-sep 4814  ax-nul 4822  ax-pow 4873  ax-pr 4936  ax-un 6991  ax-inf2 8576  ax-cnex 10030  ax-resscn 10031  ax-1cn 10032  ax-icn 10033  ax-addcl 10034  ax-addrcl 10035  ax-mulcl 10036  ax-mulrcl 10037  ax-mulcom 10038  ax-addass 10039  ax-mulass 10040  ax-distr 10041  ax-i2m1 10042  ax-1ne0 10043  ax-1rid 10044  ax-rnegex 10045  ax-rrecex 10046  ax-cnre 10047  ax-pre-lttri 10048  ax-pre-lttrn 10049  ax-pre-ltadd 10050  ax-pre-mulgt0 10051  ax-pre-sup 10052  ax-mulf 10054
This theorem depends on definitions:  df-bi 197  df-or 384  df-an 385  df-3or 1055  df-3an 1056  df-tru 1526  df-ex 1745  df-nf 1750  df-sb 1938  df-eu 2502  df-mo 2503  df-clab 2638  df-cleq 2644  df-clel 2647  df-nfc 2782  df-ne 2824  df-nel 2927  df-ral 2946  df-rex 2947  df-reu 2948  df-rmo 2949  df-rab 2950  df-v 3233  df-sbc 3469  df-csb 3567  df-dif 3610  df-un 3612  df-in 3614  df-ss 3621  df-pss 3623  df-nul 3949  df-if 4120  df-pw 4193  df-sn 4211  df-pr 4213  df-tp 4215  df-op 4217  df-uni 4469  df-int 4508  df-iun 4554  df-iin 4555  df-br 4686  df-opab 4746  df-mpt 4763  df-tr 4786  df-id 5053  df-eprel 5058  df-po 5064  df-so 5065  df-fr 5102  df-se 5103  df-we 5104  df-xp 5149  df-rel 5150  df-cnv 5151  df-co 5152  df-dm 5153  df-rn 5154  df-res 5155  df-ima 5156  df-pred 5718  df-ord 5764  df-on 5765  df-lim 5766  df-suc 5767  df-iota 5889  df-fun 5928  df-fn 5929  df-f 5930  df-f1 5931  df-fo 5932  df-f1o 5933  df-fv 5934  df-isom 5935  df-riota 6651  df-ov 6693  df-oprab 6694  df-mpt2 6695  df-of 6939  df-om 7108  df-1st 7210  df-2nd 7211  df-supp 7341  df-wrecs 7452  df-recs 7513  df-rdg 7551  df-1o 7605  df-2o 7606  df-oadd 7609  df-er 7787  df-map 7901  df-pm 7902  df-ixp 7951  df-en 7998  df-dom 7999  df-sdom 8000  df-fin 8001  df-fsupp 8317  df-fi 8358  df-sup 8389  df-inf 8390  df-oi 8456  df-card 8803  df-cda 9028  df-pnf 10114  df-mnf 10115  df-xr 10116  df-ltxr 10117  df-le 10118  df-sub 10306  df-neg 10307  df-div 10723  df-nn 11059  df-2 11117  df-3 11118  df-4 11119  df-5 11120  df-6 11121  df-7 11122  df-8 11123  df-9 11124  df-n0 11331  df-z 11416  df-dec 11532  df-uz 11726  df-q 11827  df-rp 11871  df-xneg 11984  df-xadd 11985  df-xmul 11986  df-icc 12220  df-fz 12365  df-fzo 12505  df-seq 12842  df-exp 12901  df-hash 13158  df-cj 13883  df-re 13884  df-im 13885  df-sqrt 14019  df-abs 14020  df-struct 15906  df-ndx 15907  df-slot 15908  df-base 15910  df-sets 15911  df-ress 15912  df-plusg 16001  df-mulr 16002  df-starv 16003  df-sca 16004  df-vsca 16005  df-ip 16006  df-tset 16007  df-ple 16008  df-ds 16011  df-unif 16012  df-hom 16013  df-cco 16014  df-rest 16130  df-topn 16131  df-0g 16149  df-gsum 16150  df-topgen 16151  df-pt 16152  df-prds 16155  df-xrs 16209  df-qtop 16214  df-imas 16215  df-xps 16217  df-mre 16293  df-mrc 16294  df-acs 16296  df-mgm 17289  df-sgrp 17331  df-mnd 17342  df-submnd 17383  df-mulg 17588  df-cntz 17796  df-cmn 18241  df-psmet 19786  df-xmet 19787  df-met 19788  df-bl 19789  df-mopn 19790  df-fbas 19791  df-fg 19792  df-cnfld 19795  df-top 20747  df-topon 20764  df-topsp 20785  df-bases 20798  df-cld 20871  df-ntr 20872  df-cls 20873  df-nei 20950  df-lp 20988  df-perf 20989  df-cn 21079  df-cnp 21080  df-t1 21166  df-haus 21167  df-tx 21413  df-hmeo 21606  df-fil 21697  df-fm 21789  df-flim 21790  df-flf 21791  df-xms 22172  df-ms 22173  df-tms 22174  df-cncf 22728  df-limc 23675  df-dv 23676
This theorem is referenced by:  dvrecg  23781  dvexp3  23786  dvtan  33590
  Copyright terms: Public domain W3C validator