reserve R for commutative Ring;
reserve A for non degenerated commutative Ring;
reserve I,J,q for Ideal of A;
reserve p for prime Ideal of A;
reserve M,M1,M2 for Ideal of A/q;

theorem Th9:
    for f,g be FinSequence of bool the carrier of A st
    len f >= len g & len g > 0 & (I||^(len f) = f.len f & f.1 = I &
    for i being Nat st i in dom f & i+1 in dom f
    holds
    f.(i+1) = I *' (f/.i)) & (I||^(len g) = g.len g & g.1 = I &
    for i being Nat st i in dom g & i+1 in dom g holds
    g.(i+1) = I *' (g/.i)) holds f|(dom g) = g
    proof
      let f,g be FinSequence of bool the carrier of A;
      assume that
A1:   len f >= len g & len g > 0 &
      (I||^(len f) = f.(len f) & f.1 = I &
      for i being Nat st i in dom f & i+1 in dom f holds
      f.(i+1) = I *' (f/.i)) and
A2:   (I||^(len g) = g.(len g) & g.1 = I &
      for i being Nat st i in dom g & i+1 in dom g holds
      g.(i+1) = I *' (g/.i));
A3:   dom f = Seg(len f) by FINSEQ_1:def 3;
A4:   dom g = Seg(len g) by FINSEQ_1:def 3;
      set f1 = f|(dom g);
A5:   dom f1 = dom(f|Seg(len g)) by FINSEQ_1:def 3
      .= dom f /\ Seg(len g) by RELAT_1:61
      .= Seg (len f) /\ Seg(len g) by FINSEQ_1:def 3
      .= Seg(len g) by A1,FINSEQ_1:5,XBOOLE_1:28;
A6:   dom f1 = dom g by A5,FINSEQ_1:def 3;
A7:   for i being Nat st i in dom f1 & i+1 in dom f1 holds
      f1.(i+1) = I *' (f1/.i)
      proof
        let i be Nat;
        assume
A8:     i in dom f1 & i+1 in dom f1;
A9:     dom f1 c= dom f by A3,A5,A1,FINSEQ_1:5;
A10:    f1/.i = f1.i by A8,PARTFUN1:def 6 .= f.i by A8,A6,FUNCT_1:49
        .= f/.i by A8,A9,PARTFUN1:def 6;
        f1.(i+1) = f.(i+1) by A8,A6,FUNCT_1:49
        .= I *' (f1/.i) by A10,A1,A8,A9;
        hence thesis;
      end;
      f1 = g
      proof
A11:  for k being Nat st k in dom f1 holds f1.k = g.k
      proof
        let k be Nat;
        defpred P[Nat] means $1 in dom f1 implies f1.$1 = g.$1;
A12:    P[0]
        proof
          assume
A13:      not P[0];
          reconsider F = f1 as FinSequence by A5,FINSEQ_1:def 2;
          reconsider x = 0 as object;
          x in dom F by A13;
          hence contradiction by FINSEQ_3:24;
        end;
A15:    for a being Nat st P[a] holds P[a+1]
        proof
          let a be Nat such that
A16:      P[a] and
A17:      a+1 in dom f1;
          per cases;
            suppose
A18:          a in dom f1; then
A19:          f1/.a = f1.a by PARTFUN1:def 6
              .= g/.a by A6,A16,A18,PARTFUN1:def 6;
              thus f1.(a+1) = I *' (f1/.a) by A7,A17,A18
              .= g.(a+1) by A2,A6,A17,A18,A19;
            end;
            suppose
A20:          not a in dom f1;
            reconsider F = f1 as FinSequence by A5,FINSEQ_1:def 2;
A21:          a in dom F or a = 0 by A17,TOPREALA:2;
A22:          0  < 0 + len g by A1;
              1 <= 1 <= len g by A22,NAT_1:19; then
              1 in dom g by A4;
              hence thesis by A1,A2,A21,A20,FUNCT_1:49;
            end;
          end;
          for a being Nat holds P[a] from NAT_1:sch 2(A12,A15);
          hence thesis;
        end;
        reconsider f1 as FinSequence by A5,FINSEQ_1:def 2;
        thus thesis by A5,FINSEQ_1:def 3, A11;
       end;
       hence thesis;
     end;
