ITP001 Axioms: ITP058^5.ax


%------------------------------------------------------------------------------
% File     : ITP058^5 : TPTP v9.0.0. Bugfixed v7.5.0.
% Domain   : Interactive Theorem Proving
% Axioms   : HOL4 set theory export, chainy mode
% Version  : [BG+19] axioms.
% English  :

% Refs     : [BG+19] Brown et al. (2019), GRUNGE: A Grand Unified ATP Chall
%          : [Gau20] Gauthier (2020), Email to Geoff Sutcliffe
% Source   : [BG+19]
% Names    : wot^2.ax [Gau20]
%          : HL4058^5.ax [TPAP]

% Status   : Satisfiable
% Syntax   : Number of formulae    :   45 (   1 unt;  16 typ;   0 def)
%            Number of atoms       :  307 (   5 equ;   0 cnn)
%            Maximal formula atoms :   28 (   6 avg)
%            Number of connectives :  499 (   1   ~;   1   |;   9   &; 456   @)
%                                         (   8 <=>;  24  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   21 (  10 avg; 456 nst)
%            Number of types       :    1 (   0 usr)
%            Number of type conns  :   16 (  16   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :   37 (  36 usr;  20 con; 0-2 aty)
%            Number of variables   :   51 (   1   ^  48   !;   2   ?;  51   :)
% SPC      : TH0_SAT_EQU_NAR

% Comments :
% Bugfixes : v7.5.0 - Fixes to the axioms.
%------------------------------------------------------------------------------
thf(tp_c_2Ewot_2EStrongWellOrder,type,
    c_2Ewot_2EStrongWellOrder: del > $i ).

thf(mem_c_2Ewot_2EStrongWellOrder,axiom,
    ! [A_27a: del] : ( mem @ ( c_2Ewot_2EStrongWellOrder @ A_27a ) @ ( arr @ ( arr @ A_27a @ ( arr @ A_27a @ bool ) ) @ bool ) ) ).

thf(tp_c_2Ewot_2EU,type,
    c_2Ewot_2EU: del > $i ).

thf(mem_c_2Ewot_2EU,axiom,
    ! [A_27x: del] : ( mem @ ( c_2Ewot_2EU @ A_27x ) @ ( arr @ ( arr @ A_27x @ bool ) @ ( arr @ ( arr @ A_27x @ bool ) @ bool ) ) ) ).

thf(tp_c_2Ewot_2EWeakWellOrder,type,
    c_2Ewot_2EWeakWellOrder: del > $i ).

thf(mem_c_2Ewot_2EWeakWellOrder,axiom,
    ! [A_27a: del] : ( mem @ ( c_2Ewot_2EWeakWellOrder @ A_27a ) @ ( arr @ ( arr @ A_27a @ ( arr @ A_27a @ bool ) ) @ bool ) ) ).

thf(tp_c_2Ewot_2Echain,type,
    c_2Ewot_2Echain: del > $i ).

thf(mem_c_2Ewot_2Echain,axiom,
    ! [A_27x: del] : ( mem @ ( c_2Ewot_2Echain @ A_27x ) @ ( arr @ ( arr @ ( arr @ A_27x @ bool ) @ bool ) @ bool ) ) ).

thf(tp_c_2Ewot_2Ecomparable,type,
    c_2Ewot_2Ecomparable: del > $i ).

thf(mem_c_2Ewot_2Ecomparable,axiom,
    ! [A_27x: del] : ( mem @ ( c_2Ewot_2Ecomparable @ A_27x ) @ ( arr @ ( arr @ A_27x @ bool ) @ bool ) ) ).

thf(tp_c_2Ewot_2Ecpl,type,
    c_2Ewot_2Ecpl: del > $i ).

thf(mem_c_2Ewot_2Ecpl,axiom,
    ! [A_27x: del] : ( mem @ ( c_2Ewot_2Ecpl @ A_27x ) @ ( arr @ ( arr @ A_27x @ bool ) @ ( arr @ ( arr @ A_27x @ bool ) @ bool ) ) ) ).

thf(tp_c_2Ewot_2Elub__sub,type,
    c_2Ewot_2Elub__sub: del > $i ).

thf(mem_c_2Ewot_2Elub__sub,axiom,
    ! [A_27x: del] : ( mem @ ( c_2Ewot_2Elub__sub @ A_27x ) @ ( arr @ ( arr @ ( arr @ A_27x @ bool ) @ bool ) @ ( arr @ A_27x @ bool ) ) ) ).

thf(tp_c_2Ewot_2Emex,type,
    c_2Ewot_2Emex: del > $i ).

thf(mem_c_2Ewot_2Emex,axiom,
    ! [A_27x: del] : ( mem @ ( c_2Ewot_2Emex @ A_27x ) @ ( arr @ ( arr @ A_27x @ bool ) @ A_27x ) ) ).

thf(tp_c_2Ewot_2Emex__less,type,
    c_2Ewot_2Emex__less: del > $i ).

thf(mem_c_2Ewot_2Emex__less,axiom,
    ! [A_27x: del] : ( mem @ ( c_2Ewot_2Emex__less @ A_27x ) @ ( arr @ A_27x @ ( arr @ A_27x @ bool ) ) ) ).

thf(tp_c_2Ewot_2Emex__less__eq,type,
    c_2Ewot_2Emex__less__eq: del > $i ).

thf(mem_c_2Ewot_2Emex__less__eq,axiom,
    ! [A_27x: del] : ( mem @ ( c_2Ewot_2Emex__less__eq @ A_27x ) @ ( arr @ A_27x @ ( arr @ A_27x @ bool ) ) ) ).

thf(tp_c_2Ewot_2Epreds,type,
    c_2Ewot_2Epreds: del > $i ).

thf(mem_c_2Ewot_2Epreds,axiom,
    ! [A_27x: del] : ( mem @ ( c_2Ewot_2Epreds @ A_27x ) @ ( arr @ A_27x @ ( arr @ A_27x @ bool ) ) ) ).

thf(tp_c_2Ewot_2Epreds__image,type,
    c_2Ewot_2Epreds__image: del > $i ).

thf(mem_c_2Ewot_2Epreds__image,axiom,
    ! [A_27x: del] : ( mem @ ( c_2Ewot_2Epreds__image @ A_27x ) @ ( arr @ ( arr @ A_27x @ bool ) @ ( arr @ ( arr @ A_27x @ bool ) @ bool ) ) ) ).

thf(tp_c_2Ewot_2Esetsuc,type,
    c_2Ewot_2Esetsuc: del > $i ).

thf(mem_c_2Ewot_2Esetsuc,axiom,
    ! [A_27x: del] : ( mem @ ( c_2Ewot_2Esetsuc @ A_27x ) @ ( arr @ ( arr @ A_27x @ bool ) @ ( arr @ A_27x @ bool ) ) ) ).

thf(tp_c_2Ewot_2Esuccl,type,
    c_2Ewot_2Esuccl: del > $i ).

thf(mem_c_2Ewot_2Esuccl,axiom,
    ! [A_27x: del] : ( mem @ ( c_2Ewot_2Esuccl @ A_27x ) @ ( arr @ ( arr @ ( arr @ A_27x @ bool ) @ bool ) @ bool ) ) ).

thf(tp_c_2Ewot_2Etower,type,
    c_2Ewot_2Etower: del > $i ).

thf(mem_c_2Ewot_2Etower,axiom,
    ! [A_27x: del] : ( mem @ ( c_2Ewot_2Etower @ A_27x ) @ ( arr @ ( arr @ ( arr @ A_27x @ bool ) @ bool ) @ bool ) ) ).

thf(tp_c_2Ewot_2Euncl,type,
    c_2Ewot_2Euncl: del > $i ).

thf(mem_c_2Ewot_2Euncl,axiom,
    ! [A_27x: del] : ( mem @ ( c_2Ewot_2Euncl @ A_27x ) @ ( arr @ ( arr @ ( arr @ A_27x @ bool ) @ bool ) @ bool ) ) ).

thf(ax_thm_2Ewot_2Ecpl__def,axiom,
    ! [A_27x: del,V0A: $i] :
      ( ( mem @ V0A @ ( arr @ A_27x @ bool ) )
     => ! [V1B: $i] :
          ( ( mem @ V1B @ ( arr @ A_27x @ bool ) )
         => ( ( p @ ( ap @ ( ap @ ( c_2Ewot_2Ecpl @ A_27x ) @ V0A ) @ V1B ) )
          <=> ( ( p @ ( ap @ ( ap @ ( c_2Epred__set_2ESUBSET @ A_27x ) @ V0A ) @ V1B ) )
              | ( p @ ( ap @ ( ap @ ( c_2Epred__set_2ESUBSET @ A_27x ) @ V1B ) @ V0A ) ) ) ) ) ) ).

thf(ax_thm_2Ewot_2Echain__def,axiom,
    ! [A_27x: del,V0C: $i] :
      ( ( mem @ V0C @ ( arr @ ( arr @ A_27x @ bool ) @ bool ) )
     => ( ( p @ ( ap @ ( c_2Ewot_2Echain @ A_27x ) @ V0C ) )
      <=> ! [V1a: $i] :
            ( ( mem @ V1a @ ( arr @ A_27x @ bool ) )
           => ! [V2b: $i] :
                ( ( mem @ V2b @ ( arr @ A_27x @ bool ) )
               => ( ( ( p @ ( ap @ ( ap @ ( c_2Ebool_2EIN @ ( arr @ A_27x @ bool ) ) @ V1a ) @ V0C ) )
                    & ( p @ ( ap @ ( ap @ ( c_2Ebool_2EIN @ ( arr @ A_27x @ bool ) ) @ V2b ) @ V0C ) ) )
                 => ( p @ ( ap @ ( ap @ ( c_2Ewot_2Ecpl @ A_27x ) @ V1a ) @ V2b ) ) ) ) ) ) ) ).

thf(ax_thm_2Ewot_2Emex__def,axiom,
    ! [A_27x: del,V0s: $i] :
      ( ( mem @ V0s @ ( arr @ A_27x @ bool ) )
     => ( ( ap @ ( c_2Ewot_2Emex @ A_27x ) @ V0s )
        = ( ap @ ( c_2Epred__set_2ECHOICE @ A_27x ) @ ( ap @ ( c_2Epred__set_2ECOMPL @ A_27x ) @ V0s ) ) ) ) ).

thf(ax_thm_2Ewot_2Esetsuc__def,axiom,
    ! [A_27x: del,V0s: $i] :
      ( ( mem @ V0s @ ( arr @ A_27x @ bool ) )
     => ( ( ap @ ( c_2Ewot_2Esetsuc @ A_27x ) @ V0s )
        = ( ap @ ( ap @ ( c_2Epred__set_2EINSERT @ A_27x ) @ ( ap @ ( c_2Ewot_2Emex @ A_27x ) @ V0s ) ) @ V0s ) ) ) ).

thf(ax_thm_2Ewot_2Esuccl__def,axiom,
    ! [A_27x: del,V0c: $i] :
      ( ( mem @ V0c @ ( arr @ ( arr @ A_27x @ bool ) @ bool ) )
     => ( ( p @ ( ap @ ( c_2Ewot_2Esuccl @ A_27x ) @ V0c ) )
      <=> ! [V1s: $i] :
            ( ( mem @ V1s @ ( arr @ A_27x @ bool ) )
           => ( ( p @ ( ap @ ( ap @ ( c_2Ebool_2EIN @ ( arr @ A_27x @ bool ) ) @ V1s ) @ V0c ) )
             => ( p @ ( ap @ ( ap @ ( c_2Ebool_2EIN @ ( arr @ A_27x @ bool ) ) @ ( ap @ ( c_2Ewot_2Esetsuc @ A_27x ) @ V1s ) ) @ V0c ) ) ) ) ) ) ).

thf(ax_thm_2Ewot_2Euncl__def,axiom,
    ! [A_27x: del,V0c: $i] :
      ( ( mem @ V0c @ ( arr @ ( arr @ A_27x @ bool ) @ bool ) )
     => ( ( p @ ( ap @ ( c_2Ewot_2Euncl @ A_27x ) @ V0c ) )
      <=> ! [V1w: $i] :
            ( ( mem @ V1w @ ( arr @ ( arr @ A_27x @ bool ) @ bool ) )
           => ( ( ( p @ ( ap @ ( ap @ ( c_2Epred__set_2ESUBSET @ ( arr @ A_27x @ bool ) ) @ V1w ) @ V0c ) )
                & ( p @ ( ap @ ( c_2Ewot_2Echain @ A_27x ) @ V1w ) ) )
             => ( p @ ( ap @ ( ap @ ( c_2Ebool_2EIN @ ( arr @ A_27x @ bool ) ) @ ( ap @ ( c_2Epred__set_2EBIGUNION @ A_27x ) @ V1w ) ) @ V0c ) ) ) ) ) ) ).

thf(ax_thm_2Ewot_2Etower__def,axiom,
    ! [A_27x: del,V0A: $i] :
      ( ( mem @ V0A @ ( arr @ ( arr @ A_27x @ bool ) @ bool ) )
     => ( ( p @ ( ap @ ( c_2Ewot_2Etower @ A_27x ) @ V0A ) )
      <=> ( ( p @ ( ap @ ( c_2Ewot_2Esuccl @ A_27x ) @ V0A ) )
          & ( p @ ( ap @ ( c_2Ewot_2Euncl @ A_27x ) @ V0A ) ) ) ) ) ).

thf(ax_thm_2Ewot_2Emex__less__eq__def,axiom,
    ! [A_27x: del,V0a: $i] :
      ( ( mem @ V0a @ A_27x )
     => ! [V1b: $i] :
          ( ( mem @ V1b @ A_27x )
         => ( ( p @ ( ap @ ( ap @ ( c_2Ewot_2Emex__less__eq @ A_27x ) @ V0a ) @ V1b ) )
          <=> ( p @ ( ap @ ( ap @ ( c_2Epred__set_2ESUBSET @ A_27x ) @ ( ap @ ( c_2Ewot_2Epreds @ A_27x ) @ V0a ) ) @ ( ap @ ( c_2Ewot_2Epreds @ A_27x ) @ V1b ) ) ) ) ) ) ).

thf(ax_thm_2Ewot_2Emex__less__def,axiom,
    ! [A_27x: del] :
      ( ( c_2Ewot_2Emex__less @ A_27x )
      = ( ap @ ( c_2Erelation_2ESTRORD @ A_27x ) @ ( c_2Ewot_2Emex__less__eq @ A_27x ) ) ) ).

thf(ax_thm_2Ewot_2EWeakWellOrder__def,axiom,
    ! [A_27a: del,V0R: $i] :
      ( ( mem @ V0R @ ( arr @ A_27a @ ( arr @ A_27a @ bool ) ) )
     => ( ( p @ ( ap @ ( c_2Ewot_2EWeakWellOrder @ A_27a ) @ V0R ) )
      <=> ( ( p @ ( ap @ ( c_2Erelation_2EWeakOrder @ A_27a ) @ V0R ) )
          & ! [V1B: $i] :
              ( ( mem @ V1B @ ( arr @ A_27a @ bool ) )
             => ( ( V1B
                 != ( c_2Epred__set_2EEMPTY @ A_27a ) )
               => ? [V2m: $i] :
                    ( ( mem @ V2m @ A_27a )
                    & ( p @ ( ap @ ( ap @ ( c_2Ebool_2EIN @ A_27a ) @ V2m ) @ V1B ) )
                    & ! [V3b: $i] :
                        ( ( mem @ V3b @ A_27a )
                       => ( ( p @ ( ap @ ( ap @ ( c_2Ebool_2EIN @ A_27a ) @ V3b ) @ V1B ) )
                         => ( p @ ( ap @ ( ap @ V0R @ V2m ) @ V3b ) ) ) ) ) ) ) ) ) ) ).

thf(ax_thm_2Ewot_2Epreds__image__def,axiom,
    ! [A_27x: del,V0X: $i] :
      ( ( mem @ V0X @ ( arr @ A_27x @ bool ) )
     => ( ( ap @ ( c_2Ewot_2Epreds__image @ A_27x ) @ V0X )
        = ( ap @ ( c_2Epred__set_2EGSPEC @ ( arr @ A_27x @ bool ) @ A_27x )
          @ ( lam @ A_27x
            @ ^ [V1x: $i] : ( ap @ ( ap @ ( c_2Epair_2E_2C @ ( arr @ A_27x @ bool ) @ bool ) @ ( ap @ ( c_2Ewot_2Epreds @ A_27x ) @ V1x ) ) @ ( ap @ ( ap @ ( c_2Ebool_2EIN @ A_27x ) @ V1x ) @ V0X ) ) ) ) ) ) ).

thf(ax_thm_2Ewot_2EStrongWellOrder__def,axiom,
    ! [A_27a: del,V0R: $i] :
      ( ( mem @ V0R @ ( arr @ A_27a @ ( arr @ A_27a @ bool ) ) )
     => ( ( p @ ( ap @ ( c_2Ewot_2EStrongWellOrder @ A_27a ) @ V0R ) )
      <=> ( ( p @ ( ap @ ( c_2Erelation_2EStrongLinearOrder @ A_27a ) @ V0R ) )
          & ( p @ ( ap @ ( c_2Erelation_2EWF @ A_27a ) @ V0R ) ) ) ) ) ).

thf(conj_thm_2Ewot_2EStrongWellOrderExists,axiom,
    ! [A_27a: del] :
    ? [V0R: $i] :
      ( ( mem @ V0R @ ( arr @ A_27a @ ( arr @ A_27a @ bool ) ) )
      & ( p @ ( ap @ ( c_2Erelation_2EStrongLinearOrder @ A_27a ) @ V0R ) )
      & ( p @ ( ap @ ( c_2Erelation_2EWF @ A_27a ) @ V0R ) ) ) ).

%------------------------------------------------------------------------------