let L1, L2 be Lattice; for D1, E1 being non empty Subset of L1
for D2, E2 being non empty Subset of L2 st LattStr(# the carrier of L1, the L_join of L1, the L_meet of L1 #) = LattStr(# the carrier of L2, the L_join of L2, the L_meet of L2 #) & D1 = D2 & E1 = E2 holds
D1 "/\" E1 = D2 "/\" E2
let D1, E1 be non empty Subset of L1; for D2, E2 being non empty Subset of L2 st LattStr(# the carrier of L1, the L_join of L1, the L_meet of L1 #) = LattStr(# the carrier of L2, the L_join of L2, the L_meet of L2 #) & D1 = D2 & E1 = E2 holds
D1 "/\" E1 = D2 "/\" E2
let D2, E2 be non empty Subset of L2; ( LattStr(# the carrier of L1, the L_join of L1, the L_meet of L1 #) = LattStr(# the carrier of L2, the L_join of L2, the L_meet of L2 #) & D1 = D2 & E1 = E2 implies D1 "/\" E1 = D2 "/\" E2 )
assume that
A1:
LattStr(# the carrier of L1, the L_join of L1, the L_meet of L1 #) = LattStr(# the carrier of L2, the L_join of L2, the L_meet of L2 #)
and
A2:
( D1 = D2 & E1 = E2 )
; D1 "/\" E1 = D2 "/\" E2
thus
D1 "/\" E1 c= D2 "/\" E2
XBOOLE_0:def 10 D2 "/\" E2 c= D1 "/\" E1
let x be object ; TARSKI:def 3 ( not x in D2 "/\" E2 or x in D1 "/\" E1 )
assume
x in D2 "/\" E2
; x in D1 "/\" E1
then consider a, b being Element of L2 such that
A5:
x = a "/\" b
and
A6:
( a in D2 & b in E2 )
;
reconsider a9 = a, b9 = b as Element of L1 by A1;
x = a9 "/\" b9
by A1, A5;
hence
x in D1 "/\" E1
by A2, A6; verum