
theorem Th95:
  for a, b being Ordinal holds
    (omega -exponent((CantorNF(a(+)b)).0) in rng(omega -exponent CantorNF a)
      implies
        omega -exponent((CantorNF(a(+)b)).0) = (omega-exponent CantorNF a).0) &
    (omega -exponent((CantorNF(a(+)b)).0) in rng(omega -exponent CantorNF b)
      implies
        omega -exponent((CantorNF(a(+)b)).0) = (omega-exponent CantorNF b).0)
proof
  let a, b be Ordinal;
    set E1 = omega -exponent CantorNF a, E2 = omega -exponent CantorNF b;
    set C0 = CantorNF(a (+) b);
    A2: rng(omega-exponent C0) = rng E1 \/ rng E2 by Th76;
    hereby
      assume omega -exponent(C0.0) in rng E1;
      then consider x being object such that
        A4: x in dom E1 & E1.x = omega -exponent(C0.0) by FUNCT_1:def 3;
      reconsider x as Ordinal by A4;
      x = 0
      proof
        assume A5: x <> 0;
        then 0 c< x by XBOOLE_1:2, XBOOLE_0:def 8;
        then A6: 0 in x by ORDINAL1:11;
        then A7: 0 in dom E1 by A4, ORDINAL1:10;
        then E1.0 in rng E1 by FUNCT_1:3;
        then E1.0 in rng(omega-exponent C0) by A2, XBOOLE_1:7, TARSKI:def 3;
        then consider y being object such that
          A8: y in dom(omega -exponent C0) & (omega -exponent C0).y = E1.0
          by FUNCT_1:def 3;
        reconsider y as Ordinal by A8;
        A9: y in dom C0 by A8, Def1;
        then A10: omega -exponent(C0.y) = E1.0 by A8, Def1;
        per cases;
        suppose y = 0;
          hence contradiction by A4, A5, A7, A10, FUNCT_1:def 4;
        end;
        suppose y <> 0;
          then 0 c< y by XBOOLE_1:2, XBOOLE_0:def 8;
          then 0 in y by ORDINAL1:11;
          then A11: E1.0 in E1.x by A4, A9, A10, ORDINAL5:def 11;
          A12: x in dom CantorNF a by A4, Def1;
          then omega -exponent((CantorNF a).0) in E1.x
            by A11, Def1, A6, ORDINAL1:10;
          then omega -exponent((CantorNF a).0)
            in omega -exponent((CantorNF a).x) by A12, Def1;
          hence contradiction by A6, A12, ORDINAL5:def 11;
        end;
      end;
      hence omega-exponent(C0.0) = E1.0 by A4;
    end;
    assume omega -exponent(C0.0) in rng E2;
    then consider x being object such that
      A14: x in dom E2 & E2.x = omega -exponent(C0.0) by FUNCT_1:def 3;
    reconsider x as Ordinal by A14;
    x = 0
    proof
      assume A15: x <> 0;
      then 0 c< x by XBOOLE_1:2, XBOOLE_0:def 8;
      then A16: 0 in x by ORDINAL1:11;
      then A17: 0 in dom E2 by A14, ORDINAL1:10;
      then E2.0 in rng E2 by FUNCT_1:3;
      then E2.0 in rng(omega-exponent C0) by A2, XBOOLE_1:7, TARSKI:def 3;
      then consider y being object such that
        A18: y in dom(omega -exponent C0) & (omega -exponent C0).y = E2.0
        by FUNCT_1:def 3;
      reconsider y as Ordinal by A18;
      A19: y in dom C0 by A18, Def1;
      then A20: omega -exponent(C0.y) = E2.0 by A18, Def1;
      per cases;
      suppose y = 0;
        hence contradiction by A14, A15, A17, A20, FUNCT_1:def 4;
      end;
      suppose y <> 0;
        then 0 c< y by XBOOLE_1:2, XBOOLE_0:def 8;
        then 0 in y by ORDINAL1:11;
        then A21: E2.0 in E2.x by A14, A19, A20, ORDINAL5:def 11;
        A22: x in dom CantorNF b by A14, Def1;
        then omega -exponent((CantorNF b).0) in E2.x
          by A21, Def1, A16, ORDINAL1:10;
        then omega -exponent((CantorNF b).0)
          in omega -exponent((CantorNF b).x) by A22, Def1;
        hence contradiction by A16, A22, ORDINAL5:def 11;
      end;
    end;
    hence omega-exponent(C0.0) = E2.0 by A14;
end;
