reserve            x for object,
               X,Y,Z for set,
         i,j,k,l,m,n for Nat,
                 r,s for Real,
                  no for Element of OrderedNAT,
                   A for Subset of [:NAT,NAT:];
reserve X,Y,X1,X2 for non empty set,
          cA1,cB1 for filter_base of X1,
          cA2,cB2 for filter_base of X2,
              cF1 for Filter of X1,
              cF2 for Filter of X2,
             cBa1 for basis of cF1,
             cBa2 for basis of cF2;

theorem
  square-uparrow n c= [:NAT,NAT:] \ [:Segm n,Segm n:]
  proof
    let x be object;
    assume
A1: x in square-uparrow n;
    then reconsider y = x as Element of [:NAT,NAT:];
    consider n1,n2 be Nat such that
A2: n1 = y`1 and
A3: n2 = y`2 and
A4: n <= n1 and
    n <= n2 by A1,Def3;
    not x in [:Segm n,Segm n:]
    proof
      assume x in [:Segm n,Segm n:];
      then ex x1,x2 be object st x1 in Segm n & x2 in Segm n & x = [x1,x2]
        by ZFMISC_1:def 2;
      then n1 <= n - 1 & n2 <= n - 1 by A2,A3,STIRL2_1:10;
      then n <= n - 1 by A4,XXREAL_0:2;
      then n - n <= n - 1 - n by XREAL_1:9;
      then 0 <= -1;
      hence thesis;
    end;
    hence thesis by A1,XBOOLE_0:def 5;
  end;
