:: AMI_7 semantic presentation
theorem E1: :: AMI_7:1
for b
1, b
2, b
3 being
set holds
( ( ) implies ( not b
1 <> b
2 or not b
1 <> b
3 or
{b1,b2,b3} \ {b1} = {b2,b3} ) )
theorem E2: :: AMI_7:2
theorem :: AMI_7:3
theorem E3: :: AMI_7:4
theorem E4: :: AMI_7:5
theorem E5: :: AMI_7:6
theorem E6: :: AMI_7:7
proof
let c
1 be
with_non-empty_elements set ;
let c
2 be non
empty non
void IC-Ins-separated definite standard AMI-Struct of c
1;
let c
3 be
Instruction of c
2;
let c
4 be
State of c
2;
let c
5 be
Object of c
2;
let c
6 be
Element of
ObjectKind c
5;
assume that E7:
c
3 is
sequential
and E8:
c
5 <> IC c
2
;
thus IC (Exec c3,(c4 +* c5,c6)) =
IC (Exec c3,c4)
by E7, E8, E5
.=
(Exec c3,c4) . (IC c2)
.=
((Exec c3,c4) +* c5,c6) . (IC c2)
by E8, FUNCT_7:34
.=
IC ((Exec c3,c4) +* c5,c6)
;
end;
theorem E7: :: AMI_7:8
:: deftheorem E8 defines with_non_trivial_Instructions AMI_7:def 1 :
:: deftheorem E9 defines with_non_trivial_ObjectKinds AMI_7:def 2 :
registration
let c
1 be
with_non-empty_elements set ;
cluster STC a
1 -> with_non_trivial_ObjectKinds ;
coherence
STC c1 is with_non_trivial_ObjectKinds
proof
let c
2 be
Object of
(STC c1);
:: according to AMI_7:def 2
E10:
the
carrier of
(STC c1) = NAT \/ {NAT }
by AMISTD_1:def 11;
E11:
the
Object-Kind of
(STC c1) = (NAT --> {[1,0],[0,0]}) +* (NAT .--> NAT )
by AMISTD_1:def 11;
E12:
dom (NAT .--> NAT ) = {NAT }
by FUNCOP_1:19;
per cases
( c
2 in NAT or c
2 in {NAT } )
by E10, XBOOLE_0:def 2;
suppose E13:
c
2 in NAT
;
then
c
2 <> NAT
;
then
not c
2 in dom (NAT .--> NAT )
by E12, TARSKI:def 1;
then E14:
ObjectKind c
2 =
(NAT --> {[1,0],[0,0]}) . c
2
by E11, FUNCT_4:12
.=
{[1,0],[0,0]}
by E13, FUNCOP_1:13
;
E15:
[1,0] <> [0,0]
by ZFMISC_1:33;
(
[1,0] in {[1,0],[0,0]} &
[0,0] in {[1,0],[0,0]} )
by TARSKI:def 2;
hence
not
ObjectKind c
2 is
trivial
by E14, E15, YELLOW_8:def 1;
end;
end;
end;
end;
registration
let c
1 be
with_non-empty_elements set ;
cluster non
empty non
void halting IC-Ins-separated steady-programmed definite realistic programmable standard with_explicit_jumps without_implicit_jumps regular IC-good Exec-preserving with_non_trivial_Instructions with_non_trivial_ObjectKinds AMI-Struct of a
1;
existence
ex b1 being non empty non void IC-Ins-separated definite standard regular AMI-Struct of c1 st
( b1 is halting & b1 is realistic & b1 is steady-programmed & b1 is programmable & b1 is with_explicit_jumps & b1 is without_implicit_jumps & b1 is IC-good & b1 is Exec-preserving & b1 is with_non_trivial_ObjectKinds & b1 is with_non_trivial_Instructions )
proof
take
STC c
1
;
STC c
1 is
with_non_trivial_Instructions
proof
E10:
the
Instructions of
(STC c1) = {[0,0],[1,0]}
by AMISTD_1:def 11;
E11:
[1,0] <> [0,0]
by ZFMISC_1:33;
(
[1,0] in {[1,0],[0,0]} &
[0,0] in {[1,0],[0,0]} )
by TARSKI:def 2;
hence
not the
Instructions of
(STC c1) is
trivial
by E10, E11, YELLOW_8:def 1;
:: according to AMI_7:def 1
end;
hence
(
STC c
1 is
halting &
STC c
1 is
realistic &
STC c
1 is
steady-programmed &
STC c
1 is
programmable &
STC c
1 is
with_explicit_jumps &
STC c
1 is
without_implicit_jumps &
STC c
1 is
IC-good &
STC c
1 is
Exec-preserving &
STC c
1 is
with_non_trivial_ObjectKinds &
STC c
1 is
with_non_trivial_Instructions )
;
end;
end;
:: deftheorem E10 defines Output AMI_7:def 3 :
definition
let c
1 be
with_non-empty_elements set ;
let c
2 be non
empty non
void IC-Ins-separated definite AMI-Struct of c
1;
let c
3 be
Instruction of c
2;
func Out_\_Inp c
3 -> Subset of a
2 means :
E11:
:: AMI_7:def 4
for b
1 being
Object of a
2 holds
( b
1 in a
4 iff for b
2 being
State of a
2for b
3 being
Element of
ObjectKind b
1 holds
Exec a
3,b
2 = Exec a
3,
(b2 +* b1,b3) );
existence
ex b1 being Subset of c2 st
for b2 being Object of c2 holds
( b2 in b1 iff for b3 being State of c2
for b4 being Element of ObjectKind b2 holds Exec c3,b3 = Exec c3,(b3 +* b2,b4) )
uniqueness
for b1, b2 being Subset of c2 holds
( ( ( for b3 being Object of c2 holds
( b3 in b1 iff for b4 being State of c2
for b5 being Element of ObjectKind b3 holds Exec c3,b4 = Exec c3,(b4 +* b3,b5) ) ) & ( for b3 being Object of c2 holds
( b3 in b2 iff for b4 being State of c2
for b5 being Element of ObjectKind b3 holds Exec c3,b4 = Exec c3,(b4 +* b3,b5) ) ) ) implies ( b1 = b2 ) )
func Out_U_Inp c
3 -> Subset of a
2 means :
E12:
:: AMI_7:def 5
for b
1 being
Object of a
2 holds
( b
1 in a
4 iff not for b
2 being
State of a
2for b
3 being
Element of
ObjectKind b
1 holds not
Exec a
3,
(b2 +* b1,b3) <> (Exec a3,b2) +* b
1,b
3 );
existence
ex b1 being Subset of c2 st
for b2 being Object of c2 holds
( b2 in b1 iff not for b3 being State of c2
for b4 being Element of ObjectKind b2 holds not Exec c3,(b3 +* b2,b4) <> (Exec c3,b3) +* b2,b4 )
uniqueness
for b1, b2 being Subset of c2 holds
( ( ( for b3 being Object of c2 holds
( b3 in b1 iff not for b4 being State of c2
for b5 being Element of ObjectKind b3 holds not Exec c3,(b4 +* b3,b5) <> (Exec c3,b4) +* b3,b5 ) ) & ( for b3 being Object of c2 holds
( b3 in b2 iff not for b4 being State of c2
for b5 being Element of ObjectKind b3 holds not Exec c3,(b4 +* b3,b5) <> (Exec c3,b4) +* b3,b5 ) ) ) implies ( b1 = b2 ) )
end;
:: deftheorem E11 defines Out_\_Inp AMI_7:def 4 :
:: deftheorem E12 defines Out_U_Inp AMI_7:def 5 :
:: deftheorem defines Input AMI_7:def 6 :
theorem E13: :: AMI_7:9
theorem E14: :: AMI_7:10
proof
let c
1 be
with_non-empty_elements set ;
let c
2 be non
empty non
void IC-Ins-separated definite with_non_trivial_ObjectKinds AMI-Struct of c
1;
let c
3 be
Instruction of c
2;
for b
1 being
Object of c
2 holds
( b
1 in Out_\_Inp c
3 implies b
1 in Output c
3 )
proof
let c
4 be
Object of c
2;
assume E15:
( c
4 in Out_\_Inp c
3 & not c
4 in Output c
3 )
;
consider c
5 being
State of c
2, c
6 being
Element of
ObjectKind c
4;
consider c
7 being
set such that E16:
( c
7 in ObjectKind c
4 & c
7 <> c
6 )
by YELLOW15:4;
reconsider c
8 = c
7 as
Element of
ObjectKind c
4 by E16;
set c
9 = c
5 +* c
4,c
8;
E17:
dom c
5 = the
carrier of c
2
by AMI_3:36;
E18:
dom (c5 +* c4,c8) = the
carrier of c
2
by AMI_3:36;
E19:
(Exec c3,(c5 +* c4,c8)) . c
4 =
(c5 +* c4,c8) . c
4
by E15, E10
.=
c
8
by E17, FUNCT_7:33
;
(Exec c3,((c5 +* c4,c8) +* c4,c6)) . c
4 =
((c5 +* c4,c8) +* c4,c6) . c
4
by E15, E10
.=
c
6
by E18, FUNCT_7:33
;
hence
not verum
by E15, E16, E19, E11;
end;
hence
Out_\_Inp c
3 c= Output c
3
by SUBSET_1:7;
end;
theorem E15: :: AMI_7:11
proof
let c
1 be
with_non-empty_elements set ;
let c
2 be non
empty non
void IC-Ins-separated definite AMI-Struct of c
1;
let c
3 be
Instruction of c
2;
for b
1 being
Object of c
2 holds
( b
1 in Output c
3 implies b
1 in Out_U_Inp c
3 )
proof
let c
4 be
Object of c
2;
assume E16:
( c
4 in Output c
3 & not c
4 in Out_U_Inp c
3 )
;
for b
1 being
State of c
2 holds b
1 . c
4 = (Exec c3,b1) . c
4
proof
let c
5 be
State of c
2;
reconsider c
6 = c
5 . c
4 as
Element of
ObjectKind c
4 by E2;
E17:
Exec c
3,
(c5 +* c4,c6) = (Exec c3,c5) +* c
4,c
6
by E16, E12;
dom (Exec c3,c5) = the
carrier of c
2
by AMI_3:36;
hence c
5 . c
4 =
((Exec c3,c5) +* c4,c6) . c
4
by FUNCT_7:33
.=
(Exec c3,c5) . c
4
by E17, FUNCT_7:37
;
end;
hence
not verum
by E16, E10;
end;
hence
Output c
3 c= Out_U_Inp c
3
by SUBSET_1:7;
end;
theorem E16: :: AMI_7:12
theorem :: AMI_7:13
theorem :: AMI_7:14
theorem E17: :: AMI_7:15
proof
let c
1 be
with_non-empty_elements set ;
let c
2 be non
empty non
void IC-Ins-separated definite AMI-Struct of c
1;
let c
3 be
Instruction of c
2;
let c
4 be
Object of c
2;
assume E18:
ObjectKind c
4 is
trivial
;
assume
c
4 in Out_U_Inp c
3
;
then consider c
5 being
State of c
2, c
6 being
Element of
ObjectKind c
4 such that E19:
Exec c
3,
(c5 +* c4,c6) <> (Exec c3,c5) +* c
4,c
6
by E12;
c
5 . c
4 is
Element of
ObjectKind c
4
by E2;
then
c
5 . c
4 = c
6
by E18, YELLOW_8:def 1;
then E20:
Exec c
3,
(c5 +* c4,c6) = Exec c
3,c
5
by FUNCT_7:37;
E21:
dom ((Exec c3,c5) +* c4,c6) = the
carrier of c
2
by AMI_3:36;
E22:
dom (Exec c3,c5) = the
carrier of c
2
by AMI_3:36;
for b
1 being
set holds
( b
1 in the
carrier of c
2 implies
((Exec c3,c5) +* c4,c6) . b
1 = (Exec c3,c5) . b
1 )
proof
let c
7 be
set ;
assume
c
7 in the
carrier of c
2
;
per cases
not ( not c
7 = c
4 & not c
7 <> c
4 )
;
suppose E23:
c
7 = c
4
;
end;
end;
end;
hence
not verum
by E19, E20, E21, E22, FUNCT_1:9;
end;
theorem :: AMI_7:16
theorem :: AMI_7:17
theorem E18: :: AMI_7:18
theorem E19: :: AMI_7:19
theorem E20: :: AMI_7:20