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

Theorem bldisj 22424
Description: Two balls are disjoint if the center-to-center distance is more than the sum of the radii. (Contributed by Mario Carneiro, 30-Dec-2013.)
Assertion
Ref Expression
bldisj (((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) → ((𝑃(ball‘𝐷)𝑅) ∩ (𝑄(ball‘𝐷)𝑆)) = ∅)

Proof of Theorem bldisj
Dummy variable 𝑥 is distinct from all other variables.
StepHypRef Expression
1 simpr3 1238 . . . 4 (((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) → (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))
2 simpr1 1234 . . . . . 6 (((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) → 𝑅 ∈ ℝ*)
3 simpr2 1236 . . . . . 6 (((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) → 𝑆 ∈ ℝ*)
42, 3xaddcld 12344 . . . . 5 (((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) → (𝑅 +𝑒 𝑆) ∈ ℝ*)
5 xmetcl 22357 . . . . . 6 ((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) → (𝑃𝐷𝑄) ∈ ℝ*)
65adantr 472 . . . . 5 (((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) → (𝑃𝐷𝑄) ∈ ℝ*)
7 xrlenlt 10315 . . . . 5 (((𝑅 +𝑒 𝑆) ∈ ℝ* ∧ (𝑃𝐷𝑄) ∈ ℝ*) → ((𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄) ↔ ¬ (𝑃𝐷𝑄) < (𝑅 +𝑒 𝑆)))
84, 6, 7syl2anc 696 . . . 4 (((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) → ((𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄) ↔ ¬ (𝑃𝐷𝑄) < (𝑅 +𝑒 𝑆)))
91, 8mpbid 222 . . 3 (((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) → ¬ (𝑃𝐷𝑄) < (𝑅 +𝑒 𝑆))
10 elin 3939 . . . 4 (𝑥 ∈ ((𝑃(ball‘𝐷)𝑅) ∩ (𝑄(ball‘𝐷)𝑆)) ↔ (𝑥 ∈ (𝑃(ball‘𝐷)𝑅) ∧ 𝑥 ∈ (𝑄(ball‘𝐷)𝑆)))
11 simpl1 1228 . . . . . . . 8 (((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) → 𝐷 ∈ (∞Met‘𝑋))
12 simpl2 1230 . . . . . . . 8 (((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) → 𝑃𝑋)
13 elbl 22414 . . . . . . . 8 ((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑅 ∈ ℝ*) → (𝑥 ∈ (𝑃(ball‘𝐷)𝑅) ↔ (𝑥𝑋 ∧ (𝑃𝐷𝑥) < 𝑅)))
1411, 12, 2, 13syl3anc 1477 . . . . . . 7 (((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) → (𝑥 ∈ (𝑃(ball‘𝐷)𝑅) ↔ (𝑥𝑋 ∧ (𝑃𝐷𝑥) < 𝑅)))
15 simpl3 1232 . . . . . . . 8 (((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) → 𝑄𝑋)
16 elbl 22414 . . . . . . . 8 ((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑄𝑋𝑆 ∈ ℝ*) → (𝑥 ∈ (𝑄(ball‘𝐷)𝑆) ↔ (𝑥𝑋 ∧ (𝑄𝐷𝑥) < 𝑆)))
1711, 15, 3, 16syl3anc 1477 . . . . . . 7 (((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) → (𝑥 ∈ (𝑄(ball‘𝐷)𝑆) ↔ (𝑥𝑋 ∧ (𝑄𝐷𝑥) < 𝑆)))
1814, 17anbi12d 749 . . . . . 6 (((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) → ((𝑥 ∈ (𝑃(ball‘𝐷)𝑅) ∧ 𝑥 ∈ (𝑄(ball‘𝐷)𝑆)) ↔ ((𝑥𝑋 ∧ (𝑃𝐷𝑥) < 𝑅) ∧ (𝑥𝑋 ∧ (𝑄𝐷𝑥) < 𝑆))))
19 anandi 906 . . . . . 6 ((𝑥𝑋 ∧ ((𝑃𝐷𝑥) < 𝑅 ∧ (𝑄𝐷𝑥) < 𝑆)) ↔ ((𝑥𝑋 ∧ (𝑃𝐷𝑥) < 𝑅) ∧ (𝑥𝑋 ∧ (𝑄𝐷𝑥) < 𝑆)))
2018, 19syl6bbr 278 . . . . 5 (((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) → ((𝑥 ∈ (𝑃(ball‘𝐷)𝑅) ∧ 𝑥 ∈ (𝑄(ball‘𝐷)𝑆)) ↔ (𝑥𝑋 ∧ ((𝑃𝐷𝑥) < 𝑅 ∧ (𝑄𝐷𝑥) < 𝑆))))
2111adantr 472 . . . . . . . . 9 ((((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) ∧ 𝑥𝑋) → 𝐷 ∈ (∞Met‘𝑋))
2212adantr 472 . . . . . . . . 9 ((((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) ∧ 𝑥𝑋) → 𝑃𝑋)
23 simpr 479 . . . . . . . . 9 ((((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) ∧ 𝑥𝑋) → 𝑥𝑋)
24 xmetcl 22357 . . . . . . . . 9 ((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑥𝑋) → (𝑃𝐷𝑥) ∈ ℝ*)
2521, 22, 23, 24syl3anc 1477 . . . . . . . 8 ((((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) ∧ 𝑥𝑋) → (𝑃𝐷𝑥) ∈ ℝ*)
2615adantr 472 . . . . . . . . 9 ((((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) ∧ 𝑥𝑋) → 𝑄𝑋)
27 xmetcl 22357 . . . . . . . . 9 ((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑄𝑋𝑥𝑋) → (𝑄𝐷𝑥) ∈ ℝ*)
2821, 26, 23, 27syl3anc 1477 . . . . . . . 8 ((((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) ∧ 𝑥𝑋) → (𝑄𝐷𝑥) ∈ ℝ*)
292adantr 472 . . . . . . . 8 ((((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) ∧ 𝑥𝑋) → 𝑅 ∈ ℝ*)
303adantr 472 . . . . . . . 8 ((((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) ∧ 𝑥𝑋) → 𝑆 ∈ ℝ*)
31 xlt2add 12303 . . . . . . . 8 ((((𝑃𝐷𝑥) ∈ ℝ* ∧ (𝑄𝐷𝑥) ∈ ℝ*) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ*)) → (((𝑃𝐷𝑥) < 𝑅 ∧ (𝑄𝐷𝑥) < 𝑆) → ((𝑃𝐷𝑥) +𝑒 (𝑄𝐷𝑥)) < (𝑅 +𝑒 𝑆)))
3225, 28, 29, 30, 31syl22anc 1478 . . . . . . 7 ((((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) ∧ 𝑥𝑋) → (((𝑃𝐷𝑥) < 𝑅 ∧ (𝑄𝐷𝑥) < 𝑆) → ((𝑃𝐷𝑥) +𝑒 (𝑄𝐷𝑥)) < (𝑅 +𝑒 𝑆)))
33 xmettri3 22379 . . . . . . . . 9 ((𝐷 ∈ (∞Met‘𝑋) ∧ (𝑃𝑋𝑄𝑋𝑥𝑋)) → (𝑃𝐷𝑄) ≤ ((𝑃𝐷𝑥) +𝑒 (𝑄𝐷𝑥)))
3421, 22, 26, 23, 33syl13anc 1479 . . . . . . . 8 ((((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) ∧ 𝑥𝑋) → (𝑃𝐷𝑄) ≤ ((𝑃𝐷𝑥) +𝑒 (𝑄𝐷𝑥)))
356adantr 472 . . . . . . . . 9 ((((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) ∧ 𝑥𝑋) → (𝑃𝐷𝑄) ∈ ℝ*)
3625, 28xaddcld 12344 . . . . . . . . 9 ((((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) ∧ 𝑥𝑋) → ((𝑃𝐷𝑥) +𝑒 (𝑄𝐷𝑥)) ∈ ℝ*)
374adantr 472 . . . . . . . . 9 ((((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) ∧ 𝑥𝑋) → (𝑅 +𝑒 𝑆) ∈ ℝ*)
38 xrlelttr 12200 . . . . . . . . 9 (((𝑃𝐷𝑄) ∈ ℝ* ∧ ((𝑃𝐷𝑥) +𝑒 (𝑄𝐷𝑥)) ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ∈ ℝ*) → (((𝑃𝐷𝑄) ≤ ((𝑃𝐷𝑥) +𝑒 (𝑄𝐷𝑥)) ∧ ((𝑃𝐷𝑥) +𝑒 (𝑄𝐷𝑥)) < (𝑅 +𝑒 𝑆)) → (𝑃𝐷𝑄) < (𝑅 +𝑒 𝑆)))
3935, 36, 37, 38syl3anc 1477 . . . . . . . 8 ((((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) ∧ 𝑥𝑋) → (((𝑃𝐷𝑄) ≤ ((𝑃𝐷𝑥) +𝑒 (𝑄𝐷𝑥)) ∧ ((𝑃𝐷𝑥) +𝑒 (𝑄𝐷𝑥)) < (𝑅 +𝑒 𝑆)) → (𝑃𝐷𝑄) < (𝑅 +𝑒 𝑆)))
4034, 39mpand 713 . . . . . . 7 ((((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) ∧ 𝑥𝑋) → (((𝑃𝐷𝑥) +𝑒 (𝑄𝐷𝑥)) < (𝑅 +𝑒 𝑆) → (𝑃𝐷𝑄) < (𝑅 +𝑒 𝑆)))
4132, 40syld 47 . . . . . 6 ((((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) ∧ 𝑥𝑋) → (((𝑃𝐷𝑥) < 𝑅 ∧ (𝑄𝐷𝑥) < 𝑆) → (𝑃𝐷𝑄) < (𝑅 +𝑒 𝑆)))
4241expimpd 630 . . . . 5 (((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) → ((𝑥𝑋 ∧ ((𝑃𝐷𝑥) < 𝑅 ∧ (𝑄𝐷𝑥) < 𝑆)) → (𝑃𝐷𝑄) < (𝑅 +𝑒 𝑆)))
4320, 42sylbid 230 . . . 4 (((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) → ((𝑥 ∈ (𝑃(ball‘𝐷)𝑅) ∧ 𝑥 ∈ (𝑄(ball‘𝐷)𝑆)) → (𝑃𝐷𝑄) < (𝑅 +𝑒 𝑆)))
4410, 43syl5bi 232 . . 3 (((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) → (𝑥 ∈ ((𝑃(ball‘𝐷)𝑅) ∩ (𝑄(ball‘𝐷)𝑆)) → (𝑃𝐷𝑄) < (𝑅 +𝑒 𝑆)))
459, 44mtod 189 . 2 (((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) → ¬ 𝑥 ∈ ((𝑃(ball‘𝐷)𝑅) ∩ (𝑄(ball‘𝐷)𝑆)))
4645eq0rdv 4122 1 (((𝐷 ∈ (∞Met‘𝑋) ∧ 𝑃𝑋𝑄𝑋) ∧ (𝑅 ∈ ℝ*𝑆 ∈ ℝ* ∧ (𝑅 +𝑒 𝑆) ≤ (𝑃𝐷𝑄))) → ((𝑃(ball‘𝐷)𝑅) ∩ (𝑄(ball‘𝐷)𝑆)) = ∅)
Colors of variables: wff setvar class
Syntax hints:  ¬ wn 3  wi 4  wb 196  wa 383  w3a 1072   = wceq 1632  wcel 2139  cin 3714  c0 4058   class class class wbr 4804  cfv 6049  (class class class)co 6814  *cxr 10285   < clt 10286  cle 10287   +𝑒 cxad 12157  ∞Metcxmt 19953  ballcbl 19955
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-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
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-nul 4059  df-if 4231  df-pw 4304  df-sn 4322  df-pr 4324  df-op 4328  df-uni 4589  df-iun 4674  df-br 4805  df-opab 4865  df-mpt 4882  df-id 5174  df-po 5187  df-so 5188  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-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-1st 7334  df-2nd 7335  df-er 7913  df-map 8027  df-en 8124  df-dom 8125  df-sdom 8126  df-pnf 10288  df-mnf 10289  df-xr 10290  df-ltxr 10291  df-le 10292  df-sub 10480  df-neg 10481  df-xneg 12159  df-xadd 12160  df-psmet 19960  df-xmet 19961  df-bl 19963
This theorem is referenced by:  bl2in  22426  blcld  22531  methaus  22546  metnrmlem3  22885  cntotbnd  33926  heiborlem6  33946
  Copyright terms: Public domain W3C validator