
theorem Th32:
  for G being _finite _Graph, n being Nat st n <= G.order() holds
  card dom ((LexBFS:CSeq(G)).n)`1 = n
proof
  let G be _finite _Graph, n be Nat such that
A1: n <= G.order();
  set CS = LexBFS:CSeq(G);
  defpred P[Nat] means $1 <= G.order() implies card dom ((CS.$1)`1) = $1;
A2: for k being Nat st k < G.order() & card dom ((CS.k)`1) = k holds card
  dom ((CS.(k+1))`1) = k+1
  proof
    let k be Nat such that
A3: k < G.order() and
A4: card dom ((CS.k)`1) = k;
    set CK1 = CS.(k+1);
    set CSK = CS.k;
    set VLK = CSK`1;
    set VK1 = CK1`1;
    set w = LexBFS:PickUnnumbered(CSK);
    set wf = w .--> (G.order() -' k);
A5: dom wf = {w};
    VK1 = VLK +* (w .--> (G.order()-'k)) by A3,A4,Th31;
    then dom VK1 = dom VLK \/ {w} by A5,FUNCT_4:def 1;
    hence thesis by A3,A4,Th30,CARD_2:41;
  end;
A6: for k being Nat st P[k] holds P[k+1]
  proof
    let k be Nat such that
A7: P[k];
    per cases;
    suppose
      k < G.order();
      hence thesis by A2,A7;
    end;
    suppose
      k >= G.order();
      hence thesis by NAT_1:13;
    end;
  end;
  CS.0 = LexBFS:Init(G) by Def16;
  then
A8: P[ 0 ];
  for k being Nat holds P[k] from NAT_1:sch 2(A8,A6);
  hence thesis by A1;
end;
