reserve X,G for RealNormSpace-Sequence,
          Y for RealNormSpace;
reserve f for MultilinearOperator of X,Y;

theorem
  for X be RealNormSpace-Sequence,
      Y be RealNormSpace,
      f be MultilinearOperator of X,Y
  holds
  ( f is_continuous_on the carrier of product X
    iff
    f is_continuous_in 0.( product X ) )
  &
  ( f is_continuous_on the carrier of product X
    iff
    f is Lipschitzian )
  proof
    let X be RealNormSpace-Sequence,
        Y be RealNormSpace,
        f be MultilinearOperator of X,Y;
    A1: dom f = the carrier of product X by FUNCT_2:def 1;
    A2: f/. 0. product X = 0.Y by FXZER;
    A3: product X = NORMSTR(# (product (carr X)),(zeros X),
      [:(addop X):],[:(multop X):],(productnorm X) #) by PRVECT_2:6;
    A4: f is_continuous_in 0.product X
         implies f is Lipschitzian
    proof
      assume f is_continuous_in 0. product X; then
      consider s be Real such that
      A5: 0 < s
       & for z be Point of product X st z in dom f &
         ||. z - 0. product X .|| < s
         holds ||. f/.z - f/. 0. product X .|| < 1 by NFCONT_1:7;
      set z = 0. product X;
      consider s1 be FinSequence of REAL,
      Balls be non empty non-empty FinSequence such that
      A6: dom s1 = dom X & dom X = dom Balls
         & product Balls c= Ball(0. product X,s)
         & for i be Element of dom X
           holds 0 < s1.i & s1.i < s & Balls.i = Ball(z.i,s1.i)
            by A5,NDIFF824;
      defpred P1[object , object] means
      ex i be Element of dom X
      st $1 = i & $2 = s1.i / 2;
      A7: for n being Nat st n in Seg len X holds
           ex d being Element of REAL st P1[n,d]
      proof
        let n be Nat;
        assume n in Seg len X; then
        reconsider i = n as Element of dom X by FINSEQ_1:def 3;
        reconsider si = s1.i /2 as Element of REAL by XREAL_0:def 1;
        take si;
        thus P1[n,si];
      end;
      consider s2 being FinSequence of REAL such that
      A8: len s2 = len X
         & for n being Nat st n in Seg len X holds P1[n, s2 /. n]
         from FINSEQ_4:sch 1(A7);
      A9: dom s2 = Seg len X by A8,FINSEQ_1:def 3
      .= dom X by FINSEQ_1:def 3;
      A11: for i be Element of dom X holds s2.i = s1.i/2
      proof
        let i be Element of dom X;
        i in dom X; then
        i in Seg len X by FINSEQ_1:def 3; then
        ex j be Element of dom X
        st i = j & s2 /. i = s1.j / 2 by A8;
        hence s2.i = s1.i / 2 by A9,PARTFUN1:def 6;
      end;
      A12: for i be Element of dom X holds 0 < s2.i & s2.i < s1.i
      proof
        let i be Element of dom X;
        s2.i = s1.i / 2 & 0 < s1.i by A6,A11;
        hence 0 < s2.i & s2.i < s1.i by XREAL_1:216;
      end;
      dom s2 = Seg len X by A9,FINSEQ_1:def 3; then
      A13: len s2 = len X by FINSEQ_1:def 3;
      A14: now
        let x be Point of product X;
        assume
        A15: for i be Element of dom X holds ||.x.i.|| <= s2.i;
        ex g be Function
        st x = g & dom g = dom carr X
         & for i be object st i in dom carr X
           holds g.i in (carr X).i by A3,CARD_3:def 5; then
        A16: dom x = dom X by DCARXX;
        now
          let i0 be object;
          assume i0 in dom X; then
          reconsider i = i0 as Element of dom X;
          A18: z.i = 0.(X.i) by ZERXI;
          ||.x.i- 0.(X.i).|| <= s2.i by A15; then
          A19: ||.0.(X.i) - x.i.|| <= s2.i by NORMSP_1:7;
          s2.i = s1.i / 2 & 0 < s1.i by A6,A11; then
          0 < s2.i & s2.i < s1.i by XREAL_1:216; then
          ||.0.(X.i) - x.i.|| < s1.i by A19,XXREAL_0:2; then
          x.i in Ball(0.(X.i),s1.i);
          hence x.i0 in Balls.i0 by A6,A18;
        end; then
        x in product Balls by A6,A16,CARD_3:def 5; then
        x in Ball(0. product X,s) by A6; then
        ex p be Point of product X
        st x = p & ||. 0. product X - p .|| < s; then
        A20: ||. x - 0. product X .|| < s by NORMSP_1:7;
        ||. f /. x - f /. 0. product X .|| < 1 by A1,A5,A20;
        hence ||. f /. x .|| < 1 by A2;
      end;
      A21: 0 < Product s2 by A9,A12,PSPROD;
      set K = 1/(Product s2);
      now
        let x be Point of product X;
        consider F be FinSequence of REAL such that
        A23: dom F = dom X
          & ( for i be Element of dom X holds F.i = ||. x.i .|| )
          & NrProduct x = Product F by LOPBAN10:def 9;
        thus ||. f.x .|| <= K * NrProduct x
        proof
          per cases;
          suppose
            A24: for i be Element of dom X holds x.i <> 0.(X.i); then
            A25: 0 < NrProduct x by LOPBAN10:27;
            consider d be FinSequence of REAL such that
            A26: dom d = dom X
                & for i be Element of dom X holds d.i = ||.x.i.||"
                  by LOPBAN10:37;
            dom d = Seg len X by A26,FINSEQ_1:def 3; then
            A27: len d = len X by FINSEQ_1:def 3;
            set F1 = mlt(s2,d);
            A28: for i being Element of dom F holds d.i = (F.i)"
            proof
              let i be Element of dom F;
              reconsider j = i as Element of dom X by A23;
              d.j = ||.x.j.||" by A26;
              hence thesis by A23;
            end;
            A32: dom F1 = dom X /\ dom X by A9,A26,VALUED_1:def 4
            .= dom X;
            s2 is Element of (len X) -tuples_on REAL
              & d is Element of (len X) -tuples_on REAL
              by A13,A27,FINSEQ_2:92; then
       A33: Product F1 = (Product s2) * Product d by RVSUM_1:107
            .= (Product s2) * (Product F)" by A23,A26,LOPBAN10:40,A28;
            consider x1 be Element of product X such that
            A34: for i be Element of dom X holds
                  x1.i = F1/.i * x.i by LOPBAN10:38;
            A35: for i be Element of dom X holds ||. x1.i .|| <= s2.i
            proof
              let i be Element of dom X;
              A36: x1.i = F1/.i * x.i by A34;
              A37: F1/.i = F1.i by A32,PARTFUN1:def 6
              .= s2.i * d.i by RVSUM_1:60
              .= s2.i * (F.i)" by A23,A28;
              A39: x1.i = s2.i * (||.x.i.||)" * x.i by A23,A36,A37;
              A41: 0 <= s2.i by A12;
              A42: |. s2.i * (||.x.i.||)".| = s2.i * ||.x.i.||"
                by A41,COMPLEX1:43;
              x.i <> 0.(X.i) by A24; then
              A43: ||.x.i.|| <> 0 by NORMSP_0:def 5;
              ||.x1.i.||
               = s2.i * ||.x.i.||" * ||.x.i.|| by A39,A42,NORMSP_1:def 1
              .= s2.i * (||.x.i.||" * ||.x.i.|| )
              .= s2.i * 1 by A43,XCMPLX_0:def 7;
              hence thesis;
            end;
            A44: ||. f/. x1 .|| < 1 by A14,A35;
            A45: |. (Product F)".| = (Product F)" by A23,ABSVALUE:def 1;
            A46: |. (Product s2) * (Product F)" .|
             = |. Product s2.| * |. (Product F) " .| by COMPLEX1:65
            .= Product s2 * (Product F)" by A21,A45,COMPLEX1:43;
            f.x1 = (Product s2) * (Product F)" * f.x
              by A32,A33,A34,LOPBAN10:39; then
            ||.f. x1.|| = (Product s2) * (Product F)" * ||.f.x.||
              by A46,NORMSP_1:def 1; then
            (Product s2) * ((Product F)" * ||.f.x.||) / (Product s2)
              < 1 / (Product s2) by A21,A44,XREAL_1:74; then
            (Product F)" * ||.f.x.|| < K by A21,XCMPLX_1:89; then
            Product F * ( (Product F)" * ||.f.x.|| ) < K * Product F
              by A23,A25,XREAL_1:68; then
            ( Product F * (Product F)") * ||.f.x.|| < K * Product F; then
            1 * ||.f.x.|| < K * Product F by A23,A25,XCMPLX_0:def 7;
            hence ||.f.x .|| <= K * NrProduct x by A23;
          end;
          suppose
            A47: ex i be Element of dom X st x.i = 0.(X.i); then
            A48: f.x = 0.Y by LOPBAN10:36;
            consider i be Element of dom X such that
            A49: x.i = 0.(X.i) by A47;
            A50: F.i = ||. x.i .|| by A23;
            F.i = 0 by A49,A50; then
            Product F = 0 by A23,RVSUM_1:103;
            hence ||.f. x .|| <= K * NrProduct x by A23,A48;
          end;
        end;
      end;
      hence f is Lipschitzian by A21;
    end;
    f is Lipschitzian implies
    f is_continuous_on the carrier of product X
    proof
      assume f is Lipschitzian; then
      consider K being Real such that
      A52: 0 <= K and
      A53: for x being Point of product X
          holds ||. f.x .|| <= K * NrProduct x;
      for v0 being Point of product X
      for r being Real st v0 in the carrier of product X & 0 < r
      holds
      ex s being Real
      st 0 < s
       & for v1 being Point of product X
         st v1 in the carrier of product X
          & ||. v1 - v0 .|| < s holds ||. f /. v1 - f /. v0 .|| < r
      proof
        let v0 being Point of product X, r0 being Real;
        assume
        A54: v0 in the carrier of product X & 0 < r0;
        set r = r0 / 2;
        A58: 0 < r & r < r0 by A54,XREAL_1:216;
        set L = ||.v0.|| + 1;
        consider M be Real such that
        A59: 0 <= M
          & for v1 be Point of product X st ||.v1-v0.|| <= 1 holds
            ex F be FinSequence of REAL
            st dom F = dom X
             & ||. f/.v1 - f/.v0 .|| <= M * K * Sum F
             & for i be Element of dom X
               holds F.i = ||.(v1-v0).i.|| by A52,A53,LM01;
        set BL = M * K * len X + 1;
        set s = min(r/BL,1);
        A64: 0 < s & s <= 1 & s <= r / BL by A52,A54,A59,XXREAL_0:17,21;
        0 + M * K * len X <= BL by XREAL_1:7; then
        (M * K * len X) * s <= (r / BL) * BL by A52,A59,A64,XREAL_1:66; then
        A65: (M * K * len X) * s <= r by A52,A59,XCMPLX_1:87;
        take s;
        thus 0 < s by A52,A54,A59,XXREAL_0:21;
        let v1 be Point of product X;
        assume
        A66: v1 in the carrier of product X & ||. v1 - v0 .|| < s;
        reconsider w1 = v1 - v0 as Element of product X;
        consider H be FinSequence of REAL such that
        A67: dom H = dom X
          & ||.f/.v1 - f/.v0.|| <= M * K * Sum H
          & for i be Element of dom X holds H.i = ||.w1.i.||
            by A59,A64,A66,XXREAL_0:2;
        for i be Nat st i in dom H holds 0 <= H.i
        proof
          let i be Nat;
          assume i in dom H; then
          reconsider j = i as Element of dom X by A67;
          H.j = ||.w1.j.|| by A67;
          hence thesis;
        end; then
        A68: 0 <= Sum H by RVSUM_1:84;
        A69: for i be Element of dom X holds ||.w1.i.|| < s
        proof
          let i be Element of dom X;
          ||.w1.i.|| <= ||.v1-v0.|| by A3,PRVECT_2:10;
          hence ||.w1.i.|| < s by A66,XXREAL_0:2;
        end;
        set CST = len H |-> s;
        A71: H is Element of len H -tuples_on REAL by FINSEQ_2:92;
        len H is natural Number & s is Element of REAL by XREAL_0:def 1; then
        reconsider CST as Element of len H -tuples_on REAL by FINSEQ_2:112;
        dom H = Seg len X by A67,FINSEQ_1:def 3; then
        A72: len H = len X by FINSEQ_1:def 3;
        for i be Nat st i in Seg len H holds H.i <= CST.i
        proof
          let i0 be Nat;
          assume
          A73: i0 in Seg len H; then
          reconsider i = i0 as Element of dom X by A67,FINSEQ_1:def 3;
          A74: ||.w1.i.|| < s by A69;
          H.i <= s by A67,A74;
          hence thesis by A73,FINSEQ_2:57;
        end; then
        Sum H <= Sum CST by A71,RVSUM_1:82; then
        Sum H <= s * len X by A72,RVSUM_1:80; then
        (M * K) * Sum H <= (M * K) * (s * len X)
          by A52,A59,A68,XREAL_1:66; then
        ||.f/.v1 - f/.v0.|| <= M * K * (s * len X) by A67,XXREAL_0:2; then
        ||.f/.v1 -f/.v0 .|| <= r by A65,XXREAL_0:2;
        hence ||.f/.v1 -f/.v0 .|| < r0 by A58,XXREAL_0:2;
      end;
      hence f is_continuous_on the carrier of product X by A1,NFCONT_1:19;
    end;
    hence thesis by A4;
  end;
