deffunc H1( set ) -> Element of NAT = 0 ;
deffunc H2( Real) -> set = (2 * $1) - 1;
defpred S1[ Real] means $1 <= 1 / 2;
consider f being Function such that
A1: ( dom f = the carrier of I[01] & ( for x being Element of I[01] holds
( ( S1[x] implies f . x = H1(x) ) & ( not S1[x] implies f . x = H2(x) ) ) ) ) from PARTFUN1:sch 4();
for x being object st x in the carrier of I[01] holds
f . x in the carrier of I[01]
proof
let x be object ; :: thesis: ( x in the carrier of I[01] implies f . x in the carrier of I[01] )
assume x in the carrier of I[01] ; :: thesis: f . x in the carrier of I[01]
then reconsider x = x as Point of I[01] ;
per cases ( S1[x] or not S1[x] ) ;
end;
end;
then reconsider f = f as Function of I[01],I[01] by A1, FUNCT_2:3;
for t being Point of I[01] holds
( ( t <= 1 / 2 implies f . t = 0 ) & ( t > 1 / 2 implies f . t = (2 * t) - 1 ) ) by A1;
hence ex b1 being Function of I[01],I[01] st
for t being Point of I[01] holds
( ( t <= 1 / 2 implies b1 . t = 0 ) & ( t > 1 / 2 implies b1 . t = (2 * t) - 1 ) ) ; :: thesis: verum