reserve X for set,
        D for a_partition of X,
        TG for non empty TopologicalGroup;
reserve A for Subset of X;
reserve US for UniformSpace;
reserve R for Relation of X;
reserve SF for Subset-Family of X, A for Element of SF;

theorem Th44:
  basis_Pervin_uniformity(SF) is axiom_UP3
  proof
    for B1 being Element of basis_Pervin_uniformity(SF)
    ex B2 being Element of basis_Pervin_uniformity(SF) st B2 [*] B2 c= B1
    proof
      let B1 be Element of basis_Pervin_uniformity(SF);
      B1 in FinMeetCl(subbasis_Pervin_uniformity(SF));
      then consider Y being Subset-Family of [:X,X:] such that
A1:   Y c= subbasis_Pervin_uniformity(SF) and
      Y is finite and
A2:   B1 = Intersect Y by CANTOR_1:def 3;
      per cases;
      suppose Y is empty; then
A3:     B1 = [:X,X:] by A2,SETFAM_1:def 9;
        take B1;
        thus thesis by A3;
      end;
      suppose
A4:     Y is non empty; then
A5:     B1 = meet Y by A2,SETFAM_1:def 9;
        reconsider B2 = B1 as Element of basis_Pervin_uniformity(SF);
        take B2;
        B2 * B2 c= B1
        proof
          let t be object;
          assume
A6:       t in B2 * B2; then
          consider a,b be object such that
A10:      t = [a,b] by RELAT_1:def 1;
          consider c be object such that
A11:      [a,c] in B1 and
A12:      [c,b] in B1 by A6,A10,RELAT_1:def 8;
          t in B1
          proof
            for Z be set st Z in Y holds t in Z
            proof
              let Z be set;
              assume
A13:          Z in Y;
              then Z in the set of all block_Pervin_uniformity(O) where
                O is Element of SF by A1;
              then consider O be Element of SF such that
A14:          Z = block_Pervin_uniformity(O);
              [a,c] in meet Y by A4,A2,SETFAM_1:def 9,A11; then
A15:          [a,c] in block_Pervin_uniformity(O) by A14,A13,SETFAM_1:def 1;
              [c,b] in block_Pervin_uniformity(O)
                by A12,A5,A14,A13,SETFAM_1:def 1; then
A16:          [a,b] in (block_Pervin_uniformity(O)) *
                (block_Pervin_uniformity(O)) by A15,RELAT_1:def 8;
              (block_Pervin_uniformity(O)) * (block_Pervin_uniformity(O)) c=
                block_Pervin_uniformity(O) by Th35;
              hence thesis by A14,A10,A16;
            end;
            hence thesis by A5,A4,SETFAM_1:def 1;
          end;
          hence thesis;
        end;
        hence thesis;
      end;
    end;
    hence thesis;
  end;
