reserve a,a1,a2,b,c,d for Ordinal,
  n,m,k for Nat,
  x,y,z,t,X,Y,Z for set;
reserve f,g for Function;
reserve A,B,C for array;
reserve O for connected non empty Poset;
reserve R,Q for array of O;

theorem Th57:
  [x,y] in inversions R & y in z & [x,z] in inversions Swap(R,x,y) implies
  [y,z] in inversions R
  proof assume
    [x,y] in inversions R; then
A1: x in dom R & y in dom R & x in y & R/.x > R/.y by Th46;
A2: dom Swap(R,x,y) = dom R by FUNCT_7:99;
    assume
A3: y in z;
    assume
    [x,z] in inversions Swap(R,x,y); then
A4: z in dom R & x in z & Swap(R,x,y)/.x > Swap(R,x,y)/.z by A2,Th46; then
    z <> x & z <> y by A3; then
    Swap(R,x,y)/.x = R/.y & Swap(R,x,y)/.z = R/.z by A1,A4,Th30,Th34;
    hence [y,z] in inversions R by A1,A4,A3;
  end;
