let L be GAD_Lattice; for x, y being Element of L st ex c being Element of L st
( x [= c & y [= c ) holds
( ex_lub_of x,y & x "\/" y = lub (x,y) )
let x, y be Element of L; ( ex c being Element of L st
( x [= c & y [= c ) implies ( ex_lub_of x,y & x "\/" y = lub (x,y) ) )
given c being Element of L such that A0:
( x [= c & y [= c )
; ( ex_lub_of x,y & x "\/" y = lub (x,y) )
ex c being Element of L st
( x [= c & y [= c & ( for d being Element of L st x [= d & y [= d holds
c [= d ) )
hence A3:
ex_lub_of x,y
; x "\/" y = lub (x,y)
x "\/" y = y "\/" x
by A0, DefB2;
then B2:
( x [= x "\/" y & y [= x "\/" y )
by LemX3;
for c being Element of L st x [= c & y [= c holds
x "\/" y [= c
hence
x "\/" y = lub (x,y)
by DefLUB, A3, B2; verum