reserve x for object, X,Y for set;
reserve C for non empty set;
reserve c for Element of C;
reserve f,f1,f2,f3,g,g1 for complex-valued Function;
reserve r,p for Complex;
reserve r,r1,r2,p for Real;
reserve f,f1,f2 for PartFunc of C,REAL;
reserve f for real-valued Function;

theorem
  f|X is bounded_above & f|Y is bounded_below implies f|(X /\ Y) is bounded
proof
  assume that
A1: f|X is bounded_above and
A2: f|Y is bounded_below;
  consider r1 such that
A3: for c being object st c in X /\ dom f holds f.c <= r1 by A1,Th70;
  now
    let c be object;
    assume
A4: c in X /\ Y /\ dom f;
    then c in X /\ Y by XBOOLE_0:def 4;
    then
A5: c in X by XBOOLE_0:def 4;
    c in dom f by A4,XBOOLE_0:def 4;
    then c in X /\ dom f by A5,XBOOLE_0:def 4;
    hence f.c <= r1 by A3;
  end;
  hence f|(X /\ Y) is bounded_above by Th70;
  consider r2 such that
A6: for c being object st c in Y /\ dom f holds r2 <= f.c by A2,Th71;
  now
    let c be object;
    assume
A7: c in X /\ Y /\ dom f;
    then c in X /\ Y by XBOOLE_0:def 4;
    then
A8: c in Y by XBOOLE_0:def 4;
    c in dom f by A7,XBOOLE_0:def 4;
    then c in Y /\ dom f by A8,XBOOLE_0:def 4;
    hence r2 <= f.c by A6;
  end;
  hence thesis by Th71;
end;
