reserve x,y for set,
  n,m for Nat,
  r,s for Real;

theorem Th11:
  for R be real-valued FinSequence, r,s be Real, n be Nat
  st len R = n+2 & R.(n+1) = r & R.(n+2) = s holds
  MIM(R) = MIM(R)|n ^ <* r-s,s *>
proof
  let R be real-valued FinSequence, r,s,n;
  set mf = MIM(R), nf = mf|n;
  assume that
A1: len R = n+2 and
A2: R.(n+1) = r and
A3: R.(n+2) = s;
A4: len mf = n+2 by A1,Def2;
  then
A5: dom mf = Seg(n+2) by FINSEQ_1:def 3;
A6: n+(1+1) = n+1+1;
  then n+1<=n+2 by NAT_1:11;
  then
A7: n<n+2 by NAT_1:13;
A8: len nf = n by A4,FINSEQ_1:59,NAT_1:11;
  then len (nf^<* r-s,s *>) = n + len <* r-s,s *> by FINSEQ_1:22;
  then
A9: len(nf^<* r-s,s *>) = n+2 by FINSEQ_1:44;
A10: n<=n+2 by NAT_1:11;
  now
    let m be Nat;
    assume
A11: m in dom mf;
    then
A12: 1<=m by A5,FINSEQ_1:1;
A13: m<=n+2 by A5,A11,FINSEQ_1:1;
    now
      per cases;
      case
A14:    m = n+2;
        hence mf.m = s by A1,A3,A4,Def2
          .= <* r-s,s *>.(n+2-n)
          .= (nf ^ <* r-s,s *>).m by A8,A9,A7,A14,FINSEQ_1:24;
      end;
      case
        m <> n+2;
        then m<n+2 by A13,XXREAL_0:1;
        then
A15:    m<=n+1 by A6,NAT_1:13;
A16:    len mf - 1 = n+1 by A4;
        now
          per cases;
          case
A17:        m = n+1;
            then
A18:        n<m by NAT_1:13;
            thus mf.m = r - s by A2,A3,A6,A12,A16,A17,Def2
              .= <* r-s,s *>.(n+1-n)
              .= (nf ^ <* r-s,s *>).m by A8,A9,A13,A17,A18,FINSEQ_1:24;
          end;
          case
            m <> n+1;
            then m<n+1 by A15,XXREAL_0:1;
            then
A19:        m<=n by NAT_1:13;
            then
A20:        m in Seg n by A12;
            1<=n by A12,A19,XXREAL_0:2;
            then
A21:        n in Seg(n+2) by A10;
A22:        dom nf = Seg len nf by FINSEQ_1:def 3;
            dom mf = Seg len mf by FINSEQ_1:def 3;
            hence mf.m = nf.m by A4,A20,A21,Th6
              .= (nf ^ <* r-s,s *>).m by A8,A20,A22,FINSEQ_1:def 7;
          end;
        end;
        hence mf.m = (nf ^ <* r-s,s *>).m;
      end;
    end;
    hence mf.m = (nf ^ <* r-s,s *>).m;
  end;
  hence thesis by A4,A9,FINSEQ_2:9;
end;
