reserve G for Graph,
  v, v1, v2 for Vertex of G,
  c for Chain of G,
  p, p1, p2 for Path of G,
  vs, vs1, vs2 for FinSequence of the carrier of G,
  e, X for set,
  n, m for Nat;
reserve G for finite Graph,
  v for Vertex of G,
  c for Chain of G,
  vs for FinSequence of the carrier of G,
  X1, X2 for set;
reserve G for Graph,
  v, v1, v2 for Vertex of G,
  c for Chain of G,
  p for Path of G,
  vs for FinSequence of the carrier of G,
  v9 for Vertex of AddNewEdge(v1, v2),
  p9 for Path of AddNewEdge(v1, v2),
  vs9 for FinSequence of the carrier of AddNewEdge(v1, v2);
reserve G for finite Graph,
  v, v1, v2 for Vertex of G,
  vs for FinSequence of the carrier of G,
  v9 for Vertex of AddNewEdge(v1, v2);
reserve G for Graph,
  v for Vertex of G,
  vs for FinSequence of the carrier of G;
reserve G for finite Graph,
  v for Vertex of G,
  vs for FinSequence of the carrier of G;

theorem Th55:
  Degree(v, X) <> 0 & (for v holds Degree(v, X) is even) implies
for c being Element of X-CycleSet v holds c is non empty & rng c c= X & v in G
  -VSet rng c
proof
  assume Degree(v, X) <> 0 & for v holds Degree(v, X) is even;
  then
A1: X-CycleSet v = { c9 where c9 is Element of G-CycleSet : rng c9 c= X & c9
  is non empty & ex vs being FinSequence of the carrier of G st vs
  is_vertex_seq_of c9 & vs.1 = v} by Def12;
  let c be Element of X-CycleSet v;
  c in X-CycleSet v;
  then consider c9 being Element of G-CycleSet such that
A2: c = c9 and
A3: rng c9 c= X and
A4: c9 is non empty and
A5: ex vs being FinSequence of the carrier of G st vs is_vertex_seq_of
  c9 & vs.1 = v by A1;
  thus c is non empty by A2,A4;
  thus rng c c= X by A2,A3;
  reconsider c9 as Path of G by Def8;
  consider vs being FinSequence of the carrier of G such that
A6: vs is_vertex_seq_of c9 and
A7: vs.1 = v by A5;
  len vs = len c9 +1 by A6;
  then 1 <= len vs by NAT_1:11;
  then
A8: 1 in dom vs by FINSEQ_3:25;
  G-VSet rng c9 = rng vs by A4,A6,GRAPH_2:31;
  hence thesis by A2,A7,A8,FUNCT_1:def 3;
end;
