nomin_1.miz
begin
reserve a,a1,a2,v,v1,v2,x for
object;
reserve V,A for
set;
reserve m,n for
Nat;
reserve S,S1,S2 for
FinSequence;
theorem ::
NOMIN_1:1
Th1: for f be
FinSequence st n
in (
dom f) holds ((
<*x*>
^ f)
. (n
+ 1))
= (f
. n)
proof
let f be
FinSequence;
(
len
<*x*>)
= 1 by
FINSEQ_1: 39;
hence thesis by
FINSEQ_1:def 7;
end;
theorem ::
NOMIN_1:2
Th2: for f be
Function st (
dom f)
=
NAT holds (f
| (
Seg n)) is
FinSequence
proof
let f be
Function;
assume (
dom f)
=
NAT ;
then (
dom (f
| (
Seg n)))
= (
Seg n) by
RELAT_1: 62;
hence thesis by
FINSEQ_1:def 2;
end;
theorem ::
NOMIN_1:3
Th3: for f,g be
FinSequence holds (
dom f)
c= (
dom g) or (
dom g)
c= (
dom f)
proof
let f,g be
FinSequence;
consider n be
Nat such that
A1: (
dom f)
= (
Seg n) by
FINSEQ_1:def 2;
consider m be
Nat such that
A2: (
dom g)
= (
Seg m) by
FINSEQ_1:def 2;
m
<= n or n
<= m;
hence thesis by
A1,
A2,
FINSEQ_1: 5;
end;
registration
let f,g be
FinSequence;
cluster (f
+* g) ->
FinSequence-like;
coherence
proof
consider n be
Nat such that
A1: (
dom f)
= (
Seg n) by
FINSEQ_1:def 2;
consider m be
Nat such that
A2: (
dom g)
= (
Seg m) by
FINSEQ_1:def 2;
A3: (
dom (f
+* g))
= ((
dom f)
\/ (
dom g)) by
FUNCT_4:def 1;
per cases ;
suppose
A4: m
<= n;
take n;
thus (
dom (f
+* g))
= (
Seg n) by
A1,
A2,
A3,
A4,
XBOOLE_1: 12,
FINSEQ_1: 5;
end;
suppose
A5: m
> n;
take m;
thus thesis by
A1,
A2,
A3,
A5,
XBOOLE_1: 12,
FINSEQ_1: 5;
end;
end;
end
registration
let f1,f2 be
Function;
cluster (f2
\/ (f1
| ((
dom f1)
\ (
dom f2)))) ->
Function-like;
coherence
proof
(
dom (f1
| ((
dom f1)
\ (
dom f2))))
= ((
dom f1)
\ (
dom f2)) by
RELAT_1: 62;
hence thesis by
GRFUNC_1: 13,
XBOOLE_1: 79;
end;
end
definition
let f,g be
Function, x,y be
object;
::
NOMIN_1:def1
pred f,x
=~ g,y means (x
in (
dom f) iff y
in (
dom g)) & (x
in (
dom f) implies (f
. x)
= (g
. y));
end
begin
definition
let V, A;
mode
NominativeSet of V,A is
PartFunc of V, A;
end
registration
let V, A;
cluster
finite for
NominativeSet of V, A;
existence
proof
take ( the
PartFunc of V, A
|
{} );
thus thesis;
end;
end
definition
let V, A;
mode
TypeSSNominativeData of V,A is
finite
NominativeSet of V, A;
end
definition
let V, A;
::
NOMIN_1:def2
func
NDSS (V,A) ->
set equals the set of all d where d be
TypeSSNominativeData of V, A;
coherence ;
end
registration
let V, A;
cluster (
NDSS (V,A)) -> non
empty;
coherence
proof
the
TypeSSNominativeData of V, A
in (
NDSS (V,A));
hence thesis;
end;
end
theorem ::
NOMIN_1:4
Th4: x
in (
NDSS (V,A)) implies x is
TypeSSNominativeData of V, A
proof
assume x
in (
NDSS (V,A));
then ex w be
TypeSSNominativeData of V, A st x
= w;
hence thesis;
end;
theorem ::
NOMIN_1:5
(
NDSS (V,A))
c= (
PFuncs (V,A))
proof
let x;
assume x
in (
NDSS (V,A));
then ex w be
TypeSSNominativeData of V, A st w
= x;
hence thesis by
PARTFUN1: 45;
end;
theorem ::
NOMIN_1:6
Th6:
{}
in (
NDSS (V,A))
proof
{} is
TypeSSNominativeData of V, A by
RELSET_1: 12;
hence thesis;
end;
theorem ::
NOMIN_1:7
Th7: for A,B be
set st A
c= B holds (
NDSS (V,A))
c= (
NDSS (V,B))
proof
let A,B be
set such that
A1: A
c= B;
let d be
object;
assume d
in (
NDSS (V,A));
then ex w be
TypeSSNominativeData of V, A st w
= d;
then d is
TypeSSNominativeData of V, B by
A1,
RELSET_1: 7;
hence thesis;
end;
theorem ::
NOMIN_1:8
Th8: for f,g be
finite
Function holds f
tolerates g & f
in (
NDSS (V,A)) & g
in (
NDSS (V,A)) implies (f
\/ g)
in (
NDSS (V,A))
proof
let f,g be
finite
Function;
assume
A1: f
tolerates g;
assume f
in (
NDSS (V,A)) & g
in (
NDSS (V,A));
then f is
NominativeSet of V, A & g is
NominativeSet of V, A by
Th4;
then (f
\/ g) is V
-definedA
-valued;
then (f
\/ g) is
PartFunc of V, A by
A1,
RELSET_1: 4,
PARTFUN1: 51;
hence (f
\/ g)
in (
NDSS (V,A));
end;
definition
let V, A;
::
NOMIN_1:def3
func
FNDSC (V,A) ->
Function means
:
Def3: (
dom it )
=
NAT & (it
.
0 )
= A & for n be
Nat holds (it
. (n
+ 1))
= (
NDSS (V,(A
\/ (it
. n))));
existence
proof
deffunc
G(
set,
set) = (
NDSS (V,(A
\/ $2)));
ex F be
Function st (
dom F)
=
NAT & (F
.
0 )
= A & for n be
Nat holds (F
. (n
+ 1))
=
G(n,.) from
NAT_1:sch 11;
hence thesis;
end;
uniqueness
proof
let f,g be
Function such that
A1: (
dom f)
=
NAT and
A2: (f
.
0 )
= A and
A3: for n be
Nat holds (f
. (n
+ 1))
= (
NDSS (V,(A
\/ (f
. n)))) and
A4: (
dom g)
=
NAT and
A5: (g
.
0 )
= A and
A6: for n be
Nat holds (g
. (n
+ 1))
= (
NDSS (V,(A
\/ (g
. n))));
thus (
dom f)
= (
dom g) by
A1,
A4;
let x be
object;
assume x
in (
dom f);
then
reconsider n = x as
Element of
NAT by
A1;
defpred
P[
Nat] means (f
. $1)
= (g
. $1);
A7:
P[
0 ] by
A2,
A5;
A8: for n st
P[n] holds
P[(n
+ 1)]
proof
let n;
assume
P[n];
hence (g
. (n
+ 1))
= (
NDSS (V,(A
\/ (f
. n)))) by
A6
.= (f
. (n
+ 1)) by
A3;
end;
for n holds
P[n] from
NAT_1:sch 2(
A7,
A8);
then (f
. n)
= (g
. n);
hence thesis;
end;
end
theorem ::
NOMIN_1:9
Th9: ((
FNDSC (V,A))
. 1)
= (
NDSS (V,A))
proof
((
FNDSC (V,A))
. (
0
+ 1))
= (
NDSS (V,(A
\/ ((
FNDSC (V,A))
.
0 )))) & ((
FNDSC (V,A))
.
0 )
= A by
Def3;
hence thesis;
end;
theorem ::
NOMIN_1:10
Th10: ((
FNDSC (V,A))
. 2)
= (
NDSS (V,(A
\/ (
NDSS (V,A)))))
proof
((
FNDSC (V,A))
. (1
+ 1))
= (
NDSS (V,(A
\/ ((
FNDSC (V,A))
. 1)))) by
Def3;
hence thesis by
Th9;
end;
theorem ::
NOMIN_1:11
Th11: A
c= (
Union (
FNDSC (V,A)))
proof
set F = (
FNDSC (V,A));
A1: A
= (F
.
0 ) by
Def3;
(
dom F)
=
NAT by
Def3;
then (F
.
0 )
in (
rng F) by
FUNCT_1:def 3;
hence thesis by
A1,
ZFMISC_1: 74;
end;
theorem ::
NOMIN_1:12
1
<= n implies
{}
in ((
FNDSC (V,A))
. n)
proof
set F = (
FNDSC (V,A));
assume 1
<= n;
then
reconsider m = (n
- 1) as
Element of
NAT by
INT_1: 5;
(F
. (m
+ 1))
= (
NDSS (V,(A
\/ (F
. m)))) by
Def3;
hence thesis by
Th6;
end;
registration
let V, A, n;
cluster ((
FNDSC (V,A))
| (
Seg n)) ->
FinSequence-like;
coherence
proof
(
dom (
FNDSC (V,A)))
=
NAT by
Def3;
hence thesis by
Th2;
end;
end
theorem ::
NOMIN_1:13
Th13: m
<>
0 & m
<= n implies ((
FNDSC (V,A))
. m)
c= ((
FNDSC (V,A))
. n)
proof
assume
A1: m
<>
0 ;
set S = (
FNDSC (V,A));
defpred
P[
Nat] means m
<= $1 implies (S
. m)
c= (S
. $1);
A2:
P[
0 ];
A3: for k be
Nat st
P[k] holds
P[(k
+ 1)]
proof
let k be
Nat;
assume
A4:
P[k];
assume that
A5: m
<= (k
+ 1);
per cases by
A5,
NAT_1: 8;
suppose m
= (k
+ 1);
hence thesis;
end;
suppose
A6: m
<= k;
per cases ;
suppose k
=
0 ;
hence (S
. m)
c= (S
. (k
+ 1)) by
A1,
A6;
end;
suppose
A7: k
<>
0 ;
defpred
R[
Nat] means $1
<>
0 implies (S
. $1)
c= (S
. ($1
+ 1));
A8:
R[
0 ];
A9: for z be
Nat st
R[z] holds
R[(z
+ 1)]
proof
let z be
Nat such that
A10:
R[z];
per cases ;
suppose
A11: z
=
0 ;
A12: (S
. 1)
= (
NDSS (V,A)) by
Th9;
(S
. (1
+ 1))
= (
NDSS (V,(A
\/ (
NDSS (V,A))))) by
Th10;
hence thesis by
A11,
A12,
Th7,
XBOOLE_1: 7;
end;
suppose z
<>
0 ;
then
A13: (A
\/ (S
. z))
c= (A
\/ (S
. (z
+ 1))) by
A10,
XBOOLE_1: 9;
A14: (S
. (z
+ 1))
= (
NDSS (V,(A
\/ (S
. z)))) by
Def3;
(S
. ((z
+ 1)
+ 1))
= (
NDSS (V,(A
\/ (S
. (z
+ 1))))) by
Def3;
hence thesis by
A13,
A14,
Th7;
end;
end;
for z be
Nat holds
R[z] from
NAT_1:sch 2(
A8,
A9);
then (S
. k)
c= (S
. (k
+ 1)) by
A7;
hence thesis by
A4,
A6;
end;
end;
end;
for k be
Nat holds
P[k] from
NAT_1:sch 2(
A2,
A3);
hence thesis;
end;
definition
let V, A;
let S be
FinSequence;
::
NOMIN_1:def4
pred S
IsNDRankSeq V,A means (S
. 1)
= (
NDSS (V,A)) & for n be
Nat st n
in (
dom S) & (n
+ 1)
in (
dom S) holds (S
. (n
+ 1))
= (
NDSS (V,(A
\/ (S
. n))));
end
theorem ::
NOMIN_1:14
S
IsNDRankSeq (V,A) implies S
<>
{} ;
theorem ::
NOMIN_1:15
Th15: S
IsNDRankSeq (V,A) & S1
c= S & S1
<>
{} implies S1
IsNDRankSeq (V,A)
proof
assume that
A1: S
IsNDRankSeq (V,A) and
A2: S1
c= S and
A3: S1
<>
{} ;
A4: (
dom S1)
c= (
dom S) by
A2,
XTUPLE_0: 8;
(
rng S1)
<>
{} by
A3;
then 1
in (
dom S1) by
FINSEQ_3: 32;
hence (S1
. 1)
= (
NDSS (V,A)) by
A1,
A2,
GRFUNC_1: 2;
let n be
Nat such that
A5: n
in (
dom S1) and
A6: (n
+ 1)
in (
dom S1);
(S1
. n)
= (S
. n) by
A2,
A5,
GRFUNC_1: 2;
hence (
NDSS (V,(A
\/ (S1
. n))))
= (S
. (n
+ 1)) by
A1,
A4,
A5,
A6
.= (S1
. (n
+ 1)) by
A2,
A6,
GRFUNC_1: 2;
end;
theorem ::
NOMIN_1:16
Th16: S
IsNDRankSeq (V,A) & n
in (
dom S) implies (S
| n)
IsNDRankSeq (V,A)
proof
assume
A1: S
IsNDRankSeq (V,A);
assume
A2: n
in (
dom S);
then n
<= (
len S) by
FINSEQ_3: 25;
then (
len (S
| n))
= n by
FINSEQ_1: 17;
then (S
| n)
<>
{} by
A2,
FINSEQ_3: 24;
hence thesis by
A1,
RELAT_1: 59,
Th15;
end;
theorem ::
NOMIN_1:17
Th17: S
IsNDRankSeq (V,A) implies (S
^
<*(
NDSS (V,(A
\/ (S
. (
len S)))))*>)
IsNDRankSeq (V,A)
proof
assume
A1: S
IsNDRankSeq (V,A);
set S1 = (S
^
<*(
NDSS (V,(A
\/ (S
. (
len S)))))*>);
S
<>
{} by
A1;
then (
rng S)
<>
{} ;
then 1
in (
dom S) by
FINSEQ_3: 32;
hence (S1
. 1)
= (
NDSS (V,A)) by
A1,
FINSEQ_1:def 7;
let n be
Nat such that
A2: n
in (
dom S1) and
A3: (n
+ 1)
in (
dom S1);
(
len
<*(
NDSS (V,(A
\/ (S
. (
len S)))))*>)
= 1 by
FINSEQ_1: 39;
then
A4: (
len S1)
= (1
+ (
len S)) by
FINSEQ_1: 22;
A5: 1
<= n by
A2,
FINSEQ_3: 25;
A6: 1
<= (n
+ 1) by
NAT_1: 14;
A7: (n
+ 1)
<= (
len S1) by
A3,
FINSEQ_3: 25;
then ((n
+ 1)
- 1)
<= ((1
+ (
len S))
- 1) by
A4,
XREAL_1: 9;
then
A8: n
in (
dom S) by
A5,
FINSEQ_3: 25;
then
A9: (S1
. n)
= (S
. n) by
FINSEQ_1:def 7;
per cases by
A7,
XXREAL_0: 1;
suppose (n
+ 1)
< (
len S1);
then (n
+ 1)
<= (
len S) by
A4,
NAT_1: 13;
then
A10: (n
+ 1)
in (
dom S) by
A6,
FINSEQ_3: 25;
then (S1
. (n
+ 1))
= (S
. (n
+ 1)) by
FINSEQ_1:def 7;
hence thesis by
A1,
A8,
A9,
A10;
end;
suppose (n
+ 1)
= (
len S1);
hence thesis by
A4,
A9,
FINSEQ_1: 42;
end;
end;
theorem ::
NOMIN_1:18
Th18: 1
<= n implies ((
FNDSC (V,A))
| (
Seg n))
IsNDRankSeq (V,A)
proof
set F = (
FNDSC (V,A));
set S = (F
| (
Seg n));
(
dom F)
=
NAT by
Def3;
then
A1: (
dom S)
= (
Seg n) by
RELAT_1: 62;
assume 1
<= n;
then 1
in (
Seg n);
hence (S
. 1)
= (F
. 1) by
FUNCT_1: 49
.= (
NDSS (V,A)) by
Th9;
let n be
Nat such that
A2: n
in (
dom S);
assume (n
+ 1)
in (
dom S);
hence (S
. (n
+ 1))
= (F
. (n
+ 1)) by
A1,
FUNCT_1: 49
.= (
NDSS (V,(A
\/ (F
. n)))) by
Def3
.= (
NDSS (V,(A
\/ (S
. n)))) by
A1,
A2,
FUNCT_1: 49;
end;
theorem ::
NOMIN_1:19
Th19: S
IsNDRankSeq (V,A) & n
in (
dom S) implies (S
. n)
= ((
FNDSC (V,A))
. n)
proof
assume
A1: S
IsNDRankSeq (V,A);
set F = (
FNDSC (V,A));
defpred
P[
Nat] means $1
in (
dom S) implies (S
. $1)
= (F
. $1);
A2:
P[
0 ] by
FINSEQ_3: 24;
A3: for n st
P[n] holds
P[(n
+ 1)]
proof
let n such that
A4:
P[n] and
A5: (n
+ 1)
in (
dom S);
per cases ;
suppose n
=
0 ;
hence thesis by
A1,
Th9;
end;
suppose n
<>
0 ;
then
A6: 1
<= n by
NAT_1: 14;
A7: (n
+ 1)
<= (
len S) by
A5,
FINSEQ_3: 25;
n
<= (n
+ 1) by
NAT_1: 11;
then
A8: n
<= (
len S) by
A7,
XXREAL_0: 2;
then n
in (
dom S) by
A6,
FINSEQ_3: 25;
hence (S
. (n
+ 1))
= (
NDSS (V,(A
\/ (S
. n)))) by
A1,
A5
.= (F
. (n
+ 1)) by
A4,
A6,
A8,
Def3,
FINSEQ_3: 25;
end;
end;
for n holds
P[n] from
NAT_1:sch 2(
A2,
A3);
hence thesis;
end;
theorem ::
NOMIN_1:20
Th20: S
IsNDRankSeq (V,A) implies S
= ((
FNDSC (V,A))
| (
dom S))
proof
assume
A1: S
IsNDRankSeq (V,A);
set F = (
FNDSC (V,A));
set G = (F
| (
dom S));
(
dom F)
=
NAT by
Def3;
hence (
dom S)
= (
dom G) by
RELAT_1: 62;
let x such that
A2: x
in (
dom S);
thus (S
. x)
= (F
. x) by
A1,
A2,
Th19
.= (G
. x) by
A2,
FUNCT_1: 49;
end;
theorem ::
NOMIN_1:21
Th21: S1
IsNDRankSeq (V,A) & S2
IsNDRankSeq (V,A) implies S1
tolerates S2
proof
assume that
A1: S1
IsNDRankSeq (V,A) and
A2: S2
IsNDRankSeq (V,A);
let x such that
A3: x
in ((
dom S1)
/\ (
dom S2));
defpred
P[
Nat] means $1
in ((
dom S1)
/\ (
dom S2)) implies (S1
. $1)
= (S2
. $1);
A4:
P[
0 ]
proof
assume
0
in ((
dom S1)
/\ (
dom S2));
then
0
in (
dom S1) by
XBOOLE_0:def 4;
hence thesis by
FINSEQ_3: 24;
end;
A5: for n st
P[n] holds
P[(n
+ 1)]
proof
let n such that
A6:
P[n] and
A7: (n
+ 1)
in ((
dom S1)
/\ (
dom S2));
A8: (n
+ 1)
in (
dom S1) by
A7,
XBOOLE_0:def 4;
A9: (n
+ 1)
in (
dom S2) by
A7,
XBOOLE_0:def 4;
per cases ;
suppose n
=
0 ;
hence (S1
. (n
+ 1))
= (S2
. (n
+ 1)) by
A1,
A2;
end;
suppose n
<>
0 ;
then
A10: 1
<= n by
NAT_1: 14;
A11: n
<= (n
+ 1) by
NAT_1: 11;
(n
+ 1)
<= (
len S1) by
A8,
FINSEQ_3: 25;
then n
<= (
len S1) by
A11,
XXREAL_0: 2;
then
A12: n
in (
dom S1) by
A10,
FINSEQ_3: 25;
(n
+ 1)
<= (
len S2) by
A9,
FINSEQ_3: 25;
then n
<= (
len S2) by
A11,
XXREAL_0: 2;
then n
in (
dom S2) by
A10,
FINSEQ_3: 25;
hence (S2
. (n
+ 1))
= (
NDSS (V,(A
\/ (S1
. n)))) by
A2,
A6,
A9,
A12,
XBOOLE_0:def 4
.= (S1
. (n
+ 1)) by
A1,
A8,
A12;
end;
end;
for n holds
P[n] from
NAT_1:sch 2(
A4,
A5);
hence thesis by
A3;
end;
theorem ::
NOMIN_1:22
Th22: S1
IsNDRankSeq (V,A) & S2
IsNDRankSeq (V,A) implies S1
c= S2 or S2
c= S1
proof
assume S1
IsNDRankSeq (V,A) & S2
IsNDRankSeq (V,A);
then
A1: S1
= ((
FNDSC (V,A))
| (
dom S1)) & S2
= ((
FNDSC (V,A))
| (
dom S2)) by
Th20;
(
dom S1)
c= (
dom S2) or (
dom S2)
c= (
dom S1) by
Th3;
hence thesis by
A1,
RELAT_1: 75;
end;
theorem ::
NOMIN_1:23
Th23: S1
IsNDRankSeq (V,A) & S2
IsNDRankSeq (V,A) implies (S1
+* S2)
= S1 or (S1
+* S2)
= S2
proof
assume S1
IsNDRankSeq (V,A) & S2
IsNDRankSeq (V,A);
then
A1: (S1
+* S2)
= (S2
+* S1) by
Th21,
FUNCT_4: 34;
(
dom S1)
c= (
dom S2) or (
dom S2)
c= (
dom S1) by
Th3;
hence thesis by
A1,
FUNCT_4: 19;
end;
theorem ::
NOMIN_1:24
S1
IsNDRankSeq (V,A) & S2
IsNDRankSeq (V,A) implies (S1
+* S2)
IsNDRankSeq (V,A) by
Th23;
theorem ::
NOMIN_1:25
Th25: S
IsNDRankSeq (V,A) & m
<= n & n
in (
dom S) implies (S
. m)
c= (S
. n)
proof
assume that
A1: S
IsNDRankSeq (V,A) and
A2: m
<= n and
A3: n
in (
dom S);
per cases ;
suppose
A4: m
<>
0 ;
then
A5: (
0
+ 1)
<= m by
NAT_1: 13;
n
<= (
len S) by
A3,
FINSEQ_3: 25;
then m
<= (
len S) by
A2,
XXREAL_0: 2;
then (S
. m)
= ((
FNDSC (V,A))
. m) & (S
. n)
= ((
FNDSC (V,A))
. n) by
A1,
A3,
A5,
Th19,
FINSEQ_3: 25;
hence thesis by
A2,
A4,
Th13;
end;
suppose
A6: m
=
0 ;
not
0
in (
dom S) by
FINSEQ_3: 24;
hence thesis by
A6,
FUNCT_1:def 2;
end;
end;
theorem ::
NOMIN_1:26
Th26: for F be
FinSequence st F
IsNDRankSeq (V,A) holds ex S be
FinSequence st (
len S)
= (1
+ (
len F)) & S
IsNDRankSeq (V,A) & for n be
Nat st n
in (
dom S) holds (S
. n)
= (
NDSS (V,(A
\/ ((
<*A*>
^ F)
. n))))
proof
let F be
FinSequence such that
A1: F
IsNDRankSeq (V,A);
set G = (
<*A*>
^ F);
deffunc
F(
object) = (
NDSS (V,(A
\/ (G
. $1))));
consider S be
FinSequence such that
A2: (
len S)
= (
len G) and
A3: for n be
Nat st n
in (
dom S) holds (S
. n)
=
F(n) from
FINSEQ_1:sch 2;
take S;
(
len
<*A*>)
= 1 by
FINSEQ_1: 39;
hence
A4: (
len S)
= (1
+ (
len F)) by
A2,
FINSEQ_1: 22;
A5: (G
. 1)
= A by
FINSEQ_1: 41;
A6: for n be
Nat st n
in (
dom F) holds (G
. (n
+ 1))
= (F
. n) by
Th1;
A7: 1
<= (
len S) by
A4,
NAT_1: 11;
thus S
IsNDRankSeq (V,A)
proof
thus
A8: (S
. 1)
= (
NDSS (V,(A
\/ (G
. 1)))) by
A3,
A7,
FINSEQ_3: 25
.= (
NDSS (V,A)) by
A5;
let n be
Nat such that
A9: n
in (
dom S) and
A10: (n
+ 1)
in (
dom S);
A11: 1
<= n by
A9,
FINSEQ_3: 25;
A12: n
<= (
len F) by
A4,
A10,
FINSEQ_3: 25,
XREAL_1: 6;
then
A13: n
in (
dom F) by
A11,
FINSEQ_3: 25;
per cases by
A11,
XXREAL_0: 1;
suppose n
= 1;
then (G
. (n
+ 1))
= (S
. n) by
A8,
A12,
A1,
Th1,
FINSEQ_3: 25;
hence (
NDSS (V,(A
\/ (S
. n))))
= (S
. (n
+ 1)) by
A3,
A10;
end;
suppose
A14: n
> 1;
then
reconsider m = (n
- 1) as
Element of
NAT by
INT_1: 5;
(S
. n)
= (
NDSS (V,(A
\/ (G
. (m
+ 1))))) by
A3,
A9
.= (
NDSS (V,(A
\/ (F
. m)))) by
A13,
A14,
Th1,
CGAMES_1: 20
.= (F
. (m
+ 1)) by
A1,
A13,
A14,
CGAMES_1: 20;
then (G
. (n
+ 1))
= (S
. n) by
A6,
A12,
A11,
FINSEQ_3: 25;
hence (
NDSS (V,(A
\/ (S
. n))))
= (S
. (n
+ 1)) by
A3,
A10;
end;
end;
thus thesis by
A3;
end;
Lm1: for f be
Function st ex S be
FinSequence st S
IsNDRankSeq (V,A) & f
in (
Union S) holds f
in (
Union (
FNDSC (V,A)))
proof
set F = (
FNDSC (V,A));
A1: (
dom F)
=
NAT by
Def3;
A2: (F
.
0 )
= (A
\/ A) by
Def3;
let f be
Function;
given S be
FinSequence such that
A3: S
IsNDRankSeq (V,A) and
A4: f
in (
Union S);
consider z be
object such that
A5: z
in (
dom S) and
A6: f
in (S
. z) by
A4,
CARD_5: 2;
reconsider z as
Element of
NAT by
A5;
defpred
P[
Nat] means ($1
+ 1)
in (
dom S) implies (S
. ($1
+ 1))
= (F
. ($1
+ 1));
A7:
P[
0 ] by
A2,
A3,
Def3;
A8: for n st
P[n] holds
P[(n
+ 1)]
proof
let n such that
A9:
P[n] and
A10: ((n
+ 1)
+ 1)
in (
dom S);
A11: ((n
+ 1)
+ 1)
<= (
len S) by
A10,
FINSEQ_3: 25;
(n
+ 1)
<= ((n
+ 1)
+ 1) by
NAT_1: 11;
then
A12: (n
+ 1)
<= (
len S) by
A11,
XXREAL_0: 2;
then (n
+ 1)
in (
dom S) by
NAT_1: 11,
FINSEQ_3: 25;
hence (S
. ((n
+ 1)
+ 1))
= (
NDSS (V,(A
\/ (S
. (n
+ 1))))) by
A3,
A10
.= (F
. ((n
+ 1)
+ 1)) by
A9,
A12,
Def3,
NAT_1: 11,
FINSEQ_3: 25;
end;
A13: for n holds
P[n] from
NAT_1:sch 2(
A7,
A8);
1
<= z by
A5,
FINSEQ_3: 25;
per cases by
XXREAL_0: 1;
suppose
A14: z
= 1;
A15: (F
. (
0
+ 1))
= (
NDSS (V,(A
\/ (F
.
0 )))) by
Def3;
(F
. 1)
in (
rng F) by
A1,
FUNCT_1:def 3;
hence thesis by
A2,
A3,
A6,
A14,
A15,
TARSKI:def 4;
end;
suppose
A16: 1
< z;
then
reconsider lZ = (z
- 1) as
Element of
NAT by
INT_1: 5;
(1
- 1)
< lZ by
A16,
XREAL_1: 14;
then (
0
+ 1)
<= lZ by
NAT_1: 13;
then
reconsider r = (lZ
- 1) as
Element of
NAT by
INT_1: 5;
A17: (S
. (lZ
+ 1))
= (
NDSS (V,(A
\/ (S
. lZ)))) by
A3,
A5,
A16,
CGAMES_1: 20;
A18: (F
. (r
+ 1))
= (S
. (r
+ 1)) by
A5,
A13,
A16,
CGAMES_1: 20;
(F
. (lZ
+ 1))
= (
NDSS (V,(A
\/ (F
. lZ)))) by
Def3;
then (
NDSS (V,(A
\/ (S
. lZ))))
in (
rng F) by
A1,
A18,
FUNCT_1:def 3;
hence thesis by
A6,
A17,
TARSKI:def 4;
end;
end;
theorem ::
NOMIN_1:27
Th27:
<*(
NDSS (V,A))*>
IsNDRankSeq (V,A)
proof
set S =
<*(
NDSS (V,A))*>;
thus (S
. 1)
= (
NDSS (V,A)) by
FINSEQ_1:def 8;
let n be
Nat such that
A1: n
in (
dom S) & (n
+ 1)
in (
dom S);
(
dom S)
=
{1} by
FINSEQ_1: 2,
FINSEQ_1:def 8;
then n
= 1 & (n
+ 1)
= 1 by
A1,
TARSKI:def 1;
hence thesis;
end;
theorem ::
NOMIN_1:28
Th28:
<*(
NDSS (V,A)), (
NDSS (V,(A
\/ (
NDSS (V,A)))))*>
IsNDRankSeq (V,A)
proof
A1:
<*(
NDSS (V,A))*>
IsNDRankSeq (V,A) by
Th27;
(
len
<*(
NDSS (V,A))*>)
= 1 by
FINSEQ_1: 40;
hence thesis by
A1,
Th17;
end;
theorem ::
NOMIN_1:29
<*(
NDSS (V,A)), (
NDSS (V,(A
\/ (
NDSS (V,A))))), (
NDSS (V,(A
\/ (
NDSS (V,(A
\/ (
NDSS (V,A))))))))*>
IsNDRankSeq (V,A)
proof
set S =
<*(
NDSS (V,A)), (
NDSS (V,(A
\/ (
NDSS (V,A)))))*>;
(
len S)
= 2 & (S
. 2)
= (
NDSS (V,(A
\/ (
NDSS (V,A))))) by
FINSEQ_1: 44;
hence thesis by
Th17,
Th28;
end;
definition
let V, A;
::
NOMIN_1:def5
mode
NonatomicND of V,A ->
Function means
:
Def5: ex S be
FinSequence st S
IsNDRankSeq (V,A) & it
in (
Union S);
existence
proof
(
Union
<*(
NDSS (V,A))*>)
= (
NDSS (V,A)) by
FINSEQ_3: 135;
then ( the
PartFunc of V, A
|
{} )
in (
Union
<*(
NDSS (V,A))*>);
hence thesis by
Th27;
end;
sethood
proof
take (
Union (
FNDSC (V,A)));
thus thesis by
Lm1;
end;
end
reserve D,D1,D2 for
NonatomicND of V, A;
theorem ::
NOMIN_1:30
Th30:
{} is
NonatomicND of V, A
proof
take S =
<*(
NDSS (V,A))*>;
(
Union S)
= (
NDSS (V,A)) by
FINSEQ_3: 135;
then ( the
PartFunc of V, A
|
{} )
in (
Union S);
hence thesis by
Th27;
end;
theorem ::
NOMIN_1:31
Th31: D
in (
Union (
FNDSC (V,A)))
proof
ex S be
FinSequence st S
IsNDRankSeq (V,A) & D
in (
Union S) by
Def5;
hence thesis by
Lm1;
end;
theorem ::
NOMIN_1:32
Th32: for d be
set st d
c= D holds d is
NonatomicND of V, A
proof
let d be
set;
assume
A1: d
c= D;
then
reconsider d as
Function;
consider S be
FinSequence such that
A2: S
IsNDRankSeq (V,A) and
A3: D
in (
Union S) by
Def5;
consider x such that
A4: x
in (
dom S) and
A5: D
in (S
. x) by
A3,
CARD_5: 2;
reconsider x as
Element of
NAT by
A4;
now
1
<= x by
A4,
FINSEQ_3: 25;
per cases by
XXREAL_0: 1;
suppose
A6: x
= 1;
then D is
TypeSSNominativeData of V, A by
A2,
A5,
Th4;
then d is
TypeSSNominativeData of V, A by
A1,
RELSET_1: 1;
then d
in (
NDSS (V,A));
hence d
in (
Union S) by
A2,
A4,
A6,
CARD_5: 2;
end;
suppose
A7: x
> 1;
then
reconsider n = (x
- 1) as
Element of
NAT by
INT_1: 5;
A8: (S
. (n
+ 1))
= (
NDSS (V,(A
\/ (S
. n)))) by
A2,
A4,
A7,
CGAMES_1: 20;
then D is
TypeSSNominativeData of V, (A
\/ (S
. n)) by
A5,
Th4;
then d is
TypeSSNominativeData of V, (A
\/ (S
. n)) by
A1,
RELSET_1: 1;
then d
in (
NDSS (V,(A
\/ (S
. n))));
hence d
in (
Union S) by
A4,
A8,
CARD_5: 2;
end;
end;
hence thesis by
A2,
Def5;
end;
theorem ::
NOMIN_1:33
Th33: ex n be
Nat st D is
TypeSSNominativeData of V, (A
\/ ((
FNDSC (V,A))
. n))
proof
set F = (
FNDSC (V,A));
consider S be
FinSequence such that
A1: S
IsNDRankSeq (V,A) and
A2: D
in (
Union S) by
Def5;
consider x be
object such that
A3: x
in (
dom S) and
A4: D
in (S
. x) by
A2,
CARD_5: 2;
reconsider x as
Element of
NAT by
A3;
reconsider n = (x
- 1) as
Element of
NAT by
A3,
FINSEQ_3: 25,
INT_1: 5;
take n;
A5: (F
. (n
+ 1))
= (S
. (n
+ 1)) by
A1,
A3,
Th19;
(F
. (n
+ 1))
= (
NDSS (V,(A
\/ (F
. n)))) by
Def3;
hence thesis by
A4,
A5,
Th4;
end;
registration
let V, A;
cluster ->
finite for
NonatomicND of V, A;
coherence
proof
let D;
ex n be
Nat st D is
TypeSSNominativeData of V, (A
\/ ((
FNDSC (V,A))
. n)) by
Th33;
hence thesis;
end;
end
theorem ::
NOMIN_1:34
Th34: D1
tolerates D2 & S
IsNDRankSeq (V,A) & D1
in (S
. m) & D2
in (S
. m) implies (D1
\/ D2)
in (S
. m)
proof
set D = (D1
\/ D2);
assume that
A1: D1
tolerates D2 and
A2: S
IsNDRankSeq (V,A) and
A3: D1
in (S
. m) & D2
in (S
. m);
A4: m
in (
dom S) by
A3,
FUNCT_1:def 2;
not
0
in (
dom S) by
FINSEQ_3: 24;
then m
<>
0 by
A3,
FUNCT_1:def 2;
then
A5: (
0
+ 1)
<= m by
NAT_1: 13;
then
reconsider z = (m
- 1) as
Element of
NAT by
INT_1: 5;
per cases by
A5,
XXREAL_0: 1;
suppose 1
< m;
then
A6: (S
. (z
+ 1))
= (
NDSS (V,(A
\/ (S
. z)))) by
A2,
A4,
CGAMES_1: 20;
then D1 is
PartFunc of V, (A
\/ (S
. z)) & D2 is
PartFunc of V, (A
\/ (S
. z)) by
A3,
Th4;
then D is V
-defined(A
\/ (S
. z))
-valued;
then D is
PartFunc of V, (A
\/ (S
. z)) by
A1,
RELSET_1: 4,
PARTFUN1: 51;
hence thesis by
A6;
end;
suppose m
= 1;
hence thesis by
A1,
A2,
A3,
Th8;
end;
end;
theorem ::
NOMIN_1:35
Th35: D1
tolerates D2 & S2
IsNDRankSeq (V,A) & S1
c= S2 & D1
in (
Union S1) & D2
in (
Union S2) implies (D1
\/ D2)
in (
Union S2)
proof
set D = (D1
\/ D2);
set S = (S1
+* S2);
A1: (
dom S)
= ((
dom S1)
\/ (
dom S2)) by
FUNCT_4:def 1;
assume that
A2: D1
tolerates D2 and
A3: S2
IsNDRankSeq (V,A) and
A4: S1
c= S2 and
A5: D1
in (
Union S1) and
A6: D2
in (
Union S2);
(
Union S1)
c= (
Union S2) by
A4,
CARD_3: 24;
then
consider i be
object such that
A7: i
in (
dom S2) and
A8: D1
in (S2
. i) by
A5,
CARD_5: 2;
consider j be
object such that
A9: j
in (
dom S2) and
A10: D2
in (S2
. j) by
A6,
CARD_5: 2;
reconsider i as
Element of
NAT by
A7;
reconsider j as
Element of
NAT by
A9;
set k = (
max (i,j));
(
dom S1)
c= (
dom S2) by
A4,
XTUPLE_0: 8;
then
A11: S
= S2 by
FUNCT_4: 19;
k
in (
dom S1) or k
in (
dom S2) by
A7,
A9,
XXREAL_0: 16;
then
A12: k
in (
dom S) by
A1,
XBOOLE_0:def 3;
then
A13: (S2
. i)
c= (S2
. k) by
A3,
A11,
Th25,
XXREAL_0: 25;
(S2
. j)
c= (S2
. k) by
A3,
A11,
A12,
Th25,
XXREAL_0: 25;
hence thesis by
A11,
A12,
A2,
A3,
A10,
A8,
A13,
Th34,
CARD_5: 2;
end;
theorem ::
NOMIN_1:36
Th36: D1
tolerates D2 implies (D1
\/ D2) is
NonatomicND of V, A
proof
set D = (D1
\/ D2);
assume
A1: D1
tolerates D2;
then
A2: D is
Function by
PARTFUN1: 51;
consider S1 be
FinSequence such that
A3: S1
IsNDRankSeq (V,A) and
A4: D1
in (
Union S1) by
Def5;
consider S2 be
FinSequence such that
A5: S2
IsNDRankSeq (V,A) and
A6: D2
in (
Union S2) by
Def5;
S1
c= S2 or S2
c= S1 by
A3,
A5,
Th22;
hence thesis by
A1,
A2,
A3,
A4,
A5,
A6,
Th35,
Def5;
end;
theorem ::
NOMIN_1:37
D1
tolerates D2 implies (D1
+* D2) is
NonatomicND of V, A
proof
assume
A1: D1
tolerates D2;
then (D1
\/ D2)
= (D1
+* D2) by
FUNCT_4: 30;
hence thesis by
A1,
Th36;
end;
definition
let V, A;
::
NOMIN_1:def6
mode
TypeSCNominativeData of V,A ->
set means
:
Def6: it
in A or it is
NonatomicND of V, A;
existence
proof
take the
NonatomicND of V, A;
thus thesis;
end;
sethood
proof
set X = (
Union (
FNDSC (V,A)));
take (A
\/ X);
let x be
set;
assume x
in A or x is
NonatomicND of V, A;
then x
in A or x is
Function & ex S be
FinSequence st S
IsNDRankSeq (V,A) & x
in (
Union S) by
Def5;
then x
in A or x
in X by
Lm1;
hence thesis by
XBOOLE_0:def 3;
end;
end
registration
let V, A;
cluster
Function-like
Relation-like for
TypeSCNominativeData of V, A;
existence
proof
{} is
NonatomicND of V, A by
Th30;
then
reconsider e =
{} as
TypeSCNominativeData of V, A by
Def6;
take e;
thus thesis;
end;
end
definition
let V, A;
:: original:
NonatomicND
redefine
mode
NonatomicND of V,A ->
Function-like
Relation-like
TypeSCNominativeData of V, A ;
coherence by
Def6;
end
definition
let V, A;
::
NOMIN_1:def7
func
ND (V,A) ->
set equals the set of all D where D be
TypeSCNominativeData of V, A;
coherence ;
end
registration
let V, A;
cluster (
ND (V,A)) -> non
empty;
coherence
proof
the
TypeSCNominativeData of V, A
in (
ND (V,A));
hence thesis;
end;
end
theorem ::
NOMIN_1:38
{}
in (
ND (V,A))
proof
{} is
NonatomicND of V, A by
Th30;
hence thesis;
end;
theorem ::
NOMIN_1:39
Th39: x
in (
ND (V,A)) implies x is
TypeSCNominativeData of V, A
proof
assume x
in (
ND (V,A));
then ex D be
TypeSCNominativeData of V, A st x
= D;
hence thesis;
end;
theorem ::
NOMIN_1:40
(
ND (V,A))
= (
Union (
FNDSC (V,A)))
proof
set F = (
FNDSC (V,A));
thus (
ND (V,A))
c= (
Union F)
proof
let x;
assume x
in (
ND (V,A));
then x is
TypeSCNominativeData of V, A by
Th39;
then
A1: x
in A or x is
NonatomicND of V, A by
Def6;
A
c= (
Union F) by
Th11;
hence thesis by
A1,
Th31;
end;
let x;
assume x
in (
Union F);
then
consider z be
object such that
A2: z
in (
dom F) and
A3: x
in (F
. z) by
CARD_5: 2;
reconsider z as
Element of
NAT by
A2,
Def3;
per cases ;
suppose z
=
0 ;
then x
in A by
A3,
Def3;
then x is
TypeSCNominativeData of V, A by
Def6;
hence thesis;
end;
suppose
A4: z
<>
0 ;
then
A5: 1
<= z by
NAT_1: 14;
reconsider n = (z
- 1) as
Element of
NAT by
A4,
INT_1: 5,
NAT_1: 14;
A6: (
dom F)
=
NAT by
Def3;
set S = (F
| (
Seg z));
(F
. (n
+ 1))
= (
NDSS (V,(A
\/ (F
. n)))) by
Def3;
then
A7: x is
TypeSSNominativeData of V, (A
\/ (F
. n)) by
A3,
Th4;
A8: (
dom S)
= (
Seg z) by
A6,
RELAT_1: 62;
A9: z
in (
Seg z) by
A5;
then (S
. z)
= (F
. z) by
FUNCT_1: 49;
then (F
. z)
in (
rng S) by
A8,
A9,
FUNCT_1:def 3;
then x
in (
Union S) by
A3,
TARSKI:def 4;
then x is
NonatomicND of V, A by
A7,
A5,
Th18,
Def5;
hence thesis;
end;
end;
theorem ::
NOMIN_1:41
Th41: D
in (
ND (V,A))
proof
D is
TypeSCNominativeData of V, A by
Def6;
hence thesis;
end;
theorem ::
NOMIN_1:42
Th42: not D
in A implies D
in ((
ND (V,A))
\ A)
proof
D
in (
ND (V,A)) by
Th41;
hence thesis by
XBOOLE_0:def 5;
end;
theorem ::
NOMIN_1:43
Th43: x
in ((
ND (V,A))
\ A) implies x is
NonatomicND of V, A
proof
assume
A1: x
in ((
ND (V,A))
\ A);
then x
in (
ND (V,A));
then
A2: ex w be
TypeSCNominativeData of V, A st x
= w;
not x
in A by
A1,
XBOOLE_0:def 5;
hence thesis by
A2,
Def6;
end;
theorem ::
NOMIN_1:44
for D be
TypeSCNominativeData of V, A holds D
in (
Union (
FNDSC (V,A)))
proof
let D be
TypeSCNominativeData of V, A;
A1: D
in A or D is
NonatomicND of V, A by
Def6;
A
c= (
Union (
FNDSC (V,A))) by
Th11;
hence thesis by
A1,
Th31;
end;
begin
::$Notion-Name
definition
let v, a;
::
NOMIN_1:def8
func
ND_ex_1 (v,a) ->
set equals (v
.--> a);
coherence ;
end
registration
let v, a;
cluster (
ND_ex_1 (v,a)) ->
Function-like
Relation-like;
coherence ;
end
theorem ::
NOMIN_1:45
Th45: v
in V & a
in A implies (
ND_ex_1 (v,a))
in (
NDSS (V,A))
proof
assume that
A1: v
in V and
A2: a
in A;
reconsider V1 = V, A1 = A as non
empty
set by
A1,
A2;
reconsider v as
Element of V1 by
A1;
reconsider a as
Element of A1 by
A2;
(v
.--> a)
in (
NDSS (V,A));
hence thesis;
end;
theorem ::
NOMIN_1:46
Th46: v
in V & a
in A implies (
ND_ex_1 (v,a)) is
NonatomicND of V, A
proof
assume
A1: v
in V & a
in A;
take S =
<*(
NDSS (V,A))*>;
thus S
IsNDRankSeq (V,A) by
Th27;
(
ND_ex_1 (v,a))
in (
NDSS (V,A)) by
A1,
Th45;
hence thesis by
FINSEQ_3: 135;
end;
definition
let V,A be non
empty
set;
let v be
Element of V;
let a be
Element of A;
:: original:
ND_ex_1
redefine
func
ND_ex_1 (v,a) ->
NonatomicND of V, A ;
coherence by
Th46;
end
theorem ::
NOMIN_1:47
v
in V & a
in A implies (
ND_ex_1 (v,a)) is
TypeSCNominativeData of V, A by
Th46;
::$Notion-Name
definition
let v, v1, a1;
::
NOMIN_1:def9
func
ND_ex_2 (v,v1,a1) ->
set equals (v
.--> (v1
.--> a1));
coherence ;
end
registration
let v, v1, a1;
cluster (
ND_ex_2 (v,v1,a1)) ->
Function-like
Relation-like;
coherence ;
end
theorem ::
NOMIN_1:48
Th48:
{v, v1}
c= V & a1
in A implies (
ND_ex_2 (v,v1,a1))
in (
NDSS (V,(A
\/ (
NDSS (V,A)))))
proof
assume that
A1:
{v, v1}
c= V and
A2: a1
in A;
reconsider V1 = V, A1 = A as non
empty
set by
A1,
A2;
reconsider v, v1 as
Element of V1 by
A1,
ZFMISC_1: 32;
reconsider a1 as
Element of A1 by
A2;
set d = (
ND_ex_2 (v,v1,a1));
A3: (
dom (v
.--> (v1
.--> a1)))
c= V;
A4: (
rng d)
=
{(v1
.--> a1)} by
FUNCOP_1: 88;
(v1
.--> a1)
in (
NDSS (V,A));
then (v1
.--> a1)
in (A
\/ (
NDSS (V,A))) by
XBOOLE_0:def 3;
then (
rng d)
c= (A
\/ (
NDSS (V,A))) by
A4,
ZFMISC_1: 31;
then d is
PartFunc of V, (A
\/ (
NDSS (V,A))) by
A3,
RELSET_1: 4;
hence thesis;
end;
theorem ::
NOMIN_1:49
Th49:
{v, v1}
c= V & a1
in A implies (
ND_ex_2 (v,v1,a1)) is
NonatomicND of V, A
proof
assume
A1:
{v, v1}
c= V & a1
in A;
take S =
<*(
NDSS (V,A)), (
NDSS (V,(A
\/ (
NDSS (V,A)))))*>;
thus S
IsNDRankSeq (V,A) by
Th28;
A2: (
Union S)
= ((
NDSS (V,A))
\/ (
NDSS (V,(A
\/ (
NDSS (V,A)))))) by
FINSEQ_3: 136;
(
ND_ex_2 (v,v1,a1))
in (
NDSS (V,(A
\/ (
NDSS (V,A))))) by
A1,
Th48;
hence thesis by
A2,
XBOOLE_0:def 3;
end;
definition
let V,A be non
empty
set;
let v,v1 be
Element of V;
let a be
Element of A;
:: original:
ND_ex_2
redefine
func
ND_ex_2 (v,v1,a) ->
NonatomicND of V, A ;
coherence
proof
{v, v1}
c= V by
ZFMISC_1: 32;
hence thesis by
Th49;
end;
end
theorem ::
NOMIN_1:50
{v, v1}
c= V & a1
in A implies (
ND_ex_2 (v,v1,a1)) is
TypeSCNominativeData of V, A by
Th49;
::$Notion-Name
definition
let v, v1, a, a1;
::
NOMIN_1:def10
func
ND_ex_3 (v,v1,a,a1) ->
set equals ((v,v1)
--> (a,a1));
coherence ;
end
registration
let v, v1, a, a1;
cluster (
ND_ex_3 (v,v1,a,a1)) ->
Function-like
Relation-like;
coherence ;
end
theorem ::
NOMIN_1:51
Th51:
{v, v1}
c= V &
{a, a1}
c= A implies (
ND_ex_3 (v,v1,a,a1))
in (
NDSS (V,A))
proof
assume that
A1:
{v, v1}
c= V and
A2:
{a, a1}
c= A;
per cases ;
suppose v
= v1;
then
A3: (
ND_ex_3 (v,v1,a,a1))
= (
ND_ex_1 (v1,a1)) by
FUNCT_4: 81;
v1
in V & a1
in A by
A1,
A2,
ZFMISC_1: 32;
hence thesis by
A3,
Th45;
end;
suppose v
<> v1;
then
{v}
misses
{v1} by
ZFMISC_1: 11;
then
A4: (
ND_ex_1 (v,a))
tolerates (
ND_ex_1 (v1,a1)) by
FUNCOP_1: 87;
v
in V & v1
in V & a
in A & a1
in A by
A1,
A2,
ZFMISC_1: 32;
then
A5: (
ND_ex_1 (v,a))
in (
NDSS (V,A)) & (
ND_ex_1 (v1,a1))
in (
NDSS (V,A)) by
Th45;
(
ND_ex_3 (v,v1,a,a1))
= ((
ND_ex_1 (v,a))
\/ (
ND_ex_1 (v1,a1))) by
A4,
FUNCT_4: 30;
hence thesis by
A4,
A5,
Th8;
end;
end;
theorem ::
NOMIN_1:52
Th52:
{v, v1}
c= V &
{a, a1}
c= A implies (
ND_ex_3 (v,v1,a,a1)) is
NonatomicND of V, A
proof
assume
A1:
{v, v1}
c= V &
{a, a1}
c= A;
take
<*(
NDSS (V,A))*>;
thus
<*(
NDSS (V,A))*>
IsNDRankSeq (V,A) by
Th27;
(
ND_ex_3 (v,v1,a,a1))
in (
NDSS (V,A)) by
A1,
Th51;
hence thesis by
FINSEQ_3: 135;
end;
definition
let V,A be non
empty
set;
let v,v1 be
Element of V;
let a,a1 be
Element of A;
:: original:
ND_ex_3
redefine
func
ND_ex_3 (v,v1,a,a1) ->
NonatomicND of V, A ;
coherence
proof
{v, v1}
c= V &
{a, a1}
c= A by
ZFMISC_1: 32;
hence thesis by
Th52;
end;
end
theorem ::
NOMIN_1:53
{v, v1}
c= V &
{a, a1}
c= A implies (
ND_ex_3 (v,v1,a,a1)) is
TypeSCNominativeData of V, A by
Th52;
::$Notion-Name
definition
let v, v1, v2, a, a1;
::
NOMIN_1:def11
func
ND_ex_4 (v,v1,v2,a,a1) ->
set equals ((v,v1)
--> (a,(v2
.--> a1)));
coherence ;
end
registration
let v, v1, v2, a, a1;
cluster (
ND_ex_4 (v,v1,v2,a,a1)) ->
Function-like
Relation-like;
coherence ;
end
theorem ::
NOMIN_1:54
Th54:
{v, v1, v2}
c= V &
{a, a1}
c= A implies (
ND_ex_4 (v,v1,v2,a,a1))
in (
NDSS (V,(A
\/ (
NDSS (V,A)))))
proof
assume that
A1:
{v, v1, v2}
c= V and
A2:
{a, a1}
c= A;
v
in
{v, v1, v2} by
ENUMSET1:def 1;
then
A3: v
in V by
A1;
v1
in
{v, v1, v2} by
ENUMSET1:def 1;
then
A4: v1
in V by
A1;
A5: v2
in
{v, v1, v2} by
ENUMSET1:def 1;
A6: a
in A by
A2,
ZFMISC_1: 32;
A7: a1
in A by
A2,
ZFMISC_1: 32;
set f = (v2
.--> a1);
set g = (
ND_ex_4 (v,v1,v2,a,a1));
(
dom g)
=
{v, v1} by
FUNCT_4: 62;
then
A8: (
dom g)
c= V by
A3,
A4,
TARSKI:def 2;
A9: (
rng g)
c=
{a, f} by
FUNCT_4: 62;
(
rng g)
c= (A
\/ (
NDSS (V,A)))
proof
let x;
assume x
in (
rng g);
per cases by
A9,
TARSKI:def 2;
suppose x
= a;
hence thesis by
A6,
XBOOLE_0:def 3;
end;
suppose
A10: x
= f;
A11: (
dom f)
c= V by
A1,
A5,
ZFMISC_1: 31;
(
rng f)
=
{a1} by
FUNCOP_1: 8;
then (
rng f)
c= A by
A7,
ZFMISC_1: 31;
then f is
PartFunc of V, A by
A11,
RELSET_1: 4;
then f
in (
NDSS (V,A));
hence thesis by
A10,
XBOOLE_0:def 3;
end;
end;
then g is
PartFunc of V, (A
\/ (
NDSS (V,A))) by
A8,
RELSET_1: 4;
hence g
in (
NDSS (V,(A
\/ (
NDSS (V,A)))));
end;
theorem ::
NOMIN_1:55
Th55:
{v, v1, v2}
c= V &
{a, a1}
c= A implies (
ND_ex_4 (v,v1,v2,a,a1)) is
NonatomicND of V, A
proof
assume
A1:
{v, v1, v2}
c= V &
{a, a1}
c= A;
set R = (
ND_ex_4 (v,v1,v2,a,a1));
set S1 = (
NDSS (V,A));
set S2 = (
NDSS (V,(A
\/ (
NDSS (V,A)))));
R
in S2 by
A1,
Th54;
then
A2: R
in (S1
\/ S2) by
XBOOLE_0:def 3;
(
Union
<*S1, S2*>)
= (S1
\/ S2) by
FINSEQ_3: 136;
hence thesis by
A2,
Def5,
Th28;
end;
definition
let V,A be non
empty
set;
let v,v1,v2 be
Element of V;
let a,a1 be
Element of A;
:: original:
ND_ex_4
redefine
func
ND_ex_4 (v,v1,v2,a,a1) ->
NonatomicND of V, A ;
coherence
proof
A1:
{v, v1, v2}
c= V
proof
let x;
assume x
in
{v, v1, v2};
then x
= v or x
= v1 or x
= v2 by
ENUMSET1:def 1;
hence thesis;
end;
{a, a1}
c= A by
ZFMISC_1: 32;
hence thesis by
A1,
Th55;
end;
end
theorem ::
NOMIN_1:56
{v, v1, v2}
c= V &
{a, a1}
c= A implies (
ND_ex_4 (v,v1,v2,a,a1)) is
TypeSCNominativeData of V, A by
Th55;
theorem ::
NOMIN_1:57
<*x*> is
NonatomicND of
{1},
{x}
proof
take
<*(
NDSS (
{1},
{x}))*>;
thus
<*(
NDSS (
{1},
{x}))*>
IsNDRankSeq (
{1},
{x}) by
Th27;
<*x*>
in (
NDSS (
{1},
{x}))
proof
1
in
{1} & x
in
{x} by
TARSKI:def 1;
then
<*x*> is
Relation of
{1},
{x} by
RELSET_1: 3;
hence thesis;
end;
hence thesis by
FINSEQ_3: 135;
end;
begin
definition
let V, A, v, D;
::
NOMIN_1:def12
func
denaming (v,D) ->
TypeSCNominativeData of V, A equals
:
Def12: (D
. v);
coherence
proof
assume
A2: not (D
. v)
in A;
consider S be
FinSequence such that
A3: S
IsNDRankSeq (V,A) and
A4: D
in (
Union S) by
Def5;
consider Z be
set such that
A5: D
in Z and
A6: Z
in (
rng S) by
A4,
TARSKI:def 4;
consider z be
object such that
A7: z
in (
dom S) and
A8: (S
. z)
= Z by
A6,
FUNCT_1:def 3;
reconsider z as
Element of
NAT by
A7;
1
<= z by
A7,
FINSEQ_3: 25;
per cases by
XXREAL_0: 1;
suppose z
= 1;
then ex w be
TypeSSNominativeData of V, A st w
= D by
A3,
A5,
A8;
hence thesis by
A1,
A2,
PARTFUN1: 4;
end;
suppose
A9: z
> 1;
reconsider lS = (z
- 1) as
Element of
NAT by
A7,
FINSEQ_3: 25,
INT_1: 5;
set S1 = (S
| lS);
A10: (
dom S1)
c= (
dom S) by
RELAT_1: 60;
A11: z
<= (
len S) by
A7,
FINSEQ_3: 25;
(1
- 1)
< lS by
A9,
XREAL_1: 14;
then
A12: (
0
+ 1)
<= lS by
NAT_1: 13;
lS
<= (z
-
0 ) by
XREAL_1: 10;
then (
len S1)
= lS by
A11,
XXREAL_0: 2,
FINSEQ_1: 59;
then
A13: lS
in (
dom S1) by
A12,
FINSEQ_3: 25;
then (S
. (lS
+ 1))
= (
NDSS (V,(A
\/ (S
. lS)))) by
A7,
A3,
A10;
then
consider d be
TypeSSNominativeData of V, (A
\/ (S
. lS)) such that
A14: D
= d by
A5,
A8;
A15: (D
. v)
in (A
\/ (S
. lS)) by
A1,
A14,
PARTFUN1: 4;
A16: not (D
. v)
in A implies (D
. v) is
Function
proof
assume
A17: not (D
. v)
in A;
per cases by
A12,
XXREAL_0: 1;
suppose lS
= 1;
then (D
. v)
in (S
. 1) by
A15,
A17,
XBOOLE_0:def 3;
then ex w be
TypeSSNominativeData of V, A st w
= (D
. v) by
A3;
hence (D
. v) is
Function;
end;
suppose
A18: lS
> 1;
then
reconsider c = (lS
- 1) as
Element of
NAT by
INT_1: 5;
c
> (1
- 1) by
A18,
XREAL_1: 14;
then
A19: 1
<= c by
NAT_1: 14;
A20: lS
<= (
len S) by
A10,
A13,
FINSEQ_3: 25;
c
<= (lS
-
0 ) by
XREAL_1: 10;
then c
<= (
len S) by
A20,
XXREAL_0: 2;
then c
in (
dom S) by
A19,
FINSEQ_3: 25;
then (S
. (c
+ 1))
= (
NDSS (V,(A
\/ (S
. c)))) & (D
. v)
in (S
. lS) by
A3,
A10,
A13,
A15,
A17,
XBOOLE_0:def 3;
then ex w be
TypeSSNominativeData of V, (A
\/ (S
. c)) st w
= (D
. v);
hence (D
. v) is
Function;
end;
end;
(S1
. lS)
= (S
. lS) by
FINSEQ_3: 112;
then (S
. lS)
in (
rng S1) & (D
. v)
in (S
. lS) by
A2,
A13,
A15,
FUNCT_1:def 3,
XBOOLE_0:def 3;
then (D
. v)
in (
Union S1) by
TARSKI:def 4;
hence thesis by
A2,
A3,
A10,
A13,
A16,
Th16,
Def5;
end;
end;
end
definition
let V, A;
let v,D be
object;
assume
A1: D is
TypeSCNominativeData of V, A;
assume
A2: v
in V;
::
NOMIN_1:def13
func
naming (V,A,v,D) ->
NonatomicND of V, A equals
:
Def13: (v
.--> D);
coherence
proof
A3: (
ND_ex_1 (v,D))
= (v
.--> D);
per cases by
A1,
Def6;
suppose D
in A;
hence thesis by
A2,
A3,
Th46;
end;
suppose D is
NonatomicND of V, A;
then
consider F be
FinSequence such that
A4: F
IsNDRankSeq (V,A) and
A5: D
in (
Union F) by
Def5;
consider Z be
set such that
A6: D
in Z and
A7: Z
in (
rng F) by
A5,
TARSKI:def 4;
reconsider Z as non
empty
set by
A6;
reconsider D1 = D as
Element of Z by
A6;
reconsider V as non
empty
set by
A2;
reconsider v as
Element of V by
A2;
set d = (v
.--> D);
(v
.--> D1) is
NominativeSet of V, Z;
then
A8: d
in (
NDSS (V,Z));
A9: (
NDSS (V,Z))
c= (
NDSS (V,(A
\/ Z))) by
Th7,
XBOOLE_1: 7;
consider x be
object such that
A10: x
in (
dom F) and
A11: (F
. x)
= Z by
A7,
FUNCT_1:def 3;
reconsider x as
Nat by
A10;
A12: x
<= (
len F) by
A10,
FINSEQ_3: 25;
consider S be
FinSequence such that
A13: (
len S)
= (1
+ (
len F)) and
A14: S
IsNDRankSeq (V,A) and
A15: for n be
Nat st n
in (
dom S) holds (S
. n)
= (
NDSS (V,(A
\/ ((
<*A*>
^ F)
. n)))) by
A4,
Th26;
1
<= (x
+ 1) by
NAT_1: 11;
then
A16: (x
+ 1)
in (
dom S) by
A13,
A12,
XREAL_1: 6,
FINSEQ_3: 25;
then (S
. (x
+ 1))
= (
NDSS (V,(A
\/ ((
<*A*>
^ F)
. (x
+ 1))))) by
A15
.= (
NDSS (V,(A
\/ Z))) by
A10,
A11,
Th1;
then (
NDSS (V,(A
\/ Z)))
in (
rng S) by
A16,
FUNCT_1:def 3;
then d
in (
Union S) by
A8,
A9,
TARSKI:def 4;
hence thesis by
A14,
Def5;
end;
end;
end
definition
let V, A;
let a be
object;
let f be V
-valued
FinSequence;
assume
A1: (
len f)
>
0 ;
::
NOMIN_1:def14
func
namingSeq (V,A,f,a) ->
FinSequence means
:
Def14: (
len it )
= (
len f) & (it
. 1)
= (
naming (V,A,(f
. (
len f)),a)) & for n be
Nat st 1
<= n
< (
len it ) holds (it
. (n
+ 1))
= (
naming (V,A,(f
. ((
len f)
- n)),(it
. n)));
existence
proof
defpred
P[
Nat,
object,
object] means $3
= (
naming (V,A,(f
. ((
len f)
- $1)),$2));
A2: for n be
Nat st 1
<= n & n
< (
len f) holds for x be
set holds ex y be
set st
P[n, x, y];
ex g be
FinSequence st (
len g)
= (
len f) & ((g
. 1)
= (
naming (V,A,(f
. (
len f)),a)) or (
len f)
=
0 ) & for n be
Nat st 1
<= n
< (
len f) holds
P[n, (g
. n), (g
. (n
+ 1))] from
RECDEF_1:sch 3(
A2);
hence thesis by
A1;
end;
uniqueness
proof
let g1,g2 be
FinSequence such that
A3: (
len g1)
= (
len f) and
A4: (g1
. 1)
= (
naming (V,A,(f
. (
len f)),a)) and
A5: for n be
Nat st 1
<= n
< (
len g1) holds (g1
. (n
+ 1))
= (
naming (V,A,(f
. ((
len f)
- n)),(g1
. n))) and
A6: (
len g2)
= (
len f) and
A7: (g2
. 1)
= (
naming (V,A,(f
. (
len f)),a)) and
A8: for n be
Nat st 1
<= n
< (
len g2) holds (g2
. (n
+ 1))
= (
naming (V,A,(f
. ((
len f)
- n)),(g2
. n)));
thus (
len g1)
= (
len g2) by
A3,
A6;
defpred
P[
Nat] means 1
<= $1
<= (
len g1) implies (g1
. $1)
= (g2
. $1);
A9:
P[
0 ];
A10: for k be
Nat st
P[k] holds
P[(k
+ 1)]
proof
let k be
Nat such that
A11:
P[k] and 1
<= (k
+ 1) and
A12: (k
+ 1)
<= (
len g1);
per cases ;
suppose k
<>
0 ;
then
A13: 1
<= k by
NAT_1: 14;
hence (g1
. (k
+ 1))
= (
naming (V,A,(f
. ((
len f)
- k)),(g2
. k))) by
A5,
A11,
A12,
NAT_1: 13
.= (g2
. (k
+ 1)) by
A3,
A6,
A8,
A13,
A12,
NAT_1: 13;
end;
suppose k
=
0 ;
hence thesis by
A4,
A7;
end;
end;
for k be
Nat holds
P[k] from
NAT_1:sch 2(
A9,
A10);
hence thesis;
end;
end
theorem ::
NOMIN_1:58
Th58: for f be V
-valued
FinSequence holds 1
<= n
<= (
len f) implies ((
namingSeq (V,A,f,a))
. n) is
NonatomicND of V, A
proof
let f be V
-valued
FinSequence;
assume that
A1: 1
<= n and
A2: n
<= (
len f);
set g = (
namingSeq (V,A,f,a));
per cases by
A1,
XXREAL_0: 1;
suppose n
= 1;
then (g
. n)
= (
naming (V,A,(f
. (
len f)),a)) by
A2,
Def14;
hence thesis;
end;
suppose
A3: n
> 1;
then
reconsider k = (n
- 1) as
Element of
NAT by
INT_1: 5;
(1
- 1)
< k by
A3,
XREAL_1: 9;
then
A4: (
0
+ 1)
<= k by
INT_1: 7;
A5: (
len f)
= (
len g) by
A1,
A2,
Def14;
(k
+
0 )
< (k
+ 1) by
XREAL_1: 8;
then k
< (
len g) by
A2,
A5,
XXREAL_0: 2;
then (g
. (k
+ 1))
= (
naming (V,A,(f
. ((
len f)
- k)),(g
. k))) by
A2,
A4,
Def14;
hence thesis;
end;
end;
definition
let V, A;
let f be V
-valued
FinSequence;
let a be
object;
::
NOMIN_1:def15
func
naming (V,A,f,a) ->
set equals ((
namingSeq (V,A,f,a))
. (
len (
namingSeq (V,A,f,a))));
coherence ;
end
theorem ::
NOMIN_1:59
for f be V
-valued
FinSequence st (
len f)
>
0 holds (
naming (V,A,f,a)) is
NonatomicND of V, A
proof
let f be V
-valued
FinSequence such that
A1: (
len f)
>
0 ;
A2: (
len (
namingSeq (V,A,f,a)))
= (
len f) by
A1,
Def14;
then (
0
+ 1)
<= (
len (
namingSeq (V,A,f,a))) by
A1,
NAT_1: 13;
hence thesis by
A2,
Th58;
end;
theorem ::
NOMIN_1:60
for V be non
empty
set holds for v be
Element of V holds (
naming (V,A,
<*v*>,a))
= (
naming (V,A,v,a))
proof
let V be non
empty
set;
let v be
Element of V;
set f =
<*v*>;
A1: (
len f)
= 1 & (f
. 1)
= v by
FINSEQ_1: 40;
(
len (
namingSeq (V,A,f,a)))
= (
len f) by
Def14;
hence thesis by
A1,
Def14;
end;
theorem ::
NOMIN_1:61
for V be non
empty
set holds for v1,v2 be
Element of V st a is
TypeSCNominativeData of V, A holds (
naming (V,A,
<*v1, v2*>,a))
= (v1
.--> (v2
.--> a))
proof
let V be non
empty
set;
let v1,v2 be
Element of V such that
A1: a is
TypeSCNominativeData of V, A;
set f =
<*v1, v2*>;
set g = (
namingSeq (V,A,f,a));
A2: (
len f)
= 2 by
FINSEQ_1: 44;
A3: (f
. 1)
= v1 by
FINSEQ_1: 44;
A4: (f
. 2)
= v2 by
FINSEQ_1: 44;
A5: (
len g)
= (
len f) by
Def14;
A6: (g
. 1) is
NonatomicND of V, A by
A2,
Th58;
A7: (g
. 1)
= (
naming (V,A,(f
. (
len f)),a)) by
Def14
.= (v2
.--> a) by
A2,
A4,
A1,
Def13;
thus (
naming (V,A,
<*v1, v2*>,a))
= (
naming (V,A,(f
. ((
len f)
- 1)),(g
. 1))) by
A2,
A5,
Def14
.= (v1
.--> (v2
.--> a)) by
A2,
A3,
A6,
A7,
Def13;
end;
theorem ::
NOMIN_1:62
for D be
TypeSCNominativeData of V, A holds v
in V implies (
denaming (v,(
naming (V,A,v,D))))
= D
proof
let D be
TypeSCNominativeData of V, A;
assume
A1: v
in V;
(
naming (V,A,v,D))
= (v
.--> D) by
A1,
Def13;
then v
in (
dom (
naming (V,A,v,D))) by
TARSKI:def 1;
hence (
denaming (v,(
naming (V,A,v,D))))
= ((
naming (V,A,v,D))
. v) by
Def12
.= ((v
.--> D)
. v) by
A1,
Def13
.= D by
FUNCOP_1: 72;
end;
theorem ::
NOMIN_1:63
v
in (
dom D) implies (
naming (V,A,v,(
denaming (v,D))))
= (v
.--> (D
. v))
proof
assume
A1: v
in (
dom D);
ex n be
Nat st D is
TypeSSNominativeData of V, (A
\/ ((
FNDSC (V,A))
. n)) by
Th33;
then (
dom D)
c= V by
RELAT_1:def 18;
hence (
naming (V,A,v,(
denaming (v,D))))
= (v
.--> (
denaming (v,D))) by
A1,
Def13
.= (v
.--> (D
. v)) by
A1,
Def12;
end;
definition
let V, A;
let d1,d2 be
object;
::
NOMIN_1:def16
func
global_overlapping (V,A,d1,d2) ->
TypeSCNominativeData of V, A means
:
Def16: ex f1,f2 be
Function st f1
= d1 & f2
= d2 & it
= (f2
\/ (f1
| ((
dom f1)
\ (
dom f2)))) if not d1
in A & not d2
in A
otherwise it
= d2;
existence
proof
per cases ;
suppose that
A3: not d1
in A and
A4: not d2
in A;
reconsider f1 = d1 as
Function by
A1,
A3,
Def6;
reconsider f2 = d2 as
Function by
A2,
A4,
Def6;
set X = ((
dom f1)
\ (
dom f2));
set D = (f2
\/ (f1
| X));
D is
NonatomicND of V, A
proof
d1 is
NonatomicND of V, A by
A1,
A3,
Def6;
then
A5: (f1
| X) is
NonatomicND of V, A by
Th32,
RELAT_1: 59;
A6: d2 is
NonatomicND of V, A by
A2,
A4,
Def6;
A7: (
dom (f1
| X))
= ((
dom f1)
\ (
dom f2)) by
RELAT_1: 62;
((
dom f1)
\ (
dom f2))
misses (
dom f2) by
XBOOLE_1: 79;
hence thesis by
A5,
A6,
A7,
Th36,
PARTFUN1: 56;
end;
hence thesis by
A2;
end;
suppose d1
in A or d2
in A;
hence thesis by
A2;
end;
end;
uniqueness ;
consistency ;
end
definition
let V, A;
let d1,d2,v be
object;
::
NOMIN_1:def17
func
local_overlapping (V,A,d1,d2,v) ->
TypeSCNominativeData of V, A equals (
global_overlapping (V,A,d1,(
naming (V,A,v,d2))));
coherence ;
end
theorem ::
NOMIN_1:64
Th64: not D1
in A & not D2
in A implies (
global_overlapping (V,A,D1,D2))
= (D2
\/ (D1
| ((
dom D1)
\ (
dom D2))))
proof
A1: D1 is
TypeSCNominativeData of V, A by
Def6;
A2: D2 is
TypeSCNominativeData of V, A by
Def6;
assume not D1
in A & not D2
in A;
then ex f1,f2 be
Function st f1
= D1 & f2
= D2 & (
global_overlapping (V,A,D1,D2))
= (f2
\/ (f1
| ((
dom f1)
\ (
dom f2)))) by
A1,
A2,
Def16;
hence thesis;
end;
theorem ::
NOMIN_1:65
Th65: not D1
in A & not D2
in A & (
dom D1)
c= (
dom D2) implies (
global_overlapping (V,A,D1,D2))
= D2
proof
assume
A1: not D1
in A & not D2
in A;
assume
A2: (
dom D1)
c= (
dom D2);
thus (
global_overlapping (V,A,D1,D2))
= (D2
\/ (D1
| ((
dom D1)
\ (
dom D2)))) by
A1,
Th64
.= (D2
\/ (D1
|
{} )) by
A2,
XBOOLE_1: 37
.= D2;
end;
theorem ::
NOMIN_1:66
(
global_overlapping (V,A,D,D))
= D
proof
per cases ;
suppose
A1: not D
in A;
(
dom D)
c= (
dom D);
hence thesis by
A1,
Th65;
end;
suppose
A2: D
in A;
D is
TypeSCNominativeData of V, A by
Def6;
hence thesis by
A2,
Def16;
end;
end;
theorem ::
NOMIN_1:67
v
in V & not (v
.--> a1)
in A & not (v
.--> a2)
in A & a1 is
TypeSCNominativeData of V, A & a2 is
TypeSCNominativeData of V, A implies (
global_overlapping (V,A,(v
.--> a1),(v
.--> a2)))
= (v
.--> a2)
proof
assume that
A1: v
in V and
A2: not (v
.--> a1)
in A & not (v
.--> a2)
in A and
A3: a1 is
TypeSCNominativeData of V, A & a2 is
TypeSCNominativeData of V, A;
(
naming (V,A,v,a1))
= (v
.--> a1) & (
naming (V,A,v,a2))
= (v
.--> a2) by
A1,
A3,
Def13;
hence thesis by
A2,
Th65;
end;
theorem ::
NOMIN_1:68
Th68:
{v1, v2}
c= V & v1
<> v2 & not (v1
.--> a1)
in A & not (v2
.--> a2)
in A & a1 is
TypeSCNominativeData of V, A & a2 is
TypeSCNominativeData of V, A implies (
global_overlapping (V,A,(v1
.--> a1),(v2
.--> a2)))
= ((v2,v1)
--> (a2,a1))
proof
set D1 = (v1
.--> a1);
set D2 = (v2
.--> a2);
assume that
A1:
{v1, v2}
c= V and
A2: v1
<> v2 and
A3: not D1
in A & not D2
in A and
A4: a1 is
TypeSCNominativeData of V, A & a2 is
TypeSCNominativeData of V, A;
v1
in V & v2
in V by
A1,
ZFMISC_1: 32;
then
A5: (
naming (V,A,v1,a1))
= (v1
.--> a1) & (
naming (V,A,v2,a2))
= (v2
.--> a2) by
A4,
Def13;
A6: (
{v1}
\
{v2})
=
{v1} by
A2,
ZFMISC_1: 14;
{v1}
misses
{v2} by
A2,
ZFMISC_1: 11;
hence ((v2,v1)
--> (a2,a1))
= (D2
\/ (D1
| ((
dom D1)
\ (
dom D2)))) by
A6,
FUNCT_4: 30,
PARTFUN1: 56
.= (
global_overlapping (V,A,D1,D2)) by
A3,
A5,
Th64;
end;
theorem ::
NOMIN_1:69
{v, v1, v2}
c= V & v
<> v1 & a2
in A & not (v1
.--> a1)
in A & not (v
.--> (v2
.--> a2))
in A & a1 is
TypeSCNominativeData of V, A implies (
local_overlapping (V,A,(v1
.--> a1),(v2
.--> a2),v))
= ((v,v1)
--> ((v2
.--> a2),a1))
proof
set d1 = (v1
.--> a1);
set d2 = (v2
.--> a2);
assume that
A1:
{v, v1, v2}
c= V and
A2: v
<> v1 and
A3: a2
in A and
A4: not d1
in A and
A5: not (v
.--> d2)
in A and
A6: a1 is
TypeSCNominativeData of V, A;
A7: v
in
{v, v1, v2} by
ENUMSET1:def 1;
v2
in
{v, v1, v2} by
ENUMSET1:def 1;
then
A8: (
ND_ex_1 (v2,a2)) is
TypeSCNominativeData of V, A by
A1,
A3,
Th46;
then
A9: (
naming (V,A,v,d2))
= (v
.--> d2) by
A1,
A7,
Def13;
{v1, v}
c= V
proof
let x;
assume x
in
{v1, v};
then x
= v1 or x
= v by
TARSKI:def 2;
then x
in
{v, v1, v2} by
ENUMSET1:def 1;
hence thesis by
A1;
end;
hence thesis by
A4,
A5,
A6,
A2,
A8,
A9,
Th68;
end;
definition
let V, A, v;
set Dom = { d where d be
NonatomicND of V, A : v
in (
dom d) };
::
NOMIN_1:def18
func
denaming (V,A,v) ->
PartFunc of (
ND (V,A)), (
ND (V,A)) means (
dom it )
= { d where d be
NonatomicND of V, A : v
in (
dom d) } & for D be
NonatomicND of V, A st D
in (
dom it ) holds (it
. D)
= (
denaming (v,D));
existence
proof
defpred
P[
object,
object] means ex D be
NonatomicND of V, A st D
= $1 & $2
= (
denaming (v,D));
A1: for x be
object st x
in Dom holds ex y be
object st y
in (
ND (V,A)) &
P[x, y]
proof
let x;
assume x
in Dom;
then
consider d be
NonatomicND of V, A such that
A2: x
= d and v
in (
dom d);
take (
denaming (v,d));
thus thesis by
A2;
end;
consider f be
Function such that
A3: (
dom f)
= Dom and
A4: (
rng f)
c= (
ND (V,A)) and
A5: for x be
object st x
in Dom holds
P[x, (f
. x)] from
FUNCT_1:sch 6(
A1);
Dom
c= (
ND (V,A))
proof
let x;
assume x
in Dom;
then ex d be
NonatomicND of V, A st x
= d & v
in (
dom d);
hence thesis;
end;
then
reconsider f as
PartFunc of (
ND (V,A)), (
ND (V,A)) by
A3,
A4,
RELSET_1: 4;
take f;
thus (
dom f)
= Dom by
A3;
let D be
NonatomicND of V, A;
assume D
in (
dom f);
then
P[D, (f
. D)] by
A3,
A5;
hence thesis;
end;
uniqueness
proof
let f,g be
PartFunc of (
ND (V,A)), (
ND (V,A)) such that
A6: (
dom f)
= Dom and
A7: for D be
NonatomicND of V, A st D
in (
dom f) holds (f
. D)
= (
denaming (v,D)) and
A8: (
dom g)
= Dom and
A9: for D be
NonatomicND of V, A st D
in (
dom g) holds (g
. D)
= (
denaming (v,D));
thus (
dom f)
= (
dom g) by
A6,
A8;
let D be
object;
assume
A10: D
in (
dom f);
then
consider D1 be
NonatomicND of V, A such that
A11: D
= D1 & v
in (
dom D1) by
A6;
thus (f
. D)
= (
denaming (v,D1)) by
A7,
A10,
A11
.= (g
. D) by
A6,
A8,
A9,
A10,
A11;
end;
end
definition
let V, A, v;
::
NOMIN_1:def19
func
naming (V,A,v) ->
Function of (
ND (V,A)), (
ND (V,A)) means for D be
TypeSCNominativeData of V, A holds (it
. D)
= (
naming (V,A,v,D));
existence
proof
defpred
P[
object,
object] means $2
= (
naming (V,A,v,$1));
A1: for x be
Element of (
ND (V,A)) holds ex y be
Element of (
ND (V,A)) st
P[x, y]
proof
let x be
Element of (
ND (V,A));
set y = (
naming (V,A,v,x));
y
in (
ND (V,A));
then
reconsider y as
Element of (
ND (V,A));
take y;
thus thesis;
end;
consider f be
Function of (
ND (V,A)), (
ND (V,A)) such that
A2: for x be
Element of (
ND (V,A)) holds
P[x, (f
. x)] from
FUNCT_2:sch 3(
A1);
take f;
let D be
TypeSCNominativeData of V, A;
D
in (
ND (V,A));
hence thesis by
A2;
end;
uniqueness
proof
let f,g be
Function of (
ND (V,A)), (
ND (V,A)) such that
A3: for D be
TypeSCNominativeData of V, A holds (f
. D)
= (
naming (V,A,v,D)) and
A4: for D be
TypeSCNominativeData of V, A holds (g
. D)
= (
naming (V,A,v,D));
let D be
Element of (
ND (V,A));
A5: D is
TypeSCNominativeData of V, A by
Th39;
hence (f
. D)
= (
naming (V,A,v,D)) by
A3
.= (g
. D) by
A4,
A5;
end;
end
definition
let V, A, v;
::
NOMIN_1:def20
func
local_overlapping (V,A,v) ->
PartFunc of
[:(
ND (V,A)), (
ND (V,A)):], (
ND (V,A)) means (
dom it )
=
[:((
ND (V,A))
\ A), (
ND (V,A)):] & for d1 be
NonatomicND of V, A holds for d2 be
object st not d1
in A & d2
in (
ND (V,A)) holds (it
.
[d1, d2])
= (
local_overlapping (V,A,d1,d2,v));
existence
proof
defpred
P[
object,
object] means ex d1 be
NonatomicND of V, A, d2 be
object st $1
=
[d1, d2] & $2
= (
local_overlapping (V,A,d1,d2,v));
A1: for x be
object st x
in
[:((
ND (V,A))
\ A), (
ND (V,A)):] holds ex y be
object st y
in (
ND (V,A)) &
P[x, y]
proof
let x;
assume x
in
[:((
ND (V,A))
\ A), (
ND (V,A)):];
then
consider d1,d2 be
object such that
A2: d1
in ((
ND (V,A))
\ A) & d2
in (
ND (V,A)) and
A3: x
=
[d1, d2] by
ZFMISC_1:def 2;
reconsider d1 as
NonatomicND of V, A by
A2,
Th43;
take (
local_overlapping (V,A,d1,d2,v));
thus thesis by
A3;
end;
consider f be
Function such that
A4: (
dom f)
=
[:((
ND (V,A))
\ A), (
ND (V,A)):] and
A5: (
rng f)
c= (
ND (V,A)) and
A6: for x be
object st x
in
[:((
ND (V,A))
\ A), (
ND (V,A)):] holds
P[x, (f
. x)] from
FUNCT_1:sch 6(
A1);
reconsider f as
PartFunc of
[:(
ND (V,A)), (
ND (V,A)):], (
ND (V,A)) by
A4,
A5,
RELSET_1: 4,
ZFMISC_1: 96;
take f;
thus (
dom f)
=
[:((
ND (V,A))
\ A), (
ND (V,A)):] by
A4;
let D1 be
NonatomicND of V, A;
let D2 be
object;
set D =
[D1, D2];
assume not D1
in A & D2
in (
ND (V,A));
then D1
in ((
ND (V,A))
\ A) & D2
in (
ND (V,A)) by
Th42;
then D
in (
dom f) by
A4,
ZFMISC_1:def 2;
then
consider d1 be
NonatomicND of V, A, d2 be
object such that
A7: D
=
[d1, d2] and
A8: (f
. D)
= (
local_overlapping (V,A,d1,d2,v)) by
A4,
A6;
d1
= D1 & d2
= D2 by
A7,
XTUPLE_0: 1;
hence thesis by
A8;
end;
uniqueness
proof
let f,g be
PartFunc of
[:(
ND (V,A)), (
ND (V,A)):], (
ND (V,A)) such that
A9: (
dom f)
=
[:((
ND (V,A))
\ A), (
ND (V,A)):] and
A10: for d1 be
NonatomicND of V, A, d2 be
object st not d1
in A & d2
in (
ND (V,A)) holds (f
.
[d1, d2])
= (
local_overlapping (V,A,d1,d2,v)) and
A11: (
dom g)
=
[:((
ND (V,A))
\ A), (
ND (V,A)):] and
A12: for d1 be
NonatomicND of V, A, d2 be
object st not d1
in A & d2
in (
ND (V,A)) holds (g
.
[d1, d2])
= (
local_overlapping (V,A,d1,d2,v));
thus (
dom f)
= (
dom g) by
A9,
A11;
let D be
object such that
A13: D
in (
dom f);
consider D1,D2 be
object such that
A14: D1
in ((
ND (V,A))
\ A) & D2
in (
ND (V,A)) and
A15: D
=
[D1, D2] by
A9,
A13,
ZFMISC_1:def 2;
reconsider D1 as
NonatomicND of V, A by
A14,
Th43;
A16: not D1
in A by
A14,
XBOOLE_0:def 5;
hence (f
. D)
= (
local_overlapping (V,A,D1,D2,v)) by
A10,
A14,
A15
.= (g
. D) by
A12,
A14,
A15,
A16;
end;
end