:: AMISTD_2 semantic presentation
E1:
for b1 being Relation holds
not ( dom b1 <> {} & not b1 <> {} )
by RELAT_1:60;
theorem E2: :: AMISTD_2:1
theorem E3: :: AMISTD_2:2
theorem E4: :: AMISTD_2:3
theorem E5: :: AMISTD_2:4
definition
let c
1 be
functional set ;
func PA c
1 -> Function means :
E6:
:: AMISTD_2:def 1
( ( for b
1 being
set holds
( b
1 in dom a
2 iff for b
2 being
Function holds
( b
2 in a
1 implies b
1 in dom b
2 ) ) ) & ( for b
1 being
set holds
( b
1 in dom a
2 implies a
2 . b
1 = pi a
1,b
1 ) ) )
if not a
1 is
empty otherwise a
2 = {} ;
existence
( not ( not c1 is empty & ( for b1 being Function holds
not ( ( for b2 being set holds
( b2 in dom b1 iff for b3 being Function holds
( b3 in c1 implies b2 in dom b3 ) ) ) & ( for b2 being set holds
( b2 in dom b1 implies b1 . b2 = pi c1,b2 ) ) ) ) ) & not ( c1 is empty & ( for b1 being Function holds
not b1 = {} ) ) )
uniqueness
for b1, b2 being Function holds
( ( ( ( for b3 being set holds
( b3 in dom b1 iff for b4 being Function holds
( b4 in c1 implies b3 in dom b4 ) ) ) & ( for b3 being set holds
( b3 in dom b1 implies b1 . b3 = pi c1,b3 ) ) & ( for b3 being set holds
( b3 in dom b2 iff for b4 being Function holds
( b4 in c1 implies b3 in dom b4 ) ) ) & ( for b3 being set holds
( b3 in dom b2 implies b2 . b3 = pi c1,b3 ) ) ) implies ( c1 is empty or b1 = b2 ) ) & ( ( c1 is empty & b1 = {} & b2 = {} ) implies ( b1 = b2 ) ) )
proof
let c
2, c
3 be
Function;
thus
( ( ( for b
1 being
set holds
( b
1 in dom c
2 iff for b
2 being
Function holds
( b
2 in c
1 implies b
1 in dom b
2 ) ) ) & ( for b
1 being
set holds
( b
1 in dom c
2 implies c
2 . b
1 = pi c
1,b
1 ) ) & ( for b
1 being
set holds
( b
1 in dom c
3 iff for b
2 being
Function holds
( b
2 in c
1 implies b
1 in dom b
2 ) ) ) & ( for b
1 being
set holds
( b
1 in dom c
3 implies c
3 . b
1 = pi c
1,b
1 ) ) ) implies ( c
1 is
empty or c
2 = c
3 ) )
proof
defpred S
1[
set ] means for b
1 being
Function holds
( b
1 in c
1 implies a
1 in dom b
1 );
assume that
not c
1 is
empty
and E6:
for b
1 being
set holds
( b
1 in dom c
2 iff S
1[b
1] )
and E7:
for b
1 being
set holds
( b
1 in dom c
2 implies c
2 . b
1 = pi c
1,b
1 )
and E8:
for b
1 being
set holds
( b
1 in dom c
3 iff S
1[b
1] )
and E9:
for b
1 being
set holds
( b
1 in dom c
3 implies c
3 . b
1 = pi c
1,b
1 )
;
E10:
dom c
2 = dom c
3
from XBOOLE_0:sch 2(E6, E8);
now
let c
4 be
set ;
assume E11:
c
4 in dom c
2
;
hence c
2 . c
4 =
pi c
1,c
4
by E7
.=
c
3 . c
4
by E9, E10, E11
;
end;
hence
c
2 = c
3
by E10, FUNCT_1:9;
end;
thus
( ( c
1 is
empty & c
2 = {} & c
3 = {} ) implies ( c
2 = c
3 ) )
;
end;
consistency
for b1 being Function holds
verum
;
end;
:: deftheorem E6 defines PA AMISTD_2:def 1 :
theorem :: AMISTD_2:5
theorem :: AMISTD_2:6
:: deftheorem E7 defines product-like AMISTD_2:def 2 :
theorem E8: :: AMISTD_2:7
theorem :: AMISTD_2:8
theorem E9: :: AMISTD_2:9
theorem E10: :: AMISTD_2:10
registration
let c
1 be
Nat;
let c
2 be
set ;
cluster a
1 -tuples_on a
2 -> functional with_common_domain product-like ;
coherence
c1 -tuples_on c2 is product-like
proof
set c
3 = c
1 -tuples_on c
2;
per cases
not ( not ( c
2 = {} & c
1 = 0 ) & not ( c
2 = {} & c
1 <> 0 ) & not c
2 <> {} )
;
suppose
( c
2 = {} & c
1 = 0 )
;
end;
suppose
( c
2 = {} & c
1 <> 0 )
;
end;
suppose
c
2 <> {}
;
then reconsider c
4 = c
2 as non
empty set ;
set c
5 = c
1 -tuples_on c
4;
take
PA (c1 -tuples_on c4)
;
:: according to AMISTD_2:def 2
c
1 -tuples_on c
4 = product (PA (c1 -tuples_on c4))
proof
thus
c
1 -tuples_on c
4 c= product (PA (c1 -tuples_on c4))
by E9;
:: according to XBOOLE_0:def 10
let c
6 be
set ;
:: according to TARSKI:def 3
assume
c
6 in product (PA (c1 -tuples_on c4))
;
then consider c
7 being
Function such that E11:
c
6 = c
7
and E12:
dom c
7 = dom (PA (c1 -tuples_on c4))
and E13:
for b
1 being
set holds
( b
1 in dom (PA (c1 -tuples_on c4)) implies c
7 . b
1 in (PA (c1 -tuples_on c4)) . b
1 )
by CARD_3:def 5;
E14:
c
1 -tuples_on c
4 = { b1 where B is Element of c4 * : len b1 = c1 }
by FINSEQ_2:def 4;
consider c
8 being
Element of c
1 -tuples_on c
4;
c
8 in c
1 -tuples_on c
4
;
then consider c
9 being
Element of c
4 * such that E15:
c
8 = c
9
and E16:
len c
9 = c
1
by E14;
E17:
dom c
7 =
DOM (c1 -tuples_on c4)
by E12, E8
.=
dom c
8
by PRALG_2:def 2
;
dom c
8 = Seg (len c9)
by E15, FINSEQ_1:def 3;
then E18:
c
7 is
FinSequence
by E17, FINSEQ_1:def 2;
rng c
7 c= c
4
proof
let c
10 be
set ;
:: according to TARSKI:def 3
assume
c
10 in rng c
7
;
then consider c
11 being
set such that E19:
c
11 in dom c
7
and E20:
c
7 . c
11 = c
10
by FUNCT_1:def 5;
c
7 . c
11 in (PA (c1 -tuples_on c4)) . c
11
by E12, E13, E19;
then
c
7 . c
11 in pi (c1 -tuples_on c4),c
11
by E12, E19, E6;
then consider c
12 being
Function such that E21:
c
12 in c
1 -tuples_on c
4
and E22:
c
7 . c
11 = c
12 . c
11
by CARD_3:def 6;
consider c
13 being
Element of c
4 * such that E23:
c
12 = c
13
and
len c
13 = c
1
by E14, E21;
E24:
rng c
13 c= c
4
by FINSEQ_1:def 4;
dom c
7 = dom c
13
by E17, E21, E23, PRALG_2:def 1;
then
c
13 . c
11 in rng c
13
by E19, FUNCT_1:def 5;
hence
c
10 in c
4
by E20, E22, E23, E24;
end;
then reconsider c
10 = c
7 as
FinSequence of c
4 by E18, FINSEQ_1:def 4;
E19:
c
10 in c
4 *
by FINSEQ_1:def 11;
len c
10 = c
1
by E15, E16, E17, FINSEQ_3:31;
hence
c
6 in c
1 -tuples_on c
4
by E11, E14, E19;
end;
hence
c
1 -tuples_on c
2 = product (PA (c1 -tuples_on c4))
;
end;
end;
end;
end;
E11:
for b1 being natural number holds
- 1 < b1
E12:
for b1 being natural number
for b2, b3, b4 being Nat holds
not ( 1 <= b2 & 2 <= b3 & not b1 < b2 - 1 & not ( b2 <= b1 & b1 <= (b2 + b3) - 3 ) & not b1 = (b2 + b3) - 2 & not (b2 + b3) - 2 < b1 & not b1 = b2 - 1 )
proof
let c
1 be
natural number ;
let c
2, c
3, c
4 be
Nat;
assume that E13:
1
<= c
2
and E14:
2
<= c
3
and E15:
c
2 - 1
<= c
1
and E16:
not ( not c
2 > c
1 & not c
1 > (c2 + c3) - 3 )
and E17:
c
1 <> (c2 + c3) - 2
and E18:
c
1 <= (c2 + c3) - 2
;
E19:
c
2 - 1 is
Nat
by E13, INT_1:18;
now
per cases
not ( not c
1 < c
2 & not
(c2 + c3) - 3
< c
1 )
by E16;
case E20:
(c2 + c3) - 3
< c
1
;
end;
end;
end;
hence
c
2 - 1
= c
1
by E15, XREAL_1:1;
end;
theorem E13: :: AMISTD_2:11
theorem E14: :: AMISTD_2:12
theorem E15: :: AMISTD_2:13
theorem E16: :: AMISTD_2:14
theorem E17: :: AMISTD_2:15
:: deftheorem defines AddressPart AMISTD_2:def 3 :
theorem E18: :: AMISTD_2:16
:: deftheorem E19 defines homogeneous AMISTD_2:def 4 :
theorem E20: :: AMISTD_2:17
:: deftheorem defines AddressParts AMISTD_2:def 5 :
:: deftheorem E21 defines with_explicit_jumps AMISTD_2:def 6 :
:: deftheorem E22 defines without_implicit_jumps AMISTD_2:def 7 :