reserve x,y,y1,y2 for set;
reserve C for non empty set;
reserve c for Element of C;
reserve f,h,g,h1 for Membership_Func of C;

theorem
  max(f,g)*max(f,h) c= max(f,(g*h))
proof
  let c;
A1: max(f.c,g.c)*max(f.c,h.c) <= max(f,(g*h)).c
  proof
    per cases by XXREAL_0:16;
    suppose
A2:   max(f.c,g.c) = f.c;
      max(f.c,g.c)*max(f.c,h.c) <= max(f,(g*h)).c
      proof
        per cases by XXREAL_0:16;
        suppose
A3:       max(f.c,h.c) = f.c;
          max(f,(g*h)).c = max(f.c,(g*h).c) by FUZZY_1:5;
          then
A4:       max(f,(g*h)).c >= f.c by XXREAL_0:25;
          f*f c= f by Th28;
          then (f*f).c <= f.c;
          then (f*f).c <= max(f,(g*h)).c by A4,XXREAL_0:2;
          hence thesis by A2,A3,Def2;
        end;
        suppose
A5:       max(f.c,h.c) = h.c;
A6:       1 >= h.c by Th1;
          f.c <= max(f.c,(g*h).c) by XXREAL_0:25;
          then
A7:       f.c <= max(f,(g*h)).c by FUZZY_1:5;
          f.c >= 0 by Th1;
          then (f.c)*(h.c) <= (f.c)*1 by A6,XREAL_1:64;
          hence thesis by A2,A5,A7,XXREAL_0:2;
        end;
      end;
      hence thesis;
    end;
    suppose
A8:   max(f.c,g.c) = g.c;
      max(f.c,g.c)*max(f.c,h.c) <= max(f,(g*h)).c
      proof
        per cases by XXREAL_0:16;
        suppose
A9:       max(f.c,h.c) = f.c;
A10:      1 >= g.c by Th1;
          f.c <= max(f.c,(g*h).c) by XXREAL_0:25;
          then
A11:      f.c <= max(f,(g*h)).c by FUZZY_1:5;
          f.c >= 0 by Th1;
          then (f.c)*(g.c) <= (f.c)*1 by A10,XREAL_1:64;
          hence thesis by A8,A9,A11,XXREAL_0:2;
        end;
        suppose
A12:      max(f.c,h.c) = h.c;
          max(f,(g*h)).c = max(f.c,(g*h).c) by FUZZY_1:5;
          then max(f,(g*h)).c >= (g*h).c by XXREAL_0:25;
          hence thesis by A8,A12,Def2;
        end;
      end;
      hence thesis;
    end;
  end;
  (max(f,g)*max(f,h)).c = (max(f,g).c)*(max(f,h).c) by Def2
    .= max(f.c,g.c)*(max(f,h).c) by FUZZY_1:5
    .= max(f.c,g.c)*max(f.c,h.c) by FUZZY_1:5;
  hence thesis by A1;
end;
