reserve p,p1,p2,q,r,F,G,G1,G2,H,H1,H2 for ZF-formula,
  x,x1,x2,y,y1,y2,z,z1,z2,s,t for Variable,
  a,X for set;
reserve M for non empty set,
  m,m9 for Element of M,
  v,v9 for Function of VAR,M;
reserve i,j for Element of NAT;

theorem Th101:
  M |= (p => q) => ((q => r) => (p => r))
proof
  let v;
  now
    assume
A1: M,v |= p => q;
    now
      assume
A2:   M,v |= q => r;
      now
        assume M,v |= p;
        then M,v |= q by A1,ZF_MODEL:18;
        hence M,v |= r by A2,ZF_MODEL:18;
      end;
      hence M,v |= p => r by ZF_MODEL:18;
    end;
    hence M,v |= (q => r) => (p => r) by ZF_MODEL:18;
  end;
  hence thesis by ZF_MODEL:18;
end;
