Users' Mathboxes Mathbox for Thierry Arnoux < Previous   Next >
Nearby theorems
Mirrors  >  Home  >  MPE Home  >  Th. List  >   Mathboxes  >  metider Structured version   Visualization version   GIF version

Theorem metider 34406
Description: The metric identification is an equivalence relation. (Contributed by Thierry Arnoux, 11-Feb-2018.)
Assertion
Ref Expression
metider (𝐷 ∈ (PsMet‘𝑋) → (~Met𝐷) Er 𝑋)

Proof of Theorem metider
Dummy variables 𝑥 𝑦 𝑧 are mutually distinct and distinct from all other variables.
StepHypRef Expression
1 metidss 34403 . . . 4 (𝐷 ∈ (PsMet‘𝑋) → (~Met𝐷) ⊆ (𝑋 × 𝑋))
2 xpss 5675 . . . 4 (𝑋 × 𝑋) ⊆ (V × V)
31, 2sstrdi 3946 . . 3 (𝐷 ∈ (PsMet‘𝑋) → (~Met𝐷) ⊆ (V × V))
4 df-rel 5666 . . 3 (Rel (~Met𝐷) ↔ (~Met𝐷) ⊆ (V × V))
53, 4sylibr 237 . 2 (𝐷 ∈ (PsMet‘𝑋) → Rel (~Met𝐷))
61ssbrd 5152 . . . . 5 (𝐷 ∈ (PsMet‘𝑋) → (𝑥(~Met𝐷)𝑦𝑥(𝑋 × 𝑋)𝑦))
76imp 412 . . . 4 ((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑥(~Met𝐷)𝑦) → 𝑥(𝑋 × 𝑋)𝑦)
8 brxp 5708 . . . 4 (𝑥(𝑋 × 𝑋)𝑦 ↔ (𝑥𝑋𝑦𝑋))
97, 8sylib 221 . . 3 ((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑥(~Met𝐷)𝑦) → (𝑥𝑋𝑦𝑋))
10 psmetsym 24540 . . . . . . . 8 ((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑥𝑋𝑦𝑋) → (𝑥𝐷𝑦) = (𝑦𝐷𝑥))
11103expb 1138 . . . . . . 7 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥𝑋𝑦𝑋)) → (𝑥𝐷𝑦) = (𝑦𝐷𝑥))
1211eqeq1d 2764 . . . . . 6 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥𝑋𝑦𝑋)) → ((𝑥𝐷𝑦) = 0 ↔ (𝑦𝐷𝑥) = 0))
13 metidv 34404 . . . . . 6 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥𝑋𝑦𝑋)) → (𝑥(~Met𝐷)𝑦 ↔ (𝑥𝐷𝑦) = 0))
14 metidv 34404 . . . . . . 7 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑦𝑋𝑥𝑋)) → (𝑦(~Met𝐷)𝑥 ↔ (𝑦𝐷𝑥) = 0))
1514ancom2s 663 . . . . . 6 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥𝑋𝑦𝑋)) → (𝑦(~Met𝐷)𝑥 ↔ (𝑦𝐷𝑥) = 0))
1612, 13, 153bitr4d 314 . . . . 5 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥𝑋𝑦𝑋)) → (𝑥(~Met𝐷)𝑦𝑦(~Met𝐷)𝑥))
1716biimpd 232 . . . 4 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥𝑋𝑦𝑋)) → (𝑥(~Met𝐷)𝑦𝑦(~Met𝐷)𝑥))
1817impancom 457 . . 3 ((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑥(~Met𝐷)𝑦) → ((𝑥𝑋𝑦𝑋) → 𝑦(~Met𝐷)𝑥))
199, 18mpd 16 . 2 ((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑥(~Met𝐷)𝑦) → 𝑦(~Met𝐷)𝑥)
20 simpl 488 . . . . . 6 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥(~Met𝐷)𝑦𝑦(~Met𝐷)𝑧)) → 𝐷 ∈ (PsMet‘𝑋))
21 simprr 785 . . . . . . . 8 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥(~Met𝐷)𝑦𝑦(~Met𝐷)𝑧)) → 𝑦(~Met𝐷)𝑧)
221ssbrd 5152 . . . . . . . . . 10 (𝐷 ∈ (PsMet‘𝑋) → (𝑦(~Met𝐷)𝑧𝑦(𝑋 × 𝑋)𝑧))
2322imp 412 . . . . . . . . 9 ((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑦(~Met𝐷)𝑧) → 𝑦(𝑋 × 𝑋)𝑧)
24 brxp 5708 . . . . . . . . 9 (𝑦(𝑋 × 𝑋)𝑧 ↔ (𝑦𝑋𝑧𝑋))
2523, 24sylib 221 . . . . . . . 8 ((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑦(~Met𝐷)𝑧) → (𝑦𝑋𝑧𝑋))
2621, 25syldan 603 . . . . . . 7 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥(~Met𝐷)𝑦𝑦(~Met𝐷)𝑧)) → (𝑦𝑋𝑧𝑋))
2726simpld 500 . . . . . 6 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥(~Met𝐷)𝑦𝑦(~Met𝐷)𝑧)) → 𝑦𝑋)
28 simprl 783 . . . . . . . 8 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥(~Met𝐷)𝑦𝑦(~Met𝐷)𝑧)) → 𝑥(~Met𝐷)𝑦)
2928, 9syldan 603 . . . . . . 7 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥(~Met𝐷)𝑦𝑦(~Met𝐷)𝑧)) → (𝑥𝑋𝑦𝑋))
3029simpld 500 . . . . . 6 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥(~Met𝐷)𝑦𝑦(~Met𝐷)𝑧)) → 𝑥𝑋)
3126simprd 501 . . . . . 6 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥(~Met𝐷)𝑦𝑦(~Met𝐷)𝑧)) → 𝑧𝑋)
32 psmettri2 24539 . . . . . 6 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑦𝑋𝑥𝑋𝑧𝑋)) → (𝑥𝐷𝑧) ≤ ((𝑦𝐷𝑥) +𝑒 (𝑦𝐷𝑧)))
3320, 27, 30, 31, 32syl13anc 1399 . . . . 5 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥(~Met𝐷)𝑦𝑦(~Met𝐷)𝑧)) → (𝑥𝐷𝑧) ≤ ((𝑦𝐷𝑥) +𝑒 (𝑦𝐷𝑧)))
3429, 11syldan 603 . . . . . . . 8 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥(~Met𝐷)𝑦𝑦(~Met𝐷)𝑧)) → (𝑥𝐷𝑦) = (𝑦𝐷𝑥))
3529, 13syldan 603 . . . . . . . . 9 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥(~Met𝐷)𝑦𝑦(~Met𝐷)𝑧)) → (𝑥(~Met𝐷)𝑦 ↔ (𝑥𝐷𝑦) = 0))
3628, 35mpbid 235 . . . . . . . 8 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥(~Met𝐷)𝑦𝑦(~Met𝐷)𝑧)) → (𝑥𝐷𝑦) = 0)
3734, 36eqtr3d 2799 . . . . . . 7 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥(~Met𝐷)𝑦𝑦(~Met𝐷)𝑧)) → (𝑦𝐷𝑥) = 0)
38 metidv 34404 . . . . . . . . 9 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑦𝑋𝑧𝑋)) → (𝑦(~Met𝐷)𝑧 ↔ (𝑦𝐷𝑧) = 0))
3926, 38syldan 603 . . . . . . . 8 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥(~Met𝐷)𝑦𝑦(~Met𝐷)𝑧)) → (𝑦(~Met𝐷)𝑧 ↔ (𝑦𝐷𝑧) = 0))
4021, 39mpbid 235 . . . . . . 7 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥(~Met𝐷)𝑦𝑦(~Met𝐷)𝑧)) → (𝑦𝐷𝑧) = 0)
4137, 40oveq12d 7434 . . . . . 6 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥(~Met𝐷)𝑦𝑦(~Met𝐷)𝑧)) → ((𝑦𝐷𝑥) +𝑒 (𝑦𝐷𝑧)) = (0 +𝑒 0))
42 0xr 11283 . . . . . . 7 0 ∈ ℝ*
43 xaddrid 13295 . . . . . . 7 (0 ∈ ℝ* → (0 +𝑒 0) = 0)
4442, 43ax-mp 5 . . . . . 6 (0 +𝑒 0) = 0
4541, 44eqtrdi 2813 . . . . 5 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥(~Met𝐷)𝑦𝑦(~Met𝐷)𝑧)) → ((𝑦𝐷𝑥) +𝑒 (𝑦𝐷𝑧)) = 0)
4633, 45breqtrd 5135 . . . 4 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥(~Met𝐷)𝑦𝑦(~Met𝐷)𝑧)) → (𝑥𝐷𝑧) ≤ 0)
47 psmetge0 24542 . . . . 5 ((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑥𝑋𝑧𝑋) → 0 ≤ (𝑥𝐷𝑧))
4820, 30, 31, 47syl3anc 1398 . . . 4 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥(~Met𝐷)𝑦𝑦(~Met𝐷)𝑧)) → 0 ≤ (𝑥𝐷𝑧))
49 psmetcl 24537 . . . . . 6 ((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑥𝑋𝑧𝑋) → (𝑥𝐷𝑧) ∈ ℝ*)
5020, 30, 31, 49syl3anc 1398 . . . . 5 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥(~Met𝐷)𝑦𝑦(~Met𝐷)𝑧)) → (𝑥𝐷𝑧) ∈ ℝ*)
51 xrletri3 13207 . . . . 5 (((𝑥𝐷𝑧) ∈ ℝ* ∧ 0 ∈ ℝ*) → ((𝑥𝐷𝑧) = 0 ↔ ((𝑥𝐷𝑧) ≤ 0 ∧ 0 ≤ (𝑥𝐷𝑧))))
5250, 42, 51sylancl 598 . . . 4 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥(~Met𝐷)𝑦𝑦(~Met𝐷)𝑧)) → ((𝑥𝐷𝑧) = 0 ↔ ((𝑥𝐷𝑧) ≤ 0 ∧ 0 ≤ (𝑥𝐷𝑧))))
5346, 48, 52mpbir2and 726 . . 3 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥(~Met𝐷)𝑦𝑦(~Met𝐷)𝑧)) → (𝑥𝐷𝑧) = 0)
54 metidv 34404 . . . 4 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥𝑋𝑧𝑋)) → (𝑥(~Met𝐷)𝑧 ↔ (𝑥𝐷𝑧) = 0))
5520, 30, 31, 54syl12anc 850 . . 3 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥(~Met𝐷)𝑦𝑦(~Met𝐷)𝑧)) → (𝑥(~Met𝐷)𝑧 ↔ (𝑥𝐷𝑧) = 0))
5653, 55mpbird 260 . 2 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥(~Met𝐷)𝑦𝑦(~Met𝐷)𝑧)) → 𝑥(~Met𝐷)𝑧)
57 psmet0 24538 . . . 4 ((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑥𝑋) → (𝑥𝐷𝑥) = 0)
58 metidv 34404 . . . . 5 ((𝐷 ∈ (PsMet‘𝑋) ∧ (𝑥𝑋𝑥𝑋)) → (𝑥(~Met𝐷)𝑥 ↔ (𝑥𝐷𝑥) = 0))
5958anabsan2 687 . . . 4 ((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑥𝑋) → (𝑥(~Met𝐷)𝑥 ↔ (𝑥𝐷𝑥) = 0))
6057, 59mpbird 260 . . 3 ((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑥𝑋) → 𝑥(~Met𝐷)𝑥)
611ssbrd 5152 . . . . . 6 (𝐷 ∈ (PsMet‘𝑋) → (𝑥(~Met𝐷)𝑥𝑥(𝑋 × 𝑋)𝑥))
6261imp 412 . . . . 5 ((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑥(~Met𝐷)𝑥) → 𝑥(𝑋 × 𝑋)𝑥)
63 brxp 5708 . . . . 5 (𝑥(𝑋 × 𝑋)𝑥 ↔ (𝑥𝑋𝑥𝑋))
6462, 63sylib 221 . . . 4 ((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑥(~Met𝐷)𝑥) → (𝑥𝑋𝑥𝑋))
6564simpld 500 . . 3 ((𝐷 ∈ (PsMet‘𝑋) ∧ 𝑥(~Met𝐷)𝑥) → 𝑥𝑋)
6660, 65impbida 813 . 2 (𝐷 ∈ (PsMet‘𝑋) → (𝑥𝑋𝑥(~Met𝐷)𝑥))
675, 19, 56, 66iserd 8726 1 (𝐷 ∈ (PsMet‘𝑋) → (~Met𝐷) Er 𝑋)
Colors of variables:    wff setvar class
This proof depends on syntax axioms:  wi 4  wb 209  wa 401   = wceq 1570  wcel 2145  Vcvv 3453  wss 3902   class class class wbr 5107   × cxp 5657  Rel wrel 5664  cfv 6537  (class class class)co 7416   Er wer 8696  0cc0 11127  *cxr 11269  cle 11271   +𝑒 cxad 13163  PsMetcpsmet 21573  ~Metcmetid 34398
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-sep 5255  ax-nul 5267  ax-pow 5334  ax-pr 5402  ax-un 7739  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
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-op 4594  df-uni 4871  df-iun 4956  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-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-riota 7373  df-ov 7419  df-oprab 7420  df-mpo 7421  df-om 7866  df-1st 7989  df-2nd 7990  df-frecs 8283  df-wrecs 8314  df-recs 8363  df-rdg 8402  df-er 8699  df-map 8831  df-en 8956  df-dom 8957  df-sdom 8958  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-rp 13045  df-xneg 13165  df-xadd 13166  df-xmul 13167  df-psmet 21581  df-metid 34400
This theorem is used by:  pstmxmet  34409
  Copyright terms: Public domain W3C validator