reserve I for set,
  x,x1,x2,y,z for set,
  A for non empty set;
reserve C,D for Category;
reserve a,b,c,d for Object of C;
reserve f,g,h,i,j,k,p1,p2,q1,q2,i1,i2,j1,j2 for Morphism of C;
reserve f for Morphism of a,b,
        g for Morphism of b,a;
reserve g for Morphism of b,c;
reserve f,g for Morphism of C;

theorem
  c is_a_product_wrt p1,p2 & d is_a_product_wrt q1,q2 & cod p1 = cod q1
  & cod p2 = cod q2 implies c,d are_isomorphic
proof
  assume that
A1: c is_a_product_wrt p1,p2 and
A2: d is_a_product_wrt q1,q2 and
A3: cod p1 = cod q1 & cod p2 = cod q2;
  set I = {0,{0}}, F = (0,{0})-->(p1,p2), F9 = (0,{0})-->(q1,q2);
A4: c is_a_product_wrt F & d is_a_product_wrt F9 by A1,A2,Th54;
  cods F = (0,{0})-->(cod q1,cod q2) by A3,Th7
    .= cods F9 by Th7;
  hence thesis by A4,Th48;
end;
