let S be non empty non void ManySortedSign ; :: thesis: for X being non-empty ManySortedSet of the carrier of S
for T being b1,S -terms all_vars_including inheriting_operations free_in_itself MSAlgebra over S
for r being Element of T holds vf r = Union (X variables_in r)

let X be non-empty ManySortedSet of the carrier of S; :: thesis: for T being X,S -terms all_vars_including inheriting_operations free_in_itself MSAlgebra over S
for r being Element of T holds vf r = Union (X variables_in r)

let T be X,S -terms all_vars_including inheriting_operations free_in_itself MSAlgebra over S; :: thesis: for r being Element of T holds vf r = Union (X variables_in r)
let r be Element of T; :: thesis: vf r = Union (X variables_in r)
thus vf r c= Union (X variables_in r) :: according to XBOOLE_0:def 10 :: thesis: Union (X variables_in r) c= vf r
proof
let a be object ; :: according to TARSKI:def 3 :: thesis: ( not a in vf r or a in Union (X variables_in r) )
assume a in vf r ; :: thesis: a in Union (X variables_in r)
then consider b being object such that
A1: [a,b] in (rng r) /\ [:(Union X), the carrier of S:] by XTUPLE_0:def 12;
A2: ( [a,b] in rng r & [a,b] in [:(Union X), the carrier of S:] ) by A1, XBOOLE_0:def 4;
then ( a in Union X & b in the carrier of S ) by ZFMISC_1:87;
then consider c being object such that
A4: ( c in dom X & a in X . c ) by CARD_5:2;
reconsider b = b, c = c as SortSymbol of S by A4, A2, ZFMISC_1:87;
consider d being object such that
A5: ( d in dom r & [a,b] = r . d ) by A2, FUNCT_1:def 3;
reconsider d = d as Element of dom r by A5;
reconsider t = r | d as Element of T by MSAFREE4:44;
A7: (X variables_in r) . b = (X . b) /\ { (a `1) where a is Element of rng r : a `2 = b } by MSAFREE3:9;
t is Element of (Free (S,X)) by MSAFREE4:39;
per cases then ( ex s being SortSymbol of S ex x being Element of X . s st t = x -term or ex o being OperSymbol of S ex p being Element of Args (o,(Free (S,X))) st t = o -term p ) by Th16;
suppose ex s being SortSymbol of S ex x being Element of X . s st t = x -term ; :: thesis: a in Union (X variables_in r)
then consider s being SortSymbol of S, x being Element of X . s such that
A6: t = x -term ;
<*> NAT in (dom r) | d by TREES_1:22;
then r . (d ^ {}) = t . {} by TREES_2:def 10
.= [x,s] by A6, TREES_4:3 ;
then A8: ( a = x & b = s ) by A5, XTUPLE_0:1;
( [a,b] `1 = a & [a,b] `2 = b ) ;
then a in { (a `1) where a is Element of rng r : a `2 = b } by A2;
then ( a in (X variables_in r) . s & dom (X variables_in r) = the carrier of S ) by A7, A8, XBOOLE_0:def 4, PARTFUN1:def 2;
hence a in Union (X variables_in r) by CARD_5:2; :: thesis: verum
end;
suppose ex o being OperSymbol of S ex p being Element of Args (o,(Free (S,X))) st t = o -term p ; :: thesis: a in Union (X variables_in r)
then consider o being OperSymbol of S, p being Element of Args (o,(Free (S,X))) such that
A6: t = o -term p ;
<*> NAT in (dom r) | d by TREES_1:22;
then r . (d ^ {}) = t . {} by TREES_2:def 10
.= [o, the carrier of S] by A6, TREES_4:def 4 ;
then ( b in the carrier of S & the carrier of S = b ) by A5, XTUPLE_0:1;
hence a in Union (X variables_in r) ; :: thesis: verum
end;
end;
end;
let a be object ; :: according to TARSKI:def 3 :: thesis: ( not a in Union (X variables_in r) or a in vf r )
assume a in Union (X variables_in r) ; :: thesis: a in vf r
then consider b being object such that
B1: ( b in dom (X variables_in r) & a in (X variables_in r) . b ) by CARD_5:2;
reconsider b = b as SortSymbol of S by B1;
(X variables_in r) . b = (X . b) /\ { (a `1) where a is Element of rng r : a `2 = b } by MSAFREE3:9;
then B2: ( a in X . b & a in { (a `1) where a is Element of rng r : a `2 = b } ) by B1, XBOOLE_0:def 4;
then consider q being Element of rng r such that
B3: ( a = q `1 & q `2 = b ) ;
dom X = the carrier of S by PARTFUN1:def 2;
then a in Union X by B2, CARD_5:2;
then B6: [a,b] in [:(Union X), the carrier of S:] by ZFMISC_1:87;
consider xi being object such that
B4: ( xi in dom r & q = r . xi ) by FUNCT_1:def 3;
reconsider xi = xi as Element of dom r by B4;
reconsider t = r | xi as Element of T by MSAFREE4:44;
t is Element of (Free (S,X)) by MSAFREE4:39;
per cases then ( ex s being SortSymbol of S ex x being Element of X . s st t = x -term or ex o being OperSymbol of S ex p being Element of Args (o,(Free (S,X))) st t = o -term p ) by Th16;
suppose ex s being SortSymbol of S ex x being Element of X . s st t = x -term ; :: thesis: a in vf r
then consider s being SortSymbol of S, x being Element of X . s such that
A6: t = x -term ;
<*> NAT in (dom r) | xi by TREES_1:22;
then r . (xi ^ {}) = t . {} by TREES_2:def 10
.= [x,s] by A6, TREES_4:3 ;
then [a,b] in (rng r) /\ [:(Union X), the carrier of S:] by B6, B3, B4, XBOOLE_0:def 4;
hence a in vf r by XTUPLE_0:def 12; :: thesis: verum
end;
suppose ex o being OperSymbol of S ex p being Element of Args (o,(Free (S,X))) st t = o -term p ; :: thesis: a in vf r
then consider o being OperSymbol of S, p being Element of Args (o,(Free (S,X))) such that
A6: t = o -term p ;
<*> NAT in (dom r) | xi by TREES_1:22;
then r . (xi ^ {}) = t . {} by TREES_2:def 10
.= [o, the carrier of S] by A6, TREES_4:def 4 ;
then ( b in the carrier of S & the carrier of S = b ) by B3, B4;
hence a in vf r ; :: thesis: verum
end;
end;