:: AMI_3 semantic presentation
:: Showing IDV graph ... (Click the Palm Trees again to close it)
definition
func SCM -> strict AMI-Struct of
{INT } equals :: AMI_3:def 1
AMI-Struct(#
NAT ,0,
SCM-Instr-Loc ,
(Segm 9),
SCM-Instr ,
SCM-OK ,
SCM-Exec #);
coherence
AMI-Struct(# NAT ,0,SCM-Instr-Loc ,(Segm 9),SCM-Instr ,SCM-OK ,SCM-Exec #) is strict AMI-Struct of {INT }
;
end;
:: deftheorem defines SCM AMI_3:def 1 :
theorem Th1: :: AMI_3:1
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th2: :: AMI_3:2
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
:: deftheorem Def2 defines Data-Location AMI_3:def 2 :
definition
let a,
b be
Data-Location ;
func a := b -> Instruction of
SCM equals :: AMI_3:def 3
[1,<*a,b*>];
correctness
coherence
[1,<*a,b*>] is Instruction of SCM ;
func AddTo a,
b -> Instruction of
SCM equals :: AMI_3:def 4
[2,<*a,b*>];
correctness
coherence
[2,<*a,b*>] is Instruction of SCM ;
func SubFrom a,
b -> Instruction of
SCM equals :: AMI_3:def 5
[3,<*a,b*>];
correctness
coherence
[3,<*a,b*>] is Instruction of SCM ;
func MultBy a,
b -> Instruction of
SCM equals :: AMI_3:def 6
[4,<*a,b*>];
correctness
coherence
[4,<*a,b*>] is Instruction of SCM ;
func Divide a,
b -> Instruction of
SCM equals :: AMI_3:def 7
[5,<*a,b*>];
correctness
coherence
[5,<*a,b*>] is Instruction of SCM ;
end;
:: deftheorem defines := AMI_3:def 3 :
:: deftheorem defines AddTo AMI_3:def 4 :
:: deftheorem defines SubFrom AMI_3:def 5 :
:: deftheorem defines MultBy AMI_3:def 6 :
:: deftheorem defines Divide AMI_3:def 7 :
definition
let loc be
Instruction-Location of
SCM ;
func goto loc -> Instruction of
SCM equals :: AMI_3:def 8
[6,<*loc*>];
correctness
coherence
[6,<*loc*>] is Instruction of SCM ;
by AMI_2:3;
let a be
Data-Location ;
func a =0_goto loc -> Instruction of
SCM equals :: AMI_3:def 9
[7,<*loc,a*>];
correctness
coherence
[7,<*loc,a*>] is Instruction of SCM ;
func a >0_goto loc -> Instruction of
SCM equals :: AMI_3:def 10
[8,<*loc,a*>];
correctness
coherence
[8,<*loc,a*>] is Instruction of SCM ;
end;
:: deftheorem defines goto AMI_3:def 8 :
:: deftheorem defines =0_goto AMI_3:def 9 :
:: deftheorem defines >0_goto AMI_3:def 10 :
theorem :: AMI_3:3
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
canceled;
theorem :: AMI_3:4
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th5: :: AMI_3:5
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
:: deftheorem Def11 defines Next AMI_3:def 11 :
theorem Th6: :: AMI_3:6
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th7: :: AMI_3:7
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th8: :: AMI_3:8
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th9: :: AMI_3:9
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th10: :: AMI_3:10
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th11: :: AMI_3:11
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th12: :: AMI_3:12
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem :: AMI_3:13
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th14: :: AMI_3:14
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th15: :: AMI_3:15
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
Lm1:
for I being Instruction of SCM st ex s being State of SCM st (Exec I,s) . (IC SCM ) = Next (IC s) holds
not I is halting
Lm2:
for I being Instruction of SCM st I = [0,{} ] holds
I is halting
Lm3:
for a, b being Data-Location holds not a := b is halting
Lm4:
for a, b being Data-Location holds not AddTo a,b is halting
Lm5:
for a, b being Data-Location holds not SubFrom a,b is halting
Lm6:
for a, b being Data-Location holds not MultBy a,b is halting
Lm7:
for a, b being Data-Location holds not Divide a,b is halting
Lm8:
for loc being Instruction-Location of SCM holds not goto loc is halting
Lm9:
for a being Data-Location
for loc being Instruction-Location of SCM holds not a =0_goto loc is halting
Lm10:
for a being Data-Location
for loc being Instruction-Location of SCM holds not a >0_goto loc is halting
Lm11:
for I being set holds
( I is Instruction of SCM iff ( I = [0,{} ] or ex a, b being Data-Location st I = a := b or ex a, b being Data-Location st I = AddTo a,b or ex a, b being Data-Location st I = SubFrom a,b or ex a, b being Data-Location st I = MultBy a,b or ex a, b being Data-Location st I = Divide a,b or ex loc being Instruction-Location of SCM st I = goto loc or ex a being Data-Location ex loc being Instruction-Location of SCM st I = a =0_goto loc or ex a being Data-Location ex loc being Instruction-Location of SCM st I = a >0_goto loc ) )
Lm12:
for I being Instruction of SCM st I is halting holds
I = halt SCM
Lm13:
halt SCM = [0,{} ]
theorem :: AMI_3:16
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
canceled;
theorem :: AMI_3:17
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
canceled;
theorem Th18: :: AMI_3:18
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th19: :: AMI_3:19
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
Lm14:
for f, g being Function
for A, B being set st f | A = g | A & f | B = g | B holds
f | (A \/ B) = g | (A \/ B)
by RELAT_1:185;
Lm15:
for f being Function
for x being set st x in dom f holds
f | {x} = {[x,(f . x)]}
by GRFUNC_1:89;
Lm16:
for f being Function
for X being set st X misses dom f holds
f | X = {}
by RELAT_1:95;
theorem :: AMI_3:20
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
canceled;
theorem :: AMI_3:21
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
canceled;
theorem :: AMI_3:22
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
canceled;
theorem :: AMI_3:23
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
canceled;
theorem Th24: :: AMI_3:24
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th25: :: AMI_3:25
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem :: AMI_3:26
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th27: :: AMI_3:27
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem :: AMI_3:28
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
canceled;
theorem :: AMI_3:29
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem :: AMI_3:30
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
canceled;
theorem Th31: :: AMI_3:31
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th32: :: AMI_3:32
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th33: :: AMI_3:33
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
:: deftheorem defines Start-At AMI_3:def 12 :
theorem :: AMI_3:34
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
:: deftheorem Def13 defines programmed AMI_3:def 13 :
theorem :: AMI_3:35
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th36: :: AMI_3:36
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th37: :: AMI_3:37
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem :: AMI_3:38
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
:: deftheorem defines starts_at AMI_3:def 14 :
:: deftheorem Def15 defines halts_at AMI_3:def 15 :
theorem Th39: :: AMI_3:39
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
:: deftheorem Def16 defines IC AMI_3:def 16 :
:: deftheorem defines starts_at AMI_3:def 17 :
:: deftheorem defines halts_at AMI_3:def 18 :
theorem Th40: :: AMI_3:40
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem :: AMI_3:41
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th42: :: AMI_3:42
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem :: AMI_3:43
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th44: :: AMI_3:44
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th45: :: AMI_3:45
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem :: AMI_3:46
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem :: AMI_3:47
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem :: AMI_3:48
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem :: AMI_3:49
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem :: AMI_3:50
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
Lm17:
for s being State of SCM
for i being Instruction of SCM
for l being Instruction-Location of SCM holds (Exec i,s) . l = s . l
theorem :: AMI_3:51
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
:: deftheorem defines dl. AMI_3:def 19 :
:: deftheorem defines il. AMI_3:def 20 :
theorem :: AMI_3:52
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem :: AMI_3:53
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem :: AMI_3:54
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem Th55: :: AMI_3:55
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem :: AMI_3:56
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem :: AMI_3:57
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem :: AMI_3:58
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem :: AMI_3:59
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem :: AMI_3:60
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem :: AMI_3:61
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem :: AMI_3:62
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem :: AMI_3:63
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem :: AMI_3:64
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem :: AMI_3:65
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem :: AMI_3:66
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem :: AMI_3:67
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem :: AMI_3:68
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem :: AMI_3:69
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
for
I being
set holds
(
I is
Instruction of
SCM iff (
I = [0,{} ] or ex
a,
b being
Data-Location st
I = a := b or ex
a,
b being
Data-Location st
I = AddTo a,
b or ex
a,
b being
Data-Location st
I = SubFrom a,
b or ex
a,
b being
Data-Location st
I = MultBy a,
b or ex
a,
b being
Data-Location st
I = Divide a,
b or ex
loc being
Instruction-Location of
SCM st
I = goto loc or ex
a being
Data-Location ex
loc being
Instruction-Location of
SCM st
I = a =0_goto loc or ex
a being
Data-Location ex
loc being
Instruction-Location of
SCM st
I = a >0_goto loc ) )
by Lm11;
theorem :: AMI_3:70
:: Showing IDV graph ... (Click the Palm Tree again to close it) 
theorem :: AMI_3:71
:: Showing IDV graph ... (Click the Palm Tree again to close it) 