reserve x,N for set,
        k for Nat;
reserve N for with_zero set;
reserve S for IC-Ins-separated non empty with_non-empty_values
     Mem-Struct over N;
reserve s for State of S;
reserve p for PartState of S;

theorem Th78:
  for A being IC-Ins-separated non empty with_non-empty_values
        Mem-Struct over N
  for s1,s2 being State of A st IC s1= IC s2 & DataPart s1 =
  DataPart s2 holds s1=s2
proof
  let A be IC-Ins-separated non empty with_non-empty_values Mem-Struct over N;
   set D = Data-Locations A;
  let s1,s2 be State of A;
  assume that
A1: IC s1= IC s2 and
A2: DataPart s1 = DataPart s2;
A3: dom s2 ={IC A} \/ D by Th13;
A4: dom s1 ={IC A} \/ D by Th13;
  then s1|{IC A} = s2|{IC A} by A1,A3,GRFUNC_1:29;
  then s1|({IC A} \/ D) = s2| ({IC A} \/ D) by A2,RELAT_1:150;
  then s1|({IC A} \/ D) = s2| ({IC A} \/ D);
  hence s1=s2 | dom s2 by A4,A3
    .=s2;
end;
