let S be non void Signature; :: thesis: for X being V5() ManySortedSet of
for t being Term of S,X holds S variables_in t c= X

let X be V5() ManySortedSet of ; :: thesis: for t being Term of S,X holds S variables_in t c= X
defpred S1[ DecoratedTree] means S variables_in $1 c= X;
A1: for s being SortSymbol of S
for v being Element of X . s holds S1[ root-tree [v,s]]
proof
let s be SortSymbol of S; :: thesis: for v being Element of X . s holds S1[ root-tree [v,s]]
let v be Element of X . s; :: thesis: S1[ root-tree [v,s]]
thus S variables_in (root-tree [v,s]) c= X :: thesis: verum
proof
let s' be set ; :: according to PBOOLE:def 5 :: thesis: ( not s' in the carrier of S or (S variables_in (root-tree [v,s])) . s' c= X . s' )
assume s' in the carrier of S ; :: thesis: (S variables_in (root-tree [v,s])) . s' c= X . s'
then reconsider z = s' as SortSymbol of S ;
let x be set ; :: according to TARSKI:def 3 :: thesis: ( not x in (S variables_in (root-tree [v,s])) . s' or x in X . s' )
assume x in (S variables_in (root-tree [v,s])) . s' ; :: thesis: x in X . s'
then ( ( s = z implies x in {v} ) & ( s <> z implies x in {} ) ) by Th11;
hence x in X . s' ; :: thesis: verum
end;
end;
A2: for o being OperSymbol of S
for p being ArgumentSeq of Sym o,X st ( for t being Term of S,X st t in rng p holds
S1[t] ) holds
S1[[o,the carrier of S] -tree p]
proof
let o be OperSymbol of S; :: thesis: for p being ArgumentSeq of Sym o,X st ( for t being Term of S,X st t in rng p holds
S1[t] ) holds
S1[[o,the carrier of S] -tree p]

let p be ArgumentSeq of Sym o,X; :: thesis: ( ( for t being Term of S,X st t in rng p holds
S1[t] ) implies S1[[o,the carrier of S] -tree p] )

assume A3: for t being Term of S,X st t in rng p holds
S variables_in t c= X ; :: thesis: S1[[o,the carrier of S] -tree p]
set q = [o,the carrier of S] -tree p;
thus S variables_in ([o,the carrier of S] -tree p) c= X :: thesis: verum
proof
let s' be set ; :: according to PBOOLE:def 5 :: thesis: ( not s' in the carrier of S or (S variables_in ([o,the carrier of S] -tree p)) . s' c= X . s' )
assume s' in the carrier of S ; :: thesis: (S variables_in ([o,the carrier of S] -tree p)) . s' c= X . s'
then reconsider z = s' as SortSymbol of S ;
let x be set ; :: according to TARSKI:def 3 :: thesis: ( not x in (S variables_in ([o,the carrier of S] -tree p)) . s' or x in X . s' )
assume x in (S variables_in ([o,the carrier of S] -tree p)) . s' ; :: thesis: x in X . s'
then consider t being DecoratedTree such that
A4: ( t in rng p & x in (S variables_in t) . z ) by Th12;
consider i being set such that
A5: ( i in dom p & t = p . i ) by A4, FUNCT_1:def 5;
reconsider i = i as Nat by A5;
reconsider t = p . i as Term of S,X by A5, MSATERM:22;
S variables_in t c= X by A3, A4, A5;
then (S variables_in t) . z c= X . z by PBOOLE:def 5;
hence x in X . s' by A4, A5; :: thesis: verum
end;
end;
for t being Term of S,X holds S1[t] from MSATERM:sch 1(A1, A2);
hence for t being Term of S,X holds S variables_in t c= X ; :: thesis: verum