ITP001 Axioms: ITP108^5.ax
%------------------------------------------------------------------------------
% File : ITP108^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 : fmsp^2.ax [Gau20]
% : HL4108^5.ax [TPAP]
% Status : Satisfiable
% Syntax : Number of formulae : 10 ( 0 unt; 1 typ; 0 def)
% Number of atoms : 317 ( 0 equ; 0 cnn)
% Maximal formula atoms : 58 ( 31 avg)
% Number of connectives : 559 ( 0 ~; 0 |; 4 &; 530 @)
% ( 1 <=>; 24 =>; 0 <=; 0 <~>)
% Maximal formula depth : 27 ( 22 avg; 530 nst)
% Number of types : 1 ( 0 usr)
% Number of type conns : 3 ( 3 >; 0 *; 0 +; 0 <<)
% Number of symbols : 35 ( 35 usr; 34 con; 0-3 aty)
% Number of variables : 50 ( 3 ^ 47 !; 0 ?; 50 :)
% SPC : TH0_SAT_NEQ_NAR
% Comments :
% Bugfixes : v7.5.0 - Fixes to the axioms.
%------------------------------------------------------------------------------
thf(tp_c_2Efmsp_2EFMSP,type,
c_2Efmsp_2EFMSP: del > del > del > $i ).
thf(mem_c_2Efmsp_2EFMSP,axiom,
! [A_27a: del,A_27b: del,A_27c: del] : ( mem @ ( c_2Efmsp_2EFMSP @ A_27a @ A_27b @ A_27c ) @ ( arr @ ( arr @ A_27a @ ( arr @ ty_2Enum_2Enum @ bool ) ) @ ( arr @ ( arr @ A_27b @ ( arr @ A_27c @ bool ) ) @ ( arr @ ( ty_2Efinite__map_2Efmap @ A_27a @ A_27b ) @ ( arr @ ( ty_2Esptree_2Espt @ A_27c ) @ bool ) ) ) ) ) ).
thf(ax_thm_2Efmsp_2EFMSP__def,axiom,
! [A_27a: del,A_27b: del,A_27c: del,V0AN: $i] :
( ( mem @ V0AN @ ( arr @ A_27a @ ( arr @ ty_2Enum_2Enum @ bool ) ) )
=> ! [V1BC: $i] :
( ( mem @ V1BC @ ( arr @ A_27b @ ( arr @ A_27c @ bool ) ) )
=> ! [V2fm: $i] :
( ( mem @ V2fm @ ( ty_2Efinite__map_2Efmap @ A_27a @ A_27b ) )
=> ! [V3sp: $i] :
( ( mem @ V3sp @ ( ty_2Esptree_2Espt @ A_27c ) )
=> ( ( p @ ( ap @ ( ap @ ( ap @ ( ap @ ( c_2Efmsp_2EFMSP @ A_27a @ A_27b @ A_27c ) @ V0AN ) @ V1BC ) @ V2fm ) @ V3sp ) )
<=> ! [V4a: $i] :
( ( mem @ V4a @ A_27a )
=> ! [V5n: tp__ty_2Enum_2Enum] :
( ( p @ ( ap @ ( ap @ V0AN @ V4a ) @ ( inj__ty_2Enum_2Enum @ V5n ) ) )
=> ( p @ ( ap @ ( ap @ ( ap @ ( c_2Eoption_2EOPTREL @ A_27b @ A_27c ) @ V1BC ) @ ( ap @ ( ap @ ( c_2Efinite__map_2EFLOOKUP @ A_27a @ A_27b ) @ V2fm ) @ V4a ) ) @ ( ap @ ( ap @ ( c_2Esptree_2Elookup @ A_27c ) @ ( inj__ty_2Enum_2Enum @ V5n ) ) @ V3sp ) ) ) ) ) ) ) ) ) ) ).
thf(conj_thm_2Efmsp_2EFMSP__FDOM,axiom,
! [A_27a: del,A_27b: del,A_27c: del,V0AN: $i] :
( ( mem @ V0AN @ ( arr @ A_27a @ ( arr @ ty_2Enum_2Enum @ bool ) ) )
=> ! [V1BC: $i] :
( ( mem @ V1BC @ ( arr @ A_27b @ ( arr @ A_27c @ bool ) ) )
=> ( p @ ( ap @ ( ap @ ( ap @ ( ap @ ( c_2Etransfer_2EFUN__REL @ ( ty_2Efinite__map_2Efmap @ A_27a @ A_27b ) @ ( ty_2Esptree_2Espt @ A_27c ) @ ( arr @ A_27a @ bool ) @ ( arr @ ty_2Enum_2Enum @ bool ) ) @ ( ap @ ( ap @ ( c_2Efmsp_2EFMSP @ A_27a @ A_27b @ A_27c ) @ V0AN ) @ V1BC ) ) @ ( ap @ ( ap @ ( c_2Etransfer_2EFUN__REL @ A_27a @ ty_2Enum_2Enum @ bool @ bool ) @ V0AN ) @ ( c_2Emin_2E_3D @ bool ) ) ) @ ( c_2Efinite__map_2EFDOM @ A_27a @ A_27b ) ) @ ( c_2Esptree_2Edomain @ A_27c ) ) ) ) ) ).
thf(conj_thm_2Efmsp_2EFMSP__FEMPTY,axiom,
! [A_27a: del,A_27b: del,A_27c: del,V0AN: $i] :
( ( mem @ V0AN @ ( arr @ A_27a @ ( arr @ ty_2Enum_2Enum @ bool ) ) )
=> ! [V1BC: $i] :
( ( mem @ V1BC @ ( arr @ A_27b @ ( arr @ A_27c @ bool ) ) )
=> ( p @ ( ap @ ( ap @ ( ap @ ( ap @ ( c_2Efmsp_2EFMSP @ A_27a @ A_27b @ A_27c ) @ V0AN ) @ V1BC ) @ ( c_2Efinite__map_2EFEMPTY @ A_27a @ A_27b ) ) @ ( c_2Esptree_2ELN @ A_27c ) ) ) ) ) ).
thf(conj_thm_2Efmsp_2EFMSP__FUPDATE,axiom,
! [A_27a: del,A_27b: del,A_27c: del,V0AN: $i] :
( ( mem @ V0AN @ ( arr @ A_27a @ ( arr @ ty_2Enum_2Enum @ bool ) ) )
=> ! [V1BC: $i] :
( ( mem @ V1BC @ ( arr @ A_27b @ ( arr @ A_27c @ bool ) ) )
=> ( ( p @ ( ap @ ( c_2Etransfer_2Ebi__unique @ A_27a @ ty_2Enum_2Enum ) @ V0AN ) )
=> ( p
@ ( ap @ ( ap @ ( ap @ ( ap @ ( c_2Etransfer_2EFUN__REL @ ( ty_2Efinite__map_2Efmap @ A_27a @ A_27b ) @ ( ty_2Esptree_2Espt @ A_27c ) @ ( arr @ ( ty_2Epair_2Eprod @ A_27a @ A_27b ) @ ( ty_2Efinite__map_2Efmap @ A_27a @ A_27b ) ) @ ( arr @ ( ty_2Epair_2Eprod @ ty_2Enum_2Enum @ A_27c ) @ ( ty_2Esptree_2Espt @ A_27c ) ) ) @ ( ap @ ( ap @ ( c_2Efmsp_2EFMSP @ A_27a @ A_27b @ A_27c ) @ V0AN ) @ V1BC ) ) @ ( ap @ ( ap @ ( c_2Etransfer_2EFUN__REL @ ( ty_2Epair_2Eprod @ A_27a @ A_27b ) @ ( ty_2Epair_2Eprod @ ty_2Enum_2Enum @ A_27c ) @ ( ty_2Efinite__map_2Efmap @ A_27a @ A_27b ) @ ( ty_2Esptree_2Espt @ A_27c ) ) @ ( ap @ ( ap @ ( c_2Etransfer_2EPAIR__REL @ A_27a @ ty_2Enum_2Enum @ A_27b @ A_27c ) @ V0AN ) @ V1BC ) ) @ ( ap @ ( ap @ ( c_2Efmsp_2EFMSP @ A_27a @ A_27b @ A_27c ) @ V0AN ) @ V1BC ) ) ) @ ( c_2Efinite__map_2EFUPDATE @ A_27a @ A_27b ) )
@ ( lam @ ( ty_2Esptree_2Espt @ A_27c )
@ ^ [V2sp: $i] :
( ap @ ( c_2Epair_2EUNCURRY @ ty_2Enum_2Enum @ A_27c @ ( ty_2Esptree_2Espt @ A_27c ) )
@ ( lam @ ty_2Enum_2Enum
@ ^ [V3n: $i] :
( lam @ A_27c
@ ^ [V4v: $i] : ( ap @ ( ap @ ( ap @ ( c_2Esptree_2Einsert @ A_27c ) @ V3n ) @ V4v ) @ V2sp ) ) ) ) ) ) ) ) ) ) ).
thf(conj_thm_2Efmsp_2EFMSP__bitotal,axiom,
! [A_27a: del,A_27b: del,A_27c: del,V0AN: $i] :
( ( mem @ V0AN @ ( arr @ A_27a @ ( arr @ ty_2Enum_2Enum @ bool ) ) )
=> ! [V1BC: $i] :
( ( mem @ V1BC @ ( arr @ A_27b @ ( arr @ A_27c @ bool ) ) )
=> ( ( ( p @ ( ap @ ( c_2Etransfer_2Ebitotal @ A_27a @ ty_2Enum_2Enum ) @ V0AN ) )
& ( p @ ( ap @ ( c_2Etransfer_2Ebitotal @ A_27b @ A_27c ) @ V1BC ) )
& ( p @ ( ap @ ( c_2Etransfer_2Ebi__unique @ A_27a @ ty_2Enum_2Enum ) @ V0AN ) ) )
=> ( p @ ( ap @ ( c_2Etransfer_2Ebitotal @ ( ty_2Efinite__map_2Efmap @ A_27a @ A_27b ) @ ( ty_2Esptree_2Espt @ A_27c ) ) @ ( ap @ ( ap @ ( c_2Efmsp_2EFMSP @ A_27a @ A_27b @ A_27c ) @ V0AN ) @ V1BC ) ) ) ) ) ) ).
thf(conj_thm_2Efmsp_2EFMSP__FORALL,axiom,
! [A_27a: del,A_27b: del,A_27c: del,V0AN: $i] :
( ( mem @ V0AN @ ( arr @ A_27a @ ( arr @ ty_2Enum_2Enum @ bool ) ) )
=> ! [V1BC: $i] :
( ( mem @ V1BC @ ( arr @ A_27b @ ( arr @ A_27c @ bool ) ) )
=> ( ( ( p @ ( ap @ ( c_2Etransfer_2Ebitotal @ A_27a @ ty_2Enum_2Enum ) @ V0AN ) )
& ( p @ ( ap @ ( c_2Etransfer_2Ebitotal @ A_27b @ A_27c ) @ V1BC ) )
& ( p @ ( ap @ ( c_2Etransfer_2Ebi__unique @ A_27a @ ty_2Enum_2Enum ) @ V0AN ) ) )
=> ( p @ ( ap @ ( ap @ ( ap @ ( ap @ ( c_2Etransfer_2EFUN__REL @ ( arr @ ( ty_2Efinite__map_2Efmap @ A_27a @ A_27b ) @ bool ) @ ( arr @ ( ty_2Esptree_2Espt @ A_27c ) @ bool ) @ bool @ bool ) @ ( ap @ ( ap @ ( c_2Etransfer_2EFUN__REL @ ( ty_2Efinite__map_2Efmap @ A_27a @ A_27b ) @ ( ty_2Esptree_2Espt @ A_27c ) @ bool @ bool ) @ ( ap @ ( ap @ ( c_2Efmsp_2EFMSP @ A_27a @ A_27b @ A_27c ) @ V0AN ) @ V1BC ) ) @ ( c_2Emin_2E_3D @ bool ) ) ) @ ( c_2Emin_2E_3D @ bool ) ) @ ( c_2Ebool_2E_21 @ ( ty_2Efinite__map_2Efmap @ A_27a @ A_27b ) ) ) @ ( c_2Ebool_2E_21 @ ( ty_2Esptree_2Espt @ A_27c ) ) ) ) ) ) ) ).
thf(conj_thm_2Efmsp_2EFMSP__FUNION,axiom,
! [A_27a: del,A_27b: del,A_27c: del,V0AN: $i] :
( ( mem @ V0AN @ ( arr @ A_27a @ ( arr @ ty_2Enum_2Enum @ bool ) ) )
=> ! [V1BC: $i] :
( ( mem @ V1BC @ ( arr @ A_27b @ ( arr @ A_27c @ bool ) ) )
=> ( p @ ( ap @ ( ap @ ( ap @ ( ap @ ( c_2Etransfer_2EFUN__REL @ ( ty_2Efinite__map_2Efmap @ A_27a @ A_27b ) @ ( ty_2Esptree_2Espt @ A_27c ) @ ( arr @ ( ty_2Efinite__map_2Efmap @ A_27a @ A_27b ) @ ( ty_2Efinite__map_2Efmap @ A_27a @ A_27b ) ) @ ( arr @ ( ty_2Esptree_2Espt @ A_27c ) @ ( ty_2Esptree_2Espt @ A_27c ) ) ) @ ( ap @ ( ap @ ( c_2Efmsp_2EFMSP @ A_27a @ A_27b @ A_27c ) @ V0AN ) @ V1BC ) ) @ ( ap @ ( ap @ ( c_2Etransfer_2EFUN__REL @ ( ty_2Efinite__map_2Efmap @ A_27a @ A_27b ) @ ( ty_2Esptree_2Espt @ A_27c ) @ ( ty_2Efinite__map_2Efmap @ A_27a @ A_27b ) @ ( ty_2Esptree_2Espt @ A_27c ) ) @ ( ap @ ( ap @ ( c_2Efmsp_2EFMSP @ A_27a @ A_27b @ A_27c ) @ V0AN ) @ V1BC ) ) @ ( ap @ ( ap @ ( c_2Efmsp_2EFMSP @ A_27a @ A_27b @ A_27c ) @ V0AN ) @ V1BC ) ) ) @ ( c_2Efinite__map_2EFUNION @ A_27a @ A_27b ) ) @ ( c_2Esptree_2Eunion @ A_27c ) ) ) ) ) ).
thf(conj_thm_2Efmsp_2EFMSP__FDOMSUB,axiom,
! [A_27a: del,A_27b: del,A_27c: del,V0AN: $i] :
( ( mem @ V0AN @ ( arr @ A_27a @ ( arr @ ty_2Enum_2Enum @ bool ) ) )
=> ! [V1BC: $i] :
( ( mem @ V1BC @ ( arr @ A_27b @ ( arr @ A_27c @ bool ) ) )
=> ( ( p @ ( ap @ ( c_2Etransfer_2Ebi__unique @ A_27a @ ty_2Enum_2Enum ) @ V0AN ) )
=> ( p @ ( ap @ ( ap @ ( ap @ ( ap @ ( c_2Etransfer_2EFUN__REL @ ( ty_2Efinite__map_2Efmap @ A_27a @ A_27b ) @ ( ty_2Esptree_2Espt @ A_27c ) @ ( arr @ A_27a @ ( ty_2Efinite__map_2Efmap @ A_27a @ A_27b ) ) @ ( arr @ ty_2Enum_2Enum @ ( ty_2Esptree_2Espt @ A_27c ) ) ) @ ( ap @ ( ap @ ( c_2Efmsp_2EFMSP @ A_27a @ A_27b @ A_27c ) @ V0AN ) @ V1BC ) ) @ ( ap @ ( ap @ ( c_2Etransfer_2EFUN__REL @ A_27a @ ty_2Enum_2Enum @ ( ty_2Efinite__map_2Efmap @ A_27a @ A_27b ) @ ( ty_2Esptree_2Espt @ A_27c ) ) @ V0AN ) @ ( ap @ ( ap @ ( c_2Efmsp_2EFMSP @ A_27a @ A_27b @ A_27c ) @ V0AN ) @ V1BC ) ) ) @ ( c_2Efinite__map_2Efdomsub @ A_27a @ A_27b ) ) @ ( ap @ ( c_2Ecombin_2EC @ ty_2Enum_2Enum @ ( ty_2Esptree_2Espt @ A_27c ) @ ( ty_2Esptree_2Espt @ A_27c ) ) @ ( c_2Esptree_2Edelete @ A_27c ) ) ) ) ) ) ) ).
%------------------------------------------------------------------------------