let S be non empty non void ManySortedSign ; :: thesis: for A being non-empty MSAlgebra of S
for V being Variables of A
for t being c-Term of A,V
for f being ManySortedFunction of V,the Sorts of A
for e1, e2 being finite DecoratedTree st e1 is_an_evaluation_of t,f & e2 is_an_evaluation_of t,f holds
e1 = e2
let A be non-empty MSAlgebra of S; :: thesis: for V being Variables of A
for t being c-Term of A,V
for f being ManySortedFunction of V,the Sorts of A
for e1, e2 being finite DecoratedTree st e1 is_an_evaluation_of t,f & e2 is_an_evaluation_of t,f holds
e1 = e2
let V be Variables of A; :: thesis: for t being c-Term of A,V
for f being ManySortedFunction of V,the Sorts of A
for e1, e2 being finite DecoratedTree st e1 is_an_evaluation_of t,f & e2 is_an_evaluation_of t,f holds
e1 = e2
let t be c-Term of A,V; :: thesis: for f being ManySortedFunction of V,the Sorts of A
for e1, e2 being finite DecoratedTree st e1 is_an_evaluation_of t,f & e2 is_an_evaluation_of t,f holds
e1 = e2
let f be ManySortedFunction of V,the Sorts of A; :: thesis: for e1, e2 being finite DecoratedTree st e1 is_an_evaluation_of t,f & e2 is_an_evaluation_of t,f holds
e1 = e2
defpred S1[ c-Term of A,V] means for e1, e2 being finite DecoratedTree st e1 is_an_evaluation_of $1,f & e2 is_an_evaluation_of $1,f holds
e1 = e2;
A1:
now let s be
SortSymbol of
S;
:: thesis: for x being Element of the Sorts of A . s holds S1[x -term A,V]let x be
Element of the
Sorts of
A . s;
:: thesis: S1[x -term A,V]thus
S1[
x -term A,
V]
:: thesis: verumproof
set t =
x -term A,
V;
let e1,
e2 be
finite DecoratedTree;
:: thesis: ( e1 is_an_evaluation_of x -term A,V,f & e2 is_an_evaluation_of x -term A,V,f implies e1 = e2 )
assume A2:
(
e1 is_an_evaluation_of x -term A,
V,
f &
e2 is_an_evaluation_of x -term A,
V,
f )
;
:: thesis: e1 = e2
then A3:
(
dom e1 = dom (x -term A,V) &
dom e2 = dom (x -term A,V) &
x -term A,
V = root-tree [x,s] &
dom (root-tree [x,s]) = elementary_tree 0 &
(root-tree [x,s]) . {} = [x,s] )
by Def9, TREES_4:3;
{} is
Node of
e1
by TREES_1:47;
then
(
e1 . {} = x &
e2 . {} = x )
by A2, A3, Def9;
then
(
e1 = root-tree x &
e2 = root-tree x )
by A3, TREES_4:5;
hence
e1 = e2
;
:: thesis: verum
end; end;
A4:
now let s be
SortSymbol of
S;
:: thesis: for v being Element of V . s holds S1[v -term A]let v be
Element of
V . s;
:: thesis: S1[v -term A]thus
S1[
v -term A]
:: thesis: verumproof
set t =
v -term A;
let e1,
e2 be
finite DecoratedTree;
:: thesis: ( e1 is_an_evaluation_of v -term A,f & e2 is_an_evaluation_of v -term A,f implies e1 = e2 )
assume A5:
(
e1 is_an_evaluation_of v -term A,
f &
e2 is_an_evaluation_of v -term A,
f )
;
:: thesis: e1 = e2
then A6:
(
dom e1 = dom (v -term A) &
dom e2 = dom (v -term A) &
v -term A = root-tree [v,s] &
dom (root-tree [v,s]) = elementary_tree 0 &
(root-tree [v,s]) . {} = [v,s] )
by Def9, TREES_4:3;
{} is
Node of
e1
by TREES_1:47;
then
(
e1 . {} = (f . s) . v &
e2 . {} = (f . s) . v )
by A5, A6, Def9;
then
(
e1 = root-tree ((f . s) . v) &
e2 = root-tree ((f . s) . v) )
by A6, TREES_4:5;
hence
e1 = e2
;
:: thesis: verum
end; end;
A7:
now let o be
OperSymbol of
S;
:: thesis: for p being ArgumentSeq of o,A,V st ( for t being c-Term of A,V st t in rng p holds
S1[t] ) holds
S1[(Sym o,(the Sorts of A \/ V)) -tree p]let p be
ArgumentSeq of
o,
A,
V;
:: thesis: ( ( for t being c-Term of A,V st t in rng p holds
S1[t] ) implies S1[(Sym o,(the Sorts of A \/ V)) -tree p] )assume A8:
for
t being
c-Term of
A,
V st
t in rng p holds
S1[
t]
;
:: thesis: S1[(Sym o,(the Sorts of A \/ V)) -tree p]thus
S1[
(Sym o,(the Sorts of A \/ V)) -tree p]
:: thesis: verumproof
let e1,
e2 be
finite DecoratedTree;
:: thesis: ( e1 is_an_evaluation_of (Sym o,(the Sorts of A \/ V)) -tree p,f & e2 is_an_evaluation_of (Sym o,(the Sorts of A \/ V)) -tree p,f implies e1 = e2 )
set t =
(Sym o,(the Sorts of A \/ V)) -tree p;
assume A9:
(
e1 is_an_evaluation_of (Sym o,(the Sorts of A \/ V)) -tree p,
f &
e2 is_an_evaluation_of (Sym o,(the Sorts of A \/ V)) -tree p,
f )
;
:: thesis: e1 = e2
then consider q1 being
DTree-yielding FinSequence such that A10:
(
len q1 = len p &
e1 = ((Den o,A) . (roots q1)) -tree q1 & ( for
i being
Nat for
t being
c-Term of
A,
V st
i in dom p &
t = p . i holds
ex
vt being
finite DecoratedTree st
(
vt = q1 . i &
vt is_an_evaluation_of t,
f ) ) )
by Th35;
consider q2 being
DTree-yielding FinSequence such that A11:
(
len q2 = len p &
e2 = ((Den o,A) . (roots q2)) -tree q2 & ( for
i being
Nat for
t being
c-Term of
A,
V st
i in dom p &
t = p . i holds
ex
vt being
finite DecoratedTree st
(
vt = q2 . i &
vt is_an_evaluation_of t,
f ) ) )
by A9, Th35;
A17:
(
dom q1 = Seg (len q1) &
dom q2 = Seg (len q2) )
by FINSEQ_1:def 3;
then
q1 = q2
by A10, A11, A17, FINSEQ_1:17;
hence
e1 = e2
by A10, A11;
:: thesis: verum
end; end;
for t being c-Term of A,V holds S1[t]
from MSATERM:sch 3(A1, A4, A7);
hence
for e1, e2 being finite DecoratedTree st e1 is_an_evaluation_of t,f & e2 is_an_evaluation_of t,f holds
e1 = e2
; :: thesis: verum