let f be Function; :: thesis: ( dom <:f:> = meet (doms f) & rng <:f:> c= product (rngs f) )
A1:
( <:f:> = curry ((uncurry' f) | [:(meet (doms f)),(dom f):]) & dom (doms f) = f " (SubFuncs (rng f)) & dom (rngs f) = f " (SubFuncs (rng f)) )
by Def2, Def3;
dom ((uncurry' f) | [:(meet (doms f)),(dom f):]) c= [:(meet (doms f)),(dom f):]
by RELAT_1:87;
hence A2:
dom <:f:> c= meet (doms f)
by FUNCT_5:32; :: according to XBOOLE_0:def 10 :: thesis: ( meet (doms f) c= dom <:f:> & rng <:f:> c= product (rngs f) )
thus
meet (doms f) c= dom <:f:>
:: thesis: rng <:f:> c= product (rngs f)proof
let x be
set ;
:: according to TARSKI:def 3 :: thesis: ( not x in meet (doms f) or x in dom <:f:> )
assume A3:
x in meet (doms f)
;
:: thesis: x in dom <:f:>
then A4:
rng (doms f) <> {}
by SETFAM_1:def 1;
consider y being
Element of
rng (doms f);
consider z being
set such that A5:
(
z in dom (doms f) &
y = (doms f) . z )
by A4, FUNCT_1:def 5;
A6:
(
z in dom f &
f . z in SubFuncs (rng f) )
by A1, A5, FUNCT_1:def 13;
then reconsider g =
f . z as
Function by Def1;
(
y = dom g &
x in y )
by A3, A4, A5, A6, Th31, SETFAM_1:def 1;
then
(
[x,z] in dom (uncurry' f) &
[x,z] in [:(meet (doms f)),(dom f):] )
by A3, A6, FUNCT_5:46, ZFMISC_1:106;
then
[x,z] in (dom (uncurry' f)) /\ [:(meet (doms f)),(dom f):]
by XBOOLE_0:def 4;
then
[x,z] in dom ((uncurry' f) | [:(meet (doms f)),(dom f):])
by RELAT_1:90;
then
x in proj1 (dom ((uncurry' f) | [:(meet (doms f)),(dom f):]))
by FUNCT_5:4;
hence
x in dom <:f:>
by FUNCT_5:def 3;
:: thesis: verum
end;
set f' = (uncurry' f) | [:(meet (doms f)),(dom f):];
thus
rng <:f:> c= product (rngs f)
:: thesis: verumproof
let y be
set ;
:: according to TARSKI:def 3 :: thesis: ( not y in rng <:f:> or y in product (rngs f) )
assume
y in rng <:f:>
;
:: thesis: y in product (rngs f)
then consider x being
set such that A7:
(
x in dom <:f:> &
y = <:f:> . x )
by FUNCT_1:def 5;
reconsider g =
y as
Function by A7, FUNCT_5:37;
A8:
(
dom g = proj2 ((dom ((uncurry' f) | [:(meet (doms f)),(dom f):])) /\ [:{x},(proj2 (dom ((uncurry' f) | [:(meet (doms f)),(dom f):]))):]) &
dom ((uncurry' f) | [:(meet (doms f)),(dom f):]) = (dom (uncurry' f)) /\ [:(meet (doms f)),(dom f):] & ( for
z being
set st
z in dom g holds
(
g . z = ((uncurry' f) | [:(meet (doms f)),(dom f):]) . x,
z &
[x,z] in dom ((uncurry' f) | [:(meet (doms f)),(dom f):]) ) ) )
by A7, FUNCT_5:38, RELAT_1:90;
A9:
uncurry' f = ~ (uncurry f)
by FUNCT_5:def 6;
A10:
dom g = dom (rngs f)
proof
thus
dom g c= dom (rngs f)
:: according to XBOOLE_0:def 10 :: thesis: dom (rngs f) c= dom gproof
let z be
set ;
:: according to TARSKI:def 3 :: thesis: ( not z in dom g or z in dom (rngs f) )
assume
z in dom g
;
:: thesis: z in dom (rngs f)
then
(
g . z = ((uncurry' f) | [:(meet (doms f)),(dom f):]) . x,
z &
[x,z] in dom ((uncurry' f) | [:(meet (doms f)),(dom f):]) )
by A7, FUNCT_5:38;
then
[x,z] in dom (uncurry' f)
by A8, XBOOLE_0:def 4;
then
[z,x] in dom (uncurry f)
by A9, FUNCT_4:43;
then consider y1 being
set ,
h being
Function,
y2 being
set such that A11:
(
[z,x] = [y1,y2] &
y1 in dom f &
h = f . y1 &
y2 in dom h )
by FUNCT_5:def 4;
A12:
(
z = y1 &
x = y2 &
h in rng f )
by A11, FUNCT_1:def 5, ZFMISC_1:33;
then
f . z in SubFuncs (rng f)
by A11, Def1;
hence
z in dom (rngs f)
by A1, A11, A12, FUNCT_1:def 13;
:: thesis: verum
end;
let z be
set ;
:: according to TARSKI:def 3 :: thesis: ( not z in dom (rngs f) or z in dom g )
assume A13:
z in dom (rngs f)
;
:: thesis: z in dom g
then A14:
(
z in dom (doms f) &
z in dom f &
f . z in SubFuncs (rng f) )
by A1, FUNCT_1:def 13;
then reconsider h =
f . z as
Function by Def1;
dom h = (doms f) . z
by A14, Th31;
then
dom h in rng (doms f)
by A1, A13, FUNCT_1:def 5;
then
x in dom h
by A2, A7, SETFAM_1:def 1;
then
[z,x] in dom (uncurry f)
by A14, FUNCT_5:def 4;
then
(
[x,z] in dom (uncurry' f) &
[x,z] in [:(meet (doms f)),(dom f):] )
by A2, A7, A9, A14, FUNCT_4:43, ZFMISC_1:106;
then A15:
[x,z] in dom ((uncurry' f) | [:(meet (doms f)),(dom f):])
by A8, XBOOLE_0:def 4;
then
(
z in proj2 (dom ((uncurry' f) | [:(meet (doms f)),(dom f):])) &
x in {x} )
by FUNCT_5:4, TARSKI:def 1;
then
[x,z] in [:{x},(proj2 (dom ((uncurry' f) | [:(meet (doms f)),(dom f):]))):]
by ZFMISC_1:106;
then
[x,z] in (dom ((uncurry' f) | [:(meet (doms f)),(dom f):])) /\ [:{x},(proj2 (dom ((uncurry' f) | [:(meet (doms f)),(dom f):]))):]
by A15, XBOOLE_0:def 4;
hence
z in dom g
by A8, FUNCT_5:4;
:: thesis: verum
end;
now let z be
set ;
:: thesis: ( z in dom (rngs f) implies g . z in (rngs f) . z )assume A16:
z in dom (rngs f)
;
:: thesis: g . z in (rngs f) . zthen A17:
(
g . z = ((uncurry' f) | [:(meet (doms f)),(dom f):]) . x,
z &
[x,z] in dom ((uncurry' f) | [:(meet (doms f)),(dom f):]) &
z in dom f &
f . z in SubFuncs (rng f) &
z in dom (doms f) )
by A1, A7, A10, FUNCT_1:def 13, FUNCT_5:38;
then reconsider h =
f . z as
Function by Def1;
dom h = (doms f) . z
by A17, Th31;
then
dom h in rng (doms f)
by A1, A16, FUNCT_1:def 5;
then
(
x in dom h &
[x,z] in dom (uncurry' f) &
(uncurry' f) . x,
z = g . z )
by A2, A7, A8, A17, FUNCT_1:70, SETFAM_1:def 1, XBOOLE_0:def 4;
then
(
g . z = h . x &
h . x in rng h &
(rngs f) . z = rng h )
by A17, Th31, FUNCT_1:def 5, FUNCT_5:46;
hence
g . z in (rngs f) . z
;
:: thesis: verum end;
hence
y in product (rngs f)
by A10, CARD_3:def 5;
:: thesis: verum
end;