let a, b be Data-Location ; :: thesis: for s being State of SCM holds
( (Exec (Divide a,b),s) . (IC SCM ) = succ (IC s) & ( a <> b implies (Exec (Divide a,b),s) . a = (s . a) div (s . b) ) & (Exec (Divide a,b),s) . b = (s . a) mod (s . b) & ( for c being Data-Location st c <> a & c <> b holds
(Exec (Divide a,b),s) . c = s . c ) )

let s be State of SCM ; :: thesis: ( (Exec (Divide a,b),s) . (IC SCM ) = succ (IC s) & ( a <> b implies (Exec (Divide a,b),s) . a = (s . a) div (s . b) ) & (Exec (Divide a,b),s) . b = (s . a) mod (s . b) & ( for c being Data-Location st c <> a & c <> b holds
(Exec (Divide a,b),s) . c = s . c ) )

reconsider S = s as SCM-State by PBOOLE:155;
reconsider mk = a, ml = b as Element of SCM-Data-Loc by Def2;
reconsider I = Divide a,b as Element of SCM-Instr ;
set S1 = SCM-Chg S,(I address_1 ),((S . (I address_1 )) div (S . (I address_2 )));
set S19 = SCM-Chg (SCM-Chg S,(I address_1 ),((S . (I address_1 )) div (S . (I address_2 )))),(I address_2 ),((S . (I address_1 )) mod (S . (I address_2 )));
reconsider i = 5 as Element of Segm 9 by NAT_1:45;
A1: I = [i,<*mk,ml*>] ;
then A2: I address_1 = mk by AMI_2:23;
A3: Exec (Divide a,b),s = SCM-Exec-Res I,S by AMI_2:def 17
.= SCM-Chg (SCM-Chg (SCM-Chg S,(I address_1 ),((S . (I address_1 )) div (S . (I address_2 )))),(I address_2 ),((S . (I address_1 )) mod (S . (I address_2 )))),(succ (IC S)) by A1, AMI_2:def 16 ;
hence (Exec (Divide a,b),s) . (IC SCM ) = succ (IC s) by Th4, AMI_2:16; :: thesis: ( ( a <> b implies (Exec (Divide a,b),s) . a = (s . a) div (s . b) ) & (Exec (Divide a,b),s) . b = (s . a) mod (s . b) & ( for c being Data-Location st c <> a & c <> b holds
(Exec (Divide a,b),s) . c = s . c ) )

A4: I address_2 = ml by A1, AMI_2:23;
hereby :: thesis: ( (Exec (Divide a,b),s) . b = (s . a) mod (s . b) & ( for c being Data-Location st c <> a & c <> b holds
(Exec (Divide a,b),s) . c = s . c ) )
assume A5: a <> b ; :: thesis: (Exec (Divide a,b),s) . a = (s . a) div (s . b)
thus (Exec (Divide a,b),s) . a = (SCM-Chg (SCM-Chg S,(I address_1 ),((S . (I address_1 )) div (S . (I address_2 )))),(I address_2 ),((S . (I address_1 )) mod (S . (I address_2 )))) . mk by A3, AMI_2:17
.= (SCM-Chg S,(I address_1 ),((S . (I address_1 )) div (S . (I address_2 )))) . mk by A4, A5, AMI_2:21
.= (s . a) div (s . b) by A2, A4, AMI_2:20 ; :: thesis: verum
end;
thus (Exec (Divide a,b),s) . b = (SCM-Chg (SCM-Chg S,(I address_1 ),((S . (I address_1 )) div (S . (I address_2 )))),(I address_2 ),((S . (I address_1 )) mod (S . (I address_2 )))) . ml by A3, AMI_2:17
.= (s . a) mod (s . b) by A2, A4, AMI_2:20 ; :: thesis: for c being Data-Location st c <> a & c <> b holds
(Exec (Divide a,b),s) . c = s . c

let c be Data-Location ; :: thesis: ( c <> a & c <> b implies (Exec (Divide a,b),s) . c = s . c )
reconsider mn = c as Element of SCM-Data-Loc by Def2;
assume that
A6: c <> a and
A7: c <> b ; :: thesis: (Exec (Divide a,b),s) . c = s . c
thus (Exec (Divide a,b),s) . c = (SCM-Chg (SCM-Chg S,(I address_1 ),((S . (I address_1 )) div (S . (I address_2 )))),(I address_2 ),((S . (I address_1 )) mod (S . (I address_2 )))) . mn by A3, AMI_2:17
.= (SCM-Chg S,(I address_1 ),((S . (I address_1 )) div (S . (I address_2 )))) . mn by A4, A7, AMI_2:21
.= s . c by A2, A6, AMI_2:21 ; :: thesis: verum