reserve p, q for FinSequence,
  X, Y, x, y, e for set,
  D for non empty set,
  i, j, k, l, m, n, r for Nat;
reserve G for Graph;
reserve v, v1, v2, v3, v4 for Element of G;
reserve vs, vs1, vs2 for FinSequence of the carrier of G,
  c, c1, c2 for Chain of G;

theorem Th35:
  c alternates_vertices_in G & vs is_vertex_seq_of c implies for k
  st k in dom c holds vs.k <> vs.(k+1)
proof
  assume that
A1: c alternates_vertices_in G and
A2: vs is_vertex_seq_of c;
  set TG = (the Target of G);
  set SG = (the Source of G);
  let k;
  set px = vs/.k;
  set px1 = vs/.(k+1);
  assume
A3: k in dom c;
  then
A4: k<=len c by FINSEQ_3:25;
A5: 1<=k by A3,FINSEQ_3:25;
  then c.k joins px, px1 by A2,A4;
  then
A6: TG.(c.k)=px1 & SG.(c.k)=px or TG.(c.k)=px & SG.(c.k)=px1;
A7: len vs = len c +1 by A2;
  then k<=len vs by A4,NAT_1:12;
  then
A8: px = vs.k by A5,FINSEQ_4:15;
  1<=k+1 by NAT_1:12;
  then px1 = vs.(k+1) by A4,A7,FINSEQ_4:15,XREAL_1:7;
  hence thesis by A1,A3,A8,A6;
end;
