↑ Up

Z3---4.15.1.THM-Prf.s

View TPTP
Problem
Process solution in
SystemOnTSTP
Download .tgz
%------------------------------------------------------------------------------
% File     : Z3---4.15.1
% Problem  : ITP225_1 : TPTP v9.0.0. Released v8.0.0.
% Transfm  : none
% Format   : tptp
% Command  : run_E %s %d THM

% Computer : n005.cluster.edu
% Model    : x86_64 x86_64
% CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 2.10GHz
% Memory   : 8042.1875MB
% OS       : Linux 3.10.0-693.el7.x86_64
% CPULimit : 300s
% WCLimit  : 300s
% DateTime : Sat Jun 21 05:12:07 AM UTC 2025

% Result   : Theorem 58.60s 58.82s
% Output   : Proof 59.37s
% Verified : 
% SZS Type : Refutation
%            Derivation depth      :   13
%            Number of leaves      :   18
% Syntax   : Number of formulae    :   49 (  13 unt;   0 typ;   0 def)
%            Number of atoms       :  462 ( 209 equ)
%            Maximal formula atoms :   25 (   9 avg)
%            Number of connectives :  850 ( 455   ~; 305   |;  47   &)
%                                         (  43 <=>;   0  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   16 (   7 avg)
%            Maximal term depth    :    4 (   2 avg)
%            Number of FOOLs       :   18 (  18 fml;   0 var)
%            Number of types       :    1 (   0 usr)
%            Number of type conns  :    0 (   0   >;   0   *;   0   +;   0  <<)
%            Number of predicates  :   14 (  11 usr;   7 prp; 0-3 aty)
%            Number of functors    :    9 (   9 usr;   5 con; 0-2 aty)
%            Number of variables   :  108 (  96   !;   4   ?; 108   :)

% Comments : 
%------------------------------------------------------------------------------
tff(pp_type,type,
    pp: bool > $o ).

tff(aa_nat_bool_type,type,
    aa_nat_bool: ( fun_nat_bool * nat ) > bool ).

tff(aa_nat_nat_type,type,
    aa_nat_nat: ( fun_nat_nat * nat ) > nat ).

tff(na_type,type,
    na: nat ).

tff(suc_type,type,
    suc: fun_nat_nat ).

tff(aa_nat_fun_nat_bool_type,type,
    aa_nat_fun_nat_bool: ( fun_nat_fun_nat_bool * nat ) > fun_nat_bool ).

tff(zero_zero_nat_type,type,
    zero_zero_nat: nat ).

tff(ord_less_nat_type,type,
    ord_less_nat: fun_nat_fun_nat_bool ).

tff(m_type,type,
    m: nat ).

tff(tptp_fun_J3_30_type,type,
    tptp_fun_J3_30: ( nat * nat ) > nat ).

tff(1,plain,
    ( ( m = aa_nat_nat(suc,na) )
  <=> ( m = aa_nat_nat(suc,na) ) ),
    inference(rewrite,[status(thm)],[]) ).

tff(2,axiom,
    m = aa_nat_nat(suc,na),
    file('/export/starexec/sandbox2/benchmark/theBenchmark.p',fact_4__C3_Ohyps_C_I3_J) ).

tff(3,plain,
    m = aa_nat_nat(suc,na),
    inference(modus_ponens,[status(thm)],[2,1]) ).

tff(4,plain,
    aa_nat_nat(suc,na) = m,
    inference(symmetry,[status(thm)],[3]) ).

tff(5,plain,
    aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na)) = aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),m),
    inference(monotonicity,[status(thm)],[4]) ).

tff(6,plain,
    ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na)))
  <=> pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),m)) ),
    inference(monotonicity,[status(thm)],[5]) ).

tff(7,plain,
    ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),m))
  <=> pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na))) ),
    inference(symmetry,[status(thm)],[6]) ).

tff(8,plain,
    ( ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),m))
  <=> ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na))) ),
    inference(monotonicity,[status(thm)],[7]) ).

tff(9,plain,
    ( ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),m))
  <=> ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),m)) ),
    inference(rewrite,[status(thm)],[]) ).

tff(10,axiom,
    ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),m)),
    file('/export/starexec/sandbox2/benchmark/theBenchmark.p',conj_0) ).

tff(11,plain,
    ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),m)),
    inference(modus_ponens,[status(thm)],[10,9]) ).

tff(12,plain,
    ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na))),
    inference(modus_ponens,[status(thm)],[11,8]) ).

tff(13,plain,
    ^ [M: nat,N: nat] :
      refl(( ~ ( ~ ( ( M = zero_zero_nat )
                | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
                | ~ ( ( M != aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
                    | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
            | ~ ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
                | ~ ( ( M = zero_zero_nat )
                    | ~ ! [J3: nat] :
                          ( ( M != aa_nat_nat(suc,J3) )
                          | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) )
      <=> ~ ( ~ ( ( M = zero_zero_nat )
                | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
                | ~ ( ( M != aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
                    | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
            | ~ ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
                | ~ ( ( M = zero_zero_nat )
                    | ~ ! [J3: nat] :
                          ( ( M != aa_nat_nat(suc,J3) )
                          | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) ) )),
    inference(bind,[status(th)],[]) ).

tff(14,plain,
    ( ! [M: nat,N: nat] :
        ~ ( ~ ( ( M = zero_zero_nat )
              | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
              | ~ ( ( M != aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
                  | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
          | ~ ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
              | ~ ( ( M = zero_zero_nat )
                  | ~ ! [J3: nat] :
                        ( ( M != aa_nat_nat(suc,J3) )
                        | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) )
  <=> ! [M: nat,N: nat] :
        ~ ( ~ ( ( M = zero_zero_nat )
              | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
              | ~ ( ( M != aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
                  | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
          | ~ ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
              | ~ ( ( M = zero_zero_nat )
                  | ~ ! [J3: nat] :
                        ( ( M != aa_nat_nat(suc,J3) )
                        | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) ) ),
    inference(quant_intro,[status(thm)],[13]) ).

tff(15,plain,
    ^ [M: nat,N: nat] :
      rewrite(( ~ ( ~ ( ( M = zero_zero_nat )
                | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
                | ~ ( ( M != aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
                    | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
            | ~ ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
                | ~ ( ( M = zero_zero_nat )
                    | ~ ! [J3: nat] :
                          ( ( M != aa_nat_nat(suc,J3) )
                          | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) )
      <=> ~ ( ~ ( ( M = zero_zero_nat )
                | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
                | ~ ( ( M != aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
                    | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
            | ~ ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
                | ~ ( ( M = zero_zero_nat )
                    | ~ ! [J3: nat] :
                          ( ( M != aa_nat_nat(suc,J3) )
                          | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) ) )),
    inference(bind,[status(th)],[]) ).

tff(16,plain,
    ( ! [M: nat,N: nat] :
        ~ ( ~ ( ( M = zero_zero_nat )
              | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
              | ~ ( ( M != aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
                  | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
          | ~ ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
              | ~ ( ( M = zero_zero_nat )
                  | ~ ! [J3: nat] :
                        ( ( M != aa_nat_nat(suc,J3) )
                        | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) )
  <=> ! [M: nat,N: nat] :
        ~ ( ~ ( ( M = zero_zero_nat )
              | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
              | ~ ( ( M != aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
                  | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
          | ~ ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
              | ~ ( ( M = zero_zero_nat )
                  | ~ ! [J3: nat] :
                        ( ( M != aa_nat_nat(suc,J3) )
                        | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) ) ),
    inference(quant_intro,[status(thm)],[15]) ).

tff(17,plain,
    ( ! [M: nat,N: nat] :
        ~ ( ~ ( ( M = zero_zero_nat )
              | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
              | ~ ( ( M != aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
                  | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
          | ~ ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
              | ~ ( ( M = zero_zero_nat )
                  | ~ ! [J3: nat] :
                        ( ( M != aa_nat_nat(suc,J3) )
                        | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) )
  <=> ! [M: nat,N: nat] :
        ~ ( ~ ( ( M = zero_zero_nat )
              | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
              | ~ ( ( M != aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
                  | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
          | ~ ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
              | ~ ( ( M = zero_zero_nat )
                  | ~ ! [J3: nat] :
                        ( ( M != aa_nat_nat(suc,J3) )
                        | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) ) ),
    inference(transitivity,[status(thm)],[16,14]) ).

tff(18,plain,
    ^ [M: nat,N: nat] :
      trans(monotonicity(trans(monotonicity(rewrite(( ( ( M = aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
                  & pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) )
              <=> ~ ( ( M != aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
                    | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )),
              ( ( ( M = zero_zero_nat )
                | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
                | ( ( M = aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
                  & pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
            <=> ( ( M = zero_zero_nat )
                | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
                | ~ ( ( M != aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
                    | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) ) )),
            rewrite(( ( ( M = zero_zero_nat )
                | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
                | ~ ( ( M != aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
                    | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
            <=> ( ( M = zero_zero_nat )
                | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
                | ~ ( ( M != aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
                    | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) ) )),
            ( ( ( M = zero_zero_nat )
              | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
              | ( ( M = aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
                & pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
          <=> ( ( M = zero_zero_nat )
              | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
              | ~ ( ( M != aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
                  | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) ) )),
          rewrite(( ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
              | ( ( M != zero_zero_nat )
                & ! [J3: nat] :
                    ~ ( ( M = aa_nat_nat(suc,J3) )
                      & pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) )
          <=> ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
              | ~ ( ( M = zero_zero_nat )
                  | ~ ! [J3: nat] :
                        ( ( M != aa_nat_nat(suc,J3) )
                        | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) )),
          ( ( ( ( M = zero_zero_nat )
              | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
              | ( ( M = aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
                & pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
            & ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
              | ( ( M != zero_zero_nat )
                & ! [J3: nat] :
                    ~ ( ( M = aa_nat_nat(suc,J3) )
                      & pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) )
        <=> ( ( ( M = zero_zero_nat )
              | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
              | ~ ( ( M != aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
                  | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
            & ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
              | ~ ( ( M = zero_zero_nat )
                  | ~ ! [J3: nat] :
                        ( ( M != aa_nat_nat(suc,J3) )
                        | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) ) )),
        rewrite(( ( ( ( M = zero_zero_nat )
              | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
              | ~ ( ( M != aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
                  | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
            & ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
              | ~ ( ( M = zero_zero_nat )
                  | ~ ! [J3: nat] :
                        ( ( M != aa_nat_nat(suc,J3) )
                        | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) )
        <=> ~ ( ~ ( ( M = zero_zero_nat )
                  | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
                  | ~ ( ( M != aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
                      | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
              | ~ ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
                  | ~ ( ( M = zero_zero_nat )
                      | ~ ! [J3: nat] :
                            ( ( M != aa_nat_nat(suc,J3) )
                            | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) ) )),
        ( ( ( ( M = zero_zero_nat )
            | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
            | ( ( M = aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
              & pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
          & ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
            | ( ( M != zero_zero_nat )
              & ! [J3: nat] :
                  ~ ( ( M = aa_nat_nat(suc,J3) )
                    & pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) )
      <=> ~ ( ~ ( ( M = zero_zero_nat )
                | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
                | ~ ( ( M != aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
                    | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
            | ~ ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
                | ~ ( ( M = zero_zero_nat )
                    | ~ ! [J3: nat] :
                          ( ( M != aa_nat_nat(suc,J3) )
                          | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) ) )),
    inference(bind,[status(th)],[]) ).

tff(19,plain,
    ( ! [M: nat,N: nat] :
        ( ( ( M = zero_zero_nat )
          | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
          | ( ( M = aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
            & pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
        & ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
          | ( ( M != zero_zero_nat )
            & ! [J3: nat] :
                ~ ( ( M = aa_nat_nat(suc,J3) )
                  & pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) )
  <=> ! [M: nat,N: nat] :
        ~ ( ~ ( ( M = zero_zero_nat )
              | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
              | ~ ( ( M != aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
                  | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
          | ~ ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
              | ~ ( ( M = zero_zero_nat )
                  | ~ ! [J3: nat] :
                        ( ( M != aa_nat_nat(suc,J3) )
                        | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) ) ),
    inference(quant_intro,[status(thm)],[18]) ).

tff(20,plain,
    ^ [M: nat,N: nat] :
      rewrite(( ( ( ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
            | ( M = zero_zero_nat )
            | ( ( M = aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
              & pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
          & ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
            | ( ( M != zero_zero_nat )
              & ! [J3: nat] :
                  ~ ( ( M = aa_nat_nat(suc,J3) )
                    & pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) )
      <=> ( ( ( M = zero_zero_nat )
            | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
            | ( ( M = aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
              & pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
          & ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
            | ( ( M != zero_zero_nat )
              & ! [J3: nat] :
                  ~ ( ( M = aa_nat_nat(suc,J3) )
                    & pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) ) )),
    inference(bind,[status(th)],[]) ).

tff(21,plain,
    ( ! [M: nat,N: nat] :
        ( ( ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
          | ( M = zero_zero_nat )
          | ( ( M = aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
            & pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
        & ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
          | ( ( M != zero_zero_nat )
            & ! [J3: nat] :
                ~ ( ( M = aa_nat_nat(suc,J3) )
                  & pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) )
  <=> ! [M: nat,N: nat] :
        ( ( ( M = zero_zero_nat )
          | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
          | ( ( M = aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
            & pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
        & ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
          | ( ( M != zero_zero_nat )
            & ! [J3: nat] :
                ~ ( ( M = aa_nat_nat(suc,J3) )
                  & pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) ) ),
    inference(quant_intro,[status(thm)],[20]) ).

tff(22,plain,
    ( ! [M: nat,N: nat] :
        ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
      <=> ( ( M = zero_zero_nat )
          | ? [J3: nat] :
              ( ( M = aa_nat_nat(suc,J3) )
              & pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) )
  <=> ! [M: nat,N: nat] :
        ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
      <=> ( ( M = zero_zero_nat )
          | ? [J3: nat] :
              ( ( M = aa_nat_nat(suc,J3) )
              & pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) ),
    inference(rewrite,[status(thm)],[]) ).

tff(23,axiom,
    ! [M: nat,N: nat] :
      ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
    <=> ( ( M = zero_zero_nat )
        | ? [J3: nat] :
            ( ( M = aa_nat_nat(suc,J3) )
            & pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ),
    file('/export/starexec/sandbox2/benchmark/theBenchmark.p',fact_76_less__Suc__eq__0__disj) ).

tff(24,plain,
    ! [M: nat,N: nat] :
      ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
    <=> ( ( M = zero_zero_nat )
        | ? [J3: nat] :
            ( ( M = aa_nat_nat(suc,J3) )
            & pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ),
    inference(modus_ponens,[status(thm)],[23,22]) ).

tff(25,plain,
    ! [M: nat,N: nat] :
      ( ( ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
        | ( M = zero_zero_nat )
        | ( ( M = aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
          & pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
      & ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
        | ( ( M != zero_zero_nat )
          & ! [J3: nat] :
              ~ ( ( M = aa_nat_nat(suc,J3) )
                & pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) ),
    inference(skolemize,[status(sab)],[24]) ).

tff(26,plain,
    ! [M: nat,N: nat] :
      ( ( ( M = zero_zero_nat )
        | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
        | ( ( M = aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
          & pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
      & ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
        | ( ( M != zero_zero_nat )
          & ! [J3: nat] :
              ~ ( ( M = aa_nat_nat(suc,J3) )
                & pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) ),
    inference(modus_ponens,[status(thm)],[25,21]) ).

tff(27,plain,
    ! [M: nat,N: nat] :
      ~ ( ~ ( ( M = zero_zero_nat )
            | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
            | ~ ( ( M != aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
                | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
        | ~ ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
            | ~ ( ( M = zero_zero_nat )
                | ~ ! [J3: nat] :
                      ( ( M != aa_nat_nat(suc,J3) )
                      | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) ),
    inference(modus_ponens,[status(thm)],[26,19]) ).

tff(28,plain,
    ! [M: nat,N: nat] :
      ~ ( ~ ( ( M = zero_zero_nat )
            | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
            | ~ ( ( M != aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
                | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
        | ~ ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
            | ~ ( ( M = zero_zero_nat )
                | ~ ! [J3: nat] :
                      ( ( M != aa_nat_nat(suc,J3) )
                      | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) ),
    inference(modus_ponens,[status(thm)],[27,17]) ).

tff(29,plain,
    ( ( ~ ! [M: nat,N: nat] :
            ~ ( ~ ( ( M = zero_zero_nat )
                  | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
                  | ~ ( ( M != aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
                      | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
              | ~ ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
                  | ~ ( ( M = zero_zero_nat )
                      | ~ ! [J3: nat] :
                            ( ( M != aa_nat_nat(suc,J3) )
                            | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) )
      | pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na))) )
  <=> ( ~ ! [M: nat,N: nat] :
            ~ ( ~ ( ( M = zero_zero_nat )
                  | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
                  | ~ ( ( M != aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
                      | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
              | ~ ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
                  | ~ ( ( M = zero_zero_nat )
                      | ~ ! [J3: nat] :
                            ( ( M != aa_nat_nat(suc,J3) )
                            | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) )
      | pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na))) ) ),
    inference(rewrite,[status(thm)],[]) ).

tff(30,plain,
    ( ~ ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na)))
  <=> pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na))) ),
    inference(rewrite,[status(thm)],[]) ).

tff(31,plain,
    ( ( $false
      | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na))) )
  <=> ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na))) ),
    inference(rewrite,[status(thm)],[]) ).

tff(32,plain,
    ( ~ ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na)))
        | ~ ( ( zero_zero_nat = zero_zero_nat )
            | ~ ! [J3: nat] :
                  ( ( zero_zero_nat != aa_nat_nat(suc,J3) )
                  | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),na)) ) ) )
  <=> ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na))) ),
    inference(rewrite,[status(thm)],[]) ).

tff(33,plain,
    ( ~ $true
  <=> $false ),
    inference(rewrite,[status(thm)],[]) ).

tff(34,plain,
    ( ( $true
      | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na)))
      | ~ ( ( zero_zero_nat != aa_nat_nat(suc,tptp_fun_J3_30(na,zero_zero_nat)) )
          | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(na,zero_zero_nat)),na)) ) )
  <=> $true ),
    inference(rewrite,[status(thm)],[]) ).

tff(35,plain,
    ( ( zero_zero_nat = zero_zero_nat )
  <=> $true ),
    inference(rewrite,[status(thm)],[]) ).

tff(36,plain,
    ( ( ( zero_zero_nat = zero_zero_nat )
      | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na)))
      | ~ ( ( zero_zero_nat != aa_nat_nat(suc,tptp_fun_J3_30(na,zero_zero_nat)) )
          | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(na,zero_zero_nat)),na)) ) )
  <=> ( $true
      | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na)))
      | ~ ( ( zero_zero_nat != aa_nat_nat(suc,tptp_fun_J3_30(na,zero_zero_nat)) )
          | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(na,zero_zero_nat)),na)) ) ) ),
    inference(monotonicity,[status(thm)],[35]) ).

tff(37,plain,
    ( ( ( zero_zero_nat = zero_zero_nat )
      | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na)))
      | ~ ( ( zero_zero_nat != aa_nat_nat(suc,tptp_fun_J3_30(na,zero_zero_nat)) )
          | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(na,zero_zero_nat)),na)) ) )
  <=> $true ),
    inference(transitivity,[status(thm)],[36,34]) ).

tff(38,plain,
    ( ~ ( ( zero_zero_nat = zero_zero_nat )
        | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na)))
        | ~ ( ( zero_zero_nat != aa_nat_nat(suc,tptp_fun_J3_30(na,zero_zero_nat)) )
            | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(na,zero_zero_nat)),na)) ) )
  <=> ~ $true ),
    inference(monotonicity,[status(thm)],[37]) ).

tff(39,plain,
    ( ~ ( ( zero_zero_nat = zero_zero_nat )
        | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na)))
        | ~ ( ( zero_zero_nat != aa_nat_nat(suc,tptp_fun_J3_30(na,zero_zero_nat)) )
            | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(na,zero_zero_nat)),na)) ) )
  <=> $false ),
    inference(transitivity,[status(thm)],[38,33]) ).

tff(40,plain,
    ( ( ~ ( ( zero_zero_nat = zero_zero_nat )
          | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na)))
          | ~ ( ( zero_zero_nat != aa_nat_nat(suc,tptp_fun_J3_30(na,zero_zero_nat)) )
              | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(na,zero_zero_nat)),na)) ) )
      | ~ ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na)))
          | ~ ( ( zero_zero_nat = zero_zero_nat )
              | ~ ! [J3: nat] :
                    ( ( zero_zero_nat != aa_nat_nat(suc,J3) )
                    | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),na)) ) ) ) )
  <=> ( $false
      | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na))) ) ),
    inference(monotonicity,[status(thm)],[39,32]) ).

tff(41,plain,
    ( ( ~ ( ( zero_zero_nat = zero_zero_nat )
          | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na)))
          | ~ ( ( zero_zero_nat != aa_nat_nat(suc,tptp_fun_J3_30(na,zero_zero_nat)) )
              | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(na,zero_zero_nat)),na)) ) )
      | ~ ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na)))
          | ~ ( ( zero_zero_nat = zero_zero_nat )
              | ~ ! [J3: nat] :
                    ( ( zero_zero_nat != aa_nat_nat(suc,J3) )
                    | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),na)) ) ) ) )
  <=> ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na))) ),
    inference(transitivity,[status(thm)],[40,31]) ).

tff(42,plain,
    ( ~ ( ~ ( ( zero_zero_nat = zero_zero_nat )
            | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na)))
            | ~ ( ( zero_zero_nat != aa_nat_nat(suc,tptp_fun_J3_30(na,zero_zero_nat)) )
                | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(na,zero_zero_nat)),na)) ) )
        | ~ ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na)))
            | ~ ( ( zero_zero_nat = zero_zero_nat )
                | ~ ! [J3: nat] :
                      ( ( zero_zero_nat != aa_nat_nat(suc,J3) )
                      | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),na)) ) ) ) )
  <=> ~ ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na))) ),
    inference(monotonicity,[status(thm)],[41]) ).

tff(43,plain,
    ( ~ ( ~ ( ( zero_zero_nat = zero_zero_nat )
            | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na)))
            | ~ ( ( zero_zero_nat != aa_nat_nat(suc,tptp_fun_J3_30(na,zero_zero_nat)) )
                | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(na,zero_zero_nat)),na)) ) )
        | ~ ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na)))
            | ~ ( ( zero_zero_nat = zero_zero_nat )
                | ~ ! [J3: nat] :
                      ( ( zero_zero_nat != aa_nat_nat(suc,J3) )
                      | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),na)) ) ) ) )
  <=> pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na))) ),
    inference(transitivity,[status(thm)],[42,30]) ).

tff(44,plain,
    ( ( ~ ! [M: nat,N: nat] :
            ~ ( ~ ( ( M = zero_zero_nat )
                  | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
                  | ~ ( ( M != aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
                      | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
              | ~ ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
                  | ~ ( ( M = zero_zero_nat )
                      | ~ ! [J3: nat] :
                            ( ( M != aa_nat_nat(suc,J3) )
                            | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) )
      | ~ ( ~ ( ( zero_zero_nat = zero_zero_nat )
              | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na)))
              | ~ ( ( zero_zero_nat != aa_nat_nat(suc,tptp_fun_J3_30(na,zero_zero_nat)) )
                  | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(na,zero_zero_nat)),na)) ) )
          | ~ ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na)))
              | ~ ( ( zero_zero_nat = zero_zero_nat )
                  | ~ ! [J3: nat] :
                        ( ( zero_zero_nat != aa_nat_nat(suc,J3) )
                        | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),na)) ) ) ) ) )
  <=> ( ~ ! [M: nat,N: nat] :
            ~ ( ~ ( ( M = zero_zero_nat )
                  | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
                  | ~ ( ( M != aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
                      | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
              | ~ ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
                  | ~ ( ( M = zero_zero_nat )
                      | ~ ! [J3: nat] :
                            ( ( M != aa_nat_nat(suc,J3) )
                            | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) )
      | pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na))) ) ),
    inference(monotonicity,[status(thm)],[43]) ).

tff(45,plain,
    ( ( ~ ! [M: nat,N: nat] :
            ~ ( ~ ( ( M = zero_zero_nat )
                  | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
                  | ~ ( ( M != aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
                      | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
              | ~ ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
                  | ~ ( ( M = zero_zero_nat )
                      | ~ ! [J3: nat] :
                            ( ( M != aa_nat_nat(suc,J3) )
                            | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) )
      | ~ ( ~ ( ( zero_zero_nat = zero_zero_nat )
              | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na)))
              | ~ ( ( zero_zero_nat != aa_nat_nat(suc,tptp_fun_J3_30(na,zero_zero_nat)) )
                  | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(na,zero_zero_nat)),na)) ) )
          | ~ ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na)))
              | ~ ( ( zero_zero_nat = zero_zero_nat )
                  | ~ ! [J3: nat] :
                        ( ( zero_zero_nat != aa_nat_nat(suc,J3) )
                        | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),na)) ) ) ) ) )
  <=> ( ~ ! [M: nat,N: nat] :
            ~ ( ~ ( ( M = zero_zero_nat )
                  | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
                  | ~ ( ( M != aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
                      | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
              | ~ ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
                  | ~ ( ( M = zero_zero_nat )
                      | ~ ! [J3: nat] :
                            ( ( M != aa_nat_nat(suc,J3) )
                            | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) )
      | pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na))) ) ),
    inference(transitivity,[status(thm)],[44,29]) ).

tff(46,plain,
    ( ~ ! [M: nat,N: nat] :
          ~ ( ~ ( ( M = zero_zero_nat )
                | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
                | ~ ( ( M != aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
                    | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
            | ~ ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
                | ~ ( ( M = zero_zero_nat )
                    | ~ ! [J3: nat] :
                          ( ( M != aa_nat_nat(suc,J3) )
                          | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) )
    | ~ ( ~ ( ( zero_zero_nat = zero_zero_nat )
            | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na)))
            | ~ ( ( zero_zero_nat != aa_nat_nat(suc,tptp_fun_J3_30(na,zero_zero_nat)) )
                | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(na,zero_zero_nat)),na)) ) )
        | ~ ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na)))
            | ~ ( ( zero_zero_nat = zero_zero_nat )
                | ~ ! [J3: nat] :
                      ( ( zero_zero_nat != aa_nat_nat(suc,J3) )
                      | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),na)) ) ) ) ) ),
    inference(quant_inst,[status(thm)],[]) ).

tff(47,plain,
    ( ~ ! [M: nat,N: nat] :
          ~ ( ~ ( ( M = zero_zero_nat )
                | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
                | ~ ( ( M != aa_nat_nat(suc,tptp_fun_J3_30(N,M)) )
                    | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,tptp_fun_J3_30(N,M)),N)) ) )
            | ~ ( pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,M),aa_nat_nat(suc,N)))
                | ~ ( ( M = zero_zero_nat )
                    | ~ ! [J3: nat] :
                          ( ( M != aa_nat_nat(suc,J3) )
                          | ~ pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,J3),N)) ) ) ) )
    | pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na))) ),
    inference(modus_ponens,[status(thm)],[46,45]) ).

tff(48,plain,
    pp(aa_nat_bool(aa_nat_fun_nat_bool(ord_less_nat,zero_zero_nat),aa_nat_nat(suc,na))),
    inference(unit_resolution,[status(thm)],[47,28]) ).

tff(49,plain,
    $false,
    inference(unit_resolution,[status(thm)],[48,12]) ).

%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.07/0.12  % Problem    : ITP225_1 : TPTP v9.0.0. Released v8.0.0.
% 0.07/0.12  % Command    : run_E %s %d THM
% 0.12/0.33  % Computer : n005.cluster.edu
% 0.12/0.33  % Model    : x86_64 x86_64
% 0.12/0.33  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.12/0.33  % Memory   : 8042.1875MB
% 0.12/0.33  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.12/0.33  % CPULimit   : 300
% 0.12/0.33  % WCLimit    : 300
% 0.12/0.33  % DateTime   : Thu Jun 19 18:32:05 EDT 2025
% 0.12/0.33  % CPUTime    : 
% 58.60/58.82  % SZS status Theorem
% 58.60/58.82  % SZS output start Proof
% See solution above
% 59.47/59.69  % E exiting
%------------------------------------------------------------------------------