:: SCMPDS_1 semantic presentation
theorem Th1: :: SCMPDS_1:1
for b
1, b
2, b
3, b
4 being
set holds
(
<*b1,b2,b3,b4*> = <*b1,b2,b3*> ^ <*b4*> &
<*b1,b2,b3,b4*> = <*b1,b2*> ^ <*b3,b4*> &
<*b1,b2,b3,b4*> = <*b1*> ^ <*b2,b3,b4*> &
<*b1,b2,b3,b4*> = ((<*b1*> ^ <*b2*>) ^ <*b3*>) ^ <*b4*> )
by FINSEQ_4:89;
theorem Th2: :: SCMPDS_1:2
for b
1, b
2, b
3, b
4, b
5 being
set holds
(
<*b1,b2,b3,b4,b5*> = <*b1,b2,b3*> ^ <*b4,b5*> &
<*b1,b2,b3,b4,b5*> = <*b1,b2,b3,b4*> ^ <*b5*> &
<*b1,b2,b3,b4,b5*> = (((<*b1*> ^ <*b2*>) ^ <*b3*>) ^ <*b4*>) ^ <*b5*> &
<*b1,b2,b3,b4,b5*> = <*b1,b2*> ^ <*b3,b4,b5*> &
<*b1,b2,b3,b4,b5*> = <*b1*> ^ <*b2,b3,b4,b5*> )
by FINSEQ_4:90;
theorem Th3: :: SCMPDS_1:3
theorem Th4: :: SCMPDS_1:4
theorem Th5: :: SCMPDS_1:5
theorem Th6: :: SCMPDS_1:6
theorem Th7: :: SCMPDS_1:7
for b
1 being non
empty set for b
2, b
3, b
4, b
5 being
Element of b
1 holds
(
<*b2,b3,b4,b5*> /. 1
= b
2 &
<*b2,b3,b4,b5*> /. 2
= b
3 &
<*b2,b3,b4,b5*> /. 3
= b
4 &
<*b2,b3,b4,b5*> /. 4
= b
5 )
by FINSEQ_4:95;
theorem Th8: :: SCMPDS_1:8
for b
1 being non
empty set for b
2, b
3, b
4, b
5, b
6 being
Element of b
1 holds
(
<*b2,b3,b4,b5,b6*> /. 1
= b
2 &
<*b2,b3,b4,b5,b6*> /. 2
= b
3 &
<*b2,b3,b4,b5,b6*> /. 3
= b
4 &
<*b2,b3,b4,b5,b6*> /. 4
= b
5 &
<*b2,b3,b4,b5,b6*> /. 5
= b
6 )
by FINSEQ_4:96;
theorem Th9: :: SCMPDS_1:9
theorem Th10: :: SCMPDS_1:10
theorem Th11: :: SCMPDS_1:11
definition
canceled;canceled;func SCMPDS-Instr -> Subset of
[:(Segm 14),(((union {INT }) \/ NAT ) * ):] equals :: SCMPDS_1:def 3
((({ [0,<*b1*>] where B is Element of INT : verum } \/ { [1,<*b1*>] where B is Element of SCM-Data-Loc : verum } ) \/ { [b1,<*b2,b3*>] where B is Element of Segm 14, B is Element of SCM-Data-Loc , B is Element of INT : b1 in {2,3} } ) \/ { [b1,<*b2,b3,b4*>] where B is Element of Segm 14, B is Element of SCM-Data-Loc , B is Element of INT , B is Element of INT : b1 in {4,5,6,7,8} } ) \/ { [b1,<*b2,b3,b4,b5*>] where B is Element of Segm 14, B is Element of SCM-Data-Loc , B is Element of SCM-Data-Loc , B is Element of INT , B is Element of INT : b1 in {9,10,11,12,13} } ;
coherence
((({ [0,<*b1*>] where B is Element of INT : verum } \/ { [1,<*b1*>] where B is Element of SCM-Data-Loc : verum } ) \/ { [b1,<*b2,b3*>] where B is Element of Segm 14, B is Element of SCM-Data-Loc , B is Element of INT : b1 in {2,3} } ) \/ { [b1,<*b2,b3,b4*>] where B is Element of Segm 14, B is Element of SCM-Data-Loc , B is Element of INT , B is Element of INT : b1 in {4,5,6,7,8} } ) \/ { [b1,<*b2,b3,b4,b5*>] where B is Element of Segm 14, B is Element of SCM-Data-Loc , B is Element of SCM-Data-Loc , B is Element of INT , B is Element of INT : b1 in {9,10,11,12,13} } is Subset of [:(Segm 14),(((union {INT }) \/ NAT ) * ):]
end;
:: deftheorem Def1 SCMPDS_1:def 1 :
canceled;
:: deftheorem Def2 SCMPDS_1:def 2 :
canceled;
:: deftheorem Def3 defines SCMPDS-Instr SCMPDS_1:def 3 :
SCMPDS-Instr = ((({ [0,<*b1*>] where B is Element of INT : verum } \/ { [1,<*b1*>] where B is Element of SCM-Data-Loc : verum } ) \/ { [b1,<*b2,b3*>] where B is Element of Segm 14, B is Element of SCM-Data-Loc , B is Element of INT : b1 in {2,3} } ) \/ { [b1,<*b2,b3,b4*>] where B is Element of Segm 14, B is Element of SCM-Data-Loc , B is Element of INT , B is Element of INT : b1 in {4,5,6,7,8} } ) \/ { [b1,<*b2,b3,b4,b5*>] where B is Element of Segm 14, B is Element of SCM-Data-Loc , B is Element of SCM-Data-Loc , B is Element of INT , B is Element of INT : b1 in {9,10,11,12,13} } ;
theorem Th12: :: SCMPDS_1:12
canceled;
theorem Th13: :: SCMPDS_1:13
theorem Th14: :: SCMPDS_1:14
for b
1 being
Nat holds
not ( not b
1 = 0 & ( for b
2 being
Nat holds
not b
1 = (2 * b2) + 1 ) & ( for b
2 being
Nat holds
not b
1 = (2 * b2) + 2 ) )
theorem Th15: :: SCMPDS_1:15
canceled;
theorem Th16: :: SCMPDS_1:16
for b
1 being
Nat holds
( ( ex b
2 being
Nat st b
1 = (2 * b2) + 1 implies ( b
1 <> 0 & ( for b
2 being
Nat holds
not b
1 = (2 * b2) + 2 ) ) ) & ( ex b
2 being
Nat st b
1 = (2 * b2) + 2 implies ( b
1 <> 0 & ( for b
2 being
Nat holds
not b
1 = (2 * b2) + 1 ) ) ) )
:: deftheorem Def4 defines SCMPDS-OK SCMPDS_1:def 4 :
theorem Th17: :: SCMPDS_1:17
theorem Th18: :: SCMPDS_1:18
theorem Th19: :: SCMPDS_1:19
theorem Th20: :: SCMPDS_1:20
theorem Th21: :: SCMPDS_1:21
theorem Th22: :: SCMPDS_1:22
theorem Th23: :: SCMPDS_1:23
theorem Th24: :: SCMPDS_1:24
theorem Th25: :: SCMPDS_1:25
:: deftheorem Def5 defines IC SCMPDS_1:def 5 :
:: deftheorem Def6 defines SCM-Chg SCMPDS_1:def 6 :
theorem Th26: :: SCMPDS_1:26
theorem Th27: :: SCMPDS_1:27
theorem Th28: :: SCMPDS_1:28
:: deftheorem Def7 defines SCM-Chg SCMPDS_1:def 7 :
theorem Th29: :: SCMPDS_1:29
theorem Th30: :: SCMPDS_1:30
theorem Th31: :: SCMPDS_1:31
theorem Th32: :: SCMPDS_1:32
:: deftheorem Def8 defines Address_Add SCMPDS_1:def 8 :
:: deftheorem Def9 defines jump_address SCMPDS_1:def 9 :
:: deftheorem Def10 defines address_1 SCMPDS_1:def 10 :
theorem Th33: :: SCMPDS_1:33
:: deftheorem Def11 defines const_INT SCMPDS_1:def 11 :
theorem Th34: :: SCMPDS_1:34
:: deftheorem Def12 defines P21address SCMPDS_1:def 12 :
:: deftheorem Def13 defines P22const SCMPDS_1:def 13 :
theorem Th35: :: SCMPDS_1:35
:: deftheorem Def14 defines P31address SCMPDS_1:def 14 :
:: deftheorem Def15 defines P32const SCMPDS_1:def 15 :
:: deftheorem Def16 defines P33const SCMPDS_1:def 16 :
theorem Th36: :: SCMPDS_1:36
definition
let c
1 be
Element of
SCMPDS-Instr ;
given c
2, c
3 being
Element of
SCM-Data-Loc , c
4, c
5 being
Integer, c
6 being
Element of
Segm 14
such that E23:
c
1 = [c6,<*c2,c3,c4,c5*>]
;
func c
1 P41address -> Element of
SCM-Data-Loc means :
Def17:
:: SCMPDS_1:def 17
ex b
1 being
FinSequence of
SCM-Data-Loc \/ INT st
( b
1 = a
1 `2 & a
2 = b
1 /. 1 );
existence
ex b1 being Element of SCM-Data-Loc ex b2 being FinSequence of SCM-Data-Loc \/ INT st
( b2 = c1 `2 & b1 = b2 /. 1 )
uniqueness
for b1, b2 being Element of SCM-Data-Loc holds
( ex b3 being FinSequence of SCM-Data-Loc \/ INT st
( b3 = c1 `2 & b1 = b3 /. 1 ) & ex b3 being FinSequence of SCM-Data-Loc \/ INT st
( b3 = c1 `2 & b2 = b3 /. 1 ) implies b1 = b2 )
;
func c
1 P42address -> Element of
SCM-Data-Loc means :
Def18:
:: SCMPDS_1:def 18
ex b
1 being
FinSequence of
SCM-Data-Loc \/ INT st
( b
1 = a
1 `2 & a
2 = b
1 /. 2 );
existence
ex b1 being Element of SCM-Data-Loc ex b2 being FinSequence of SCM-Data-Loc \/ INT st
( b2 = c1 `2 & b1 = b2 /. 2 )
uniqueness
for b1, b2 being Element of SCM-Data-Loc holds
( ex b3 being FinSequence of SCM-Data-Loc \/ INT st
( b3 = c1 `2 & b1 = b3 /. 2 ) & ex b3 being FinSequence of SCM-Data-Loc \/ INT st
( b3 = c1 `2 & b2 = b3 /. 2 ) implies b1 = b2 )
;
func c
1 P43const -> Integer means :
Def19:
:: SCMPDS_1:def 19
ex b
1 being
FinSequence of
SCM-Data-Loc \/ INT st
( b
1 = a
1 `2 & a
2 = b
1 /. 3 );
existence
ex b1 being Integerex b2 being FinSequence of SCM-Data-Loc \/ INT st
( b2 = c1 `2 & b1 = b2 /. 3 )
uniqueness
for b1, b2 being Integer holds
( ex b3 being FinSequence of SCM-Data-Loc \/ INT st
( b3 = c1 `2 & b1 = b3 /. 3 ) & ex b3 being FinSequence of SCM-Data-Loc \/ INT st
( b3 = c1 `2 & b2 = b3 /. 3 ) implies b1 = b2 )
;
func c
1 P44const -> Integer means :
Def20:
:: SCMPDS_1:def 20
ex b
1 being
FinSequence of
SCM-Data-Loc \/ INT st
( b
1 = a
1 `2 & a
2 = b
1 /. 4 );
existence
ex b1 being Integerex b2 being FinSequence of SCM-Data-Loc \/ INT st
( b2 = c1 `2 & b1 = b2 /. 4 )
uniqueness
for b1, b2 being Integer holds
( ex b3 being FinSequence of SCM-Data-Loc \/ INT st
( b3 = c1 `2 & b1 = b3 /. 4 ) & ex b3 being FinSequence of SCM-Data-Loc \/ INT st
( b3 = c1 `2 & b2 = b3 /. 4 ) implies b1 = b2 )
;
end;
:: deftheorem Def17 defines P41address SCMPDS_1:def 17 :
:: deftheorem Def18 defines P42address SCMPDS_1:def 18 :
:: deftheorem Def19 defines P43const SCMPDS_1:def 19 :
:: deftheorem Def20 defines P44const SCMPDS_1:def 20 :
theorem Th37: :: SCMPDS_1:37
:: deftheorem Def21 defines PopInstrLoc SCMPDS_1:def 21 :
:: deftheorem Def22 defines RetSP SCMPDS_1:def 22 :
:: deftheorem Def23 defines RetIC SCMPDS_1:def 23 :
definition
let c
1 be
Element of
SCMPDS-Instr ;
let c
2 be
SCMPDS-State;
func SCM-Exec-Res c
1,c
2 -> SCMPDS-State equals :: SCMPDS_1:def 24
SCM-Chg a
2,
(jump_address a2,(a1 const_INT )) if ex b
1 being
Integer st a
1 = [0,<*b1*>] SCM-Chg (SCM-Chg a2,(a1 P21address ),(a1 P22const )),
(Next (IC a2)) if ex b
1 being
Element of
SCM-Data-Loc ex b
2 being
Integer st a
1 = [2,<*b1,b2*>] SCM-Chg (SCM-Chg a2,(Address_Add a2,(a1 P21address ),(a1 P22const )),(IC a2)),
(Next (IC a2)) if ex b
1 being
Element of
SCM-Data-Loc ex b
2 being
Integer st a
1 = [3,<*b1,b2*>] SCM-Chg (SCM-Chg a2,(a1 address_1 ),(a2 . (Address_Add a2,(a1 address_1 ),RetSP ))),
(PopInstrLoc a2,(Address_Add a2,(a1 address_1 ),RetIC )) if ex b
1 being
Element of
SCM-Data-Loc st a
1 = [1,<*b1*>] SCM-Chg a
2,
(IFEQ (a2 . (Address_Add a2,(a1 P31address ),(a1 P32const ))),0,(Next (IC a2)),(jump_address a2,(a1 P33const ))) if ex b
1 being
Element of
SCM-Data-Loc ex b
2, b
3 being
Integer st a
1 = [4,<*b1,b2,b3*>] SCM-Chg a
2,
(IFGT (a2 . (Address_Add a2,(a1 P31address ),(a1 P32const ))),0,(Next (IC a2)),(jump_address a2,(a1 P33const ))) if ex b
1 being
Element of
SCM-Data-Loc ex b
2, b
3 being
Integer st a
1 = [5,<*b1,b2,b3*>] SCM-Chg a
2,
(IFGT 0,(a2 . (Address_Add a2,(a1 P31address ),(a1 P32const ))),(Next (IC a2)),(jump_address a2,(a1 P33const ))) if ex b
1 being
Element of
SCM-Data-Loc ex b
2, b
3 being
Integer st a
1 = [6,<*b1,b2,b3*>] SCM-Chg (SCM-Chg a2,(Address_Add a2,(a1 P31address ),(a1 P32const )),(a1 P33const )),
(Next (IC a2)) if ex b
1 being
Element of
SCM-Data-Loc ex b
2, b
3 being
Integer st a
1 = [7,<*b1,b2,b3*>] SCM-Chg (SCM-Chg a2,(Address_Add a2,(a1 P31address ),(a1 P32const )),((a2 . (Address_Add a2,(a1 P31address ),(a1 P32const ))) + (a1 P33const ))),
(Next (IC a2)) if ex b
1 being
Element of
SCM-Data-Loc ex b
2, b
3 being
Integer st a
1 = [8,<*b1,b2,b3*>] SCM-Chg (SCM-Chg a2,(Address_Add a2,(a1 P41address ),(a1 P43const )),((a2 . (Address_Add a2,(a1 P41address ),(a1 P43const ))) + (a2 . (Address_Add a2,(a1 P42address ),(a1 P44const ))))),
(Next (IC a2)) if ex b
1, b
2 being
Element of
SCM-Data-Loc ex b
3, b
4 being
Integer st a
1 = [9,<*b1,b2,b3,b4*>] SCM-Chg (SCM-Chg a2,(Address_Add a2,(a1 P41address ),(a1 P43const )),((a2 . (Address_Add a2,(a1 P41address ),(a1 P43const ))) - (a2 . (Address_Add a2,(a1 P42address ),(a1 P44const ))))),
(Next (IC a2)) if ex b
1, b
2 being
Element of
SCM-Data-Loc ex b
3, b
4 being
Integer st a
1 = [10,<*b1,b2,b3,b4*>] SCM-Chg (SCM-Chg a2,(Address_Add a2,(a1 P41address ),(a1 P43const )),((a2 . (Address_Add a2,(a1 P41address ),(a1 P43const ))) * (a2 . (Address_Add a2,(a1 P42address ),(a1 P44const ))))),
(Next (IC a2)) if ex b
1, b
2 being
Element of
SCM-Data-Loc ex b
3, b
4 being
Integer st a
1 = [11,<*b1,b2,b3,b4*>] SCM-Chg (SCM-Chg a2,(Address_Add a2,(a1 P41address ),(a1 P43const )),(a2 . (Address_Add a2,(a1 P42address ),(a1 P44const )))),
(Next (IC a2)) if ex b
1, b
2 being
Element of
SCM-Data-Loc ex b
3, b
4 being
Integer st a
1 = [13,<*b1,b2,b3,b4*>] SCM-Chg (SCM-Chg (SCM-Chg a2,(Address_Add a2,(a1 P41address ),(a1 P43const )),((a2 . (Address_Add a2,(a1 P41address ),(a1 P43const ))) div (a2 . (Address_Add a2,(a1 P42address ),(a1 P44const ))))),(Address_Add a2,(a1 P42address ),(a1 P44const )),((a2 . (Address_Add a2,(a1 P41address ),(a1 P43const ))) mod (a2 . (Address_Add a2,(a1 P42address ),(a1 P44const ))))),
(Next (IC a2)) if ex b
1, b
2 being
Element of
SCM-Data-Loc ex b
3, b
4 being
Integer st a
1 = [12,<*b1,b2,b3,b4*>] otherwise a
2;
coherence
( ( ex b1 being Integer st c1 = [0,<*b1*>] implies SCM-Chg c2,(jump_address c2,(c1 const_INT )) is SCMPDS-State ) & ( ex b1 being Element of SCM-Data-Loc ex b2 being Integer st c1 = [2,<*b1,b2*>] implies SCM-Chg (SCM-Chg c2,(c1 P21address ),(c1 P22const )),(Next (IC c2)) is SCMPDS-State ) & ( ex b1 being Element of SCM-Data-Loc ex b2 being Integer st c1 = [3,<*b1,b2*>] implies SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P21address ),(c1 P22const )),(IC c2)),(Next (IC c2)) is SCMPDS-State ) & ( ex b1 being Element of SCM-Data-Loc st c1 = [1,<*b1*>] implies SCM-Chg (SCM-Chg c2,(c1 address_1 ),(c2 . (Address_Add c2,(c1 address_1 ),RetSP ))),(PopInstrLoc c2,(Address_Add c2,(c1 address_1 ),RetIC )) is SCMPDS-State ) & ( ex b1 being Element of SCM-Data-Loc ex b2, b3 being Integer st c1 = [4,<*b1,b2,b3*>] implies SCM-Chg c2,(IFEQ (c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),0,(Next (IC c2)),(jump_address c2,(c1 P33const ))) is SCMPDS-State ) & ( ex b1 being Element of SCM-Data-Loc ex b2, b3 being Integer st c1 = [5,<*b1,b2,b3*>] implies SCM-Chg c2,(IFGT (c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),0,(Next (IC c2)),(jump_address c2,(c1 P33const ))) is SCMPDS-State ) & ( ex b1 being Element of SCM-Data-Loc ex b2, b3 being Integer st c1 = [6,<*b1,b2,b3*>] implies SCM-Chg c2,(IFGT 0,(c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),(Next (IC c2)),(jump_address c2,(c1 P33const ))) is SCMPDS-State ) & ( ex b1 being Element of SCM-Data-Loc ex b2, b3 being Integer st c1 = [7,<*b1,b2,b3*>] implies SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P31address ),(c1 P32const )),(c1 P33const )),(Next (IC c2)) is SCMPDS-State ) & ( ex b1 being Element of SCM-Data-Loc ex b2, b3 being Integer st c1 = [8,<*b1,b2,b3*>] implies SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P31address ),(c1 P32const )),((c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))) + (c1 P33const ))),(Next (IC c2)) is SCMPDS-State ) & ( ex b1, b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [9,<*b1,b2,b3,b4*>] implies SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) + (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) is SCMPDS-State ) & ( ex b1, b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [10,<*b1,b2,b3,b4*>] implies SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) - (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) is SCMPDS-State ) & ( ex b1, b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [11,<*b1,b2,b3,b4*>] implies SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) * (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) is SCMPDS-State ) & ( ex b1, b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [13,<*b1,b2,b3,b4*>] implies SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),(c2 . (Address_Add c2,(c1 P42address ),(c1 P44const )))),(Next (IC c2)) is SCMPDS-State ) & ( ex b1, b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [12,<*b1,b2,b3,b4*>] implies SCM-Chg (SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) div (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Address_Add c2,(c1 P42address ),(c1 P44const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) mod (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) is SCMPDS-State ) & ( ( for b1 being Integer holds
not c1 = [0,<*b1*>] ) & ( for b1 being Element of SCM-Data-Loc
for b2 being Integer holds
not c1 = [2,<*b1,b2*>] ) & ( for b1 being Element of SCM-Data-Loc
for b2 being Integer holds
not c1 = [3,<*b1,b2*>] ) & ( for b1 being Element of SCM-Data-Loc holds
not c1 = [1,<*b1*>] ) & ( for b1 being Element of SCM-Data-Loc
for b2, b3 being Integer holds
not c1 = [4,<*b1,b2,b3*>] ) & ( for b1 being Element of SCM-Data-Loc
for b2, b3 being Integer holds
not c1 = [5,<*b1,b2,b3*>] ) & ( for b1 being Element of SCM-Data-Loc
for b2, b3 being Integer holds
not c1 = [6,<*b1,b2,b3*>] ) & ( for b1 being Element of SCM-Data-Loc
for b2, b3 being Integer holds
not c1 = [7,<*b1,b2,b3*>] ) & ( for b1 being Element of SCM-Data-Loc
for b2, b3 being Integer holds
not c1 = [8,<*b1,b2,b3*>] ) & ( for b1, b2 being Element of SCM-Data-Loc
for b3, b4 being Integer holds
not c1 = [9,<*b1,b2,b3,b4*>] ) & ( for b1, b2 being Element of SCM-Data-Loc
for b3, b4 being Integer holds
not c1 = [10,<*b1,b2,b3,b4*>] ) & ( for b1, b2 being Element of SCM-Data-Loc
for b3, b4 being Integer holds
not c1 = [11,<*b1,b2,b3,b4*>] ) & ( for b1, b2 being Element of SCM-Data-Loc
for b3, b4 being Integer holds
not c1 = [13,<*b1,b2,b3,b4*>] ) & ( for b1, b2 being Element of SCM-Data-Loc
for b3, b4 being Integer holds
not c1 = [12,<*b1,b2,b3,b4*>] ) implies c2 is SCMPDS-State ) )
;
consistency
for b1 being SCMPDS-State holds
( ( ex b2 being Integer st c1 = [0,<*b2*>] & ex b2 being Element of SCM-Data-Loc ex b3 being Integer st c1 = [2,<*b2,b3*>] implies ( b1 = SCM-Chg c2,(jump_address c2,(c1 const_INT )) iff b1 = SCM-Chg (SCM-Chg c2,(c1 P21address ),(c1 P22const )),(Next (IC c2)) ) ) & ( ex b2 being Integer st c1 = [0,<*b2*>] & ex b2 being Element of SCM-Data-Loc ex b3 being Integer st c1 = [3,<*b2,b3*>] implies ( b1 = SCM-Chg c2,(jump_address c2,(c1 const_INT )) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P21address ),(c1 P22const )),(IC c2)),(Next (IC c2)) ) ) & ( ex b2 being Integer st c1 = [0,<*b2*>] & ex b2 being Element of SCM-Data-Loc st c1 = [1,<*b2*>] implies ( b1 = SCM-Chg c2,(jump_address c2,(c1 const_INT )) iff b1 = SCM-Chg (SCM-Chg c2,(c1 address_1 ),(c2 . (Address_Add c2,(c1 address_1 ),RetSP ))),(PopInstrLoc c2,(Address_Add c2,(c1 address_1 ),RetIC )) ) ) & ( ex b2 being Integer st c1 = [0,<*b2*>] & ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [4,<*b2,b3,b4*>] implies ( b1 = SCM-Chg c2,(jump_address c2,(c1 const_INT )) iff b1 = SCM-Chg c2,(IFEQ (c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),0,(Next (IC c2)),(jump_address c2,(c1 P33const ))) ) ) & ( ex b2 being Integer st c1 = [0,<*b2*>] & ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [5,<*b2,b3,b4*>] implies ( b1 = SCM-Chg c2,(jump_address c2,(c1 const_INT )) iff b1 = SCM-Chg c2,(IFGT (c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),0,(Next (IC c2)),(jump_address c2,(c1 P33const ))) ) ) & ( ex b2 being Integer st c1 = [0,<*b2*>] & ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [6,<*b2,b3,b4*>] implies ( b1 = SCM-Chg c2,(jump_address c2,(c1 const_INT )) iff b1 = SCM-Chg c2,(IFGT 0,(c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),(Next (IC c2)),(jump_address c2,(c1 P33const ))) ) ) & ( ex b2 being Integer st c1 = [0,<*b2*>] & ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [7,<*b2,b3,b4*>] implies ( b1 = SCM-Chg c2,(jump_address c2,(c1 const_INT )) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P31address ),(c1 P32const )),(c1 P33const )),(Next (IC c2)) ) ) & ( ex b2 being Integer st c1 = [0,<*b2*>] & ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [8,<*b2,b3,b4*>] implies ( b1 = SCM-Chg c2,(jump_address c2,(c1 const_INT )) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P31address ),(c1 P32const )),((c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))) + (c1 P33const ))),(Next (IC c2)) ) ) & ( ex b2 being Integer st c1 = [0,<*b2*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [9,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg c2,(jump_address c2,(c1 const_INT )) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) + (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2 being Integer st c1 = [0,<*b2*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [10,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg c2,(jump_address c2,(c1 const_INT )) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) - (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2 being Integer st c1 = [0,<*b2*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [11,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg c2,(jump_address c2,(c1 const_INT )) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) * (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2 being Integer st c1 = [0,<*b2*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [13,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg c2,(jump_address c2,(c1 const_INT )) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),(c2 . (Address_Add c2,(c1 P42address ),(c1 P44const )))),(Next (IC c2)) ) ) & ( ex b2 being Integer st c1 = [0,<*b2*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [12,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg c2,(jump_address c2,(c1 const_INT )) iff b1 = SCM-Chg (SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) div (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Address_Add c2,(c1 P42address ),(c1 P44const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) mod (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3 being Integer st c1 = [2,<*b2,b3*>] & ex b2 being Element of SCM-Data-Loc ex b3 being Integer st c1 = [3,<*b2,b3*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(c1 P21address ),(c1 P22const )),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P21address ),(c1 P22const )),(IC c2)),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3 being Integer st c1 = [2,<*b2,b3*>] & ex b2 being Element of SCM-Data-Loc st c1 = [1,<*b2*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(c1 P21address ),(c1 P22const )),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg c2,(c1 address_1 ),(c2 . (Address_Add c2,(c1 address_1 ),RetSP ))),(PopInstrLoc c2,(Address_Add c2,(c1 address_1 ),RetIC )) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3 being Integer st c1 = [2,<*b2,b3*>] & ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [4,<*b2,b3,b4*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(c1 P21address ),(c1 P22const )),(Next (IC c2)) iff b1 = SCM-Chg c2,(IFEQ (c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),0,(Next (IC c2)),(jump_address c2,(c1 P33const ))) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3 being Integer st c1 = [2,<*b2,b3*>] & ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [5,<*b2,b3,b4*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(c1 P21address ),(c1 P22const )),(Next (IC c2)) iff b1 = SCM-Chg c2,(IFGT (c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),0,(Next (IC c2)),(jump_address c2,(c1 P33const ))) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3 being Integer st c1 = [2,<*b2,b3*>] & ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [6,<*b2,b3,b4*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(c1 P21address ),(c1 P22const )),(Next (IC c2)) iff b1 = SCM-Chg c2,(IFGT 0,(c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),(Next (IC c2)),(jump_address c2,(c1 P33const ))) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3 being Integer st c1 = [2,<*b2,b3*>] & ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [7,<*b2,b3,b4*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(c1 P21address ),(c1 P22const )),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P31address ),(c1 P32const )),(c1 P33const )),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3 being Integer st c1 = [2,<*b2,b3*>] & ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [8,<*b2,b3,b4*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(c1 P21address ),(c1 P22const )),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P31address ),(c1 P32const )),((c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))) + (c1 P33const ))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3 being Integer st c1 = [2,<*b2,b3*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [9,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(c1 P21address ),(c1 P22const )),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) + (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3 being Integer st c1 = [2,<*b2,b3*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [10,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(c1 P21address ),(c1 P22const )),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) - (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3 being Integer st c1 = [2,<*b2,b3*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [11,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(c1 P21address ),(c1 P22const )),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) * (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3 being Integer st c1 = [2,<*b2,b3*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [13,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(c1 P21address ),(c1 P22const )),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),(c2 . (Address_Add c2,(c1 P42address ),(c1 P44const )))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3 being Integer st c1 = [2,<*b2,b3*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [12,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(c1 P21address ),(c1 P22const )),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) div (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Address_Add c2,(c1 P42address ),(c1 P44const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) mod (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3 being Integer st c1 = [3,<*b2,b3*>] & ex b2 being Element of SCM-Data-Loc st c1 = [1,<*b2*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P21address ),(c1 P22const )),(IC c2)),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg c2,(c1 address_1 ),(c2 . (Address_Add c2,(c1 address_1 ),RetSP ))),(PopInstrLoc c2,(Address_Add c2,(c1 address_1 ),RetIC )) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3 being Integer st c1 = [3,<*b2,b3*>] & ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [4,<*b2,b3,b4*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P21address ),(c1 P22const )),(IC c2)),(Next (IC c2)) iff b1 = SCM-Chg c2,(IFEQ (c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),0,(Next (IC c2)),(jump_address c2,(c1 P33const ))) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3 being Integer st c1 = [3,<*b2,b3*>] & ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [5,<*b2,b3,b4*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P21address ),(c1 P22const )),(IC c2)),(Next (IC c2)) iff b1 = SCM-Chg c2,(IFGT (c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),0,(Next (IC c2)),(jump_address c2,(c1 P33const ))) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3 being Integer st c1 = [3,<*b2,b3*>] & ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [6,<*b2,b3,b4*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P21address ),(c1 P22const )),(IC c2)),(Next (IC c2)) iff b1 = SCM-Chg c2,(IFGT 0,(c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),(Next (IC c2)),(jump_address c2,(c1 P33const ))) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3 being Integer st c1 = [3,<*b2,b3*>] & ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [7,<*b2,b3,b4*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P21address ),(c1 P22const )),(IC c2)),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P31address ),(c1 P32const )),(c1 P33const )),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3 being Integer st c1 = [3,<*b2,b3*>] & ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [8,<*b2,b3,b4*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P21address ),(c1 P22const )),(IC c2)),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P31address ),(c1 P32const )),((c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))) + (c1 P33const ))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3 being Integer st c1 = [3,<*b2,b3*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [9,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P21address ),(c1 P22const )),(IC c2)),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) + (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3 being Integer st c1 = [3,<*b2,b3*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [10,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P21address ),(c1 P22const )),(IC c2)),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) - (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3 being Integer st c1 = [3,<*b2,b3*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [11,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P21address ),(c1 P22const )),(IC c2)),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) * (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3 being Integer st c1 = [3,<*b2,b3*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [13,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P21address ),(c1 P22const )),(IC c2)),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),(c2 . (Address_Add c2,(c1 P42address ),(c1 P44const )))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3 being Integer st c1 = [3,<*b2,b3*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [12,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P21address ),(c1 P22const )),(IC c2)),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) div (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Address_Add c2,(c1 P42address ),(c1 P44const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) mod (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc st c1 = [1,<*b2*>] & ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [4,<*b2,b3,b4*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(c1 address_1 ),(c2 . (Address_Add c2,(c1 address_1 ),RetSP ))),(PopInstrLoc c2,(Address_Add c2,(c1 address_1 ),RetIC )) iff b1 = SCM-Chg c2,(IFEQ (c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),0,(Next (IC c2)),(jump_address c2,(c1 P33const ))) ) ) & ( ex b2 being Element of SCM-Data-Loc st c1 = [1,<*b2*>] & ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [5,<*b2,b3,b4*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(c1 address_1 ),(c2 . (Address_Add c2,(c1 address_1 ),RetSP ))),(PopInstrLoc c2,(Address_Add c2,(c1 address_1 ),RetIC )) iff b1 = SCM-Chg c2,(IFGT (c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),0,(Next (IC c2)),(jump_address c2,(c1 P33const ))) ) ) & ( ex b2 being Element of SCM-Data-Loc st c1 = [1,<*b2*>] & ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [6,<*b2,b3,b4*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(c1 address_1 ),(c2 . (Address_Add c2,(c1 address_1 ),RetSP ))),(PopInstrLoc c2,(Address_Add c2,(c1 address_1 ),RetIC )) iff b1 = SCM-Chg c2,(IFGT 0,(c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),(Next (IC c2)),(jump_address c2,(c1 P33const ))) ) ) & ( ex b2 being Element of SCM-Data-Loc st c1 = [1,<*b2*>] & ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [7,<*b2,b3,b4*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(c1 address_1 ),(c2 . (Address_Add c2,(c1 address_1 ),RetSP ))),(PopInstrLoc c2,(Address_Add c2,(c1 address_1 ),RetIC )) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P31address ),(c1 P32const )),(c1 P33const )),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc st c1 = [1,<*b2*>] & ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [8,<*b2,b3,b4*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(c1 address_1 ),(c2 . (Address_Add c2,(c1 address_1 ),RetSP ))),(PopInstrLoc c2,(Address_Add c2,(c1 address_1 ),RetIC )) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P31address ),(c1 P32const )),((c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))) + (c1 P33const ))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc st c1 = [1,<*b2*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [9,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(c1 address_1 ),(c2 . (Address_Add c2,(c1 address_1 ),RetSP ))),(PopInstrLoc c2,(Address_Add c2,(c1 address_1 ),RetIC )) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) + (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc st c1 = [1,<*b2*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [10,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(c1 address_1 ),(c2 . (Address_Add c2,(c1 address_1 ),RetSP ))),(PopInstrLoc c2,(Address_Add c2,(c1 address_1 ),RetIC )) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) - (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc st c1 = [1,<*b2*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [11,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(c1 address_1 ),(c2 . (Address_Add c2,(c1 address_1 ),RetSP ))),(PopInstrLoc c2,(Address_Add c2,(c1 address_1 ),RetIC )) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) * (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc st c1 = [1,<*b2*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [13,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(c1 address_1 ),(c2 . (Address_Add c2,(c1 address_1 ),RetSP ))),(PopInstrLoc c2,(Address_Add c2,(c1 address_1 ),RetIC )) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),(c2 . (Address_Add c2,(c1 P42address ),(c1 P44const )))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc st c1 = [1,<*b2*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [12,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(c1 address_1 ),(c2 . (Address_Add c2,(c1 address_1 ),RetSP ))),(PopInstrLoc c2,(Address_Add c2,(c1 address_1 ),RetIC )) iff b1 = SCM-Chg (SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) div (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Address_Add c2,(c1 P42address ),(c1 P44const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) mod (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [4,<*b2,b3,b4*>] & ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [5,<*b2,b3,b4*>] implies ( b1 = SCM-Chg c2,(IFEQ (c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),0,(Next (IC c2)),(jump_address c2,(c1 P33const ))) iff b1 = SCM-Chg c2,(IFGT (c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),0,(Next (IC c2)),(jump_address c2,(c1 P33const ))) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [4,<*b2,b3,b4*>] & ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [6,<*b2,b3,b4*>] implies ( b1 = SCM-Chg c2,(IFEQ (c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),0,(Next (IC c2)),(jump_address c2,(c1 P33const ))) iff b1 = SCM-Chg c2,(IFGT 0,(c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),(Next (IC c2)),(jump_address c2,(c1 P33const ))) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [4,<*b2,b3,b4*>] & ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [7,<*b2,b3,b4*>] implies ( b1 = SCM-Chg c2,(IFEQ (c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),0,(Next (IC c2)),(jump_address c2,(c1 P33const ))) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P31address ),(c1 P32const )),(c1 P33const )),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [4,<*b2,b3,b4*>] & ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [8,<*b2,b3,b4*>] implies ( b1 = SCM-Chg c2,(IFEQ (c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),0,(Next (IC c2)),(jump_address c2,(c1 P33const ))) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P31address ),(c1 P32const )),((c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))) + (c1 P33const ))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [4,<*b2,b3,b4*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [9,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg c2,(IFEQ (c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),0,(Next (IC c2)),(jump_address c2,(c1 P33const ))) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) + (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [4,<*b2,b3,b4*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [10,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg c2,(IFEQ (c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),0,(Next (IC c2)),(jump_address c2,(c1 P33const ))) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) - (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [4,<*b2,b3,b4*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [11,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg c2,(IFEQ (c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),0,(Next (IC c2)),(jump_address c2,(c1 P33const ))) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) * (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [4,<*b2,b3,b4*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [13,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg c2,(IFEQ (c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),0,(Next (IC c2)),(jump_address c2,(c1 P33const ))) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),(c2 . (Address_Add c2,(c1 P42address ),(c1 P44const )))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [4,<*b2,b3,b4*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [12,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg c2,(IFEQ (c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),0,(Next (IC c2)),(jump_address c2,(c1 P33const ))) iff b1 = SCM-Chg (SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) div (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Address_Add c2,(c1 P42address ),(c1 P44const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) mod (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [5,<*b2,b3,b4*>] & ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [6,<*b2,b3,b4*>] implies ( b1 = SCM-Chg c2,(IFGT (c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),0,(Next (IC c2)),(jump_address c2,(c1 P33const ))) iff b1 = SCM-Chg c2,(IFGT 0,(c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),(Next (IC c2)),(jump_address c2,(c1 P33const ))) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [5,<*b2,b3,b4*>] & ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [7,<*b2,b3,b4*>] implies ( b1 = SCM-Chg c2,(IFGT (c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),0,(Next (IC c2)),(jump_address c2,(c1 P33const ))) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P31address ),(c1 P32const )),(c1 P33const )),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [5,<*b2,b3,b4*>] & ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [8,<*b2,b3,b4*>] implies ( b1 = SCM-Chg c2,(IFGT (c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),0,(Next (IC c2)),(jump_address c2,(c1 P33const ))) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P31address ),(c1 P32const )),((c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))) + (c1 P33const ))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [5,<*b2,b3,b4*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [9,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg c2,(IFGT (c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),0,(Next (IC c2)),(jump_address c2,(c1 P33const ))) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) + (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [5,<*b2,b3,b4*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [10,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg c2,(IFGT (c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),0,(Next (IC c2)),(jump_address c2,(c1 P33const ))) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) - (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [5,<*b2,b3,b4*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [11,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg c2,(IFGT (c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),0,(Next (IC c2)),(jump_address c2,(c1 P33const ))) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) * (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [5,<*b2,b3,b4*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [13,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg c2,(IFGT (c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),0,(Next (IC c2)),(jump_address c2,(c1 P33const ))) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),(c2 . (Address_Add c2,(c1 P42address ),(c1 P44const )))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [5,<*b2,b3,b4*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [12,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg c2,(IFGT (c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),0,(Next (IC c2)),(jump_address c2,(c1 P33const ))) iff b1 = SCM-Chg (SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) div (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Address_Add c2,(c1 P42address ),(c1 P44const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) mod (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [6,<*b2,b3,b4*>] & ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [7,<*b2,b3,b4*>] implies ( b1 = SCM-Chg c2,(IFGT 0,(c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),(Next (IC c2)),(jump_address c2,(c1 P33const ))) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P31address ),(c1 P32const )),(c1 P33const )),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [6,<*b2,b3,b4*>] & ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [8,<*b2,b3,b4*>] implies ( b1 = SCM-Chg c2,(IFGT 0,(c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),(Next (IC c2)),(jump_address c2,(c1 P33const ))) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P31address ),(c1 P32const )),((c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))) + (c1 P33const ))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [6,<*b2,b3,b4*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [9,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg c2,(IFGT 0,(c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),(Next (IC c2)),(jump_address c2,(c1 P33const ))) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) + (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [6,<*b2,b3,b4*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [10,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg c2,(IFGT 0,(c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),(Next (IC c2)),(jump_address c2,(c1 P33const ))) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) - (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [6,<*b2,b3,b4*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [11,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg c2,(IFGT 0,(c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),(Next (IC c2)),(jump_address c2,(c1 P33const ))) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) * (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [6,<*b2,b3,b4*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [13,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg c2,(IFGT 0,(c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),(Next (IC c2)),(jump_address c2,(c1 P33const ))) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),(c2 . (Address_Add c2,(c1 P42address ),(c1 P44const )))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [6,<*b2,b3,b4*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [12,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg c2,(IFGT 0,(c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))),(Next (IC c2)),(jump_address c2,(c1 P33const ))) iff b1 = SCM-Chg (SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) div (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Address_Add c2,(c1 P42address ),(c1 P44const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) mod (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [7,<*b2,b3,b4*>] & ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [8,<*b2,b3,b4*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P31address ),(c1 P32const )),(c1 P33const )),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P31address ),(c1 P32const )),((c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))) + (c1 P33const ))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [7,<*b2,b3,b4*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [9,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P31address ),(c1 P32const )),(c1 P33const )),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) + (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [7,<*b2,b3,b4*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [10,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P31address ),(c1 P32const )),(c1 P33const )),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) - (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [7,<*b2,b3,b4*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [11,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P31address ),(c1 P32const )),(c1 P33const )),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) * (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [7,<*b2,b3,b4*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [13,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P31address ),(c1 P32const )),(c1 P33const )),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),(c2 . (Address_Add c2,(c1 P42address ),(c1 P44const )))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [7,<*b2,b3,b4*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [12,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P31address ),(c1 P32const )),(c1 P33const )),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) div (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Address_Add c2,(c1 P42address ),(c1 P44const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) mod (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [8,<*b2,b3,b4*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [9,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P31address ),(c1 P32const )),((c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))) + (c1 P33const ))),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) + (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [8,<*b2,b3,b4*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [10,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P31address ),(c1 P32const )),((c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))) + (c1 P33const ))),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) - (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [8,<*b2,b3,b4*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [11,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P31address ),(c1 P32const )),((c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))) + (c1 P33const ))),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) * (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [8,<*b2,b3,b4*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [13,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P31address ),(c1 P32const )),((c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))) + (c1 P33const ))),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),(c2 . (Address_Add c2,(c1 P42address ),(c1 P44const )))),(Next (IC c2)) ) ) & ( ex b2 being Element of SCM-Data-Loc ex b3, b4 being Integer st c1 = [8,<*b2,b3,b4*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [12,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P31address ),(c1 P32const )),((c2 . (Address_Add c2,(c1 P31address ),(c1 P32const ))) + (c1 P33const ))),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) div (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Address_Add c2,(c1 P42address ),(c1 P44const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) mod (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [9,<*b2,b3,b4,b5*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [10,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) + (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) - (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [9,<*b2,b3,b4,b5*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [11,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) + (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) * (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [9,<*b2,b3,b4,b5*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [13,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) + (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),(c2 . (Address_Add c2,(c1 P42address ),(c1 P44const )))),(Next (IC c2)) ) ) & ( ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [9,<*b2,b3,b4,b5*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [12,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) + (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) div (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Address_Add c2,(c1 P42address ),(c1 P44const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) mod (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [10,<*b2,b3,b4,b5*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [11,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) - (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) * (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [10,<*b2,b3,b4,b5*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [13,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) - (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),(c2 . (Address_Add c2,(c1 P42address ),(c1 P44const )))),(Next (IC c2)) ) ) & ( ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [10,<*b2,b3,b4,b5*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [12,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) - (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) div (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Address_Add c2,(c1 P42address ),(c1 P44const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) mod (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [11,<*b2,b3,b4,b5*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [13,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) * (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),(c2 . (Address_Add c2,(c1 P42address ),(c1 P44const )))),(Next (IC c2)) ) ) & ( ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [11,<*b2,b3,b4,b5*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [12,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) * (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) div (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Address_Add c2,(c1 P42address ),(c1 P44const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) mod (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) & ( ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [13,<*b2,b3,b4,b5*>] & ex b2, b3 being Element of SCM-Data-Loc ex b4, b5 being Integer st c1 = [12,<*b2,b3,b4,b5*>] implies ( b1 = SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),(c2 . (Address_Add c2,(c1 P42address ),(c1 P44const )))),(Next (IC c2)) iff b1 = SCM-Chg (SCM-Chg (SCM-Chg c2,(Address_Add c2,(c1 P41address ),(c1 P43const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) div (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Address_Add c2,(c1 P42address ),(c1 P44const )),((c2 . (Address_Add c2,(c1 P41address ),(c1 P43const ))) mod (c2 . (Address_Add c2,(c1 P42address ),(c1 P44const ))))),(Next (IC c2)) ) ) )
by ZFMISC_1:33;
end;
:: deftheorem Def24 defines SCM-Exec-Res SCMPDS_1:def 24 :
for b
1 being
Element of
SCMPDS-Instr for b
2 being
SCMPDS-State holds
( ( ex b
3 being
Integer st b
1 = [0,<*b3*>] implies
SCM-Exec-Res b
1,b
2 = SCM-Chg b
2,
(jump_address b2,(b1 const_INT )) ) & ( ex b
3 being
Element of
SCM-Data-Loc ex b
4 being
Integer st b
1 = [2,<*b3,b4*>] implies
SCM-Exec-Res b
1,b
2 = SCM-Chg (SCM-Chg b2,(b1 P21address ),(b1 P22const )),
(Next (IC b2)) ) & ( ex b
3 being
Element of
SCM-Data-Loc ex b
4 being
Integer st b
1 = [3,<*b3,b4*>] implies
SCM-Exec-Res b
1,b
2 = SCM-Chg (SCM-Chg b2,(Address_Add b2,(b1 P21address ),(b1 P22const )),(IC b2)),
(Next (IC b2)) ) & ( ex b
3 being
Element of
SCM-Data-Loc st b
1 = [1,<*b3*>] implies
SCM-Exec-Res b
1,b
2 = SCM-Chg (SCM-Chg b2,(b1 address_1 ),(b2 . (Address_Add b2,(b1 address_1 ),RetSP ))),
(PopInstrLoc b2,(Address_Add b2,(b1 address_1 ),RetIC )) ) & ( ex b
3 being
Element of
SCM-Data-Loc ex b
4, b
5 being
Integer st b
1 = [4,<*b3,b4,b5*>] implies
SCM-Exec-Res b
1,b
2 = SCM-Chg b
2,
(IFEQ (b2 . (Address_Add b2,(b1 P31address ),(b1 P32const ))),0,(Next (IC b2)),(jump_address b2,(b1 P33const ))) ) & ( ex b
3 being
Element of
SCM-Data-Loc ex b
4, b
5 being
Integer st b
1 = [5,<*b3,b4,b5*>] implies
SCM-Exec-Res b
1,b
2 = SCM-Chg b
2,
(IFGT (b2 . (Address_Add b2,(b1 P31address ),(b1 P32const ))),0,(Next (IC b2)),(jump_address b2,(b1 P33const ))) ) & ( ex b
3 being
Element of
SCM-Data-Loc ex b
4, b
5 being
Integer st b
1 = [6,<*b3,b4,b5*>] implies
SCM-Exec-Res b
1,b
2 = SCM-Chg b
2,
(IFGT 0,(b2 . (Address_Add b2,(b1 P31address ),(b1 P32const ))),(Next (IC b2)),(jump_address b2,(b1 P33const ))) ) & ( ex b
3 being
Element of
SCM-Data-Loc ex b
4, b
5 being
Integer st b
1 = [7,<*b3,b4,b5*>] implies
SCM-Exec-Res b
1,b
2 = SCM-Chg (SCM-Chg b2,(Address_Add b2,(b1 P31address ),(b1 P32const )),(b1 P33const )),
(Next (IC b2)) ) & ( ex b
3 being
Element of
SCM-Data-Loc ex b
4, b
5 being
Integer st b
1 = [8,<*b3,b4,b5*>] implies
SCM-Exec-Res b
1,b
2 = SCM-Chg (SCM-Chg b2,(Address_Add b2,(b1 P31address ),(b1 P32const )),((b2 . (Address_Add b2,(b1 P31address ),(b1 P32const ))) + (b1 P33const ))),
(Next (IC b2)) ) & ( ex b
3, b
4 being
Element of
SCM-Data-Loc ex b
5, b
6 being
Integer st b
1 = [9,<*b3,b4,b5,b6*>] implies
SCM-Exec-Res b
1,b
2 = SCM-Chg (SCM-Chg b2,(Address_Add b2,(b1 P41address ),(b1 P43const )),((b2 . (Address_Add b2,(b1 P41address ),(b1 P43const ))) + (b2 . (Address_Add b2,(b1 P42address ),(b1 P44const ))))),
(Next (IC b2)) ) & ( ex b
3, b
4 being
Element of
SCM-Data-Loc ex b
5, b
6 being
Integer st b
1 = [10,<*b3,b4,b5,b6*>] implies
SCM-Exec-Res b
1,b
2 = SCM-Chg (SCM-Chg b2,(Address_Add b2,(b1 P41address ),(b1 P43const )),((b2 . (Address_Add b2,(b1 P41address ),(b1 P43const ))) - (b2 . (Address_Add b2,(b1 P42address ),(b1 P44const ))))),
(Next (IC b2)) ) & ( ex b
3, b
4 being
Element of
SCM-Data-Loc ex b
5, b
6 being
Integer st b
1 = [11,<*b3,b4,b5,b6*>] implies
SCM-Exec-Res b
1,b
2 = SCM-Chg (SCM-Chg b2,(Address_Add b2,(b1 P41address ),(b1 P43const )),((b2 . (Address_Add b2,(b1 P41address ),(b1 P43const ))) * (b2 . (Address_Add b2,(b1 P42address ),(b1 P44const ))))),
(Next (IC b2)) ) & ( ex b
3, b
4 being
Element of
SCM-Data-Loc ex b
5, b
6 being
Integer st b
1 = [13,<*b3,b4,b5,b6*>] implies
SCM-Exec-Res b
1,b
2 = SCM-Chg (SCM-Chg b2,(Address_Add b2,(b1 P41address ),(b1 P43const )),(b2 . (Address_Add b2,(b1 P42address ),(b1 P44const )))),
(Next (IC b2)) ) & ( ex b
3, b
4 being
Element of
SCM-Data-Loc ex b
5, b
6 being
Integer st b
1 = [12,<*b3,b4,b5,b6*>] implies
SCM-Exec-Res b
1,b
2 = SCM-Chg (SCM-Chg (SCM-Chg b2,(Address_Add b2,(b1 P41address ),(b1 P43const )),((b2 . (Address_Add b2,(b1 P41address ),(b1 P43const ))) div (b2 . (Address_Add b2,(b1 P42address ),(b1 P44const ))))),(Address_Add b2,(b1 P42address ),(b1 P44const )),((b2 . (Address_Add b2,(b1 P41address ),(b1 P43const ))) mod (b2 . (Address_Add b2,(b1 P42address ),(b1 P44const ))))),
(Next (IC b2)) ) & ( ( for b
3 being
Integer holds
not b
1 = [0,<*b3*>] ) & ( for b
3 being
Element of
SCM-Data-Loc for b
4 being
Integer holds
not b
1 = [2,<*b3,b4*>] ) & ( for b
3 being
Element of
SCM-Data-Loc for b
4 being
Integer holds
not b
1 = [3,<*b3,b4*>] ) & ( for b
3 being
Element of
SCM-Data-Loc holds
not b
1 = [1,<*b3*>] ) & ( for b
3 being
Element of
SCM-Data-Loc for b
4, b
5 being
Integer holds
not b
1 = [4,<*b3,b4,b5*>] ) & ( for b
3 being
Element of
SCM-Data-Loc for b
4, b
5 being
Integer holds
not b
1 = [5,<*b3,b4,b5*>] ) & ( for b
3 being
Element of
SCM-Data-Loc for b
4, b
5 being
Integer holds
not b
1 = [6,<*b3,b4,b5*>] ) & ( for b
3 being
Element of
SCM-Data-Loc for b
4, b
5 being
Integer holds
not b
1 = [7,<*b3,b4,b5*>] ) & ( for b
3 being
Element of
SCM-Data-Loc for b
4, b
5 being
Integer holds
not b
1 = [8,<*b3,b4,b5*>] ) & ( for b
3, b
4 being
Element of
SCM-Data-Loc for b
5, b
6 being
Integer holds
not b
1 = [9,<*b3,b4,b5,b6*>] ) & ( for b
3, b
4 being
Element of
SCM-Data-Loc for b
5, b
6 being
Integer holds
not b
1 = [10,<*b3,b4,b5,b6*>] ) & ( for b
3, b
4 being
Element of
SCM-Data-Loc for b
5, b
6 being
Integer holds
not b
1 = [11,<*b3,b4,b5,b6*>] ) & ( for b
3, b
4 being
Element of
SCM-Data-Loc for b
5, b
6 being
Integer holds
not b
1 = [13,<*b3,b4,b5,b6*>] ) & ( for b
3, b
4 being
Element of
SCM-Data-Loc for b
5, b
6 being
Integer holds
not b
1 = [12,<*b3,b4,b5,b6*>] ) implies
SCM-Exec-Res b
1,b
2 = b
2 ) );
definition
func SCMPDS-Exec -> Function of
SCMPDS-Instr ,
Funcs (product SCMPDS-OK ),
(product SCMPDS-OK ) means :: SCMPDS_1:def 25
for b
1 being
Element of
SCMPDS-Instr for b
2 being
SCMPDS-State holds
(a1 . b1) . b
2 = SCM-Exec-Res b
1,b
2;
existence
ex b1 being Function of SCMPDS-Instr , Funcs (product SCMPDS-OK ),(product SCMPDS-OK ) st
for b2 being Element of SCMPDS-Instr
for b3 being SCMPDS-State holds (b1 . b2) . b3 = SCM-Exec-Res b2,b3
uniqueness
for b1, b2 being Function of SCMPDS-Instr , Funcs (product SCMPDS-OK ),(product SCMPDS-OK ) holds
( ( for b3 being Element of SCMPDS-Instr
for b4 being SCMPDS-State holds (b1 . b3) . b4 = SCM-Exec-Res b3,b4 ) & ( for b3 being Element of SCMPDS-Instr
for b4 being SCMPDS-State holds (b2 . b3) . b4 = SCM-Exec-Res b3,b4 ) implies b1 = b2 )
end;
:: deftheorem Def25 defines SCMPDS-Exec SCMPDS_1:def 25 :