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

Theorem joinfval 17469
Description: Value of join function for a poset. (Contributed by NM, 12-Sep-2011.) (Revised by NM, 9-Sep-2018.) TODO: prove joinfval2 17470 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 3433 . 2 (𝐾𝑉𝐾 ∈ V)
2 joinfval.j . . 3 = (join‘𝐾)
3 fvex 6512 . . . . . . 7 (Base‘𝐾) ∈ V
4 moeq 3612 . . . . . . . 8 ∃*𝑧 𝑧 = (𝑈‘{𝑥, 𝑦})
54a1i 11 . . . . . . 7 ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) → ∃*𝑧 𝑧 = (𝑈‘{𝑥, 𝑦}))
6 eqid 2778 . . . . . . 7 {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))} = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))}
73, 3, 5, 6oprabex 7489 . . . . . 6 {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))} ∈ V
87a1i 11 . . . . 5 (𝐾 ∈ V → {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))} ∈ V)
9 joinfval.u . . . . . . . . . . . 12 𝑈 = (lub‘𝐾)
109lubfun 17448 . . . . . . . . . . 11 Fun 𝑈
11 funbrfv2b 6553 . . . . . . . . . . 11 (Fun 𝑈 → ({𝑥, 𝑦}𝑈𝑧 ↔ ({𝑥, 𝑦} ∈ dom 𝑈 ∧ (𝑈‘{𝑥, 𝑦}) = 𝑧)))
1210, 11ax-mp 5 . . . . . . . . . 10 ({𝑥, 𝑦}𝑈𝑧 ↔ ({𝑥, 𝑦} ∈ dom 𝑈 ∧ (𝑈‘{𝑥, 𝑦}) = 𝑧))
13 eqid 2778 . . . . . . . . . . . . . 14 (Base‘𝐾) = (Base‘𝐾)
14 eqid 2778 . . . . . . . . . . . . . 14 (le‘𝐾) = (le‘𝐾)
15 simpl 475 . . . . . . . . . . . . . 14 ((𝐾 ∈ V ∧ {𝑥, 𝑦} ∈ dom 𝑈) → 𝐾 ∈ V)
16 simpr 477 . . . . . . . . . . . . . 14 ((𝐾 ∈ V ∧ {𝑥, 𝑦} ∈ dom 𝑈) → {𝑥, 𝑦} ∈ dom 𝑈)
1713, 14, 9, 15, 16lubelss 17450 . . . . . . . . . . . . 13 ((𝐾 ∈ V ∧ {𝑥, 𝑦} ∈ dom 𝑈) → {𝑥, 𝑦} ⊆ (Base‘𝐾))
1817ex 405 . . . . . . . . . . . 12 (𝐾 ∈ V → ({𝑥, 𝑦} ∈ dom 𝑈 → {𝑥, 𝑦} ⊆ (Base‘𝐾)))
19 vex 3418 . . . . . . . . . . . . 13 𝑥 ∈ V
20 vex 3418 . . . . . . . . . . . . 13 𝑦 ∈ V
2119, 20prss 4627 . . . . . . . . . . . 12 ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ↔ {𝑥, 𝑦} ⊆ (Base‘𝐾))
2218, 21syl6ibr 244 . . . . . . . . . . 11 (𝐾 ∈ V → ({𝑥, 𝑦} ∈ dom 𝑈 → (𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾))))
23 eqcom 2785 . . . . . . . . . . . 12 ((𝑈‘{𝑥, 𝑦}) = 𝑧𝑧 = (𝑈‘{𝑥, 𝑦}))
2423biimpi 208 . . . . . . . . . . 11 ((𝑈‘{𝑥, 𝑦}) = 𝑧𝑧 = (𝑈‘{𝑥, 𝑦}))
2522, 24anim12d1 600 . . . . . . . . . 10 (𝐾 ∈ V → (({𝑥, 𝑦} ∈ dom 𝑈 ∧ (𝑈‘{𝑥, 𝑦}) = 𝑧) → ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))))
2612, 25syl5bi 234 . . . . . . . . 9 (𝐾 ∈ V → ({𝑥, 𝑦}𝑈𝑧 → ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))))
2726alrimiv 1886 . . . . . . . 8 (𝐾 ∈ V → ∀𝑧({𝑥, 𝑦}𝑈𝑧 → ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))))
2827alrimiv 1886 . . . . . . 7 (𝐾 ∈ V → ∀𝑦𝑧({𝑥, 𝑦}𝑈𝑧 → ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))))
2928alrimiv 1886 . . . . . 6 (𝐾 ∈ V → ∀𝑥𝑦𝑧({𝑥, 𝑦}𝑈𝑧 → ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))))
30 ssoprab2 7041 . . . . . 6 (∀𝑥𝑦𝑧({𝑥, 𝑦}𝑈𝑧 → ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))) → {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧} ⊆ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))})
3129, 30syl 17 . . . . 5 (𝐾 ∈ V → {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧} ⊆ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))})
328, 31ssexd 5084 . . . 4 (𝐾 ∈ V → {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧} ∈ V)
33 fveq2 6499 . . . . . . . 8 (𝑝 = 𝐾 → (lub‘𝑝) = (lub‘𝐾))
3433, 9syl6eqr 2832 . . . . . . 7 (𝑝 = 𝐾 → (lub‘𝑝) = 𝑈)
3534breqd 4940 . . . . . 6 (𝑝 = 𝐾 → ({𝑥, 𝑦} (lub‘𝑝)𝑧 ↔ {𝑥, 𝑦}𝑈𝑧))
3635oprabbidv 7039 . . . . 5 (𝑝 = 𝐾 → {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦} (lub‘𝑝)𝑧} = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧})
37 df-join 17444 . . . . 5 join = (𝑝 ∈ V ↦ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦} (lub‘𝑝)𝑧})
3836, 37fvmptg 6593 . . . 4 ((𝐾 ∈ V ∧ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧} ∈ V) → (join‘𝐾) = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧})
3932, 38mpdan 674 . . 3 (𝐾 ∈ V → (join‘𝐾) = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧})
402, 39syl5eq 2826 . 2 (𝐾 ∈ V → = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧})
411, 40syl 17 1 (𝐾𝑉 = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧})
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 198  wa 387  wal 1505   = wceq 1507  wcel 2050  ∃*wmo 2545  Vcvv 3415  wss 3829  {cpr 4443   class class class wbr 4929  dom cdm 5407  Fun wfun 6182  cfv 6188  {coprab 6977  Basecbs 16339  lecple 16428  lubclub 17410  joincjn 17412
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1758  ax-4 1772  ax-5 1869  ax-6 1928  ax-7 1965  ax-8 2052  ax-9 2059  ax-10 2079  ax-11 2093  ax-12 2106  ax-13 2301  ax-ext 2750  ax-rep 5049  ax-sep 5060  ax-nul 5067  ax-pow 5119  ax-pr 5186  ax-un 7279
This theorem depends on definitions:  df-bi 199  df-an 388  df-or 834  df-3an 1070  df-tru 1510  df-ex 1743  df-nf 1747  df-sb 2016  df-mo 2547  df-eu 2584  df-clab 2759  df-cleq 2771  df-clel 2846  df-nfc 2918  df-ne 2968  df-ral 3093  df-rex 3094  df-reu 3095  df-rab 3097  df-v 3417  df-sbc 3682  df-csb 3787  df-dif 3832  df-un 3834  df-in 3836  df-ss 3843  df-nul 4179  df-if 4351  df-pw 4424  df-sn 4442  df-pr 4444  df-op 4448  df-uni 4713  df-iun 4794  df-br 4930  df-opab 4992  df-mpt 5009  df-id 5312  df-xp 5413  df-rel 5414  df-cnv 5415  df-co 5416  df-dm 5417  df-rn 5418  df-res 5419  df-ima 5420  df-iota 6152  df-fun 6190  df-fn 6191  df-f 6192  df-f1 6193  df-fo 6194  df-f1o 6195  df-fv 6196  df-riota 6937  df-oprab 6980  df-lub 17442  df-join 17444
This theorem is referenced by:  joinfval2  17470  join0  17606  odumeet  17608  odujoin  17610
  Copyright terms: Public domain W3C validator