let D, E, D' be non empty set ; :: thesis: for d being Element of D
for d' being Element of D'
for F being Function of [:D,D':],E
for p' being FinSequence of D' holds F [;] d,(p' ^ <*d'*>) = (F [;] d,p') ^ <*(F . d,d')*>

let d be Element of D; :: thesis: for d' being Element of D'
for F being Function of [:D,D':],E
for p' being FinSequence of D' holds F [;] d,(p' ^ <*d'*>) = (F [;] d,p') ^ <*(F . d,d')*>

let d' be Element of D'; :: thesis: for F being Function of [:D,D':],E
for p' being FinSequence of D' holds F [;] d,(p' ^ <*d'*>) = (F [;] d,p') ^ <*(F . d,d')*>

let F be Function of [:D,D':],E; :: thesis: for p' being FinSequence of D' holds F [;] d,(p' ^ <*d'*>) = (F [;] d,p') ^ <*(F . d,d')*>
let p' be FinSequence of D'; :: thesis: F [;] d,(p' ^ <*d'*>) = (F [;] d,p') ^ <*(F . d,d')*>
set pd = p' ^ <*d'*>;
set q = F [;] d,p';
set r = F [;] d,(p' ^ <*d'*>);
set s = (F [;] d,p') ^ <*(F . d,d')*>;
set i = len p';
A1: len (F [;] d,p') = len p' by FINSEQ_2:92;
len (p' ^ <*d'*>) = (len p') + 1 by FINSEQ_2:19;
then A2: len (F [;] d,(p' ^ <*d'*>)) = (len p') + 1 by FINSEQ_2:92;
then A3: dom (F [;] d,(p' ^ <*d'*>)) = Seg ((len p') + 1) by FINSEQ_1:def 3;
A4: now
let j be Nat; :: thesis: ( j in dom (F [;] d,(p' ^ <*d'*>)) implies (F [;] d,(p' ^ <*d'*>)) . j = ((F [;] d,p') ^ <*(F . d,d')*>) . j )
assume A5: j in dom (F [;] d,(p' ^ <*d'*>)) ; :: thesis: (F [;] d,(p' ^ <*d'*>)) . j = ((F [;] d,p') ^ <*(F . d,d')*>) . j
now
per cases ( j in Seg (len p') or j = (len p') + 1 ) by A3, A5, FINSEQ_2:8;
suppose A6: j in Seg (len p') ; :: thesis: F . d,((p' ^ <*d'*>) . j) = ((F [;] d,p') ^ <*(F . d,d')*>) . j
then A7: j in dom (F [;] d,p') by A1, FINSEQ_1:def 3;
A8: Seg (len (F [;] d,p')) = dom (F [;] d,p') by FINSEQ_1:def 3;
Seg (len p') = dom p' by FINSEQ_1:def 3;
hence F . d,((p' ^ <*d'*>) . j) = F . d,(p' . j) by A6, FINSEQ_1:def 7
.= (F [;] d,p') . j by A7, FUNCOP_1:42
.= ((F [;] d,p') ^ <*(F . d,d')*>) . j by A1, A6, A8, FINSEQ_1:def 7 ;
:: thesis: verum
end;
suppose A9: j = (len p') + 1 ; :: thesis: F . d,((p' ^ <*d'*>) . j) = ((F [;] d,p') ^ <*(F . d,d')*>) . j
hence F . d,((p' ^ <*d'*>) . j) = F . d,d' by FINSEQ_1:59
.= ((F [;] d,p') ^ <*(F . d,d')*>) . j by A1, A9, FINSEQ_1:59 ;
:: thesis: verum
end;
end;
end;
hence (F [;] d,(p' ^ <*d'*>)) . j = ((F [;] d,p') ^ <*(F . d,d')*>) . j by A5, FUNCOP_1:42; :: thesis: verum
end;
len ((F [;] d,p') ^ <*(F . d,d')*>) = (len (F [;] d,p')) + 1 by FINSEQ_2:19;
hence F [;] d,(p' ^ <*d'*>) = (F [;] d,p') ^ <*(F . d,d')*> by A1, A2, A4, FINSEQ_2:10; :: thesis: verum