deffunc H1( Function, set ) -> set = $1 . $2;
theorem Th30:
for
S being non
empty non
void ManySortedSign for
A1,
A2,
B1 being
MSAlgebra over
S for
B2 being
non-empty MSAlgebra over
S st
MSAlgebra(# the
Sorts of
A1, the
Charact of
A1 #)
= MSAlgebra(# the
Sorts of
A2, the
Charact of
A2 #) &
MSAlgebra(# the
Sorts of
B1, the
Charact of
B1 #)
= MSAlgebra(# the
Sorts of
B2, the
Charact of
B2 #) holds
for
h1 being
ManySortedFunction of
A1,
B1 for
h2 being
ManySortedFunction of
A2,
B2 st
h1 = h2 &
h1 is_homomorphism A1,
B1 holds
h2 is_homomorphism A2,
B2
definition
let S be non
empty non
void ManySortedSign ;
let X be
V5()
ManySortedSet of
S;
let A1 be
X,
S -terms all_vars_including MSAlgebra over
S;
existence
ex b1 being ManySortedFunction of (Free (S,X)),A1 st
( b1 is_homomorphism Free (S,X),A1 & ( for G being GeneratorSet of Free (S,X) st G = FreeGen X holds
id G = b1 || G ) )
uniqueness
for b1, b2 being ManySortedFunction of (Free (S,X)),A1 st b1 is_homomorphism Free (S,X),A1 & ( for G being GeneratorSet of Free (S,X) st G = FreeGen X holds
id G = b1 || G ) & b2 is_homomorphism Free (S,X),A1 & ( for G being GeneratorSet of Free (S,X) st G = FreeGen X holds
id G = b2 || G ) holds
b1 = b2
end;
scheme
TermDefUniq{
F1()
-> non
empty non
void ManySortedSign ,
F2()
-> V5()
ManySortedSet of
F1(),
F3(
set ,
set )
-> set ,
F4(
set ,
FinSequence)
-> set ,
F5()
-> ManySortedSet of
F1()
-Terms F2(),
F6()
-> ManySortedSet of
F1()
-Terms F2() } :
provided
A1:
for
s being
SortSymbol of
F1()
for
x being
Element of
F2()
. s holds
F5()
. (root-tree [x,s]) = F3(
x,
s)
and A2:
for
o being
OperSymbol of
F1()
for
p being
ArgumentSeq of
Sym (
o,
F2()) holds
F5()
. ((Sym (o,F2())) -tree p) = F4(
o,
(F5() * p))
and A3:
for
s being
SortSymbol of
F1()
for
x being
Element of
F2()
. s holds
F6()
. (root-tree [x,s]) = F3(
x,
s)
and A4:
for
o being
OperSymbol of
F1()
for
p being
ArgumentSeq of
Sym (
o,
F2()) holds
F6()
. ((Sym (o,F2())) -tree p) = F4(
o,
(F6() * p))
definition
let S be non
empty non
void ManySortedSign ;
let X be
V5()
ManySortedSet of
S;
let w be
ManySortedFunction of
X, the
carrier of
S --> NAT;
let t be
Function;
assume A1:
t is
Element of
(Free (S,X))
;
deffunc H2(
set ,
set )
-> set =
root-tree [((w . $2) . $1),$2];
deffunc H3(
OperSymbol of
S,
FinSequence)
-> set =
(Sym ($1,( the carrier of S --> NAT))) -tree $2;
existence
ex b1 being Element of (TermAlg S) ex F being ManySortedSet of S -Terms X st
( b1 = F . t & ( for s being SortSymbol of S
for x being Element of X . s holds F . (root-tree [x,s]) = root-tree [((w . s) . x),s] ) & ( for o being OperSymbol of S
for p being ArgumentSeq of Sym (o,X) holds F . ((Sym (o,X)) -tree p) = (Sym (o,( the carrier of S --> NAT))) -tree (F * p) ) )
uniqueness
for b1, b2 being Element of (TermAlg S) st ex F being ManySortedSet of S -Terms X st
( b1 = F . t & ( for s being SortSymbol of S
for x being Element of X . s holds F . (root-tree [x,s]) = root-tree [((w . s) . x),s] ) & ( for o being OperSymbol of S
for p being ArgumentSeq of Sym (o,X) holds F . ((Sym (o,X)) -tree p) = (Sym (o,( the carrier of S --> NAT))) -tree (F * p) ) ) & ex F being ManySortedSet of S -Terms X st
( b2 = F . t & ( for s being SortSymbol of S
for x being Element of X . s holds F . (root-tree [x,s]) = root-tree [((w . s) . x),s] ) & ( for o being OperSymbol of S
for p being ArgumentSeq of Sym (o,X) holds F . ((Sym (o,X)) -tree p) = (Sym (o,( the carrier of S --> NAT))) -tree (F * p) ) ) holds
b1 = b2
end;
theorem
for
S being non
empty non
void ManySortedSign for
X being
V5()
ManySortedSet of
S for
w being
ManySortedFunction of
X, the
carrier of
S --> NAT for
F being
ManySortedSet of
S -Terms X st ( for
s being
SortSymbol of
S for
x being
Element of
X . s holds
F . (root-tree [x,s]) = root-tree [((w . s) . x),s] ) & ( for
o being
OperSymbol of
S for
p being
ArgumentSeq of
Sym (
o,
X) holds
F . ((Sym (o,X)) -tree p) = (Sym (o,( the carrier of S --> NAT))) -tree (F * p) ) holds
for
o being
OperSymbol of
S for
p being
ArgumentSeq of
Sym (
o,
X) holds
(
F * p in Args (
o,
(Free (S,(rngs w)))) &
F * p in Args (
o,
(Free (S,( the carrier of S --> NAT)))) )
theorem
for
S being non
empty non
void ManySortedSign for
X0 being
V5()
countable ManySortedSet of
S for
A0 being
b2,
b1 -terms all_vars_including inheriting_operations free_in_itself MSAlgebra over
S for
h being
ManySortedFunction of
(TermAlg S),
A0 st
h is_homomorphism TermAlg S,
A0 holds
for
w being
ManySortedFunction of
X0, the
carrier of
S --> NAT st
w is
"1-1" holds
ex
Y being
V5()
ManySortedSubset of the
carrier of
S --> NAT ex
B being
MSSubset of
(TermAlg S) ex
ww being
ManySortedFunction of
(Free (S,Y)),
A0 ex
g being
ManySortedFunction of
A0,
A0 st
(
Y = rngs w &
B = the
Sorts of
(Free (S,Y)) &
FreeGen (rngs w) c= B &
ww is_homomorphism Free (
S,
Y),
A0 &
g is_homomorphism A0,
A0 &
h || B = g ** ww & ( for
s being
SortSymbol of
S for
i being
Nat st
i in Y . s holds
ex
x being
Element of
X0 . s st
(
(w . s) . x = i &
(ww . s) . (root-tree [i,s]) = root-tree [x,s] ) ) )
theorem Th69:
for
S being non
empty non
void ManySortedSign for
X being
V5()
ManySortedSet of
S for
A being
b2,
b1 -terms all_vars_including inheriting_operations free_in_itself MSAlgebra over
S for
h being
ManySortedFunction of
(Free (S,X)),
A st
h is_homomorphism Free (
S,
X),
A holds
for
o being
OperSymbol of
S for
x being
Element of
Args (
o,
(Free (S,X))) holds
(h . (the_result_sort_of o)) . ((Den (o,(Free (S,X)))) . x) = (h . (the_result_sort_of o)) . ((Den (o,(Free (S,X)))) . ((canonical_homomorphism A) # x))
theorem
for
S being non
empty non
void ManySortedSign for
X0,
Y0 being
V5()
countable ManySortedSet of
S for
A being
b2,
b1 -terms all_vars_including inheriting_operations MSAlgebra over
S for
h being
ManySortedFunction of
(Free (S,Y0)),
A st
h is_homomorphism Free (
S,
Y0),
A holds
ex
g being
ManySortedFunction of
(Free (S,Y0)),
(Free (S,X0)) st
(
g is_homomorphism Free (
S,
Y0),
Free (
S,
X0) &
h = (canonical_homomorphism A) ** g & ( for
G being
GeneratorSet of
Free (
S,
Y0) st
G = FreeGen Y0 holds
g || G = h || G ) )
theorem
for
S being non
empty non
void ManySortedSign for
X0 being
V5()
countable ManySortedSet of
S for
A0 being
b2,
b1 -terms all_vars_including inheriting_operations free_in_itself MSAlgebra over
S for
w being
ManySortedFunction of
X0, the
carrier of
S --> NAT for
o being
OperSymbol of
S for
p being
Element of
Args (
o,
(Free (S,X0)))
for
q being
Element of
Args (
o,
A0) st
(canonical_homomorphism A0) # p = q holds
for
t1,
t2 being
Term of
S,
X0 st
t1 = (Den (o,(Free (S,X0)))) . p &
t2 = (Den (o,A0)) . q holds
for
t3,
t4 being
Element of
(TermAlg S),
(the_result_sort_of o) st
t3 = # (
t1,
w) &
t4 = # (
t2,
w) holds
A0 |= t3 '=' t4
theorem Th74:
for
S being non
empty non
void ManySortedSign for
X0 being
V5()
countable ManySortedSet of
S for
B being
non-empty MSAlgebra over
S for
h being
ManySortedFunction of
(Free (S,X0)),
B st
h is_homomorphism Free (
S,
X0),
B holds
for
w being
ManySortedFunction of
X0, the
carrier of
S --> NAT st
w is
"1-1" holds
for
s being
SortSymbol of
S for
t1,
t2 being
Element of
(Free (S,X0)),
s for
t3,
t4 being
Element of
(TermAlg S),
s st
t3 = # (
t1,
w) &
t4 = # (
t2,
w) &
B |= t3 '=' t4 holds
(h . s) . t1 = (h . s) . t2
scheme
B{
F1()
-> set ,
F2()
-> set ,
F3()
-> Relation,
P1[
set ] } :
provided
A1:
P1[
F2()]
and A2:
F3()
reduces F1(),
F2()
and A3:
for
y,
z being
set st
[y,z] in F3() &
P1[
z] holds
P1[
y]
definition
let S be non
empty non
void ManySortedSign ;
let X be
V5()
ManySortedSet of
S;
let R be
invariant stable terminating with_UN_property ManySortedRelation of
(Free (S,X));
existence
ex b1 being strict non-empty MSAlgebra over S st
( the Sorts of b1 = NForms R & ( for o being OperSymbol of S
for a being Element of Args (o,b1) holds (Den (o,b1)) . a = nf (((Den (o,(Free (S,X)))) . a),(R . (the_result_sort_of o))) ) )
uniqueness
for b1, b2 being strict non-empty MSAlgebra over S st the Sorts of b1 = NForms R & ( for o being OperSymbol of S
for a being Element of Args (o,b1) holds (Den (o,b1)) . a = nf (((Den (o,(Free (S,X)))) . a),(R . (the_result_sort_of o))) ) & the Sorts of b2 = NForms R & ( for o being OperSymbol of S
for a being Element of Args (o,b2) holds (Den (o,b2)) . a = nf (((Den (o,(Free (S,X)))) . a),(R . (the_result_sort_of o))) ) holds
b1 = b2
end;
Lm3:
now for S being non empty non void ManySortedSign
for X being V5() ManySortedSet of S
for R being invariant stable terminating with_UN_property ManySortedRelation of (Free (S,X))
for o being OperSymbol of S holds Args (o,(NFAlgebra R)) c= Args (o,(Free (S,X)))
let S be non
empty non
void ManySortedSign ;
for X being V5() ManySortedSet of S
for R being invariant stable terminating with_UN_property ManySortedRelation of (Free (S,X))
for o being OperSymbol of S holds Args (o,(NFAlgebra R)) c= Args (o,(Free (S,X)))let X be
V5()
ManySortedSet of
S;
for R being invariant stable terminating with_UN_property ManySortedRelation of (Free (S,X))
for o being OperSymbol of S holds Args (o,(NFAlgebra R)) c= Args (o,(Free (S,X)))let R be
invariant stable terminating with_UN_property ManySortedRelation of
(Free (S,X));
for o being OperSymbol of S holds Args (o,(NFAlgebra R)) c= Args (o,(Free (S,X)))let o be
OperSymbol of
S;
Args (o,(NFAlgebra R)) c= Args (o,(Free (S,X)))set A =
NFAlgebra R;
A1:
the
Sorts of
(NFAlgebra R) = NForms R
by Def20;
(NForms R) * (the_arity_of o) c= the
Sorts of
(Free (S,X)) * (the_arity_of o)
by Th15, PBOOLE:def 18;
then
product ((NForms R) * (the_arity_of o)) c= product ( the Sorts of (Free (S,X)) * (the_arity_of o))
by Th16;
then
product ((NForms R) * (the_arity_of o)) c= Args (
o,
(Free (S,X)))
by PRALG_2:3;
hence
Args (
o,
(NFAlgebra R))
c= Args (
o,
(Free (S,X)))
by A1, PRALG_2:3;
verum
end;
theorem Th80:
for
S being non
empty non
void ManySortedSign for
X being
V5()
ManySortedSet of
S for
R being
invariant stable terminating with_UN_property ManySortedRelation of
(Free (S,X)) for
g being
ManySortedFunction of
(Free (S,X)),
(Free (S,X)) st
g is_homomorphism Free (
S,
X),
Free (
S,
X) holds
for
s being
SortSymbol of
S for
a being
Element of
(Free (S,X)),
s holds
nf (
((g . s) . (nf (a,(R . s)))),
(R . s))
= nf (
((g . s) . a),
(R . s))
theorem Th85:
for
S being non
empty non
void ManySortedSign for
X being
V5()
ManySortedSet of
S for
R being
invariant stable terminating with_UN_property ManySortedRelation of
(Free (S,X)) for
g being
ManySortedFunction of
(Free (S,X)),
(Free (S,X)) st
g is_homomorphism Free (
S,
X),
Free (
S,
X) holds
for
h being
ManySortedFunction of
(NFAlgebra R),
(NFAlgebra R) st ( for
s being
SortSymbol of
S for
x being
Element of
(NFAlgebra R),
s holds
(h . s) . x = nf (
((g . s) . x),
(R . s)) ) holds
for
s being
SortSymbol of
S for
o being
OperSymbol of
S st
s = the_result_sort_of o holds
for
x being
Element of
Args (
o,
(NFAlgebra R))
for
y being
Element of
Args (
o,
(Free (S,X))) st
x = y holds
nf (
((Den (o,(NFAlgebra R))) . (h # x)),
(R . s))
= nf (
((Den (o,(Free (S,X)))) . (g # y)),
(R . s))