let I, J be Program of SCM+FSA; :: thesis: (Initialized I) +* (I ';' J) = Initialized (I ';' J)
A1: (dom I) \/ (dom (I ';' J)) = dom (I ';' J) by Th56, XBOOLE_1:12;
A2: now
let x be set ; :: thesis: ( x in dom (Initialized (I ';' J)) implies ((Initialized I) +* (I ';' J)) . b1 = (Initialized (I ';' J)) . b1 )
assume A3: x in dom (Initialized (I ';' J)) ; :: thesis: ((Initialized I) +* (I ';' J)) . b1 = (Initialized (I ';' J)) . b1
per cases ( x in dom (I ';' J) or x = intloc 0 or x = IC SCM+FSA ) by A3, Th44;
end;
end;
dom ((Initialized I) +* (I ';' J)) = (dom (Initialized I)) \/ (dom (I ';' J)) by FUNCT_4:def 1
.= (((dom I) \/ {(intloc 0)}) \/ {(IC SCM+FSA)}) \/ (dom (I ';' J)) by Th43
.= ((dom I) \/ {(intloc 0)}) \/ ({(IC SCM+FSA)} \/ (dom (I ';' J))) by XBOOLE_1:4
.= (dom I) \/ ({(intloc 0)} \/ ((dom (I ';' J)) \/ {(IC SCM+FSA)})) by XBOOLE_1:4
.= (dom I) \/ (({(intloc 0)} \/ (dom (I ';' J))) \/ {(IC SCM+FSA)}) by XBOOLE_1:4
.= ((dom I) \/ ((dom (I ';' J)) \/ {(intloc 0)})) \/ {(IC SCM+FSA)} by XBOOLE_1:4
.= ((dom (I ';' J)) \/ {(intloc 0)}) \/ {(IC SCM+FSA)} by A1, XBOOLE_1:4
.= dom (Initialized (I ';' J)) by Th43 ;
hence (Initialized I) +* (I ';' J) = Initialized (I ';' J) by A2, FUNCT_1:9; :: thesis: verum