reserve x for set;
reserve a, b, c, d, e for Real;
reserve m, n, m1, m2 for Nat;
reserve k, l for Integer;
reserve p for Rational;

theorem Th3:
  a>=0 or n is even implies a |^ n >= 0
proof
  assume
A1: a>=0 or n is even;
A2: now
    let a,n such that
A3: a>=0;
    now per cases by A3;
      suppose a>0;
        hence a |^ n >= 0 by PREPOWER:6;
      end;
      suppose
A4:     a=0;
        now per cases by NAT_1:6;
          suppose
A5:         n=0;
            a |^ n = a GeoSeq.n by PREPOWER:def 1
              .= 1 by A5,PREPOWER:3;
            hence a |^ n >= 0;
          end;
          suppose
        ex m being Nat st n = m+1;
            then consider m being Nat such that
A6:        n = m + 1;
            a |^ n = a |^ m * a by A6,NEWTON:6
              .= 0 by A4;
            hence a |^ n >= 0;
          end;
        end;
        hence a |^ n >= 0;
      end;
    end;
    hence a |^ n >= 0;
  end;
  now
    assume
A7: n is even;
     now per cases;
      suppose a>=0;
        hence thesis by A2;
      end;
      suppose a<0;
        then (-a) |^ n >= 0 by A2;
        hence thesis by A7,Th1;
      end;
    end;
    hence thesis;
  end;
  hence thesis by A1,A2;
end;
