reserve x,y for object,X,Y for set;
reserve M for Pnet;

theorem
  (f_exit(M)) * (f_exit(M)) = f_exit(M) &
  (f_exit(M)) * (f_enter(M)) = f_exit(M) &
  (f_enter(M)) * (f_enter(M)) = f_enter(M) &
  (f_enter(M)) * (f_exit(M)) = f_enter(M)
proof
A1: (f_exit(M)) * (f_exit(M)) = f_exit(M)
  proof
    set R = ((Flow M)|(the carrier' of M));
    set S = id(the carrier of M);
A2: S * R = {} by Th12;
A3: R * S = R by Th12;
A4: S * S = S by SYSREL:12;
    (f_exit(M)) * (f_exit(M)) = (R * (R \/ S)) \/ (S * (R \/ S)) by SYSREL:6
      .= ((R * R) \/ (R * S)) \/ (S * (R \/ S)) by RELAT_1:32
      .= ((R * R) \/ (R * S)) \/ ((S * R) \/ (S * S)) by RELAT_1:32
      .= ({} \/ R) \/ ({} \/ S) by A2,A3,A4,Th11
      .= f_exit(M);
    hence thesis;
  end;
A5: (f_exit(M)) * (f_enter(M)) = f_exit(M)
  proof
    set R = ((Flow M)|(the carrier' of M));
    set S = id(the carrier of M);
    set T = ((Flow M)~|(the carrier' of M));
A6: S * T = {} by Th12;
A7: R * S = R by Th12;
A8: S * S = S by SYSREL:12;
    (f_exit(M)) * (f_enter(M)) = (R * (T \/ S)) \/ (S * (T \/ S)) by SYSREL:6
      .= ((R * T) \/ (R * S)) \/ (S * (T \/ S)) by RELAT_1:32
      .= ((R * T) \/ (R * S)) \/ ((S * T) \/ (S * S)) by RELAT_1:32
      .= ({} \/ R) \/ ({} \/ S) by A6,A7,A8,Th11
      .=f_exit(M);
    hence thesis;
  end;
A9: (f_enter(M)) * (f_enter(M)) = f_enter(M)
  proof
    set R = ((Flow M)~|(the carrier' of M));
    set S = id(the carrier of M);
A10: S * R = {} by Th12;
A11: R * S = R by Th12;
A12: S * S = S by SYSREL:12;
    (f_enter(M)) * (f_enter(M)) = (R * (R \/ S)) \/ (S * (R \/ S)) by SYSREL:6
      .= ((R * R) \/ (R * S)) \/ (S * (R \/ S)) by RELAT_1:32
      .= ((R * R) \/ (R * S)) \/ ((S * R) \/ (S * S)) by RELAT_1:32
      .= ({} \/ R) \/ ({} \/ S) by A10,A11,A12,Th11
      .=f_enter(M);
    hence thesis;
  end;
  (f_enter(M)) * (f_exit(M)) = f_enter(M)
  proof
    set R = ((Flow M)|(the carrier' of M));
    set S = id(the carrier of M);
    set T = ((Flow M)~|(the carrier' of M));
A13: T * S = T by Th12;
A14: S * R = {} by Th12;
A15: S * S = S by SYSREL:12;
    (f_enter(M)) * (f_exit(M)) = (T * (R \/ S)) \/ (S * (R \/ S)) by SYSREL:6
      .= ((T * R) \/ (T * S)) \/ (S * (R \/ S)) by RELAT_1:32
      .= ((T * R) \/ (T * S)) \/ ((S * R) \/ (S * S)) by RELAT_1:32
      .= ({} \/ T) \/ ({} \/ S) by A13,A14,A15,Th11
      .=f_enter(M);
    hence thesis;
  end;
  hence thesis by A1,A5,A9;
end;
