let s be SCM+FSA-State; :: thesis: for s9 being SCM-State holds (s +* s9) +* (s | NAT ) is SCM+FSA-State
let s9 be SCM-State; :: thesis: (s +* s9) +* (s | NAT ) is SCM+FSA-State
A1: dom SCM+FSA-OK = SCM+FSA-Memory by FUNCT_2:def 1;
then reconsider f = SCM+FSA-OK as non-empty ManySortedSet of SCM+FSA-Memory by PARTFUN1:def 4;
A2: dom s9 = dom SCM-OK by CARD_3:18
.= SCM-Memory by FUNCT_2:def 1 ;
now
let x be set ; :: thesis: ( x in dom s9 implies s9 . b1 in f . b1 )
assume A3: x in dom s9 ; :: thesis: s9 . b1 in f . b1
then A4: ( x in {NAT } \/ SCM-Data-Loc or x in NAT ) by A2, XBOOLE_0:def 3;
per cases ( x in {NAT } or x in SCM-Data-Loc or x in NAT ) by A4, XBOOLE_0:def 3;
end;
end;
then s +* s9 is SCM+FSA-State by A1, A2, PRE_CIRC:9, XBOOLE_1:7;
hence (s +* s9) +* (s | NAT ) is SCM+FSA-State by CARD_3:69; :: thesis: verum