reserve a,b,c,d,m,x,n,j,k,l for Nat,
  t,u,v,z for Integer,
  f,F for FinSequence of NAT;
reserve p,q,r,s for real number;
reserve a,b,c,d,m,x,n,k,l for Nat,
  t,z for Integer,
  f,F,G for FinSequence of REAL;
reserve q,r,s for real number;
reserve D for set;

theorem
  2|^(k+l) divides 2|^(n+k) - 2|^k implies l = 0 or n = 0
  proof
    A0: 2|^(k+l) = 2|^k*2|^l & 2|^(n+k) = 2|^n*2|^k by NEWTON:8;
    assume 2|^(k+l) divides 2|^(n+k) - 2|^k; then
    A2: (2|^k)*(2|^l) divides (2|^k)*(2|^n - 1) by A0;
    reconsider a = 2|^n - 1 as Element of NAT by INT_1:3;
    reconsider b = 2|^l as Element of NAT by ORDINAL1:def 12;
    reconsider c = 2|^k as Element of NAT by ORDINAL1:def 12;
    A3: b divides a or c = 0 by A2,PYTHTRIP:7;
    2 divides 2|^l or l = 0 by NAT_3:3;
    hence thesis by Th88,INT_2:9,A3;
  end;
