reserve
  a,b for object, I,J for set, f for Function, R for Relation,
  i,j,n for Nat, m for (Element of NAT),
  S for non empty non void ManySortedSign,
  s,s1,s2 for SortSymbol of S,
  o for OperSymbol of S,
  X for non-empty ManySortedSet of the carrier of S,
  x,x1,x2 for (Element of X.s), x11 for (Element of X.s1),
  T for all_vars_including inheriting_operations free_in_itself
  (X,S)-terms MSAlgebra over S,
  g for Translation of Free(S,X),s1,s2,
  h for Endomorphism of Free(S,X);
reserve
  r,r1,r2 for (Element of T),
  t,t1,t2 for (Element of Free(S,X));
reserve
  Y for infinite-yielding ManySortedSet of the carrier of S,
  y,y1 for (Element of Y.s), y11 for (Element of Y.s1),
  Q for all_vars_including inheriting_operations free_in_itself
  (Y,S)-terms MSAlgebra over S,
  q,q1 for (Element of Args(o,Free(S,Y))),
  u,u1,u2 for (Element of Q),
  v,v1,v2 for (Element of Free(S,Y)),
  Z for non-trivial ManySortedSet of the carrier of S,
  z,z1 for (Element of Z.s),
  l,l1 for (Element of Free(S,Z)),
  R for all_vars_including inheriting_operations free_in_itself
  (Z,S)-terms MSAlgebra over S,
  k,k1 for Element of Args(o,Free(S,Z));
reserve c,c1,c2 for set, d,d1 for DecoratedTree;
reserve
  w for (Element of Args(o,T)),
  p,p1 for Element of Args(o,Free(S,X));
reserve C for (context of x), C1 for (context of y), C9 for (context of z),
  C11 for (context of x11), C12 for (context of y11), D for context of s,X;

theorem Th54:
  (for i st i in dom p holds p/.i is x-omitting) iff o-term p is x-omitting
  proof
    set I = {[x,s]}; set k = p;
    reconsider J = [o,the carrier of S] as set;
    s in the carrier of S; then s <> the carrier of S;
    then [o,the carrier of S] <> [x,s] by XTUPLE_0:1;
    then [o,the carrier of S] nin I by TARSKI:def 1;
    then IFIN(J,I,{{}},{}) = {} by MATRIX_7:def 1;
    then
A5: (o-term k)"I = {} \/ union {<*i*>^^((k.(i+1))"I): i < len k} by Th80;
    hereby assume
A6:   for i st i in dom p holds p/.i is x-omitting;
      thus o-term p is x-omitting
      proof
        assume Coim(o-term p,[x,s]) <> {};
        then consider a such that
A7:     a in Coim(o-term p,[x,s]) by XBOOLE_0:7;
        consider J such that
A8:     a in J in {<*i*>^^((k.(i+1))"I): i < len k} by A5,A7,TARSKI:def 4;
        consider i such that
A9:     J = <*i*>^^((p.(i+1))"I) & i < len p by A8;
        1 <= i+1 <= len p by A9,NAT_1:11,13;
        then p/.(i+1) = p.(i+1) & p/.(i+1) is x-omitting
        by A6,FINSEQ_3:25,PARTFUN1:def 6;
        hence contradiction by A8,A9;
      end;
    end;
    assume
B1: Coim(o-term p,[x,s]) = {};
    let i; assume
B2: i in dom p;
    then consider j such that
B3: i = 1+j by NAT_1:10,FINSEQ_3:25;
    1+j <= len p by B2,B3,FINSEQ_3:25;
    then j < len p by NAT_1:13;
    then <*j*>^^((p.i)"I) in {<*i*>^^((k.(i+1))"I) where i: i < len k} by B3;
    then <*j*>^^((p.i)"I) c= {} = <*j*>^^{} by A5,B1,ZFMISC_1:74;
    then (p.i)"I c= {} & p/.i = p.i by B2,Th18,PARTFUN1:def 6;
    hence Coim(p/.i,[x,s]) = {};
  end;
