:: AMISTD_1 semantic presentation
theorem Th1: :: AMISTD_1:1
theorem Th2: :: AMISTD_1:2
theorem Th3: :: AMISTD_1:3
theorem Th4: :: AMISTD_1:4
canceled;
theorem Th5: :: AMISTD_1:5
canceled;
theorem Th6: :: AMISTD_1:6
canceled;
theorem Th7: :: AMISTD_1:7
canceled;
theorem Th8: :: AMISTD_1:8
canceled;
theorem Th9: :: AMISTD_1:9
canceled;
theorem Th10: :: AMISTD_1:10
canceled;
theorem Th11: :: AMISTD_1:11
Lemma4:
for b1 being with_non-empty_elements set
for b2 being non empty non void IC-Ins-separated steady-programmed definite AMI-Struct of b1
for b3 being Instruction-Location of b2
for b4 being Element of the Instructions of b2
for b5 being FinPartState of b2 holds
( b5 = b3 .--> b4 implies b5 is autonomic )
theorem Th12: :: AMISTD_1:12
theorem Th13: :: AMISTD_1:13
:: deftheorem Def1 AMISTD_1:def 1 :
canceled;
:: deftheorem Def2 AMISTD_1:def 2 :
canceled;
:: deftheorem Def3 defines jump-only AMISTD_1:def 3 :
:: deftheorem Def4 defines jump-only AMISTD_1:def 4 :
:: deftheorem Def5 defines NIC AMISTD_1:def 5 :
E6:
now
let c
1 be
with_non-empty_elements set ;
let c
2 be non
empty non
void IC-Ins-separated definite realistic AMI-Struct of c
1;
let c
3 be
Element of the
Instructions of c
2;
let c
4 be
Instruction-Location of c
2;
let c
5 be
State of c
2;
let c
6 be
FinPartState of c
2;
assume E7:
c
6 = (IC c2),c
4 --> c
4,c
3
;
set c
7 = c
5 +* c
6;
E8:
IC c
2 <> c
4
by AMI_1:48;
E9:
dom c
6 = {(IC c2),c4}
by E7, FUNCT_4:65;
then E10:
IC c
2 in dom c
6
by TARSKI:def 2;
E11:
IC (c5 +* c6) =
(c5 +* c6) . (IC c2)
.=
c
6 . (IC c2)
by E10, FUNCT_4:14
.=
c
4
by E7, E8, FUNCT_4:66
;
c
4 in dom c
6
by E9, TARSKI:def 2;
then (c5 +* c6) . c
4 =
c
6 . c
4
by FUNCT_4:14
.=
c
3
by E7, E8, FUNCT_4:66
;
hence
IC (Following (c5 +* c6)) in NIC c
3,c
4
by E11;
end;
:: deftheorem Def6 defines JUMP AMISTD_1:def 6 :
:: deftheorem Def7 defines SUCC AMISTD_1:def 7 :
theorem Th14: :: AMISTD_1:14
theorem Th15: :: AMISTD_1:15
:: deftheorem Def8 defines <= AMISTD_1:def 8 :
theorem Th16: :: AMISTD_1:16
:: deftheorem Def9 defines InsLoc-antisymmetric AMISTD_1:def 9 :
:: deftheorem Def10 defines standard AMISTD_1:def 10 :
theorem Th17: :: AMISTD_1:17
theorem Th18: :: AMISTD_1:18
theorem Th19: :: AMISTD_1:19
Lemma14:
for b1, b2 being set holds dom ((NAT --> b1) +* (NAT .--> b2)) = NAT \/ {NAT }
set c1 = {[1,0],[0,0]};
definition
let c
2 be
with_non-empty_elements set ;
func STC c
1 -> strict AMI-Struct of a
1 means :
Def11:
:: AMISTD_1:def 11
( the
carrier of a
2 = NAT \/ {NAT } & the
Instruction-Counter of a
2 = NAT & the
Instruction-Locations of a
2 = NAT & the
Instruction-Codes of a
2 = {0,1} & the
Instructions of a
2 = {[0,0],[1,0]} & the
Object-Kind of a
2 = (NAT --> {[1,0],[0,0]}) +* (NAT .--> NAT ) & ex b
1 being
Function of
product the
Object-Kind of a
2,
product the
Object-Kind of a
2 st
( ( for b
2 being
Element of
product the
Object-Kind of a
2 holds b
1 . b
2 = b
2 +* (NAT .--> (succ (b2 . NAT ))) ) & the
Execution of a
2 = ([1,0] .--> b1) +* ([0,0] .--> (id (product the Object-Kind of a2))) ) );
existence
ex b1 being strict AMI-Struct of c2 st
( the carrier of b1 = NAT \/ {NAT } & the Instruction-Counter of b1 = NAT & the Instruction-Locations of b1 = NAT & the Instruction-Codes of b1 = {0,1} & the Instructions of b1 = {[0,0],[1,0]} & the Object-Kind of b1 = (NAT --> {[1,0],[0,0]}) +* (NAT .--> NAT ) & ex b2 being Function of product the Object-Kind of b1, product the Object-Kind of b1 st
( ( for b3 being Element of product the Object-Kind of b1 holds b2 . b3 = b3 +* (NAT .--> (succ (b3 . NAT ))) ) & the Execution of b1 = ([1,0] .--> b2) +* ([0,0] .--> (id (product the Object-Kind of b1))) ) )
uniqueness
for b1, b2 being strict AMI-Struct of c2 holds
( the carrier of b1 = NAT \/ {NAT } & the Instruction-Counter of b1 = NAT & the Instruction-Locations of b1 = NAT & the Instruction-Codes of b1 = {0,1} & the Instructions of b1 = {[0,0],[1,0]} & the Object-Kind of b1 = (NAT --> {[1,0],[0,0]}) +* (NAT .--> NAT ) & ex b3 being Function of product the Object-Kind of b1, product the Object-Kind of b1 st
( ( for b4 being Element of product the Object-Kind of b1 holds b3 . b4 = b4 +* (NAT .--> (succ (b4 . NAT ))) ) & the Execution of b1 = ([1,0] .--> b3) +* ([0,0] .--> (id (product the Object-Kind of b1))) ) & the carrier of b2 = NAT \/ {NAT } & the Instruction-Counter of b2 = NAT & the Instruction-Locations of b2 = NAT & the Instruction-Codes of b2 = {0,1} & the Instructions of b2 = {[0,0],[1,0]} & the Object-Kind of b2 = (NAT --> {[1,0],[0,0]}) +* (NAT .--> NAT ) & ex b3 being Function of product the Object-Kind of b2, product the Object-Kind of b2 st
( ( for b4 being Element of product the Object-Kind of b2 holds b3 . b4 = b4 +* (NAT .--> (succ (b4 . NAT ))) ) & the Execution of b2 = ([1,0] .--> b3) +* ([0,0] .--> (id (product the Object-Kind of b2))) ) implies b1 = b2 )
end;
:: deftheorem Def11 defines STC AMISTD_1:def 11 :
for b
1 being
with_non-empty_elements set for b
2 being
strict AMI-Struct of b
1 holds
( b
2 = STC b
1 iff ( the
carrier of b
2 = NAT \/ {NAT } & the
Instruction-Counter of b
2 = NAT & the
Instruction-Locations of b
2 = NAT & the
Instruction-Codes of b
2 = {0,1} & the
Instructions of b
2 = {[0,0],[1,0]} & the
Object-Kind of b
2 = (NAT --> {[1,0],[0,0]}) +* (NAT .--> NAT ) & ex b
3 being
Function of
product the
Object-Kind of b
2,
product the
Object-Kind of b
2 st
( ( for b
4 being
Element of
product the
Object-Kind of b
2 holds b
3 . b
4 = b
4 +* (NAT .--> (succ (b4 . NAT ))) ) & the
Execution of b
2 = ([1,0] .--> b3) +* ([0,0] .--> (id (product the Object-Kind of b2))) ) ) );
Lemma16:
for b1 being with_non-empty_elements set
for b2 being Instruction of (STC b1)
for b3 being State of (STC b1) holds
( InsCode b2 = 1 implies (Exec b2,b3) . (IC (STC b1)) = succ (IC b3) )
theorem Th20: :: AMISTD_1:20
theorem Th21: :: AMISTD_1:21
theorem Th22: :: AMISTD_1:22
theorem Th23: :: AMISTD_1:23
Lemma20:
for b1 being natural number
for b2 being with_non-empty_elements set
for b3 being Instruction-Location of (STC b2)
for b4 being Element of the Instructions of (STC b2) holds
( b3 = b1 & InsCode b4 = 1 implies NIC b4,b3 = {(b1 + 1)} )
Lemma21:
for b1 being with_non-empty_elements set
for b2 being Element of the Instructions of (STC b1) holds JUMP b2 is empty
theorem Th24: :: AMISTD_1:24
definition
let c
2 be
with_non-empty_elements set ;
let c
3 be non
empty non
void IC-Ins-separated definite standard AMI-Struct of c
2;
let c
4 be
natural number ;
func il. c
2,c
3 -> Instruction-Location of a
2 means :
Def12:
:: AMISTD_1:def 12
ex b
1 being
Function of
NAT ,the
Instruction-Locations of a
2 st
( b
1 is
bijective & ( for b
2, b
3 being
Nat holds
( b
2 <= b
3 iff b
1 . b
2 <= b
1 . b
3 ) ) & a
4 = b
1 . a
3 );
existence
ex b1 being Instruction-Location of c3ex b2 being Function of NAT ,the Instruction-Locations of c3 st
( b2 is bijective & ( for b3, b4 being Nat holds
( b3 <= b4 iff b2 . b3 <= b2 . b4 ) ) & b1 = b2 . c4 )
uniqueness
for b1, b2 being Instruction-Location of c3 holds
( ex b3 being Function of NAT ,the Instruction-Locations of c3 st
( b3 is bijective & ( for b4, b5 being Nat holds
( b4 <= b5 iff b3 . b4 <= b3 . b5 ) ) & b1 = b3 . c4 ) & ex b3 being Function of NAT ,the Instruction-Locations of c3 st
( b3 is bijective & ( for b4, b5 being Nat holds
( b4 <= b5 iff b3 . b4 <= b3 . b5 ) ) & b2 = b3 . c4 ) implies b1 = b2 )
by Th17;
end;
:: deftheorem Def12 defines il. AMISTD_1:def 12 :
theorem Th25: :: AMISTD_1:25
theorem Th26: :: AMISTD_1:26
:: deftheorem Def13 defines locnum AMISTD_1:def 13 :
theorem Th27: :: AMISTD_1:27
theorem Th28: :: AMISTD_1:28
theorem Th29: :: AMISTD_1:29
theorem Th30: :: AMISTD_1:30
:: deftheorem Def14 defines + AMISTD_1:def 14 :
theorem Th31: :: AMISTD_1:31
theorem Th32: :: AMISTD_1:32
theorem Th33: :: AMISTD_1:33
:: deftheorem Def15 defines NextLoc AMISTD_1:def 15 :
theorem Th34: :: AMISTD_1:34
theorem Th35: :: AMISTD_1:35
theorem Th36: :: AMISTD_1:36
theorem Th37: :: AMISTD_1:37
theorem Th38: :: AMISTD_1:38
theorem Th39: :: AMISTD_1:39
theorem Th40: :: AMISTD_1:40
:: deftheorem Def16 defines sequential AMISTD_1:def 16 :
theorem Th41: :: AMISTD_1:41
theorem Th42: :: AMISTD_1:42
theorem Th43: :: AMISTD_1:43
:: deftheorem Def17 defines closed AMISTD_1:def 17 :
:: deftheorem Def18 defines really-closed AMISTD_1:def 18 :
:: deftheorem Def19 defines para-closed AMISTD_1:def 19 :
theorem Th44: :: AMISTD_1:44
theorem Th45: :: AMISTD_1:45
theorem Th46: :: AMISTD_1:46
:: deftheorem Def20 defines lower AMISTD_1:def 20 :
theorem Th47: :: AMISTD_1:47
theorem Th48: :: AMISTD_1:48
theorem Th49: :: AMISTD_1:49
theorem Th50: :: AMISTD_1:50
:: deftheorem Def21 defines LastLoc AMISTD_1:def 21 :
theorem Th51: :: AMISTD_1:51
theorem Th52: :: AMISTD_1:52
theorem Th53: :: AMISTD_1:53
theorem Th54: :: AMISTD_1:54
theorem Th55: :: AMISTD_1:55
E48:
now
let c
2 be
with_non-empty_elements set ;
let c
3 be non
empty non
void halting IC-Ins-separated definite standard AMI-Struct of c
2;
set c
4 =
(il. c3,0) .--> (halt c3);
E49:
dom ((il. c3,0) .--> (halt c3)) = {(il. c3,0)}
by CQC_LANG:5;
then E50:
card (dom ((il. c3,0) .--> (halt c3))) = 1
by CARD_1:79;
(il. c3,0) .--> (halt c3) is
lower FinPartState of c
3
by Th48;
then E51:
LastLoc ((il. c3,0) .--> (halt c3)) =
il. c
3,
((card ((il. c3,0) .--> (halt c3))) -' 1)
by Th55
.=
il. c
3,
((card (dom ((il. c3,0) .--> (halt c3)))) -' 1)
by PRE_CIRC:21
.=
il. c
3,0
by E50, BINARITH:51
;
hence
((il. c3,0) .--> (halt c3)) . (LastLoc ((il. c3,0) .--> (halt c3))) = halt c
3
by CQC_LANG:6;
let c
5 be
Instruction-Location of c
3;
assume
((il. c3,0) .--> (halt c3)) . c
5 = halt c
3
;
assume
c
5 in dom ((il. c3,0) .--> (halt c3))
;
hence
c
5 = LastLoc ((il. c3,0) .--> (halt c3))
by E49, E51, TARSKI:def 1;
end;
:: deftheorem Def22 defines halt-ending AMISTD_1:def 22 :
:: deftheorem Def23 defines unique-halt AMISTD_1:def 23 :