theorem
  h*[#](p,d) = [#](h*p,h.d)
proof
  now
    let i be Element of NAT;
A1: dom(h*p)=Seg len(h*p) by FINSEQ_1:def 3;
A2: len(h*p) = len p & Seg len p = dom p by FINSEQ_1:def 3,FINSEQ_2:33;
    now
      per cases;
      suppose
A3:     i in dom p;
        hence h.([#](p,d).i) = h.(p.i) by Th20
          .= (h*p).i by A3,FUNCT_1:13
          .= [#](h*p,h.d).i by A2,A1,A3,Th20;
      end;
      suppose
A4:     not i in dom p;
        hence h.([#](p,d).i) = h.d by Th20
          .= [#](h*p,h.d).i by A2,A1,A4,Th20;
      end;
    end;
    hence (h*[#](p,d)).i = [#](h*p,h.d).i by FUNCT_2:15;
  end;
  hence thesis by FUNCT_2:63;
end;
