:: PUA2MSS1 semantic presentation
Lemma1:
for b1 being FinSequence
for b2 being Function st dom b2 = dom b1 holds
b2 is FinSequence
Lemma2:
for b1 being set
for b2 being non empty set
for b3 being FinSequence of b1
for b4 being Function of b1,b2 holds b4 * b3 is FinSequence of b2
theorem Th1: :: PUA2MSS1:1
theorem Th2: :: PUA2MSS1:2
:: deftheorem Def1 defines Den PUA2MSS1:def 1 :
theorem Th3: :: PUA2MSS1:3
for
b1 being
set for
b2 being
a_partition of
b1 for
b3,
b4,
b5 being
set st
b3 in b4 &
b4 in b2 &
b3 in b5 &
b5 in b2 holds
b4 = b5
theorem Th4: :: PUA2MSS1:4
theorem Th5: :: PUA2MSS1:5
theorem Th6: :: PUA2MSS1:6
theorem Th7: :: PUA2MSS1:7
theorem Th8: :: PUA2MSS1:8
theorem Th9: :: PUA2MSS1:9
theorem Th10: :: PUA2MSS1:10
theorem Th11: :: PUA2MSS1:11
theorem Th12: :: PUA2MSS1:12
:: deftheorem Def2 defines SmallestPartition PUA2MSS1:def 2 :
theorem Th13: :: PUA2MSS1:13
theorem Th14: :: PUA2MSS1:14
:: deftheorem Def3 defines IndexedPartition PUA2MSS1:def 3 :
:: deftheorem Def4 defines -index_of PUA2MSS1:def 4 :
theorem Th15: :: PUA2MSS1:15
theorem Th16: :: PUA2MSS1:16
scheme :: PUA2MSS1:sch 3
s3{
F1()
-> non
empty set ,
F2()
-> non
empty set ,
F3()
-> Nat,
F4()
-> Relation of
F1(),
F2(),
F5(
set ,
set )
-> Relation of
F1(),
F2() } :
for
b1,
b2 being
Relation of
F1(),
F2() st ex
b3 being
ManySortedSet of
NAT st
(
b1 = b3 . F3() &
b3 . 0
= F4() & ( for
b4 being
Nat for
b5 being
Relation of
F1(),
F2() st
b5 = b3 . b4 holds
b3 . (b4 + 1) = F5(
b5,
b4) ) ) & ex
b3 being
ManySortedSet of
NAT st
(
b2 = b3 . F3() &
b3 . 0
= F4() & ( for
b4 being
Nat for
b5 being
Relation of
F1(),
F2() st
b5 = b3 . b4 holds
b3 . (b4 + 1) = F5(
b5,
b4) ) ) holds
b1 = b2
definition
let c1 be
partial non-empty UAStr ;
func DomRel c1 -> Relation of the
carrier of
a1 means :
Def5:
:: PUA2MSS1:def 5
for
b1,
b2 being
Element of
a1 holds
(
[b1,b2] in a2 iff for
b3 being
operation of
a1 for
b4,
b5 being
FinSequence holds
(
(b4 ^ <*b1*>) ^ b5 in dom b3 iff
(b4 ^ <*b2*>) ^ b5 in dom b3 ) );
existence
ex b1 being Relation of the carrier of c1 st
for b2, b3 being Element of c1 holds
( [b2,b3] in b1 iff for b4 being operation of c1
for b5, b6 being FinSequence holds
( (b5 ^ <*b2*>) ^ b6 in dom b4 iff (b5 ^ <*b3*>) ^ b6 in dom b4 ) )
uniqueness
for b1, b2 being Relation of the carrier of c1 st ( for b3, b4 being Element of c1 holds
( [b3,b4] in b1 iff for b5 being operation of c1
for b6, b7 being FinSequence holds
( (b6 ^ <*b3*>) ^ b7 in dom b5 iff (b6 ^ <*b4*>) ^ b7 in dom b5 ) ) ) & ( for b3, b4 being Element of c1 holds
( [b3,b4] in b2 iff for b5 being operation of c1
for b6, b7 being FinSequence holds
( (b6 ^ <*b3*>) ^ b7 in dom b5 iff (b6 ^ <*b4*>) ^ b7 in dom b5 ) ) ) holds
b1 = b2
end;
:: deftheorem Def5 defines DomRel PUA2MSS1:def 5 :
definition
let c1 be
partial non-empty UAStr ;
let c2 be
Relation of the
carrier of
c1;
func c2 |^ c1 -> Relation of the
carrier of
a1 means :
Def6:
:: PUA2MSS1:def 6
for
b1,
b2 being
Element of
a1 holds
(
[b1,b2] in a3 iff (
[b1,b2] in a2 & ( for
b3 being
operation of
a1 for
b4,
b5 being
FinSequence st
(b4 ^ <*b1*>) ^ b5 in dom b3 &
(b4 ^ <*b2*>) ^ b5 in dom b3 holds
[(b3 . ((b4 ^ <*b1*>) ^ b5)),(b3 . ((b4 ^ <*b2*>) ^ b5))] in a2 ) ) );
existence
ex b1 being Relation of the carrier of c1 st
for b2, b3 being Element of c1 holds
( [b2,b3] in b1 iff ( [b2,b3] in c2 & ( for b4 being operation of c1
for b5, b6 being FinSequence st (b5 ^ <*b2*>) ^ b6 in dom b4 & (b5 ^ <*b3*>) ^ b6 in dom b4 holds
[(b4 . ((b5 ^ <*b2*>) ^ b6)),(b4 . ((b5 ^ <*b3*>) ^ b6))] in c2 ) ) )
uniqueness
for b1, b2 being Relation of the carrier of c1 st ( for b3, b4 being Element of c1 holds
( [b3,b4] in b1 iff ( [b3,b4] in c2 & ( for b5 being operation of c1
for b6, b7 being FinSequence st (b6 ^ <*b3*>) ^ b7 in dom b5 & (b6 ^ <*b4*>) ^ b7 in dom b5 holds
[(b5 . ((b6 ^ <*b3*>) ^ b7)),(b5 . ((b6 ^ <*b4*>) ^ b7))] in c2 ) ) ) ) & ( for b3, b4 being Element of c1 holds
( [b3,b4] in b2 iff ( [b3,b4] in c2 & ( for b5 being operation of c1
for b6, b7 being FinSequence st (b6 ^ <*b3*>) ^ b7 in dom b5 & (b6 ^ <*b4*>) ^ b7 in dom b5 holds
[(b5 . ((b6 ^ <*b3*>) ^ b7)),(b5 . ((b6 ^ <*b4*>) ^ b7))] in c2 ) ) ) ) holds
b1 = b2
end;
:: deftheorem Def6 defines |^ PUA2MSS1:def 6 :
:: deftheorem Def7 defines |^ PUA2MSS1:def 7 :
theorem Th17: :: PUA2MSS1:17
theorem Th18: :: PUA2MSS1:18
theorem Th19: :: PUA2MSS1:19
theorem Th20: :: PUA2MSS1:20
theorem Th21: :: PUA2MSS1:21
theorem Th22: :: PUA2MSS1:22
definition
let c1 be
partial non-empty UAStr ;
func LimDomRel c1 -> Relation of the
carrier of
a1 means :
Def8:
:: PUA2MSS1:def 8
for
b1,
b2 being
Element of
a1 holds
(
[b1,b2] in a2 iff for
b3 being
Nat holds
[b1,b2] in (DomRel a1) |^ a1,
b3 );
existence
ex b1 being Relation of the carrier of c1 st
for b2, b3 being Element of c1 holds
( [b2,b3] in b1 iff for b4 being Nat holds [b2,b3] in (DomRel c1) |^ c1,b4 )
uniqueness
for b1, b2 being Relation of the carrier of c1 st ( for b3, b4 being Element of c1 holds
( [b3,b4] in b1 iff for b5 being Nat holds [b3,b4] in (DomRel c1) |^ c1,b5 ) ) & ( for b3, b4 being Element of c1 holds
( [b3,b4] in b2 iff for b5 being Nat holds [b3,b4] in (DomRel c1) |^ c1,b5 ) ) holds
b1 = b2
end;
:: deftheorem Def8 defines LimDomRel PUA2MSS1:def 8 :
theorem Th23: :: PUA2MSS1:23
:: deftheorem Def9 defines is_partitable_wrt PUA2MSS1:def 9 :
:: deftheorem Def10 defines is_exactly_partitable_wrt PUA2MSS1:def 10 :
theorem Th24: :: PUA2MSS1:24
theorem Th25: :: PUA2MSS1:25
:: deftheorem Def11 defines a_partition PUA2MSS1:def 11 :
:: deftheorem Def12 defines IndexedPartition PUA2MSS1:def 12 :
theorem Th26: :: PUA2MSS1:26
theorem Th27: :: PUA2MSS1:27
theorem Th28: :: PUA2MSS1:28
:: deftheorem Def13 defines form_morphism_between PUA2MSS1:def 13 :
theorem Th29: :: PUA2MSS1:29
theorem Th30: :: PUA2MSS1:30
for
b1,
b2,
b3 being
ManySortedSign for
b4,
b5,
b6,
b7 being
Function st
b4,
b6 form_morphism_between b1,
b2 &
b5,
b7 form_morphism_between b2,
b3 holds
b5 * b4,
b7 * b6 form_morphism_between b1,
b3
:: deftheorem Def14 defines is_rougher_than PUA2MSS1:def 14 :
theorem Th31: :: PUA2MSS1:31
definition
let c1 be
partial non-empty UAStr ;
let c2 be
a_partition of
c1;
func MSSign c1,
c2 -> strict ManySortedSign means :
Def15:
:: PUA2MSS1:def 15
( the
carrier of
a3 = a2 & the
OperSymbols of
a3 = { [b1,b2] where B is OperSymbol of a1, B is Element of a2 * : product b2 meets dom (Den b1,a1) } & ( for
b1 being
OperSymbol of
a1 for
b2 being
Element of
a2 * st
product b2 meets dom (Den b1,a1) holds
( the
Arity of
a3 . [b1,b2] = b2 &
(Den b1,a1) .: (product b2) c= the
ResultSort of
a3 . [b1,b2] ) ) );
existence
ex b1 being strict ManySortedSign st
( the carrier of b1 = c2 & the OperSymbols of b1 = { [b2,b3] where B is OperSymbol of c1, B is Element of c2 * : product b3 meets dom (Den b2,c1) } & ( for b2 being OperSymbol of c1
for b3 being Element of c2 * st product b3 meets dom (Den b2,c1) holds
( the Arity of b1 . [b2,b3] = b3 & (Den b2,c1) .: (product b3) c= the ResultSort of b1 . [b2,b3] ) ) )
correctness
uniqueness
for b1, b2 being strict ManySortedSign st the carrier of b1 = c2 & the OperSymbols of b1 = { [b3,b4] where B is OperSymbol of c1, B is Element of c2 * : product b4 meets dom (Den b3,c1) } & ( for b3 being OperSymbol of c1
for b4 being Element of c2 * st product b4 meets dom (Den b3,c1) holds
( the Arity of b1 . [b3,b4] = b4 & (Den b3,c1) .: (product b4) c= the ResultSort of b1 . [b3,b4] ) ) & the carrier of b2 = c2 & the OperSymbols of b2 = { [b3,b4] where B is OperSymbol of c1, B is Element of c2 * : product b4 meets dom (Den b3,c1) } & ( for b3 being OperSymbol of c1
for b4 being Element of c2 * st product b4 meets dom (Den b3,c1) holds
( the Arity of b2 . [b3,b4] = b4 & (Den b3,c1) .: (product b4) c= the ResultSort of b2 . [b3,b4] ) ) holds
b1 = b2;
end;
:: deftheorem Def15 defines MSSign PUA2MSS1:def 15 :
:: deftheorem Def16 defines can_be_characterized_by PUA2MSS1:def 16 :
:: deftheorem Def17 defines can_be_characterized_by PUA2MSS1:def 17 :
theorem Th32: :: PUA2MSS1:32
theorem Th33: :: PUA2MSS1:33
theorem Th34: :: PUA2MSS1:34