ITP001 Axioms: ITP035^5.ax
%------------------------------------------------------------------------------
% File : ITP035^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 : listRange^2.ax [Gau20]
% : HL4035^5.ax [TPAP]
% Status : Satisfiable
% Syntax : Number of formulae : 17 ( 5 unt; 2 typ; 0 def)
% Number of atoms : 282 ( 10 equ; 0 cnn)
% Maximal formula atoms : 25 ( 16 avg)
% Number of connectives : 331 ( 0 ~; 0 |; 2 &; 322 @)
% ( 2 <=>; 5 =>; 0 <=; 0 <~>)
% Maximal formula depth : 13 ( 7 avg; 322 nst)
% Number of types : 1 ( 0 usr)
% Number of type conns : 0 ( 0 >; 0 *; 0 +; 0 <<)
% Number of symbols : 29 ( 28 usr; 28 con; 0-2 aty)
% Number of variables : 29 ( 2 ^ 27 !; 0 ?; 29 :)
% SPC : TH0_SAT_EQU_NAR
% Comments :
% Bugfixes : v7.5.0 - Fixes to the axioms.
%------------------------------------------------------------------------------
thf(tp_c_2ElistRange_2ElistRangeINC,type,
c_2ElistRange_2ElistRangeINC: $i ).
thf(mem_c_2ElistRange_2ElistRangeINC,axiom,
mem @ c_2ElistRange_2ElistRangeINC @ ( arr @ ty_2Enum_2Enum @ ( arr @ ty_2Enum_2Enum @ ( ty_2Elist_2Elist @ ty_2Enum_2Enum ) ) ) ).
thf(tp_c_2ElistRange_2ElistRangeLHI,type,
c_2ElistRange_2ElistRangeLHI: $i ).
thf(mem_c_2ElistRange_2ElistRangeLHI,axiom,
mem @ c_2ElistRange_2ElistRangeLHI @ ( arr @ ty_2Enum_2Enum @ ( arr @ ty_2Enum_2Enum @ ( ty_2Elist_2Elist @ ty_2Enum_2Enum ) ) ) ).
thf(ax_thm_2ElistRange_2ElistRangeINC__def,axiom,
! [V0m: tp__ty_2Enum_2Enum,V1n: tp__ty_2Enum_2Enum] :
( ( surj__c_ty_2Elist_2Elist_ty_2Enum_2Enum @ ( ap @ ( ap @ c_2ElistRange_2ElistRangeINC @ ( inj__ty_2Enum_2Enum @ V0m ) ) @ ( inj__ty_2Enum_2Enum @ V1n ) ) )
= ( surj__c_ty_2Elist_2Elist_ty_2Enum_2Enum
@ ( ap
@ ( ap @ ( c_2Elist_2EGENLIST @ ty_2Enum_2Enum )
@ ( lam @ ty_2Enum_2Enum
@ ^ [V2i: $i] : ( ap @ ( ap @ c_2Earithmetic_2E_2B @ ( inj__ty_2Enum_2Enum @ V0m ) ) @ V2i ) ) )
@ ( ap @ ( ap @ c_2Earithmetic_2E_2D @ ( ap @ ( ap @ c_2Earithmetic_2E_2B @ ( inj__ty_2Enum_2Enum @ V1n ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) @ ( inj__ty_2Enum_2Enum @ V0m ) ) ) ) ) ).
thf(conj_thm_2ElistRange_2ElistRangeINC__SING,axiom,
! [V0m: tp__ty_2Enum_2Enum] :
( ( surj__c_ty_2Elist_2Elist_ty_2Enum_2Enum @ ( ap @ ( ap @ c_2ElistRange_2ElistRangeINC @ ( inj__ty_2Enum_2Enum @ V0m ) ) @ ( inj__ty_2Enum_2Enum @ V0m ) ) )
= ( surj__c_ty_2Elist_2Elist_ty_2Enum_2Enum @ ( ap @ ( ap @ ( c_2Elist_2ECONS @ ty_2Enum_2Enum ) @ ( inj__ty_2Enum_2Enum @ V0m ) ) @ ( c_2Elist_2ENIL @ ty_2Enum_2Enum ) ) ) ) ).
thf(conj_thm_2ElistRange_2EMEM__listRangeINC,axiom,
! [V0x: tp__ty_2Enum_2Enum,V1m: tp__ty_2Enum_2Enum,V2n: tp__ty_2Enum_2Enum] :
( ( p @ ( ap @ ( ap @ ( c_2Ebool_2EIN @ ty_2Enum_2Enum ) @ ( inj__ty_2Enum_2Enum @ V0x ) ) @ ( ap @ ( c_2Elist_2ELIST__TO__SET @ ty_2Enum_2Enum ) @ ( ap @ ( ap @ c_2ElistRange_2ElistRangeINC @ ( inj__ty_2Enum_2Enum @ V1m ) ) @ ( inj__ty_2Enum_2Enum @ V2n ) ) ) ) )
<=> ( ( p @ ( ap @ ( ap @ c_2Earithmetic_2E_3C_3D @ ( inj__ty_2Enum_2Enum @ V1m ) ) @ ( inj__ty_2Enum_2Enum @ V0x ) ) )
& ( p @ ( ap @ ( ap @ c_2Earithmetic_2E_3C_3D @ ( inj__ty_2Enum_2Enum @ V0x ) ) @ ( inj__ty_2Enum_2Enum @ V2n ) ) ) ) ) ).
thf(conj_thm_2ElistRange_2ElistRangeINC__CONS,axiom,
! [V0m: tp__ty_2Enum_2Enum,V1n: tp__ty_2Enum_2Enum] :
( ( p @ ( ap @ ( ap @ c_2Earithmetic_2E_3C_3D @ ( inj__ty_2Enum_2Enum @ V0m ) ) @ ( inj__ty_2Enum_2Enum @ V1n ) ) )
=> ( ( surj__c_ty_2Elist_2Elist_ty_2Enum_2Enum @ ( ap @ ( ap @ c_2ElistRange_2ElistRangeINC @ ( inj__ty_2Enum_2Enum @ V0m ) ) @ ( inj__ty_2Enum_2Enum @ V1n ) ) )
= ( surj__c_ty_2Elist_2Elist_ty_2Enum_2Enum @ ( ap @ ( ap @ ( c_2Elist_2ECONS @ ty_2Enum_2Enum ) @ ( inj__ty_2Enum_2Enum @ V0m ) ) @ ( ap @ ( ap @ c_2ElistRange_2ElistRangeINC @ ( ap @ ( ap @ c_2Earithmetic_2E_2B @ ( inj__ty_2Enum_2Enum @ V0m ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) @ ( inj__ty_2Enum_2Enum @ V1n ) ) ) ) ) ) ).
thf(conj_thm_2ElistRange_2ElistRangeINC__EMPTY,axiom,
! [V0n: tp__ty_2Enum_2Enum,V1m: tp__ty_2Enum_2Enum] :
( ( p @ ( ap @ ( ap @ c_2Eprim__rec_2E_3C @ ( inj__ty_2Enum_2Enum @ V0n ) ) @ ( inj__ty_2Enum_2Enum @ V1m ) ) )
=> ( ( surj__c_ty_2Elist_2Elist_ty_2Enum_2Enum @ ( ap @ ( ap @ c_2ElistRange_2ElistRangeINC @ ( inj__ty_2Enum_2Enum @ V1m ) ) @ ( inj__ty_2Enum_2Enum @ V0n ) ) )
= ( surj__c_ty_2Elist_2Elist_ty_2Enum_2Enum @ ( c_2Elist_2ENIL @ ty_2Enum_2Enum ) ) ) ) ).
thf(ax_thm_2ElistRange_2ElistRangeLHI__def,axiom,
! [V0m: tp__ty_2Enum_2Enum,V1n: tp__ty_2Enum_2Enum] :
( ( surj__c_ty_2Elist_2Elist_ty_2Enum_2Enum @ ( ap @ ( ap @ c_2ElistRange_2ElistRangeLHI @ ( inj__ty_2Enum_2Enum @ V0m ) ) @ ( inj__ty_2Enum_2Enum @ V1n ) ) )
= ( surj__c_ty_2Elist_2Elist_ty_2Enum_2Enum
@ ( ap
@ ( ap @ ( c_2Elist_2EGENLIST @ ty_2Enum_2Enum )
@ ( lam @ ty_2Enum_2Enum
@ ^ [V2i: $i] : ( ap @ ( ap @ c_2Earithmetic_2E_2B @ ( inj__ty_2Enum_2Enum @ V0m ) ) @ V2i ) ) )
@ ( ap @ ( ap @ c_2Earithmetic_2E_2D @ ( inj__ty_2Enum_2Enum @ V1n ) ) @ ( inj__ty_2Enum_2Enum @ V0m ) ) ) ) ) ).
thf(conj_thm_2ElistRange_2ElistRangeLHI__EQ,axiom,
! [V0m: tp__ty_2Enum_2Enum] :
( ( surj__c_ty_2Elist_2Elist_ty_2Enum_2Enum @ ( ap @ ( ap @ c_2ElistRange_2ElistRangeLHI @ ( inj__ty_2Enum_2Enum @ V0m ) ) @ ( inj__ty_2Enum_2Enum @ V0m ) ) )
= ( surj__c_ty_2Elist_2Elist_ty_2Enum_2Enum @ ( c_2Elist_2ENIL @ ty_2Enum_2Enum ) ) ) ).
thf(conj_thm_2ElistRange_2EMEM__listRangeLHI,axiom,
! [V0x: tp__ty_2Enum_2Enum,V1m: tp__ty_2Enum_2Enum,V2n: tp__ty_2Enum_2Enum] :
( ( p @ ( ap @ ( ap @ ( c_2Ebool_2EIN @ ty_2Enum_2Enum ) @ ( inj__ty_2Enum_2Enum @ V0x ) ) @ ( ap @ ( c_2Elist_2ELIST__TO__SET @ ty_2Enum_2Enum ) @ ( ap @ ( ap @ c_2ElistRange_2ElistRangeLHI @ ( inj__ty_2Enum_2Enum @ V1m ) ) @ ( inj__ty_2Enum_2Enum @ V2n ) ) ) ) )
<=> ( ( p @ ( ap @ ( ap @ c_2Earithmetic_2E_3C_3D @ ( inj__ty_2Enum_2Enum @ V1m ) ) @ ( inj__ty_2Enum_2Enum @ V0x ) ) )
& ( p @ ( ap @ ( ap @ c_2Eprim__rec_2E_3C @ ( inj__ty_2Enum_2Enum @ V0x ) ) @ ( inj__ty_2Enum_2Enum @ V2n ) ) ) ) ) ).
thf(conj_thm_2ElistRange_2ElistRangeLHI__EMPTY,axiom,
! [V0hi: tp__ty_2Enum_2Enum,V1lo: tp__ty_2Enum_2Enum] :
( ( p @ ( ap @ ( ap @ c_2Earithmetic_2E_3C_3D @ ( inj__ty_2Enum_2Enum @ V0hi ) ) @ ( inj__ty_2Enum_2Enum @ V1lo ) ) )
=> ( ( surj__c_ty_2Elist_2Elist_ty_2Enum_2Enum @ ( ap @ ( ap @ c_2ElistRange_2ElistRangeLHI @ ( inj__ty_2Enum_2Enum @ V1lo ) ) @ ( inj__ty_2Enum_2Enum @ V0hi ) ) )
= ( surj__c_ty_2Elist_2Elist_ty_2Enum_2Enum @ ( c_2Elist_2ENIL @ ty_2Enum_2Enum ) ) ) ) ).
thf(conj_thm_2ElistRange_2ElistRangeLHI__CONS,axiom,
! [V0lo: tp__ty_2Enum_2Enum,V1hi: tp__ty_2Enum_2Enum] :
( ( p @ ( ap @ ( ap @ c_2Eprim__rec_2E_3C @ ( inj__ty_2Enum_2Enum @ V0lo ) ) @ ( inj__ty_2Enum_2Enum @ V1hi ) ) )
=> ( ( surj__c_ty_2Elist_2Elist_ty_2Enum_2Enum @ ( ap @ ( ap @ c_2ElistRange_2ElistRangeLHI @ ( inj__ty_2Enum_2Enum @ V0lo ) ) @ ( inj__ty_2Enum_2Enum @ V1hi ) ) )
= ( surj__c_ty_2Elist_2Elist_ty_2Enum_2Enum @ ( ap @ ( ap @ ( c_2Elist_2ECONS @ ty_2Enum_2Enum ) @ ( inj__ty_2Enum_2Enum @ V0lo ) ) @ ( ap @ ( ap @ c_2ElistRange_2ElistRangeLHI @ ( ap @ ( ap @ c_2Earithmetic_2E_2B @ ( inj__ty_2Enum_2Enum @ V0lo ) ) @ ( ap @ c_2Earithmetic_2ENUMERAL @ ( ap @ c_2Earithmetic_2EBIT1 @ ( inj__ty_2Enum_2Enum @ fo__c_2Earithmetic_2EZERO ) ) ) ) ) @ ( inj__ty_2Enum_2Enum @ V1hi ) ) ) ) ) ) ).
thf(conj_thm_2ElistRange_2ElistRangeLHI__ALL__DISTINCT,axiom,
! [V0lo: tp__ty_2Enum_2Enum,V1hi: tp__ty_2Enum_2Enum] : ( p @ ( ap @ ( c_2Elist_2EALL__DISTINCT @ ty_2Enum_2Enum ) @ ( ap @ ( ap @ c_2ElistRange_2ElistRangeLHI @ ( inj__ty_2Enum_2Enum @ V0lo ) ) @ ( inj__ty_2Enum_2Enum @ V1hi ) ) ) ) ).
thf(conj_thm_2ElistRange_2ELENGTH__listRangeLHI,axiom,
! [V0lo: tp__ty_2Enum_2Enum,V1hi: tp__ty_2Enum_2Enum] :
( ( surj__ty_2Enum_2Enum @ ( ap @ ( c_2Elist_2ELENGTH @ ty_2Enum_2Enum ) @ ( ap @ ( ap @ c_2ElistRange_2ElistRangeLHI @ ( inj__ty_2Enum_2Enum @ V0lo ) ) @ ( inj__ty_2Enum_2Enum @ V1hi ) ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Earithmetic_2E_2D @ ( inj__ty_2Enum_2Enum @ V1hi ) ) @ ( inj__ty_2Enum_2Enum @ V0lo ) ) ) ) ).
thf(conj_thm_2ElistRange_2EEL__listRangeLHI,axiom,
! [V0lo: tp__ty_2Enum_2Enum,V1i: tp__ty_2Enum_2Enum,V2hi: tp__ty_2Enum_2Enum] :
( ( p @ ( ap @ ( ap @ c_2Eprim__rec_2E_3C @ ( ap @ ( ap @ c_2Earithmetic_2E_2B @ ( inj__ty_2Enum_2Enum @ V0lo ) ) @ ( inj__ty_2Enum_2Enum @ V1i ) ) ) @ ( inj__ty_2Enum_2Enum @ V2hi ) ) )
=> ( ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ ( c_2Elist_2EEL @ ty_2Enum_2Enum ) @ ( inj__ty_2Enum_2Enum @ V1i ) ) @ ( ap @ ( ap @ c_2ElistRange_2ElistRangeLHI @ ( inj__ty_2Enum_2Enum @ V0lo ) ) @ ( inj__ty_2Enum_2Enum @ V2hi ) ) ) )
= ( surj__ty_2Enum_2Enum @ ( ap @ ( ap @ c_2Earithmetic_2E_2B @ ( inj__ty_2Enum_2Enum @ V0lo ) ) @ ( inj__ty_2Enum_2Enum @ V1i ) ) ) ) ) ).
%------------------------------------------------------------------------------