:: SCMFSA8C semantic presentation
theorem Th1: :: SCMFSA8C:1
canceled;
theorem Th2: :: SCMFSA8C:2
theorem Th3: :: SCMFSA8C:3
canceled;
theorem Th4: :: SCMFSA8C:4
canceled;
theorem Th5: :: SCMFSA8C:5
canceled;
theorem Th6: :: SCMFSA8C:6
theorem Th7: :: SCMFSA8C:7
theorem Th8: :: SCMFSA8C:8
theorem Th9: :: SCMFSA8C:9
theorem Th10: :: SCMFSA8C:10
theorem Th11: :: SCMFSA8C:11
theorem Th12: :: SCMFSA8C:12
theorem Th13: :: SCMFSA8C:13
theorem Th14: :: SCMFSA8C:14
theorem Th15: :: SCMFSA8C:15
theorem Th16: :: SCMFSA8C:16
theorem Th17: :: SCMFSA8C:17
theorem Th18: :: SCMFSA8C:18
theorem Th19: :: SCMFSA8C:19
theorem Th20: :: SCMFSA8C:20
theorem Th21: :: SCMFSA8C:21
theorem Th22: :: SCMFSA8C:22
theorem Th23: :: SCMFSA8C:23
theorem Th24: :: SCMFSA8C:24
theorem Th25: :: SCMFSA8C:25
theorem Th26: :: SCMFSA8C:26
theorem Th27: :: SCMFSA8C:27
theorem Th28: :: SCMFSA8C:28
theorem Th29: :: SCMFSA8C:29
theorem Th30: :: SCMFSA8C:30
theorem Th31: :: SCMFSA8C:31
theorem Th32: :: SCMFSA8C:32
theorem Th33: :: SCMFSA8C:33
theorem Th34: :: SCMFSA8C:34
theorem Th35: :: SCMFSA8C:35
theorem Th36: :: SCMFSA8C:36
theorem Th37: :: SCMFSA8C:37
theorem Th38: :: SCMFSA8C:38
theorem Th39: :: SCMFSA8C:39
theorem Th40: :: SCMFSA8C:40
theorem Th41: :: SCMFSA8C:41
theorem Th42: :: SCMFSA8C:42
theorem Th43: :: SCMFSA8C:43
theorem Th44: :: SCMFSA8C:44
theorem Th45: :: SCMFSA8C:45
theorem Th46: :: SCMFSA8C:46
E37:
now
let c1 be
State of
SCM+FSA ;
let c2 be
Macro-Instruction;
E38:
ProgramPart (Initialized c2) = c2
by Th25;
hereby
assume E39:
Initialized c2 is_pseudo-closed_on c1
;
set c3 =
pseudo-LifeSpan c1,
(Initialized c2);
(
IC ((Computation (c1 +* ((Initialized c2) +* (Start-At (insloc 0))))) . (pseudo-LifeSpan c1,(Initialized c2))) = insloc (card (ProgramPart (Initialized c2))) & ( for
b1 being
Nat st
b1 < pseudo-LifeSpan c1,
(Initialized c2) holds
IC ((Computation (c1 +* ((Initialized c2) +* (Start-At (insloc 0))))) . b1) in dom (Initialized c2) ) )
by E39, SCMFSA8A:def 5;
then
IC ((Computation ((Initialize c1) +* (c2 +* (Start-At (insloc 0))))) . (pseudo-LifeSpan c1,(Initialized c2))) = insloc (card (ProgramPart (Initialized c2)))
by Th16;
then E40:
IC ((Computation ((Initialize c1) +* (c2 +* (Start-At (insloc 0))))) . (pseudo-LifeSpan c1,(Initialized c2))) = insloc (card (ProgramPart c2))
by E38, AMI_5:72;
then E42:
for
b1 being
Nat st not
IC ((Computation ((Initialize c1) +* (c2 +* (Start-At (insloc 0))))) . b1) in dom c2 holds
pseudo-LifeSpan c1,
(Initialized c2) <= b1
;
thus
c2 is_pseudo-closed_on Initialize c1
by E40, E41, SCMFSA8A:def 3;
hence
pseudo-LifeSpan c1,
(Initialized c2) = pseudo-LifeSpan (Initialize c1),
c2
by E40, E42, SCMFSA8A:def 5;
end;
assume E39:
c2 is_pseudo-closed_on Initialize c1
;
set c3 =
pseudo-LifeSpan (Initialize c1),
c2;
(
IC ((Computation ((Initialize c1) +* (c2 +* (Start-At (insloc 0))))) . (pseudo-LifeSpan (Initialize c1),c2)) = insloc (card (ProgramPart c2)) & ( for
b1 being
Nat st
b1 < pseudo-LifeSpan (Initialize c1),
c2 holds
IC ((Computation ((Initialize c1) +* (c2 +* (Start-At (insloc 0))))) . b1) in dom c2 ) )
by E39, SCMFSA8A:def 5;
then
IC ((Computation (c1 +* ((Initialized c2) +* (Start-At (insloc 0))))) . (pseudo-LifeSpan (Initialize c1),c2)) = insloc (card (ProgramPart c2))
by Th16;
then E40:
IC ((Computation (c1 +* ((Initialized c2) +* (Start-At (insloc 0))))) . (pseudo-LifeSpan (Initialize c1),c2)) = insloc (card (ProgramPart (Initialized c2)))
by E38, AMI_5:72;
then E42:
for
b1 being
Nat st not
IC ((Computation (c1 +* ((Initialized c2) +* (Start-At (insloc 0))))) . b1) in dom (Initialized c2) holds
pseudo-LifeSpan (Initialize c1),
c2 <= b1
;
thus
Initialized c2 is_pseudo-closed_on c1
by E40, E41, SCMFSA8A:def 3;
hence
pseudo-LifeSpan c1,
(Initialized c2) = pseudo-LifeSpan (Initialize c1),
c2
by E40, E42, SCMFSA8A:def 5;
end;
theorem Th47: :: SCMFSA8C:47
theorem Th48: :: SCMFSA8C:48
theorem Th49: :: SCMFSA8C:49
theorem Th50: :: SCMFSA8C:50
theorem Th51: :: SCMFSA8C:51
theorem Th52: :: SCMFSA8C:52
theorem Th53: :: SCMFSA8C:53
Lemma42:
for b1 being Instruction-Location of SCM+FSA holds goto b1 <> halt SCM+FSA
by SCMFSA_2:47, SCMFSA_2:124;
Lemma43:
for b1 being Int-Location
for b2 being Instruction-Location of SCM+FSA holds b1 =0_goto b2 <> halt SCM+FSA
by SCMFSA_2:48, SCMFSA_2:124;
Lemma44:
for b1 being Int-Location
for b2 being Instruction-Location of SCM+FSA holds b1 >0_goto b2 <> halt SCM+FSA
by SCMFSA_2:49, SCMFSA_2:124;
Lemma45:
for b1, b2 being Macro-Instruction holds ProgramPart (Relocated b2,(card b1)) c= b1 ';' b2
theorem Th54: :: SCMFSA8C:54
theorem Th55: :: SCMFSA8C:55
theorem Th56: :: SCMFSA8C:56
theorem Th57: :: SCMFSA8C:57
theorem Th58: :: SCMFSA8C:58
theorem Th59: :: SCMFSA8C:59
theorem Th60: :: SCMFSA8C:60
theorem Th61: :: SCMFSA8C:61
theorem Th62: :: SCMFSA8C:62
theorem Th63: :: SCMFSA8C:63
theorem Th64: :: SCMFSA8C:64
theorem Th65: :: SCMFSA8C:65
theorem Th66: :: SCMFSA8C:66
theorem Th67: :: SCMFSA8C:67
theorem Th68: :: SCMFSA8C:68
theorem Th69: :: SCMFSA8C:69
theorem Th70: :: SCMFSA8C:70
theorem Th71: :: SCMFSA8C:71
theorem Th72: :: SCMFSA8C:72
theorem Th73: :: SCMFSA8C:73
theorem Th74: :: SCMFSA8C:74
theorem Th75: :: SCMFSA8C:75
theorem Th76: :: SCMFSA8C:76
theorem Th77: :: SCMFSA8C:77
theorem Th78: :: SCMFSA8C:78
theorem Th79: :: SCMFSA8C:79
theorem Th80: :: SCMFSA8C:80
theorem Th81: :: SCMFSA8C:81
theorem Th82: :: SCMFSA8C:82
theorem Th83: :: SCMFSA8C:83
theorem Th84: :: SCMFSA8C:84
theorem Th85: :: SCMFSA8C:85
theorem Th86: :: SCMFSA8C:86
theorem Th87: :: SCMFSA8C:87
theorem Th88: :: SCMFSA8C:88
theorem Th89: :: SCMFSA8C:89
theorem Th90: :: SCMFSA8C:90
theorem Th91: :: SCMFSA8C:91
theorem Th92: :: SCMFSA8C:92
theorem Th93: :: SCMFSA8C:93
theorem Th94: :: SCMFSA8C:94
theorem Th95: :: SCMFSA8C:95
theorem Th96: :: SCMFSA8C:96
theorem Th97: :: SCMFSA8C:97
theorem Th98: :: SCMFSA8C:98
theorem Th99: :: SCMFSA8C:99
theorem Th100: :: SCMFSA8C:100
theorem Th101: :: SCMFSA8C:101
theorem Th102: :: SCMFSA8C:102
canceled;
theorem Th103: :: SCMFSA8C:103
:: deftheorem Def1 SCMFSA8C:def 1 :
canceled;
:: deftheorem Def2 SCMFSA8C:def 2 :
canceled;
:: deftheorem Def3 SCMFSA8C:def 3 :
canceled;
:: deftheorem Def4 defines loop SCMFSA8C:def 4 :
theorem Th104: :: SCMFSA8C:104
theorem Th105: :: SCMFSA8C:105
theorem Th106: :: SCMFSA8C:106
theorem Th107: :: SCMFSA8C:107
theorem Th108: :: SCMFSA8C:108
theorem Th109: :: SCMFSA8C:109
theorem Th110: :: SCMFSA8C:110
Lemma91:
for b1 being State of SCM+FSA
for b2 being Macro-Instruction st b2 is_closed_on b1 & b2 is_halting_on b1 holds
( CurInstr ((Computation (b1 +* ((loop b2) +* (Start-At (insloc 0))))) . (LifeSpan (b1 +* (b2 +* (Start-At (insloc 0)))))) = goto (insloc 0) & ( for b3 being Nat st b3 <= LifeSpan (b1 +* (b2 +* (Start-At (insloc 0)))) holds
CurInstr ((Computation (b1 +* ((loop b2) +* (Start-At (insloc 0))))) . b3) <> halt SCM+FSA ) )
theorem Th111: :: SCMFSA8C:111
theorem Th112: :: SCMFSA8C:112
theorem Th113: :: SCMFSA8C:113
theorem Th114: :: SCMFSA8C:114
definition
let c1 be
Int-Location ;
let c2 be
Macro-Instruction;
func Times c1,
c2 -> Macro-Instruction equals :: SCMFSA8C:def 5
if>0 a1,
(loop (if=0 a1,(Goto (insloc 2)),(a2 ';' (SubFrom a1,(intloc 0))))),
SCM+FSA-Stop ;
correctness
coherence
if>0 c1,(loop (if=0 c1,(Goto (insloc 2)),(c2 ';' (SubFrom c1,(intloc 0))))),SCM+FSA-Stop is Macro-Instruction;
;
end;
:: deftheorem Def5 defines Times SCMFSA8C:def 5 :
theorem Th115: :: SCMFSA8C:115
theorem Th116: :: SCMFSA8C:116
theorem Th117: :: SCMFSA8C:117
theorem Th118: :: SCMFSA8C:118
theorem Th119: :: SCMFSA8C:119
theorem Th120: :: SCMFSA8C:120
theorem Th121: :: SCMFSA8C:121
theorem Th122: :: SCMFSA8C:122
for
b1 being
State of
SCM+FSA for
b2 being
parahalting good Macro-Instruction for
b3 being
read-write Int-Location st
b2 does_not_destroy b3 &
b1 . (intloc 0) = 1 &
b1 . b3 > 0 holds
ex
b4 being
State of
SCM+FSA ex
b5 being
Nat st
(
b4 = b1 +* ((loop (if=0 b3,(Goto (insloc 2)),(b2 ';' (SubFrom b3,(intloc 0))))) +* (Start-At (insloc 0))) &
b5 = (LifeSpan (b1 +* ((if=0 b3,(Goto (insloc 2)),(b2 ';' (SubFrom b3,(intloc 0)))) +* (Start-At (insloc 0))))) + 1 &
((Computation b4) . b5) . b3 = (b1 . b3) - 1 &
((Computation b4) . b5) . (intloc 0) = 1 & ( for
b6 being
read-write Int-Location st
b6 <> b3 holds
((Computation b4) . b5) . b6 = (IExec b2,b1) . b6 ) & ( for
b6 being
FinSeq-Location holds
((Computation b4) . b5) . b6 = (IExec b2,b1) . b6 ) &
IC ((Computation b4) . b5) = insloc 0 & ( for
b6 being
Nat st
b6 <= b5 holds
IC ((Computation b4) . b6) in dom (loop (if=0 b3,(Goto (insloc 2)),(b2 ';' (SubFrom b3,(intloc 0))))) ) )
theorem Th123: :: SCMFSA8C:123
theorem Th124: :: SCMFSA8C:124
theorem Th125: :: SCMFSA8C:125