:: SCMFSA_7 semantic presentation :: Showing IDV graph ... (Click the Palm Trees again to close it)
theorem Th1: :: SCMFSA_7:1 :: Showing IDV graph ... (Click the Palm Tree again to close it)
Lm1:
for a, b, c being Nat st a >= c & b >= c & a -' c = b -' c holds
a = b
by BINARITH:49;
Lm2:
for a, b being natural number st a >= b holds
a -' b = a - b
by BINARITH:50;
Lm3:
for a, b being Integer st a < b holds
a <= b - 1
by INT_1:79;
theorem :: SCMFSA_7:2 :: Showing IDV graph ... (Click the Palm Tree again to close it)
canceled;
theorem :: SCMFSA_7:3 :: Showing IDV graph ... (Click the Palm Tree again to close it)
canceled;
theorem :: SCMFSA_7:4 :: Showing IDV graph ... (Click the Palm Tree again to close it)
canceled;
theorem :: SCMFSA_7:5 :: Showing IDV graph ... (Click the Palm Tree again to close it)
canceled;
theorem :: SCMFSA_7:6 :: Showing IDV graph ... (Click the Palm Tree again to close it)
canceled;
theorem :: SCMFSA_7:7 :: Showing IDV graph ... (Click the Palm Tree again to close it)
canceled;
theorem :: SCMFSA_7:8 :: Showing IDV graph ... (Click the Palm Tree again to close it)
canceled;
theorem :: SCMFSA_7:9 :: Showing IDV graph ... (Click the Palm Tree again to close it)
canceled;
theorem :: SCMFSA_7:10 :: Showing IDV graph ... (Click the Palm Tree again to close it)
canceled;
Lm4:
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) )
Lm5:
for p1, p2, p3, p4 being FinSequence holds
( ((p1 ^ p2) ^ p3) ^ p4 = (p1 ^ p2) ^ (p3 ^ p4) & ((p1 ^ p2) ^ p3) ^ p4 = p1 ^ ((p2 ^ p3) ^ p4) & ((p1 ^ p2) ^ p3) ^ p4 = p1 ^ (p2 ^ (p3 ^ p4)) & ((p1 ^ p2) ^ p3) ^ p4 = (p1 ^ (p2 ^ p3)) ^ p4 )
Lm6:
for p1, p2, p3, p4, p5 being FinSequence holds
( (((p1 ^ p2) ^ p3) ^ p4) ^ p5 = ((p1 ^ p2) ^ p3) ^ (p4 ^ p5) & (((p1 ^ p2) ^ p3) ^ p4) ^ p5 = (p1 ^ p2) ^ ((p3 ^ p4) ^ p5) & (((p1 ^ p2) ^ p3) ^ p4) ^ p5 = (p1 ^ p2) ^ (p3 ^ (p4 ^ p5)) & (((p1 ^ p2) ^ p3) ^ p4) ^ p5 = p1 ^ (((p2 ^ p3) ^ p4) ^ p5) & (((p1 ^ p2) ^ p3) ^ p4) ^ p5 = p1 ^ ((p2 ^ p3) ^ (p4 ^ p5)) & (((p1 ^ p2) ^ p3) ^ p4) ^ p5 = p1 ^ (p2 ^ ((p3 ^ p4) ^ p5)) & (((p1 ^ p2) ^ p3) ^ p4) ^ p5 = p1 ^ (p2 ^ (p3 ^ (p4 ^ p5))) & (((p1 ^ p2) ^ p3) ^ p4) ^ p5 = ((p1 ^ p2) ^ (p3 ^ p4)) ^ p5 & (((p1 ^ p2) ^ p3) ^ p4) ^ p5 = (p1 ^ ((p2 ^ p3) ^ p4)) ^ p5 & (((p1 ^ p2) ^ p3) ^ p4) ^ p5 = (p1 ^ (p2 ^ (p3 ^ p4))) ^ p5 & (((p1 ^ p2) ^ p3) ^ p4) ^ p5 = p1 ^ ((p2 ^ (p3 ^ p4)) ^ p5) )
theorem :: SCMFSA_7:11 :: Showing IDV graph ... (Click the Palm Tree again to close it)
canceled;
theorem :: SCMFSA_7:12 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th13: :: SCMFSA_7:13 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th14: :: SCMFSA_7:14 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA_7:15 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA_7:16 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th17: :: SCMFSA_7:17 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th18: :: SCMFSA_7:18 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th19: :: SCMFSA_7:19 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th20: :: SCMFSA_7:20 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th21: :: SCMFSA_7:21 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th22: :: SCMFSA_7:22 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th23: :: SCMFSA_7:23 :: Showing IDV graph ... (Click the Palm Tree again to close it)
deffunc H1( Nat) -> Element of the Instruction-Locations of SCM+FSA = insloc ($1 -' 1);
:: deftheorem Def1 defines Load SCMFSA_7:def 1 :
theorem :: SCMFSA_7:24 :: Showing IDV graph ... (Click the Palm Tree again to close it)
canceled;
theorem :: SCMFSA_7:25 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th26: :: SCMFSA_7:26 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA_7:27 :: Showing IDV graph ... (Click the Palm Tree again to close it)
canceled;
theorem Th28: :: SCMFSA_7:28 :: Showing IDV graph ... (Click the Palm Tree again to close it)
for
k,
n being
Nat holds
(
k < n iff ( 1
<= k + 1 &
k + 1
<= n ) )
theorem Th29: :: SCMFSA_7:29 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA_7:30 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th31: :: SCMFSA_7:31 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA_7:32 :: Showing IDV graph ... (Click the Palm Tree again to close it)
:: deftheorem Def2 defines := SCMFSA_7:def 2 :
definition
let a be
Int-Location ;
let k be
Integer;
func aSeq a,
k -> FinSequence of the
Instructions of
SCM+FSA means :
Def3:
:: SCMFSA_7:def 3
ex
k1 being
Nat st
(
k1 + 1
= k &
it = <*(a := (intloc 0))*> ^ (k1 |-> (AddTo a,(intloc 0))) )
if k > 0
otherwise ex
k1 being
Nat st
(
k1 + k = 1 &
it = <*(a := (intloc 0))*> ^ (k1 |-> (SubFrom a,(intloc 0))) );
existence
( ( k > 0 implies ex b1 being FinSequence of the Instructions of SCM+FSA ex k1 being Nat st
( k1 + 1 = k & b1 = <*(a := (intloc 0))*> ^ (k1 |-> (AddTo a,(intloc 0))) ) ) & ( not k > 0 implies ex b1 being FinSequence of the Instructions of SCM+FSA ex k1 being Nat st
( k1 + k = 1 & b1 = <*(a := (intloc 0))*> ^ (k1 |-> (SubFrom a,(intloc 0))) ) ) )
uniqueness
for b1, b2 being FinSequence of the Instructions of SCM+FSA holds
( ( k > 0 & ex k1 being Nat st
( k1 + 1 = k & b1 = <*(a := (intloc 0))*> ^ (k1 |-> (AddTo a,(intloc 0))) ) & ex k1 being Nat st
( k1 + 1 = k & b2 = <*(a := (intloc 0))*> ^ (k1 |-> (AddTo a,(intloc 0))) ) implies b1 = b2 ) & ( not k > 0 & ex k1 being Nat st
( k1 + k = 1 & b1 = <*(a := (intloc 0))*> ^ (k1 |-> (SubFrom a,(intloc 0))) ) & ex k1 being Nat st
( k1 + k = 1 & b2 = <*(a := (intloc 0))*> ^ (k1 |-> (SubFrom a,(intloc 0))) ) implies b1 = b2 ) )
;
correctness
consistency
for b1 being FinSequence of the Instructions of SCM+FSA holds verum;
;
end;
:: deftheorem Def3 defines aSeq SCMFSA_7:def 3 :
theorem :: SCMFSA_7:33 :: Showing IDV graph ... (Click the Palm Tree again to close it)
definition
let f be
FinSeq-Location ;
let p be
FinSequence of
INT ;
func aSeq f,
p -> FinSequence of the
Instructions of
SCM+FSA means :
Def4:
:: SCMFSA_7:def 4
ex
pp being
FinSequence of the
Instructions of
SCM+FSA * st
(
len pp = len p & ( for
k being
Nat st 1
<= k &
k <= len p holds
ex
i being
Integer st
(
i = p . k &
pp . k = ((aSeq (intloc 1),k) ^ (aSeq (intloc 2),i)) ^ <*(f,(intloc 1) := (intloc 2))*> ) ) &
it = FlattenSeq pp );
existence
ex b1 being FinSequence of the Instructions of SCM+FSA ex pp being FinSequence of the Instructions of SCM+FSA * st
( len pp = len p & ( for k being Nat st 1 <= k & k <= len p holds
ex i being Integer st
( i = p . k & pp . k = ((aSeq (intloc 1),k) ^ (aSeq (intloc 2),i)) ^ <*(f,(intloc 1) := (intloc 2))*> ) ) & b1 = FlattenSeq pp )
uniqueness
for b1, b2 being FinSequence of the Instructions of SCM+FSA st ex pp being FinSequence of the Instructions of SCM+FSA * st
( len pp = len p & ( for k being Nat st 1 <= k & k <= len p holds
ex i being Integer st
( i = p . k & pp . k = ((aSeq (intloc 1),k) ^ (aSeq (intloc 2),i)) ^ <*(f,(intloc 1) := (intloc 2))*> ) ) & b1 = FlattenSeq pp ) & ex pp being FinSequence of the Instructions of SCM+FSA * st
( len pp = len p & ( for k being Nat st 1 <= k & k <= len p holds
ex i being Integer st
( i = p . k & pp . k = ((aSeq (intloc 1),k) ^ (aSeq (intloc 2),i)) ^ <*(f,(intloc 1) := (intloc 2))*> ) ) & b2 = FlattenSeq pp ) holds
b1 = b2
correctness
;
end;
:: deftheorem Def4 defines aSeq SCMFSA_7:def 4 :
:: deftheorem defines := SCMFSA_7:def 5 :
theorem :: SCMFSA_7:34 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA_7:35 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th36: :: SCMFSA_7:36 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem Th37: :: SCMFSA_7:37 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA_7:38 :: Showing IDV graph ... (Click the Palm Tree again to close it)
theorem :: SCMFSA_7:39 :: Showing IDV graph ... (Click the Palm Tree again to close it)