:: SCMFSA7B semantic presentation :: Showing IDV graph ... (Click the Palm Trees again to close it)
set A = the Instruction-Locations of SCM+FSA ;
theorem Th1: :: SCMFSA7B:1 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th2: :: SCMFSA7B:2 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA7B:3 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th4: :: SCMFSA7B:4 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th5: :: SCMFSA7B:5 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th6: :: SCMFSA7B:6 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA7B:7 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA7B:8 :: Showing IDV graph ... (Click the Palm Tree again to close it)
Lm1:
for s being State of SCM+FSA st IC s = insloc 0 holds
for a being Int-Location
for k being Integer st a := k c= s holds
s is halting
theorem :: SCMFSA7B:9 :: Showing IDV graph ... (Click the Palm Tree again to close it)
Lm2:
for p1, p2, p3, p4 being FinSequence holds ((p1 ^ p2) ^ p3) ^ p4 = p1 ^ ((p2 ^ p3) ^ p4)
Lm3:
for p1, p2, p3 being FinSequence holds
( ((len p1) + (len p2)) + (len p3) = len ((p1 ^ p2) ^ p3) & ((len p1) + (len p2)) + (len p3) = len (p1 ^ (p2 ^ p3)) & (len p1) + ((len p2) + (len p3)) = len (p1 ^ (p2 ^ p3)) & (len p1) + ((len p2) + (len p3)) = len ((p1 ^ p2) ^ p3) )
Lm4:
for s being State of SCM+FSA st IC s = insloc 0 & s . (intloc 0) = 1 holds
for f being FinSeq-Location
for p being FinSequence of INT st f := p c= s holds
( s is halting & (Result s) . f = p & ( for b being Int-Location st b <> intloc 1 & b <> intloc 2 holds
(Result s) . b = s . b ) & ( for g being FinSeq-Location st g <> f holds
(Result s) . g = s . g ) )
Lm5:
for s being State of SCM+FSA
for c0 being Nat st IC s = insloc c0 holds
for a being Int-Location
for k being Integer st ( for c being Nat st c < len (aSeq a,k) holds
(aSeq a,k) . (c + 1) = s . (insloc (c0 + c)) ) holds
for i being Nat st i <= len (aSeq a,k) holds
IC ((Computation s) . i) = insloc (c0 + i)
Lm6:
for s being State of SCM+FSA st IC s = insloc 0 holds
for a being Int-Location
for k being Integer st Load (aSeq a,k) c= s holds
for i being Nat st i <= len (aSeq a,k) holds
IC ((Computation s) . i) = insloc i
Lm7:
for s being State of SCM+FSA st IC s = insloc 0 holds
for f being FinSeq-Location
for p being FinSequence of INT st f := p c= s holds
s is halting
theorem :: SCMFSA7B:10 :: Showing IDV graph ... (Click the Palm Tree again to close it)
definition
let i be
Instruction of
SCM+FSA ;
let a be
Int-Location ;
pred i does_not_refer a means :: SCMFSA7B:def 1
for
b being
Int-Location for
l being
Instruction-Location of
SCM+FSA for
f being
FinSeq-Location holds
(
b := a <> i &
AddTo b,
a <> i &
SubFrom b,
a <> i &
MultBy b,
a <> i &
Divide b,
a <> i &
Divide a,
b <> i &
a =0_goto l <> i &
a >0_goto l <> i &
b := f,
a <> i &
f,
b := a <> i &
f,
a := b <> i &
f :=<0,...,0> a <> i );
end;
:: deftheorem defines does_not_refer SCMFSA7B:def 1 :
for
i being
Instruction of
SCM+FSA for
a being
Int-Location holds
(
i does_not_refer a iff for
b being
Int-Location for
l being
Instruction-Location of
SCM+FSA for
f being
FinSeq-Location holds
(
b := a <> i &
AddTo b,
a <> i &
SubFrom b,
a <> i &
MultBy b,
a <> i &
Divide b,
a <> i &
Divide a,
b <> i &
a =0_goto l <> i &
a >0_goto l <> i &
b := f,
a <> i &
f,
b := a <> i &
f,
a := b <> i &
f :=<0,...,0> a <> i ) );
:: deftheorem defines does_not_refer SCMFSA7B:def 2 :
:: deftheorem Def3 defines does_not_destroy SCMFSA7B:def 3 :
:: deftheorem Def4 defines does_not_destroy SCMFSA7B:def 4 :
:: deftheorem Def5 defines good SCMFSA7B:def 5 :
:: deftheorem Def6 defines halt-free SCMFSA7B:def 6 :
theorem Th11: :: SCMFSA7B:11 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th12: :: SCMFSA7B:12 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th13: :: SCMFSA7B:13 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th14: :: SCMFSA7B:14 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA7B:15 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA7B:16 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA7B:17 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA7B:18 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA7B:19 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA7B:20 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA7B:21 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA7B:22 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA7B:23 :: Showing IDV graph ... (Click the Palm Tree again to close it)
:: deftheorem Def7 defines is_closed_on SCMFSA7B:def 7 :
:: deftheorem Def8 defines is_halting_on SCMFSA7B:def 8 :
theorem Th24: :: SCMFSA7B:24 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA7B:25 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th26: :: SCMFSA7B:26 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th27: :: SCMFSA7B:27 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th28: :: SCMFSA7B:28 :: Showing IDV graph ... (Click the Palm Tree again to close it)
Lm8:
SCM+FSA-Stop is parahalting
theorem Th29: :: SCMFSA7B:29 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th30: :: SCMFSA7B:30 :: Showing IDV graph ... (Click the Palm Tree again to close it)