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;
reserve T for non empty TopSpace,
        s for Function of [:NAT,NAT:], the carrier of T,
        M for Subset of the carrier of T;
reserve cF3,cF4 for Filter of the carrier of T;

theorem Th46:
  for x being Point of T holds
  x in lim_filter(s,Frechet_Filter([:NAT,NAT:])) iff
  for A being a_neighborhood of x holds [:NAT,NAT:] \ s"(A) is finite
  proof
    let x be Point of T;
    hereby
      assume
A1:   x in lim_filter(s,Frechet_Filter([:NAT,NAT:]));
      now
        let A be a_neighborhood of x;
        ex B being finite Subset of [:NAT,NAT:] st
          s"(A) = [:NAT,NAT:] \ B by A1,Th45;
        hence [:NAT,NAT:] \ s"(A) is finite by Th1;
      end;
      hence for A be a_neighborhood of x holds [:NAT,NAT:] \ s"(A) is finite;
    end;
    assume
A2: for A be a_neighborhood of x holds [:NAT,NAT:] \ s"(A) is finite;
    now
      let A be a_neighborhood of x;
A3:   dom s = [:NAT,NAT:] by FUNCT_2:def 1;
      [:NAT,NAT:] \ s"(A) is finite by A2;
      hence ex B being finite Subset of [:NAT,NAT:] st
        s"(A) = [:NAT,NAT:] \ B by A3,RELAT_1:132,Th2;
    end;
    hence x in lim_filter(s,Frechet_Filter([:NAT,NAT:])) by Th45;
  end;
