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

Theorem joinfval 18431
Description: Value of join function for a poset. (Contributed by NM, 12-Sep-2011.) (Revised by NM, 9-Sep-2018.) TODO: prove joinfval2 18432 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 3499 . 2 (𝐾𝑉𝐾 ∈ V)
2 joinfval.j . . 3 = (join‘𝐾)
3 fvex 6920 . . . . . . 7 (Base‘𝐾) ∈ V
4 moeq 3716 . . . . . . . 8 ∃*𝑧 𝑧 = (𝑈‘{𝑥, 𝑦})
54a1i 11 . . . . . . 7 ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) → ∃*𝑧 𝑧 = (𝑈‘{𝑥, 𝑦}))
6 eqid 2735 . . . . . . 7 {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))} = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))}
73, 3, 5, 6oprabex 8000 . . . . . 6 {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))} ∈ V
87a1i 11 . . . . 5 (𝐾 ∈ V → {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))} ∈ V)
9 joinfval.u . . . . . . . . . . . 12 𝑈 = (lub‘𝐾)
109lubfun 18410 . . . . . . . . . . 11 Fun 𝑈
11 funbrfv2b 6966 . . . . . . . . . . 11 (Fun 𝑈 → ({𝑥, 𝑦}𝑈𝑧 ↔ ({𝑥, 𝑦} ∈ dom 𝑈 ∧ (𝑈‘{𝑥, 𝑦}) = 𝑧)))
1210, 11ax-mp 5 . . . . . . . . . 10 ({𝑥, 𝑦}𝑈𝑧 ↔ ({𝑥, 𝑦} ∈ dom 𝑈 ∧ (𝑈‘{𝑥, 𝑦}) = 𝑧))
13 eqid 2735 . . . . . . . . . . . . . 14 (Base‘𝐾) = (Base‘𝐾)
14 eqid 2735 . . . . . . . . . . . . . 14 (le‘𝐾) = (le‘𝐾)
15 simpl 482 . . . . . . . . . . . . . 14 ((𝐾 ∈ V ∧ {𝑥, 𝑦} ∈ dom 𝑈) → 𝐾 ∈ V)
16 simpr 484 . . . . . . . . . . . . . 14 ((𝐾 ∈ V ∧ {𝑥, 𝑦} ∈ dom 𝑈) → {𝑥, 𝑦} ∈ dom 𝑈)
1713, 14, 9, 15, 16lubelss 18412 . . . . . . . . . . . . 13 ((𝐾 ∈ V ∧ {𝑥, 𝑦} ∈ dom 𝑈) → {𝑥, 𝑦} ⊆ (Base‘𝐾))
1817ex 412 . . . . . . . . . . . 12 (𝐾 ∈ V → ({𝑥, 𝑦} ∈ dom 𝑈 → {𝑥, 𝑦} ⊆ (Base‘𝐾)))
19 vex 3482 . . . . . . . . . . . . 13 𝑥 ∈ V
20 vex 3482 . . . . . . . . . . . . 13 𝑦 ∈ V
2119, 20prss 4825 . . . . . . . . . . . 12 ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ↔ {𝑥, 𝑦} ⊆ (Base‘𝐾))
2218, 21imbitrrdi 252 . . . . . . . . . . 11 (𝐾 ∈ V → ({𝑥, 𝑦} ∈ dom 𝑈 → (𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾))))
23 eqcom 2742 . . . . . . . . . . . 12 ((𝑈‘{𝑥, 𝑦}) = 𝑧𝑧 = (𝑈‘{𝑥, 𝑦}))
2423biimpi 216 . . . . . . . . . . 11 ((𝑈‘{𝑥, 𝑦}) = 𝑧𝑧 = (𝑈‘{𝑥, 𝑦}))
2522, 24anim12d1 610 . . . . . . . . . 10 (𝐾 ∈ V → (({𝑥, 𝑦} ∈ dom 𝑈 ∧ (𝑈‘{𝑥, 𝑦}) = 𝑧) → ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))))
2612, 25biimtrid 242 . . . . . . . . 9 (𝐾 ∈ V → ({𝑥, 𝑦}𝑈𝑧 → ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))))
2726alrimiv 1925 . . . . . . . 8 (𝐾 ∈ V → ∀𝑧({𝑥, 𝑦}𝑈𝑧 → ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))))
2827alrimiv 1925 . . . . . . 7 (𝐾 ∈ V → ∀𝑦𝑧({𝑥, 𝑦}𝑈𝑧 → ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))))
2928alrimiv 1925 . . . . . 6 (𝐾 ∈ V → ∀𝑥𝑦𝑧({𝑥, 𝑦}𝑈𝑧 → ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))))
30 ssoprab2 7501 . . . . . 6 (∀𝑥𝑦𝑧({𝑥, 𝑦}𝑈𝑧 → ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))) → {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧} ⊆ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))})
3129, 30syl 17 . . . . 5 (𝐾 ∈ V → {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧} ⊆ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ ((𝑥 ∈ (Base‘𝐾) ∧ 𝑦 ∈ (Base‘𝐾)) ∧ 𝑧 = (𝑈‘{𝑥, 𝑦}))})
328, 31ssexd 5330 . . . 4 (𝐾 ∈ V → {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧} ∈ V)
33 fveq2 6907 . . . . . . . 8 (𝑝 = 𝐾 → (lub‘𝑝) = (lub‘𝐾))
3433, 9eqtr4di 2793 . . . . . . 7 (𝑝 = 𝐾 → (lub‘𝑝) = 𝑈)
3534breqd 5159 . . . . . 6 (𝑝 = 𝐾 → ({𝑥, 𝑦} (lub‘𝑝)𝑧 ↔ {𝑥, 𝑦}𝑈𝑧))
3635oprabbidv 7499 . . . . 5 (𝑝 = 𝐾 → {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦} (lub‘𝑝)𝑧} = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧})
37 df-join 18406 . . . . 5 join = (𝑝 ∈ V ↦ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦} (lub‘𝑝)𝑧})
3836, 37fvmptg 7014 . . . 4 ((𝐾 ∈ V ∧ {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧} ∈ V) → (join‘𝐾) = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧})
3932, 38mpdan 687 . . 3 (𝐾 ∈ V → (join‘𝐾) = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧})
402, 39eqtrid 2787 . 2 (𝐾 ∈ V → = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧})
411, 40syl 17 1 (𝐾𝑉 = {⟨⟨𝑥, 𝑦⟩, 𝑧⟩ ∣ {𝑥, 𝑦}𝑈𝑧})
Colors of variables: wff setvar class
Syntax hints:  wi 4  wb 206  wa 395  wal 1535   = wceq 1537  wcel 2106  ∃*wmo 2536  Vcvv 3478  wss 3963  {cpr 4633   class class class wbr 5148  dom cdm 5689  Fun wfun 6557  cfv 6563  {coprab 7432  Basecbs 17245  lecple 17305  lubclub 18367  joincjn 18369
This theorem was proved from axioms:  ax-mp 5  ax-1 6  ax-2 7  ax-3 8  ax-gen 1792  ax-4 1806  ax-5 1908  ax-6 1965  ax-7 2005  ax-8 2108  ax-9 2116  ax-10 2139  ax-11 2155  ax-12 2175  ax-ext 2706  ax-rep 5285  ax-sep 5302  ax-nul 5312  ax-pow 5371  ax-pr 5438  ax-un 7754
This theorem depends on definitions:  df-bi 207  df-an 396  df-or 848  df-3an 1088  df-tru 1540  df-fal 1550  df-ex 1777  df-nf 1781  df-sb 2063  df-mo 2538  df-eu 2567  df-clab 2713  df-cleq 2727  df-clel 2814  df-nfc 2890  df-ne 2939  df-ral 3060  df-rex 3069  df-rmo 3378  df-reu 3379  df-rab 3434  df-v 3480  df-sbc 3792  df-csb 3909  df-dif 3966  df-un 3968  df-in 3970  df-ss 3980  df-nul 4340  df-if 4532  df-pw 4607  df-sn 4632  df-pr 4634  df-op 4638  df-uni 4913  df-iun 4998  df-br 5149  df-opab 5211  df-mpt 5232  df-id 5583  df-xp 5695  df-rel 5696  df-cnv 5697  df-co 5698  df-dm 5699  df-rn 5700  df-res 5701  df-ima 5702  df-iota 6516  df-fun 6565  df-fn 6566  df-f 6567  df-f1 6568  df-fo 6569  df-f1o 6570  df-fv 6571  df-riota 7388  df-oprab 7435  df-lub 18404  df-join 18406
This theorem is referenced by:  joinfval2  18432  join0  18463  odujoin  18466  odumeet  18468
  Copyright terms: Public domain W3C validator