let L be complete LATTICE; :: thesis: ( ( for J, K being non empty set
for F being Function of [:J,K:],the carrier of L st ( for j being Element of J holds rng ((curry F) . j) is directed ) holds
Inf = Sup ) implies L is continuous )

assume A1: for J, K being non empty set
for F being Function of [:J,K:],the carrier of L st ( for j being Element of J holds rng ((curry F) . j) is directed ) holds
Inf = Sup ; :: thesis: L is continuous
for J being non empty set
for K being V9() ManySortedSet of
for F being DoubleIndexedSet of K,L st ( for j being Element of J holds rng (F . j) is directed ) holds
Inf = Sup
proof
let J be non empty set ; :: thesis: for K being V9() ManySortedSet of
for F being DoubleIndexedSet of K,L st ( for j being Element of J holds rng (F . j) is directed ) holds
Inf = Sup

let K be V9() ManySortedSet of ; :: thesis: for F being DoubleIndexedSet of K,L st ( for j being Element of J holds rng (F . j) is directed ) holds
Inf = Sup

let F be DoubleIndexedSet of K,L; :: thesis: ( ( for j being Element of J holds rng (F . j) is directed ) implies Inf = Sup )
assume A2: for j being Element of J holds rng (F . j) is directed ; :: thesis: Inf = Sup
consider j being Element of J;
consider k being Element of K . j;
j in J ;
then j in dom K by PARTFUN1:def 4;
then ( k in K . j & K . j in rng K ) by FUNCT_1:def 5;
then reconsider K' = union (rng K) as non empty set by TARSKI:def 4;
defpred S1[ set , set , set ] means ( $1 in J & ( ( $2 in K . $1 & $3 = (F . $1) . $2 ) or ( not $2 in K . $1 & $3 = Bottom L ) ) );
A3: for j being Element of J
for k' being Element of K' ex z being Element of L st S1[j,k',z]
proof
let j be Element of J; :: thesis: for k' being Element of K' ex z being Element of L st S1[j,k',z]
let k' be Element of K'; :: thesis: ex z being Element of L st S1[j,k',z]
per cases ( k' in K . j or not k' in K . j ) ;
suppose k' in K . j ; :: thesis: ex z being Element of L st S1[j,k',z]
then reconsider k = k' as Element of K . j ;
take (F . j) . k ; :: thesis: S1[j,k',(F . j) . k]
thus S1[j,k',(F . j) . k] ; :: thesis: verum
end;
suppose A4: not k' in K . j ; :: thesis: ex z being Element of L st S1[j,k',z]
take Bottom L ; :: thesis: S1[j,k', Bottom L]
thus S1[j,k', Bottom L] by A4; :: thesis: verum
end;
end;
end;
ex G being Function of [:J,K':],the carrier of L st
for j being Element of J
for k being Element of K' holds S1[j,k,G . j,k] from BINOP_1:sch 3(A3);
then consider G being Function of [:J,K':],the carrier of L such that
A5: for j being Element of J
for k being Element of K' holds S1[j,k,G . j,k] ;
A6: for j being Element of J holds K . j c= K'
proof
let j be Element of J; :: thesis: K . j c= K'
hereby :: according to TARSKI:def 3 :: thesis: verum
let k be set ; :: thesis: ( k in K . j implies k in K' )
assume A7: k in K . j ; :: thesis: k in K'
j in J ;
then j in dom K by PARTFUN1:def 4;
then K . j in rng K by FUNCT_1:def 5;
hence k in K' by A7, TARSKI:def 4; :: thesis: verum
end;
thus verum ; :: thesis: verum
end;
A8: for j being Element of J holds rng (F . j) c= rng ((curry G) . j)
proof
let j be Element of J; :: thesis: rng (F . j) c= rng ((curry G) . j)
hereby :: according to TARSKI:def 3 :: thesis: verum
let y be set ; :: thesis: ( y in rng (F . j) implies y in rng ((curry G) . j) )
assume y in rng (F . j) ; :: thesis: y in rng ((curry G) . j)
then consider k being set such that
A9: k in dom (F . j) and
A10: y = (F . j) . k by FUNCT_1:def 5;
( k in K . j & K . j c= K' ) by A6, A9;
then reconsider k = k as Element of K' ;
[j,k] in [:J,K':] ;
then A11: [j,k] in dom G by FUNCT_2:def 1;
( k in K' & dom ((curry G) . j) = (J --> K') . j ) by FUNCT_2:def 1;
then A12: k in dom ((curry G) . j) by FUNCOP_1:13;
y = G . j,k by A5, A9, A10
.= ((curry G) . j) . k by A11, FUNCT_5:27 ;
hence y in rng ((curry G) . j) by A12, FUNCT_1:def 5; :: thesis: verum
end;
thus verum ; :: thesis: verum
end;
A13: for j being Element of J holds rng ((curry G) . j) is directed
proof
let j be Element of J; :: thesis: rng ((curry G) . j) is directed
set X = rng ((curry G) . j);
for x, y being Element of L st x in rng ((curry G) . j) & y in rng ((curry G) . j) holds
ex z being Element of L st
( z in rng ((curry G) . j) & x <= z & y <= z )
proof
let x, y be Element of L; :: thesis: ( x in rng ((curry G) . j) & y in rng ((curry G) . j) implies ex z being Element of L st
( z in rng ((curry G) . j) & x <= z & y <= z ) )

A14: rng (F . j) is directed by A2;
assume A15: ( x in rng ((curry G) . j) & y in rng ((curry G) . j) ) ; :: thesis: ex z being Element of L st
( z in rng ((curry G) . j) & x <= z & y <= z )

then consider a being set such that
A16: a in dom ((curry G) . j) and
A17: ((curry G) . j) . a = x by FUNCT_1:def 5;
consider b being set such that
A18: b in dom ((curry G) . j) and
A19: ((curry G) . j) . b = y by A15, FUNCT_1:def 5;
reconsider a' = a, b' = b as Element of K' by A16, A18, Th20;
A20: ( x = G . j,a' & y = G . j,b' ) by A17, A19, Th20;
per cases ( ( a in K . j & b in K . j ) or ( a in K . j & not b in K . j ) or ( not a in K . j & b in K . j ) or ( not a in K . j & not b in K . j ) ) ;
suppose A21: ( a in K . j & b in K . j ) ; :: thesis: ex z being Element of L st
( z in rng ((curry G) . j) & x <= z & y <= z )

then A22: ( a in dom (F . j) & b in dom (F . j) ) by FUNCT_2:def 1;
( x = (F . j) . a' & y = (F . j) . b' ) by A5, A20, A21;
then ( x in rng (F . j) & y in rng (F . j) ) by A22, FUNCT_1:def 5;
then consider z being Element of L such that
A23: z in rng (F . j) and
A24: ( x <= z & y <= z ) by A14, WAYBEL_0:def 1;
take z ; :: thesis: ( z in rng ((curry G) . j) & x <= z & y <= z )
rng (F . j) c= rng ((curry G) . j) by A8;
hence ( z in rng ((curry G) . j) & x <= z & y <= z ) by A23, A24; :: thesis: verum
end;
suppose ( a in K . j & not b in K . j ) ; :: thesis: ex z being Element of L st
( z in rng ((curry G) . j) & x <= z & y <= z )

then A25: y = Bottom L by A5, A20;
take x ; :: thesis: ( x in rng ((curry G) . j) & x <= x & y <= x )
thus ( x in rng ((curry G) . j) & x <= x & y <= x ) by A15, A25, YELLOW_0:44; :: thesis: verum
end;
suppose ( not a in K . j & b in K . j ) ; :: thesis: ex z being Element of L st
( z in rng ((curry G) . j) & x <= z & y <= z )

then A26: x = Bottom L by A5, A20;
take y ; :: thesis: ( y in rng ((curry G) . j) & x <= y & y <= y )
thus ( y in rng ((curry G) . j) & x <= y & y <= y ) by A15, A26, YELLOW_0:44; :: thesis: verum
end;
suppose ( not a in K . j & not b in K . j ) ; :: thesis: ex z being Element of L st
( z in rng ((curry G) . j) & x <= z & y <= z )

then A27: ( x = Bottom L & y = Bottom L ) by A5, A20;
take x ; :: thesis: ( x in rng ((curry G) . j) & x <= x & y <= x )
thus ( x in rng ((curry G) . j) & x <= x & y <= x ) by A15, A27; :: thesis: verum
end;
end;
end;
hence rng ((curry G) . j) is directed by WAYBEL_0:def 1; :: thesis: verum
end;
A28: dom (doms F) = dom F by FUNCT_6:89;
A29: dom F = J by PARTFUN1:def 4;
A30: dom (doms (curry G)) = dom (curry G) by FUNCT_6:89;
A31: dom (curry G) = J by Th20;
product (doms F) c= product (doms (curry G))
proof
let x be set ; :: according to TARSKI:def 3 :: thesis: ( not x in product (doms F) or x in product (doms (curry G)) )
assume x in product (doms F) ; :: thesis: x in product (doms (curry G))
then consider g being Function such that
A32: x = g and
A33: dom g = dom (doms F) and
A34: for j being set st j in dom (doms F) holds
g . j in (doms F) . j by CARD_3:def 5;
A35: dom g = dom (doms (curry G)) by A28, A29, A30, A33, Th20;
for j being set st j in dom (doms (curry G)) holds
g . j in (doms (curry G)) . j
proof
let j be set ; :: thesis: ( j in dom (doms (curry G)) implies g . j in (doms (curry G)) . j )
assume A36: j in dom (doms (curry G)) ; :: thesis: g . j in (doms (curry G)) . j
then A37: j in J by A30, Th20;
reconsider j' = j as Element of J by A30, A36, Th20;
A38: g . j in (doms F) . j by A28, A29, A34, A37;
A39: (doms F) . j = dom (F . j') by A29, FUNCT_6:31
.= K . j' by FUNCT_2:def 1 ;
A40: K . j' c= K' by A6;
(doms (curry G)) . j = dom ((curry G) . j') by A31, FUNCT_6:31
.= K' by Th20 ;
hence g . j in (doms (curry G)) . j by A38, A39, A40; :: thesis: verum
end;
hence x in product (doms (curry G)) by A32, A35, CARD_3:def 5; :: thesis: verum
end;
then dom (Frege F) c= product (doms (curry G)) by PARTFUN1:def 4;
then A41: dom (Frege F) c= dom (Frege (curry G)) by PARTFUN1:def 4;
A42: for f being set st f in dom (Frege F) holds
//\ ((Frege F) . f),L = //\ ((Frege (curry G)) . f),L
proof
let f' be set ; :: thesis: ( f' in dom (Frege F) implies //\ ((Frege F) . f'),L = //\ ((Frege (curry G)) . f'),L )
assume A43: f' in dom (Frege F) ; :: thesis: //\ ((Frege F) . f'),L = //\ ((Frege (curry G)) . f'),L
then reconsider f = f' as Element of product (doms F) by PARTFUN1:def 4;
A44: dom ((Frege F) . f) = dom F by A43, Th8
.= J by PARTFUN1:def 4 ;
A45: dom ((Frege (curry G)) . f) = dom (curry G) by A41, A43, Th8
.= proj1 (dom G) by FUNCT_5:def 3
.= proj1 [:J,K':] by FUNCT_2:def 1
.= J by FUNCT_5:11 ;
for j being set st j in J holds
((Frege F) . f) . j = ((Frege (curry G)) . f) . j
proof
let j' be set ; :: thesis: ( j' in J implies ((Frege F) . f) . j' = ((Frege (curry G)) . f) . j' )
assume j' in J ; :: thesis: ((Frege F) . f) . j' = ((Frege (curry G)) . f) . j'
then reconsider j = j' as Element of J ;
A46: ( f . j in K . j & K . j c= K' ) by A6, A43, Lm6;
then reconsider fj = f . j as Element of K' ;
((Frege F) . f) . j = (F . j) . fj by A43, Lm5
.= G . j,fj by A5, A46
.= ((curry G) . j) . (f . j) by Th20
.= ((Frege (curry G)) . f) . j by A41, A43, Lm5 ;
hence ((Frege F) . f) . j' = ((Frege (curry G)) . f) . j' ; :: thesis: verum
end;
hence //\ ((Frege F) . f'),L = //\ ((Frege (curry G)) . f'),L by A44, A45, FUNCT_1:9; :: thesis: verum
end;
A47: Sup = Sup
proof
per cases ( for j being Element of J holds K . j = K' or ex j being Element of J st K . j <> K' ) ;
suppose A48: for j being Element of J holds K . j = K' ; :: thesis: Sup = Sup
for j being set st j in J holds
(doms F) . j = (doms (curry G)) . j
proof
let j be set ; :: thesis: ( j in J implies (doms F) . j = (doms (curry G)) . j )
assume j in J ; :: thesis: (doms F) . j = (doms (curry G)) . j
then reconsider j' = j as Element of J ;
A49: (doms F) . j = dom (F . j') by A29, FUNCT_6:31
.= K . j' by FUNCT_2:def 1 ;
(doms (curry G)) . j = dom ((curry G) . j') by A31, FUNCT_6:31
.= K' by Th20 ;
hence (doms F) . j = (doms (curry G)) . j by A48, A49; :: thesis: verum
end;
then doms F = doms (curry G) by A28, A29, A30, A31, FUNCT_1:9;
then dom (Frege F) = product (doms (curry G)) by PARTFUN1:def 4;
then dom (Frege F) = dom (Frege (curry G)) by PARTFUN1:def 4;
hence Sup = Sup by A42, Th12; :: thesis: verum
end;
suppose ex j being Element of J st K . j <> K' ; :: thesis: Sup = Sup
then consider j being Element of J such that
A50: K . j <> K' ;
K . j c= K' by A6;
then not K' c= K . j by A50, XBOOLE_0:def 10;
then consider k being set such that
A51: ( k in K' & not k in K . j ) by TARSKI:def 3;
reconsider k = k as Element of K' by A51;
A52: rng (Infs ) c= (rng (Infs )) \/ {(Bottom L)}
proof
let x be set ; :: according to TARSKI:def 3 :: thesis: ( not x in rng (Infs ) or x in (rng (Infs )) \/ {(Bottom L)} )
assume x in rng (Infs ) ; :: thesis: x in (rng (Infs )) \/ {(Bottom L)}
then consider f being set such that
A53: f in dom (Frege (curry G)) and
A54: x = //\ ((Frege (curry G)) . f),L by Th13;
reconsider f = f as Function by A53, Th7;
per cases ( for j being Element of J holds f . j in K . j or ex j being Element of J st not f . j in K . j ) ;
suppose A55: for j being Element of J holds f . j in K . j ; :: thesis: x in (rng (Infs )) \/ {(Bottom L)}
A56: dom f = dom (curry G) by A53, Th8
.= dom (doms F) by A28, A29, Th20 ;
for x being set st x in dom (doms F) holds
f . x in (doms F) . x
proof
let x be set ; :: thesis: ( x in dom (doms F) implies f . x in (doms F) . x )
assume x in dom (doms F) ; :: thesis: f . x in (doms F) . x
then reconsider j = x as Element of J by A29, FUNCT_6:89;
(doms F) . j = dom (F . j) by A29, FUNCT_6:31
.= K . j by FUNCT_2:def 1 ;
hence f . x in (doms F) . x by A55; :: thesis: verum
end;
then f in product (doms F) by A56, CARD_3:18;
then A57: f in dom (Frege F) by PARTFUN1:def 4;
then x = //\ ((Frege F) . f),L by A42, A54;
then x in rng (Infs ) by A57, Th13;
hence x in (rng (Infs )) \/ {(Bottom L)} by XBOOLE_0:def 3; :: thesis: verum
end;
suppose not for j being Element of J holds f . j in K . j ; :: thesis: x in (rng (Infs )) \/ {(Bottom L)}
then consider j being Element of J such that
A58: not f . j in K . j ;
j in J ;
then j in dom (curry G) by Th20;
then f . j in dom ((curry G) . j) by A53, Th9;
then reconsider k = f . j as Element of K' by Th20;
Bottom L = G . j,k by A5, A58
.= ((curry G) . j) . (f . j) by Th20 ;
then Bottom L in rng ((Frege (curry G)) . f) by A53, Lm5;
then Bottom L >= "/\" (rng ((Frege (curry G)) . f)),L by YELLOW_2:24;
then A59: Bottom L >= //\ ((Frege (curry G)) . f),L by YELLOW_2:def 6;
Bottom L <= //\ ((Frege (curry G)) . f),L by YELLOW_0:44;
then x = Bottom L by A54, A59, ORDERS_2:25;
then x in {(Bottom L)} by TARSKI:def 1;
hence x in (rng (Infs )) \/ {(Bottom L)} by XBOOLE_0:def 3; :: thesis: verum
end;
end;
end;
A60: (rng (Infs )) \/ {(Bottom L)} c= rng (Infs )
proof
let x be set ; :: according to TARSKI:def 3 :: thesis: ( not x in (rng (Infs )) \/ {(Bottom L)} or x in rng (Infs ) )
assume A61: x in (rng (Infs )) \/ {(Bottom L)} ; :: thesis: x in rng (Infs )
per cases ( x in rng (Infs ) or x in {(Bottom L)} ) by A61, XBOOLE_0:def 3;
suppose x in rng (Infs ) ; :: thesis: x in rng (Infs )
then consider f being set such that
A62: f in dom (Frege F) and
A63: x = //\ ((Frege F) . f),L by Th13;
x = //\ ((Frege (curry G)) . f),L by A42, A62, A63;
hence x in rng (Infs ) by A41, A62, Th13; :: thesis: verum
end;
suppose A64: x in {(Bottom L)} ; :: thesis: x in rng (Infs )
then A65: x = Bottom L by TARSKI:def 1;
reconsider x' = x as Element of L by A64;
set f = J --> k;
A66: dom (J --> k) = J by FUNCOP_1:19
.= dom (doms (curry G)) by A30, Th20 ;
for x being set st x in dom (doms (curry G)) holds
(J --> k) . x in (doms (curry G)) . x
proof
let x be set ; :: thesis: ( x in dom (doms (curry G)) implies (J --> k) . x in (doms (curry G)) . x )
assume x in dom (doms (curry G)) ; :: thesis: (J --> k) . x in (doms (curry G)) . x
then reconsider j = x as Element of J by A30, Th20;
A67: (J --> k) . j = k by FUNCOP_1:13;
(doms (curry G)) . j = dom ((curry G) . j) by A31, FUNCT_6:31
.= K' by Th20 ;
hence (J --> k) . x in (doms (curry G)) . x by A67; :: thesis: verum
end;
then J --> k in product (doms (curry G)) by A66, CARD_3:18;
then A68: J --> k in dom (Frege (curry G)) by PARTFUN1:def 4;
x = G . j,k by A5, A51, A65
.= ((curry G) . j) . k by Th20
.= ((curry G) . j) . ((J --> k) . j) by FUNCOP_1:13 ;
then x in rng ((Frege (curry G)) . (J --> k)) by A68, Lm5;
then x' >= "/\" (rng ((Frege (curry G)) . (J --> k))),L by YELLOW_2:24;
then A69: x' >= //\ ((Frege (curry G)) . (J --> k)),L by YELLOW_2:def 6;
x' <= //\ ((Frege (curry G)) . (J --> k)),L by A65, YELLOW_0:44;
then x' = //\ ((Frege (curry G)) . (J --> k)),L by A69, ORDERS_2:25;
hence x in rng (Infs ) by A68, Th13; :: thesis: verum
end;
end;
end;
A70: ( ex_sup_of rng (Infs ),L & ex_sup_of {(Bottom L)},L ) by YELLOW_0:17;
A71: Bottom L <= Sup by YELLOW_0:44;
Sup = sup (rng (Infs )) by YELLOW_2:def 5
.= sup ((rng (Infs )) \/ {(Bottom L)}) by A52, A60, XBOOLE_0:def 10
.= (sup (rng (Infs ))) "\/" (sup {(Bottom L)}) by A70, YELLOW_2:3
.= (sup (rng (Infs ))) "\/" (Bottom L) by YELLOW_0:39
.= (Sup ) "\/" (Bottom L) by YELLOW_2:def 5
.= Sup by A71, YELLOW_0:24 ;
hence Sup = Sup ; :: thesis: verum
end;
end;
end;
A72: dom F = J by PARTFUN1:def 4
.= dom (curry G) by PARTFUN1:def 4 ;
for j being set st j in dom F holds
\\/ (F . j),L = \\/ ((curry G) . j),L
proof
let j' be set ; :: thesis: ( j' in dom F implies \\/ (F . j'),L = \\/ ((curry G) . j'),L )
assume j' in dom F ; :: thesis: \\/ (F . j'),L = \\/ ((curry G) . j'),L
then reconsider j = j' as Element of J by PARTFUN1:def 4;
reconsider H = (curry G) . j as Function of ((J --> K') . j),the carrier of L ;
(J --> K') . j = K' by FUNCOP_1:13;
then reconsider H = H as Function of K',the carrier of L ;
( ex_sup_of rng (F . j),L & ex_sup_of rng ((curry G) . j),L ) by YELLOW_0:17;
then sup (rng (F . j)) <= sup (rng ((curry G) . j)) by A8, YELLOW_0:34;
then Sup <= sup (rng H) by YELLOW_2:def 5;
then A73: Sup <= Sup by YELLOW_2:def 5;
for k being Element of K' holds H . k <= Sup
proof
let k be Element of K'; :: thesis: H . k <= Sup
per cases ( k in K . j or not k in K . j ) ;
suppose A74: k in K . j ; :: thesis: H . k <= Sup
then A75: (F . j) . k = G . j,k by A5
.= H . k by Th20 ;
k in dom (F . j) by A74, FUNCT_2:def 1;
then H . k in rng (F . j) by A75, FUNCT_1:def 5;
then H . k <= sup (rng (F . j)) by YELLOW_2:24;
hence H . k <= Sup by YELLOW_2:def 5; :: thesis: verum
end;
suppose not k in K . j ; :: thesis: H . k <= Sup
then Bottom L = G . j,k by A5
.= H . k by Th20 ;
hence H . k <= Sup by YELLOW_0:44; :: thesis: verum
end;
end;
end;
then Sup <= Sup by YELLOW_2:56;
hence \\/ (F . j'),L = \\/ ((curry G) . j'),L by A73, ORDERS_2:25; :: thesis: verum
end;
hence Inf = Inf by A72, Th11
.= Sup by A1, A13, A47 ;
:: thesis: verum
end;
hence L is continuous by Lm9; :: thesis: verum