reserve m, n, i, k for Nat;
reserve IAlph, OAlph for non empty set,
  fsm for non empty FSM over IAlph,
  s for Element of IAlph,
  w, w1, w2 for FinSequence of IAlph,
  q, q9, q1, q2 for State of fsm;
reserve tfsm, tfsm1, tfsm2, tfsm3 for non empty Mealy-FSM over IAlph, OAlph,
  sfsm for non empty Moore-FSM over IAlph, OAlph,
  qs for State of sfsm,
  q, q1, q2 , q3, qa, qb, qc, qa9, qt, q1t, q2t for State of tfsm,
  q11, q12 for State of tfsm1,
  q21, q22 for State of tfsm2;
reserve OAlphf for finite non empty set,
  tfsmf for finite non empty Mealy-FSM over IAlph, OAlphf,
  sfsmf for finite non empty Moore-FSM over IAlph, OAlphf;

theorem Th37:
  k-eq_states_partition tfsm = (k+1)-eq_states_partition tfsm
  implies k-eq_states_partition tfsm is final
proof
  set S = the carrier of tfsm;
  set kpart = k-eq_states_partition tfsm;
  set k1part = (k+1)-eq_states_partition tfsm;
  set keq = k-eq_states_EqR tfsm;
  assume
A1: kpart = k1part;
  now
    let qa, qb be Element of tfsm;
    hereby
      reconsider X= Class(keq,qb) as Element of kpart by EQREL_1:def 3;
      assume
A2:   qa,qb-are_equivalent;
      take X;
      k-equivalent qa,qb by A2;
      then [qa,qb] in keq by Def12;
      hence qa in X & qb in X by EQREL_1:19,20;
    end;
    given X being Element of kpart such that
A3: qa in X and
A4: qb in X;
    consider qc being object such that
    qc in S and
A5: X = Class(keq,qc) by EQREL_1:def 3;
    [qb,qc] in keq by A4,A5,EQREL_1:19;
    then
A6: [qc,qb] in keq by EQREL_1:6;
    [qa,qc] in keq by A3,A5,EQREL_1:19;
    then
A7: [qa,qb] in keq by A6,EQREL_1:7;
    then
A8: k-equivalent qa,qb by Def12;
    thus qa,qb-are_equivalent
    proof
      let w be FinSequence of IAlph;
      consider n being Nat such that
A9:   dom w=Seg n by FINSEQ_1:def 2;
      n in NAT by ORDINAL1:def 12;
      then
A10:  n = len w by A9,FINSEQ_1:def 3;
      per cases;
      suppose
        n <= k;
        hence thesis by A8,A10;
      end;
      suppose
        n > k;
        then ex m be Element of NAT st n=k+m & 1 <= m by FINSEQ_4:84;
        then n-eq_states_partition tfsm = kpart by A1,Th29;
        then [qa,qb] in n-eq_states_EqR tfsm by A7,FINSEQ_4:86;
        then n-equivalent qa,qb by Def12;
        hence thesis by A10;
      end;
    end;
  end;
  hence thesis;
end;
