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

Theorem joinfval 18417
Description: Value of join function for a poset. (Contributed by NM, 12-Sep-2011.) (Revised by NM, 9-Sep-2018.) TODO: prove joinfval2 18418 first to reduce net proof size (existence part)?
Hypotheses
Ref Expression
joinfval.u 𝑈 = (lub‘𝐾)
joinfval.j = (join‘𝐾)
Assertion
Ref Expression
joinfval (𝐾𝑉 = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧})
Distinct variable groups:   𝑥,𝑦,𝑧,𝐾   𝑧,𝑈
Allowed substitution hints:   𝑈(𝑥,𝑦)   (𝑥,𝑦,𝑧)   𝑉(𝑥,𝑦,𝑧)

Proof of Theorem joinfval
Dummy variable 𝑝 is distinct from all other variables.
StepHypRef Expression
1 elex 3478 . 2 (𝐾𝑉𝐾 ∈ V)
2 joinfval.j . . 3 = (join‘𝐾)
3 fvex 6884 . . . . . . 7 (Base‘𝐾) ∈ V
4 moeq 3673 . . . . . . . 8 ∃*𝑧 𝑧 = (𝑈‘{𝑥, 𝑦})
54a1i 11 . . . . . . 7 ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) → ∃*𝑧 𝑧 = (𝑈‘{𝑥, 𝑦}))
6 eqid 2765 . . . . . . 7 {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))} = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))}
73, 3, 5, 6oprabex 7961 . . . . . 6 {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))} ∈ V
87a1i 11 . . . . 5 (𝐾 ∈ V → {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))} ∈ V)
9 joinfval.u . . . . . . . . . . . 12 𝑈 = (lub‘𝐾)
109lubfun 18396 . . . . . . . . . . 11 Fun 𝑈
11 funbrfv2b 6928 . . . . . . . . . . 11 (Fun 𝑈 → ({𝑥, 𝑦}𝑈𝑧 ↔ ({𝑥, 𝑦} ∈ dom 𝑈 ∧ (𝑈‘{𝑥, 𝑦}) = 𝑧)))
1210, 11ax-mp 5 . . . . . . . . . 10 ({𝑥, 𝑦}𝑈𝑧 ↔ ({𝑥, 𝑦} ∈ dom 𝑈 ∧ (𝑈‘{𝑥, 𝑦}) = 𝑧))
13 eqid 2765 . . . . . . . . . . . . . 14 (Base‘𝐾) = (Base‘𝐾)
14 eqid 2765 . . . . . . . . . . . . . 14 (le‘𝐾) = (le‘𝐾)
15 simpl 487 . . . . . . . . . . . . . 14 ((𝐾 ∈ V ∧ {𝑥, 𝑦} ∈ dom 𝑈) → 𝐾 ∈ V)
16 simpr 489 . . . . . . . . . . . . . 14 ((𝐾 ∈ V ∧ {𝑥, 𝑦} ∈ dom 𝑈) → {𝑥, 𝑦} ∈ dom 𝑈)
1713, 14, 9, 15, 16lubelss 18398 . . . . . . . . . . . . 13 ((𝐾 ∈ V ∧ {𝑥, 𝑦} ∈ dom 𝑈) → {𝑥, 𝑦} ⊆ (Base‘𝐾))
1817ex 417 . . . . . . . . . . . 12 (𝐾 ∈ V → ({𝑥, 𝑦} ∈ dom 𝑈 → {𝑥, 𝑦} ⊆ (Base‘𝐾)))
19 vex 3461 . . . . . . . . . . . . 13 𝑥 ∈ V
20 vex 3461 . . . . . . . . . . . . 13 𝑦 ∈ V
2119, 20prss 4781 . . . . . . . . . . . 12 ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ↔ {𝑥, 𝑦} ⊆ (Base‘𝐾))
2218, 21imbitrrdi 255 . . . . . . . . . . 11 (𝐾 ∈ V → ({𝑥, 𝑦} ∈ dom 𝑈 → (𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾))))
23 eqcom 2772 . . . . . . . . . . . 12 ((𝑈‘{𝑥, 𝑦}) = 𝑧𝑧 = (𝑈‘{𝑥, 𝑦}))
2423biimpi 219 . . . . . . . . . . 11 ((𝑈‘{𝑥, 𝑦}) = 𝑧𝑧 = (𝑈‘{𝑥, 𝑦}))
2522, 24anim12d1 621 . . . . . . . . . 10 (𝐾 ∈ V → (({𝑥, 𝑦} ∈ dom 𝑈 ∧ (𝑈‘{𝑥, 𝑦}) = 𝑧) → ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))))
2612, 25biimtrid 245 . . . . . . . . 9 (𝐾 ∈ V → ({𝑥, 𝑦}𝑈𝑧 → ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))))
2726alrimiv 1950 . . . . . . . 8 (𝐾 ∈ V → ∀𝑧({𝑥, 𝑦}𝑈𝑧 → ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))))
2827alrimiv 1950 . . . . . . 7 (𝐾 ∈ V → ∀𝑦𝑧({𝑥, 𝑦}𝑈𝑧 → ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))))
2928alrimiv 1950 . . . . . 6 (𝐾 ∈ V → ∀𝑥𝑦𝑧({𝑥, 𝑦}𝑈𝑧 → ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))))
30 ssoprab2 7468 . . . . . 6 (∀𝑥𝑦𝑧({𝑥, 𝑦}𝑈𝑧 → ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))) → {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧} ⊆ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))})
3129, 30syl 18 . . . . 5 (𝐾 ∈ V → {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧} ⊆ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))})
328, 31ssexd 5285 . . . 4 (𝐾 ∈ V → {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧} ∈ V)
33 fveq2 6871 . . . . . . . 8 (𝑝 = 𝐾 → (lub‘𝑝) = (lub‘𝐾))
3433, 9eqtr4di 2818 . . . . . . 7 (𝑝 = 𝐾 → (lub‘𝑝) = 𝑈)
3534breqd 5116 . . . . . 6 (𝑝 = 𝐾 → ({𝑥, 𝑦} (lub‘𝑝)𝑧 ↔ {𝑥, 𝑦}𝑈𝑧))
3635oprabbidv 7466 . . . . 5 (𝑝 = 𝐾 → {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦} (lub‘𝑝)𝑧} = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧})
37 df-join 18392 . . . . 5 join = (𝑝 ∈ V ↦ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦} (lub‘𝑝)𝑧})
3836, 37fvmptg 6977 . . . 4 ((𝐾 ∈ V ∧ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧} ∈ V) → (join‘𝐾) = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧})
3932, 38mpdan 699 . . 3 (𝐾 ∈ V → (join‘𝐾) = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧})
402, 39eqtrid 2812 . 2 (𝐾 ∈ V → = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧})
411, 40syl 18 1 (𝐾𝑉 = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧})
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 209  wa 400  wal 1561   = wceq 1563  wcel 2145  ∃*wmo 2567  Vcvv 3457  wss 3907  {cpr 4587   class class class wbr 5105  dom cdm 5652  Fun wfun 6519  cfv 6525  {coprab 7401  Basecbs 17259  lecple 17307  lubclub 18355  joincjn 18357
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1818  ax-4 1832  ax-5 1933  ax-6 1990  ax-7 2031  ax-8 2147  ax-9 2155  ax-10 2178  ax-11 2194  ax-12 2215  ax-ext 2737  ax-rep 5232  ax-sep 5251  ax-nul 5261  ax-pow 5327  ax-pr 5395  ax-un 7722
This theorem depends on definitions:  df-bi 210  df-an 401  df-or 861  df-3an 1103  df-tru 1566  df-fal 1576  df-ex 1803  df-nf 1807  df-sb 2094  df-mo 2569  df-eu 2599  df-clab 2744  df-cleq 2757  df-clel 2840  df-nfc 2914  df-ne 2961  df-ral 3080  df-rex 3090  df-rmo 3370  df-reu 3371  df-rab 3418  df-v 3459  df-sbc 3748  df-csb 3856  df-dif 3910  df-un 3912  df-in 3914  df-ss 3924  df-nul 4289  df-if 4484  df-pw 4560  df-sn 4586  df-pr 4588  df-op 4592  df-uni 4869  df-iun 4954  df-br 5106  df-opab 5168  df-mpt 5187  df-id 5547  df-xp 5658  df-rel 5659  df-cnv 5660  df-co 5661  df-dm 5662  df-rn 5663  df-res 5664  df-ima 5665  df-iota 6481  df-fun 6527  df-fn 6528  df-f 6529  df-f1 6530  df-fo 6531  df-f1o 6532  df-fv 6533  df-riota 7357  df-oprab 7404  df-lub 18390  df-join 18392
This theorem is referenced by:  joinfval2  18418  join0  18449  odujoin  18452  odumeet  18454
  Copyright terms: Public domain W3C validator