:: SCMFSA_1 semantic presentation :: Showing IDV graph ... (Click the Palm Trees again to close it)
:: deftheorem defines SCM+FSA-Data-Loc SCMFSA_1:def 1 :
:: deftheorem defines SCM+FSA-Data*-Loc SCMFSA_1:def 2 :
:: deftheorem defines SCM+FSA-Instr-Loc SCMFSA_1:def 3 :
definition
func SCM+FSA-Instr -> Subset of
[:(Segm 13),(((union {INT ,(INT * )}) \/ INT ) * ):] equals :: SCMFSA_1:def 4
(SCM-Instr \/ { [J,<*c,f,b*>] where J is Element of Segm 13, c, b is Element of SCM+FSA-Data-Loc , f is Element of SCM+FSA-Data*-Loc : J in {9,10} } ) \/ { [K,<*c1,f1*>] where K is Element of Segm 13, c1 is Element of SCM+FSA-Data-Loc , f1 is Element of SCM+FSA-Data*-Loc : K in {11,12} } ;
coherence
(SCM-Instr \/ { [J,<*c,f,b*>] where J is Element of Segm 13, c, b is Element of SCM+FSA-Data-Loc , f is Element of SCM+FSA-Data*-Loc : J in {9,10} } ) \/ { [K,<*c1,f1*>] where K is Element of Segm 13, c1 is Element of SCM+FSA-Data-Loc , f1 is Element of SCM+FSA-Data*-Loc : K in {11,12} } is Subset of [:(Segm 13),(((union {INT ,(INT * )}) \/ INT ) * ):]
end;
:: deftheorem defines SCM+FSA-Instr SCMFSA_1:def 4 :
SCM+FSA-Instr = (SCM-Instr \/ { [J,<*c,f,b*>] where J is Element of Segm 13, c, b is Element of SCM+FSA-Data-Loc , f is Element of SCM+FSA-Data*-Loc : J in {9,10} } ) \/ { [K,<*c1,f1*>] where K is Element of Segm 13, c1 is Element of SCM+FSA-Data-Loc , f1 is Element of SCM+FSA-Data*-Loc : K in {11,12} } ;
theorem :: SCMFSA_1:1 :: Showing IDV graph ... (Click the Palm Tree again to close it)
canceled;
theorem Th2: :: SCMFSA_1:2 :: Showing IDV graph ... (Click the Palm Tree again to close it)
:: deftheorem defines InsCode SCMFSA_1:def 5 :
theorem Th3: :: SCMFSA_1:3 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA_1:4 :: Showing IDV graph ... (Click the Palm Tree again to close it)
:: deftheorem defines SCM+FSA-OK SCMFSA_1:def 6 :
Lm1:
dom ((SCM-Instr .--> SCM+FSA-Instr ) * (SCM-OK | SCM-Instr-Loc )) c= SCM-Instr-Loc
Lm2:
rng (SCM-OK | SCM-Instr-Loc ) c= {SCM-Instr }
Lm3:
SCM-Instr-Loc c= dom ((SCM-Instr .--> SCM+FSA-Instr ) * (SCM-OK | SCM-Instr-Loc ))
theorem :: SCMFSA_1:5 :: Showing IDV graph ... (Click the Palm Tree again to close it)
canceled;
theorem :: SCMFSA_1:6 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA_1:7 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th8: :: SCMFSA_1:8 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th9: :: SCMFSA_1:9 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th10: :: SCMFSA_1:10 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th11: :: SCMFSA_1:11 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th12: :: SCMFSA_1:12 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th13: :: SCMFSA_1:13 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA_1:14 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA_1:15 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA_1:16 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA_1:17 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th18: :: SCMFSA_1:18 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th19: :: SCMFSA_1:19 :: Showing IDV graph ... (Click the Palm Tree again to close it)
:: deftheorem defines SCM+FSA-Chg SCMFSA_1:def 7 :
:: deftheorem defines SCM+FSA-Chg SCMFSA_1:def 8 :
:: deftheorem defines SCM+FSA-Chg SCMFSA_1:def 9 :
definition
let x be
Element of
SCM+FSA-Instr ;
given c being
Element of
SCM+FSA-Data-Loc ,
f being
Element of
SCM+FSA-Data*-Loc ,
b being
Element of
SCM+FSA-Data-Loc ,
J being
Element of
Segm 13
such that A1:
x = [J,<*c,f,b*>]
;
func x int_addr1 -> Element of
SCM+FSA-Data-Loc means :: SCMFSA_1:def 10
ex
c being
Element of
SCM+FSA-Data-Loc ex
f being
Element of
SCM+FSA-Data*-Loc ex
b being
Element of
SCM+FSA-Data-Loc st
(
<*c,f,b*> = x `2 &
it = c );
existence
ex b1, c being Element of SCM+FSA-Data-Loc ex f being Element of SCM+FSA-Data*-Loc ex b being Element of SCM+FSA-Data-Loc st
( <*c,f,b*> = x `2 & b1 = c )
uniqueness
for b1, b2 being Element of SCM+FSA-Data-Loc st ex c being Element of SCM+FSA-Data-Loc ex f being Element of SCM+FSA-Data*-Loc ex b being Element of SCM+FSA-Data-Loc st
( <*c,f,b*> = x `2 & b1 = c ) & ex c being Element of SCM+FSA-Data-Loc ex f being Element of SCM+FSA-Data*-Loc ex b being Element of SCM+FSA-Data-Loc st
( <*c,f,b*> = x `2 & b2 = c ) holds
b1 = b2
func x int_addr2 -> Element of
SCM+FSA-Data-Loc means :: SCMFSA_1:def 11
ex
c being
Element of
SCM+FSA-Data-Loc ex
f being
Element of
SCM+FSA-Data*-Loc ex
b being
Element of
SCM+FSA-Data-Loc st
(
<*c,f,b*> = x `2 &
it = b );
existence
ex b1, c being Element of SCM+FSA-Data-Loc ex f being Element of SCM+FSA-Data*-Loc ex b being Element of SCM+FSA-Data-Loc st
( <*c,f,b*> = x `2 & b1 = b )
correctness
uniqueness
for b1, b2 being Element of SCM+FSA-Data-Loc st ex c being Element of SCM+FSA-Data-Loc ex f being Element of SCM+FSA-Data*-Loc ex b being Element of SCM+FSA-Data-Loc st
( <*c,f,b*> = x `2 & b1 = b ) & ex c being Element of SCM+FSA-Data-Loc ex f being Element of SCM+FSA-Data*-Loc ex b being Element of SCM+FSA-Data-Loc st
( <*c,f,b*> = x `2 & b2 = b ) holds
b1 = b2;
func x coll_addr1 -> Element of
SCM+FSA-Data*-Loc means :: SCMFSA_1:def 12
ex
c being
Element of
SCM+FSA-Data-Loc ex
f being
Element of
SCM+FSA-Data*-Loc ex
b being
Element of
SCM+FSA-Data-Loc st
(
<*c,f,b*> = x `2 &
it = f );
existence
ex b1 being Element of SCM+FSA-Data*-Loc ex c being Element of SCM+FSA-Data-Loc ex f being Element of SCM+FSA-Data*-Loc ex b being Element of SCM+FSA-Data-Loc st
( <*c,f,b*> = x `2 & b1 = f )
correctness
uniqueness
for b1, b2 being Element of SCM+FSA-Data*-Loc st ex c being Element of SCM+FSA-Data-Loc ex f being Element of SCM+FSA-Data*-Loc ex b being Element of SCM+FSA-Data-Loc st
( <*c,f,b*> = x `2 & b1 = f ) & ex c being Element of SCM+FSA-Data-Loc ex f being Element of SCM+FSA-Data*-Loc ex b being Element of SCM+FSA-Data-Loc st
( <*c,f,b*> = x `2 & b2 = f ) holds
b1 = b2;
end;
:: deftheorem defines int_addr1 SCMFSA_1:def 10 :
:: deftheorem defines int_addr2 SCMFSA_1:def 11 :
:: deftheorem defines coll_addr1 SCMFSA_1:def 12 :
definition
let x be
Element of
SCM+FSA-Instr ;
given c being
Element of
SCM+FSA-Data-Loc ,
f being
Element of
SCM+FSA-Data*-Loc ,
J being
Element of
Segm 13
such that A1:
x = [J,<*c,f*>]
;
func x int_addr3 -> Element of
SCM+FSA-Data-Loc means :: SCMFSA_1:def 13
ex
c being
Element of
SCM+FSA-Data-Loc ex
f being
Element of
SCM+FSA-Data*-Loc st
(
<*c,f*> = x `2 &
it = c );
existence
ex b1, c being Element of SCM+FSA-Data-Loc ex f being Element of SCM+FSA-Data*-Loc st
( <*c,f*> = x `2 & b1 = c )
uniqueness
for b1, b2 being Element of SCM+FSA-Data-Loc st ex c being Element of SCM+FSA-Data-Loc ex f being Element of SCM+FSA-Data*-Loc st
( <*c,f*> = x `2 & b1 = c ) & ex c being Element of SCM+FSA-Data-Loc ex f being Element of SCM+FSA-Data*-Loc st
( <*c,f*> = x `2 & b2 = c ) holds
b1 = b2
func x coll_addr2 -> Element of
SCM+FSA-Data*-Loc means :: SCMFSA_1:def 14
ex
c being
Element of
SCM+FSA-Data-Loc ex
f being
Element of
SCM+FSA-Data*-Loc st
(
<*c,f*> = x `2 &
it = f );
existence
ex b1 being Element of SCM+FSA-Data*-Loc ex c being Element of SCM+FSA-Data-Loc ex f being Element of SCM+FSA-Data*-Loc st
( <*c,f*> = x `2 & b1 = f )
correctness
uniqueness
for b1, b2 being Element of SCM+FSA-Data*-Loc st ex c being Element of SCM+FSA-Data-Loc ex f being Element of SCM+FSA-Data*-Loc st
( <*c,f*> = x `2 & b1 = f ) & ex c being Element of SCM+FSA-Data-Loc ex f being Element of SCM+FSA-Data*-Loc st
( <*c,f*> = x `2 & b2 = f ) holds
b1 = b2;
end;
:: deftheorem defines int_addr3 SCMFSA_1:def 13 :
:: deftheorem defines coll_addr2 SCMFSA_1:def 14 :
:: deftheorem defines Next SCMFSA_1:def 15 :
:: deftheorem defines IC SCMFSA_1:def 16 :
definition
let x be
Element of
SCM+FSA-Instr ;
let s be
SCM+FSA-State;
func SCM+FSA-Exec-Res x,
s -> SCM+FSA-State means :: SCMFSA_1:def 17
ex
x' being
Element of
SCM-Instr ex
s' being
SCM-State st
(
x = x' &
s' = (s | NAT ) +* (SCM-Instr-Loc --> x') &
it = (s +* (SCM-Exec-Res x',s')) +* (s | SCM+FSA-Instr-Loc ) )
if InsCode x <= 8
ex
i being
Integer ex
k being
Nat st
(
k = abs (s . (x int_addr2 )) &
i = (s . (x coll_addr1 )) /. k &
it = SCM+FSA-Chg (SCM+FSA-Chg s,(x int_addr1 ),i),
(Next (IC s)) )
if InsCode x = 9
ex
f being
FinSequence of
INT ex
k being
Nat st
(
k = abs (s . (x int_addr2 )) &
f = (s . (x coll_addr1 )) +* k,
(s . (x int_addr1 )) &
it = SCM+FSA-Chg (SCM+FSA-Chg s,(x coll_addr1 ),f),
(Next (IC s)) )
if InsCode x = 10
it = SCM+FSA-Chg (SCM+FSA-Chg s,(x int_addr3 ),(len (s . (x coll_addr2 )))),
(Next (IC s)) if InsCode x = 11
ex
f being
FinSequence of
INT ex
k being
Nat st
(
k = abs (s . (x int_addr3 )) &
f = k |-> 0 &
it = SCM+FSA-Chg (SCM+FSA-Chg s,(x coll_addr2 ),f),
(Next (IC s)) )
if InsCode x = 12
otherwise it = s;
existence
( ( InsCode x <= 8 implies ex b1 being SCM+FSA-State ex x' being Element of SCM-Instr ex s' being SCM-State st
( x = x' & s' = (s | NAT ) +* (SCM-Instr-Loc --> x') & b1 = (s +* (SCM-Exec-Res x',s')) +* (s | SCM+FSA-Instr-Loc ) ) ) & ( InsCode x = 9 implies ex b1 being SCM+FSA-State ex i being Integer ex k being Nat st
( k = abs (s . (x int_addr2 )) & i = (s . (x coll_addr1 )) /. k & b1 = SCM+FSA-Chg (SCM+FSA-Chg s,(x int_addr1 ),i),(Next (IC s)) ) ) & ( InsCode x = 10 implies ex b1 being SCM+FSA-State ex f being FinSequence of INT ex k being Nat st
( k = abs (s . (x int_addr2 )) & f = (s . (x coll_addr1 )) +* k,(s . (x int_addr1 )) & b1 = SCM+FSA-Chg (SCM+FSA-Chg s,(x coll_addr1 ),f),(Next (IC s)) ) ) & ( InsCode x = 11 implies ex b1 being SCM+FSA-State st b1 = SCM+FSA-Chg (SCM+FSA-Chg s,(x int_addr3 ),(len (s . (x coll_addr2 )))),(Next (IC s)) ) & ( InsCode x = 12 implies ex b1 being SCM+FSA-State ex f being FinSequence of INT ex k being Nat st
( k = abs (s . (x int_addr3 )) & f = k |-> 0 & b1 = SCM+FSA-Chg (SCM+FSA-Chg s,(x coll_addr2 ),f),(Next (IC s)) ) ) & ( not InsCode x <= 8 & not InsCode x = 9 & not InsCode x = 10 & not InsCode x = 11 & not InsCode x = 12 implies ex b1 being SCM+FSA-State st b1 = s ) )
uniqueness
for b1, b2 being SCM+FSA-State holds
( ( InsCode x <= 8 & ex x' being Element of SCM-Instr ex s' being SCM-State st
( x = x' & s' = (s | NAT ) +* (SCM-Instr-Loc --> x') & b1 = (s +* (SCM-Exec-Res x',s')) +* (s | SCM+FSA-Instr-Loc ) ) & ex x' being Element of SCM-Instr ex s' being SCM-State st
( x = x' & s' = (s | NAT ) +* (SCM-Instr-Loc --> x') & b2 = (s +* (SCM-Exec-Res x',s')) +* (s | SCM+FSA-Instr-Loc ) ) implies b1 = b2 ) & ( InsCode x = 9 & ex i being Integer ex k being Nat st
( k = abs (s . (x int_addr2 )) & i = (s . (x coll_addr1 )) /. k & b1 = SCM+FSA-Chg (SCM+FSA-Chg s,(x int_addr1 ),i),(Next (IC s)) ) & ex i being Integer ex k being Nat st
( k = abs (s . (x int_addr2 )) & i = (s . (x coll_addr1 )) /. k & b2 = SCM+FSA-Chg (SCM+FSA-Chg s,(x int_addr1 ),i),(Next (IC s)) ) implies b1 = b2 ) & ( InsCode x = 10 & ex f being FinSequence of INT ex k being Nat st
( k = abs (s . (x int_addr2 )) & f = (s . (x coll_addr1 )) +* k,(s . (x int_addr1 )) & b1 = SCM+FSA-Chg (SCM+FSA-Chg s,(x coll_addr1 ),f),(Next (IC s)) ) & ex f being FinSequence of INT ex k being Nat st
( k = abs (s . (x int_addr2 )) & f = (s . (x coll_addr1 )) +* k,(s . (x int_addr1 )) & b2 = SCM+FSA-Chg (SCM+FSA-Chg s,(x coll_addr1 ),f),(Next (IC s)) ) implies b1 = b2 ) & ( InsCode x = 11 & b1 = SCM+FSA-Chg (SCM+FSA-Chg s,(x int_addr3 ),(len (s . (x coll_addr2 )))),(Next (IC s)) & b2 = SCM+FSA-Chg (SCM+FSA-Chg s,(x int_addr3 ),(len (s . (x coll_addr2 )))),(Next (IC s)) implies b1 = b2 ) & ( InsCode x = 12 & ex f being FinSequence of INT ex k being Nat st
( k = abs (s . (x int_addr3 )) & f = k |-> 0 & b1 = SCM+FSA-Chg (SCM+FSA-Chg s,(x coll_addr2 ),f),(Next (IC s)) ) & ex f being FinSequence of INT ex k being Nat st
( k = abs (s . (x int_addr3 )) & f = k |-> 0 & b2 = SCM+FSA-Chg (SCM+FSA-Chg s,(x coll_addr2 ),f),(Next (IC s)) ) implies b1 = b2 ) & ( not InsCode x <= 8 & not InsCode x = 9 & not InsCode x = 10 & not InsCode x = 11 & not InsCode x = 12 & b1 = s & b2 = s implies b1 = b2 ) )
;
consistency
for b1 being SCM+FSA-State holds
( ( InsCode x <= 8 & InsCode x = 9 implies ( ex x' being Element of SCM-Instr ex s' being SCM-State st
( x = x' & s' = (s | NAT ) +* (SCM-Instr-Loc --> x') & b1 = (s +* (SCM-Exec-Res x',s')) +* (s | SCM+FSA-Instr-Loc ) ) iff ex i being Integer ex k being Nat st
( k = abs (s . (x int_addr2 )) & i = (s . (x coll_addr1 )) /. k & b1 = SCM+FSA-Chg (SCM+FSA-Chg s,(x int_addr1 ),i),(Next (IC s)) ) ) ) & ( InsCode x <= 8 & InsCode x = 10 implies ( ex x' being Element of SCM-Instr ex s' being SCM-State st
( x = x' & s' = (s | NAT ) +* (SCM-Instr-Loc --> x') & b1 = (s +* (SCM-Exec-Res x',s')) +* (s | SCM+FSA-Instr-Loc ) ) iff ex f being FinSequence of INT ex k being Nat st
( k = abs (s . (x int_addr2 )) & f = (s . (x coll_addr1 )) +* k,(s . (x int_addr1 )) & b1 = SCM+FSA-Chg (SCM+FSA-Chg s,(x coll_addr1 ),f),(Next (IC s)) ) ) ) & ( InsCode x <= 8 & InsCode x = 11 implies ( ex x' being Element of SCM-Instr ex s' being SCM-State st
( x = x' & s' = (s | NAT ) +* (SCM-Instr-Loc --> x') & b1 = (s +* (SCM-Exec-Res x',s')) +* (s | SCM+FSA-Instr-Loc ) ) iff b1 = SCM+FSA-Chg (SCM+FSA-Chg s,(x int_addr3 ),(len (s . (x coll_addr2 )))),(Next (IC s)) ) ) & ( InsCode x <= 8 & InsCode x = 12 implies ( ex x' being Element of SCM-Instr ex s' being SCM-State st
( x = x' & s' = (s | NAT ) +* (SCM-Instr-Loc --> x') & b1 = (s +* (SCM-Exec-Res x',s')) +* (s | SCM+FSA-Instr-Loc ) ) iff ex f being FinSequence of INT ex k being Nat st
( k = abs (s . (x int_addr3 )) & f = k |-> 0 & b1 = SCM+FSA-Chg (SCM+FSA-Chg s,(x coll_addr2 ),f),(Next (IC s)) ) ) ) & ( InsCode x = 9 & InsCode x = 10 implies ( ex i being Integer ex k being Nat st
( k = abs (s . (x int_addr2 )) & i = (s . (x coll_addr1 )) /. k & b1 = SCM+FSA-Chg (SCM+FSA-Chg s,(x int_addr1 ),i),(Next (IC s)) ) iff ex f being FinSequence of INT ex k being Nat st
( k = abs (s . (x int_addr2 )) & f = (s . (x coll_addr1 )) +* k,(s . (x int_addr1 )) & b1 = SCM+FSA-Chg (SCM+FSA-Chg s,(x coll_addr1 ),f),(Next (IC s)) ) ) ) & ( InsCode x = 9 & InsCode x = 11 implies ( ex i being Integer ex k being Nat st
( k = abs (s . (x int_addr2 )) & i = (s . (x coll_addr1 )) /. k & b1 = SCM+FSA-Chg (SCM+FSA-Chg s,(x int_addr1 ),i),(Next (IC s)) ) iff b1 = SCM+FSA-Chg (SCM+FSA-Chg s,(x int_addr3 ),(len (s . (x coll_addr2 )))),(Next (IC s)) ) ) & ( InsCode x = 9 & InsCode x = 12 implies ( ex i being Integer ex k being Nat st
( k = abs (s . (x int_addr2 )) & i = (s . (x coll_addr1 )) /. k & b1 = SCM+FSA-Chg (SCM+FSA-Chg s,(x int_addr1 ),i),(Next (IC s)) ) iff ex f being FinSequence of INT ex k being Nat st
( k = abs (s . (x int_addr3 )) & f = k |-> 0 & b1 = SCM+FSA-Chg (SCM+FSA-Chg s,(x coll_addr2 ),f),(Next (IC s)) ) ) ) & ( InsCode x = 10 & InsCode x = 11 implies ( ex f being FinSequence of INT ex k being Nat st
( k = abs (s . (x int_addr2 )) & f = (s . (x coll_addr1 )) +* k,(s . (x int_addr1 )) & b1 = SCM+FSA-Chg (SCM+FSA-Chg s,(x coll_addr1 ),f),(Next (IC s)) ) iff b1 = SCM+FSA-Chg (SCM+FSA-Chg s,(x int_addr3 ),(len (s . (x coll_addr2 )))),(Next (IC s)) ) ) & ( InsCode x = 10 & InsCode x = 12 implies ( ex f being FinSequence of INT ex k being Nat st
( k = abs (s . (x int_addr2 )) & f = (s . (x coll_addr1 )) +* k,(s . (x int_addr1 )) & b1 = SCM+FSA-Chg (SCM+FSA-Chg s,(x coll_addr1 ),f),(Next (IC s)) ) iff ex f being FinSequence of INT ex k being Nat st
( k = abs (s . (x int_addr3 )) & f = k |-> 0 & b1 = SCM+FSA-Chg (SCM+FSA-Chg s,(x coll_addr2 ),f),(Next (IC s)) ) ) ) & ( InsCode x = 11 & InsCode x = 12 implies ( b1 = SCM+FSA-Chg (SCM+FSA-Chg s,(x int_addr3 ),(len (s . (x coll_addr2 )))),(Next (IC s)) iff ex f being FinSequence of INT ex k being Nat st
( k = abs (s . (x int_addr3 )) & f = k |-> 0 & b1 = SCM+FSA-Chg (SCM+FSA-Chg s,(x coll_addr2 ),f),(Next (IC s)) ) ) ) )
;
end;
:: deftheorem defines SCM+FSA-Exec-Res SCMFSA_1:def 17 :
for
x being
Element of
SCM+FSA-Instr for
s,
b3 being
SCM+FSA-State holds
( (
InsCode x <= 8 implies (
b3 = SCM+FSA-Exec-Res x,
s iff ex
x' being
Element of
SCM-Instr ex
s' being
SCM-State st
(
x = x' &
s' = (s | NAT ) +* (SCM-Instr-Loc --> x') &
b3 = (s +* (SCM-Exec-Res x',s')) +* (s | SCM+FSA-Instr-Loc ) ) ) ) & (
InsCode x = 9 implies (
b3 = SCM+FSA-Exec-Res x,
s iff ex
i being
Integer ex
k being
Nat st
(
k = abs (s . (x int_addr2 )) &
i = (s . (x coll_addr1 )) /. k &
b3 = SCM+FSA-Chg (SCM+FSA-Chg s,(x int_addr1 ),i),
(Next (IC s)) ) ) ) & (
InsCode x = 10 implies (
b3 = SCM+FSA-Exec-Res x,
s iff ex
f being
FinSequence of
INT ex
k being
Nat st
(
k = abs (s . (x int_addr2 )) &
f = (s . (x coll_addr1 )) +* k,
(s . (x int_addr1 )) &
b3 = SCM+FSA-Chg (SCM+FSA-Chg s,(x coll_addr1 ),f),
(Next (IC s)) ) ) ) & (
InsCode x = 11 implies (
b3 = SCM+FSA-Exec-Res x,
s iff
b3 = SCM+FSA-Chg (SCM+FSA-Chg s,(x int_addr3 ),(len (s . (x coll_addr2 )))),
(Next (IC s)) ) ) & (
InsCode x = 12 implies (
b3 = SCM+FSA-Exec-Res x,
s iff ex
f being
FinSequence of
INT ex
k being
Nat st
(
k = abs (s . (x int_addr3 )) &
f = k |-> 0 &
b3 = SCM+FSA-Chg (SCM+FSA-Chg s,(x coll_addr2 ),f),
(Next (IC s)) ) ) ) & ( not
InsCode x <= 8 & not
InsCode x = 9 & not
InsCode x = 10 & not
InsCode x = 11 & not
InsCode x = 12 implies (
b3 = SCM+FSA-Exec-Res x,
s iff
b3 = s ) ) );
definition
func SCM+FSA-Exec -> Function of
SCM+FSA-Instr ,
Funcs (product SCM+FSA-OK ),
(product SCM+FSA-OK ) means :: SCMFSA_1:def 18
for
x being
Element of
SCM+FSA-Instr for
y being
SCM+FSA-State holds
(it . x) . y = SCM+FSA-Exec-Res x,
y;
existence
ex b1 being Function of SCM+FSA-Instr , Funcs (product SCM+FSA-OK ),(product SCM+FSA-OK ) st
for x being Element of SCM+FSA-Instr
for y being SCM+FSA-State holds (b1 . x) . y = SCM+FSA-Exec-Res x,y
uniqueness
for b1, b2 being Function of SCM+FSA-Instr , Funcs (product SCM+FSA-OK ),(product SCM+FSA-OK ) st ( for x being Element of SCM+FSA-Instr
for y being SCM+FSA-State holds (b1 . x) . y = SCM+FSA-Exec-Res x,y ) & ( for x being Element of SCM+FSA-Instr
for y being SCM+FSA-State holds (b2 . x) . y = SCM+FSA-Exec-Res x,y ) holds
b1 = b2
end;
:: deftheorem defines SCM+FSA-Exec SCMFSA_1:def 18 :
theorem :: SCMFSA_1:20 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA_1:21 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA_1:22 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA_1:23 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA_1:24 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA_1:25 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA_1:26 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA_1:27 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA_1:28 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA_1:29 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA_1:30 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA_1:31 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA_1:32 :: Showing IDV graph ... (Click the Palm Tree again to close it)