reserve i for Nat,
  j for Element of NAT,
  X,Y,x,y,z for set;
reserve C for initialized ConstructorSignature,
  s for SortSymbol of C,
  o for OperSymbol of C,
  c for constructor OperSymbol of C;
reserve a,b for expression of C, an_Adj C;
reserve t, t1,t2 for expression of C, a_Type C;
reserve p for FinSequence of QuasiTerms C;
reserve e for expression of C;
reserve a,a9 for expression of C, an_Adj C;
reserve q for pure expression of C, a_Type C,
  A for finite Subset of QuasiAdjs C;
reserve T for quasi-type of C;

theorem Th114:
  for S being non void Signature for X being ManySortedSet of the carrier of S
  holds X is with_missing_variables iff
  for s being SortSymbol of S st X.s = {}
  ex o being OperSymbol of S st the_result_sort_of o = s
proof
  let S be non void Signature;
  let X be ManySortedSet of the carrier of S;
A1: dom X = the carrier of S by PARTFUN1:def 2;
  hereby
    assume X is with_missing_variables;
    then
A2: X"{{}} c= rng the ResultSort of S;
    let s be SortSymbol of S;
    assume X.s = {};
    then X.s in {{}} by TARSKI:def 1;
    then s in X"{{}} by A1,FUNCT_1:def 7;
    then consider o being object such that
A3: o in the carrier' of S and
A4: (the ResultSort of S).o = s by A2,FUNCT_2:11;
    reconsider o as OperSymbol of S by A3;
    take o;
    thus the_result_sort_of o = s by A4;
  end;
  assume
A5: for s being SortSymbol of S st X.s = {}
  ex o being OperSymbol of S st the_result_sort_of o = s;
  let x be object;
  assume
A6: x in X"{{}};
  then
A7: X.x in {{}} by FUNCT_1:def 7;
  reconsider x as SortSymbol of S by A1,A6,FUNCT_1:def 7;
  X.x = {} by A7,TARSKI:def 1;
  then ex o being OperSymbol of S st the_result_sort_of o = x by A5;
  hence thesis by FUNCT_2:4;
end;
