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
  a|^3 + b|^3 = c|^3 implies 7 divides a or 7 divides b or 7 divides c
  proof
    assume
    A1:  a|^3 + b|^3 = c|^3;
    A1a: a|^3 + (b|^3 - 1) = (c|^3 -1) & (a|^3 - 2) + (b|^3 + 1) =
      (c|^3 -1) by A1;
    A1b: a|^3 + (b|^3 + 1) = (c|^3 +1) & (a|^3 + 2) + (b|^3 - 1) =
      (c|^3 +1) by A1;
    A2: 2*3+1 = 7; then
    per cases by Th70,NAT_4:26;
    suppose
      7 divides c;
      hence thesis;
    end;
    suppose
      B1: 7 divides c|^3 - 1;
      per cases by A2,Th70,NAT_4:26;
      suppose 7 divides b;
        hence thesis;
      end;
      suppose
        7 divides b|^3 - 1; then
        7 divides a|^3 by A1a,B1,INT_2:1;
        hence thesis by NAT_3:5,NAT_4:26;
      end;
      suppose 7 divides b|^3 + 1;
        hence thesis by A1a,B1,INT_2:1,Th87;
      end;
    end;
    suppose
      B2: 7 divides c|^3 + 1;
      per cases by A2,Th70,NAT_4:26;
      suppose 7 divides b;
        hence thesis;
      end;
      suppose 7 divides b|^3 + 1; then
        7 divides a|^3 by A1b,B2,INT_2:1;
        hence thesis by NAT_3:5,NAT_4:26;
      end;
      suppose 7 divides b|^3 - 1;
        hence thesis by A1b,B2,INT_2:1,Th87;
      end;
    end;
  end;
