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

Theorem dvrec 23619
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 23573 . . . 4 (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))):dom (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥)))⟶ℂ
2 ssid 3608 . . . . . . . 8 ℂ ⊆ ℂ
32a1i 11 . . . . . . 7 (𝐴 ∈ ℂ → ℂ ⊆ ℂ)
4 eldifsn 4292 . . . . . . . . 9 (𝑥 ∈ (ℂ ∖ {0}) ↔ (𝑥 ∈ ℂ ∧ 𝑥 ≠ 0))
5 divcl 10636 . . . . . . . . . 10 ((𝐴 ∈ ℂ ∧ 𝑥 ∈ ℂ ∧ 𝑥 ≠ 0) → (𝐴 / 𝑥) ∈ ℂ)
653expb 1263 . . . . . . . . 9 ((𝐴 ∈ ℂ ∧ (𝑥 ∈ ℂ ∧ 𝑥 ≠ 0)) → (𝐴 / 𝑥) ∈ ℂ)
74, 6sylan2b 492 . . . . . . . 8 ((𝐴 ∈ ℂ ∧ 𝑥 ∈ (ℂ ∖ {0})) → (𝐴 / 𝑥) ∈ ℂ)
8 eqid 2626 . . . . . . . 8 (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥)) = (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))
97, 8fmptd 6341 . . . . . . 7 (𝐴 ∈ ℂ → (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥)):(ℂ ∖ {0})⟶ℂ)
10 difssd 3721 . . . . . . 7 (𝐴 ∈ ℂ → (ℂ ∖ {0}) ⊆ ℂ)
113, 9, 10dvbss 23566 . . . . . 6 (𝐴 ∈ ℂ → dom (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))) ⊆ (ℂ ∖ {0}))
12 simpr 477 . . . . . . . . . . 11 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → 𝑦 ∈ (ℂ ∖ {0}))
13 eqid 2626 . . . . . . . . . . . . 13 (TopOpen‘ℂfld) = (TopOpen‘ℂfld)
1413cnfldtop 22492 . . . . . . . . . . . 12 (TopOpen‘ℂfld) ∈ Top
1513cnfldhaus 22493 . . . . . . . . . . . . . 14 (TopOpen‘ℂfld) ∈ Haus
16 0cn 9977 . . . . . . . . . . . . . 14 0 ∈ ℂ
1713cnfldtopon 22491 . . . . . . . . . . . . . . . 16 (TopOpen‘ℂfld) ∈ (TopOn‘ℂ)
1817toponunii 20642 . . . . . . . . . . . . . . 15 ℂ = (TopOpen‘ℂfld)
1918sncld 21080 . . . . . . . . . . . . . 14 (((TopOpen‘ℂfld) ∈ Haus ∧ 0 ∈ ℂ) → {0} ∈ (Clsd‘(TopOpen‘ℂfld)))
2015, 16, 19mp2an 707 . . . . . . . . . . . . 13 {0} ∈ (Clsd‘(TopOpen‘ℂfld))
2118cldopn 20740 . . . . . . . . . . . . 13 ({0} ∈ (Clsd‘(TopOpen‘ℂfld)) → (ℂ ∖ {0}) ∈ (TopOpen‘ℂfld))
2220, 21ax-mp 5 . . . . . . . . . . . 12 (ℂ ∖ {0}) ∈ (TopOpen‘ℂfld)
23 isopn3i 20791 . . . . . . . . . . . 12 (((TopOpen‘ℂfld) ∈ Top ∧ (ℂ ∖ {0}) ∈ (TopOpen‘ℂfld)) → ((int‘(TopOpen‘ℂfld))‘(ℂ ∖ {0})) = (ℂ ∖ {0}))
2414, 22, 23mp2an 707 . . . . . . . . . . 11 ((int‘(TopOpen‘ℂfld))‘(ℂ ∖ {0})) = (ℂ ∖ {0})
2512, 24syl6eleqr 2715 . . . . . . . . . 10 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → 𝑦 ∈ ((int‘(TopOpen‘ℂfld))‘(ℂ ∖ {0})))
26 eldifi 3715 . . . . . . . . . . . . . . . . . 18 (𝑦 ∈ (ℂ ∖ {0}) → 𝑦 ∈ ℂ)
2726adantl 482 . . . . . . . . . . . . . . . . 17 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → 𝑦 ∈ ℂ)
2827sqvald 12942 . . . . . . . . . . . . . . . 16 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → (𝑦↑2) = (𝑦 · 𝑦))
2928oveq2d 6621 . . . . . . . . . . . . . . 15 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → (𝐴 / (𝑦↑2)) = (𝐴 / (𝑦 · 𝑦)))
30 simpl 473 . . . . . . . . . . . . . . . 16 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → 𝐴 ∈ ℂ)
31 eldifsni 4294 . . . . . . . . . . . . . . . . 17 (𝑦 ∈ (ℂ ∖ {0}) → 𝑦 ≠ 0)
3231adantl 482 . . . . . . . . . . . . . . . 16 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → 𝑦 ≠ 0)
3330, 27, 27, 32, 32divdiv1d 10777 . . . . . . . . . . . . . . 15 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → ((𝐴 / 𝑦) / 𝑦) = (𝐴 / (𝑦 · 𝑦)))
3429, 33eqtr4d 2663 . . . . . . . . . . . . . 14 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → (𝐴 / (𝑦↑2)) = ((𝐴 / 𝑦) / 𝑦))
3534negeqd 10220 . . . . . . . . . . . . 13 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → -(𝐴 / (𝑦↑2)) = -((𝐴 / 𝑦) / 𝑦))
3630, 27, 32divcld 10746 . . . . . . . . . . . . . 14 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → (𝐴 / 𝑦) ∈ ℂ)
3736, 27, 32divnegd 10759 . . . . . . . . . . . . 13 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → -((𝐴 / 𝑦) / 𝑦) = (-(𝐴 / 𝑦) / 𝑦))
3835, 37eqtrd 2660 . . . . . . . . . . . 12 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → -(𝐴 / (𝑦↑2)) = (-(𝐴 / 𝑦) / 𝑦))
3936negcld 10324 . . . . . . . . . . . . . 14 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → -(𝐴 / 𝑦) ∈ ℂ)
40 eqid 2626 . . . . . . . . . . . . . . 15 (𝑧 ∈ (ℂ ∖ {0}) ↦ (-(𝐴 / 𝑦) / 𝑧)) = (𝑧 ∈ (ℂ ∖ {0}) ↦ (-(𝐴 / 𝑦) / 𝑧))
4140cdivcncf 22623 . . . . . . . . . . . . . 14 (-(𝐴 / 𝑦) ∈ ℂ → (𝑧 ∈ (ℂ ∖ {0}) ↦ (-(𝐴 / 𝑦) / 𝑧)) ∈ ((ℂ ∖ {0})–cn→ℂ))
4239, 41syl 17 . . . . . . . . . . . . 13 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → (𝑧 ∈ (ℂ ∖ {0}) ↦ (-(𝐴 / 𝑦) / 𝑧)) ∈ ((ℂ ∖ {0})–cn→ℂ))
43 oveq2 6613 . . . . . . . . . . . . 13 (𝑧 = 𝑦 → (-(𝐴 / 𝑦) / 𝑧) = (-(𝐴 / 𝑦) / 𝑦))
4442, 12, 43cnmptlimc 23555 . . . . . . . . . . . 12 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → (-(𝐴 / 𝑦) / 𝑦) ∈ ((𝑧 ∈ (ℂ ∖ {0}) ↦ (-(𝐴 / 𝑦) / 𝑧)) lim 𝑦))
4538, 44eqeltrd 2704 . . . . . . . . . . 11 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → -(𝐴 / (𝑦↑2)) ∈ ((𝑧 ∈ (ℂ ∖ {0}) ↦ (-(𝐴 / 𝑦) / 𝑧)) lim 𝑦))
46 cncff 22599 . . . . . . . . . . . . . 14 ((𝑧 ∈ (ℂ ∖ {0}) ↦ (-(𝐴 / 𝑦) / 𝑧)) ∈ ((ℂ ∖ {0})–cn→ℂ) → (𝑧 ∈ (ℂ ∖ {0}) ↦ (-(𝐴 / 𝑦) / 𝑧)):(ℂ ∖ {0})⟶ℂ)
4742, 46syl 17 . . . . . . . . . . . . 13 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → (𝑧 ∈ (ℂ ∖ {0}) ↦ (-(𝐴 / 𝑦) / 𝑧)):(ℂ ∖ {0})⟶ℂ)
4847limcdif 23541 . . . . . . . . . . . 12 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → ((𝑧 ∈ (ℂ ∖ {0}) ↦ (-(𝐴 / 𝑦) / 𝑧)) lim 𝑦) = (((𝑧 ∈ (ℂ ∖ {0}) ↦ (-(𝐴 / 𝑦) / 𝑧)) ↾ ((ℂ ∖ {0}) ∖ {𝑦})) lim 𝑦))
49 eldifi 3715 . . . . . . . . . . . . . . . . . . . . . 22 (𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦}) → 𝑧 ∈ (ℂ ∖ {0}))
5049adantl 482 . . . . . . . . . . . . . . . . . . . . 21 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → 𝑧 ∈ (ℂ ∖ {0}))
5150eldifad 3572 . . . . . . . . . . . . . . . . . . . 20 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → 𝑧 ∈ ℂ)
5226ad2antlr 762 . . . . . . . . . . . . . . . . . . . 20 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → 𝑦 ∈ ℂ)
5351, 52subcld 10337 . . . . . . . . . . . . . . . . . . 19 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → (𝑧𝑦) ∈ ℂ)
5436adantr 481 . . . . . . . . . . . . . . . . . . . 20 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → (𝐴 / 𝑦) ∈ ℂ)
55 eldifsni 4294 . . . . . . . . . . . . . . . . . . . . 21 (𝑧 ∈ (ℂ ∖ {0}) → 𝑧 ≠ 0)
5650, 55syl 17 . . . . . . . . . . . . . . . . . . . 20 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → 𝑧 ≠ 0)
5754, 51, 56divcld 10746 . . . . . . . . . . . . . . . . . . 19 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → ((𝐴 / 𝑦) / 𝑧) ∈ ℂ)
58 mulneg12 10413 . . . . . . . . . . . . . . . . . . 19 (((𝑧𝑦) ∈ ℂ ∧ ((𝐴 / 𝑦) / 𝑧) ∈ ℂ) → (-(𝑧𝑦) · ((𝐴 / 𝑦) / 𝑧)) = ((𝑧𝑦) · -((𝐴 / 𝑦) / 𝑧)))
5953, 57, 58syl2anc 692 . . . . . . . . . . . . . . . . . 18 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → (-(𝑧𝑦) · ((𝐴 / 𝑦) / 𝑧)) = ((𝑧𝑦) · -((𝐴 / 𝑦) / 𝑧)))
6052, 51, 57subdird 10432 . . . . . . . . . . . . . . . . . . 19 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → ((𝑦𝑧) · ((𝐴 / 𝑦) / 𝑧)) = ((𝑦 · ((𝐴 / 𝑦) / 𝑧)) − (𝑧 · ((𝐴 / 𝑦) / 𝑧))))
6151, 52negsubdi2d 10353 . . . . . . . . . . . . . . . . . . . 20 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → -(𝑧𝑦) = (𝑦𝑧))
6261oveq1d 6620 . . . . . . . . . . . . . . . . . . 19 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → (-(𝑧𝑦) · ((𝐴 / 𝑦) / 𝑧)) = ((𝑦𝑧) · ((𝐴 / 𝑦) / 𝑧)))
63 oveq2 6613 . . . . . . . . . . . . . . . . . . . . . . 23 (𝑥 = 𝑧 → (𝐴 / 𝑥) = (𝐴 / 𝑧))
64 ovex 6633 . . . . . . . . . . . . . . . . . . . . . . 23 (𝐴 / 𝑧) ∈ V
6563, 8, 64fvmpt 6240 . . . . . . . . . . . . . . . . . . . . . 22 (𝑧 ∈ (ℂ ∖ {0}) → ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑧) = (𝐴 / 𝑧))
6650, 65syl 17 . . . . . . . . . . . . . . . . . . . . 21 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑧) = (𝐴 / 𝑧))
67 simpll 789 . . . . . . . . . . . . . . . . . . . . . . 23 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → 𝐴 ∈ ℂ)
6831ad2antlr 762 . . . . . . . . . . . . . . . . . . . . . . 23 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → 𝑦 ≠ 0)
6967, 52, 68divcan2d 10748 . . . . . . . . . . . . . . . . . . . . . 22 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → (𝑦 · (𝐴 / 𝑦)) = 𝐴)
7069oveq1d 6620 . . . . . . . . . . . . . . . . . . . . 21 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → ((𝑦 · (𝐴 / 𝑦)) / 𝑧) = (𝐴 / 𝑧))
7152, 54, 51, 56divassd 10781 . . . . . . . . . . . . . . . . . . . . 21 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → ((𝑦 · (𝐴 / 𝑦)) / 𝑧) = (𝑦 · ((𝐴 / 𝑦) / 𝑧)))
7266, 70, 713eqtr2d 2666 . . . . . . . . . . . . . . . . . . . 20 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑧) = (𝑦 · ((𝐴 / 𝑦) / 𝑧)))
73 oveq2 6613 . . . . . . . . . . . . . . . . . . . . . . 23 (𝑥 = 𝑦 → (𝐴 / 𝑥) = (𝐴 / 𝑦))
74 ovex 6633 . . . . . . . . . . . . . . . . . . . . . . 23 (𝐴 / 𝑦) ∈ V
7573, 8, 74fvmpt 6240 . . . . . . . . . . . . . . . . . . . . . 22 (𝑦 ∈ (ℂ ∖ {0}) → ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑦) = (𝐴 / 𝑦))
7675ad2antlr 762 . . . . . . . . . . . . . . . . . . . . 21 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑦) = (𝐴 / 𝑦))
7754, 51, 56divcan2d 10748 . . . . . . . . . . . . . . . . . . . . 21 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → (𝑧 · ((𝐴 / 𝑦) / 𝑧)) = (𝐴 / 𝑦))
7876, 77eqtr4d 2663 . . . . . . . . . . . . . . . . . . . 20 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑦) = (𝑧 · ((𝐴 / 𝑦) / 𝑧)))
7972, 78oveq12d 6623 . . . . . . . . . . . . . . . . . . 19 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → (((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑧) − ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑦)) = ((𝑦 · ((𝐴 / 𝑦) / 𝑧)) − (𝑧 · ((𝐴 / 𝑦) / 𝑧))))
8060, 62, 793eqtr4d 2670 . . . . . . . . . . . . . . . . . 18 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → (-(𝑧𝑦) · ((𝐴 / 𝑦) / 𝑧)) = (((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑧) − ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑦)))
8154, 51, 56divnegd 10759 . . . . . . . . . . . . . . . . . . 19 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → -((𝐴 / 𝑦) / 𝑧) = (-(𝐴 / 𝑦) / 𝑧))
8281oveq2d 6621 . . . . . . . . . . . . . . . . . 18 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → ((𝑧𝑦) · -((𝐴 / 𝑦) / 𝑧)) = ((𝑧𝑦) · (-(𝐴 / 𝑦) / 𝑧)))
8359, 80, 823eqtr3d 2668 . . . . . . . . . . . . . . . . 17 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → (((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑧) − ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑦)) = ((𝑧𝑦) · (-(𝐴 / 𝑦) / 𝑧)))
8483oveq1d 6620 . . . . . . . . . . . . . . . 16 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → ((((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑧) − ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑦)) / (𝑧𝑦)) = (((𝑧𝑦) · (-(𝐴 / 𝑦) / 𝑧)) / (𝑧𝑦)))
8554negcld 10324 . . . . . . . . . . . . . . . . . 18 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → -(𝐴 / 𝑦) ∈ ℂ)
8685, 51, 56divcld 10746 . . . . . . . . . . . . . . . . 17 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → (-(𝐴 / 𝑦) / 𝑧) ∈ ℂ)
87 eldifsni 4294 . . . . . . . . . . . . . . . . . . 19 (𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦}) → 𝑧𝑦)
8887adantl 482 . . . . . . . . . . . . . . . . . 18 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → 𝑧𝑦)
8951, 52, 88subne0d 10346 . . . . . . . . . . . . . . . . 17 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → (𝑧𝑦) ≠ 0)
9086, 53, 89divcan3d 10751 . . . . . . . . . . . . . . . 16 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → (((𝑧𝑦) · (-(𝐴 / 𝑦) / 𝑧)) / (𝑧𝑦)) = (-(𝐴 / 𝑦) / 𝑧))
9184, 90eqtrd 2660 . . . . . . . . . . . . . . 15 (((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) ∧ 𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦})) → ((((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑧) − ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑦)) / (𝑧𝑦)) = (-(𝐴 / 𝑦) / 𝑧))
9291mpteq2dva 4709 . . . . . . . . . . . . . 14 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → (𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦}) ↦ ((((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑧) − ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑦)) / (𝑧𝑦))) = (𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦}) ↦ (-(𝐴 / 𝑦) / 𝑧)))
93 difss 3720 . . . . . . . . . . . . . . 15 ((ℂ ∖ {0}) ∖ {𝑦}) ⊆ (ℂ ∖ {0})
94 resmpt 5412 . . . . . . . . . . . . . . 15 (((ℂ ∖ {0}) ∖ {𝑦}) ⊆ (ℂ ∖ {0}) → ((𝑧 ∈ (ℂ ∖ {0}) ↦ (-(𝐴 / 𝑦) / 𝑧)) ↾ ((ℂ ∖ {0}) ∖ {𝑦})) = (𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦}) ↦ (-(𝐴 / 𝑦) / 𝑧)))
9593, 94ax-mp 5 . . . . . . . . . . . . . 14 ((𝑧 ∈ (ℂ ∖ {0}) ↦ (-(𝐴 / 𝑦) / 𝑧)) ↾ ((ℂ ∖ {0}) ∖ {𝑦})) = (𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦}) ↦ (-(𝐴 / 𝑦) / 𝑧))
9692, 95syl6eqr 2678 . . . . . . . . . . . . 13 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → (𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦}) ↦ ((((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑧) − ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑦)) / (𝑧𝑦))) = ((𝑧 ∈ (ℂ ∖ {0}) ↦ (-(𝐴 / 𝑦) / 𝑧)) ↾ ((ℂ ∖ {0}) ∖ {𝑦})))
9796oveq1d 6620 . . . . . . . . . . . 12 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → ((𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦}) ↦ ((((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑧) − ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑦)) / (𝑧𝑦))) lim 𝑦) = (((𝑧 ∈ (ℂ ∖ {0}) ↦ (-(𝐴 / 𝑦) / 𝑧)) ↾ ((ℂ ∖ {0}) ∖ {𝑦})) lim 𝑦))
9848, 97eqtr4d 2663 . . . . . . . . . . 11 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → ((𝑧 ∈ (ℂ ∖ {0}) ↦ (-(𝐴 / 𝑦) / 𝑧)) lim 𝑦) = ((𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦}) ↦ ((((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑧) − ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑦)) / (𝑧𝑦))) lim 𝑦))
9945, 98eleqtrd 2706 . . . . . . . . . 10 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → -(𝐴 / (𝑦↑2)) ∈ ((𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦}) ↦ ((((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑧) − ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑦)) / (𝑧𝑦))) lim 𝑦))
10018restid 16010 . . . . . . . . . . . . 13 ((TopOpen‘ℂfld) ∈ Top → ((TopOpen‘ℂfld) ↾t ℂ) = (TopOpen‘ℂfld))
10114, 100ax-mp 5 . . . . . . . . . . . 12 ((TopOpen‘ℂfld) ↾t ℂ) = (TopOpen‘ℂfld)
102101eqcomi 2635 . . . . . . . . . . 11 (TopOpen‘ℂfld) = ((TopOpen‘ℂfld) ↾t ℂ)
103 eqid 2626 . . . . . . . . . . 11 (𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦}) ↦ ((((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑧) − ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑦)) / (𝑧𝑦))) = (𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦}) ↦ ((((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑧) − ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑦)) / (𝑧𝑦)))
1042a1i 11 . . . . . . . . . . 11 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → ℂ ⊆ ℂ)
1059adantr 481 . . . . . . . . . . 11 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥)):(ℂ ∖ {0})⟶ℂ)
106 difssd 3721 . . . . . . . . . . 11 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → (ℂ ∖ {0}) ⊆ ℂ)
107102, 13, 103, 104, 105, 106eldv 23563 . . . . . . . . . 10 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → (𝑦(ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥)))-(𝐴 / (𝑦↑2)) ↔ (𝑦 ∈ ((int‘(TopOpen‘ℂfld))‘(ℂ ∖ {0})) ∧ -(𝐴 / (𝑦↑2)) ∈ ((𝑧 ∈ ((ℂ ∖ {0}) ∖ {𝑦}) ↦ ((((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑧) − ((𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))‘𝑦)) / (𝑧𝑦))) lim 𝑦))))
10825, 99, 107mpbir2and 956 . . . . . . . . 9 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → 𝑦(ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥)))-(𝐴 / (𝑦↑2)))
109 vex 3194 . . . . . . . . . 10 𝑦 ∈ V
110 negex 10224 . . . . . . . . . 10 -(𝐴 / (𝑦↑2)) ∈ V
111109, 110breldm 5294 . . . . . . . . 9 (𝑦(ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥)))-(𝐴 / (𝑦↑2)) → 𝑦 ∈ dom (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))))
112108, 111syl 17 . . . . . . . 8 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → 𝑦 ∈ dom (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))))
113112ex 450 . . . . . . 7 (𝐴 ∈ ℂ → (𝑦 ∈ (ℂ ∖ {0}) → 𝑦 ∈ dom (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥)))))
114113ssrdv 3594 . . . . . 6 (𝐴 ∈ ℂ → (ℂ ∖ {0}) ⊆ dom (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))))
11511, 114eqssd 3605 . . . . 5 (𝐴 ∈ ℂ → dom (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))) = (ℂ ∖ {0}))
116115feq2d 5990 . . . 4 (𝐴 ∈ ℂ → ((ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))):dom (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥)))⟶ℂ ↔ (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))):(ℂ ∖ {0})⟶ℂ))
1171, 116mpbii 223 . . 3 (𝐴 ∈ ℂ → (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))):(ℂ ∖ {0})⟶ℂ)
118 ffn 6004 . . 3 ((ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))):(ℂ ∖ {0})⟶ℂ → (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))) Fn (ℂ ∖ {0}))
119117, 118syl 17 . 2 (𝐴 ∈ ℂ → (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))) Fn (ℂ ∖ {0}))
120 negex 10224 . . . 4 -(𝐴 / (𝑥↑2)) ∈ V
121120rgenw 2924 . . 3 𝑥 ∈ (ℂ ∖ {0})-(𝐴 / (𝑥↑2)) ∈ V
122 eqid 2626 . . . 4 (𝑥 ∈ (ℂ ∖ {0}) ↦ -(𝐴 / (𝑥↑2))) = (𝑥 ∈ (ℂ ∖ {0}) ↦ -(𝐴 / (𝑥↑2)))
123122fnmpt 5979 . . 3 (∀𝑥 ∈ (ℂ ∖ {0})-(𝐴 / (𝑥↑2)) ∈ V → (𝑥 ∈ (ℂ ∖ {0}) ↦ -(𝐴 / (𝑥↑2))) Fn (ℂ ∖ {0}))
124121, 123mp1i 13 . 2 (𝐴 ∈ ℂ → (𝑥 ∈ (ℂ ∖ {0}) ↦ -(𝐴 / (𝑥↑2))) Fn (ℂ ∖ {0}))
125 ffun 6007 . . . . 5 ((ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))):dom (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥)))⟶ℂ → Fun (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))))
1261, 125mp1i 13 . . . 4 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → Fun (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))))
127 funbrfv 6192 . . . 4 (Fun (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))) → (𝑦(ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥)))-(𝐴 / (𝑦↑2)) → ((ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥)))‘𝑦) = -(𝐴 / (𝑦↑2))))
128126, 108, 127sylc 65 . . 3 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → ((ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥)))‘𝑦) = -(𝐴 / (𝑦↑2)))
129 oveq1 6612 . . . . . . 7 (𝑥 = 𝑦 → (𝑥↑2) = (𝑦↑2))
130129oveq2d 6621 . . . . . 6 (𝑥 = 𝑦 → (𝐴 / (𝑥↑2)) = (𝐴 / (𝑦↑2)))
131130negeqd 10220 . . . . 5 (𝑥 = 𝑦 → -(𝐴 / (𝑥↑2)) = -(𝐴 / (𝑦↑2)))
132131, 122, 110fvmpt 6240 . . . 4 (𝑦 ∈ (ℂ ∖ {0}) → ((𝑥 ∈ (ℂ ∖ {0}) ↦ -(𝐴 / (𝑥↑2)))‘𝑦) = -(𝐴 / (𝑦↑2)))
133132adantl 482 . . 3 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → ((𝑥 ∈ (ℂ ∖ {0}) ↦ -(𝐴 / (𝑥↑2)))‘𝑦) = -(𝐴 / (𝑦↑2)))
134128, 133eqtr4d 2663 . 2 ((𝐴 ∈ ℂ ∧ 𝑦 ∈ (ℂ ∖ {0})) → ((ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥)))‘𝑦) = ((𝑥 ∈ (ℂ ∖ {0}) ↦ -(𝐴 / (𝑥↑2)))‘𝑦))
135119, 124, 134eqfnfvd 6271 1 (𝐴 ∈ ℂ → (ℂ D (𝑥 ∈ (ℂ ∖ {0}) ↦ (𝐴 / 𝑥))) = (𝑥 ∈ (ℂ ∖ {0}) ↦ -(𝐴 / (𝑥↑2))))
Colors of variables: wff setvar class
Syntax hints:  wi 4  wa 384   = wceq 1480  wcel 1992  wne 2796  wral 2912  Vcvv 3191  cdif 3557  wss 3560  {csn 4153   class class class wbr 4618  cmpt 4678  dom cdm 5079  cres 5081  Fun wfun 5844   Fn wfn 5845  wf 5846  cfv 5850  (class class class)co 6605  cc 9879  0cc0 9881   · cmul 9886  cmin 10211  -cneg 10212   / cdiv 10629  2c2 11015  cexp 12797  t crest 15997  TopOpenctopn 15998  fldccnfld 19660  Topctop 20612  Clsdccld 20725  intcnt 20726  Hauscha 21017  cnccncf 22582   lim climc 23527   D cdv 23528
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1719  ax-4 1734  ax-5 1841  ax-6 1890  ax-7 1937  ax-8 1994  ax-9 2001  ax-10 2021  ax-11 2036  ax-12 2049  ax-13 2250  ax-ext 2606  ax-rep 4736  ax-sep 4746  ax-nul 4754  ax-pow 4808  ax-pr 4872  ax-un 6903  ax-inf2 8483  ax-cnex 9937  ax-resscn 9938  ax-1cn 9939  ax-icn 9940  ax-addcl 9941  ax-addrcl 9942  ax-mulcl 9943  ax-mulrcl 9944  ax-mulcom 9945  ax-addass 9946  ax-mulass 9947  ax-distr 9948  ax-i2m1 9949  ax-1ne0 9950  ax-1rid 9951  ax-rnegex 9952  ax-rrecex 9953  ax-cnre 9954  ax-pre-lttri 9955  ax-pre-lttrn 9956  ax-pre-ltadd 9957  ax-pre-mulgt0 9958  ax-pre-sup 9959  ax-mulf 9961
This theorem depends on definitions:  df-bi 197  df-or 385  df-an 386  df-3or 1037  df-3an 1038  df-tru 1483  df-ex 1702  df-nf 1707  df-sb 1883  df-eu 2478  df-mo 2479  df-clab 2613  df-cleq 2619  df-clel 2622  df-nfc 2756  df-ne 2797  df-nel 2900  df-ral 2917  df-rex 2918  df-reu 2919  df-rmo 2920  df-rab 2921  df-v 3193  df-sbc 3423  df-csb 3520  df-dif 3563  df-un 3565  df-in 3567  df-ss 3574  df-pss 3576  df-nul 3897  df-if 4064  df-pw 4137  df-sn 4154  df-pr 4156  df-tp 4158  df-op 4160  df-uni 4408  df-int 4446  df-iun 4492  df-iin 4493  df-br 4619  df-opab 4679  df-mpt 4680  df-tr 4718  df-eprel 4990  df-id 4994  df-po 5000  df-so 5001  df-fr 5038  df-se 5039  df-we 5040  df-xp 5085  df-rel 5086  df-cnv 5087  df-co 5088  df-dm 5089  df-rn 5090  df-res 5091  df-ima 5092  df-pred 5642  df-ord 5688  df-on 5689  df-lim 5690  df-suc 5691  df-iota 5813  df-fun 5852  df-fn 5853  df-f 5854  df-f1 5855  df-fo 5856  df-f1o 5857  df-fv 5858  df-isom 5859  df-riota 6566  df-ov 6608  df-oprab 6609  df-mpt2 6610  df-of 6851  df-om 7014  df-1st 7116  df-2nd 7117  df-supp 7242  df-wrecs 7353  df-recs 7414  df-rdg 7452  df-1o 7506  df-2o 7507  df-oadd 7510  df-er 7688  df-map 7805  df-pm 7806  df-ixp 7854  df-en 7901  df-dom 7902  df-sdom 7903  df-fin 7904  df-fsupp 8221  df-fi 8262  df-sup 8293  df-inf 8294  df-oi 8360  df-card 8710  df-cda 8935  df-pnf 10021  df-mnf 10022  df-xr 10023  df-ltxr 10024  df-le 10025  df-sub 10213  df-neg 10214  df-div 10630  df-nn 10966  df-2 11024  df-3 11025  df-4 11026  df-5 11027  df-6 11028  df-7 11029  df-8 11030  df-9 11031  df-n0 11238  df-z 11323  df-dec 11438  df-uz 11632  df-q 11733  df-rp 11777  df-xneg 11890  df-xadd 11891  df-xmul 11892  df-icc 12121  df-fz 12266  df-fzo 12404  df-seq 12739  df-exp 12798  df-hash 13055  df-cj 13768  df-re 13769  df-im 13770  df-sqrt 13904  df-abs 13905  df-struct 15778  df-ndx 15779  df-slot 15780  df-base 15781  df-sets 15782  df-ress 15783  df-plusg 15870  df-mulr 15871  df-starv 15872  df-sca 15873  df-vsca 15874  df-ip 15875  df-tset 15876  df-ple 15877  df-ds 15880  df-unif 15881  df-hom 15882  df-cco 15883  df-rest 15999  df-topn 16000  df-0g 16018  df-gsum 16019  df-topgen 16020  df-pt 16021  df-prds 16024  df-xrs 16078  df-qtop 16083  df-imas 16084  df-xps 16086  df-mre 16162  df-mrc 16163  df-acs 16165  df-mgm 17158  df-sgrp 17200  df-mnd 17211  df-submnd 17252  df-mulg 17457  df-cntz 17666  df-cmn 18111  df-psmet 19652  df-xmet 19653  df-met 19654  df-bl 19655  df-mopn 19656  df-fbas 19657  df-fg 19658  df-cnfld 19661  df-top 20616  df-bases 20617  df-topon 20618  df-topsp 20619  df-cld 20728  df-ntr 20729  df-cls 20730  df-nei 20807  df-lp 20845  df-perf 20846  df-cn 20936  df-cnp 20937  df-t1 21023  df-haus 21024  df-tx 21270  df-hmeo 21463  df-fil 21555  df-fm 21647  df-flim 21648  df-flf 21649  df-xms 22030  df-ms 22031  df-tms 22032  df-cncf 22584  df-limc 23531  df-dv 23532
This theorem is referenced by:  dvexp3  23640  dvtan  33078  dvrecg  39418
  Copyright terms: Public domain W3C validator