reserve a,b for object, I,J for set;

theorem Lem9:
  for p being FinSequence st a in rng p
  ex q,r being FinSequence st p = q^<*a*>^r
  proof
    let p be FinSequence;
    assume a in rng p;
    then consider i being object such that
A1: i in dom p & a = p.i by FUNCT_1:def 3;
    reconsider i as Nat by A1;
A3: 1 <= i <= len p by A1,FINSEQ_3:25;
    consider k being Nat such that
A2: i = 1+k by NAT_1:10,A1,FINSEQ_3:25;
    set q = (1,k)-cut p;
    set r = (i+1,len p)-cut p;
    take q,r;
    k <= i & (i,i)-cut p = <*a*> by A1,A3,A2,NAT_1:11,
      FINSEQ_6:132;
    hence p = q^<*a*>^r by A3,A2,FINSEQ_6:136;
  end;
