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

Theorem joinfval 18091
Description: Value of join function for a poset. (Contributed by NM, 12-Sep-2011.) (Revised by NM, 9-Sep-2018.) TODO: prove joinfval2 18092 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 3450 . 2 (𝐾𝑉𝐾 ∈ V)
2 joinfval.j . . 3 = (join‘𝐾)
3 fvex 6787 . . . . . . 7 (Base‘𝐾) ∈ V
4 moeq 3642 . . . . . . . 8 ∃*𝑧 𝑧 = (𝑈‘{𝑥, 𝑦})
54a1i 11 . . . . . . 7 ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) → ∃*𝑧 𝑧 = (𝑈‘{𝑥, 𝑦}))
6 eqid 2738 . . . . . . 7 {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))} = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))}
73, 3, 5, 6oprabex 7819 . . . . . 6 {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))} ∈ V
87a1i 11 . . . . 5 (𝐾 ∈ V → {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))} ∈ V)
9 joinfval.u . . . . . . . . . . . 12 𝑈 = (lub‘𝐾)
109lubfun 18070 . . . . . . . . . . 11 Fun 𝑈
11 funbrfv2b 6827 . . . . . . . . . . 11 (Fun 𝑈 → ({𝑥, 𝑦}𝑈𝑧 ↔ ({𝑥, 𝑦} ∈ dom 𝑈 ∧ (𝑈‘{𝑥, 𝑦}) = 𝑧)))
1210, 11ax-mp 5 . . . . . . . . . 10 ({𝑥, 𝑦}𝑈𝑧 ↔ ({𝑥, 𝑦} ∈ dom 𝑈 ∧ (𝑈‘{𝑥, 𝑦}) = 𝑧))
13 eqid 2738 . . . . . . . . . . . . . 14 (Base‘𝐾) = (Base‘𝐾)
14 eqid 2738 . . . . . . . . . . . . . 14 (le‘𝐾) = (le‘𝐾)
15 simpl 483 . . . . . . . . . . . . . 14 ((𝐾 ∈ V ∧ {𝑥, 𝑦} ∈ dom 𝑈) → 𝐾 ∈ V)
16 simpr 485 . . . . . . . . . . . . . 14 ((𝐾 ∈ V ∧ {𝑥, 𝑦} ∈ dom 𝑈) → {𝑥, 𝑦} ∈ dom 𝑈)
1713, 14, 9, 15, 16lubelss 18072 . . . . . . . . . . . . 13 ((𝐾 ∈ V ∧ {𝑥, 𝑦} ∈ dom 𝑈) → {𝑥, 𝑦} ⊆ (Base‘𝐾))
1817ex 413 . . . . . . . . . . . 12 (𝐾 ∈ V → ({𝑥, 𝑦} ∈ dom 𝑈 → {𝑥, 𝑦} ⊆ (Base‘𝐾)))
19 vex 3436 . . . . . . . . . . . . 13 𝑥 ∈ V
20 vex 3436 . . . . . . . . . . . . 13 𝑦 ∈ V
2119, 20prss 4753 . . . . . . . . . . . 12 ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ↔ {𝑥, 𝑦} ⊆ (Base‘𝐾))
2218, 21syl6ibr 251 . . . . . . . . . . 11 (𝐾 ∈ V → ({𝑥, 𝑦} ∈ dom 𝑈 → (𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾))))
23 eqcom 2745 . . . . . . . . . . . 12 ((𝑈‘{𝑥, 𝑦}) = 𝑧𝑧 = (𝑈‘{𝑥, 𝑦}))
2423biimpi 215 . . . . . . . . . . 11 ((𝑈‘{𝑥, 𝑦}) = 𝑧𝑧 = (𝑈‘{𝑥, 𝑦}))
2522, 24anim12d1 610 . . . . . . . . . 10 (𝐾 ∈ V → (({𝑥, 𝑦} ∈ dom 𝑈 ∧ (𝑈‘{𝑥, 𝑦}) = 𝑧) → ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))))
2612, 25syl5bi 241 . . . . . . . . 9 (𝐾 ∈ V → ({𝑥, 𝑦}𝑈𝑧 → ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))))
2726alrimiv 1930 . . . . . . . 8 (𝐾 ∈ V → ∀𝑧({𝑥, 𝑦}𝑈𝑧 → ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))))
2827alrimiv 1930 . . . . . . 7 (𝐾 ∈ V → ∀𝑦𝑧({𝑥, 𝑦}𝑈𝑧 → ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))))
2928alrimiv 1930 . . . . . 6 (𝐾 ∈ V → ∀𝑥𝑦𝑧({𝑥, 𝑦}𝑈𝑧 → ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))))
30 ssoprab2 7343 . . . . . 6 (∀𝑥𝑦𝑧({𝑥, 𝑦}𝑈𝑧 → ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))) → {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧} ⊆ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))})
3129, 30syl 17 . . . . 5 (𝐾 ∈ V → {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧} ⊆ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))})
328, 31ssexd 5248 . . . 4 (𝐾 ∈ V → {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧} ∈ V)
33 fveq2 6774 . . . . . . . 8 (𝑝 = 𝐾 → (lub‘𝑝) = (lub‘𝐾))
3433, 9eqtr4di 2796 . . . . . . 7 (𝑝 = 𝐾 → (lub‘𝑝) = 𝑈)
3534breqd 5085 . . . . . 6 (𝑝 = 𝐾 → ({𝑥, 𝑦} (lub‘𝑝)𝑧 ↔ {𝑥, 𝑦}𝑈𝑧))
3635oprabbidv 7341 . . . . 5 (𝑝 = 𝐾 → {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦} (lub‘𝑝)𝑧} = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧})
37 df-join 18066 . . . . 5 join = (𝑝 ∈ V ↦ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦} (lub‘𝑝)𝑧})
3836, 37fvmptg 6873 . . . 4 ((𝐾 ∈ V ∧ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧} ∈ V) → (join‘𝐾) = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧})
3932, 38mpdan 684 . . 3 (𝐾 ∈ V → (join‘𝐾) = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧})
402, 39eqtrid 2790 . 2 (𝐾 ∈ V → = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧})
411, 40syl 17 1 (𝐾𝑉 = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧})
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 205  wa 396  wal 1537   = wceq 1539  wcel 2106  ∃*wmo 2538  Vcvv 3432  wss 3887  {cpr 4563   class class class wbr 5074  dom cdm 5589  Fun wfun 6427  cfv 6433  {coprab 7276  Basecbs 16912  lecple 16969  lubclub 18027  joincjn 18029
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1798  ax-4 1812  ax-5 1913  ax-6 1971  ax-7 2011  ax-8 2108  ax-9 2116  ax-10 2137  ax-11 2154  ax-12 2171  ax-ext 2709  ax-rep 5209  ax-sep 5223  ax-nul 5230  ax-pow 5288  ax-pr 5352  ax-un 7588
This theorem depends on definitions:  df-bi 206  df-an 397  df-or 845  df-3an 1088  df-tru 1542  df-fal 1552  df-ex 1783  df-nf 1787  df-sb 2068  df-mo 2540  df-eu 2569  df-clab 2716  df-cleq 2730  df-clel 2816  df-nfc 2889  df-ne 2944  df-ral 3069  df-rex 3070  df-reu 3072  df-rab 3073  df-v 3434  df-sbc 3717  df-csb 3833  df-dif 3890  df-un 3892  df-in 3894  df-ss 3904  df-nul 4257  df-if 4460  df-pw 4535  df-sn 4562  df-pr 4564  df-op 4568  df-uni 4840  df-iun 4926  df-br 5075  df-opab 5137  df-mpt 5158  df-id 5489  df-xp 5595  df-rel 5596  df-cnv 5597  df-co 5598  df-dm 5599  df-rn 5600  df-res 5601  df-ima 5602  df-iota 6391  df-fun 6435  df-fn 6436  df-f 6437  df-f1 6438  df-fo 6439  df-f1o 6440  df-fv 6441  df-riota 7232  df-oprab 7279  df-lub 18064  df-join 18066
This theorem is referenced by:  joinfval2  18092  join0  18123  odujoin  18126  odumeet  18128
  Copyright terms: Public domain W3C validator