reserve o1,o2 for Ordinal;

theorem Th7:
  for b1,c1 be Element of Bags o1 for b2,c2 be Element of Bags o2
  st b1+^b2 = c1+^c2 holds b1=c1 & b2=c2
proof
  let b1,c1 be Element of Bags o1, b2,c2 be Element of Bags o2;
  assume
A1: b1+^b2 = c1+^c2;
  now
    let i be object;
    assume
A2: i in o1;
    then reconsider i9 = i as Ordinal;
    (b1+^b2).i9 = b1.i9 by A2,Def1;
    hence b1.i=c1.i by A1,A2,Def1;
  end;
  hence b1 = c1 by PBOOLE:3;
  now
    let i be object;
    assume
A3: i in o2;
    then reconsider i9 = i as Ordinal;
A4: i9= o1+^i9-^o1 by ORDINAL3:52;
    o1 c= o1+^i9 by ORDINAL3:24;
    then
A5: not o1+^i9 in o1 by ORDINAL1:5;
    o1+^i9 in o1+^o2 by A3,ORDINAL2:32;
    then
A6: o1+^i9 in (o1+^o2) \ o1 by A5,XBOOLE_0:def 5;
    then (b1+^b2).(o1+^i9) = b2.(o1+^i9-^o1) by Def1;
    hence b2.i = c2.i by A1,A6,A4,Def1;
  end;
  hence thesis by PBOOLE:3;
end;
