reserve i,j,e,u for object;

theorem
  for f being Function holds f is empty-yielding iff f = {} or rng f = {
  {} }
proof
  let f be Function;
  hereby
    assume that
A1: f is empty-yielding and
A2: f <> {};
    thus rng f = { {} }
    proof
      thus for i being object st i in rng f holds i in { {} }
      by A1;
      set e = the Element of dom f;
      let i be object;
      assume i in { {} };
      then
A3:   i = {} by TARSKI:def 1;
A4:   dom f <> {} by A2;
      f.e is empty by A1;
      hence thesis by A4,A3,FUNCT_1:def 3;
    end;
  end;
  assume
A5: f = {} or rng f = { {} };
  per cases by A5;
  suppose
    f = {};
    hence for i being object st i in dom f holds f.i is empty;
  end;
  suppose
A6: rng f = { {} };
    let i be object;
    assume i in dom f;
    then f.i in rng f by FUNCT_1:def 3;
    hence thesis by A6,TARSKI:def 1;
  end;
end;
