Metamath Proof Explorer


Theorem joinfval

Description: Value of join function for a poset. (Contributed by NM, 12-Sep-2011) (Revised by NM, 9-Sep-2018) TODO: prove joinfval2 first to reduce net proof size (existence part)?

Ref Expression
Hypotheses joinfval.u U=lubK
joinfval.j ˙=joinK
Assertion joinfval KV˙=xyz|xyUz

Proof

Step Hyp Ref Expression
1 joinfval.u U=lubK
2 joinfval.j ˙=joinK
3 elex KVKV
4 fvex BaseKV
5 moeq *zz=Uxy
6 5 a1i xBaseKyBaseK*zz=Uxy
7 eqid xyz|xBaseKyBaseKz=Uxy=xyz|xBaseKyBaseKz=Uxy
8 4 4 6 7 oprabex xyz|xBaseKyBaseKz=UxyV
9 8 a1i KVxyz|xBaseKyBaseKz=UxyV
10 1 lubfun FunU
11 funbrfv2b FunUxyUzxydomUUxy=z
12 10 11 ax-mp xyUzxydomUUxy=z
13 eqid BaseK=BaseK
14 eqid K=K
15 simpl KVxydomUKV
16 simpr KVxydomUxydomU
17 13 14 1 15 16 lubelss KVxydomUxyBaseK
18 17 ex KVxydomUxyBaseK
19 vex xV
20 vex yV
21 19 20 prss xBaseKyBaseKxyBaseK
22 18 21 syl6ibr KVxydomUxBaseKyBaseK
23 eqcom Uxy=zz=Uxy
24 23 biimpi Uxy=zz=Uxy
25 22 24 anim12d1 KVxydomUUxy=zxBaseKyBaseKz=Uxy
26 12 25 biimtrid KVxyUzxBaseKyBaseKz=Uxy
27 26 alrimiv KVzxyUzxBaseKyBaseKz=Uxy
28 27 alrimiv KVyzxyUzxBaseKyBaseKz=Uxy
29 28 alrimiv KVxyzxyUzxBaseKyBaseKz=Uxy
30 ssoprab2 xyzxyUzxBaseKyBaseKz=Uxyxyz|xyUzxyz|xBaseKyBaseKz=Uxy
31 29 30 syl KVxyz|xyUzxyz|xBaseKyBaseKz=Uxy
32 9 31 ssexd KVxyz|xyUzV
33 fveq2 p=Klubp=lubK
34 33 1 eqtr4di p=Klubp=U
35 34 breqd p=KxylubpzxyUz
36 35 oprabbidv p=Kxyz|xylubpz=xyz|xyUz
37 df-join join=pVxyz|xylubpz
38 36 37 fvmptg KVxyz|xyUzVjoinK=xyz|xyUz
39 32 38 mpdan KVjoinK=xyz|xyUz
40 2 39 eqtrid KV˙=xyz|xyUz
41 3 40 syl KV˙=xyz|xyUz