theorem
  vf (o-term p) = union {vf t: t in rng p}
  proof
B1: dom (X variables_in (o-term p)) = the carrier of S by PARTFUN1:def 2;
    thus vf (o-term p) c= union {vf t: t in rng p}
    proof
      let a; assume a in vf (o-term p);
      then a in Union(X variables_in (o-term p)) by ThR1;
      then consider b such that
A1:   b in dom (X variables_in (o-term p)) & a in (X variables_in (o-term p)).b
      by CARD_5:2;
      reconsider b as SortSymbol of S by A1;
      consider t being DecoratedTree such that
A2:   t in rng p & a in (X variables_in t).b by A1,MSAFREE3:13;
      reconsider t as Element of Free(S,X) by A2,RELAT_1:167;
A3:   dom (X variables_in t) = the carrier of S by PARTFUN1:def 2;
      a in Union(X variables_in t) = vf t in {vf t1: t1 in rng p}
      by A2,A3,ThR1,CARD_5:2;
      hence a in union {vf t1: t1 in rng p} by TARSKI:def 4;
    end;
    let a; assume a in union {vf t: t in rng p};
    then consider I such that
A4: a in I in {vf t: t in rng p} by TARSKI:def 4;
    consider t such that
A5: I = vf t & t in rng p by A4;
    a in Union(X variables_in t) by A4,A5,ThR1;
    then consider b such that
A6: b in dom(X variables_in t) & a in (X variables_in t).b by CARD_5:2;
    reconsider b as SortSymbol of S by A6;
    a in (X variables_in (o-term p)).b by A5,A6,MSAFREE3:13;
    then a in Union(X variables_in (o-term p)) by B1,CARD_5:2;
    hence thesis by ThR1;
  end;
