reserve S,T,W,Y for RealNormSpace;
reserve f,f1,f2 for PartFunc of S,T;
reserve Z for Subset of S;
reserve i,n for Nat;

theorem LM030:
  for f be PartFunc of T, W,
  g be Function of S, T,
  x be Point of S
  st x in dom g &
  g/.x in dom f &
  g is_continuous_in x &
  f is_continuous_in g/.x holds
  f*g is_continuous_in x
  proof
    let f be PartFunc of T, W,
    g be Function of S, T,
    x be Point of S;
    assume that
    AS1: x in dom g and
    AS2: g/.x in dom f and
    AS3: g is_continuous_in x and
    AS4: f is_continuous_in g/.x;
    set h = f*g;
    P1: x in dom h by AS1,AS2,PARTFUN2:3;
    for r be Real st 0<r ex s be Real st
    0 < s & for x1 be Point of S st x1 in dom h & ||. x1- x .|| < s
    holds ||. h/.x1-h/.x.|| < r
    proof
      let r be Real;
      assume 0 < r;
      then consider t be Real such that
      P2: 0 < t &
      for y1 be Point of T
      st y1 in dom f & ||. y1- (g/.x) .|| < t
      holds ||. f/.y1-f/.(g/.x).|| < r by AS4,NFCONT_1:7;
      consider s be Real such that
      P3: 0 < s &
      for x1 be Point of S st x1 in dom g & ||. x1- x .|| < s holds
      ||. g/.x1- g/.x .|| < t by P2,AS3,NFCONT_1:7;
      take s;
      thus 0 < s by P3;
      let x1 be Point of S;
      assume P4: x1 in dom h & ||. x1- x .|| < s; then
      P7: x1 in dom g & g/.x1 in dom f by PARTFUN2:3; then
      P5: ||. g/.x1- (g/.x) .|| < t by P3,P4;
      h/.x1 = f/.(g/.x1) & h/.x = f/.(g/.x)
        by P4,AS1,AS2,PARTFUN2:3,PARTFUN2:4;
      hence ||. h/.x1-h/.x.||< r by P2,P5,P7;
    end;
    hence h is_continuous_in x by NFCONT_1:7,P1;
  end;
