TPTP Problem File: SLH0992^1.p
View Solutions
- Solve Problem
%------------------------------------------------------------------------------
% File : SLH0000^1 : TPTP v8.2.0. Released v8.2.0.
% Domain : Archive of Formal Proofs
% Problem :
% Version : Especial.
% English :
% Refs : [Des23] Desharnais (2023), Email to Geoff Sutcliffe
% Source : [Des23]
% Names : FSM_Tests/0041_OFSM_Tables_Refined/prob_00136_005827__19533896_1 [Des23]
% Status : Theorem
% Rating : ? v8.2.0
% Syntax : Number of formulae : 1565 ( 759 unt; 303 typ; 0 def)
% Number of atoms : 3129 (2261 equ; 0 cnn)
% Maximal formula atoms : 18 ( 2 avg)
% Number of connectives : 11822 ( 638 ~; 48 |; 285 &;9587 @)
% ( 0 <=>;1264 =>; 0 <=; 0 <~>)
% Maximal formula depth : 29 ( 6 avg)
% Number of types : 41 ( 40 usr)
% Number of type conns : 888 ( 888 >; 0 *; 0 +; 0 <<)
% Number of symbols : 266 ( 263 usr; 18 con; 0-3 aty)
% Number of variables : 3751 ( 202 ^;3298 !; 251 ?;3751 :)
% SPC : TH0_THM_EQU_NAR
% Comments : This file was generated by Isabelle (most likely Sledgehammer)
% 2023-01-19 11:28:09.657
%------------------------------------------------------------------------------
% Could-be-implicit typings (40)
thf(ty_n_t__Product____Type__Oprod_I_062_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_M_Eo_J_Mt__Product____Type__Oprod_It__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_Mt__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_J_J,type,
produc1052841582867983724_set_a: $tType ).
thf(ty_n_t__Product____Type__Oprod_I_062_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_M_062_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_M_Eo_J_J_Mt__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_J,type,
produc5330063544323038804_set_a: $tType ).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_Mt__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_J_J,type,
set_Pr1653833977117045571_set_a: $tType ).
thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_Mt__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_J,type,
produc2412615728736211939_set_a: $tType ).
thf(ty_n_t__List__Olist_It__List__Olist_It__Product____Type__Oprod_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_Mt__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_J_J,type,
list_l3933699947543367503_set_a: $tType ).
thf(ty_n_t__Product____Type__Oprod_I_062_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_M_Eo_J_Mt__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_J,type,
produc8198732073216325070_set_a: $tType ).
thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_Mt__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_J,type,
list_P1402444854915166025_set_a: $tType ).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_Mt__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_J,type,
set_Pr3081520320537980707_set_a: $tType ).
thf(ty_n_t__Product____Type__Oprod_I_062_It__Nat__Onat_M_Eo_J_Mt__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J_J,type,
produc1950156742809263241st_nat: $tType ).
thf(ty_n_t__Product____Type__Oprod_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_Mt__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
produc6947938150963741379_set_a: $tType ).
thf(ty_n_t__List__Olist_It__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_J_J,type,
list_l7647397734156138798_set_a: $tType ).
thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_Mt__Nat__Onat_J,type,
produc3186607280269354546_a_nat: $tType ).
thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_J,type,
list_P2990564888572971688_set_a: $tType ).
thf(ty_n_t__Product____Type__Oprod_I_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
produc254973753779126261st_nat: $tType ).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J_J,type,
set_Pr3451248702717554689st_nat: $tType ).
thf(ty_n_t__List__Olist_It__List__Olist_It__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_J_J,type,
list_l1938460180903808289_set_a: $tType ).
thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
produc8434378496978325410_set_a: $tType ).
thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
produc1828647624359046049st_nat: $tType ).
thf(ty_n_t__List__Olist_It__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
list_l3264859301627795341at_nat: $tType ).
thf(ty_n_t__List__Olist_It__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_J,type,
list_l8399423937273897361_set_a: $tType ).
thf(ty_n_t__Set__Oset_It__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_J,type,
set_li5718660665068022583_set_a: $tType ).
thf(ty_n_t__Product____Type__Oprod_I_062_It__Nat__Onat_M_Eo_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
produc4226810134323546766st_nat: $tType ).
thf(ty_n_t__Product____Type__Oprod_It__FSM__Ofsm_Itf__a_Mtf__b_Mtf__c_J_Mt__Nat__Onat_J,type,
produc2314347074417592866_c_nat: $tType ).
thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__Nat__Onat_J,type,
produc1540777390238407569at_nat: $tType ).
thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
list_P6011104703257516679at_nat: $tType ).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
set_Pr1261947904930325089at_nat: $tType ).
thf(ty_n_t__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
list_mapping_a_set_a: $tType ).
thf(ty_n_t__Set__Oset_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
set_mapping_a_set_a: $tType ).
thf(ty_n_t__List__Olist_It__List__Olist_It__List__Olist_It__Nat__Onat_J_J_J,type,
list_list_list_nat: $tType ).
thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
product_prod_nat_nat: $tType ).
thf(ty_n_t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
mapping_a_set_a: $tType ).
thf(ty_n_t__List__Olist_It__List__Olist_It__Nat__Onat_J_J,type,
list_list_nat: $tType ).
thf(ty_n_t__Set__Oset_It__List__Olist_It__Nat__Onat_J_J,type,
set_list_nat: $tType ).
thf(ty_n_t__List__Olist_It__Set__Oset_It__Nat__Onat_J_J,type,
list_set_nat: $tType ).
thf(ty_n_t__FSM__Ofsm_Itf__a_Mtf__b_Mtf__c_J,type,
fsm_a_b_c: $tType ).
thf(ty_n_t__List__Olist_It__Nat__Onat_J,type,
list_nat: $tType ).
thf(ty_n_t__Set__Oset_It__Nat__Onat_J,type,
set_nat: $tType ).
thf(ty_n_t__String__Ochar,type,
char: $tType ).
thf(ty_n_t__Num__Onum,type,
num: $tType ).
thf(ty_n_t__Nat__Onat,type,
nat: $tType ).
% Explicit typings (263)
thf(sy_c_BNF__Greatest__Fixpoint_OShift_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
bNF_Gr7843483351733849746_set_a: set_li5718660665068022583_set_a > mapping_a_set_a > set_li5718660665068022583_set_a ).
thf(sy_c_BNF__Greatest__Fixpoint_OShift_001t__Nat__Onat,type,
bNF_Gr1872714664788909425ft_nat: set_list_nat > nat > set_list_nat ).
thf(sy_c_BNF__Greatest__Fixpoint_OSucc_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
bNF_Gr6033724282919027222_set_a: set_li5718660665068022583_set_a > list_mapping_a_set_a > set_mapping_a_set_a ).
thf(sy_c_BNF__Greatest__Fixpoint_OSucc_001t__Nat__Onat,type,
bNF_Gr6352880689984616693cc_nat: set_list_nat > list_nat > set_nat ).
thf(sy_c_Groups_Ominus__class_Ominus_001t__Nat__Onat,type,
minus_minus_nat: nat > nat > nat ).
thf(sy_c_Groups_Oone__class_Oone_001t__Nat__Onat,type,
one_one_nat: nat ).
thf(sy_c_Groups_Oplus__class_Oplus_001t__Nat__Onat,type,
plus_plus_nat: nat > nat > nat ).
thf(sy_c_Groups_Oplus__class_Oplus_001t__Num__Onum,type,
plus_plus_num: num > num > num ).
thf(sy_c_Groups_Ozero__class_Ozero_001t__Nat__Onat,type,
zero_zero_nat: nat ).
thf(sy_c_If_001t__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
if_lis8209991044144858171_set_a: $o > list_mapping_a_set_a > list_mapping_a_set_a > list_mapping_a_set_a ).
thf(sy_c_If_001t__List__Olist_It__Nat__Onat_J,type,
if_list_nat: $o > list_nat > list_nat > list_nat ).
thf(sy_c_If_001t__Nat__Onat,type,
if_nat: $o > nat > nat > nat ).
thf(sy_c_List_Oappend_001t__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
append5300639281392126886_set_a: list_l8399423937273897361_set_a > list_l8399423937273897361_set_a > list_l8399423937273897361_set_a ).
thf(sy_c_List_Oappend_001t__List__Olist_It__Nat__Onat_J,type,
append_list_nat: list_list_nat > list_list_nat > list_list_nat ).
thf(sy_c_List_Oappend_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
append4262749607566113174_set_a: list_mapping_a_set_a > list_mapping_a_set_a > list_mapping_a_set_a ).
thf(sy_c_List_Oappend_001t__Nat__Onat,type,
append_nat: list_nat > list_nat > list_nat ).
thf(sy_c_List_Oappend_001t__Product____Type__Oprod_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_Mt__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
append3352868668904671198_set_a: list_P1402444854915166025_set_a > list_P1402444854915166025_set_a > list_P1402444854915166025_set_a ).
thf(sy_c_List_Oappend_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
append985823374593552924at_nat: list_P6011104703257516679at_nat > list_P6011104703257516679at_nat > list_P6011104703257516679at_nat ).
thf(sy_c_List_Obind_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
bind_m8948031617290580587_set_a: list_mapping_a_set_a > ( mapping_a_set_a > list_mapping_a_set_a ) > list_mapping_a_set_a ).
thf(sy_c_List_Obind_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_001t__Nat__Onat,type,
bind_m3028898422562257738_a_nat: list_mapping_a_set_a > ( mapping_a_set_a > list_nat ) > list_nat ).
thf(sy_c_List_Obind_001t__Nat__Onat_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
bind_n7428041876232328522_set_a: list_nat > ( nat > list_mapping_a_set_a ) > list_mapping_a_set_a ).
thf(sy_c_List_Obind_001t__Nat__Onat_001t__Nat__Onat,type,
bind_nat_nat: list_nat > ( nat > list_nat ) > list_nat ).
thf(sy_c_List_Oconcat_001t__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
concat3671710083786574464_set_a: list_l1938460180903808289_set_a > list_l8399423937273897361_set_a ).
thf(sy_c_List_Oconcat_001t__List__Olist_It__Nat__Onat_J,type,
concat_list_nat: list_list_list_nat > list_list_nat ).
thf(sy_c_List_Oconcat_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
concat6784524380904369520_set_a: list_l8399423937273897361_set_a > list_mapping_a_set_a ).
thf(sy_c_List_Oconcat_001t__Nat__Onat,type,
concat_nat: list_list_nat > list_nat ).
thf(sy_c_List_Odistinct_001t__List__Olist_It__Nat__Onat_J,type,
distinct_list_nat: list_list_nat > $o ).
thf(sy_c_List_Odistinct_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
distin1103880245795799096_set_a: list_mapping_a_set_a > $o ).
thf(sy_c_List_Odistinct_001t__Nat__Onat,type,
distinct_nat: list_nat > $o ).
thf(sy_c_List_Odistinct_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
distin6923225563576452346at_nat: list_P6011104703257516679at_nat > $o ).
thf(sy_c_List_Odistinct_001t__Set__Oset_It__Nat__Onat_J,type,
distinct_set_nat: list_set_nat > $o ).
thf(sy_c_List_Odrop_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
drop_mapping_a_set_a: nat > list_mapping_a_set_a > list_mapping_a_set_a ).
thf(sy_c_List_Odrop_001t__Nat__Onat,type,
drop_nat: nat > list_nat > list_nat ).
thf(sy_c_List_Oenumerate_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
enumer415895375227969484_set_a: nat > list_mapping_a_set_a > list_P2990564888572971688_set_a ).
thf(sy_c_List_Oenumerate_001t__Nat__Onat,type,
enumerate_nat: nat > list_nat > list_P6011104703257516679at_nat ).
thf(sy_c_List_Ofilter_001t__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
filter5923938535083274564_set_a: ( list_mapping_a_set_a > $o ) > list_l8399423937273897361_set_a > list_l8399423937273897361_set_a ).
thf(sy_c_List_Ofilter_001t__List__Olist_It__Nat__Onat_J,type,
filter_list_nat: ( list_nat > $o ) > list_list_nat > list_list_nat ).
thf(sy_c_List_Ofilter_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
filter7335739693268387380_set_a: ( mapping_a_set_a > $o ) > list_mapping_a_set_a > list_mapping_a_set_a ).
thf(sy_c_List_Ofilter_001t__Nat__Onat,type,
filter_nat: ( nat > $o ) > list_nat > list_nat ).
thf(sy_c_List_Ofoldr_001t__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_001t__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
foldr_8617676676015937451_set_a: ( list_mapping_a_set_a > list_mapping_a_set_a > list_mapping_a_set_a ) > list_l8399423937273897361_set_a > list_mapping_a_set_a > list_mapping_a_set_a ).
thf(sy_c_List_Ofoldr_001t__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_001t__Nat__Onat,type,
foldr_7986787372255180026_a_nat: ( list_mapping_a_set_a > nat > nat ) > list_l8399423937273897361_set_a > nat > nat ).
thf(sy_c_List_Ofoldr_001t__List__Olist_It__Nat__Onat_J_001t__List__Olist_It__Nat__Onat_J,type,
foldr_6871341030409798377st_nat: ( list_nat > list_nat > list_nat ) > list_list_nat > list_nat > list_nat ).
thf(sy_c_List_Ofoldr_001t__List__Olist_It__Nat__Onat_J_001t__Nat__Onat,type,
foldr_list_nat_nat: ( list_nat > nat > nat ) > list_list_nat > nat > nat ).
thf(sy_c_List_Ofoldr_001t__Nat__Onat_001t__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
foldr_4622666561834033786_set_a: ( nat > list_mapping_a_set_a > list_mapping_a_set_a ) > list_nat > list_mapping_a_set_a > list_mapping_a_set_a ).
thf(sy_c_List_Ogen__length_001t__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
gen_le4925385388237678126_set_a: nat > list_l8399423937273897361_set_a > nat ).
thf(sy_c_List_Ogen__length_001t__List__Olist_It__Nat__Onat_J,type,
gen_length_list_nat: nat > list_list_nat > nat ).
thf(sy_c_List_Ogen__length_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
gen_le7107825650602424350_set_a: nat > list_mapping_a_set_a > nat ).
thf(sy_c_List_Ogen__length_001t__Nat__Onat,type,
gen_length_nat: nat > list_nat > nat ).
thf(sy_c_List_Ogen__length_001t__Product____Type__Oprod_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_Mt__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
gen_le6497792890266079062_set_a: nat > list_P1402444854915166025_set_a > nat ).
thf(sy_c_List_Ogen__length_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
gen_le8269785728081451573_set_a: nat > list_P2990564888572971688_set_a > nat ).
thf(sy_c_List_Ogen__length_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
gen_le2383899666085517716at_nat: nat > list_P6011104703257516679at_nat > nat ).
thf(sy_c_List_Oinsert_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
insert2013799400217708245_set_a: mapping_a_set_a > list_mapping_a_set_a > list_mapping_a_set_a ).
thf(sy_c_List_Oinsert_001t__Nat__Onat,type,
insert_nat: nat > list_nat > list_nat ).
thf(sy_c_List_Olenlex_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
lenlex8686202977806187302_set_a: set_Pr3081520320537980707_set_a > set_Pr1653833977117045571_set_a ).
thf(sy_c_List_Olenlex_001t__Nat__Onat,type,
lenlex_nat: set_Pr1261947904930325089at_nat > set_Pr3451248702717554689st_nat ).
thf(sy_c_List_Olex_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
lex_mapping_a_set_a: set_Pr3081520320537980707_set_a > set_Pr1653833977117045571_set_a ).
thf(sy_c_List_Olex_001t__Nat__Onat,type,
lex_nat: set_Pr1261947904930325089at_nat > set_Pr3451248702717554689st_nat ).
thf(sy_c_List_Olist_OCons_001t__List__Olist_It__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_J,type,
cons_l8674489638808131163_set_a: list_l8399423937273897361_set_a > list_l1938460180903808289_set_a > list_l1938460180903808289_set_a ).
thf(sy_c_List_Olist_OCons_001t__List__Olist_It__List__Olist_It__Nat__Onat_J_J,type,
cons_list_list_nat: list_list_nat > list_list_list_nat > list_list_list_nat ).
thf(sy_c_List_Olist_OCons_001t__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
cons_l6707406555391138123_set_a: list_mapping_a_set_a > list_l8399423937273897361_set_a > list_l8399423937273897361_set_a ).
thf(sy_c_List_Olist_OCons_001t__List__Olist_It__Nat__Onat_J,type,
cons_list_nat: list_nat > list_list_nat > list_list_nat ).
thf(sy_c_List_Olist_OCons_001t__List__Olist_It__Product____Type__Oprod_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_Mt__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_J,type,
cons_l32608307534580991_set_a: list_P1402444854915166025_set_a > list_l3933699947543367503_set_a > list_l3933699947543367503_set_a ).
thf(sy_c_List_Olist_OCons_001t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_J,type,
cons_l8980169708187075678_set_a: list_P2990564888572971688_set_a > list_l7647397734156138798_set_a > list_l7647397734156138798_set_a ).
thf(sy_c_List_Olist_OCons_001t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
cons_l7612840610449961021at_nat: list_P6011104703257516679at_nat > list_l3264859301627795341at_nat > list_l3264859301627795341at_nat ).
thf(sy_c_List_Olist_OCons_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
cons_mapping_a_set_a: mapping_a_set_a > list_mapping_a_set_a > list_mapping_a_set_a ).
thf(sy_c_List_Olist_OCons_001t__Nat__Onat,type,
cons_nat: nat > list_nat > list_nat ).
thf(sy_c_List_Olist_OCons_001t__Product____Type__Oprod_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_Mt__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
cons_P7532267380390966137_set_a: produc6947938150963741379_set_a > list_P1402444854915166025_set_a > list_P1402444854915166025_set_a ).
thf(sy_c_List_Olist_OCons_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
cons_P5055657147124145240_set_a: produc8434378496978325410_set_a > list_P2990564888572971688_set_a > list_P2990564888572971688_set_a ).
thf(sy_c_List_Olist_OCons_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
cons_P6512896166579812791at_nat: product_prod_nat_nat > list_P6011104703257516679at_nat > list_P6011104703257516679at_nat ).
thf(sy_c_List_Olist_ONil_001t__List__Olist_It__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_J,type,
nil_li8260884125551398411_set_a: list_l1938460180903808289_set_a ).
thf(sy_c_List_Olist_ONil_001t__List__Olist_It__List__Olist_It__Nat__Onat_J_J,type,
nil_list_list_nat: list_list_list_nat ).
thf(sy_c_List_Olist_ONil_001t__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
nil_li1965212427176585467_set_a: list_l8399423937273897361_set_a ).
thf(sy_c_List_Olist_ONil_001t__List__Olist_It__Nat__Onat_J,type,
nil_list_nat: list_list_nat ).
thf(sy_c_List_Olist_ONil_001t__List__Olist_It__Product____Type__Oprod_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_Mt__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_J,type,
nil_li6765150025095561551_set_a: list_l3933699947543367503_set_a ).
thf(sy_c_List_Olist_ONil_001t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_J,type,
nil_li1663408444419233966_set_a: list_l7647397734156138798_set_a ).
thf(sy_c_List_Olist_ONil_001t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
nil_li8973309667444810893at_nat: list_l3264859301627795341at_nat ).
thf(sy_c_List_Olist_ONil_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
nil_mapping_a_set_a: list_mapping_a_set_a ).
thf(sy_c_List_Olist_ONil_001t__Nat__Onat,type,
nil_nat: list_nat ).
thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_Mt__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
nil_Pr569463720148864969_set_a: list_P1402444854915166025_set_a ).
thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
nil_Pr3815278418687809704_set_a: list_P2990564888572971688_set_a ).
thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
nil_Pr5478986624290739719at_nat: list_P6011104703257516679at_nat ).
thf(sy_c_List_Olist_Ocase__list_001_Eo_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
case_l5966180421458340771_set_a: $o > ( mapping_a_set_a > list_mapping_a_set_a > $o ) > list_mapping_a_set_a > $o ).
thf(sy_c_List_Olist_Ocase__list_001_Eo_001t__Nat__Onat,type,
case_list_o_nat: $o > ( nat > list_nat > $o ) > list_nat > $o ).
thf(sy_c_List_Olist_Ocase__list_001t__List__Olist_It__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_J_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
case_l3909372001649238506_set_a: list_l8399423937273897361_set_a > ( mapping_a_set_a > list_mapping_a_set_a > list_l8399423937273897361_set_a ) > list_mapping_a_set_a > list_l8399423937273897361_set_a ).
thf(sy_c_List_Olist_Ocase__list_001t__List__Olist_It__List__Olist_It__Nat__Onat_J_J_001t__Nat__Onat,type,
case_l3331202209248957608at_nat: list_list_nat > ( nat > list_nat > list_list_nat ) > list_nat > list_list_nat ).
thf(sy_c_List_Olist_Ocase__list_001t__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
case_l6933312115870525274_set_a: list_mapping_a_set_a > ( mapping_a_set_a > list_mapping_a_set_a > list_mapping_a_set_a ) > list_mapping_a_set_a > list_mapping_a_set_a ).
thf(sy_c_List_Olist_Ocase__list_001t__List__Olist_It__Nat__Onat_J_001t__Nat__Onat,type,
case_l2340614614379431832at_nat: list_nat > ( nat > list_nat > list_nat ) > list_nat > list_nat ).
thf(sy_c_List_Olist_Ohd_001t__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
hd_lis1041256309613100374_set_a: list_l8399423937273897361_set_a > list_mapping_a_set_a ).
thf(sy_c_List_Olist_Ohd_001t__List__Olist_It__Nat__Onat_J,type,
hd_list_nat: list_list_nat > list_nat ).
thf(sy_c_List_Olist_Ohd_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
hd_mapping_a_set_a: list_mapping_a_set_a > mapping_a_set_a ).
thf(sy_c_List_Olist_Ohd_001t__Nat__Onat,type,
hd_nat: list_nat > nat ).
thf(sy_c_List_Olist_Ohd_001t__Product____Type__Oprod_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_Mt__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
hd_Pro6409104613535744558_set_a: list_P1402444854915166025_set_a > produc6947938150963741379_set_a ).
thf(sy_c_List_Olist_Ohd_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
hd_Pro8974737750001286413_set_a: list_P2990564888572971688_set_a > produc8434378496978325410_set_a ).
thf(sy_c_List_Olist_Ohd_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
hd_Pro3460610213475200108at_nat: list_P6011104703257516679at_nat > product_prod_nat_nat ).
thf(sy_c_List_Olist_Omap_001t__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_001t__List__Olist_It__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_J,type,
map_li6987350538220096856_set_a: ( list_mapping_a_set_a > list_l8399423937273897361_set_a ) > list_l8399423937273897361_set_a > list_l1938460180903808289_set_a ).
thf(sy_c_List_Olist_Omap_001t__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_001t__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
map_li7167894565733511880_set_a: ( list_mapping_a_set_a > list_mapping_a_set_a ) > list_l8399423937273897361_set_a > list_l8399423937273897361_set_a ).
thf(sy_c_List_Olist_Omap_001t__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
map_li6483730670513101240_set_a: ( list_mapping_a_set_a > mapping_a_set_a ) > list_l8399423937273897361_set_a > list_mapping_a_set_a ).
thf(sy_c_List_Olist_Omap_001t__List__Olist_It__Nat__Onat_J_001t__List__Olist_It__List__Olist_It__Nat__Onat_J_J,type,
map_li960784813134754710st_nat: ( list_nat > list_list_nat ) > list_list_nat > list_list_list_nat ).
thf(sy_c_List_Olist_Omap_001t__List__Olist_It__Nat__Onat_J_001t__List__Olist_It__Nat__Onat_J,type,
map_li7225945977422193158st_nat: ( list_nat > list_nat ) > list_list_nat > list_list_nat ).
thf(sy_c_List_Olist_Omap_001t__List__Olist_It__Nat__Onat_J_001t__Nat__Onat,type,
map_list_nat_nat: ( list_nat > nat ) > list_list_nat > list_nat ).
thf(sy_c_List_Olist_Omap_001t__List__Olist_It__Nat__Onat_J_001t__Set__Oset_It__Nat__Onat_J,type,
map_list_nat_set_nat: ( list_nat > set_nat ) > list_list_nat > list_set_nat ).
thf(sy_c_List_Olist_Omap_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_001t__List__Olist_It__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_J,type,
map_ma8718683969823173448_set_a: ( mapping_a_set_a > list_l8399423937273897361_set_a ) > list_mapping_a_set_a > list_l1938460180903808289_set_a ).
thf(sy_c_List_Olist_Omap_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_001t__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
map_ma490051923195529400_set_a: ( mapping_a_set_a > list_mapping_a_set_a ) > list_mapping_a_set_a > list_l8399423937273897361_set_a ).
thf(sy_c_List_Olist_Omap_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
map_ma4957267141589346216_set_a: ( mapping_a_set_a > mapping_a_set_a ) > list_mapping_a_set_a > list_mapping_a_set_a ).
thf(sy_c_List_Olist_Omap_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_001t__Nat__Onat,type,
map_ma4603351842386580103_a_nat: ( mapping_a_set_a > nat ) > list_mapping_a_set_a > list_nat ).
thf(sy_c_List_Olist_Omap_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_001t__Product____Type__Oprod_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_Mt__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
map_ma6369272473881603916_set_a: ( mapping_a_set_a > produc6947938150963741379_set_a ) > list_mapping_a_set_a > list_P1402444854915166025_set_a ).
thf(sy_c_List_Olist_Omap_001t__Nat__Onat_001t__List__Olist_It__List__Olist_It__Nat__Onat_J_J,type,
map_na6205611841492582150st_nat: ( nat > list_list_nat ) > list_nat > list_list_list_nat ).
thf(sy_c_List_Olist_Omap_001t__Nat__Onat_001t__List__Olist_It__Nat__Onat_J,type,
map_nat_list_nat: ( nat > list_nat ) > list_nat > list_list_nat ).
thf(sy_c_List_Olist_Omap_001t__Nat__Onat_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
map_na9002495296056650887_set_a: ( nat > mapping_a_set_a ) > list_nat > list_mapping_a_set_a ).
thf(sy_c_List_Olist_Omap_001t__Nat__Onat_001t__Nat__Onat,type,
map_nat_nat: ( nat > nat ) > list_nat > list_nat ).
thf(sy_c_List_Olist_Omap_001t__Nat__Onat_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
map_na7298421622053143531at_nat: ( nat > product_prod_nat_nat ) > list_nat > list_P6011104703257516679at_nat ).
thf(sy_c_List_Olist_Orec__list_001t__List__Olist_It__Nat__Onat_J_001t__Nat__Onat,type,
rec_li7516600145284979816at_nat: list_nat > ( nat > list_nat > list_nat > list_nat ) > list_nat > list_nat ).
thf(sy_c_List_Olist_Oset_001t__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
set_li175978742148655916_set_a: list_l8399423937273897361_set_a > set_li5718660665068022583_set_a ).
thf(sy_c_List_Olist_Oset_001t__List__Olist_It__Nat__Onat_J,type,
set_list_nat2: list_list_nat > set_list_nat ).
thf(sy_c_List_Olist_Oset_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
set_mapping_a_set_a2: list_mapping_a_set_a > set_mapping_a_set_a ).
thf(sy_c_List_Olist_Oset_001t__Nat__Onat,type,
set_nat2: list_nat > set_nat ).
thf(sy_c_List_Olist_Oset_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
set_Pr5648618587558075414at_nat: list_P6011104703257516679at_nat > set_Pr1261947904930325089at_nat ).
thf(sy_c_List_Olist_Osize__list_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
size_l2551612255187775209_set_a: ( mapping_a_set_a > nat ) > list_mapping_a_set_a > nat ).
thf(sy_c_List_Olist_Osize__list_001t__Nat__Onat,type,
size_list_nat: ( nat > nat ) > list_nat > nat ).
thf(sy_c_List_Olist_Otl_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
tl_mapping_a_set_a: list_mapping_a_set_a > list_mapping_a_set_a ).
thf(sy_c_List_Olist_Otl_001t__Nat__Onat,type,
tl_nat: list_nat > list_nat ).
thf(sy_c_List_Olist__ex1_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
list_e980809908310139752_set_a: ( mapping_a_set_a > $o ) > list_mapping_a_set_a > $o ).
thf(sy_c_List_Olist__ex1_001t__Nat__Onat,type,
list_ex1_nat: ( nat > $o ) > list_nat > $o ).
thf(sy_c_List_Olist__update_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
list_u3231430371889417475_set_a: list_mapping_a_set_a > nat > mapping_a_set_a > list_mapping_a_set_a ).
thf(sy_c_List_Olist__update_001t__Nat__Onat,type,
list_update_nat: list_nat > nat > nat > list_nat ).
thf(sy_c_List_Olistrel1_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
listre7612188901796163410_set_a: set_Pr3081520320537980707_set_a > set_Pr1653833977117045571_set_a ).
thf(sy_c_List_Olistrel1_001t__Nat__Onat,type,
listrel1_nat: set_Pr1261947904930325089at_nat > set_Pr3451248702717554689st_nat ).
thf(sy_c_List_Omap__tailrec_001t__Nat__Onat_001t__Nat__Onat,type,
map_tailrec_nat_nat: ( nat > nat ) > list_nat > list_nat ).
thf(sy_c_List_Omap__tailrec__rev_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
map_ta5163468435162167769_set_a: ( mapping_a_set_a > mapping_a_set_a ) > list_mapping_a_set_a > list_mapping_a_set_a > list_mapping_a_set_a ).
thf(sy_c_List_Omap__tailrec__rev_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_001t__Nat__Onat,type,
map_ta8613830578749771448_a_nat: ( mapping_a_set_a > nat ) > list_mapping_a_set_a > list_nat > list_nat ).
thf(sy_c_List_Omap__tailrec__rev_001t__Nat__Onat_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
map_ta3789601995565066424_set_a: ( nat > mapping_a_set_a ) > list_nat > list_mapping_a_set_a > list_mapping_a_set_a ).
thf(sy_c_List_Omap__tailrec__rev_001t__Nat__Onat_001t__Nat__Onat,type,
map_ta7164188454487880599at_nat: ( nat > nat ) > list_nat > list_nat > list_nat ).
thf(sy_c_List_Omaps_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
maps_m3412264917517915941_set_a: ( mapping_a_set_a > list_mapping_a_set_a ) > list_mapping_a_set_a > list_mapping_a_set_a ).
thf(sy_c_List_Omaps_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_001t__Nat__Onat,type,
maps_m6483984096961324036_a_nat: ( mapping_a_set_a > list_nat ) > list_mapping_a_set_a > list_nat ).
thf(sy_c_List_Omaps_001t__Nat__Onat_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
maps_n1659755513776619012_set_a: ( nat > list_mapping_a_set_a ) > list_nat > list_mapping_a_set_a ).
thf(sy_c_List_Omaps_001t__Nat__Onat_001t__Nat__Onat,type,
maps_nat_nat: ( nat > list_nat ) > list_nat > list_nat ).
thf(sy_c_List_On__lists_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
n_list7459182699849025379_set_a: nat > list_mapping_a_set_a > list_l8399423937273897361_set_a ).
thf(sy_c_List_On__lists_001t__Nat__Onat,type,
n_lists_nat: nat > list_nat > list_list_nat ).
thf(sy_c_List_Onth_001t__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
nth_li3062975924003389114_set_a: list_l8399423937273897361_set_a > nat > list_mapping_a_set_a ).
thf(sy_c_List_Onth_001t__List__Olist_It__Nat__Onat_J,type,
nth_list_nat: list_list_nat > nat > list_nat ).
thf(sy_c_List_Onth_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
nth_mapping_a_set_a: list_mapping_a_set_a > nat > mapping_a_set_a ).
thf(sy_c_List_Onth_001t__Nat__Onat,type,
nth_nat: list_nat > nat > nat ).
thf(sy_c_List_Onth_001t__Product____Type__Oprod_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_Mt__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
nth_Pr7222757820770539978_set_a: list_P1402444854915166025_set_a > nat > produc6947938150963741379_set_a ).
thf(sy_c_List_Onth_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
nth_Pr1763216751932927145_set_a: list_P2990564888572971688_set_a > nat > produc8434378496978325410_set_a ).
thf(sy_c_List_Onth_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
nth_Pr7617993195940197384at_nat: list_P6011104703257516679at_nat > nat > product_prod_nat_nat ).
thf(sy_c_List_Onths_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
nths_mapping_a_set_a: list_mapping_a_set_a > set_nat > list_mapping_a_set_a ).
thf(sy_c_List_Onths_001t__Nat__Onat,type,
nths_nat: list_nat > set_nat > list_nat ).
thf(sy_c_List_Oproduct_001t__Nat__Onat_001t__Nat__Onat,type,
product_nat_nat: list_nat > list_nat > list_P6011104703257516679at_nat ).
thf(sy_c_List_Oproduct__lists_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
produc5800141938999160642_set_a: list_l8399423937273897361_set_a > list_l8399423937273897361_set_a ).
thf(sy_c_List_Oproduct__lists_001t__Nat__Onat,type,
product_lists_nat: list_list_nat > list_list_nat ).
thf(sy_c_List_Oremdups__adj_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
remdup7353998041916051893_set_a: list_mapping_a_set_a > list_mapping_a_set_a ).
thf(sy_c_List_Oremdups__adj_001t__Nat__Onat,type,
remdups_adj_nat: list_nat > list_nat ).
thf(sy_c_List_Oremdups__adj__rel_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
remdup8937436175610656808_set_a: list_mapping_a_set_a > list_mapping_a_set_a > $o ).
thf(sy_c_List_Oremdups__adj__rel_001t__Nat__Onat,type,
remdups_adj_rel_nat: list_nat > list_nat > $o ).
thf(sy_c_List_Oreplicate_001t__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
replic3260553529942556609_set_a: nat > list_mapping_a_set_a > list_l8399423937273897361_set_a ).
thf(sy_c_List_Oreplicate_001t__List__Olist_It__Nat__Onat_J,type,
replicate_list_nat: nat > list_nat > list_list_nat ).
thf(sy_c_List_Oreplicate_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
replic1631670222262777649_set_a: nat > mapping_a_set_a > list_mapping_a_set_a ).
thf(sy_c_List_Oreplicate_001t__Nat__Onat,type,
replicate_nat: nat > nat > list_nat ).
thf(sy_c_List_Orev_001t__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
rev_li9100908683137238683_set_a: list_l8399423937273897361_set_a > list_l8399423937273897361_set_a ).
thf(sy_c_List_Orev_001t__List__Olist_It__Nat__Onat_J,type,
rev_list_nat: list_list_nat > list_list_nat ).
thf(sy_c_List_Orev_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
rev_mapping_a_set_a: list_mapping_a_set_a > list_mapping_a_set_a ).
thf(sy_c_List_Orev_001t__Nat__Onat,type,
rev_nat: list_nat > list_nat ).
thf(sy_c_List_Orev_001t__Product____Type__Oprod_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_Mt__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
rev_Pr8602555266060573225_set_a: list_P1402444854915166025_set_a > list_P1402444854915166025_set_a ).
thf(sy_c_List_Orev_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
rev_Pr6588284943057314568_set_a: list_P2990564888572971688_set_a > list_P2990564888572971688_set_a ).
thf(sy_c_List_Orev_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
rev_Pr6102188148953555047at_nat: list_P6011104703257516679at_nat > list_P6011104703257516679at_nat ).
thf(sy_c_List_Orotate1_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
rotate6178470443254404702_set_a: list_mapping_a_set_a > list_mapping_a_set_a ).
thf(sy_c_List_Orotate1_001t__Nat__Onat,type,
rotate1_nat: list_nat > list_nat ).
thf(sy_c_List_Osubseqs_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
subseq2557973625717637724_set_a: list_mapping_a_set_a > list_l8399423937273897361_set_a ).
thf(sy_c_List_Osubseqs_001t__Nat__Onat,type,
subseqs_nat: list_nat > list_list_nat ).
thf(sy_c_List_Otake_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
take_mapping_a_set_a: nat > list_mapping_a_set_a > list_mapping_a_set_a ).
thf(sy_c_List_Otake_001t__Nat__Onat,type,
take_nat: nat > list_nat > list_nat ).
thf(sy_c_List_Otranspose_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
transp4038014982164974433_set_a: list_l8399423937273897361_set_a > list_l8399423937273897361_set_a ).
thf(sy_c_List_Otranspose_001t__Nat__Onat,type,
transpose_nat: list_list_nat > list_list_nat ).
thf(sy_c_List_Otranspose__rel_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
transp3248090008155149692_set_a: list_l8399423937273897361_set_a > list_l8399423937273897361_set_a > $o ).
thf(sy_c_List_Otranspose__rel_001t__Nat__Onat,type,
transpose_rel_nat: list_list_nat > list_list_nat > $o ).
thf(sy_c_List_Oupt,type,
upt: nat > nat > list_nat ).
thf(sy_c_Nat_OSuc,type,
suc: nat > nat ).
thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_J,type,
size_s1578076166182737445_set_a: list_l8399423937273897361_set_a > nat ).
thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__List__Olist_It__Nat__Onat_J_J,type,
size_s3023201423986296836st_nat: list_list_nat > nat ).
thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
size_s2079826900039435797_set_a: list_mapping_a_set_a > nat ).
thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Nat__Onat_J,type,
size_size_list_nat: list_nat > nat ).
thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
size_s5460976970255530739at_nat: list_P6011104703257516679at_nat > nat ).
thf(sy_c_Nat_Osize__class_Osize_001t__String__Ochar,type,
size_size_char: char > nat ).
thf(sy_c_Nat__Bijection_Otriangle,type,
nat_triangle: nat > nat ).
thf(sy_c_Num_Onumeral__class_Onumeral_001t__Nat__Onat,type,
numeral_numeral_nat: num > nat ).
thf(sy_c_OFSM__Tables__Refined_Ocompute__ofsm__table__list_001tf__a_001tf__b_001tf__c,type,
oFSM_T7112452476333882245_a_b_c: fsm_a_b_c > nat > list_mapping_a_set_a ).
thf(sy_c_OFSM__Tables__Refined_Ocompute__ofsm__table__list__rel_001tf__a_001tf__b_001tf__c,type,
oFSM_T4142510991734556734_a_b_c: produc2314347074417592866_c_nat > produc2314347074417592866_c_nat > $o ).
thf(sy_c_OFSM__Tables__Refined_Oinitial__ofsm__table_001tf__a_001tf__b_001tf__c,type,
oFSM_T5435067451961929104_a_b_c: fsm_a_b_c > mapping_a_set_a ).
thf(sy_c_OFSM__Tables__Refined_Onext__ofsm__table_001tf__a_001tf__b_001tf__c,type,
oFSM_T257171030951260681_a_b_c: fsm_a_b_c > mapping_a_set_a > mapping_a_set_a ).
thf(sy_c_Orderings_Oord__class_Oless_001t__Nat__Onat,type,
ord_less_nat: nat > nat > $o ).
thf(sy_c_Orderings_Oord__class_Oless_001t__Num__Onum,type,
ord_less_num: num > num > $o ).
thf(sy_c_Orderings_Oord__class_Omax_001t__Nat__Onat,type,
ord_max_nat: nat > nat > nat ).
thf(sy_c_Product__Type_OPair_001_062_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_M_062_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_M_Eo_J_J_001t__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
produc6850582211560838350_set_a: ( mapping_a_set_a > mapping_a_set_a > $o ) > list_mapping_a_set_a > produc5330063544323038804_set_a ).
thf(sy_c_Product__Type_OPair_001_062_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_M_Eo_J_001t__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
produc6190809660564417480_set_a: ( mapping_a_set_a > $o ) > list_mapping_a_set_a > produc8198732073216325070_set_a ).
thf(sy_c_Product__Type_OPair_001_062_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_M_Eo_J_001t__Product____Type__Oprod_It__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_Mt__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_J,type,
produc6575338118125240412_set_a: ( mapping_a_set_a > $o ) > produc2412615728736211939_set_a > produc1052841582867983724_set_a ).
thf(sy_c_Product__Type_OPair_001_062_It__Nat__Onat_M_062_It__Nat__Onat_M_Eo_J_J_001t__List__Olist_It__Nat__Onat_J,type,
produc4727192421694094319st_nat: ( nat > nat > $o ) > list_nat > produc254973753779126261st_nat ).
thf(sy_c_Product__Type_OPair_001_062_It__Nat__Onat_M_Eo_J_001t__List__Olist_It__Nat__Onat_J,type,
produc8587622027977423880st_nat: ( nat > $o ) > list_nat > produc4226810134323546766st_nat ).
thf(sy_c_Product__Type_OPair_001_062_It__Nat__Onat_M_Eo_J_001t__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
produc1851982983375519865st_nat: ( nat > $o ) > produc1828647624359046049st_nat > produc1950156742809263241st_nat ).
thf(sy_c_Product__Type_OPair_001t__FSM__Ofsm_Itf__a_Mtf__b_Mtf__c_J_001t__Nat__Onat,type,
produc4959803781544425372_c_nat: fsm_a_b_c > nat > produc2314347074417592866_c_nat ).
thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_001t__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
produc3343591741951367323_set_a: list_mapping_a_set_a > list_mapping_a_set_a > produc2412615728736211939_set_a ).
thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_001t__Nat__Onat,type,
produc3059527110568611306_a_nat: list_mapping_a_set_a > nat > produc3186607280269354546_a_nat ).
thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Nat__Onat_J_001t__List__Olist_It__Nat__Onat_J,type,
produc2694037385005941721st_nat: list_nat > list_nat > produc1828647624359046049st_nat ).
thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Nat__Onat_J_001t__Nat__Onat,type,
produc1298395424260782409at_nat: list_nat > nat > produc1540777390238407569at_nat ).
thf(sy_c_Product__Type_OPair_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
produc7827954888401655931_set_a: mapping_a_set_a > mapping_a_set_a > produc6947938150963741379_set_a ).
thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
produc8955782708993416026_set_a: nat > mapping_a_set_a > produc8434378496978325410_set_a ).
thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__Nat__Onat,type,
product_Pair_nat_nat: nat > nat > product_prod_nat_nat ).
thf(sy_c_Set_OCollect_001t__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
collec7257000206306202326_set_a: ( list_mapping_a_set_a > $o ) > set_li5718660665068022583_set_a ).
thf(sy_c_Set_OCollect_001t__List__Olist_It__Nat__Onat_J,type,
collect_list_nat: ( list_nat > $o ) > set_list_nat ).
thf(sy_c_Set_OCollect_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
collec8416340978370123974_set_a: ( mapping_a_set_a > $o ) > set_mapping_a_set_a ).
thf(sy_c_Set_OCollect_001t__Nat__Onat,type,
collect_nat: ( nat > $o ) > set_nat ).
thf(sy_c_Set_OCollect_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
collec3392354462482085612at_nat: ( product_prod_nat_nat > $o ) > set_Pr1261947904930325089at_nat ).
thf(sy_c_String_Ochar_Osize__char,type,
size_char: char > nat ).
thf(sy_c_Sublist_Oprefix_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
prefix1108942689367818198_set_a: list_mapping_a_set_a > list_mapping_a_set_a > $o ).
thf(sy_c_Sublist_Oprefix_001t__Nat__Onat,type,
prefix_nat: list_nat > list_nat > $o ).
thf(sy_c_Sublist_Oprefixes_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
prefix4582622650860598052_set_a: list_mapping_a_set_a > list_l8399423937273897361_set_a ).
thf(sy_c_Sublist_Oprefixes_001t__Nat__Onat,type,
prefixes_nat: list_nat > list_list_nat ).
thf(sy_c_Sublist_Osublists_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
sublis7562426436087478873_set_a: list_mapping_a_set_a > list_l8399423937273897361_set_a ).
thf(sy_c_Sublist_Osublists_001t__Nat__Onat,type,
sublists_nat: list_nat > list_list_nat ).
thf(sy_c_Sublist_Osuffixes_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
suffix4092287087677702947_set_a: list_mapping_a_set_a > list_l8399423937273897361_set_a ).
thf(sy_c_Sublist_Osuffixes_001t__Nat__Onat,type,
suffixes_nat: list_nat > list_list_nat ).
thf(sy_c_Util_Olinear__order__from__list__position_H_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
linear3062881148567656647_set_a: list_mapping_a_set_a > list_P1402444854915166025_set_a ).
thf(sy_c_Util_Olinear__order__from__list__position_H_001t__Nat__Onat,type,
linear8051522407387036070on_nat: list_nat > list_P6011104703257516679at_nat ).
thf(sy_c_Util_Olinear__order__from__list__position_H__rel_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
linear8029125032219035542_set_a: list_mapping_a_set_a > list_mapping_a_set_a > $o ).
thf(sy_c_Util_Olinear__order__from__list__position_H__rel_001t__Nat__Onat,type,
linear1904149156627414645el_nat: list_nat > list_nat > $o ).
thf(sy_c_Util_Olist__max,type,
list_max: list_nat > nat ).
thf(sy_c_Util_Olist__ordered__pairs_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
list_o7153801627402588650_set_a: list_mapping_a_set_a > list_P1402444854915166025_set_a ).
thf(sy_c_Util_Olist__ordered__pairs_001t__Nat__Onat,type,
list_o6794894459886620873rs_nat: list_nat > list_P6011104703257516679at_nat ).
thf(sy_c_Util_Olist__ordered__pairs__rel_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
list_o7267547253804472883_set_a: list_mapping_a_set_a > list_mapping_a_set_a > $o ).
thf(sy_c_Util_Olist__ordered__pairs__rel_001t__Nat__Onat,type,
list_o5556262271194772242el_nat: list_nat > list_nat > $o ).
thf(sy_c_Util_Olists__of__length_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
lists_628685718963753558_set_a: list_mapping_a_set_a > nat > list_l8399423937273897361_set_a ).
thf(sy_c_Util_Olists__of__length_001t__Nat__Onat,type,
lists_of_length_nat: list_nat > nat > list_list_nat ).
thf(sy_c_Util_Olists__of__length__rel_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
lists_8902401758375567559_set_a: produc3186607280269354546_a_nat > produc3186607280269354546_a_nat > $o ).
thf(sy_c_Util_Olists__of__length__rel_001t__Nat__Onat,type,
lists_1048800777589703078el_nat: produc1540777390238407569at_nat > produc1540777390238407569at_nat > $o ).
thf(sy_c_Util_Onon__sym__dist__pairs_H_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
non_sy3350337585314141350_set_a: list_mapping_a_set_a > list_P1402444854915166025_set_a ).
thf(sy_c_Util_Onon__sym__dist__pairs_H_001t__Nat__Onat,type,
non_sy1784707333927398277rs_nat: list_nat > list_P6011104703257516679at_nat ).
thf(sy_c_Util_Onon__sym__dist__pairs_H__rel_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
non_sy4175718602840916599_set_a: list_mapping_a_set_a > list_mapping_a_set_a > $o ).
thf(sy_c_Util_Onon__sym__dist__pairs_H__rel_001t__Nat__Onat,type,
non_sy6628168677365187414el_nat: list_nat > list_nat > $o ).
thf(sy_c_Util_Opow__list_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
pow_li8443515580676963514_set_a: list_mapping_a_set_a > list_l8399423937273897361_set_a ).
thf(sy_c_Util_Opow__list_001t__Nat__Onat,type,
pow_list_nat: list_nat > list_list_nat ).
thf(sy_c_Util_Opow__list__rel_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
pow_li3323435815140094819_set_a: list_mapping_a_set_a > list_mapping_a_set_a > $o ).
thf(sy_c_Util_Opow__list__rel_001t__Nat__Onat,type,
pow_list_rel_nat: list_nat > list_nat > $o ).
thf(sy_c_Util_Osuffixes_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
suffix5318289274321896575_set_a: list_mapping_a_set_a > list_l8399423937273897361_set_a ).
thf(sy_c_Util_Osuffixes_001t__Nat__Onat,type,
suffixes_nat2: list_nat > list_list_nat ).
thf(sy_c_Util_Osuffixes__rel_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
suffix8108137966096613854_set_a: list_mapping_a_set_a > list_mapping_a_set_a > $o ).
thf(sy_c_Util_Osuffixes__rel_001t__Nat__Onat,type,
suffixes_rel_nat: list_nat > list_nat > $o ).
thf(sy_c_Wellfounded_Oaccp_001t__List__Olist_It__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_J,type,
accp_l4640782729599666248_set_a: ( list_l8399423937273897361_set_a > list_l8399423937273897361_set_a > $o ) > list_l8399423937273897361_set_a > $o ).
thf(sy_c_Wellfounded_Oaccp_001t__List__Olist_It__List__Olist_It__Nat__Onat_J_J,type,
accp_list_list_nat: ( list_list_nat > list_list_nat > $o ) > list_list_nat > $o ).
thf(sy_c_Wellfounded_Oaccp_001t__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
accp_l4949953582330668472_set_a: ( list_mapping_a_set_a > list_mapping_a_set_a > $o ) > list_mapping_a_set_a > $o ).
thf(sy_c_Wellfounded_Oaccp_001t__List__Olist_It__Nat__Onat_J,type,
accp_list_nat: ( list_nat > list_nat > $o ) > list_nat > $o ).
thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__FSM__Ofsm_Itf__a_Mtf__b_Mtf__c_J_Mt__Nat__Onat_J,type,
accp_P6083181879160900185_c_nat: ( produc2314347074417592866_c_nat > produc2314347074417592866_c_nat > $o ) > produc2314347074417592866_c_nat > $o ).
thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_Mt__Nat__Onat_J,type,
accp_P4388512105130358587_a_nat: ( produc3186607280269354546_a_nat > produc3186607280269354546_a_nat > $o ) > produc3186607280269354546_a_nat > $o ).
thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__Nat__Onat_J,type,
accp_P4998015213761971866at_nat: ( produc1540777390238407569at_nat > produc1540777390238407569at_nat > $o ) > produc1540777390238407569at_nat > $o ).
thf(sy_c_member_001t__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
member2763587292577307288_set_a: list_mapping_a_set_a > set_li5718660665068022583_set_a > $o ).
thf(sy_c_member_001t__List__Olist_It__Nat__Onat_J,type,
member_list_nat: list_nat > set_list_nat > $o ).
thf(sy_c_member_001t__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J,type,
member5773590555267836296_set_a: mapping_a_set_a > set_mapping_a_set_a > $o ).
thf(sy_c_member_001t__Nat__Onat,type,
member_nat: nat > set_nat > $o ).
thf(sy_c_member_001t__Product____Type__Oprod_It__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_Mt__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_J,type,
member5198625016828253580_set_a: produc2412615728736211939_set_a > set_Pr1653833977117045571_set_a > $o ).
thf(sy_c_member_001t__Product____Type__Oprod_It__List__Olist_It__Nat__Onat_J_Mt__List__Olist_It__Nat__Onat_J_J,type,
member7340969449405702474st_nat: produc1828647624359046049st_nat > set_Pr3451248702717554689st_nat > $o ).
thf(sy_c_member_001t__Product____Type__Oprod_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_Mt__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J,type,
member2757164922633442668_set_a: produc6947938150963741379_set_a > set_Pr3081520320537980707_set_a > $o ).
thf(sy_c_member_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
member8440522571783428010at_nat: product_prod_nat_nat > set_Pr1261947904930325089at_nat > $o ).
thf(sy_v_M,type,
m: fsm_a_b_c ).
thf(sy_v_ka____,type,
ka: nat ).
thf(sy_v_t____,type,
t: nat > list_mapping_a_set_a ).
% Relevant facts (1254)
thf(fact_0_nat_Oinject,axiom,
! [X2: nat,Y2: nat] :
( ( ( suc @ X2 )
= ( suc @ Y2 ) )
= ( X2 = Y2 ) ) ).
% nat.inject
thf(fact_1_old_Onat_Oinject,axiom,
! [Nat: nat,Nat2: nat] :
( ( ( suc @ Nat )
= ( suc @ Nat2 ) )
= ( Nat = Nat2 ) ) ).
% old.nat.inject
thf(fact_2_list_Oinject,axiom,
! [X21: list_nat,X22: list_list_nat,Y21: list_nat,Y22: list_list_nat] :
( ( ( cons_list_nat @ X21 @ X22 )
= ( cons_list_nat @ Y21 @ Y22 ) )
= ( ( X21 = Y21 )
& ( X22 = Y22 ) ) ) ).
% list.inject
thf(fact_3_list_Oinject,axiom,
! [X21: list_mapping_a_set_a,X22: list_l8399423937273897361_set_a,Y21: list_mapping_a_set_a,Y22: list_l8399423937273897361_set_a] :
( ( ( cons_l6707406555391138123_set_a @ X21 @ X22 )
= ( cons_l6707406555391138123_set_a @ Y21 @ Y22 ) )
= ( ( X21 = Y21 )
& ( X22 = Y22 ) ) ) ).
% list.inject
thf(fact_4_list_Oinject,axiom,
! [X21: product_prod_nat_nat,X22: list_P6011104703257516679at_nat,Y21: product_prod_nat_nat,Y22: list_P6011104703257516679at_nat] :
( ( ( cons_P6512896166579812791at_nat @ X21 @ X22 )
= ( cons_P6512896166579812791at_nat @ Y21 @ Y22 ) )
= ( ( X21 = Y21 )
& ( X22 = Y22 ) ) ) ).
% list.inject
thf(fact_5_list_Oinject,axiom,
! [X21: produc8434378496978325410_set_a,X22: list_P2990564888572971688_set_a,Y21: produc8434378496978325410_set_a,Y22: list_P2990564888572971688_set_a] :
( ( ( cons_P5055657147124145240_set_a @ X21 @ X22 )
= ( cons_P5055657147124145240_set_a @ Y21 @ Y22 ) )
= ( ( X21 = Y21 )
& ( X22 = Y22 ) ) ) ).
% list.inject
thf(fact_6_list_Oinject,axiom,
! [X21: produc6947938150963741379_set_a,X22: list_P1402444854915166025_set_a,Y21: produc6947938150963741379_set_a,Y22: list_P1402444854915166025_set_a] :
( ( ( cons_P7532267380390966137_set_a @ X21 @ X22 )
= ( cons_P7532267380390966137_set_a @ Y21 @ Y22 ) )
= ( ( X21 = Y21 )
& ( X22 = Y22 ) ) ) ).
% list.inject
thf(fact_7_list_Oinject,axiom,
! [X21: mapping_a_set_a,X22: list_mapping_a_set_a,Y21: mapping_a_set_a,Y22: list_mapping_a_set_a] :
( ( ( cons_mapping_a_set_a @ X21 @ X22 )
= ( cons_mapping_a_set_a @ Y21 @ Y22 ) )
= ( ( X21 = Y21 )
& ( X22 = Y22 ) ) ) ).
% list.inject
thf(fact_8_list_Oinject,axiom,
! [X21: nat,X22: list_nat,Y21: nat,Y22: list_nat] :
( ( ( cons_nat @ X21 @ X22 )
= ( cons_nat @ Y21 @ Y22 ) )
= ( ( X21 = Y21 )
& ( X22 = Y22 ) ) ) ).
% list.inject
thf(fact_9_list_Osel_I1_J,axiom,
! [X21: list_nat,X22: list_list_nat] :
( ( hd_list_nat @ ( cons_list_nat @ X21 @ X22 ) )
= X21 ) ).
% list.sel(1)
thf(fact_10_list_Osel_I1_J,axiom,
! [X21: list_mapping_a_set_a,X22: list_l8399423937273897361_set_a] :
( ( hd_lis1041256309613100374_set_a @ ( cons_l6707406555391138123_set_a @ X21 @ X22 ) )
= X21 ) ).
% list.sel(1)
thf(fact_11_list_Osel_I1_J,axiom,
! [X21: product_prod_nat_nat,X22: list_P6011104703257516679at_nat] :
( ( hd_Pro3460610213475200108at_nat @ ( cons_P6512896166579812791at_nat @ X21 @ X22 ) )
= X21 ) ).
% list.sel(1)
thf(fact_12_list_Osel_I1_J,axiom,
! [X21: produc8434378496978325410_set_a,X22: list_P2990564888572971688_set_a] :
( ( hd_Pro8974737750001286413_set_a @ ( cons_P5055657147124145240_set_a @ X21 @ X22 ) )
= X21 ) ).
% list.sel(1)
thf(fact_13_list_Osel_I1_J,axiom,
! [X21: produc6947938150963741379_set_a,X22: list_P1402444854915166025_set_a] :
( ( hd_Pro6409104613535744558_set_a @ ( cons_P7532267380390966137_set_a @ X21 @ X22 ) )
= X21 ) ).
% list.sel(1)
thf(fact_14_list_Osel_I1_J,axiom,
! [X21: mapping_a_set_a,X22: list_mapping_a_set_a] :
( ( hd_mapping_a_set_a @ ( cons_mapping_a_set_a @ X21 @ X22 ) )
= X21 ) ).
% list.sel(1)
thf(fact_15_list_Osel_I1_J,axiom,
! [X21: nat,X22: list_nat] :
( ( hd_nat @ ( cons_nat @ X21 @ X22 ) )
= X21 ) ).
% list.sel(1)
thf(fact_16_Suc__inject,axiom,
! [X: nat,Y: nat] :
( ( ( suc @ X )
= ( suc @ Y ) )
=> ( X = Y ) ) ).
% Suc_inject
thf(fact_17_n__not__Suc__n,axiom,
! [N: nat] :
( N
!= ( suc @ N ) ) ).
% n_not_Suc_n
thf(fact_18_not__Cons__self2,axiom,
! [X: list_nat,Xs: list_list_nat] :
( ( cons_list_nat @ X @ Xs )
!= Xs ) ).
% not_Cons_self2
thf(fact_19_not__Cons__self2,axiom,
! [X: list_mapping_a_set_a,Xs: list_l8399423937273897361_set_a] :
( ( cons_l6707406555391138123_set_a @ X @ Xs )
!= Xs ) ).
% not_Cons_self2
thf(fact_20_not__Cons__self2,axiom,
! [X: product_prod_nat_nat,Xs: list_P6011104703257516679at_nat] :
( ( cons_P6512896166579812791at_nat @ X @ Xs )
!= Xs ) ).
% not_Cons_self2
thf(fact_21_not__Cons__self2,axiom,
! [X: produc8434378496978325410_set_a,Xs: list_P2990564888572971688_set_a] :
( ( cons_P5055657147124145240_set_a @ X @ Xs )
!= Xs ) ).
% not_Cons_self2
thf(fact_22_not__Cons__self2,axiom,
! [X: produc6947938150963741379_set_a,Xs: list_P1402444854915166025_set_a] :
( ( cons_P7532267380390966137_set_a @ X @ Xs )
!= Xs ) ).
% not_Cons_self2
thf(fact_23_not__Cons__self2,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( cons_mapping_a_set_a @ X @ Xs )
!= Xs ) ).
% not_Cons_self2
thf(fact_24_not__Cons__self2,axiom,
! [X: nat,Xs: list_nat] :
( ( cons_nat @ X @ Xs )
!= Xs ) ).
% not_Cons_self2
thf(fact_25_gen__length__code_I2_J,axiom,
! [N: nat,X: list_nat,Xs: list_list_nat] :
( ( gen_length_list_nat @ N @ ( cons_list_nat @ X @ Xs ) )
= ( gen_length_list_nat @ ( suc @ N ) @ Xs ) ) ).
% gen_length_code(2)
thf(fact_26_gen__length__code_I2_J,axiom,
! [N: nat,X: list_mapping_a_set_a,Xs: list_l8399423937273897361_set_a] :
( ( gen_le4925385388237678126_set_a @ N @ ( cons_l6707406555391138123_set_a @ X @ Xs ) )
= ( gen_le4925385388237678126_set_a @ ( suc @ N ) @ Xs ) ) ).
% gen_length_code(2)
thf(fact_27_gen__length__code_I2_J,axiom,
! [N: nat,X: product_prod_nat_nat,Xs: list_P6011104703257516679at_nat] :
( ( gen_le2383899666085517716at_nat @ N @ ( cons_P6512896166579812791at_nat @ X @ Xs ) )
= ( gen_le2383899666085517716at_nat @ ( suc @ N ) @ Xs ) ) ).
% gen_length_code(2)
thf(fact_28_gen__length__code_I2_J,axiom,
! [N: nat,X: produc8434378496978325410_set_a,Xs: list_P2990564888572971688_set_a] :
( ( gen_le8269785728081451573_set_a @ N @ ( cons_P5055657147124145240_set_a @ X @ Xs ) )
= ( gen_le8269785728081451573_set_a @ ( suc @ N ) @ Xs ) ) ).
% gen_length_code(2)
thf(fact_29_gen__length__code_I2_J,axiom,
! [N: nat,X: produc6947938150963741379_set_a,Xs: list_P1402444854915166025_set_a] :
( ( gen_le6497792890266079062_set_a @ N @ ( cons_P7532267380390966137_set_a @ X @ Xs ) )
= ( gen_le6497792890266079062_set_a @ ( suc @ N ) @ Xs ) ) ).
% gen_length_code(2)
thf(fact_30_gen__length__code_I2_J,axiom,
! [N: nat,X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( gen_le7107825650602424350_set_a @ N @ ( cons_mapping_a_set_a @ X @ Xs ) )
= ( gen_le7107825650602424350_set_a @ ( suc @ N ) @ Xs ) ) ).
% gen_length_code(2)
thf(fact_31_gen__length__code_I2_J,axiom,
! [N: nat,X: nat,Xs: list_nat] :
( ( gen_length_nat @ N @ ( cons_nat @ X @ Xs ) )
= ( gen_length_nat @ ( suc @ N ) @ Xs ) ) ).
% gen_length_code(2)
thf(fact_32_t__def,axiom,
( t
= ( ^ [K: nat] :
( foldr_4622666561834033786_set_a
@ ^ [Uu: nat,Prev: list_mapping_a_set_a] : ( cons_mapping_a_set_a @ ( oFSM_T257171030951260681_a_b_c @ m @ ( hd_mapping_a_set_a @ Prev ) ) @ Prev )
@ ( rev_nat @ ( upt @ zero_zero_nat @ K ) )
@ ( cons_mapping_a_set_a @ ( oFSM_T5435067451961929104_a_b_c @ m ) @ nil_mapping_a_set_a ) ) ) ) ).
% t_def
thf(fact_33_nth__Cons__Suc,axiom,
! [X: list_nat,Xs: list_list_nat,N: nat] :
( ( nth_list_nat @ ( cons_list_nat @ X @ Xs ) @ ( suc @ N ) )
= ( nth_list_nat @ Xs @ N ) ) ).
% nth_Cons_Suc
thf(fact_34_nth__Cons__Suc,axiom,
! [X: list_mapping_a_set_a,Xs: list_l8399423937273897361_set_a,N: nat] :
( ( nth_li3062975924003389114_set_a @ ( cons_l6707406555391138123_set_a @ X @ Xs ) @ ( suc @ N ) )
= ( nth_li3062975924003389114_set_a @ Xs @ N ) ) ).
% nth_Cons_Suc
thf(fact_35_nth__Cons__Suc,axiom,
! [X: product_prod_nat_nat,Xs: list_P6011104703257516679at_nat,N: nat] :
( ( nth_Pr7617993195940197384at_nat @ ( cons_P6512896166579812791at_nat @ X @ Xs ) @ ( suc @ N ) )
= ( nth_Pr7617993195940197384at_nat @ Xs @ N ) ) ).
% nth_Cons_Suc
thf(fact_36_nth__Cons__Suc,axiom,
! [X: produc8434378496978325410_set_a,Xs: list_P2990564888572971688_set_a,N: nat] :
( ( nth_Pr1763216751932927145_set_a @ ( cons_P5055657147124145240_set_a @ X @ Xs ) @ ( suc @ N ) )
= ( nth_Pr1763216751932927145_set_a @ Xs @ N ) ) ).
% nth_Cons_Suc
thf(fact_37_nth__Cons__Suc,axiom,
! [X: produc6947938150963741379_set_a,Xs: list_P1402444854915166025_set_a,N: nat] :
( ( nth_Pr7222757820770539978_set_a @ ( cons_P7532267380390966137_set_a @ X @ Xs ) @ ( suc @ N ) )
= ( nth_Pr7222757820770539978_set_a @ Xs @ N ) ) ).
% nth_Cons_Suc
thf(fact_38_nth__Cons__Suc,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a,N: nat] :
( ( nth_mapping_a_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) @ ( suc @ N ) )
= ( nth_mapping_a_set_a @ Xs @ N ) ) ).
% nth_Cons_Suc
thf(fact_39_nth__Cons__Suc,axiom,
! [X: nat,Xs: list_nat,N: nat] :
( ( nth_nat @ ( cons_nat @ X @ Xs ) @ ( suc @ N ) )
= ( nth_nat @ Xs @ N ) ) ).
% nth_Cons_Suc
thf(fact_40_rev__rev__ident,axiom,
! [Xs: list_mapping_a_set_a] :
( ( rev_mapping_a_set_a @ ( rev_mapping_a_set_a @ Xs ) )
= Xs ) ).
% rev_rev_ident
thf(fact_41_rev__rev__ident,axiom,
! [Xs: list_list_nat] :
( ( rev_list_nat @ ( rev_list_nat @ Xs ) )
= Xs ) ).
% rev_rev_ident
thf(fact_42_rev__rev__ident,axiom,
! [Xs: list_nat] :
( ( rev_nat @ ( rev_nat @ Xs ) )
= Xs ) ).
% rev_rev_ident
thf(fact_43_rev__is__rev__conv,axiom,
! [Xs: list_mapping_a_set_a,Ys: list_mapping_a_set_a] :
( ( ( rev_mapping_a_set_a @ Xs )
= ( rev_mapping_a_set_a @ Ys ) )
= ( Xs = Ys ) ) ).
% rev_is_rev_conv
thf(fact_44_rev__is__rev__conv,axiom,
! [Xs: list_list_nat,Ys: list_list_nat] :
( ( ( rev_list_nat @ Xs )
= ( rev_list_nat @ Ys ) )
= ( Xs = Ys ) ) ).
% rev_is_rev_conv
thf(fact_45_rev__is__rev__conv,axiom,
! [Xs: list_nat,Ys: list_nat] :
( ( ( rev_nat @ Xs )
= ( rev_nat @ Ys ) )
= ( Xs = Ys ) ) ).
% rev_is_rev_conv
thf(fact_46__092_060open_062rev_A_0910_O_O_060Suc_Ak_093_A_061_Ak_A_D_Arev_A_0910_O_O_060k_093_092_060close_062,axiom,
( ( rev_nat @ ( upt @ zero_zero_nat @ ( suc @ ka ) ) )
= ( cons_nat @ ka @ ( rev_nat @ ( upt @ zero_zero_nat @ ka ) ) ) ) ).
% \<open>rev [0..<Suc k] = k # rev [0..<k]\<close>
thf(fact_47_Nil__is__rev__conv,axiom,
! [Xs: list_list_nat] :
( ( nil_list_nat
= ( rev_list_nat @ Xs ) )
= ( Xs = nil_list_nat ) ) ).
% Nil_is_rev_conv
thf(fact_48_Nil__is__rev__conv,axiom,
! [Xs: list_l8399423937273897361_set_a] :
( ( nil_li1965212427176585467_set_a
= ( rev_li9100908683137238683_set_a @ Xs ) )
= ( Xs = nil_li1965212427176585467_set_a ) ) ).
% Nil_is_rev_conv
thf(fact_49_Nil__is__rev__conv,axiom,
! [Xs: list_P6011104703257516679at_nat] :
( ( nil_Pr5478986624290739719at_nat
= ( rev_Pr6102188148953555047at_nat @ Xs ) )
= ( Xs = nil_Pr5478986624290739719at_nat ) ) ).
% Nil_is_rev_conv
thf(fact_50_Nil__is__rev__conv,axiom,
! [Xs: list_P2990564888572971688_set_a] :
( ( nil_Pr3815278418687809704_set_a
= ( rev_Pr6588284943057314568_set_a @ Xs ) )
= ( Xs = nil_Pr3815278418687809704_set_a ) ) ).
% Nil_is_rev_conv
thf(fact_51_Nil__is__rev__conv,axiom,
! [Xs: list_P1402444854915166025_set_a] :
( ( nil_Pr569463720148864969_set_a
= ( rev_Pr8602555266060573225_set_a @ Xs ) )
= ( Xs = nil_Pr569463720148864969_set_a ) ) ).
% Nil_is_rev_conv
thf(fact_52_Nil__is__rev__conv,axiom,
! [Xs: list_mapping_a_set_a] :
( ( nil_mapping_a_set_a
= ( rev_mapping_a_set_a @ Xs ) )
= ( Xs = nil_mapping_a_set_a ) ) ).
% Nil_is_rev_conv
thf(fact_53_Nil__is__rev__conv,axiom,
! [Xs: list_nat] :
( ( nil_nat
= ( rev_nat @ Xs ) )
= ( Xs = nil_nat ) ) ).
% Nil_is_rev_conv
thf(fact_54_rev__is__Nil__conv,axiom,
! [Xs: list_list_nat] :
( ( ( rev_list_nat @ Xs )
= nil_list_nat )
= ( Xs = nil_list_nat ) ) ).
% rev_is_Nil_conv
thf(fact_55_rev__is__Nil__conv,axiom,
! [Xs: list_l8399423937273897361_set_a] :
( ( ( rev_li9100908683137238683_set_a @ Xs )
= nil_li1965212427176585467_set_a )
= ( Xs = nil_li1965212427176585467_set_a ) ) ).
% rev_is_Nil_conv
thf(fact_56_rev__is__Nil__conv,axiom,
! [Xs: list_P6011104703257516679at_nat] :
( ( ( rev_Pr6102188148953555047at_nat @ Xs )
= nil_Pr5478986624290739719at_nat )
= ( Xs = nil_Pr5478986624290739719at_nat ) ) ).
% rev_is_Nil_conv
thf(fact_57_rev__is__Nil__conv,axiom,
! [Xs: list_P2990564888572971688_set_a] :
( ( ( rev_Pr6588284943057314568_set_a @ Xs )
= nil_Pr3815278418687809704_set_a )
= ( Xs = nil_Pr3815278418687809704_set_a ) ) ).
% rev_is_Nil_conv
thf(fact_58_rev__is__Nil__conv,axiom,
! [Xs: list_P1402444854915166025_set_a] :
( ( ( rev_Pr8602555266060573225_set_a @ Xs )
= nil_Pr569463720148864969_set_a )
= ( Xs = nil_Pr569463720148864969_set_a ) ) ).
% rev_is_Nil_conv
thf(fact_59_rev__is__Nil__conv,axiom,
! [Xs: list_mapping_a_set_a] :
( ( ( rev_mapping_a_set_a @ Xs )
= nil_mapping_a_set_a )
= ( Xs = nil_mapping_a_set_a ) ) ).
% rev_is_Nil_conv
thf(fact_60_rev__is__Nil__conv,axiom,
! [Xs: list_nat] :
( ( ( rev_nat @ Xs )
= nil_nat )
= ( Xs = nil_nat ) ) ).
% rev_is_Nil_conv
thf(fact_61_nth__Cons__0,axiom,
! [X: list_nat,Xs: list_list_nat] :
( ( nth_list_nat @ ( cons_list_nat @ X @ Xs ) @ zero_zero_nat )
= X ) ).
% nth_Cons_0
thf(fact_62_nth__Cons__0,axiom,
! [X: list_mapping_a_set_a,Xs: list_l8399423937273897361_set_a] :
( ( nth_li3062975924003389114_set_a @ ( cons_l6707406555391138123_set_a @ X @ Xs ) @ zero_zero_nat )
= X ) ).
% nth_Cons_0
thf(fact_63_nth__Cons__0,axiom,
! [X: product_prod_nat_nat,Xs: list_P6011104703257516679at_nat] :
( ( nth_Pr7617993195940197384at_nat @ ( cons_P6512896166579812791at_nat @ X @ Xs ) @ zero_zero_nat )
= X ) ).
% nth_Cons_0
thf(fact_64_nth__Cons__0,axiom,
! [X: produc8434378496978325410_set_a,Xs: list_P2990564888572971688_set_a] :
( ( nth_Pr1763216751932927145_set_a @ ( cons_P5055657147124145240_set_a @ X @ Xs ) @ zero_zero_nat )
= X ) ).
% nth_Cons_0
thf(fact_65_nth__Cons__0,axiom,
! [X: produc6947938150963741379_set_a,Xs: list_P1402444854915166025_set_a] :
( ( nth_Pr7222757820770539978_set_a @ ( cons_P7532267380390966137_set_a @ X @ Xs ) @ zero_zero_nat )
= X ) ).
% nth_Cons_0
thf(fact_66_nth__Cons__0,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( nth_mapping_a_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) @ zero_zero_nat )
= X ) ).
% nth_Cons_0
thf(fact_67_nth__Cons__0,axiom,
! [X: nat,Xs: list_nat] :
( ( nth_nat @ ( cons_nat @ X @ Xs ) @ zero_zero_nat )
= X ) ).
% nth_Cons_0
thf(fact_68_rev__singleton__conv,axiom,
! [Xs: list_list_nat,X: list_nat] :
( ( ( rev_list_nat @ Xs )
= ( cons_list_nat @ X @ nil_list_nat ) )
= ( Xs
= ( cons_list_nat @ X @ nil_list_nat ) ) ) ).
% rev_singleton_conv
thf(fact_69_rev__singleton__conv,axiom,
! [Xs: list_l8399423937273897361_set_a,X: list_mapping_a_set_a] :
( ( ( rev_li9100908683137238683_set_a @ Xs )
= ( cons_l6707406555391138123_set_a @ X @ nil_li1965212427176585467_set_a ) )
= ( Xs
= ( cons_l6707406555391138123_set_a @ X @ nil_li1965212427176585467_set_a ) ) ) ).
% rev_singleton_conv
thf(fact_70_rev__singleton__conv,axiom,
! [Xs: list_P6011104703257516679at_nat,X: product_prod_nat_nat] :
( ( ( rev_Pr6102188148953555047at_nat @ Xs )
= ( cons_P6512896166579812791at_nat @ X @ nil_Pr5478986624290739719at_nat ) )
= ( Xs
= ( cons_P6512896166579812791at_nat @ X @ nil_Pr5478986624290739719at_nat ) ) ) ).
% rev_singleton_conv
thf(fact_71_rev__singleton__conv,axiom,
! [Xs: list_P2990564888572971688_set_a,X: produc8434378496978325410_set_a] :
( ( ( rev_Pr6588284943057314568_set_a @ Xs )
= ( cons_P5055657147124145240_set_a @ X @ nil_Pr3815278418687809704_set_a ) )
= ( Xs
= ( cons_P5055657147124145240_set_a @ X @ nil_Pr3815278418687809704_set_a ) ) ) ).
% rev_singleton_conv
thf(fact_72_rev__singleton__conv,axiom,
! [Xs: list_P1402444854915166025_set_a,X: produc6947938150963741379_set_a] :
( ( ( rev_Pr8602555266060573225_set_a @ Xs )
= ( cons_P7532267380390966137_set_a @ X @ nil_Pr569463720148864969_set_a ) )
= ( Xs
= ( cons_P7532267380390966137_set_a @ X @ nil_Pr569463720148864969_set_a ) ) ) ).
% rev_singleton_conv
thf(fact_73_rev__singleton__conv,axiom,
! [Xs: list_mapping_a_set_a,X: mapping_a_set_a] :
( ( ( rev_mapping_a_set_a @ Xs )
= ( cons_mapping_a_set_a @ X @ nil_mapping_a_set_a ) )
= ( Xs
= ( cons_mapping_a_set_a @ X @ nil_mapping_a_set_a ) ) ) ).
% rev_singleton_conv
thf(fact_74_rev__singleton__conv,axiom,
! [Xs: list_nat,X: nat] :
( ( ( rev_nat @ Xs )
= ( cons_nat @ X @ nil_nat ) )
= ( Xs
= ( cons_nat @ X @ nil_nat ) ) ) ).
% rev_singleton_conv
thf(fact_75_singleton__rev__conv,axiom,
! [X: list_nat,Xs: list_list_nat] :
( ( ( cons_list_nat @ X @ nil_list_nat )
= ( rev_list_nat @ Xs ) )
= ( ( cons_list_nat @ X @ nil_list_nat )
= Xs ) ) ).
% singleton_rev_conv
thf(fact_76_singleton__rev__conv,axiom,
! [X: list_mapping_a_set_a,Xs: list_l8399423937273897361_set_a] :
( ( ( cons_l6707406555391138123_set_a @ X @ nil_li1965212427176585467_set_a )
= ( rev_li9100908683137238683_set_a @ Xs ) )
= ( ( cons_l6707406555391138123_set_a @ X @ nil_li1965212427176585467_set_a )
= Xs ) ) ).
% singleton_rev_conv
thf(fact_77_singleton__rev__conv,axiom,
! [X: product_prod_nat_nat,Xs: list_P6011104703257516679at_nat] :
( ( ( cons_P6512896166579812791at_nat @ X @ nil_Pr5478986624290739719at_nat )
= ( rev_Pr6102188148953555047at_nat @ Xs ) )
= ( ( cons_P6512896166579812791at_nat @ X @ nil_Pr5478986624290739719at_nat )
= Xs ) ) ).
% singleton_rev_conv
thf(fact_78_singleton__rev__conv,axiom,
! [X: produc8434378496978325410_set_a,Xs: list_P2990564888572971688_set_a] :
( ( ( cons_P5055657147124145240_set_a @ X @ nil_Pr3815278418687809704_set_a )
= ( rev_Pr6588284943057314568_set_a @ Xs ) )
= ( ( cons_P5055657147124145240_set_a @ X @ nil_Pr3815278418687809704_set_a )
= Xs ) ) ).
% singleton_rev_conv
thf(fact_79_singleton__rev__conv,axiom,
! [X: produc6947938150963741379_set_a,Xs: list_P1402444854915166025_set_a] :
( ( ( cons_P7532267380390966137_set_a @ X @ nil_Pr569463720148864969_set_a )
= ( rev_Pr8602555266060573225_set_a @ Xs ) )
= ( ( cons_P7532267380390966137_set_a @ X @ nil_Pr569463720148864969_set_a )
= Xs ) ) ).
% singleton_rev_conv
thf(fact_80_singleton__rev__conv,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( ( cons_mapping_a_set_a @ X @ nil_mapping_a_set_a )
= ( rev_mapping_a_set_a @ Xs ) )
= ( ( cons_mapping_a_set_a @ X @ nil_mapping_a_set_a )
= Xs ) ) ).
% singleton_rev_conv
thf(fact_81_singleton__rev__conv,axiom,
! [X: nat,Xs: list_nat] :
( ( ( cons_nat @ X @ nil_nat )
= ( rev_nat @ Xs ) )
= ( ( cons_nat @ X @ nil_nat )
= Xs ) ) ).
% singleton_rev_conv
thf(fact_82_rev_Osimps_I1_J,axiom,
( ( rev_list_nat @ nil_list_nat )
= nil_list_nat ) ).
% rev.simps(1)
thf(fact_83_rev_Osimps_I1_J,axiom,
( ( rev_li9100908683137238683_set_a @ nil_li1965212427176585467_set_a )
= nil_li1965212427176585467_set_a ) ).
% rev.simps(1)
thf(fact_84_rev_Osimps_I1_J,axiom,
( ( rev_Pr6102188148953555047at_nat @ nil_Pr5478986624290739719at_nat )
= nil_Pr5478986624290739719at_nat ) ).
% rev.simps(1)
thf(fact_85_rev_Osimps_I1_J,axiom,
( ( rev_Pr6588284943057314568_set_a @ nil_Pr3815278418687809704_set_a )
= nil_Pr3815278418687809704_set_a ) ).
% rev.simps(1)
thf(fact_86_rev_Osimps_I1_J,axiom,
( ( rev_Pr8602555266060573225_set_a @ nil_Pr569463720148864969_set_a )
= nil_Pr569463720148864969_set_a ) ).
% rev.simps(1)
thf(fact_87_rev_Osimps_I1_J,axiom,
( ( rev_mapping_a_set_a @ nil_mapping_a_set_a )
= nil_mapping_a_set_a ) ).
% rev.simps(1)
thf(fact_88_rev_Osimps_I1_J,axiom,
( ( rev_nat @ nil_nat )
= nil_nat ) ).
% rev.simps(1)
thf(fact_89_gen__length__code_I1_J,axiom,
! [N: nat] :
( ( gen_length_list_nat @ N @ nil_list_nat )
= N ) ).
% gen_length_code(1)
thf(fact_90_gen__length__code_I1_J,axiom,
! [N: nat] :
( ( gen_le4925385388237678126_set_a @ N @ nil_li1965212427176585467_set_a )
= N ) ).
% gen_length_code(1)
thf(fact_91_gen__length__code_I1_J,axiom,
! [N: nat] :
( ( gen_le2383899666085517716at_nat @ N @ nil_Pr5478986624290739719at_nat )
= N ) ).
% gen_length_code(1)
thf(fact_92_gen__length__code_I1_J,axiom,
! [N: nat] :
( ( gen_le8269785728081451573_set_a @ N @ nil_Pr3815278418687809704_set_a )
= N ) ).
% gen_length_code(1)
thf(fact_93_gen__length__code_I1_J,axiom,
! [N: nat] :
( ( gen_le6497792890266079062_set_a @ N @ nil_Pr569463720148864969_set_a )
= N ) ).
% gen_length_code(1)
thf(fact_94_gen__length__code_I1_J,axiom,
! [N: nat] :
( ( gen_length_nat @ N @ nil_nat )
= N ) ).
% gen_length_code(1)
thf(fact_95_gen__length__code_I1_J,axiom,
! [N: nat] :
( ( gen_le7107825650602424350_set_a @ N @ nil_mapping_a_set_a )
= N ) ).
% gen_length_code(1)
thf(fact_96_transpose_Ocases,axiom,
! [X: list_list_list_nat] :
( ( X != nil_list_list_nat )
=> ( ! [Xss: list_list_list_nat] :
( X
!= ( cons_list_list_nat @ nil_list_nat @ Xss ) )
=> ~ ! [X3: list_nat,Xs2: list_list_nat,Xss: list_list_list_nat] :
( X
!= ( cons_list_list_nat @ ( cons_list_nat @ X3 @ Xs2 ) @ Xss ) ) ) ) ).
% transpose.cases
thf(fact_97_transpose_Ocases,axiom,
! [X: list_l1938460180903808289_set_a] :
( ( X != nil_li8260884125551398411_set_a )
=> ( ! [Xss: list_l1938460180903808289_set_a] :
( X
!= ( cons_l8674489638808131163_set_a @ nil_li1965212427176585467_set_a @ Xss ) )
=> ~ ! [X3: list_mapping_a_set_a,Xs2: list_l8399423937273897361_set_a,Xss: list_l1938460180903808289_set_a] :
( X
!= ( cons_l8674489638808131163_set_a @ ( cons_l6707406555391138123_set_a @ X3 @ Xs2 ) @ Xss ) ) ) ) ).
% transpose.cases
thf(fact_98_transpose_Ocases,axiom,
! [X: list_l3264859301627795341at_nat] :
( ( X != nil_li8973309667444810893at_nat )
=> ( ! [Xss: list_l3264859301627795341at_nat] :
( X
!= ( cons_l7612840610449961021at_nat @ nil_Pr5478986624290739719at_nat @ Xss ) )
=> ~ ! [X3: product_prod_nat_nat,Xs2: list_P6011104703257516679at_nat,Xss: list_l3264859301627795341at_nat] :
( X
!= ( cons_l7612840610449961021at_nat @ ( cons_P6512896166579812791at_nat @ X3 @ Xs2 ) @ Xss ) ) ) ) ).
% transpose.cases
thf(fact_99_transpose_Ocases,axiom,
! [X: list_l7647397734156138798_set_a] :
( ( X != nil_li1663408444419233966_set_a )
=> ( ! [Xss: list_l7647397734156138798_set_a] :
( X
!= ( cons_l8980169708187075678_set_a @ nil_Pr3815278418687809704_set_a @ Xss ) )
=> ~ ! [X3: produc8434378496978325410_set_a,Xs2: list_P2990564888572971688_set_a,Xss: list_l7647397734156138798_set_a] :
( X
!= ( cons_l8980169708187075678_set_a @ ( cons_P5055657147124145240_set_a @ X3 @ Xs2 ) @ Xss ) ) ) ) ).
% transpose.cases
thf(fact_100_transpose_Ocases,axiom,
! [X: list_l3933699947543367503_set_a] :
( ( X != nil_li6765150025095561551_set_a )
=> ( ! [Xss: list_l3933699947543367503_set_a] :
( X
!= ( cons_l32608307534580991_set_a @ nil_Pr569463720148864969_set_a @ Xss ) )
=> ~ ! [X3: produc6947938150963741379_set_a,Xs2: list_P1402444854915166025_set_a,Xss: list_l3933699947543367503_set_a] :
( X
!= ( cons_l32608307534580991_set_a @ ( cons_P7532267380390966137_set_a @ X3 @ Xs2 ) @ Xss ) ) ) ) ).
% transpose.cases
thf(fact_101_transpose_Ocases,axiom,
! [X: list_l8399423937273897361_set_a] :
( ( X != nil_li1965212427176585467_set_a )
=> ( ! [Xss: list_l8399423937273897361_set_a] :
( X
!= ( cons_l6707406555391138123_set_a @ nil_mapping_a_set_a @ Xss ) )
=> ~ ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a,Xss: list_l8399423937273897361_set_a] :
( X
!= ( cons_l6707406555391138123_set_a @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) @ Xss ) ) ) ) ).
% transpose.cases
thf(fact_102_transpose_Ocases,axiom,
! [X: list_list_nat] :
( ( X != nil_list_nat )
=> ( ! [Xss: list_list_nat] :
( X
!= ( cons_list_nat @ nil_nat @ Xss ) )
=> ~ ! [X3: nat,Xs2: list_nat,Xss: list_list_nat] :
( X
!= ( cons_list_nat @ ( cons_nat @ X3 @ Xs2 ) @ Xss ) ) ) ) ).
% transpose.cases
thf(fact_103_rev__swap,axiom,
! [Xs: list_mapping_a_set_a,Ys: list_mapping_a_set_a] :
( ( ( rev_mapping_a_set_a @ Xs )
= Ys )
= ( Xs
= ( rev_mapping_a_set_a @ Ys ) ) ) ).
% rev_swap
thf(fact_104_rev__swap,axiom,
! [Xs: list_list_nat,Ys: list_list_nat] :
( ( ( rev_list_nat @ Xs )
= Ys )
= ( Xs
= ( rev_list_nat @ Ys ) ) ) ).
% rev_swap
thf(fact_105_rev__swap,axiom,
! [Xs: list_nat,Ys: list_nat] :
( ( ( rev_nat @ Xs )
= Ys )
= ( Xs
= ( rev_nat @ Ys ) ) ) ).
% rev_swap
thf(fact_106_hd__conv__nth,axiom,
! [Xs: list_list_nat] :
( ( Xs != nil_list_nat )
=> ( ( hd_list_nat @ Xs )
= ( nth_list_nat @ Xs @ zero_zero_nat ) ) ) ).
% hd_conv_nth
thf(fact_107_hd__conv__nth,axiom,
! [Xs: list_l8399423937273897361_set_a] :
( ( Xs != nil_li1965212427176585467_set_a )
=> ( ( hd_lis1041256309613100374_set_a @ Xs )
= ( nth_li3062975924003389114_set_a @ Xs @ zero_zero_nat ) ) ) ).
% hd_conv_nth
thf(fact_108_hd__conv__nth,axiom,
! [Xs: list_P6011104703257516679at_nat] :
( ( Xs != nil_Pr5478986624290739719at_nat )
=> ( ( hd_Pro3460610213475200108at_nat @ Xs )
= ( nth_Pr7617993195940197384at_nat @ Xs @ zero_zero_nat ) ) ) ).
% hd_conv_nth
thf(fact_109_hd__conv__nth,axiom,
! [Xs: list_P2990564888572971688_set_a] :
( ( Xs != nil_Pr3815278418687809704_set_a )
=> ( ( hd_Pro8974737750001286413_set_a @ Xs )
= ( nth_Pr1763216751932927145_set_a @ Xs @ zero_zero_nat ) ) ) ).
% hd_conv_nth
thf(fact_110_hd__conv__nth,axiom,
! [Xs: list_P1402444854915166025_set_a] :
( ( Xs != nil_Pr569463720148864969_set_a )
=> ( ( hd_Pro6409104613535744558_set_a @ Xs )
= ( nth_Pr7222757820770539978_set_a @ Xs @ zero_zero_nat ) ) ) ).
% hd_conv_nth
thf(fact_111_hd__conv__nth,axiom,
! [Xs: list_mapping_a_set_a] :
( ( Xs != nil_mapping_a_set_a )
=> ( ( hd_mapping_a_set_a @ Xs )
= ( nth_mapping_a_set_a @ Xs @ zero_zero_nat ) ) ) ).
% hd_conv_nth
thf(fact_112_hd__conv__nth,axiom,
! [Xs: list_nat] :
( ( Xs != nil_nat )
=> ( ( hd_nat @ Xs )
= ( nth_nat @ Xs @ zero_zero_nat ) ) ) ).
% hd_conv_nth
thf(fact_113_upt__conv__Cons__Cons,axiom,
! [M: nat,N: nat,Ns: list_nat,Q: nat] :
( ( ( cons_nat @ M @ ( cons_nat @ N @ Ns ) )
= ( upt @ M @ Q ) )
= ( ( cons_nat @ N @ Ns )
= ( upt @ ( suc @ M ) @ Q ) ) ) ).
% upt_conv_Cons_Cons
thf(fact_114_list__nonempty__induct,axiom,
! [Xs: list_list_nat,P: list_list_nat > $o] :
( ( Xs != nil_list_nat )
=> ( ! [X3: list_nat] : ( P @ ( cons_list_nat @ X3 @ nil_list_nat ) )
=> ( ! [X3: list_nat,Xs2: list_list_nat] :
( ( Xs2 != nil_list_nat )
=> ( ( P @ Xs2 )
=> ( P @ ( cons_list_nat @ X3 @ Xs2 ) ) ) )
=> ( P @ Xs ) ) ) ) ).
% list_nonempty_induct
thf(fact_115_list__nonempty__induct,axiom,
! [Xs: list_l8399423937273897361_set_a,P: list_l8399423937273897361_set_a > $o] :
( ( Xs != nil_li1965212427176585467_set_a )
=> ( ! [X3: list_mapping_a_set_a] : ( P @ ( cons_l6707406555391138123_set_a @ X3 @ nil_li1965212427176585467_set_a ) )
=> ( ! [X3: list_mapping_a_set_a,Xs2: list_l8399423937273897361_set_a] :
( ( Xs2 != nil_li1965212427176585467_set_a )
=> ( ( P @ Xs2 )
=> ( P @ ( cons_l6707406555391138123_set_a @ X3 @ Xs2 ) ) ) )
=> ( P @ Xs ) ) ) ) ).
% list_nonempty_induct
thf(fact_116_list__nonempty__induct,axiom,
! [Xs: list_P6011104703257516679at_nat,P: list_P6011104703257516679at_nat > $o] :
( ( Xs != nil_Pr5478986624290739719at_nat )
=> ( ! [X3: product_prod_nat_nat] : ( P @ ( cons_P6512896166579812791at_nat @ X3 @ nil_Pr5478986624290739719at_nat ) )
=> ( ! [X3: product_prod_nat_nat,Xs2: list_P6011104703257516679at_nat] :
( ( Xs2 != nil_Pr5478986624290739719at_nat )
=> ( ( P @ Xs2 )
=> ( P @ ( cons_P6512896166579812791at_nat @ X3 @ Xs2 ) ) ) )
=> ( P @ Xs ) ) ) ) ).
% list_nonempty_induct
thf(fact_117_list__nonempty__induct,axiom,
! [Xs: list_P2990564888572971688_set_a,P: list_P2990564888572971688_set_a > $o] :
( ( Xs != nil_Pr3815278418687809704_set_a )
=> ( ! [X3: produc8434378496978325410_set_a] : ( P @ ( cons_P5055657147124145240_set_a @ X3 @ nil_Pr3815278418687809704_set_a ) )
=> ( ! [X3: produc8434378496978325410_set_a,Xs2: list_P2990564888572971688_set_a] :
( ( Xs2 != nil_Pr3815278418687809704_set_a )
=> ( ( P @ Xs2 )
=> ( P @ ( cons_P5055657147124145240_set_a @ X3 @ Xs2 ) ) ) )
=> ( P @ Xs ) ) ) ) ).
% list_nonempty_induct
thf(fact_118_list__nonempty__induct,axiom,
! [Xs: list_P1402444854915166025_set_a,P: list_P1402444854915166025_set_a > $o] :
( ( Xs != nil_Pr569463720148864969_set_a )
=> ( ! [X3: produc6947938150963741379_set_a] : ( P @ ( cons_P7532267380390966137_set_a @ X3 @ nil_Pr569463720148864969_set_a ) )
=> ( ! [X3: produc6947938150963741379_set_a,Xs2: list_P1402444854915166025_set_a] :
( ( Xs2 != nil_Pr569463720148864969_set_a )
=> ( ( P @ Xs2 )
=> ( P @ ( cons_P7532267380390966137_set_a @ X3 @ Xs2 ) ) ) )
=> ( P @ Xs ) ) ) ) ).
% list_nonempty_induct
thf(fact_119_list__nonempty__induct,axiom,
! [Xs: list_mapping_a_set_a,P: list_mapping_a_set_a > $o] :
( ( Xs != nil_mapping_a_set_a )
=> ( ! [X3: mapping_a_set_a] : ( P @ ( cons_mapping_a_set_a @ X3 @ nil_mapping_a_set_a ) )
=> ( ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a] :
( ( Xs2 != nil_mapping_a_set_a )
=> ( ( P @ Xs2 )
=> ( P @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) ) ) )
=> ( P @ Xs ) ) ) ) ).
% list_nonempty_induct
thf(fact_120_list__nonempty__induct,axiom,
! [Xs: list_nat,P: list_nat > $o] :
( ( Xs != nil_nat )
=> ( ! [X3: nat] : ( P @ ( cons_nat @ X3 @ nil_nat ) )
=> ( ! [X3: nat,Xs2: list_nat] :
( ( Xs2 != nil_nat )
=> ( ( P @ Xs2 )
=> ( P @ ( cons_nat @ X3 @ Xs2 ) ) ) )
=> ( P @ Xs ) ) ) ) ).
% list_nonempty_induct
thf(fact_121_list__induct2_H,axiom,
! [P: list_nat > list_nat > $o,Xs: list_nat,Ys: list_nat] :
( ( P @ nil_nat @ nil_nat )
=> ( ! [X3: nat,Xs2: list_nat] : ( P @ ( cons_nat @ X3 @ Xs2 ) @ nil_nat )
=> ( ! [Y3: nat,Ys2: list_nat] : ( P @ nil_nat @ ( cons_nat @ Y3 @ Ys2 ) )
=> ( ! [X3: nat,Xs2: list_nat,Y3: nat,Ys2: list_nat] :
( ( P @ Xs2 @ Ys2 )
=> ( P @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys2 ) ) )
=> ( P @ Xs @ Ys ) ) ) ) ) ).
% list_induct2'
thf(fact_122_list__induct2_H,axiom,
! [P: list_mapping_a_set_a > list_nat > $o,Xs: list_mapping_a_set_a,Ys: list_nat] :
( ( P @ nil_mapping_a_set_a @ nil_nat )
=> ( ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a] : ( P @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) @ nil_nat )
=> ( ! [Y3: nat,Ys2: list_nat] : ( P @ nil_mapping_a_set_a @ ( cons_nat @ Y3 @ Ys2 ) )
=> ( ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a,Y3: nat,Ys2: list_nat] :
( ( P @ Xs2 @ Ys2 )
=> ( P @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys2 ) ) )
=> ( P @ Xs @ Ys ) ) ) ) ) ).
% list_induct2'
thf(fact_123_list__induct2_H,axiom,
! [P: list_nat > list_mapping_a_set_a > $o,Xs: list_nat,Ys: list_mapping_a_set_a] :
( ( P @ nil_nat @ nil_mapping_a_set_a )
=> ( ! [X3: nat,Xs2: list_nat] : ( P @ ( cons_nat @ X3 @ Xs2 ) @ nil_mapping_a_set_a )
=> ( ! [Y3: mapping_a_set_a,Ys2: list_mapping_a_set_a] : ( P @ nil_nat @ ( cons_mapping_a_set_a @ Y3 @ Ys2 ) )
=> ( ! [X3: nat,Xs2: list_nat,Y3: mapping_a_set_a,Ys2: list_mapping_a_set_a] :
( ( P @ Xs2 @ Ys2 )
=> ( P @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_mapping_a_set_a @ Y3 @ Ys2 ) ) )
=> ( P @ Xs @ Ys ) ) ) ) ) ).
% list_induct2'
thf(fact_124_list__induct2_H,axiom,
! [P: list_mapping_a_set_a > list_mapping_a_set_a > $o,Xs: list_mapping_a_set_a,Ys: list_mapping_a_set_a] :
( ( P @ nil_mapping_a_set_a @ nil_mapping_a_set_a )
=> ( ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a] : ( P @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) @ nil_mapping_a_set_a )
=> ( ! [Y3: mapping_a_set_a,Ys2: list_mapping_a_set_a] : ( P @ nil_mapping_a_set_a @ ( cons_mapping_a_set_a @ Y3 @ Ys2 ) )
=> ( ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a,Y3: mapping_a_set_a,Ys2: list_mapping_a_set_a] :
( ( P @ Xs2 @ Ys2 )
=> ( P @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) @ ( cons_mapping_a_set_a @ Y3 @ Ys2 ) ) )
=> ( P @ Xs @ Ys ) ) ) ) ) ).
% list_induct2'
thf(fact_125_list__induct2_H,axiom,
! [P: list_nat > list_list_nat > $o,Xs: list_nat,Ys: list_list_nat] :
( ( P @ nil_nat @ nil_list_nat )
=> ( ! [X3: nat,Xs2: list_nat] : ( P @ ( cons_nat @ X3 @ Xs2 ) @ nil_list_nat )
=> ( ! [Y3: list_nat,Ys2: list_list_nat] : ( P @ nil_nat @ ( cons_list_nat @ Y3 @ Ys2 ) )
=> ( ! [X3: nat,Xs2: list_nat,Y3: list_nat,Ys2: list_list_nat] :
( ( P @ Xs2 @ Ys2 )
=> ( P @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_list_nat @ Y3 @ Ys2 ) ) )
=> ( P @ Xs @ Ys ) ) ) ) ) ).
% list_induct2'
thf(fact_126_list__induct2_H,axiom,
! [P: list_list_nat > list_nat > $o,Xs: list_list_nat,Ys: list_nat] :
( ( P @ nil_list_nat @ nil_nat )
=> ( ! [X3: list_nat,Xs2: list_list_nat] : ( P @ ( cons_list_nat @ X3 @ Xs2 ) @ nil_nat )
=> ( ! [Y3: nat,Ys2: list_nat] : ( P @ nil_list_nat @ ( cons_nat @ Y3 @ Ys2 ) )
=> ( ! [X3: list_nat,Xs2: list_list_nat,Y3: nat,Ys2: list_nat] :
( ( P @ Xs2 @ Ys2 )
=> ( P @ ( cons_list_nat @ X3 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys2 ) ) )
=> ( P @ Xs @ Ys ) ) ) ) ) ).
% list_induct2'
thf(fact_127_list__induct2_H,axiom,
! [P: list_nat > list_P6011104703257516679at_nat > $o,Xs: list_nat,Ys: list_P6011104703257516679at_nat] :
( ( P @ nil_nat @ nil_Pr5478986624290739719at_nat )
=> ( ! [X3: nat,Xs2: list_nat] : ( P @ ( cons_nat @ X3 @ Xs2 ) @ nil_Pr5478986624290739719at_nat )
=> ( ! [Y3: product_prod_nat_nat,Ys2: list_P6011104703257516679at_nat] : ( P @ nil_nat @ ( cons_P6512896166579812791at_nat @ Y3 @ Ys2 ) )
=> ( ! [X3: nat,Xs2: list_nat,Y3: product_prod_nat_nat,Ys2: list_P6011104703257516679at_nat] :
( ( P @ Xs2 @ Ys2 )
=> ( P @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_P6512896166579812791at_nat @ Y3 @ Ys2 ) ) )
=> ( P @ Xs @ Ys ) ) ) ) ) ).
% list_induct2'
thf(fact_128_list__induct2_H,axiom,
! [P: list_list_nat > list_list_nat > $o,Xs: list_list_nat,Ys: list_list_nat] :
( ( P @ nil_list_nat @ nil_list_nat )
=> ( ! [X3: list_nat,Xs2: list_list_nat] : ( P @ ( cons_list_nat @ X3 @ Xs2 ) @ nil_list_nat )
=> ( ! [Y3: list_nat,Ys2: list_list_nat] : ( P @ nil_list_nat @ ( cons_list_nat @ Y3 @ Ys2 ) )
=> ( ! [X3: list_nat,Xs2: list_list_nat,Y3: list_nat,Ys2: list_list_nat] :
( ( P @ Xs2 @ Ys2 )
=> ( P @ ( cons_list_nat @ X3 @ Xs2 ) @ ( cons_list_nat @ Y3 @ Ys2 ) ) )
=> ( P @ Xs @ Ys ) ) ) ) ) ).
% list_induct2'
thf(fact_129_list__induct2_H,axiom,
! [P: list_P6011104703257516679at_nat > list_nat > $o,Xs: list_P6011104703257516679at_nat,Ys: list_nat] :
( ( P @ nil_Pr5478986624290739719at_nat @ nil_nat )
=> ( ! [X3: product_prod_nat_nat,Xs2: list_P6011104703257516679at_nat] : ( P @ ( cons_P6512896166579812791at_nat @ X3 @ Xs2 ) @ nil_nat )
=> ( ! [Y3: nat,Ys2: list_nat] : ( P @ nil_Pr5478986624290739719at_nat @ ( cons_nat @ Y3 @ Ys2 ) )
=> ( ! [X3: product_prod_nat_nat,Xs2: list_P6011104703257516679at_nat,Y3: nat,Ys2: list_nat] :
( ( P @ Xs2 @ Ys2 )
=> ( P @ ( cons_P6512896166579812791at_nat @ X3 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys2 ) ) )
=> ( P @ Xs @ Ys ) ) ) ) ) ).
% list_induct2'
thf(fact_130_list__induct2_H,axiom,
! [P: list_list_nat > list_P6011104703257516679at_nat > $o,Xs: list_list_nat,Ys: list_P6011104703257516679at_nat] :
( ( P @ nil_list_nat @ nil_Pr5478986624290739719at_nat )
=> ( ! [X3: list_nat,Xs2: list_list_nat] : ( P @ ( cons_list_nat @ X3 @ Xs2 ) @ nil_Pr5478986624290739719at_nat )
=> ( ! [Y3: product_prod_nat_nat,Ys2: list_P6011104703257516679at_nat] : ( P @ nil_list_nat @ ( cons_P6512896166579812791at_nat @ Y3 @ Ys2 ) )
=> ( ! [X3: list_nat,Xs2: list_list_nat,Y3: product_prod_nat_nat,Ys2: list_P6011104703257516679at_nat] :
( ( P @ Xs2 @ Ys2 )
=> ( P @ ( cons_list_nat @ X3 @ Xs2 ) @ ( cons_P6512896166579812791at_nat @ Y3 @ Ys2 ) ) )
=> ( P @ Xs @ Ys ) ) ) ) ) ).
% list_induct2'
thf(fact_131_neq__Nil__conv,axiom,
! [Xs: list_list_nat] :
( ( Xs != nil_list_nat )
= ( ? [Y4: list_nat,Ys3: list_list_nat] :
( Xs
= ( cons_list_nat @ Y4 @ Ys3 ) ) ) ) ).
% neq_Nil_conv
thf(fact_132_neq__Nil__conv,axiom,
! [Xs: list_l8399423937273897361_set_a] :
( ( Xs != nil_li1965212427176585467_set_a )
= ( ? [Y4: list_mapping_a_set_a,Ys3: list_l8399423937273897361_set_a] :
( Xs
= ( cons_l6707406555391138123_set_a @ Y4 @ Ys3 ) ) ) ) ).
% neq_Nil_conv
thf(fact_133_neq__Nil__conv,axiom,
! [Xs: list_P6011104703257516679at_nat] :
( ( Xs != nil_Pr5478986624290739719at_nat )
= ( ? [Y4: product_prod_nat_nat,Ys3: list_P6011104703257516679at_nat] :
( Xs
= ( cons_P6512896166579812791at_nat @ Y4 @ Ys3 ) ) ) ) ).
% neq_Nil_conv
thf(fact_134_neq__Nil__conv,axiom,
! [Xs: list_P2990564888572971688_set_a] :
( ( Xs != nil_Pr3815278418687809704_set_a )
= ( ? [Y4: produc8434378496978325410_set_a,Ys3: list_P2990564888572971688_set_a] :
( Xs
= ( cons_P5055657147124145240_set_a @ Y4 @ Ys3 ) ) ) ) ).
% neq_Nil_conv
thf(fact_135_neq__Nil__conv,axiom,
! [Xs: list_P1402444854915166025_set_a] :
( ( Xs != nil_Pr569463720148864969_set_a )
= ( ? [Y4: produc6947938150963741379_set_a,Ys3: list_P1402444854915166025_set_a] :
( Xs
= ( cons_P7532267380390966137_set_a @ Y4 @ Ys3 ) ) ) ) ).
% neq_Nil_conv
thf(fact_136_neq__Nil__conv,axiom,
! [Xs: list_mapping_a_set_a] :
( ( Xs != nil_mapping_a_set_a )
= ( ? [Y4: mapping_a_set_a,Ys3: list_mapping_a_set_a] :
( Xs
= ( cons_mapping_a_set_a @ Y4 @ Ys3 ) ) ) ) ).
% neq_Nil_conv
thf(fact_137_neq__Nil__conv,axiom,
! [Xs: list_nat] :
( ( Xs != nil_nat )
= ( ? [Y4: nat,Ys3: list_nat] :
( Xs
= ( cons_nat @ Y4 @ Ys3 ) ) ) ) ).
% neq_Nil_conv
thf(fact_138_remdups__adj_Ocases,axiom,
! [X: list_list_nat] :
( ( X != nil_list_nat )
=> ( ! [X3: list_nat] :
( X
!= ( cons_list_nat @ X3 @ nil_list_nat ) )
=> ~ ! [X3: list_nat,Y3: list_nat,Xs2: list_list_nat] :
( X
!= ( cons_list_nat @ X3 @ ( cons_list_nat @ Y3 @ Xs2 ) ) ) ) ) ).
% remdups_adj.cases
thf(fact_139_remdups__adj_Ocases,axiom,
! [X: list_l8399423937273897361_set_a] :
( ( X != nil_li1965212427176585467_set_a )
=> ( ! [X3: list_mapping_a_set_a] :
( X
!= ( cons_l6707406555391138123_set_a @ X3 @ nil_li1965212427176585467_set_a ) )
=> ~ ! [X3: list_mapping_a_set_a,Y3: list_mapping_a_set_a,Xs2: list_l8399423937273897361_set_a] :
( X
!= ( cons_l6707406555391138123_set_a @ X3 @ ( cons_l6707406555391138123_set_a @ Y3 @ Xs2 ) ) ) ) ) ).
% remdups_adj.cases
thf(fact_140_remdups__adj_Ocases,axiom,
! [X: list_P6011104703257516679at_nat] :
( ( X != nil_Pr5478986624290739719at_nat )
=> ( ! [X3: product_prod_nat_nat] :
( X
!= ( cons_P6512896166579812791at_nat @ X3 @ nil_Pr5478986624290739719at_nat ) )
=> ~ ! [X3: product_prod_nat_nat,Y3: product_prod_nat_nat,Xs2: list_P6011104703257516679at_nat] :
( X
!= ( cons_P6512896166579812791at_nat @ X3 @ ( cons_P6512896166579812791at_nat @ Y3 @ Xs2 ) ) ) ) ) ).
% remdups_adj.cases
thf(fact_141_remdups__adj_Ocases,axiom,
! [X: list_P2990564888572971688_set_a] :
( ( X != nil_Pr3815278418687809704_set_a )
=> ( ! [X3: produc8434378496978325410_set_a] :
( X
!= ( cons_P5055657147124145240_set_a @ X3 @ nil_Pr3815278418687809704_set_a ) )
=> ~ ! [X3: produc8434378496978325410_set_a,Y3: produc8434378496978325410_set_a,Xs2: list_P2990564888572971688_set_a] :
( X
!= ( cons_P5055657147124145240_set_a @ X3 @ ( cons_P5055657147124145240_set_a @ Y3 @ Xs2 ) ) ) ) ) ).
% remdups_adj.cases
thf(fact_142_remdups__adj_Ocases,axiom,
! [X: list_P1402444854915166025_set_a] :
( ( X != nil_Pr569463720148864969_set_a )
=> ( ! [X3: produc6947938150963741379_set_a] :
( X
!= ( cons_P7532267380390966137_set_a @ X3 @ nil_Pr569463720148864969_set_a ) )
=> ~ ! [X3: produc6947938150963741379_set_a,Y3: produc6947938150963741379_set_a,Xs2: list_P1402444854915166025_set_a] :
( X
!= ( cons_P7532267380390966137_set_a @ X3 @ ( cons_P7532267380390966137_set_a @ Y3 @ Xs2 ) ) ) ) ) ).
% remdups_adj.cases
thf(fact_143_remdups__adj_Ocases,axiom,
! [X: list_mapping_a_set_a] :
( ( X != nil_mapping_a_set_a )
=> ( ! [X3: mapping_a_set_a] :
( X
!= ( cons_mapping_a_set_a @ X3 @ nil_mapping_a_set_a ) )
=> ~ ! [X3: mapping_a_set_a,Y3: mapping_a_set_a,Xs2: list_mapping_a_set_a] :
( X
!= ( cons_mapping_a_set_a @ X3 @ ( cons_mapping_a_set_a @ Y3 @ Xs2 ) ) ) ) ) ).
% remdups_adj.cases
thf(fact_144_remdups__adj_Ocases,axiom,
! [X: list_nat] :
( ( X != nil_nat )
=> ( ! [X3: nat] :
( X
!= ( cons_nat @ X3 @ nil_nat ) )
=> ~ ! [X3: nat,Y3: nat,Xs2: list_nat] :
( X
!= ( cons_nat @ X3 @ ( cons_nat @ Y3 @ Xs2 ) ) ) ) ) ).
% remdups_adj.cases
thf(fact_145_min__list_Ocases,axiom,
! [X: list_P6011104703257516679at_nat] :
( ! [X3: product_prod_nat_nat,Xs2: list_P6011104703257516679at_nat] :
( X
!= ( cons_P6512896166579812791at_nat @ X3 @ Xs2 ) )
=> ( X = nil_Pr5478986624290739719at_nat ) ) ).
% min_list.cases
thf(fact_146_min__list_Ocases,axiom,
! [X: list_nat] :
( ! [X3: nat,Xs2: list_nat] :
( X
!= ( cons_nat @ X3 @ Xs2 ) )
=> ( X = nil_nat ) ) ).
% min_list.cases
thf(fact_147_list_Oexhaust,axiom,
! [Y: list_list_nat] :
( ( Y != nil_list_nat )
=> ~ ! [X212: list_nat,X222: list_list_nat] :
( Y
!= ( cons_list_nat @ X212 @ X222 ) ) ) ).
% list.exhaust
thf(fact_148_list_Oexhaust,axiom,
! [Y: list_l8399423937273897361_set_a] :
( ( Y != nil_li1965212427176585467_set_a )
=> ~ ! [X212: list_mapping_a_set_a,X222: list_l8399423937273897361_set_a] :
( Y
!= ( cons_l6707406555391138123_set_a @ X212 @ X222 ) ) ) ).
% list.exhaust
thf(fact_149_list_Oexhaust,axiom,
! [Y: list_P6011104703257516679at_nat] :
( ( Y != nil_Pr5478986624290739719at_nat )
=> ~ ! [X212: product_prod_nat_nat,X222: list_P6011104703257516679at_nat] :
( Y
!= ( cons_P6512896166579812791at_nat @ X212 @ X222 ) ) ) ).
% list.exhaust
thf(fact_150_list_Oexhaust,axiom,
! [Y: list_P2990564888572971688_set_a] :
( ( Y != nil_Pr3815278418687809704_set_a )
=> ~ ! [X212: produc8434378496978325410_set_a,X222: list_P2990564888572971688_set_a] :
( Y
!= ( cons_P5055657147124145240_set_a @ X212 @ X222 ) ) ) ).
% list.exhaust
thf(fact_151_list_Oexhaust,axiom,
! [Y: list_P1402444854915166025_set_a] :
( ( Y != nil_Pr569463720148864969_set_a )
=> ~ ! [X212: produc6947938150963741379_set_a,X222: list_P1402444854915166025_set_a] :
( Y
!= ( cons_P7532267380390966137_set_a @ X212 @ X222 ) ) ) ).
% list.exhaust
thf(fact_152_list_Oexhaust,axiom,
! [Y: list_mapping_a_set_a] :
( ( Y != nil_mapping_a_set_a )
=> ~ ! [X212: mapping_a_set_a,X222: list_mapping_a_set_a] :
( Y
!= ( cons_mapping_a_set_a @ X212 @ X222 ) ) ) ).
% list.exhaust
thf(fact_153_list_Oexhaust,axiom,
! [Y: list_nat] :
( ( Y != nil_nat )
=> ~ ! [X212: nat,X222: list_nat] :
( Y
!= ( cons_nat @ X212 @ X222 ) ) ) ).
% list.exhaust
thf(fact_154_list_OdiscI,axiom,
! [List: list_list_nat,X21: list_nat,X22: list_list_nat] :
( ( List
= ( cons_list_nat @ X21 @ X22 ) )
=> ( List != nil_list_nat ) ) ).
% list.discI
thf(fact_155_list_OdiscI,axiom,
! [List: list_l8399423937273897361_set_a,X21: list_mapping_a_set_a,X22: list_l8399423937273897361_set_a] :
( ( List
= ( cons_l6707406555391138123_set_a @ X21 @ X22 ) )
=> ( List != nil_li1965212427176585467_set_a ) ) ).
% list.discI
thf(fact_156_list_OdiscI,axiom,
! [List: list_P6011104703257516679at_nat,X21: product_prod_nat_nat,X22: list_P6011104703257516679at_nat] :
( ( List
= ( cons_P6512896166579812791at_nat @ X21 @ X22 ) )
=> ( List != nil_Pr5478986624290739719at_nat ) ) ).
% list.discI
thf(fact_157_list_OdiscI,axiom,
! [List: list_P2990564888572971688_set_a,X21: produc8434378496978325410_set_a,X22: list_P2990564888572971688_set_a] :
( ( List
= ( cons_P5055657147124145240_set_a @ X21 @ X22 ) )
=> ( List != nil_Pr3815278418687809704_set_a ) ) ).
% list.discI
thf(fact_158_list_OdiscI,axiom,
! [List: list_P1402444854915166025_set_a,X21: produc6947938150963741379_set_a,X22: list_P1402444854915166025_set_a] :
( ( List
= ( cons_P7532267380390966137_set_a @ X21 @ X22 ) )
=> ( List != nil_Pr569463720148864969_set_a ) ) ).
% list.discI
thf(fact_159_list_OdiscI,axiom,
! [List: list_mapping_a_set_a,X21: mapping_a_set_a,X22: list_mapping_a_set_a] :
( ( List
= ( cons_mapping_a_set_a @ X21 @ X22 ) )
=> ( List != nil_mapping_a_set_a ) ) ).
% list.discI
thf(fact_160_list_OdiscI,axiom,
! [List: list_nat,X21: nat,X22: list_nat] :
( ( List
= ( cons_nat @ X21 @ X22 ) )
=> ( List != nil_nat ) ) ).
% list.discI
thf(fact_161_mem__Collect__eq,axiom,
! [A: product_prod_nat_nat,P: product_prod_nat_nat > $o] :
( ( member8440522571783428010at_nat @ A @ ( collec3392354462482085612at_nat @ P ) )
= ( P @ A ) ) ).
% mem_Collect_eq
thf(fact_162_mem__Collect__eq,axiom,
! [A: nat,P: nat > $o] :
( ( member_nat @ A @ ( collect_nat @ P ) )
= ( P @ A ) ) ).
% mem_Collect_eq
thf(fact_163_mem__Collect__eq,axiom,
! [A: mapping_a_set_a,P: mapping_a_set_a > $o] :
( ( member5773590555267836296_set_a @ A @ ( collec8416340978370123974_set_a @ P ) )
= ( P @ A ) ) ).
% mem_Collect_eq
thf(fact_164_mem__Collect__eq,axiom,
! [A: list_nat,P: list_nat > $o] :
( ( member_list_nat @ A @ ( collect_list_nat @ P ) )
= ( P @ A ) ) ).
% mem_Collect_eq
thf(fact_165_mem__Collect__eq,axiom,
! [A: list_mapping_a_set_a,P: list_mapping_a_set_a > $o] :
( ( member2763587292577307288_set_a @ A @ ( collec7257000206306202326_set_a @ P ) )
= ( P @ A ) ) ).
% mem_Collect_eq
thf(fact_166_Collect__mem__eq,axiom,
! [A2: set_Pr1261947904930325089at_nat] :
( ( collec3392354462482085612at_nat
@ ^ [X4: product_prod_nat_nat] : ( member8440522571783428010at_nat @ X4 @ A2 ) )
= A2 ) ).
% Collect_mem_eq
thf(fact_167_Collect__mem__eq,axiom,
! [A2: set_nat] :
( ( collect_nat
@ ^ [X4: nat] : ( member_nat @ X4 @ A2 ) )
= A2 ) ).
% Collect_mem_eq
thf(fact_168_Collect__mem__eq,axiom,
! [A2: set_mapping_a_set_a] :
( ( collec8416340978370123974_set_a
@ ^ [X4: mapping_a_set_a] : ( member5773590555267836296_set_a @ X4 @ A2 ) )
= A2 ) ).
% Collect_mem_eq
thf(fact_169_Collect__mem__eq,axiom,
! [A2: set_list_nat] :
( ( collect_list_nat
@ ^ [X4: list_nat] : ( member_list_nat @ X4 @ A2 ) )
= A2 ) ).
% Collect_mem_eq
thf(fact_170_Collect__mem__eq,axiom,
! [A2: set_li5718660665068022583_set_a] :
( ( collec7257000206306202326_set_a
@ ^ [X4: list_mapping_a_set_a] : ( member2763587292577307288_set_a @ X4 @ A2 ) )
= A2 ) ).
% Collect_mem_eq
thf(fact_171_Collect__cong,axiom,
! [P: nat > $o,Q2: nat > $o] :
( ! [X3: nat] :
( ( P @ X3 )
= ( Q2 @ X3 ) )
=> ( ( collect_nat @ P )
= ( collect_nat @ Q2 ) ) ) ).
% Collect_cong
thf(fact_172_Collect__cong,axiom,
! [P: mapping_a_set_a > $o,Q2: mapping_a_set_a > $o] :
( ! [X3: mapping_a_set_a] :
( ( P @ X3 )
= ( Q2 @ X3 ) )
=> ( ( collec8416340978370123974_set_a @ P )
= ( collec8416340978370123974_set_a @ Q2 ) ) ) ).
% Collect_cong
thf(fact_173_Collect__cong,axiom,
! [P: list_nat > $o,Q2: list_nat > $o] :
( ! [X3: list_nat] :
( ( P @ X3 )
= ( Q2 @ X3 ) )
=> ( ( collect_list_nat @ P )
= ( collect_list_nat @ Q2 ) ) ) ).
% Collect_cong
thf(fact_174_Collect__cong,axiom,
! [P: list_mapping_a_set_a > $o,Q2: list_mapping_a_set_a > $o] :
( ! [X3: list_mapping_a_set_a] :
( ( P @ X3 )
= ( Q2 @ X3 ) )
=> ( ( collec7257000206306202326_set_a @ P )
= ( collec7257000206306202326_set_a @ Q2 ) ) ) ).
% Collect_cong
thf(fact_175_list_Odistinct_I1_J,axiom,
! [X21: list_nat,X22: list_list_nat] :
( nil_list_nat
!= ( cons_list_nat @ X21 @ X22 ) ) ).
% list.distinct(1)
thf(fact_176_list_Odistinct_I1_J,axiom,
! [X21: list_mapping_a_set_a,X22: list_l8399423937273897361_set_a] :
( nil_li1965212427176585467_set_a
!= ( cons_l6707406555391138123_set_a @ X21 @ X22 ) ) ).
% list.distinct(1)
thf(fact_177_list_Odistinct_I1_J,axiom,
! [X21: product_prod_nat_nat,X22: list_P6011104703257516679at_nat] :
( nil_Pr5478986624290739719at_nat
!= ( cons_P6512896166579812791at_nat @ X21 @ X22 ) ) ).
% list.distinct(1)
thf(fact_178_list_Odistinct_I1_J,axiom,
! [X21: produc8434378496978325410_set_a,X22: list_P2990564888572971688_set_a] :
( nil_Pr3815278418687809704_set_a
!= ( cons_P5055657147124145240_set_a @ X21 @ X22 ) ) ).
% list.distinct(1)
thf(fact_179_list_Odistinct_I1_J,axiom,
! [X21: produc6947938150963741379_set_a,X22: list_P1402444854915166025_set_a] :
( nil_Pr569463720148864969_set_a
!= ( cons_P7532267380390966137_set_a @ X21 @ X22 ) ) ).
% list.distinct(1)
thf(fact_180_list_Odistinct_I1_J,axiom,
! [X21: mapping_a_set_a,X22: list_mapping_a_set_a] :
( nil_mapping_a_set_a
!= ( cons_mapping_a_set_a @ X21 @ X22 ) ) ).
% list.distinct(1)
thf(fact_181_list_Odistinct_I1_J,axiom,
! [X21: nat,X22: list_nat] :
( nil_nat
!= ( cons_nat @ X21 @ X22 ) ) ).
% list.distinct(1)
thf(fact_182_not0__implies__Suc,axiom,
! [N: nat] :
( ( N != zero_zero_nat )
=> ? [M2: nat] :
( N
= ( suc @ M2 ) ) ) ).
% not0_implies_Suc
thf(fact_183_Zero__not__Suc,axiom,
! [M: nat] :
( zero_zero_nat
!= ( suc @ M ) ) ).
% Zero_not_Suc
thf(fact_184_Zero__neq__Suc,axiom,
! [M: nat] :
( zero_zero_nat
!= ( suc @ M ) ) ).
% Zero_neq_Suc
thf(fact_185_Suc__neq__Zero,axiom,
! [M: nat] :
( ( suc @ M )
!= zero_zero_nat ) ).
% Suc_neq_Zero
thf(fact_186_zero__induct,axiom,
! [P: nat > $o,K2: nat] :
( ( P @ K2 )
=> ( ! [N2: nat] :
( ( P @ ( suc @ N2 ) )
=> ( P @ N2 ) )
=> ( P @ zero_zero_nat ) ) ) ).
% zero_induct
thf(fact_187_diff__induct,axiom,
! [P: nat > nat > $o,M: nat,N: nat] :
( ! [X3: nat] : ( P @ X3 @ zero_zero_nat )
=> ( ! [Y3: nat] : ( P @ zero_zero_nat @ ( suc @ Y3 ) )
=> ( ! [X3: nat,Y3: nat] :
( ( P @ X3 @ Y3 )
=> ( P @ ( suc @ X3 ) @ ( suc @ Y3 ) ) )
=> ( P @ M @ N ) ) ) ) ).
% diff_induct
thf(fact_188_nat__induct,axiom,
! [P: nat > $o,N: nat] :
( ( P @ zero_zero_nat )
=> ( ! [N2: nat] :
( ( P @ N2 )
=> ( P @ ( suc @ N2 ) ) )
=> ( P @ N ) ) ) ).
% nat_induct
thf(fact_189_old_Onat_Oexhaust,axiom,
! [Y: nat] :
( ( Y != zero_zero_nat )
=> ~ ! [Nat3: nat] :
( Y
!= ( suc @ Nat3 ) ) ) ).
% old.nat.exhaust
thf(fact_190_nat_OdiscI,axiom,
! [Nat: nat,X2: nat] :
( ( Nat
= ( suc @ X2 ) )
=> ( Nat != zero_zero_nat ) ) ).
% nat.discI
thf(fact_191_old_Onat_Odistinct_I1_J,axiom,
! [Nat2: nat] :
( zero_zero_nat
!= ( suc @ Nat2 ) ) ).
% old.nat.distinct(1)
thf(fact_192_old_Onat_Odistinct_I2_J,axiom,
! [Nat2: nat] :
( ( suc @ Nat2 )
!= zero_zero_nat ) ).
% old.nat.distinct(2)
thf(fact_193_nat_Odistinct_I1_J,axiom,
! [X2: nat] :
( zero_zero_nat
!= ( suc @ X2 ) ) ).
% nat.distinct(1)
thf(fact_194_compute__ofsm__table__list_Osimps,axiom,
( oFSM_T7112452476333882245_a_b_c
= ( ^ [M3: fsm_a_b_c,K: nat] :
( rev_mapping_a_set_a
@ ( foldr_4622666561834033786_set_a
@ ^ [Uu: nat,Prev: list_mapping_a_set_a] : ( cons_mapping_a_set_a @ ( oFSM_T257171030951260681_a_b_c @ M3 @ ( hd_mapping_a_set_a @ Prev ) ) @ Prev )
@ ( upt @ zero_zero_nat @ K )
@ ( cons_mapping_a_set_a @ ( oFSM_T5435067451961929104_a_b_c @ M3 ) @ nil_mapping_a_set_a ) ) ) ) ) ).
% compute_ofsm_table_list.simps
thf(fact_195_compute__ofsm__table__list_Oelims,axiom,
! [X: fsm_a_b_c,Xa: nat,Y: list_mapping_a_set_a] :
( ( ( oFSM_T7112452476333882245_a_b_c @ X @ Xa )
= Y )
=> ( Y
= ( rev_mapping_a_set_a
@ ( foldr_4622666561834033786_set_a
@ ^ [Uu: nat,Prev: list_mapping_a_set_a] : ( cons_mapping_a_set_a @ ( oFSM_T257171030951260681_a_b_c @ X @ ( hd_mapping_a_set_a @ Prev ) ) @ Prev )
@ ( upt @ zero_zero_nat @ Xa )
@ ( cons_mapping_a_set_a @ ( oFSM_T5435067451961929104_a_b_c @ X ) @ nil_mapping_a_set_a ) ) ) ) ) ).
% compute_ofsm_table_list.elims
thf(fact_196_exists__least__lemma,axiom,
! [P: nat > $o] :
( ~ ( P @ zero_zero_nat )
=> ( ? [X_1: nat] : ( P @ X_1 )
=> ? [N2: nat] :
( ~ ( P @ N2 )
& ( P @ ( suc @ N2 ) ) ) ) ) ).
% exists_least_lemma
thf(fact_197_list__decode_Ocases,axiom,
! [X: nat] :
( ( X != zero_zero_nat )
=> ~ ! [N2: nat] :
( X
!= ( suc @ N2 ) ) ) ).
% list_decode.cases
thf(fact_198_linear__order__from__list__position_H_Ocases,axiom,
! [X: list_P1402444854915166025_set_a] :
( ( X != nil_Pr569463720148864969_set_a )
=> ~ ! [X3: produc6947938150963741379_set_a,Xs2: list_P1402444854915166025_set_a] :
( X
!= ( cons_P7532267380390966137_set_a @ X3 @ Xs2 ) ) ) ).
% linear_order_from_list_position'.cases
thf(fact_199_linear__order__from__list__position_H_Ocases,axiom,
! [X: list_mapping_a_set_a] :
( ( X != nil_mapping_a_set_a )
=> ~ ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a] :
( X
!= ( cons_mapping_a_set_a @ X3 @ Xs2 ) ) ) ).
% linear_order_from_list_position'.cases
thf(fact_200_linear__order__from__list__position_H_Ocases,axiom,
! [X: list_nat] :
( ( X != nil_nat )
=> ~ ! [X3: nat,Xs2: list_nat] :
( X
!= ( cons_nat @ X3 @ Xs2 ) ) ) ).
% linear_order_from_list_position'.cases
thf(fact_201_list__encode_Ocases,axiom,
! [X: list_nat] :
( ( X != nil_nat )
=> ~ ! [X3: nat,Xs2: list_nat] :
( X
!= ( cons_nat @ X3 @ Xs2 ) ) ) ).
% list_encode.cases
thf(fact_202_upt__0,axiom,
! [I: nat] :
( ( upt @ I @ zero_zero_nat )
= nil_nat ) ).
% upt_0
thf(fact_203_zero__reorient,axiom,
! [X: nat] :
( ( zero_zero_nat = X )
= ( X = zero_zero_nat ) ) ).
% zero_reorient
thf(fact_204_n__lists__Nil,axiom,
! [N: nat] :
( ( ( N = zero_zero_nat )
=> ( ( n_list7459182699849025379_set_a @ N @ nil_mapping_a_set_a )
= ( cons_l6707406555391138123_set_a @ nil_mapping_a_set_a @ nil_li1965212427176585467_set_a ) ) )
& ( ( N != zero_zero_nat )
=> ( ( n_list7459182699849025379_set_a @ N @ nil_mapping_a_set_a )
= nil_li1965212427176585467_set_a ) ) ) ).
% n_lists_Nil
thf(fact_205_n__lists__Nil,axiom,
! [N: nat] :
( ( ( N = zero_zero_nat )
=> ( ( n_lists_nat @ N @ nil_nat )
= ( cons_list_nat @ nil_nat @ nil_list_nat ) ) )
& ( ( N != zero_zero_nat )
=> ( ( n_lists_nat @ N @ nil_nat )
= nil_list_nat ) ) ) ).
% n_lists_Nil
thf(fact_206_n__lists_Osimps_I1_J,axiom,
! [Xs: list_mapping_a_set_a] :
( ( n_list7459182699849025379_set_a @ zero_zero_nat @ Xs )
= ( cons_l6707406555391138123_set_a @ nil_mapping_a_set_a @ nil_li1965212427176585467_set_a ) ) ).
% n_lists.simps(1)
thf(fact_207_n__lists_Osimps_I1_J,axiom,
! [Xs: list_nat] :
( ( n_lists_nat @ zero_zero_nat @ Xs )
= ( cons_list_nat @ nil_nat @ nil_list_nat ) ) ).
% n_lists.simps(1)
thf(fact_208_lists__of__length_Osimps_I1_J,axiom,
! [T: list_mapping_a_set_a] :
( ( lists_628685718963753558_set_a @ T @ zero_zero_nat )
= ( cons_l6707406555391138123_set_a @ nil_mapping_a_set_a @ nil_li1965212427176585467_set_a ) ) ).
% lists_of_length.simps(1)
thf(fact_209_lists__of__length_Osimps_I1_J,axiom,
! [T: list_nat] :
( ( lists_of_length_nat @ T @ zero_zero_nat )
= ( cons_list_nat @ nil_nat @ nil_list_nat ) ) ).
% lists_of_length.simps(1)
thf(fact_210_compute__ofsm__table__list_Opelims,axiom,
! [X: fsm_a_b_c,Xa: nat,Y: list_mapping_a_set_a] :
( ( ( oFSM_T7112452476333882245_a_b_c @ X @ Xa )
= Y )
=> ( ( accp_P6083181879160900185_c_nat @ oFSM_T4142510991734556734_a_b_c @ ( produc4959803781544425372_c_nat @ X @ Xa ) )
=> ~ ( ( Y
= ( rev_mapping_a_set_a
@ ( foldr_4622666561834033786_set_a
@ ^ [Uu: nat,Prev: list_mapping_a_set_a] : ( cons_mapping_a_set_a @ ( oFSM_T257171030951260681_a_b_c @ X @ ( hd_mapping_a_set_a @ Prev ) ) @ Prev )
@ ( upt @ zero_zero_nat @ Xa )
@ ( cons_mapping_a_set_a @ ( oFSM_T5435067451961929104_a_b_c @ X ) @ nil_mapping_a_set_a ) ) ) )
=> ~ ( accp_P6083181879160900185_c_nat @ oFSM_T4142510991734556734_a_b_c @ ( produc4959803781544425372_c_nat @ X @ Xa ) ) ) ) ) ).
% compute_ofsm_table_list.pelims
thf(fact_211_sublists_Osimps_I1_J,axiom,
( ( sublis7562426436087478873_set_a @ nil_mapping_a_set_a )
= ( cons_l6707406555391138123_set_a @ nil_mapping_a_set_a @ nil_li1965212427176585467_set_a ) ) ).
% sublists.simps(1)
thf(fact_212_sublists_Osimps_I1_J,axiom,
( ( sublists_nat @ nil_nat )
= ( cons_list_nat @ nil_nat @ nil_list_nat ) ) ).
% sublists.simps(1)
thf(fact_213_Util_Osuffixes_Osimps_I1_J,axiom,
( ( suffix5318289274321896575_set_a @ nil_mapping_a_set_a )
= ( cons_l6707406555391138123_set_a @ nil_mapping_a_set_a @ nil_li1965212427176585467_set_a ) ) ).
% Util.suffixes.simps(1)
thf(fact_214_Util_Osuffixes_Osimps_I1_J,axiom,
( ( suffixes_nat2 @ nil_nat )
= ( cons_list_nat @ nil_nat @ nil_list_nat ) ) ).
% Util.suffixes.simps(1)
thf(fact_215_pow__list_Osimps_I1_J,axiom,
( ( pow_li8443515580676963514_set_a @ nil_mapping_a_set_a )
= ( cons_l6707406555391138123_set_a @ nil_mapping_a_set_a @ nil_li1965212427176585467_set_a ) ) ).
% pow_list.simps(1)
thf(fact_216_pow__list_Osimps_I1_J,axiom,
( ( pow_list_nat @ nil_nat )
= ( cons_list_nat @ nil_nat @ nil_list_nat ) ) ).
% pow_list.simps(1)
thf(fact_217_product__lists_Osimps_I1_J,axiom,
( ( produc5800141938999160642_set_a @ nil_li1965212427176585467_set_a )
= ( cons_l6707406555391138123_set_a @ nil_mapping_a_set_a @ nil_li1965212427176585467_set_a ) ) ).
% product_lists.simps(1)
thf(fact_218_product__lists_Osimps_I1_J,axiom,
( ( product_lists_nat @ nil_list_nat )
= ( cons_list_nat @ nil_nat @ nil_list_nat ) ) ).
% product_lists.simps(1)
thf(fact_219_subseqs_Osimps_I1_J,axiom,
( ( subseq2557973625717637724_set_a @ nil_mapping_a_set_a )
= ( cons_l6707406555391138123_set_a @ nil_mapping_a_set_a @ nil_li1965212427176585467_set_a ) ) ).
% subseqs.simps(1)
thf(fact_220_subseqs_Osimps_I1_J,axiom,
( ( subseqs_nat @ nil_nat )
= ( cons_list_nat @ nil_nat @ nil_list_nat ) ) ).
% subseqs.simps(1)
thf(fact_221_insert__Nil,axiom,
! [X: mapping_a_set_a] :
( ( insert2013799400217708245_set_a @ X @ nil_mapping_a_set_a )
= ( cons_mapping_a_set_a @ X @ nil_mapping_a_set_a ) ) ).
% insert_Nil
thf(fact_222_insert__Nil,axiom,
! [X: nat] :
( ( insert_nat @ X @ nil_nat )
= ( cons_nat @ X @ nil_nat ) ) ).
% insert_Nil
thf(fact_223_list__max_Osimps_I1_J,axiom,
( ( list_max @ nil_nat )
= zero_zero_nat ) ).
% list_max.simps(1)
thf(fact_224_suffixes_Oelims,axiom,
! [X: list_mapping_a_set_a,Y: list_l8399423937273897361_set_a] :
( ( ( suffix5318289274321896575_set_a @ X )
= Y )
=> ( ( ( X = nil_mapping_a_set_a )
=> ( Y
!= ( cons_l6707406555391138123_set_a @ nil_mapping_a_set_a @ nil_li1965212427176585467_set_a ) ) )
=> ~ ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a] :
( ( X
= ( cons_mapping_a_set_a @ X3 @ Xs2 ) )
=> ( Y
!= ( append5300639281392126886_set_a @ ( suffix5318289274321896575_set_a @ Xs2 ) @ ( cons_l6707406555391138123_set_a @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) @ nil_li1965212427176585467_set_a ) ) ) ) ) ) ).
% suffixes.elims
thf(fact_225_suffixes_Oelims,axiom,
! [X: list_nat,Y: list_list_nat] :
( ( ( suffixes_nat2 @ X )
= Y )
=> ( ( ( X = nil_nat )
=> ( Y
!= ( cons_list_nat @ nil_nat @ nil_list_nat ) ) )
=> ~ ! [X3: nat,Xs2: list_nat] :
( ( X
= ( cons_nat @ X3 @ Xs2 ) )
=> ( Y
!= ( append_list_nat @ ( suffixes_nat2 @ Xs2 ) @ ( cons_list_nat @ ( cons_nat @ X3 @ Xs2 ) @ nil_list_nat ) ) ) ) ) ) ).
% suffixes.elims
thf(fact_226_upt__rec,axiom,
( upt
= ( ^ [I2: nat,J: nat] : ( if_list_nat @ ( ord_less_nat @ I2 @ J ) @ ( cons_nat @ I2 @ ( upt @ ( suc @ I2 ) @ J ) ) @ nil_nat ) ) ) ).
% upt_rec
thf(fact_227_nths__singleton,axiom,
! [A2: set_nat,X: mapping_a_set_a] :
( ( ( member_nat @ zero_zero_nat @ A2 )
=> ( ( nths_mapping_a_set_a @ ( cons_mapping_a_set_a @ X @ nil_mapping_a_set_a ) @ A2 )
= ( cons_mapping_a_set_a @ X @ nil_mapping_a_set_a ) ) )
& ( ~ ( member_nat @ zero_zero_nat @ A2 )
=> ( ( nths_mapping_a_set_a @ ( cons_mapping_a_set_a @ X @ nil_mapping_a_set_a ) @ A2 )
= nil_mapping_a_set_a ) ) ) ).
% nths_singleton
thf(fact_228_nths__singleton,axiom,
! [A2: set_nat,X: nat] :
( ( ( member_nat @ zero_zero_nat @ A2 )
=> ( ( nths_nat @ ( cons_nat @ X @ nil_nat ) @ A2 )
= ( cons_nat @ X @ nil_nat ) ) )
& ( ~ ( member_nat @ zero_zero_nat @ A2 )
=> ( ( nths_nat @ ( cons_nat @ X @ nil_nat ) @ A2 )
= nil_nat ) ) ) ).
% nths_singleton
thf(fact_229_Util_Osuffixes_Osimps_I2_J,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( suffix5318289274321896575_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) )
= ( append5300639281392126886_set_a @ ( suffix5318289274321896575_set_a @ Xs ) @ ( cons_l6707406555391138123_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) @ nil_li1965212427176585467_set_a ) ) ) ).
% Util.suffixes.simps(2)
thf(fact_230_Util_Osuffixes_Osimps_I2_J,axiom,
! [X: nat,Xs: list_nat] :
( ( suffixes_nat2 @ ( cons_nat @ X @ Xs ) )
= ( append_list_nat @ ( suffixes_nat2 @ Xs ) @ ( cons_list_nat @ ( cons_nat @ X @ Xs ) @ nil_list_nat ) ) ) ).
% Util.suffixes.simps(2)
thf(fact_231_list__ex1__simps_I1_J,axiom,
! [P: mapping_a_set_a > $o] :
~ ( list_e980809908310139752_set_a @ P @ nil_mapping_a_set_a ) ).
% list_ex1_simps(1)
thf(fact_232_list__ex1__simps_I1_J,axiom,
! [P: nat > $o] :
~ ( list_ex1_nat @ P @ nil_nat ) ).
% list_ex1_simps(1)
thf(fact_233_not__gr__zero,axiom,
! [N: nat] :
( ( ~ ( ord_less_nat @ zero_zero_nat @ N ) )
= ( N = zero_zero_nat ) ) ).
% not_gr_zero
thf(fact_234_append__is__Nil__conv,axiom,
! [Xs: list_mapping_a_set_a,Ys: list_mapping_a_set_a] :
( ( ( append4262749607566113174_set_a @ Xs @ Ys )
= nil_mapping_a_set_a )
= ( ( Xs = nil_mapping_a_set_a )
& ( Ys = nil_mapping_a_set_a ) ) ) ).
% append_is_Nil_conv
thf(fact_235_append__is__Nil__conv,axiom,
! [Xs: list_nat,Ys: list_nat] :
( ( ( append_nat @ Xs @ Ys )
= nil_nat )
= ( ( Xs = nil_nat )
& ( Ys = nil_nat ) ) ) ).
% append_is_Nil_conv
thf(fact_236_Nil__is__append__conv,axiom,
! [Xs: list_mapping_a_set_a,Ys: list_mapping_a_set_a] :
( ( nil_mapping_a_set_a
= ( append4262749607566113174_set_a @ Xs @ Ys ) )
= ( ( Xs = nil_mapping_a_set_a )
& ( Ys = nil_mapping_a_set_a ) ) ) ).
% Nil_is_append_conv
thf(fact_237_Nil__is__append__conv,axiom,
! [Xs: list_nat,Ys: list_nat] :
( ( nil_nat
= ( append_nat @ Xs @ Ys ) )
= ( ( Xs = nil_nat )
& ( Ys = nil_nat ) ) ) ).
% Nil_is_append_conv
thf(fact_238_self__append__conv2,axiom,
! [Y: list_mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( Y
= ( append4262749607566113174_set_a @ Xs @ Y ) )
= ( Xs = nil_mapping_a_set_a ) ) ).
% self_append_conv2
thf(fact_239_self__append__conv2,axiom,
! [Y: list_nat,Xs: list_nat] :
( ( Y
= ( append_nat @ Xs @ Y ) )
= ( Xs = nil_nat ) ) ).
% self_append_conv2
thf(fact_240_append__self__conv2,axiom,
! [Xs: list_mapping_a_set_a,Ys: list_mapping_a_set_a] :
( ( ( append4262749607566113174_set_a @ Xs @ Ys )
= Ys )
= ( Xs = nil_mapping_a_set_a ) ) ).
% append_self_conv2
thf(fact_241_append__self__conv2,axiom,
! [Xs: list_nat,Ys: list_nat] :
( ( ( append_nat @ Xs @ Ys )
= Ys )
= ( Xs = nil_nat ) ) ).
% append_self_conv2
thf(fact_242_self__append__conv,axiom,
! [Y: list_mapping_a_set_a,Ys: list_mapping_a_set_a] :
( ( Y
= ( append4262749607566113174_set_a @ Y @ Ys ) )
= ( Ys = nil_mapping_a_set_a ) ) ).
% self_append_conv
thf(fact_243_self__append__conv,axiom,
! [Y: list_nat,Ys: list_nat] :
( ( Y
= ( append_nat @ Y @ Ys ) )
= ( Ys = nil_nat ) ) ).
% self_append_conv
thf(fact_244_append__self__conv,axiom,
! [Xs: list_mapping_a_set_a,Ys: list_mapping_a_set_a] :
( ( ( append4262749607566113174_set_a @ Xs @ Ys )
= Xs )
= ( Ys = nil_mapping_a_set_a ) ) ).
% append_self_conv
thf(fact_245_append__self__conv,axiom,
! [Xs: list_nat,Ys: list_nat] :
( ( ( append_nat @ Xs @ Ys )
= Xs )
= ( Ys = nil_nat ) ) ).
% append_self_conv
thf(fact_246_append__Nil2,axiom,
! [Xs: list_mapping_a_set_a] :
( ( append4262749607566113174_set_a @ Xs @ nil_mapping_a_set_a )
= Xs ) ).
% append_Nil2
thf(fact_247_append__Nil2,axiom,
! [Xs: list_nat] :
( ( append_nat @ Xs @ nil_nat )
= Xs ) ).
% append_Nil2
thf(fact_248_append_Oright__neutral,axiom,
! [A: list_mapping_a_set_a] :
( ( append4262749607566113174_set_a @ A @ nil_mapping_a_set_a )
= A ) ).
% append.right_neutral
thf(fact_249_append_Oright__neutral,axiom,
! [A: list_nat] :
( ( append_nat @ A @ nil_nat )
= A ) ).
% append.right_neutral
thf(fact_250_lessI,axiom,
! [N: nat] : ( ord_less_nat @ N @ ( suc @ N ) ) ).
% lessI
thf(fact_251_Suc__mono,axiom,
! [M: nat,N: nat] :
( ( ord_less_nat @ M @ N )
=> ( ord_less_nat @ ( suc @ M ) @ ( suc @ N ) ) ) ).
% Suc_mono
thf(fact_252_Suc__less__eq,axiom,
! [M: nat,N: nat] :
( ( ord_less_nat @ ( suc @ M ) @ ( suc @ N ) )
= ( ord_less_nat @ M @ N ) ) ).
% Suc_less_eq
thf(fact_253_less__nat__zero__code,axiom,
! [N: nat] :
~ ( ord_less_nat @ N @ zero_zero_nat ) ).
% less_nat_zero_code
thf(fact_254_neq0__conv,axiom,
! [N: nat] :
( ( N != zero_zero_nat )
= ( ord_less_nat @ zero_zero_nat @ N ) ) ).
% neq0_conv
thf(fact_255_bot__nat__0_Onot__eq__extremum,axiom,
! [A: nat] :
( ( A != zero_zero_nat )
= ( ord_less_nat @ zero_zero_nat @ A ) ) ).
% bot_nat_0.not_eq_extremum
thf(fact_256_rev__append,axiom,
! [Xs: list_nat,Ys: list_nat] :
( ( rev_nat @ ( append_nat @ Xs @ Ys ) )
= ( append_nat @ ( rev_nat @ Ys ) @ ( rev_nat @ Xs ) ) ) ).
% rev_append
thf(fact_257_hd__upt,axiom,
! [I: nat,J2: nat] :
( ( ord_less_nat @ I @ J2 )
=> ( ( hd_nat @ ( upt @ I @ J2 ) )
= I ) ) ).
% hd_upt
thf(fact_258_foldr__append,axiom,
! [F: nat > list_mapping_a_set_a > list_mapping_a_set_a,Xs: list_nat,Ys: list_nat,A: list_mapping_a_set_a] :
( ( foldr_4622666561834033786_set_a @ F @ ( append_nat @ Xs @ Ys ) @ A )
= ( foldr_4622666561834033786_set_a @ F @ Xs @ ( foldr_4622666561834033786_set_a @ F @ Ys @ A ) ) ) ).
% foldr_append
thf(fact_259_nths__nil,axiom,
! [A2: set_nat] :
( ( nths_mapping_a_set_a @ nil_mapping_a_set_a @ A2 )
= nil_mapping_a_set_a ) ).
% nths_nil
thf(fact_260_nths__nil,axiom,
! [A2: set_nat] :
( ( nths_nat @ nil_nat @ A2 )
= nil_nat ) ).
% nths_nil
thf(fact_261_append1__eq__conv,axiom,
! [Xs: list_mapping_a_set_a,X: mapping_a_set_a,Ys: list_mapping_a_set_a,Y: mapping_a_set_a] :
( ( ( append4262749607566113174_set_a @ Xs @ ( cons_mapping_a_set_a @ X @ nil_mapping_a_set_a ) )
= ( append4262749607566113174_set_a @ Ys @ ( cons_mapping_a_set_a @ Y @ nil_mapping_a_set_a ) ) )
= ( ( Xs = Ys )
& ( X = Y ) ) ) ).
% append1_eq_conv
thf(fact_262_append1__eq__conv,axiom,
! [Xs: list_nat,X: nat,Ys: list_nat,Y: nat] :
( ( ( append_nat @ Xs @ ( cons_nat @ X @ nil_nat ) )
= ( append_nat @ Ys @ ( cons_nat @ Y @ nil_nat ) ) )
= ( ( Xs = Ys )
& ( X = Y ) ) ) ).
% append1_eq_conv
thf(fact_263_zero__less__Suc,axiom,
! [N: nat] : ( ord_less_nat @ zero_zero_nat @ ( suc @ N ) ) ).
% zero_less_Suc
thf(fact_264_less__Suc0,axiom,
! [N: nat] :
( ( ord_less_nat @ N @ ( suc @ zero_zero_nat ) )
= ( N = zero_zero_nat ) ) ).
% less_Suc0
thf(fact_265_hd__append2,axiom,
! [Xs: list_mapping_a_set_a,Ys: list_mapping_a_set_a] :
( ( Xs != nil_mapping_a_set_a )
=> ( ( hd_mapping_a_set_a @ ( append4262749607566113174_set_a @ Xs @ Ys ) )
= ( hd_mapping_a_set_a @ Xs ) ) ) ).
% hd_append2
thf(fact_266_hd__append2,axiom,
! [Xs: list_nat,Ys: list_nat] :
( ( Xs != nil_nat )
=> ( ( hd_nat @ ( append_nat @ Xs @ Ys ) )
= ( hd_nat @ Xs ) ) ) ).
% hd_append2
thf(fact_267_rev__eq__Cons__iff,axiom,
! [Xs: list_mapping_a_set_a,Y: mapping_a_set_a,Ys: list_mapping_a_set_a] :
( ( ( rev_mapping_a_set_a @ Xs )
= ( cons_mapping_a_set_a @ Y @ Ys ) )
= ( Xs
= ( append4262749607566113174_set_a @ ( rev_mapping_a_set_a @ Ys ) @ ( cons_mapping_a_set_a @ Y @ nil_mapping_a_set_a ) ) ) ) ).
% rev_eq_Cons_iff
thf(fact_268_rev__eq__Cons__iff,axiom,
! [Xs: list_nat,Y: nat,Ys: list_nat] :
( ( ( rev_nat @ Xs )
= ( cons_nat @ Y @ Ys ) )
= ( Xs
= ( append_nat @ ( rev_nat @ Ys ) @ ( cons_nat @ Y @ nil_nat ) ) ) ) ).
% rev_eq_Cons_iff
thf(fact_269_lift__Suc__mono__less,axiom,
! [F: nat > nat,N: nat,N3: nat] :
( ! [N2: nat] : ( ord_less_nat @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
=> ( ( ord_less_nat @ N @ N3 )
=> ( ord_less_nat @ ( F @ N ) @ ( F @ N3 ) ) ) ) ).
% lift_Suc_mono_less
thf(fact_270_lift__Suc__mono__less__iff,axiom,
! [F: nat > nat,N: nat,M: nat] :
( ! [N2: nat] : ( ord_less_nat @ ( F @ N2 ) @ ( F @ ( suc @ N2 ) ) )
=> ( ( ord_less_nat @ ( F @ N ) @ ( F @ M ) )
= ( ord_less_nat @ N @ M ) ) ) ).
% lift_Suc_mono_less_iff
thf(fact_271_nat__neq__iff,axiom,
! [M: nat,N: nat] :
( ( M != N )
= ( ( ord_less_nat @ M @ N )
| ( ord_less_nat @ N @ M ) ) ) ).
% nat_neq_iff
thf(fact_272_less__not__refl,axiom,
! [N: nat] :
~ ( ord_less_nat @ N @ N ) ).
% less_not_refl
thf(fact_273_less__not__refl2,axiom,
! [N: nat,M: nat] :
( ( ord_less_nat @ N @ M )
=> ( M != N ) ) ).
% less_not_refl2
thf(fact_274_less__not__refl3,axiom,
! [S: nat,T2: nat] :
( ( ord_less_nat @ S @ T2 )
=> ( S != T2 ) ) ).
% less_not_refl3
thf(fact_275_less__irrefl__nat,axiom,
! [N: nat] :
~ ( ord_less_nat @ N @ N ) ).
% less_irrefl_nat
thf(fact_276_nat__less__induct,axiom,
! [P: nat > $o,N: nat] :
( ! [N2: nat] :
( ! [M4: nat] :
( ( ord_less_nat @ M4 @ N2 )
=> ( P @ M4 ) )
=> ( P @ N2 ) )
=> ( P @ N ) ) ).
% nat_less_induct
thf(fact_277_infinite__descent,axiom,
! [P: nat > $o,N: nat] :
( ! [N2: nat] :
( ~ ( P @ N2 )
=> ? [M4: nat] :
( ( ord_less_nat @ M4 @ N2 )
& ~ ( P @ M4 ) ) )
=> ( P @ N ) ) ).
% infinite_descent
thf(fact_278_linorder__neqE__nat,axiom,
! [X: nat,Y: nat] :
( ( X != Y )
=> ( ~ ( ord_less_nat @ X @ Y )
=> ( ord_less_nat @ Y @ X ) ) ) ).
% linorder_neqE_nat
thf(fact_279_find__remove_H_Ocases,axiom,
! [X: produc1052841582867983724_set_a] :
( ! [P2: mapping_a_set_a > $o,Uu2: list_mapping_a_set_a] :
( X
!= ( produc6575338118125240412_set_a @ P2 @ ( produc3343591741951367323_set_a @ nil_mapping_a_set_a @ Uu2 ) ) )
=> ~ ! [P2: mapping_a_set_a > $o,X3: mapping_a_set_a,Xs2: list_mapping_a_set_a,Prev2: list_mapping_a_set_a] :
( X
!= ( produc6575338118125240412_set_a @ P2 @ ( produc3343591741951367323_set_a @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) @ Prev2 ) ) ) ) ).
% find_remove'.cases
thf(fact_280_find__remove_H_Ocases,axiom,
! [X: produc1950156742809263241st_nat] :
( ! [P2: nat > $o,Uu2: list_nat] :
( X
!= ( produc1851982983375519865st_nat @ P2 @ ( produc2694037385005941721st_nat @ nil_nat @ Uu2 ) ) )
=> ~ ! [P2: nat > $o,X3: nat,Xs2: list_nat,Prev2: list_nat] :
( X
!= ( produc1851982983375519865st_nat @ P2 @ ( produc2694037385005941721st_nat @ ( cons_nat @ X3 @ Xs2 ) @ Prev2 ) ) ) ) ).
% find_remove'.cases
thf(fact_281_append__Cons,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a,Ys: list_mapping_a_set_a] :
( ( append4262749607566113174_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) @ Ys )
= ( cons_mapping_a_set_a @ X @ ( append4262749607566113174_set_a @ Xs @ Ys ) ) ) ).
% append_Cons
thf(fact_282_append__Cons,axiom,
! [X: nat,Xs: list_nat,Ys: list_nat] :
( ( append_nat @ ( cons_nat @ X @ Xs ) @ Ys )
= ( cons_nat @ X @ ( append_nat @ Xs @ Ys ) ) ) ).
% append_Cons
thf(fact_283_Cons__eq__appendI,axiom,
! [X: mapping_a_set_a,Xs1: list_mapping_a_set_a,Ys: list_mapping_a_set_a,Xs: list_mapping_a_set_a,Zs: list_mapping_a_set_a] :
( ( ( cons_mapping_a_set_a @ X @ Xs1 )
= Ys )
=> ( ( Xs
= ( append4262749607566113174_set_a @ Xs1 @ Zs ) )
=> ( ( cons_mapping_a_set_a @ X @ Xs )
= ( append4262749607566113174_set_a @ Ys @ Zs ) ) ) ) ).
% Cons_eq_appendI
thf(fact_284_Cons__eq__appendI,axiom,
! [X: nat,Xs1: list_nat,Ys: list_nat,Xs: list_nat,Zs: list_nat] :
( ( ( cons_nat @ X @ Xs1 )
= Ys )
=> ( ( Xs
= ( append_nat @ Xs1 @ Zs ) )
=> ( ( cons_nat @ X @ Xs )
= ( append_nat @ Ys @ Zs ) ) ) ) ).
% Cons_eq_appendI
thf(fact_285_eq__Nil__appendI,axiom,
! [Xs: list_mapping_a_set_a,Ys: list_mapping_a_set_a] :
( ( Xs = Ys )
=> ( Xs
= ( append4262749607566113174_set_a @ nil_mapping_a_set_a @ Ys ) ) ) ).
% eq_Nil_appendI
thf(fact_286_eq__Nil__appendI,axiom,
! [Xs: list_nat,Ys: list_nat] :
( ( Xs = Ys )
=> ( Xs
= ( append_nat @ nil_nat @ Ys ) ) ) ).
% eq_Nil_appendI
thf(fact_287_append_Oleft__neutral,axiom,
! [A: list_mapping_a_set_a] :
( ( append4262749607566113174_set_a @ nil_mapping_a_set_a @ A )
= A ) ).
% append.left_neutral
thf(fact_288_append_Oleft__neutral,axiom,
! [A: list_nat] :
( ( append_nat @ nil_nat @ A )
= A ) ).
% append.left_neutral
thf(fact_289_append__Nil,axiom,
! [Ys: list_mapping_a_set_a] :
( ( append4262749607566113174_set_a @ nil_mapping_a_set_a @ Ys )
= Ys ) ).
% append_Nil
thf(fact_290_append__Nil,axiom,
! [Ys: list_nat] :
( ( append_nat @ nil_nat @ Ys )
= Ys ) ).
% append_Nil
thf(fact_291_zero__less__iff__neq__zero,axiom,
! [N: nat] :
( ( ord_less_nat @ zero_zero_nat @ N )
= ( N != zero_zero_nat ) ) ).
% zero_less_iff_neq_zero
thf(fact_292_gr__implies__not__zero,axiom,
! [M: nat,N: nat] :
( ( ord_less_nat @ M @ N )
=> ( N != zero_zero_nat ) ) ).
% gr_implies_not_zero
thf(fact_293_not__less__zero,axiom,
! [N: nat] :
~ ( ord_less_nat @ N @ zero_zero_nat ) ).
% not_less_zero
thf(fact_294_gr__zeroI,axiom,
! [N: nat] :
( ( N != zero_zero_nat )
=> ( ord_less_nat @ zero_zero_nat @ N ) ) ).
% gr_zeroI
thf(fact_295_Nat_OlessE,axiom,
! [I: nat,K2: nat] :
( ( ord_less_nat @ I @ K2 )
=> ( ( K2
!= ( suc @ I ) )
=> ~ ! [J3: nat] :
( ( ord_less_nat @ I @ J3 )
=> ( K2
!= ( suc @ J3 ) ) ) ) ) ).
% Nat.lessE
thf(fact_296_Suc__lessD,axiom,
! [M: nat,N: nat] :
( ( ord_less_nat @ ( suc @ M ) @ N )
=> ( ord_less_nat @ M @ N ) ) ).
% Suc_lessD
thf(fact_297_Suc__lessE,axiom,
! [I: nat,K2: nat] :
( ( ord_less_nat @ ( suc @ I ) @ K2 )
=> ~ ! [J3: nat] :
( ( ord_less_nat @ I @ J3 )
=> ( K2
!= ( suc @ J3 ) ) ) ) ).
% Suc_lessE
thf(fact_298_Suc__lessI,axiom,
! [M: nat,N: nat] :
( ( ord_less_nat @ M @ N )
=> ( ( ( suc @ M )
!= N )
=> ( ord_less_nat @ ( suc @ M ) @ N ) ) ) ).
% Suc_lessI
thf(fact_299_less__SucE,axiom,
! [M: nat,N: nat] :
( ( ord_less_nat @ M @ ( suc @ N ) )
=> ( ~ ( ord_less_nat @ M @ N )
=> ( M = N ) ) ) ).
% less_SucE
thf(fact_300_less__SucI,axiom,
! [M: nat,N: nat] :
( ( ord_less_nat @ M @ N )
=> ( ord_less_nat @ M @ ( suc @ N ) ) ) ).
% less_SucI
thf(fact_301_Ex__less__Suc,axiom,
! [N: nat,P: nat > $o] :
( ( ? [I2: nat] :
( ( ord_less_nat @ I2 @ ( suc @ N ) )
& ( P @ I2 ) ) )
= ( ( P @ N )
| ? [I2: nat] :
( ( ord_less_nat @ I2 @ N )
& ( P @ I2 ) ) ) ) ).
% Ex_less_Suc
thf(fact_302_less__Suc__eq,axiom,
! [M: nat,N: nat] :
( ( ord_less_nat @ M @ ( suc @ N ) )
= ( ( ord_less_nat @ M @ N )
| ( M = N ) ) ) ).
% less_Suc_eq
thf(fact_303_not__less__eq,axiom,
! [M: nat,N: nat] :
( ( ~ ( ord_less_nat @ M @ N ) )
= ( ord_less_nat @ N @ ( suc @ M ) ) ) ).
% not_less_eq
thf(fact_304_All__less__Suc,axiom,
! [N: nat,P: nat > $o] :
( ( ! [I2: nat] :
( ( ord_less_nat @ I2 @ ( suc @ N ) )
=> ( P @ I2 ) ) )
= ( ( P @ N )
& ! [I2: nat] :
( ( ord_less_nat @ I2 @ N )
=> ( P @ I2 ) ) ) ) ).
% All_less_Suc
thf(fact_305_Suc__less__eq2,axiom,
! [N: nat,M: nat] :
( ( ord_less_nat @ ( suc @ N ) @ M )
= ( ? [M5: nat] :
( ( M
= ( suc @ M5 ) )
& ( ord_less_nat @ N @ M5 ) ) ) ) ).
% Suc_less_eq2
thf(fact_306_less__antisym,axiom,
! [N: nat,M: nat] :
( ~ ( ord_less_nat @ N @ M )
=> ( ( ord_less_nat @ N @ ( suc @ M ) )
=> ( M = N ) ) ) ).
% less_antisym
thf(fact_307_Suc__less__SucD,axiom,
! [M: nat,N: nat] :
( ( ord_less_nat @ ( suc @ M ) @ ( suc @ N ) )
=> ( ord_less_nat @ M @ N ) ) ).
% Suc_less_SucD
thf(fact_308_less__trans__Suc,axiom,
! [I: nat,J2: nat,K2: nat] :
( ( ord_less_nat @ I @ J2 )
=> ( ( ord_less_nat @ J2 @ K2 )
=> ( ord_less_nat @ ( suc @ I ) @ K2 ) ) ) ).
% less_trans_Suc
thf(fact_309_less__Suc__induct,axiom,
! [I: nat,J2: nat,P: nat > nat > $o] :
( ( ord_less_nat @ I @ J2 )
=> ( ! [I3: nat] : ( P @ I3 @ ( suc @ I3 ) )
=> ( ! [I3: nat,J3: nat,K3: nat] :
( ( ord_less_nat @ I3 @ J3 )
=> ( ( ord_less_nat @ J3 @ K3 )
=> ( ( P @ I3 @ J3 )
=> ( ( P @ J3 @ K3 )
=> ( P @ I3 @ K3 ) ) ) ) )
=> ( P @ I @ J2 ) ) ) ) ).
% less_Suc_induct
thf(fact_310_strict__inc__induct,axiom,
! [I: nat,J2: nat,P: nat > $o] :
( ( ord_less_nat @ I @ J2 )
=> ( ! [I3: nat] :
( ( J2
= ( suc @ I3 ) )
=> ( P @ I3 ) )
=> ( ! [I3: nat] :
( ( ord_less_nat @ I3 @ J2 )
=> ( ( P @ ( suc @ I3 ) )
=> ( P @ I3 ) ) )
=> ( P @ I ) ) ) ) ).
% strict_inc_induct
thf(fact_311_not__less__less__Suc__eq,axiom,
! [N: nat,M: nat] :
( ~ ( ord_less_nat @ N @ M )
=> ( ( ord_less_nat @ N @ ( suc @ M ) )
= ( N = M ) ) ) ).
% not_less_less_Suc_eq
thf(fact_312_infinite__descent0,axiom,
! [P: nat > $o,N: nat] :
( ( P @ zero_zero_nat )
=> ( ! [N2: nat] :
( ( ord_less_nat @ zero_zero_nat @ N2 )
=> ( ~ ( P @ N2 )
=> ? [M4: nat] :
( ( ord_less_nat @ M4 @ N2 )
& ~ ( P @ M4 ) ) ) )
=> ( P @ N ) ) ) ).
% infinite_descent0
thf(fact_313_gr__implies__not0,axiom,
! [M: nat,N: nat] :
( ( ord_less_nat @ M @ N )
=> ( N != zero_zero_nat ) ) ).
% gr_implies_not0
thf(fact_314_less__zeroE,axiom,
! [N: nat] :
~ ( ord_less_nat @ N @ zero_zero_nat ) ).
% less_zeroE
thf(fact_315_not__less0,axiom,
! [N: nat] :
~ ( ord_less_nat @ N @ zero_zero_nat ) ).
% not_less0
thf(fact_316_not__gr0,axiom,
! [N: nat] :
( ( ~ ( ord_less_nat @ zero_zero_nat @ N ) )
= ( N = zero_zero_nat ) ) ).
% not_gr0
thf(fact_317_gr0I,axiom,
! [N: nat] :
( ( N != zero_zero_nat )
=> ( ord_less_nat @ zero_zero_nat @ N ) ) ).
% gr0I
thf(fact_318_bot__nat__0_Oextremum__strict,axiom,
! [A: nat] :
~ ( ord_less_nat @ A @ zero_zero_nat ) ).
% bot_nat_0.extremum_strict
thf(fact_319_find__index_Ocases,axiom,
! [X: produc8198732073216325070_set_a] :
( ! [F2: mapping_a_set_a > $o] :
( X
!= ( produc6190809660564417480_set_a @ F2 @ nil_mapping_a_set_a ) )
=> ~ ! [F2: mapping_a_set_a > $o,X3: mapping_a_set_a,Xs2: list_mapping_a_set_a] :
( X
!= ( produc6190809660564417480_set_a @ F2 @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) ) ) ) ).
% find_index.cases
thf(fact_320_find__index_Ocases,axiom,
! [X: produc4226810134323546766st_nat] :
( ! [F2: nat > $o] :
( X
!= ( produc8587622027977423880st_nat @ F2 @ nil_nat ) )
=> ~ ! [F2: nat > $o,X3: nat,Xs2: list_nat] :
( X
!= ( produc8587622027977423880st_nat @ F2 @ ( cons_nat @ X3 @ Xs2 ) ) ) ) ).
% find_index.cases
thf(fact_321_successively_Ocases,axiom,
! [X: produc5330063544323038804_set_a] :
( ! [P2: mapping_a_set_a > mapping_a_set_a > $o] :
( X
!= ( produc6850582211560838350_set_a @ P2 @ nil_mapping_a_set_a ) )
=> ( ! [P2: mapping_a_set_a > mapping_a_set_a > $o,X3: mapping_a_set_a] :
( X
!= ( produc6850582211560838350_set_a @ P2 @ ( cons_mapping_a_set_a @ X3 @ nil_mapping_a_set_a ) ) )
=> ~ ! [P2: mapping_a_set_a > mapping_a_set_a > $o,X3: mapping_a_set_a,Y3: mapping_a_set_a,Xs2: list_mapping_a_set_a] :
( X
!= ( produc6850582211560838350_set_a @ P2 @ ( cons_mapping_a_set_a @ X3 @ ( cons_mapping_a_set_a @ Y3 @ Xs2 ) ) ) ) ) ) ).
% successively.cases
thf(fact_322_successively_Ocases,axiom,
! [X: produc254973753779126261st_nat] :
( ! [P2: nat > nat > $o] :
( X
!= ( produc4727192421694094319st_nat @ P2 @ nil_nat ) )
=> ( ! [P2: nat > nat > $o,X3: nat] :
( X
!= ( produc4727192421694094319st_nat @ P2 @ ( cons_nat @ X3 @ nil_nat ) ) )
=> ~ ! [P2: nat > nat > $o,X3: nat,Y3: nat,Xs2: list_nat] :
( X
!= ( produc4727192421694094319st_nat @ P2 @ ( cons_nat @ X3 @ ( cons_nat @ Y3 @ Xs2 ) ) ) ) ) ) ).
% successively.cases
thf(fact_323_sorted__wrt_Ocases,axiom,
! [X: produc5330063544323038804_set_a] :
( ! [P2: mapping_a_set_a > mapping_a_set_a > $o] :
( X
!= ( produc6850582211560838350_set_a @ P2 @ nil_mapping_a_set_a ) )
=> ~ ! [P2: mapping_a_set_a > mapping_a_set_a > $o,X3: mapping_a_set_a,Ys2: list_mapping_a_set_a] :
( X
!= ( produc6850582211560838350_set_a @ P2 @ ( cons_mapping_a_set_a @ X3 @ Ys2 ) ) ) ) ).
% sorted_wrt.cases
thf(fact_324_sorted__wrt_Ocases,axiom,
! [X: produc254973753779126261st_nat] :
( ! [P2: nat > nat > $o] :
( X
!= ( produc4727192421694094319st_nat @ P2 @ nil_nat ) )
=> ~ ! [P2: nat > nat > $o,X3: nat,Ys2: list_nat] :
( X
!= ( produc4727192421694094319st_nat @ P2 @ ( cons_nat @ X3 @ Ys2 ) ) ) ) ).
% sorted_wrt.cases
thf(fact_325_rev__nonempty__induct,axiom,
! [Xs: list_mapping_a_set_a,P: list_mapping_a_set_a > $o] :
( ( Xs != nil_mapping_a_set_a )
=> ( ! [X3: mapping_a_set_a] : ( P @ ( cons_mapping_a_set_a @ X3 @ nil_mapping_a_set_a ) )
=> ( ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a] :
( ( Xs2 != nil_mapping_a_set_a )
=> ( ( P @ Xs2 )
=> ( P @ ( append4262749607566113174_set_a @ Xs2 @ ( cons_mapping_a_set_a @ X3 @ nil_mapping_a_set_a ) ) ) ) )
=> ( P @ Xs ) ) ) ) ).
% rev_nonempty_induct
thf(fact_326_rev__nonempty__induct,axiom,
! [Xs: list_nat,P: list_nat > $o] :
( ( Xs != nil_nat )
=> ( ! [X3: nat] : ( P @ ( cons_nat @ X3 @ nil_nat ) )
=> ( ! [X3: nat,Xs2: list_nat] :
( ( Xs2 != nil_nat )
=> ( ( P @ Xs2 )
=> ( P @ ( append_nat @ Xs2 @ ( cons_nat @ X3 @ nil_nat ) ) ) ) )
=> ( P @ Xs ) ) ) ) ).
% rev_nonempty_induct
thf(fact_327_append__eq__Cons__conv,axiom,
! [Ys: list_mapping_a_set_a,Zs: list_mapping_a_set_a,X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( ( append4262749607566113174_set_a @ Ys @ Zs )
= ( cons_mapping_a_set_a @ X @ Xs ) )
= ( ( ( Ys = nil_mapping_a_set_a )
& ( Zs
= ( cons_mapping_a_set_a @ X @ Xs ) ) )
| ? [Ys4: list_mapping_a_set_a] :
( ( Ys
= ( cons_mapping_a_set_a @ X @ Ys4 ) )
& ( ( append4262749607566113174_set_a @ Ys4 @ Zs )
= Xs ) ) ) ) ).
% append_eq_Cons_conv
thf(fact_328_append__eq__Cons__conv,axiom,
! [Ys: list_nat,Zs: list_nat,X: nat,Xs: list_nat] :
( ( ( append_nat @ Ys @ Zs )
= ( cons_nat @ X @ Xs ) )
= ( ( ( Ys = nil_nat )
& ( Zs
= ( cons_nat @ X @ Xs ) ) )
| ? [Ys4: list_nat] :
( ( Ys
= ( cons_nat @ X @ Ys4 ) )
& ( ( append_nat @ Ys4 @ Zs )
= Xs ) ) ) ) ).
% append_eq_Cons_conv
thf(fact_329_Cons__eq__append__conv,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a,Ys: list_mapping_a_set_a,Zs: list_mapping_a_set_a] :
( ( ( cons_mapping_a_set_a @ X @ Xs )
= ( append4262749607566113174_set_a @ Ys @ Zs ) )
= ( ( ( Ys = nil_mapping_a_set_a )
& ( ( cons_mapping_a_set_a @ X @ Xs )
= Zs ) )
| ? [Ys4: list_mapping_a_set_a] :
( ( ( cons_mapping_a_set_a @ X @ Ys4 )
= Ys )
& ( Xs
= ( append4262749607566113174_set_a @ Ys4 @ Zs ) ) ) ) ) ).
% Cons_eq_append_conv
thf(fact_330_Cons__eq__append__conv,axiom,
! [X: nat,Xs: list_nat,Ys: list_nat,Zs: list_nat] :
( ( ( cons_nat @ X @ Xs )
= ( append_nat @ Ys @ Zs ) )
= ( ( ( Ys = nil_nat )
& ( ( cons_nat @ X @ Xs )
= Zs ) )
| ? [Ys4: list_nat] :
( ( ( cons_nat @ X @ Ys4 )
= Ys )
& ( Xs
= ( append_nat @ Ys4 @ Zs ) ) ) ) ) ).
% Cons_eq_append_conv
thf(fact_331_rev__exhaust,axiom,
! [Xs: list_mapping_a_set_a] :
( ( Xs != nil_mapping_a_set_a )
=> ~ ! [Ys2: list_mapping_a_set_a,Y3: mapping_a_set_a] :
( Xs
!= ( append4262749607566113174_set_a @ Ys2 @ ( cons_mapping_a_set_a @ Y3 @ nil_mapping_a_set_a ) ) ) ) ).
% rev_exhaust
thf(fact_332_rev__exhaust,axiom,
! [Xs: list_nat] :
( ( Xs != nil_nat )
=> ~ ! [Ys2: list_nat,Y3: nat] :
( Xs
!= ( append_nat @ Ys2 @ ( cons_nat @ Y3 @ nil_nat ) ) ) ) ).
% rev_exhaust
thf(fact_333_rev__induct,axiom,
! [P: list_mapping_a_set_a > $o,Xs: list_mapping_a_set_a] :
( ( P @ nil_mapping_a_set_a )
=> ( ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a] :
( ( P @ Xs2 )
=> ( P @ ( append4262749607566113174_set_a @ Xs2 @ ( cons_mapping_a_set_a @ X3 @ nil_mapping_a_set_a ) ) ) )
=> ( P @ Xs ) ) ) ).
% rev_induct
thf(fact_334_rev__induct,axiom,
! [P: list_nat > $o,Xs: list_nat] :
( ( P @ nil_nat )
=> ( ! [X3: nat,Xs2: list_nat] :
( ( P @ Xs2 )
=> ( P @ ( append_nat @ Xs2 @ ( cons_nat @ X3 @ nil_nat ) ) ) )
=> ( P @ Xs ) ) ) ).
% rev_induct
thf(fact_335_longest__common__prefix_Ocases,axiom,
! [X: produc2412615728736211939_set_a] :
( ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a,Y3: mapping_a_set_a,Ys2: list_mapping_a_set_a] :
( X
!= ( produc3343591741951367323_set_a @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) @ ( cons_mapping_a_set_a @ Y3 @ Ys2 ) ) )
=> ( ! [Uv: list_mapping_a_set_a] :
( X
!= ( produc3343591741951367323_set_a @ nil_mapping_a_set_a @ Uv ) )
=> ~ ! [Uu2: list_mapping_a_set_a] :
( X
!= ( produc3343591741951367323_set_a @ Uu2 @ nil_mapping_a_set_a ) ) ) ) ).
% longest_common_prefix.cases
thf(fact_336_longest__common__prefix_Ocases,axiom,
! [X: produc1828647624359046049st_nat] :
( ! [X3: nat,Xs2: list_nat,Y3: nat,Ys2: list_nat] :
( X
!= ( produc2694037385005941721st_nat @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys2 ) ) )
=> ( ! [Uv: list_nat] :
( X
!= ( produc2694037385005941721st_nat @ nil_nat @ Uv ) )
=> ~ ! [Uu2: list_nat] :
( X
!= ( produc2694037385005941721st_nat @ Uu2 @ nil_nat ) ) ) ) ).
% longest_common_prefix.cases
thf(fact_337_is__prefix_Ocases,axiom,
! [X: produc2412615728736211939_set_a] :
( ! [Uu2: list_mapping_a_set_a] :
( X
!= ( produc3343591741951367323_set_a @ nil_mapping_a_set_a @ Uu2 ) )
=> ( ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a] :
( X
!= ( produc3343591741951367323_set_a @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) @ nil_mapping_a_set_a ) )
=> ~ ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a,Y3: mapping_a_set_a,Ys2: list_mapping_a_set_a] :
( X
!= ( produc3343591741951367323_set_a @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) @ ( cons_mapping_a_set_a @ Y3 @ Ys2 ) ) ) ) ) ).
% is_prefix.cases
thf(fact_338_is__prefix_Ocases,axiom,
! [X: produc1828647624359046049st_nat] :
( ! [Uu2: list_nat] :
( X
!= ( produc2694037385005941721st_nat @ nil_nat @ Uu2 ) )
=> ( ! [X3: nat,Xs2: list_nat] :
( X
!= ( produc2694037385005941721st_nat @ ( cons_nat @ X3 @ Xs2 ) @ nil_nat ) )
=> ~ ! [X3: nat,Xs2: list_nat,Y3: nat,Ys2: list_nat] :
( X
!= ( produc2694037385005941721st_nat @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys2 ) ) ) ) ) ).
% is_prefix.cases
thf(fact_339_shuffles_Ocases,axiom,
! [X: produc2412615728736211939_set_a] :
( ! [Ys2: list_mapping_a_set_a] :
( X
!= ( produc3343591741951367323_set_a @ nil_mapping_a_set_a @ Ys2 ) )
=> ( ! [Xs2: list_mapping_a_set_a] :
( X
!= ( produc3343591741951367323_set_a @ Xs2 @ nil_mapping_a_set_a ) )
=> ~ ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a,Y3: mapping_a_set_a,Ys2: list_mapping_a_set_a] :
( X
!= ( produc3343591741951367323_set_a @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) @ ( cons_mapping_a_set_a @ Y3 @ Ys2 ) ) ) ) ) ).
% shuffles.cases
thf(fact_340_shuffles_Ocases,axiom,
! [X: produc1828647624359046049st_nat] :
( ! [Ys2: list_nat] :
( X
!= ( produc2694037385005941721st_nat @ nil_nat @ Ys2 ) )
=> ( ! [Xs2: list_nat] :
( X
!= ( produc2694037385005941721st_nat @ Xs2 @ nil_nat ) )
=> ~ ! [X3: nat,Xs2: list_nat,Y3: nat,Ys2: list_nat] :
( X
!= ( produc2694037385005941721st_nat @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys2 ) ) ) ) ) ).
% shuffles.cases
thf(fact_341_splice_Ocases,axiom,
! [X: produc2412615728736211939_set_a] :
( ! [Ys2: list_mapping_a_set_a] :
( X
!= ( produc3343591741951367323_set_a @ nil_mapping_a_set_a @ Ys2 ) )
=> ~ ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a,Ys2: list_mapping_a_set_a] :
( X
!= ( produc3343591741951367323_set_a @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) @ Ys2 ) ) ) ).
% splice.cases
thf(fact_342_splice_Ocases,axiom,
! [X: produc1828647624359046049st_nat] :
( ! [Ys2: list_nat] :
( X
!= ( produc2694037385005941721st_nat @ nil_nat @ Ys2 ) )
=> ~ ! [X3: nat,Xs2: list_nat,Ys2: list_nat] :
( X
!= ( produc2694037385005941721st_nat @ ( cons_nat @ X3 @ Xs2 ) @ Ys2 ) ) ) ).
% splice.cases
thf(fact_343_less__Suc__eq__0__disj,axiom,
! [M: nat,N: nat] :
( ( ord_less_nat @ M @ ( suc @ N ) )
= ( ( M = zero_zero_nat )
| ? [J: nat] :
( ( M
= ( suc @ J ) )
& ( ord_less_nat @ J @ N ) ) ) ) ).
% less_Suc_eq_0_disj
thf(fact_344_gr0__implies__Suc,axiom,
! [N: nat] :
( ( ord_less_nat @ zero_zero_nat @ N )
=> ? [M2: nat] :
( N
= ( suc @ M2 ) ) ) ).
% gr0_implies_Suc
thf(fact_345_All__less__Suc2,axiom,
! [N: nat,P: nat > $o] :
( ( ! [I2: nat] :
( ( ord_less_nat @ I2 @ ( suc @ N ) )
=> ( P @ I2 ) ) )
= ( ( P @ zero_zero_nat )
& ! [I2: nat] :
( ( ord_less_nat @ I2 @ N )
=> ( P @ ( suc @ I2 ) ) ) ) ) ).
% All_less_Suc2
thf(fact_346_gr0__conv__Suc,axiom,
! [N: nat] :
( ( ord_less_nat @ zero_zero_nat @ N )
= ( ? [M6: nat] :
( N
= ( suc @ M6 ) ) ) ) ).
% gr0_conv_Suc
thf(fact_347_Ex__less__Suc2,axiom,
! [N: nat,P: nat > $o] :
( ( ? [I2: nat] :
( ( ord_less_nat @ I2 @ ( suc @ N ) )
& ( P @ I2 ) ) )
= ( ( P @ zero_zero_nat )
| ? [I2: nat] :
( ( ord_less_nat @ I2 @ N )
& ( P @ ( suc @ I2 ) ) ) ) ) ).
% Ex_less_Suc2
thf(fact_348_longest__common__prefix,axiom,
! [Xs: list_mapping_a_set_a,Ys: list_mapping_a_set_a] :
? [Ps: list_mapping_a_set_a,Xs3: list_mapping_a_set_a,Ys5: list_mapping_a_set_a] :
( ( Xs
= ( append4262749607566113174_set_a @ Ps @ Xs3 ) )
& ( Ys
= ( append4262749607566113174_set_a @ Ps @ Ys5 ) )
& ( ( Xs3 = nil_mapping_a_set_a )
| ( Ys5 = nil_mapping_a_set_a )
| ( ( hd_mapping_a_set_a @ Xs3 )
!= ( hd_mapping_a_set_a @ Ys5 ) ) ) ) ).
% longest_common_prefix
thf(fact_349_longest__common__prefix,axiom,
! [Xs: list_nat,Ys: list_nat] :
? [Ps: list_nat,Xs3: list_nat,Ys5: list_nat] :
( ( Xs
= ( append_nat @ Ps @ Xs3 ) )
& ( Ys
= ( append_nat @ Ps @ Ys5 ) )
& ( ( Xs3 = nil_nat )
| ( Ys5 = nil_nat )
| ( ( hd_nat @ Xs3 )
!= ( hd_nat @ Ys5 ) ) ) ) ).
% longest_common_prefix
thf(fact_350_hd__append,axiom,
! [Xs: list_mapping_a_set_a,Ys: list_mapping_a_set_a] :
( ( ( Xs = nil_mapping_a_set_a )
=> ( ( hd_mapping_a_set_a @ ( append4262749607566113174_set_a @ Xs @ Ys ) )
= ( hd_mapping_a_set_a @ Ys ) ) )
& ( ( Xs != nil_mapping_a_set_a )
=> ( ( hd_mapping_a_set_a @ ( append4262749607566113174_set_a @ Xs @ Ys ) )
= ( hd_mapping_a_set_a @ Xs ) ) ) ) ).
% hd_append
thf(fact_351_hd__append,axiom,
! [Xs: list_nat,Ys: list_nat] :
( ( ( Xs = nil_nat )
=> ( ( hd_nat @ ( append_nat @ Xs @ Ys ) )
= ( hd_nat @ Ys ) ) )
& ( ( Xs != nil_nat )
=> ( ( hd_nat @ ( append_nat @ Xs @ Ys ) )
= ( hd_nat @ Xs ) ) ) ) ).
% hd_append
thf(fact_352_nths__Cons,axiom,
! [X: mapping_a_set_a,L: list_mapping_a_set_a,A2: set_nat] :
( ( nths_mapping_a_set_a @ ( cons_mapping_a_set_a @ X @ L ) @ A2 )
= ( append4262749607566113174_set_a @ ( if_lis8209991044144858171_set_a @ ( member_nat @ zero_zero_nat @ A2 ) @ ( cons_mapping_a_set_a @ X @ nil_mapping_a_set_a ) @ nil_mapping_a_set_a )
@ ( nths_mapping_a_set_a @ L
@ ( collect_nat
@ ^ [J: nat] : ( member_nat @ ( suc @ J ) @ A2 ) ) ) ) ) ).
% nths_Cons
thf(fact_353_nths__Cons,axiom,
! [X: nat,L: list_nat,A2: set_nat] :
( ( nths_nat @ ( cons_nat @ X @ L ) @ A2 )
= ( append_nat @ ( if_list_nat @ ( member_nat @ zero_zero_nat @ A2 ) @ ( cons_nat @ X @ nil_nat ) @ nil_nat )
@ ( nths_nat @ L
@ ( collect_nat
@ ^ [J: nat] : ( member_nat @ ( suc @ J ) @ A2 ) ) ) ) ) ).
% nths_Cons
thf(fact_354_rev_Osimps_I2_J,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( rev_mapping_a_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) )
= ( append4262749607566113174_set_a @ ( rev_mapping_a_set_a @ Xs ) @ ( cons_mapping_a_set_a @ X @ nil_mapping_a_set_a ) ) ) ).
% rev.simps(2)
thf(fact_355_rev_Osimps_I2_J,axiom,
! [X: nat,Xs: list_nat] :
( ( rev_nat @ ( cons_nat @ X @ Xs ) )
= ( append_nat @ ( rev_nat @ Xs ) @ ( cons_nat @ X @ nil_nat ) ) ) ).
% rev.simps(2)
thf(fact_356_upt__conv__Cons,axiom,
! [I: nat,J2: nat] :
( ( ord_less_nat @ I @ J2 )
=> ( ( upt @ I @ J2 )
= ( cons_nat @ I @ ( upt @ ( suc @ I ) @ J2 ) ) ) ) ).
% upt_conv_Cons
thf(fact_357_prefixes__snoc,axiom,
! [Xs: list_mapping_a_set_a,X: mapping_a_set_a] :
( ( prefix4582622650860598052_set_a @ ( append4262749607566113174_set_a @ Xs @ ( cons_mapping_a_set_a @ X @ nil_mapping_a_set_a ) ) )
= ( append5300639281392126886_set_a @ ( prefix4582622650860598052_set_a @ Xs ) @ ( cons_l6707406555391138123_set_a @ ( append4262749607566113174_set_a @ Xs @ ( cons_mapping_a_set_a @ X @ nil_mapping_a_set_a ) ) @ nil_li1965212427176585467_set_a ) ) ) ).
% prefixes_snoc
thf(fact_358_prefixes__snoc,axiom,
! [Xs: list_nat,X: nat] :
( ( prefixes_nat @ ( append_nat @ Xs @ ( cons_nat @ X @ nil_nat ) ) )
= ( append_list_nat @ ( prefixes_nat @ Xs ) @ ( cons_list_nat @ ( append_nat @ Xs @ ( cons_nat @ X @ nil_nat ) ) @ nil_list_nat ) ) ) ).
% prefixes_snoc
thf(fact_359_Succ__def,axiom,
( bNF_Gr6033724282919027222_set_a
= ( ^ [Kl: set_li5718660665068022583_set_a,Kl2: list_mapping_a_set_a] :
( collec8416340978370123974_set_a
@ ^ [K: mapping_a_set_a] : ( member2763587292577307288_set_a @ ( append4262749607566113174_set_a @ Kl2 @ ( cons_mapping_a_set_a @ K @ nil_mapping_a_set_a ) ) @ Kl ) ) ) ) ).
% Succ_def
thf(fact_360_Succ__def,axiom,
( bNF_Gr6352880689984616693cc_nat
= ( ^ [Kl: set_list_nat,Kl2: list_nat] :
( collect_nat
@ ^ [K: nat] : ( member_list_nat @ ( append_nat @ Kl2 @ ( cons_nat @ K @ nil_nat ) ) @ Kl ) ) ) ) ).
% Succ_def
thf(fact_361_upt__rec__numeral,axiom,
! [M: num,N: num] :
( ( ( ord_less_nat @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ N ) )
=> ( ( upt @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ N ) )
= ( cons_nat @ ( numeral_numeral_nat @ M ) @ ( upt @ ( suc @ ( numeral_numeral_nat @ M ) ) @ ( numeral_numeral_nat @ N ) ) ) ) )
& ( ~ ( ord_less_nat @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ N ) )
=> ( ( upt @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ N ) )
= nil_nat ) ) ) ).
% upt_rec_numeral
thf(fact_362_SuccI,axiom,
! [Kl3: list_mapping_a_set_a,K2: mapping_a_set_a,Kl4: set_li5718660665068022583_set_a] :
( ( member2763587292577307288_set_a @ ( append4262749607566113174_set_a @ Kl3 @ ( cons_mapping_a_set_a @ K2 @ nil_mapping_a_set_a ) ) @ Kl4 )
=> ( member5773590555267836296_set_a @ K2 @ ( bNF_Gr6033724282919027222_set_a @ Kl4 @ Kl3 ) ) ) ).
% SuccI
thf(fact_363_SuccI,axiom,
! [Kl3: list_nat,K2: nat,Kl4: set_list_nat] :
( ( member_list_nat @ ( append_nat @ Kl3 @ ( cons_nat @ K2 @ nil_nat ) ) @ Kl4 )
=> ( member_nat @ K2 @ ( bNF_Gr6352880689984616693cc_nat @ Kl4 @ Kl3 ) ) ) ).
% SuccI
thf(fact_364_SuccD,axiom,
! [K2: mapping_a_set_a,Kl4: set_li5718660665068022583_set_a,Kl3: list_mapping_a_set_a] :
( ( member5773590555267836296_set_a @ K2 @ ( bNF_Gr6033724282919027222_set_a @ Kl4 @ Kl3 ) )
=> ( member2763587292577307288_set_a @ ( append4262749607566113174_set_a @ Kl3 @ ( cons_mapping_a_set_a @ K2 @ nil_mapping_a_set_a ) ) @ Kl4 ) ) ).
% SuccD
thf(fact_365_SuccD,axiom,
! [K2: nat,Kl4: set_list_nat,Kl3: list_nat] :
( ( member_nat @ K2 @ ( bNF_Gr6352880689984616693cc_nat @ Kl4 @ Kl3 ) )
=> ( member_list_nat @ ( append_nat @ Kl3 @ ( cons_nat @ K2 @ nil_nat ) ) @ Kl4 ) ) ).
% SuccD
thf(fact_366_hd__prefixes,axiom,
! [Xs: list_mapping_a_set_a] :
( ( hd_lis1041256309613100374_set_a @ ( prefix4582622650860598052_set_a @ Xs ) )
= nil_mapping_a_set_a ) ).
% hd_prefixes
thf(fact_367_hd__prefixes,axiom,
! [Xs: list_nat] :
( ( hd_list_nat @ ( prefixes_nat @ Xs ) )
= nil_nat ) ).
% hd_prefixes
thf(fact_368_prefixes_Osimps_I1_J,axiom,
( ( prefix4582622650860598052_set_a @ nil_mapping_a_set_a )
= ( cons_l6707406555391138123_set_a @ nil_mapping_a_set_a @ nil_li1965212427176585467_set_a ) ) ).
% prefixes.simps(1)
thf(fact_369_prefixes_Osimps_I1_J,axiom,
( ( prefixes_nat @ nil_nat )
= ( cons_list_nat @ nil_nat @ nil_list_nat ) ) ).
% prefixes.simps(1)
thf(fact_370_prefixes__eq__snoc,axiom,
! [Ys: list_mapping_a_set_a,Xs: list_l8399423937273897361_set_a,X: list_mapping_a_set_a] :
( ( ( prefix4582622650860598052_set_a @ Ys )
= ( append5300639281392126886_set_a @ Xs @ ( cons_l6707406555391138123_set_a @ X @ nil_li1965212427176585467_set_a ) ) )
= ( ( ( ( Ys = nil_mapping_a_set_a )
& ( Xs = nil_li1965212427176585467_set_a ) )
| ? [Z: mapping_a_set_a,Zs2: list_mapping_a_set_a] :
( ( Ys
= ( append4262749607566113174_set_a @ Zs2 @ ( cons_mapping_a_set_a @ Z @ nil_mapping_a_set_a ) ) )
& ( Xs
= ( prefix4582622650860598052_set_a @ Zs2 ) ) ) )
& ( X = Ys ) ) ) ).
% prefixes_eq_snoc
thf(fact_371_prefixes__eq__snoc,axiom,
! [Ys: list_nat,Xs: list_list_nat,X: list_nat] :
( ( ( prefixes_nat @ Ys )
= ( append_list_nat @ Xs @ ( cons_list_nat @ X @ nil_list_nat ) ) )
= ( ( ( ( Ys = nil_nat )
& ( Xs = nil_list_nat ) )
| ? [Z: nat,Zs2: list_nat] :
( ( Ys
= ( append_nat @ Zs2 @ ( cons_nat @ Z @ nil_nat ) ) )
& ( Xs
= ( prefixes_nat @ Zs2 ) ) ) )
& ( X = Ys ) ) ) ).
% prefixes_eq_snoc
thf(fact_372_numeral__less__iff,axiom,
! [M: num,N: num] :
( ( ord_less_nat @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ N ) )
= ( ord_less_num @ M @ N ) ) ).
% numeral_less_iff
thf(fact_373_zero__less__numeral,axiom,
! [N: num] : ( ord_less_nat @ zero_zero_nat @ ( numeral_numeral_nat @ N ) ) ).
% zero_less_numeral
thf(fact_374_not__numeral__less__zero,axiom,
! [N: num] :
~ ( ord_less_nat @ ( numeral_numeral_nat @ N ) @ zero_zero_nat ) ).
% not_numeral_less_zero
thf(fact_375_numeral__eq__iff,axiom,
! [M: num,N: num] :
( ( ( numeral_numeral_nat @ M )
= ( numeral_numeral_nat @ N ) )
= ( M = N ) ) ).
% numeral_eq_iff
thf(fact_376_empty__Shift,axiom,
! [Kl4: set_li5718660665068022583_set_a,K2: mapping_a_set_a] :
( ( member2763587292577307288_set_a @ nil_mapping_a_set_a @ Kl4 )
=> ( ( member5773590555267836296_set_a @ K2 @ ( bNF_Gr6033724282919027222_set_a @ Kl4 @ nil_mapping_a_set_a ) )
=> ( member2763587292577307288_set_a @ nil_mapping_a_set_a @ ( bNF_Gr7843483351733849746_set_a @ Kl4 @ K2 ) ) ) ) ).
% empty_Shift
thf(fact_377_empty__Shift,axiom,
! [Kl4: set_list_nat,K2: nat] :
( ( member_list_nat @ nil_nat @ Kl4 )
=> ( ( member_nat @ K2 @ ( bNF_Gr6352880689984616693cc_nat @ Kl4 @ nil_nat ) )
=> ( member_list_nat @ nil_nat @ ( bNF_Gr1872714664788909425ft_nat @ Kl4 @ K2 ) ) ) ) ).
% empty_Shift
thf(fact_378_ShiftD,axiom,
! [Kl3: list_mapping_a_set_a,Kl4: set_li5718660665068022583_set_a,K2: mapping_a_set_a] :
( ( member2763587292577307288_set_a @ Kl3 @ ( bNF_Gr7843483351733849746_set_a @ Kl4 @ K2 ) )
=> ( member2763587292577307288_set_a @ ( cons_mapping_a_set_a @ K2 @ Kl3 ) @ Kl4 ) ) ).
% ShiftD
thf(fact_379_ShiftD,axiom,
! [Kl3: list_nat,Kl4: set_list_nat,K2: nat] :
( ( member_list_nat @ Kl3 @ ( bNF_Gr1872714664788909425ft_nat @ Kl4 @ K2 ) )
=> ( member_list_nat @ ( cons_nat @ K2 @ Kl3 ) @ Kl4 ) ) ).
% ShiftD
thf(fact_380_Shift__def,axiom,
( bNF_Gr7843483351733849746_set_a
= ( ^ [Kl: set_li5718660665068022583_set_a,K: mapping_a_set_a] :
( collec7257000206306202326_set_a
@ ^ [Kl2: list_mapping_a_set_a] : ( member2763587292577307288_set_a @ ( cons_mapping_a_set_a @ K @ Kl2 ) @ Kl ) ) ) ) ).
% Shift_def
thf(fact_381_Shift__def,axiom,
( bNF_Gr1872714664788909425ft_nat
= ( ^ [Kl: set_list_nat,K: nat] :
( collect_list_nat
@ ^ [Kl2: list_nat] : ( member_list_nat @ ( cons_nat @ K @ Kl2 ) @ Kl ) ) ) ) ).
% Shift_def
thf(fact_382_less__numeral__extra_I3_J,axiom,
~ ( ord_less_nat @ zero_zero_nat @ zero_zero_nat ) ).
% less_numeral_extra(3)
thf(fact_383_zero__neq__numeral,axiom,
! [N: num] :
( zero_zero_nat
!= ( numeral_numeral_nat @ N ) ) ).
% zero_neq_numeral
thf(fact_384_Succ__Shift,axiom,
! [Kl4: set_li5718660665068022583_set_a,K2: mapping_a_set_a,Kl3: list_mapping_a_set_a] :
( ( bNF_Gr6033724282919027222_set_a @ ( bNF_Gr7843483351733849746_set_a @ Kl4 @ K2 ) @ Kl3 )
= ( bNF_Gr6033724282919027222_set_a @ Kl4 @ ( cons_mapping_a_set_a @ K2 @ Kl3 ) ) ) ).
% Succ_Shift
thf(fact_385_Succ__Shift,axiom,
! [Kl4: set_list_nat,K2: nat,Kl3: list_nat] :
( ( bNF_Gr6352880689984616693cc_nat @ ( bNF_Gr1872714664788909425ft_nat @ Kl4 @ K2 ) @ Kl3 )
= ( bNF_Gr6352880689984616693cc_nat @ Kl4 @ ( cons_nat @ K2 @ Kl3 ) ) ) ).
% Succ_Shift
thf(fact_386_suffixes__eq__snoc,axiom,
! [Ys: list_mapping_a_set_a,Xs: list_l8399423937273897361_set_a,X: list_mapping_a_set_a] :
( ( ( suffix4092287087677702947_set_a @ Ys )
= ( append5300639281392126886_set_a @ Xs @ ( cons_l6707406555391138123_set_a @ X @ nil_li1965212427176585467_set_a ) ) )
= ( ( ( ( Ys = nil_mapping_a_set_a )
& ( Xs = nil_li1965212427176585467_set_a ) )
| ? [Z: mapping_a_set_a,Zs2: list_mapping_a_set_a] :
( ( Ys
= ( cons_mapping_a_set_a @ Z @ Zs2 ) )
& ( Xs
= ( suffix4092287087677702947_set_a @ Zs2 ) ) ) )
& ( X = Ys ) ) ) ).
% suffixes_eq_snoc
thf(fact_387_suffixes__eq__snoc,axiom,
! [Ys: list_nat,Xs: list_list_nat,X: list_nat] :
( ( ( suffixes_nat @ Ys )
= ( append_list_nat @ Xs @ ( cons_list_nat @ X @ nil_list_nat ) ) )
= ( ( ( ( Ys = nil_nat )
& ( Xs = nil_list_nat ) )
| ? [Z: nat,Zs2: list_nat] :
( ( Ys
= ( cons_nat @ Z @ Zs2 ) )
& ( Xs
= ( suffixes_nat @ Zs2 ) ) ) )
& ( X = Ys ) ) ) ).
% suffixes_eq_snoc
thf(fact_388_pow__list_Oelims,axiom,
! [X: list_mapping_a_set_a,Y: list_l8399423937273897361_set_a] :
( ( ( pow_li8443515580676963514_set_a @ X )
= Y )
=> ( ( ( X = nil_mapping_a_set_a )
=> ( Y
!= ( cons_l6707406555391138123_set_a @ nil_mapping_a_set_a @ nil_li1965212427176585467_set_a ) ) )
=> ~ ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a] :
( ( X
= ( cons_mapping_a_set_a @ X3 @ Xs2 ) )
=> ( Y
!= ( append5300639281392126886_set_a @ ( pow_li8443515580676963514_set_a @ Xs2 ) @ ( map_li7167894565733511880_set_a @ ( cons_mapping_a_set_a @ X3 ) @ ( pow_li8443515580676963514_set_a @ Xs2 ) ) ) ) ) ) ) ).
% pow_list.elims
thf(fact_389_pow__list_Oelims,axiom,
! [X: list_nat,Y: list_list_nat] :
( ( ( pow_list_nat @ X )
= Y )
=> ( ( ( X = nil_nat )
=> ( Y
!= ( cons_list_nat @ nil_nat @ nil_list_nat ) ) )
=> ~ ! [X3: nat,Xs2: list_nat] :
( ( X
= ( cons_nat @ X3 @ Xs2 ) )
=> ( Y
!= ( append_list_nat @ ( pow_list_nat @ Xs2 ) @ ( map_li7225945977422193158st_nat @ ( cons_nat @ X3 ) @ ( pow_list_nat @ Xs2 ) ) ) ) ) ) ) ).
% pow_list.elims
thf(fact_390_map__ident,axiom,
( ( map_nat_nat
@ ^ [X4: nat] : X4 )
= ( ^ [Xs4: list_nat] : Xs4 ) ) ).
% map_ident
thf(fact_391_list_Omap__disc__iff,axiom,
! [F: mapping_a_set_a > mapping_a_set_a,A: list_mapping_a_set_a] :
( ( ( map_ma4957267141589346216_set_a @ F @ A )
= nil_mapping_a_set_a )
= ( A = nil_mapping_a_set_a ) ) ).
% list.map_disc_iff
thf(fact_392_list_Omap__disc__iff,axiom,
! [F: nat > mapping_a_set_a,A: list_nat] :
( ( ( map_na9002495296056650887_set_a @ F @ A )
= nil_mapping_a_set_a )
= ( A = nil_nat ) ) ).
% list.map_disc_iff
thf(fact_393_list_Omap__disc__iff,axiom,
! [F: mapping_a_set_a > nat,A: list_mapping_a_set_a] :
( ( ( map_ma4603351842386580103_a_nat @ F @ A )
= nil_nat )
= ( A = nil_mapping_a_set_a ) ) ).
% list.map_disc_iff
thf(fact_394_list_Omap__disc__iff,axiom,
! [F: nat > nat,A: list_nat] :
( ( ( map_nat_nat @ F @ A )
= nil_nat )
= ( A = nil_nat ) ) ).
% list.map_disc_iff
thf(fact_395_Nil__is__map__conv,axiom,
! [F: mapping_a_set_a > mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( nil_mapping_a_set_a
= ( map_ma4957267141589346216_set_a @ F @ Xs ) )
= ( Xs = nil_mapping_a_set_a ) ) ).
% Nil_is_map_conv
thf(fact_396_Nil__is__map__conv,axiom,
! [F: nat > mapping_a_set_a,Xs: list_nat] :
( ( nil_mapping_a_set_a
= ( map_na9002495296056650887_set_a @ F @ Xs ) )
= ( Xs = nil_nat ) ) ).
% Nil_is_map_conv
thf(fact_397_Nil__is__map__conv,axiom,
! [F: mapping_a_set_a > nat,Xs: list_mapping_a_set_a] :
( ( nil_nat
= ( map_ma4603351842386580103_a_nat @ F @ Xs ) )
= ( Xs = nil_mapping_a_set_a ) ) ).
% Nil_is_map_conv
thf(fact_398_Nil__is__map__conv,axiom,
! [F: nat > nat,Xs: list_nat] :
( ( nil_nat
= ( map_nat_nat @ F @ Xs ) )
= ( Xs = nil_nat ) ) ).
% Nil_is_map_conv
thf(fact_399_map__is__Nil__conv,axiom,
! [F: mapping_a_set_a > mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( ( map_ma4957267141589346216_set_a @ F @ Xs )
= nil_mapping_a_set_a )
= ( Xs = nil_mapping_a_set_a ) ) ).
% map_is_Nil_conv
thf(fact_400_map__is__Nil__conv,axiom,
! [F: nat > mapping_a_set_a,Xs: list_nat] :
( ( ( map_na9002495296056650887_set_a @ F @ Xs )
= nil_mapping_a_set_a )
= ( Xs = nil_nat ) ) ).
% map_is_Nil_conv
thf(fact_401_map__is__Nil__conv,axiom,
! [F: mapping_a_set_a > nat,Xs: list_mapping_a_set_a] :
( ( ( map_ma4603351842386580103_a_nat @ F @ Xs )
= nil_nat )
= ( Xs = nil_mapping_a_set_a ) ) ).
% map_is_Nil_conv
thf(fact_402_map__is__Nil__conv,axiom,
! [F: nat > nat,Xs: list_nat] :
( ( ( map_nat_nat @ F @ Xs )
= nil_nat )
= ( Xs = nil_nat ) ) ).
% map_is_Nil_conv
thf(fact_403_map__append,axiom,
! [F: nat > nat,Xs: list_nat,Ys: list_nat] :
( ( map_nat_nat @ F @ ( append_nat @ Xs @ Ys ) )
= ( append_nat @ ( map_nat_nat @ F @ Xs ) @ ( map_nat_nat @ F @ Ys ) ) ) ).
% map_append
thf(fact_404_hd__suffixes,axiom,
! [Xs: list_mapping_a_set_a] :
( ( hd_lis1041256309613100374_set_a @ ( suffix4092287087677702947_set_a @ Xs ) )
= nil_mapping_a_set_a ) ).
% hd_suffixes
thf(fact_405_hd__suffixes,axiom,
! [Xs: list_nat] :
( ( hd_list_nat @ ( suffixes_nat @ Xs ) )
= nil_nat ) ).
% hd_suffixes
thf(fact_406_suffixes__snoc,axiom,
! [Xs: list_mapping_a_set_a,X: mapping_a_set_a] :
( ( suffix4092287087677702947_set_a @ ( append4262749607566113174_set_a @ Xs @ ( cons_mapping_a_set_a @ X @ nil_mapping_a_set_a ) ) )
= ( cons_l6707406555391138123_set_a @ nil_mapping_a_set_a
@ ( map_li7167894565733511880_set_a
@ ^ [Ys3: list_mapping_a_set_a] : ( append4262749607566113174_set_a @ Ys3 @ ( cons_mapping_a_set_a @ X @ nil_mapping_a_set_a ) )
@ ( suffix4092287087677702947_set_a @ Xs ) ) ) ) ).
% suffixes_snoc
thf(fact_407_suffixes__snoc,axiom,
! [Xs: list_nat,X: nat] :
( ( suffixes_nat @ ( append_nat @ Xs @ ( cons_nat @ X @ nil_nat ) ) )
= ( cons_list_nat @ nil_nat
@ ( map_li7225945977422193158st_nat
@ ^ [Ys3: list_nat] : ( append_nat @ Ys3 @ ( cons_nat @ X @ nil_nat ) )
@ ( suffixes_nat @ Xs ) ) ) ) ).
% suffixes_snoc
thf(fact_408_list_Omap__ident,axiom,
! [T2: list_nat] :
( ( map_nat_nat
@ ^ [X4: nat] : X4
@ T2 )
= T2 ) ).
% list.map_ident
thf(fact_409_map__eq__Cons__conv,axiom,
! [F: mapping_a_set_a > mapping_a_set_a,Xs: list_mapping_a_set_a,Y: mapping_a_set_a,Ys: list_mapping_a_set_a] :
( ( ( map_ma4957267141589346216_set_a @ F @ Xs )
= ( cons_mapping_a_set_a @ Y @ Ys ) )
= ( ? [Z: mapping_a_set_a,Zs2: list_mapping_a_set_a] :
( ( Xs
= ( cons_mapping_a_set_a @ Z @ Zs2 ) )
& ( ( F @ Z )
= Y )
& ( ( map_ma4957267141589346216_set_a @ F @ Zs2 )
= Ys ) ) ) ) ).
% map_eq_Cons_conv
thf(fact_410_map__eq__Cons__conv,axiom,
! [F: nat > mapping_a_set_a,Xs: list_nat,Y: mapping_a_set_a,Ys: list_mapping_a_set_a] :
( ( ( map_na9002495296056650887_set_a @ F @ Xs )
= ( cons_mapping_a_set_a @ Y @ Ys ) )
= ( ? [Z: nat,Zs2: list_nat] :
( ( Xs
= ( cons_nat @ Z @ Zs2 ) )
& ( ( F @ Z )
= Y )
& ( ( map_na9002495296056650887_set_a @ F @ Zs2 )
= Ys ) ) ) ) ).
% map_eq_Cons_conv
thf(fact_411_map__eq__Cons__conv,axiom,
! [F: mapping_a_set_a > nat,Xs: list_mapping_a_set_a,Y: nat,Ys: list_nat] :
( ( ( map_ma4603351842386580103_a_nat @ F @ Xs )
= ( cons_nat @ Y @ Ys ) )
= ( ? [Z: mapping_a_set_a,Zs2: list_mapping_a_set_a] :
( ( Xs
= ( cons_mapping_a_set_a @ Z @ Zs2 ) )
& ( ( F @ Z )
= Y )
& ( ( map_ma4603351842386580103_a_nat @ F @ Zs2 )
= Ys ) ) ) ) ).
% map_eq_Cons_conv
thf(fact_412_map__eq__Cons__conv,axiom,
! [F: nat > nat,Xs: list_nat,Y: nat,Ys: list_nat] :
( ( ( map_nat_nat @ F @ Xs )
= ( cons_nat @ Y @ Ys ) )
= ( ? [Z: nat,Zs2: list_nat] :
( ( Xs
= ( cons_nat @ Z @ Zs2 ) )
& ( ( F @ Z )
= Y )
& ( ( map_nat_nat @ F @ Zs2 )
= Ys ) ) ) ) ).
% map_eq_Cons_conv
thf(fact_413_Cons__eq__map__conv,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a,F: mapping_a_set_a > mapping_a_set_a,Ys: list_mapping_a_set_a] :
( ( ( cons_mapping_a_set_a @ X @ Xs )
= ( map_ma4957267141589346216_set_a @ F @ Ys ) )
= ( ? [Z: mapping_a_set_a,Zs2: list_mapping_a_set_a] :
( ( Ys
= ( cons_mapping_a_set_a @ Z @ Zs2 ) )
& ( X
= ( F @ Z ) )
& ( Xs
= ( map_ma4957267141589346216_set_a @ F @ Zs2 ) ) ) ) ) ).
% Cons_eq_map_conv
thf(fact_414_Cons__eq__map__conv,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a,F: nat > mapping_a_set_a,Ys: list_nat] :
( ( ( cons_mapping_a_set_a @ X @ Xs )
= ( map_na9002495296056650887_set_a @ F @ Ys ) )
= ( ? [Z: nat,Zs2: list_nat] :
( ( Ys
= ( cons_nat @ Z @ Zs2 ) )
& ( X
= ( F @ Z ) )
& ( Xs
= ( map_na9002495296056650887_set_a @ F @ Zs2 ) ) ) ) ) ).
% Cons_eq_map_conv
thf(fact_415_Cons__eq__map__conv,axiom,
! [X: nat,Xs: list_nat,F: mapping_a_set_a > nat,Ys: list_mapping_a_set_a] :
( ( ( cons_nat @ X @ Xs )
= ( map_ma4603351842386580103_a_nat @ F @ Ys ) )
= ( ? [Z: mapping_a_set_a,Zs2: list_mapping_a_set_a] :
( ( Ys
= ( cons_mapping_a_set_a @ Z @ Zs2 ) )
& ( X
= ( F @ Z ) )
& ( Xs
= ( map_ma4603351842386580103_a_nat @ F @ Zs2 ) ) ) ) ) ).
% Cons_eq_map_conv
thf(fact_416_Cons__eq__map__conv,axiom,
! [X: nat,Xs: list_nat,F: nat > nat,Ys: list_nat] :
( ( ( cons_nat @ X @ Xs )
= ( map_nat_nat @ F @ Ys ) )
= ( ? [Z: nat,Zs2: list_nat] :
( ( Ys
= ( cons_nat @ Z @ Zs2 ) )
& ( X
= ( F @ Z ) )
& ( Xs
= ( map_nat_nat @ F @ Zs2 ) ) ) ) ) ).
% Cons_eq_map_conv
thf(fact_417_map__eq__Cons__D,axiom,
! [F: mapping_a_set_a > mapping_a_set_a,Xs: list_mapping_a_set_a,Y: mapping_a_set_a,Ys: list_mapping_a_set_a] :
( ( ( map_ma4957267141589346216_set_a @ F @ Xs )
= ( cons_mapping_a_set_a @ Y @ Ys ) )
=> ? [Z2: mapping_a_set_a,Zs3: list_mapping_a_set_a] :
( ( Xs
= ( cons_mapping_a_set_a @ Z2 @ Zs3 ) )
& ( ( F @ Z2 )
= Y )
& ( ( map_ma4957267141589346216_set_a @ F @ Zs3 )
= Ys ) ) ) ).
% map_eq_Cons_D
thf(fact_418_map__eq__Cons__D,axiom,
! [F: nat > mapping_a_set_a,Xs: list_nat,Y: mapping_a_set_a,Ys: list_mapping_a_set_a] :
( ( ( map_na9002495296056650887_set_a @ F @ Xs )
= ( cons_mapping_a_set_a @ Y @ Ys ) )
=> ? [Z2: nat,Zs3: list_nat] :
( ( Xs
= ( cons_nat @ Z2 @ Zs3 ) )
& ( ( F @ Z2 )
= Y )
& ( ( map_na9002495296056650887_set_a @ F @ Zs3 )
= Ys ) ) ) ).
% map_eq_Cons_D
thf(fact_419_map__eq__Cons__D,axiom,
! [F: mapping_a_set_a > nat,Xs: list_mapping_a_set_a,Y: nat,Ys: list_nat] :
( ( ( map_ma4603351842386580103_a_nat @ F @ Xs )
= ( cons_nat @ Y @ Ys ) )
=> ? [Z2: mapping_a_set_a,Zs3: list_mapping_a_set_a] :
( ( Xs
= ( cons_mapping_a_set_a @ Z2 @ Zs3 ) )
& ( ( F @ Z2 )
= Y )
& ( ( map_ma4603351842386580103_a_nat @ F @ Zs3 )
= Ys ) ) ) ).
% map_eq_Cons_D
thf(fact_420_map__eq__Cons__D,axiom,
! [F: nat > nat,Xs: list_nat,Y: nat,Ys: list_nat] :
( ( ( map_nat_nat @ F @ Xs )
= ( cons_nat @ Y @ Ys ) )
=> ? [Z2: nat,Zs3: list_nat] :
( ( Xs
= ( cons_nat @ Z2 @ Zs3 ) )
& ( ( F @ Z2 )
= Y )
& ( ( map_nat_nat @ F @ Zs3 )
= Ys ) ) ) ).
% map_eq_Cons_D
thf(fact_421_Cons__eq__map__D,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a,F: mapping_a_set_a > mapping_a_set_a,Ys: list_mapping_a_set_a] :
( ( ( cons_mapping_a_set_a @ X @ Xs )
= ( map_ma4957267141589346216_set_a @ F @ Ys ) )
=> ? [Z2: mapping_a_set_a,Zs3: list_mapping_a_set_a] :
( ( Ys
= ( cons_mapping_a_set_a @ Z2 @ Zs3 ) )
& ( X
= ( F @ Z2 ) )
& ( Xs
= ( map_ma4957267141589346216_set_a @ F @ Zs3 ) ) ) ) ).
% Cons_eq_map_D
thf(fact_422_Cons__eq__map__D,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a,F: nat > mapping_a_set_a,Ys: list_nat] :
( ( ( cons_mapping_a_set_a @ X @ Xs )
= ( map_na9002495296056650887_set_a @ F @ Ys ) )
=> ? [Z2: nat,Zs3: list_nat] :
( ( Ys
= ( cons_nat @ Z2 @ Zs3 ) )
& ( X
= ( F @ Z2 ) )
& ( Xs
= ( map_na9002495296056650887_set_a @ F @ Zs3 ) ) ) ) ).
% Cons_eq_map_D
thf(fact_423_Cons__eq__map__D,axiom,
! [X: nat,Xs: list_nat,F: mapping_a_set_a > nat,Ys: list_mapping_a_set_a] :
( ( ( cons_nat @ X @ Xs )
= ( map_ma4603351842386580103_a_nat @ F @ Ys ) )
=> ? [Z2: mapping_a_set_a,Zs3: list_mapping_a_set_a] :
( ( Ys
= ( cons_mapping_a_set_a @ Z2 @ Zs3 ) )
& ( X
= ( F @ Z2 ) )
& ( Xs
= ( map_ma4603351842386580103_a_nat @ F @ Zs3 ) ) ) ) ).
% Cons_eq_map_D
thf(fact_424_Cons__eq__map__D,axiom,
! [X: nat,Xs: list_nat,F: nat > nat,Ys: list_nat] :
( ( ( cons_nat @ X @ Xs )
= ( map_nat_nat @ F @ Ys ) )
=> ? [Z2: nat,Zs3: list_nat] :
( ( Ys
= ( cons_nat @ Z2 @ Zs3 ) )
& ( X
= ( F @ Z2 ) )
& ( Xs
= ( map_nat_nat @ F @ Zs3 ) ) ) ) ).
% Cons_eq_map_D
thf(fact_425_list_Osimps_I9_J,axiom,
! [F: mapping_a_set_a > mapping_a_set_a,X21: mapping_a_set_a,X22: list_mapping_a_set_a] :
( ( map_ma4957267141589346216_set_a @ F @ ( cons_mapping_a_set_a @ X21 @ X22 ) )
= ( cons_mapping_a_set_a @ ( F @ X21 ) @ ( map_ma4957267141589346216_set_a @ F @ X22 ) ) ) ).
% list.simps(9)
thf(fact_426_list_Osimps_I9_J,axiom,
! [F: mapping_a_set_a > nat,X21: mapping_a_set_a,X22: list_mapping_a_set_a] :
( ( map_ma4603351842386580103_a_nat @ F @ ( cons_mapping_a_set_a @ X21 @ X22 ) )
= ( cons_nat @ ( F @ X21 ) @ ( map_ma4603351842386580103_a_nat @ F @ X22 ) ) ) ).
% list.simps(9)
thf(fact_427_list_Osimps_I9_J,axiom,
! [F: nat > mapping_a_set_a,X21: nat,X22: list_nat] :
( ( map_na9002495296056650887_set_a @ F @ ( cons_nat @ X21 @ X22 ) )
= ( cons_mapping_a_set_a @ ( F @ X21 ) @ ( map_na9002495296056650887_set_a @ F @ X22 ) ) ) ).
% list.simps(9)
thf(fact_428_list_Osimps_I9_J,axiom,
! [F: nat > nat,X21: nat,X22: list_nat] :
( ( map_nat_nat @ F @ ( cons_nat @ X21 @ X22 ) )
= ( cons_nat @ ( F @ X21 ) @ ( map_nat_nat @ F @ X22 ) ) ) ).
% list.simps(9)
thf(fact_429_list_Osimps_I8_J,axiom,
! [F: mapping_a_set_a > mapping_a_set_a] :
( ( map_ma4957267141589346216_set_a @ F @ nil_mapping_a_set_a )
= nil_mapping_a_set_a ) ).
% list.simps(8)
thf(fact_430_list_Osimps_I8_J,axiom,
! [F: mapping_a_set_a > nat] :
( ( map_ma4603351842386580103_a_nat @ F @ nil_mapping_a_set_a )
= nil_nat ) ).
% list.simps(8)
thf(fact_431_list_Osimps_I8_J,axiom,
! [F: nat > mapping_a_set_a] :
( ( map_na9002495296056650887_set_a @ F @ nil_nat )
= nil_mapping_a_set_a ) ).
% list.simps(8)
thf(fact_432_list_Osimps_I8_J,axiom,
! [F: nat > nat] :
( ( map_nat_nat @ F @ nil_nat )
= nil_nat ) ).
% list.simps(8)
thf(fact_433_map__eq__append__conv,axiom,
! [F: nat > nat,Xs: list_nat,Ys: list_nat,Zs: list_nat] :
( ( ( map_nat_nat @ F @ Xs )
= ( append_nat @ Ys @ Zs ) )
= ( ? [Us: list_nat,Vs: list_nat] :
( ( Xs
= ( append_nat @ Us @ Vs ) )
& ( Ys
= ( map_nat_nat @ F @ Us ) )
& ( Zs
= ( map_nat_nat @ F @ Vs ) ) ) ) ) ).
% map_eq_append_conv
thf(fact_434_append__eq__map__conv,axiom,
! [Ys: list_nat,Zs: list_nat,F: nat > nat,Xs: list_nat] :
( ( ( append_nat @ Ys @ Zs )
= ( map_nat_nat @ F @ Xs ) )
= ( ? [Us: list_nat,Vs: list_nat] :
( ( Xs
= ( append_nat @ Us @ Vs ) )
& ( Ys
= ( map_nat_nat @ F @ Us ) )
& ( Zs
= ( map_nat_nat @ F @ Vs ) ) ) ) ) ).
% append_eq_map_conv
thf(fact_435_rev__map,axiom,
! [F: nat > nat,Xs: list_nat] :
( ( rev_nat @ ( map_nat_nat @ F @ Xs ) )
= ( map_nat_nat @ F @ ( rev_nat @ Xs ) ) ) ).
% rev_map
thf(fact_436_prefixes__rev,axiom,
! [Xs: list_nat] :
( ( prefixes_nat @ ( rev_nat @ Xs ) )
= ( map_li7225945977422193158st_nat @ rev_nat @ ( suffixes_nat @ Xs ) ) ) ).
% prefixes_rev
thf(fact_437_suffixes__rev,axiom,
! [Xs: list_nat] :
( ( suffixes_nat @ ( rev_nat @ Xs ) )
= ( map_li7225945977422193158st_nat @ rev_nat @ ( prefixes_nat @ Xs ) ) ) ).
% suffixes_rev
thf(fact_438_prefixes__conv__suffixes,axiom,
( prefixes_nat
= ( ^ [Xs4: list_nat] : ( map_li7225945977422193158st_nat @ rev_nat @ ( suffixes_nat @ ( rev_nat @ Xs4 ) ) ) ) ) ).
% prefixes_conv_suffixes
thf(fact_439_suffixes__conv__prefixes,axiom,
( suffixes_nat
= ( ^ [Xs4: list_nat] : ( map_li7225945977422193158st_nat @ rev_nat @ ( prefixes_nat @ ( rev_nat @ Xs4 ) ) ) ) ) ).
% suffixes_conv_prefixes
thf(fact_440_nths__map,axiom,
! [F: nat > nat,Xs: list_nat,I4: set_nat] :
( ( nths_nat @ ( map_nat_nat @ F @ Xs ) @ I4 )
= ( map_nat_nat @ F @ ( nths_nat @ Xs @ I4 ) ) ) ).
% nths_map
thf(fact_441_list_Omap__sel_I1_J,axiom,
! [A: list_mapping_a_set_a,F: mapping_a_set_a > mapping_a_set_a] :
( ( A != nil_mapping_a_set_a )
=> ( ( hd_mapping_a_set_a @ ( map_ma4957267141589346216_set_a @ F @ A ) )
= ( F @ ( hd_mapping_a_set_a @ A ) ) ) ) ).
% list.map_sel(1)
thf(fact_442_list_Omap__sel_I1_J,axiom,
! [A: list_mapping_a_set_a,F: mapping_a_set_a > nat] :
( ( A != nil_mapping_a_set_a )
=> ( ( hd_nat @ ( map_ma4603351842386580103_a_nat @ F @ A ) )
= ( F @ ( hd_mapping_a_set_a @ A ) ) ) ) ).
% list.map_sel(1)
thf(fact_443_list_Omap__sel_I1_J,axiom,
! [A: list_nat,F: nat > mapping_a_set_a] :
( ( A != nil_nat )
=> ( ( hd_mapping_a_set_a @ ( map_na9002495296056650887_set_a @ F @ A ) )
= ( F @ ( hd_nat @ A ) ) ) ) ).
% list.map_sel(1)
thf(fact_444_list_Omap__sel_I1_J,axiom,
! [A: list_nat,F: nat > nat] :
( ( A != nil_nat )
=> ( ( hd_nat @ ( map_nat_nat @ F @ A ) )
= ( F @ ( hd_nat @ A ) ) ) ) ).
% list.map_sel(1)
thf(fact_445_hd__map,axiom,
! [Xs: list_mapping_a_set_a,F: mapping_a_set_a > mapping_a_set_a] :
( ( Xs != nil_mapping_a_set_a )
=> ( ( hd_mapping_a_set_a @ ( map_ma4957267141589346216_set_a @ F @ Xs ) )
= ( F @ ( hd_mapping_a_set_a @ Xs ) ) ) ) ).
% hd_map
thf(fact_446_hd__map,axiom,
! [Xs: list_mapping_a_set_a,F: mapping_a_set_a > nat] :
( ( Xs != nil_mapping_a_set_a )
=> ( ( hd_nat @ ( map_ma4603351842386580103_a_nat @ F @ Xs ) )
= ( F @ ( hd_mapping_a_set_a @ Xs ) ) ) ) ).
% hd_map
thf(fact_447_hd__map,axiom,
! [Xs: list_nat,F: nat > mapping_a_set_a] :
( ( Xs != nil_nat )
=> ( ( hd_mapping_a_set_a @ ( map_na9002495296056650887_set_a @ F @ Xs ) )
= ( F @ ( hd_nat @ Xs ) ) ) ) ).
% hd_map
thf(fact_448_hd__map,axiom,
! [Xs: list_nat,F: nat > nat] :
( ( Xs != nil_nat )
=> ( ( hd_nat @ ( map_nat_nat @ F @ Xs ) )
= ( F @ ( hd_nat @ Xs ) ) ) ) ).
% hd_map
thf(fact_449_subseqs_Osimps_I2_J,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( subseq2557973625717637724_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) )
= ( append5300639281392126886_set_a @ ( map_li7167894565733511880_set_a @ ( cons_mapping_a_set_a @ X ) @ ( subseq2557973625717637724_set_a @ Xs ) ) @ ( subseq2557973625717637724_set_a @ Xs ) ) ) ).
% subseqs.simps(2)
thf(fact_450_subseqs_Osimps_I2_J,axiom,
! [X: nat,Xs: list_nat] :
( ( subseqs_nat @ ( cons_nat @ X @ Xs ) )
= ( append_list_nat @ ( map_li7225945977422193158st_nat @ ( cons_nat @ X ) @ ( subseqs_nat @ Xs ) ) @ ( subseqs_nat @ Xs ) ) ) ).
% subseqs.simps(2)
thf(fact_451_pow__list_Osimps_I2_J,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( pow_li8443515580676963514_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) )
= ( append5300639281392126886_set_a @ ( pow_li8443515580676963514_set_a @ Xs ) @ ( map_li7167894565733511880_set_a @ ( cons_mapping_a_set_a @ X ) @ ( pow_li8443515580676963514_set_a @ Xs ) ) ) ) ).
% pow_list.simps(2)
thf(fact_452_pow__list_Osimps_I2_J,axiom,
! [X: nat,Xs: list_nat] :
( ( pow_list_nat @ ( cons_nat @ X @ Xs ) )
= ( append_list_nat @ ( pow_list_nat @ Xs ) @ ( map_li7225945977422193158st_nat @ ( cons_nat @ X ) @ ( pow_list_nat @ Xs ) ) ) ) ).
% pow_list.simps(2)
thf(fact_453_prefixes_Osimps_I2_J,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( prefix4582622650860598052_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) )
= ( cons_l6707406555391138123_set_a @ nil_mapping_a_set_a @ ( map_li7167894565733511880_set_a @ ( cons_mapping_a_set_a @ X ) @ ( prefix4582622650860598052_set_a @ Xs ) ) ) ) ).
% prefixes.simps(2)
thf(fact_454_prefixes_Osimps_I2_J,axiom,
! [X: nat,Xs: list_nat] :
( ( prefixes_nat @ ( cons_nat @ X @ Xs ) )
= ( cons_list_nat @ nil_nat @ ( map_li7225945977422193158st_nat @ ( cons_nat @ X ) @ ( prefixes_nat @ Xs ) ) ) ) ).
% prefixes.simps(2)
thf(fact_455_Sublist_Osuffixes_Osimps_I1_J,axiom,
( ( suffix4092287087677702947_set_a @ nil_mapping_a_set_a )
= ( cons_l6707406555391138123_set_a @ nil_mapping_a_set_a @ nil_li1965212427176585467_set_a ) ) ).
% Sublist.suffixes.simps(1)
thf(fact_456_Sublist_Osuffixes_Osimps_I1_J,axiom,
( ( suffixes_nat @ nil_nat )
= ( cons_list_nat @ nil_nat @ nil_list_nat ) ) ).
% Sublist.suffixes.simps(1)
thf(fact_457_sublists_Osimps_I2_J,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( sublis7562426436087478873_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) )
= ( append5300639281392126886_set_a @ ( sublis7562426436087478873_set_a @ Xs ) @ ( map_li7167894565733511880_set_a @ ( cons_mapping_a_set_a @ X ) @ ( prefix4582622650860598052_set_a @ Xs ) ) ) ) ).
% sublists.simps(2)
thf(fact_458_sublists_Osimps_I2_J,axiom,
! [X: nat,Xs: list_nat] :
( ( sublists_nat @ ( cons_nat @ X @ Xs ) )
= ( append_list_nat @ ( sublists_nat @ Xs ) @ ( map_li7225945977422193158st_nat @ ( cons_nat @ X ) @ ( prefixes_nat @ Xs ) ) ) ) ).
% sublists.simps(2)
thf(fact_459_Sublist_Osuffixes_Osimps_I2_J,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( suffix4092287087677702947_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) )
= ( append5300639281392126886_set_a @ ( suffix4092287087677702947_set_a @ Xs ) @ ( cons_l6707406555391138123_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) @ nil_li1965212427176585467_set_a ) ) ) ).
% Sublist.suffixes.simps(2)
thf(fact_460_Sublist_Osuffixes_Osimps_I2_J,axiom,
! [X: nat,Xs: list_nat] :
( ( suffixes_nat @ ( cons_nat @ X @ Xs ) )
= ( append_list_nat @ ( suffixes_nat @ Xs ) @ ( cons_list_nat @ ( cons_nat @ X @ Xs ) @ nil_list_nat ) ) ) ).
% Sublist.suffixes.simps(2)
thf(fact_461_lists__of__length_Oelims,axiom,
! [X: list_mapping_a_set_a,Xa: nat,Y: list_l8399423937273897361_set_a] :
( ( ( lists_628685718963753558_set_a @ X @ Xa )
= Y )
=> ( ( ( Xa = zero_zero_nat )
=> ( Y
!= ( cons_l6707406555391138123_set_a @ nil_mapping_a_set_a @ nil_li1965212427176585467_set_a ) ) )
=> ~ ! [N2: nat] :
( ( Xa
= ( suc @ N2 ) )
=> ( Y
!= ( concat3671710083786574464_set_a
@ ( map_li6987350538220096856_set_a
@ ^ [Xs4: list_mapping_a_set_a] :
( map_ma490051923195529400_set_a
@ ^ [X4: mapping_a_set_a] : ( cons_mapping_a_set_a @ X4 @ Xs4 )
@ X )
@ ( lists_628685718963753558_set_a @ X @ N2 ) ) ) ) ) ) ) ).
% lists_of_length.elims
thf(fact_462_lists__of__length_Oelims,axiom,
! [X: list_nat,Xa: nat,Y: list_list_nat] :
( ( ( lists_of_length_nat @ X @ Xa )
= Y )
=> ( ( ( Xa = zero_zero_nat )
=> ( Y
!= ( cons_list_nat @ nil_nat @ nil_list_nat ) ) )
=> ~ ! [N2: nat] :
( ( Xa
= ( suc @ N2 ) )
=> ( Y
!= ( concat_list_nat
@ ( map_li960784813134754710st_nat
@ ^ [Xs4: list_nat] :
( map_nat_list_nat
@ ^ [X4: nat] : ( cons_nat @ X4 @ Xs4 )
@ X )
@ ( lists_of_length_nat @ X @ N2 ) ) ) ) ) ) ) ).
% lists_of_length.elims
thf(fact_463_enumerate__simps_I2_J,axiom,
! [N: nat,X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( enumer415895375227969484_set_a @ N @ ( cons_mapping_a_set_a @ X @ Xs ) )
= ( cons_P5055657147124145240_set_a @ ( produc8955782708993416026_set_a @ N @ X ) @ ( enumer415895375227969484_set_a @ ( suc @ N ) @ Xs ) ) ) ).
% enumerate_simps(2)
thf(fact_464_enumerate__simps_I2_J,axiom,
! [N: nat,X: nat,Xs: list_nat] :
( ( enumerate_nat @ N @ ( cons_nat @ X @ Xs ) )
= ( cons_P6512896166579812791at_nat @ ( product_Pair_nat_nat @ N @ X ) @ ( enumerate_nat @ ( suc @ N ) @ Xs ) ) ) ).
% enumerate_simps(2)
thf(fact_465_pow__list_Opelims,axiom,
! [X: list_mapping_a_set_a,Y: list_l8399423937273897361_set_a] :
( ( ( pow_li8443515580676963514_set_a @ X )
= Y )
=> ( ( accp_l4949953582330668472_set_a @ pow_li3323435815140094819_set_a @ X )
=> ( ( ( X = nil_mapping_a_set_a )
=> ( ( Y
= ( cons_l6707406555391138123_set_a @ nil_mapping_a_set_a @ nil_li1965212427176585467_set_a ) )
=> ~ ( accp_l4949953582330668472_set_a @ pow_li3323435815140094819_set_a @ nil_mapping_a_set_a ) ) )
=> ~ ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a] :
( ( X
= ( cons_mapping_a_set_a @ X3 @ Xs2 ) )
=> ( ( Y
= ( append5300639281392126886_set_a @ ( pow_li8443515580676963514_set_a @ Xs2 ) @ ( map_li7167894565733511880_set_a @ ( cons_mapping_a_set_a @ X3 ) @ ( pow_li8443515580676963514_set_a @ Xs2 ) ) ) )
=> ~ ( accp_l4949953582330668472_set_a @ pow_li3323435815140094819_set_a @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) ) ) ) ) ) ) ).
% pow_list.pelims
thf(fact_466_pow__list_Opelims,axiom,
! [X: list_nat,Y: list_list_nat] :
( ( ( pow_list_nat @ X )
= Y )
=> ( ( accp_list_nat @ pow_list_rel_nat @ X )
=> ( ( ( X = nil_nat )
=> ( ( Y
= ( cons_list_nat @ nil_nat @ nil_list_nat ) )
=> ~ ( accp_list_nat @ pow_list_rel_nat @ nil_nat ) ) )
=> ~ ! [X3: nat,Xs2: list_nat] :
( ( X
= ( cons_nat @ X3 @ Xs2 ) )
=> ( ( Y
= ( append_list_nat @ ( pow_list_nat @ Xs2 ) @ ( map_li7225945977422193158st_nat @ ( cons_nat @ X3 ) @ ( pow_list_nat @ Xs2 ) ) ) )
=> ~ ( accp_list_nat @ pow_list_rel_nat @ ( cons_nat @ X3 @ Xs2 ) ) ) ) ) ) ) ).
% pow_list.pelims
thf(fact_467_enumerate__simps_I1_J,axiom,
! [N: nat] :
( ( enumer415895375227969484_set_a @ N @ nil_mapping_a_set_a )
= nil_Pr3815278418687809704_set_a ) ).
% enumerate_simps(1)
thf(fact_468_enumerate__simps_I1_J,axiom,
! [N: nat] :
( ( enumerate_nat @ N @ nil_nat )
= nil_Pr5478986624290739719at_nat ) ).
% enumerate_simps(1)
thf(fact_469_bind__simps_I1_J,axiom,
! [F: mapping_a_set_a > list_mapping_a_set_a] :
( ( bind_m8948031617290580587_set_a @ nil_mapping_a_set_a @ F )
= nil_mapping_a_set_a ) ).
% bind_simps(1)
thf(fact_470_bind__simps_I1_J,axiom,
! [F: mapping_a_set_a > list_nat] :
( ( bind_m3028898422562257738_a_nat @ nil_mapping_a_set_a @ F )
= nil_nat ) ).
% bind_simps(1)
thf(fact_471_bind__simps_I1_J,axiom,
! [F: nat > list_mapping_a_set_a] :
( ( bind_n7428041876232328522_set_a @ nil_nat @ F )
= nil_mapping_a_set_a ) ).
% bind_simps(1)
thf(fact_472_bind__simps_I1_J,axiom,
! [F: nat > list_nat] :
( ( bind_nat_nat @ nil_nat @ F )
= nil_nat ) ).
% bind_simps(1)
thf(fact_473_concat__map__singleton,axiom,
! [F: nat > nat,Xs: list_nat] :
( ( concat_nat
@ ( map_nat_list_nat
@ ^ [X4: nat] : ( cons_nat @ ( F @ X4 ) @ nil_nat )
@ Xs ) )
= ( map_nat_nat @ F @ Xs ) ) ).
% concat_map_singleton
thf(fact_474_enumerate__map__upt,axiom,
! [N: nat,F: nat > nat,M: nat] :
( ( enumerate_nat @ N @ ( map_nat_nat @ F @ ( upt @ N @ M ) ) )
= ( map_na7298421622053143531at_nat
@ ^ [K: nat] : ( product_Pair_nat_nat @ K @ ( F @ K ) )
@ ( upt @ N @ M ) ) ) ).
% enumerate_map_upt
thf(fact_475_map__Suc__upt,axiom,
! [M: nat,N: nat] :
( ( map_nat_nat @ suc @ ( upt @ M @ N ) )
= ( upt @ ( suc @ M ) @ ( suc @ N ) ) ) ).
% map_Suc_upt
thf(fact_476_concat__conv__foldr,axiom,
( concat6784524380904369520_set_a
= ( ^ [Xss2: list_l8399423937273897361_set_a] : ( foldr_8617676676015937451_set_a @ append4262749607566113174_set_a @ Xss2 @ nil_mapping_a_set_a ) ) ) ).
% concat_conv_foldr
thf(fact_477_concat__conv__foldr,axiom,
( concat_nat
= ( ^ [Xss2: list_list_nat] : ( foldr_6871341030409798377st_nat @ append_nat @ Xss2 @ nil_nat ) ) ) ).
% concat_conv_foldr
thf(fact_478_concat_Osimps_I1_J,axiom,
( ( concat6784524380904369520_set_a @ nil_li1965212427176585467_set_a )
= nil_mapping_a_set_a ) ).
% concat.simps(1)
thf(fact_479_concat_Osimps_I1_J,axiom,
( ( concat_nat @ nil_list_nat )
= nil_nat ) ).
% concat.simps(1)
thf(fact_480_product__lists_Osimps_I2_J,axiom,
! [Xs: list_mapping_a_set_a,Xss3: list_l8399423937273897361_set_a] :
( ( produc5800141938999160642_set_a @ ( cons_l6707406555391138123_set_a @ Xs @ Xss3 ) )
= ( concat3671710083786574464_set_a
@ ( map_ma8718683969823173448_set_a
@ ^ [X4: mapping_a_set_a] : ( map_li7167894565733511880_set_a @ ( cons_mapping_a_set_a @ X4 ) @ ( produc5800141938999160642_set_a @ Xss3 ) )
@ Xs ) ) ) ).
% product_lists.simps(2)
thf(fact_481_product__lists_Osimps_I2_J,axiom,
! [Xs: list_nat,Xss3: list_list_nat] :
( ( product_lists_nat @ ( cons_list_nat @ Xs @ Xss3 ) )
= ( concat_list_nat
@ ( map_na6205611841492582150st_nat
@ ^ [X4: nat] : ( map_li7225945977422193158st_nat @ ( cons_nat @ X4 ) @ ( product_lists_nat @ Xss3 ) )
@ Xs ) ) ) ).
% product_lists.simps(2)
thf(fact_482_map__concat,axiom,
! [F: nat > nat,Xs: list_list_nat] :
( ( map_nat_nat @ F @ ( concat_nat @ Xs ) )
= ( concat_nat @ ( map_li7225945977422193158st_nat @ ( map_nat_nat @ F ) @ Xs ) ) ) ).
% map_concat
thf(fact_483_rev__concat,axiom,
! [Xs: list_list_nat] :
( ( rev_nat @ ( concat_nat @ Xs ) )
= ( concat_nat @ ( map_li7225945977422193158st_nat @ rev_nat @ ( rev_list_nat @ Xs ) ) ) ) ).
% rev_concat
thf(fact_484_map__upt__Suc,axiom,
! [F: nat > mapping_a_set_a,N: nat] :
( ( map_na9002495296056650887_set_a @ F @ ( upt @ zero_zero_nat @ ( suc @ N ) ) )
= ( cons_mapping_a_set_a @ ( F @ zero_zero_nat )
@ ( map_na9002495296056650887_set_a
@ ^ [I2: nat] : ( F @ ( suc @ I2 ) )
@ ( upt @ zero_zero_nat @ N ) ) ) ) ).
% map_upt_Suc
thf(fact_485_map__upt__Suc,axiom,
! [F: nat > nat,N: nat] :
( ( map_nat_nat @ F @ ( upt @ zero_zero_nat @ ( suc @ N ) ) )
= ( cons_nat @ ( F @ zero_zero_nat )
@ ( map_nat_nat
@ ^ [I2: nat] : ( F @ ( suc @ I2 ) )
@ ( upt @ zero_zero_nat @ N ) ) ) ) ).
% map_upt_Suc
thf(fact_486_lists__of__length_Osimps_I2_J,axiom,
! [T: list_mapping_a_set_a,N: nat] :
( ( lists_628685718963753558_set_a @ T @ ( suc @ N ) )
= ( concat3671710083786574464_set_a
@ ( map_li6987350538220096856_set_a
@ ^ [Xs4: list_mapping_a_set_a] :
( map_ma490051923195529400_set_a
@ ^ [X4: mapping_a_set_a] : ( cons_mapping_a_set_a @ X4 @ Xs4 )
@ T )
@ ( lists_628685718963753558_set_a @ T @ N ) ) ) ) ).
% lists_of_length.simps(2)
thf(fact_487_lists__of__length_Osimps_I2_J,axiom,
! [T: list_nat,N: nat] :
( ( lists_of_length_nat @ T @ ( suc @ N ) )
= ( concat_list_nat
@ ( map_li960784813134754710st_nat
@ ^ [Xs4: list_nat] :
( map_nat_list_nat
@ ^ [X4: nat] : ( cons_nat @ X4 @ Xs4 )
@ T )
@ ( lists_of_length_nat @ T @ N ) ) ) ) ).
% lists_of_length.simps(2)
thf(fact_488_n__lists_Osimps_I2_J,axiom,
! [N: nat,Xs: list_mapping_a_set_a] :
( ( n_list7459182699849025379_set_a @ ( suc @ N ) @ Xs )
= ( concat3671710083786574464_set_a
@ ( map_li6987350538220096856_set_a
@ ^ [Ys3: list_mapping_a_set_a] :
( map_ma490051923195529400_set_a
@ ^ [Y4: mapping_a_set_a] : ( cons_mapping_a_set_a @ Y4 @ Ys3 )
@ Xs )
@ ( n_list7459182699849025379_set_a @ N @ Xs ) ) ) ) ).
% n_lists.simps(2)
thf(fact_489_n__lists_Osimps_I2_J,axiom,
! [N: nat,Xs: list_nat] :
( ( n_lists_nat @ ( suc @ N ) @ Xs )
= ( concat_list_nat
@ ( map_li960784813134754710st_nat
@ ^ [Ys3: list_nat] :
( map_nat_list_nat
@ ^ [Y4: nat] : ( cons_nat @ Y4 @ Ys3 )
@ Xs )
@ ( n_lists_nat @ N @ Xs ) ) ) ) ).
% n_lists.simps(2)
thf(fact_490_hd__concat,axiom,
! [Xs: list_l8399423937273897361_set_a] :
( ( Xs != nil_li1965212427176585467_set_a )
=> ( ( ( hd_lis1041256309613100374_set_a @ Xs )
!= nil_mapping_a_set_a )
=> ( ( hd_mapping_a_set_a @ ( concat6784524380904369520_set_a @ Xs ) )
= ( hd_mapping_a_set_a @ ( hd_lis1041256309613100374_set_a @ Xs ) ) ) ) ) ).
% hd_concat
thf(fact_491_hd__concat,axiom,
! [Xs: list_list_nat] :
( ( Xs != nil_list_nat )
=> ( ( ( hd_list_nat @ Xs )
!= nil_nat )
=> ( ( hd_nat @ ( concat_nat @ Xs ) )
= ( hd_nat @ ( hd_list_nat @ Xs ) ) ) ) ) ).
% hd_concat
thf(fact_492_concat__eq__append__conv,axiom,
! [Xss3: list_l8399423937273897361_set_a,Ys: list_mapping_a_set_a,Zs: list_mapping_a_set_a] :
( ( ( concat6784524380904369520_set_a @ Xss3 )
= ( append4262749607566113174_set_a @ Ys @ Zs ) )
= ( ( ( Xss3 = nil_li1965212427176585467_set_a )
=> ( ( Ys = nil_mapping_a_set_a )
& ( Zs = nil_mapping_a_set_a ) ) )
& ( ( Xss3 != nil_li1965212427176585467_set_a )
=> ? [Xss1: list_l8399423937273897361_set_a,Xs4: list_mapping_a_set_a,Xs5: list_mapping_a_set_a,Xss22: list_l8399423937273897361_set_a] :
( ( Xss3
= ( append5300639281392126886_set_a @ Xss1 @ ( cons_l6707406555391138123_set_a @ ( append4262749607566113174_set_a @ Xs4 @ Xs5 ) @ Xss22 ) ) )
& ( Ys
= ( append4262749607566113174_set_a @ ( concat6784524380904369520_set_a @ Xss1 ) @ Xs4 ) )
& ( Zs
= ( append4262749607566113174_set_a @ Xs5 @ ( concat6784524380904369520_set_a @ Xss22 ) ) ) ) ) ) ) ).
% concat_eq_append_conv
thf(fact_493_concat__eq__append__conv,axiom,
! [Xss3: list_list_nat,Ys: list_nat,Zs: list_nat] :
( ( ( concat_nat @ Xss3 )
= ( append_nat @ Ys @ Zs ) )
= ( ( ( Xss3 = nil_list_nat )
=> ( ( Ys = nil_nat )
& ( Zs = nil_nat ) ) )
& ( ( Xss3 != nil_list_nat )
=> ? [Xss1: list_list_nat,Xs4: list_nat,Xs5: list_nat,Xss22: list_list_nat] :
( ( Xss3
= ( append_list_nat @ Xss1 @ ( cons_list_nat @ ( append_nat @ Xs4 @ Xs5 ) @ Xss22 ) ) )
& ( Ys
= ( append_nat @ ( concat_nat @ Xss1 ) @ Xs4 ) )
& ( Zs
= ( append_nat @ Xs5 @ ( concat_nat @ Xss22 ) ) ) ) ) ) ) ).
% concat_eq_append_conv
thf(fact_494_suffixes_Opelims,axiom,
! [X: list_mapping_a_set_a,Y: list_l8399423937273897361_set_a] :
( ( ( suffix5318289274321896575_set_a @ X )
= Y )
=> ( ( accp_l4949953582330668472_set_a @ suffix8108137966096613854_set_a @ X )
=> ( ( ( X = nil_mapping_a_set_a )
=> ( ( Y
= ( cons_l6707406555391138123_set_a @ nil_mapping_a_set_a @ nil_li1965212427176585467_set_a ) )
=> ~ ( accp_l4949953582330668472_set_a @ suffix8108137966096613854_set_a @ nil_mapping_a_set_a ) ) )
=> ~ ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a] :
( ( X
= ( cons_mapping_a_set_a @ X3 @ Xs2 ) )
=> ( ( Y
= ( append5300639281392126886_set_a @ ( suffix5318289274321896575_set_a @ Xs2 ) @ ( cons_l6707406555391138123_set_a @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) @ nil_li1965212427176585467_set_a ) ) )
=> ~ ( accp_l4949953582330668472_set_a @ suffix8108137966096613854_set_a @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) ) ) ) ) ) ) ).
% suffixes.pelims
thf(fact_495_suffixes_Opelims,axiom,
! [X: list_nat,Y: list_list_nat] :
( ( ( suffixes_nat2 @ X )
= Y )
=> ( ( accp_list_nat @ suffixes_rel_nat @ X )
=> ( ( ( X = nil_nat )
=> ( ( Y
= ( cons_list_nat @ nil_nat @ nil_list_nat ) )
=> ~ ( accp_list_nat @ suffixes_rel_nat @ nil_nat ) ) )
=> ~ ! [X3: nat,Xs2: list_nat] :
( ( X
= ( cons_nat @ X3 @ Xs2 ) )
=> ( ( Y
= ( append_list_nat @ ( suffixes_nat2 @ Xs2 ) @ ( cons_list_nat @ ( cons_nat @ X3 @ Xs2 ) @ nil_list_nat ) ) )
=> ~ ( accp_list_nat @ suffixes_rel_nat @ ( cons_nat @ X3 @ Xs2 ) ) ) ) ) ) ) ).
% suffixes.pelims
thf(fact_496_linear__order__from__list__position_H_Oelims,axiom,
! [X: list_mapping_a_set_a,Y: list_P1402444854915166025_set_a] :
( ( ( linear3062881148567656647_set_a @ X )
= Y )
=> ( ( ( X = nil_mapping_a_set_a )
=> ( Y != nil_Pr569463720148864969_set_a ) )
=> ~ ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a] :
( ( X
= ( cons_mapping_a_set_a @ X3 @ Xs2 ) )
=> ( Y
!= ( cons_P7532267380390966137_set_a @ ( produc7827954888401655931_set_a @ X3 @ X3 ) @ ( append3352868668904671198_set_a @ ( map_ma6369272473881603916_set_a @ ( produc7827954888401655931_set_a @ X3 ) @ Xs2 ) @ ( linear3062881148567656647_set_a @ Xs2 ) ) ) ) ) ) ) ).
% linear_order_from_list_position'.elims
thf(fact_497_linear__order__from__list__position_H_Oelims,axiom,
! [X: list_nat,Y: list_P6011104703257516679at_nat] :
( ( ( linear8051522407387036070on_nat @ X )
= Y )
=> ( ( ( X = nil_nat )
=> ( Y != nil_Pr5478986624290739719at_nat ) )
=> ~ ! [X3: nat,Xs2: list_nat] :
( ( X
= ( cons_nat @ X3 @ Xs2 ) )
=> ( Y
!= ( cons_P6512896166579812791at_nat @ ( product_Pair_nat_nat @ X3 @ X3 ) @ ( append985823374593552924at_nat @ ( map_na7298421622053143531at_nat @ ( product_Pair_nat_nat @ X3 ) @ Xs2 ) @ ( linear8051522407387036070on_nat @ Xs2 ) ) ) ) ) ) ) ).
% linear_order_from_list_position'.elims
thf(fact_498_lists__of__length_Opelims,axiom,
! [X: list_mapping_a_set_a,Xa: nat,Y: list_l8399423937273897361_set_a] :
( ( ( lists_628685718963753558_set_a @ X @ Xa )
= Y )
=> ( ( accp_P4388512105130358587_a_nat @ lists_8902401758375567559_set_a @ ( produc3059527110568611306_a_nat @ X @ Xa ) )
=> ( ( ( Xa = zero_zero_nat )
=> ( ( Y
= ( cons_l6707406555391138123_set_a @ nil_mapping_a_set_a @ nil_li1965212427176585467_set_a ) )
=> ~ ( accp_P4388512105130358587_a_nat @ lists_8902401758375567559_set_a @ ( produc3059527110568611306_a_nat @ X @ zero_zero_nat ) ) ) )
=> ~ ! [N2: nat] :
( ( Xa
= ( suc @ N2 ) )
=> ( ( Y
= ( concat3671710083786574464_set_a
@ ( map_li6987350538220096856_set_a
@ ^ [Xs4: list_mapping_a_set_a] :
( map_ma490051923195529400_set_a
@ ^ [X4: mapping_a_set_a] : ( cons_mapping_a_set_a @ X4 @ Xs4 )
@ X )
@ ( lists_628685718963753558_set_a @ X @ N2 ) ) ) )
=> ~ ( accp_P4388512105130358587_a_nat @ lists_8902401758375567559_set_a @ ( produc3059527110568611306_a_nat @ X @ ( suc @ N2 ) ) ) ) ) ) ) ) ).
% lists_of_length.pelims
thf(fact_499_lists__of__length_Opelims,axiom,
! [X: list_nat,Xa: nat,Y: list_list_nat] :
( ( ( lists_of_length_nat @ X @ Xa )
= Y )
=> ( ( accp_P4998015213761971866at_nat @ lists_1048800777589703078el_nat @ ( produc1298395424260782409at_nat @ X @ Xa ) )
=> ( ( ( Xa = zero_zero_nat )
=> ( ( Y
= ( cons_list_nat @ nil_nat @ nil_list_nat ) )
=> ~ ( accp_P4998015213761971866at_nat @ lists_1048800777589703078el_nat @ ( produc1298395424260782409at_nat @ X @ zero_zero_nat ) ) ) )
=> ~ ! [N2: nat] :
( ( Xa
= ( suc @ N2 ) )
=> ( ( Y
= ( concat_list_nat
@ ( map_li960784813134754710st_nat
@ ^ [Xs4: list_nat] :
( map_nat_list_nat
@ ^ [X4: nat] : ( cons_nat @ X4 @ Xs4 )
@ X )
@ ( lists_of_length_nat @ X @ N2 ) ) ) )
=> ~ ( accp_P4998015213761971866at_nat @ lists_1048800777589703078el_nat @ ( produc1298395424260782409at_nat @ X @ ( suc @ N2 ) ) ) ) ) ) ) ) ).
% lists_of_length.pelims
thf(fact_500_list__ordered__pairs_Oelims,axiom,
! [X: list_mapping_a_set_a,Y: list_P1402444854915166025_set_a] :
( ( ( list_o7153801627402588650_set_a @ X )
= Y )
=> ( ( ( X = nil_mapping_a_set_a )
=> ( Y != nil_Pr569463720148864969_set_a ) )
=> ~ ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a] :
( ( X
= ( cons_mapping_a_set_a @ X3 @ Xs2 ) )
=> ( Y
!= ( append3352868668904671198_set_a @ ( map_ma6369272473881603916_set_a @ ( produc7827954888401655931_set_a @ X3 ) @ Xs2 ) @ ( list_o7153801627402588650_set_a @ Xs2 ) ) ) ) ) ) ).
% list_ordered_pairs.elims
thf(fact_501_list__ordered__pairs_Oelims,axiom,
! [X: list_nat,Y: list_P6011104703257516679at_nat] :
( ( ( list_o6794894459886620873rs_nat @ X )
= Y )
=> ( ( ( X = nil_nat )
=> ( Y != nil_Pr5478986624290739719at_nat ) )
=> ~ ! [X3: nat,Xs2: list_nat] :
( ( X
= ( cons_nat @ X3 @ Xs2 ) )
=> ( Y
!= ( append985823374593552924at_nat @ ( map_na7298421622053143531at_nat @ ( product_Pair_nat_nat @ X3 ) @ Xs2 ) @ ( list_o6794894459886620873rs_nat @ Xs2 ) ) ) ) ) ) ).
% list_ordered_pairs.elims
thf(fact_502_linear__order__from__list__position_H_Osimps_I1_J,axiom,
( ( linear3062881148567656647_set_a @ nil_mapping_a_set_a )
= nil_Pr569463720148864969_set_a ) ).
% linear_order_from_list_position'.simps(1)
thf(fact_503_linear__order__from__list__position_H_Osimps_I1_J,axiom,
( ( linear8051522407387036070on_nat @ nil_nat )
= nil_Pr5478986624290739719at_nat ) ).
% linear_order_from_list_position'.simps(1)
thf(fact_504_list__ordered__pairs_Osimps_I1_J,axiom,
( ( list_o7153801627402588650_set_a @ nil_mapping_a_set_a )
= nil_Pr569463720148864969_set_a ) ).
% list_ordered_pairs.simps(1)
thf(fact_505_list__ordered__pairs_Osimps_I1_J,axiom,
( ( list_o6794894459886620873rs_nat @ nil_nat )
= nil_Pr5478986624290739719at_nat ) ).
% list_ordered_pairs.simps(1)
thf(fact_506_list__ordered__pairs_Osimps_I2_J,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( list_o7153801627402588650_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) )
= ( append3352868668904671198_set_a @ ( map_ma6369272473881603916_set_a @ ( produc7827954888401655931_set_a @ X ) @ Xs ) @ ( list_o7153801627402588650_set_a @ Xs ) ) ) ).
% list_ordered_pairs.simps(2)
thf(fact_507_list__ordered__pairs_Osimps_I2_J,axiom,
! [X: nat,Xs: list_nat] :
( ( list_o6794894459886620873rs_nat @ ( cons_nat @ X @ Xs ) )
= ( append985823374593552924at_nat @ ( map_na7298421622053143531at_nat @ ( product_Pair_nat_nat @ X ) @ Xs ) @ ( list_o6794894459886620873rs_nat @ Xs ) ) ) ).
% list_ordered_pairs.simps(2)
thf(fact_508_linear__order__from__list__position_H_Osimps_I2_J,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( linear3062881148567656647_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) )
= ( cons_P7532267380390966137_set_a @ ( produc7827954888401655931_set_a @ X @ X ) @ ( append3352868668904671198_set_a @ ( map_ma6369272473881603916_set_a @ ( produc7827954888401655931_set_a @ X ) @ Xs ) @ ( linear3062881148567656647_set_a @ Xs ) ) ) ) ).
% linear_order_from_list_position'.simps(2)
thf(fact_509_linear__order__from__list__position_H_Osimps_I2_J,axiom,
! [X: nat,Xs: list_nat] :
( ( linear8051522407387036070on_nat @ ( cons_nat @ X @ Xs ) )
= ( cons_P6512896166579812791at_nat @ ( product_Pair_nat_nat @ X @ X ) @ ( append985823374593552924at_nat @ ( map_na7298421622053143531at_nat @ ( product_Pair_nat_nat @ X ) @ Xs ) @ ( linear8051522407387036070on_nat @ Xs ) ) ) ) ).
% linear_order_from_list_position'.simps(2)
thf(fact_510_linear__order__from__list__position_H_Opelims,axiom,
! [X: list_mapping_a_set_a,Y: list_P1402444854915166025_set_a] :
( ( ( linear3062881148567656647_set_a @ X )
= Y )
=> ( ( accp_l4949953582330668472_set_a @ linear8029125032219035542_set_a @ X )
=> ( ( ( X = nil_mapping_a_set_a )
=> ( ( Y = nil_Pr569463720148864969_set_a )
=> ~ ( accp_l4949953582330668472_set_a @ linear8029125032219035542_set_a @ nil_mapping_a_set_a ) ) )
=> ~ ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a] :
( ( X
= ( cons_mapping_a_set_a @ X3 @ Xs2 ) )
=> ( ( Y
= ( cons_P7532267380390966137_set_a @ ( produc7827954888401655931_set_a @ X3 @ X3 ) @ ( append3352868668904671198_set_a @ ( map_ma6369272473881603916_set_a @ ( produc7827954888401655931_set_a @ X3 ) @ Xs2 ) @ ( linear3062881148567656647_set_a @ Xs2 ) ) ) )
=> ~ ( accp_l4949953582330668472_set_a @ linear8029125032219035542_set_a @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) ) ) ) ) ) ) ).
% linear_order_from_list_position'.pelims
thf(fact_511_linear__order__from__list__position_H_Opelims,axiom,
! [X: list_nat,Y: list_P6011104703257516679at_nat] :
( ( ( linear8051522407387036070on_nat @ X )
= Y )
=> ( ( accp_list_nat @ linear1904149156627414645el_nat @ X )
=> ( ( ( X = nil_nat )
=> ( ( Y = nil_Pr5478986624290739719at_nat )
=> ~ ( accp_list_nat @ linear1904149156627414645el_nat @ nil_nat ) ) )
=> ~ ! [X3: nat,Xs2: list_nat] :
( ( X
= ( cons_nat @ X3 @ Xs2 ) )
=> ( ( Y
= ( cons_P6512896166579812791at_nat @ ( product_Pair_nat_nat @ X3 @ X3 ) @ ( append985823374593552924at_nat @ ( map_na7298421622053143531at_nat @ ( product_Pair_nat_nat @ X3 ) @ Xs2 ) @ ( linear8051522407387036070on_nat @ Xs2 ) ) ) )
=> ~ ( accp_list_nat @ linear1904149156627414645el_nat @ ( cons_nat @ X3 @ Xs2 ) ) ) ) ) ) ) ).
% linear_order_from_list_position'.pelims
thf(fact_512_list__ordered__pairs_Opelims,axiom,
! [X: list_mapping_a_set_a,Y: list_P1402444854915166025_set_a] :
( ( ( list_o7153801627402588650_set_a @ X )
= Y )
=> ( ( accp_l4949953582330668472_set_a @ list_o7267547253804472883_set_a @ X )
=> ( ( ( X = nil_mapping_a_set_a )
=> ( ( Y = nil_Pr569463720148864969_set_a )
=> ~ ( accp_l4949953582330668472_set_a @ list_o7267547253804472883_set_a @ nil_mapping_a_set_a ) ) )
=> ~ ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a] :
( ( X
= ( cons_mapping_a_set_a @ X3 @ Xs2 ) )
=> ( ( Y
= ( append3352868668904671198_set_a @ ( map_ma6369272473881603916_set_a @ ( produc7827954888401655931_set_a @ X3 ) @ Xs2 ) @ ( list_o7153801627402588650_set_a @ Xs2 ) ) )
=> ~ ( accp_l4949953582330668472_set_a @ list_o7267547253804472883_set_a @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) ) ) ) ) ) ) ).
% list_ordered_pairs.pelims
thf(fact_513_list__ordered__pairs_Opelims,axiom,
! [X: list_nat,Y: list_P6011104703257516679at_nat] :
( ( ( list_o6794894459886620873rs_nat @ X )
= Y )
=> ( ( accp_list_nat @ list_o5556262271194772242el_nat @ X )
=> ( ( ( X = nil_nat )
=> ( ( Y = nil_Pr5478986624290739719at_nat )
=> ~ ( accp_list_nat @ list_o5556262271194772242el_nat @ nil_nat ) ) )
=> ~ ! [X3: nat,Xs2: list_nat] :
( ( X
= ( cons_nat @ X3 @ Xs2 ) )
=> ( ( Y
= ( append985823374593552924at_nat @ ( map_na7298421622053143531at_nat @ ( product_Pair_nat_nat @ X3 ) @ Xs2 ) @ ( list_o6794894459886620873rs_nat @ Xs2 ) ) )
=> ~ ( accp_list_nat @ list_o5556262271194772242el_nat @ ( cons_nat @ X3 @ Xs2 ) ) ) ) ) ) ) ).
% list_ordered_pairs.pelims
thf(fact_514_non__sym__dist__pairs_H_Oelims,axiom,
! [X: list_mapping_a_set_a,Y: list_P1402444854915166025_set_a] :
( ( ( non_sy3350337585314141350_set_a @ X )
= Y )
=> ( ( ( X = nil_mapping_a_set_a )
=> ( Y != nil_Pr569463720148864969_set_a ) )
=> ~ ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a] :
( ( X
= ( cons_mapping_a_set_a @ X3 @ Xs2 ) )
=> ( Y
!= ( append3352868668904671198_set_a @ ( map_ma6369272473881603916_set_a @ ( produc7827954888401655931_set_a @ X3 ) @ Xs2 ) @ ( non_sy3350337585314141350_set_a @ Xs2 ) ) ) ) ) ) ).
% non_sym_dist_pairs'.elims
thf(fact_515_non__sym__dist__pairs_H_Oelims,axiom,
! [X: list_nat,Y: list_P6011104703257516679at_nat] :
( ( ( non_sy1784707333927398277rs_nat @ X )
= Y )
=> ( ( ( X = nil_nat )
=> ( Y != nil_Pr5478986624290739719at_nat ) )
=> ~ ! [X3: nat,Xs2: list_nat] :
( ( X
= ( cons_nat @ X3 @ Xs2 ) )
=> ( Y
!= ( append985823374593552924at_nat @ ( map_na7298421622053143531at_nat @ ( product_Pair_nat_nat @ X3 ) @ Xs2 ) @ ( non_sy1784707333927398277rs_nat @ Xs2 ) ) ) ) ) ) ).
% non_sym_dist_pairs'.elims
thf(fact_516_non__sym__dist__pairs_H_Opelims,axiom,
! [X: list_mapping_a_set_a,Y: list_P1402444854915166025_set_a] :
( ( ( non_sy3350337585314141350_set_a @ X )
= Y )
=> ( ( accp_l4949953582330668472_set_a @ non_sy4175718602840916599_set_a @ X )
=> ( ( ( X = nil_mapping_a_set_a )
=> ( ( Y = nil_Pr569463720148864969_set_a )
=> ~ ( accp_l4949953582330668472_set_a @ non_sy4175718602840916599_set_a @ nil_mapping_a_set_a ) ) )
=> ~ ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a] :
( ( X
= ( cons_mapping_a_set_a @ X3 @ Xs2 ) )
=> ( ( Y
= ( append3352868668904671198_set_a @ ( map_ma6369272473881603916_set_a @ ( produc7827954888401655931_set_a @ X3 ) @ Xs2 ) @ ( non_sy3350337585314141350_set_a @ Xs2 ) ) )
=> ~ ( accp_l4949953582330668472_set_a @ non_sy4175718602840916599_set_a @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) ) ) ) ) ) ) ).
% non_sym_dist_pairs'.pelims
thf(fact_517_non__sym__dist__pairs_H_Opelims,axiom,
! [X: list_nat,Y: list_P6011104703257516679at_nat] :
( ( ( non_sy1784707333927398277rs_nat @ X )
= Y )
=> ( ( accp_list_nat @ non_sy6628168677365187414el_nat @ X )
=> ( ( ( X = nil_nat )
=> ( ( Y = nil_Pr5478986624290739719at_nat )
=> ~ ( accp_list_nat @ non_sy6628168677365187414el_nat @ nil_nat ) ) )
=> ~ ! [X3: nat,Xs2: list_nat] :
( ( X
= ( cons_nat @ X3 @ Xs2 ) )
=> ( ( Y
= ( append985823374593552924at_nat @ ( map_na7298421622053143531at_nat @ ( product_Pair_nat_nat @ X3 ) @ Xs2 ) @ ( non_sy1784707333927398277rs_nat @ Xs2 ) ) )
=> ~ ( accp_list_nat @ non_sy6628168677365187414el_nat @ ( cons_nat @ X3 @ Xs2 ) ) ) ) ) ) ) ).
% non_sym_dist_pairs'.pelims
thf(fact_518_non__sym__dist__pairs_H_Osimps_I1_J,axiom,
( ( non_sy3350337585314141350_set_a @ nil_mapping_a_set_a )
= nil_Pr569463720148864969_set_a ) ).
% non_sym_dist_pairs'.simps(1)
thf(fact_519_non__sym__dist__pairs_H_Osimps_I1_J,axiom,
( ( non_sy1784707333927398277rs_nat @ nil_nat )
= nil_Pr5478986624290739719at_nat ) ).
% non_sym_dist_pairs'.simps(1)
thf(fact_520_non__sym__dist__pairs_H_Osimps_I2_J,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( non_sy3350337585314141350_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) )
= ( append3352868668904671198_set_a @ ( map_ma6369272473881603916_set_a @ ( produc7827954888401655931_set_a @ X ) @ Xs ) @ ( non_sy3350337585314141350_set_a @ Xs ) ) ) ).
% non_sym_dist_pairs'.simps(2)
thf(fact_521_non__sym__dist__pairs_H_Osimps_I2_J,axiom,
! [X: nat,Xs: list_nat] :
( ( non_sy1784707333927398277rs_nat @ ( cons_nat @ X @ Xs ) )
= ( append985823374593552924at_nat @ ( map_na7298421622053143531at_nat @ ( product_Pair_nat_nat @ X ) @ Xs ) @ ( non_sy1784707333927398277rs_nat @ Xs ) ) ) ).
% non_sym_dist_pairs'.simps(2)
thf(fact_522_transpose_Opinduct,axiom,
! [A0: list_l8399423937273897361_set_a,P: list_l8399423937273897361_set_a > $o] :
( ( accp_l4640782729599666248_set_a @ transp3248090008155149692_set_a @ A0 )
=> ( ( ( accp_l4640782729599666248_set_a @ transp3248090008155149692_set_a @ nil_li1965212427176585467_set_a )
=> ( P @ nil_li1965212427176585467_set_a ) )
=> ( ! [Xss: list_l8399423937273897361_set_a] :
( ( accp_l4640782729599666248_set_a @ transp3248090008155149692_set_a @ ( cons_l6707406555391138123_set_a @ nil_mapping_a_set_a @ Xss ) )
=> ( ( P @ Xss )
=> ( P @ ( cons_l6707406555391138123_set_a @ nil_mapping_a_set_a @ Xss ) ) ) )
=> ( ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a,Xss: list_l8399423937273897361_set_a] :
( ( accp_l4640782729599666248_set_a @ transp3248090008155149692_set_a @ ( cons_l6707406555391138123_set_a @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) @ Xss ) )
=> ( ( P
@ ( cons_l6707406555391138123_set_a @ Xs2
@ ( concat3671710083786574464_set_a
@ ( map_li6987350538220096856_set_a
@ ( case_l3909372001649238506_set_a @ nil_li1965212427176585467_set_a
@ ^ [H: mapping_a_set_a,T3: list_mapping_a_set_a] : ( cons_l6707406555391138123_set_a @ T3 @ nil_li1965212427176585467_set_a ) )
@ Xss ) ) ) )
=> ( P @ ( cons_l6707406555391138123_set_a @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) @ Xss ) ) ) )
=> ( P @ A0 ) ) ) ) ) ).
% transpose.pinduct
thf(fact_523_transpose_Opinduct,axiom,
! [A0: list_list_nat,P: list_list_nat > $o] :
( ( accp_list_list_nat @ transpose_rel_nat @ A0 )
=> ( ( ( accp_list_list_nat @ transpose_rel_nat @ nil_list_nat )
=> ( P @ nil_list_nat ) )
=> ( ! [Xss: list_list_nat] :
( ( accp_list_list_nat @ transpose_rel_nat @ ( cons_list_nat @ nil_nat @ Xss ) )
=> ( ( P @ Xss )
=> ( P @ ( cons_list_nat @ nil_nat @ Xss ) ) ) )
=> ( ! [X3: nat,Xs2: list_nat,Xss: list_list_nat] :
( ( accp_list_list_nat @ transpose_rel_nat @ ( cons_list_nat @ ( cons_nat @ X3 @ Xs2 ) @ Xss ) )
=> ( ( P
@ ( cons_list_nat @ Xs2
@ ( concat_list_nat
@ ( map_li960784813134754710st_nat
@ ( case_l3331202209248957608at_nat @ nil_list_nat
@ ^ [H: nat,T3: list_nat] : ( cons_list_nat @ T3 @ nil_list_nat ) )
@ Xss ) ) ) )
=> ( P @ ( cons_list_nat @ ( cons_nat @ X3 @ Xs2 ) @ Xss ) ) ) )
=> ( P @ A0 ) ) ) ) ) ).
% transpose.pinduct
thf(fact_524_transpose_Osimps_I3_J,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a,Xss3: list_l8399423937273897361_set_a] :
( ( transp4038014982164974433_set_a @ ( cons_l6707406555391138123_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) @ Xss3 ) )
= ( cons_l6707406555391138123_set_a
@ ( cons_mapping_a_set_a @ X
@ ( concat6784524380904369520_set_a
@ ( map_li7167894565733511880_set_a
@ ( case_l6933312115870525274_set_a @ nil_mapping_a_set_a
@ ^ [H: mapping_a_set_a,T3: list_mapping_a_set_a] : ( cons_mapping_a_set_a @ H @ nil_mapping_a_set_a ) )
@ Xss3 ) ) )
@ ( transp4038014982164974433_set_a
@ ( cons_l6707406555391138123_set_a @ Xs
@ ( concat3671710083786574464_set_a
@ ( map_li6987350538220096856_set_a
@ ( case_l3909372001649238506_set_a @ nil_li1965212427176585467_set_a
@ ^ [H: mapping_a_set_a,T3: list_mapping_a_set_a] : ( cons_l6707406555391138123_set_a @ T3 @ nil_li1965212427176585467_set_a ) )
@ Xss3 ) ) ) ) ) ) ).
% transpose.simps(3)
thf(fact_525_transpose_Osimps_I3_J,axiom,
! [X: nat,Xs: list_nat,Xss3: list_list_nat] :
( ( transpose_nat @ ( cons_list_nat @ ( cons_nat @ X @ Xs ) @ Xss3 ) )
= ( cons_list_nat
@ ( cons_nat @ X
@ ( concat_nat
@ ( map_li7225945977422193158st_nat
@ ( case_l2340614614379431832at_nat @ nil_nat
@ ^ [H: nat,T3: list_nat] : ( cons_nat @ H @ nil_nat ) )
@ Xss3 ) ) )
@ ( transpose_nat
@ ( cons_list_nat @ Xs
@ ( concat_list_nat
@ ( map_li960784813134754710st_nat
@ ( case_l3331202209248957608at_nat @ nil_list_nat
@ ^ [H: nat,T3: list_nat] : ( cons_list_nat @ T3 @ nil_list_nat ) )
@ Xss3 ) ) ) ) ) ) ).
% transpose.simps(3)
thf(fact_526_transpose_Oelims,axiom,
! [X: list_l8399423937273897361_set_a,Y: list_l8399423937273897361_set_a] :
( ( ( transp4038014982164974433_set_a @ X )
= Y )
=> ( ( ( X = nil_li1965212427176585467_set_a )
=> ( Y != nil_li1965212427176585467_set_a ) )
=> ( ! [Xss: list_l8399423937273897361_set_a] :
( ( X
= ( cons_l6707406555391138123_set_a @ nil_mapping_a_set_a @ Xss ) )
=> ( Y
!= ( transp4038014982164974433_set_a @ Xss ) ) )
=> ~ ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a,Xss: list_l8399423937273897361_set_a] :
( ( X
= ( cons_l6707406555391138123_set_a @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) @ Xss ) )
=> ( Y
!= ( cons_l6707406555391138123_set_a
@ ( cons_mapping_a_set_a @ X3
@ ( concat6784524380904369520_set_a
@ ( map_li7167894565733511880_set_a
@ ( case_l6933312115870525274_set_a @ nil_mapping_a_set_a
@ ^ [H: mapping_a_set_a,T3: list_mapping_a_set_a] : ( cons_mapping_a_set_a @ H @ nil_mapping_a_set_a ) )
@ Xss ) ) )
@ ( transp4038014982164974433_set_a
@ ( cons_l6707406555391138123_set_a @ Xs2
@ ( concat3671710083786574464_set_a
@ ( map_li6987350538220096856_set_a
@ ( case_l3909372001649238506_set_a @ nil_li1965212427176585467_set_a
@ ^ [H: mapping_a_set_a,T3: list_mapping_a_set_a] : ( cons_l6707406555391138123_set_a @ T3 @ nil_li1965212427176585467_set_a ) )
@ Xss ) ) ) ) ) ) ) ) ) ) ).
% transpose.elims
thf(fact_527_transpose_Oelims,axiom,
! [X: list_list_nat,Y: list_list_nat] :
( ( ( transpose_nat @ X )
= Y )
=> ( ( ( X = nil_list_nat )
=> ( Y != nil_list_nat ) )
=> ( ! [Xss: list_list_nat] :
( ( X
= ( cons_list_nat @ nil_nat @ Xss ) )
=> ( Y
!= ( transpose_nat @ Xss ) ) )
=> ~ ! [X3: nat,Xs2: list_nat,Xss: list_list_nat] :
( ( X
= ( cons_list_nat @ ( cons_nat @ X3 @ Xs2 ) @ Xss ) )
=> ( Y
!= ( cons_list_nat
@ ( cons_nat @ X3
@ ( concat_nat
@ ( map_li7225945977422193158st_nat
@ ( case_l2340614614379431832at_nat @ nil_nat
@ ^ [H: nat,T3: list_nat] : ( cons_nat @ H @ nil_nat ) )
@ Xss ) ) )
@ ( transpose_nat
@ ( cons_list_nat @ Xs2
@ ( concat_list_nat
@ ( map_li960784813134754710st_nat
@ ( case_l3331202209248957608at_nat @ nil_list_nat
@ ^ [H: nat,T3: list_nat] : ( cons_list_nat @ T3 @ nil_list_nat ) )
@ Xss ) ) ) ) ) ) ) ) ) ) ).
% transpose.elims
thf(fact_528_transpose_Opsimps_I3_J,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a,Xss3: list_l8399423937273897361_set_a] :
( ( accp_l4640782729599666248_set_a @ transp3248090008155149692_set_a @ ( cons_l6707406555391138123_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) @ Xss3 ) )
=> ( ( transp4038014982164974433_set_a @ ( cons_l6707406555391138123_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) @ Xss3 ) )
= ( cons_l6707406555391138123_set_a
@ ( cons_mapping_a_set_a @ X
@ ( concat6784524380904369520_set_a
@ ( map_li7167894565733511880_set_a
@ ( case_l6933312115870525274_set_a @ nil_mapping_a_set_a
@ ^ [H: mapping_a_set_a,T3: list_mapping_a_set_a] : ( cons_mapping_a_set_a @ H @ nil_mapping_a_set_a ) )
@ Xss3 ) ) )
@ ( transp4038014982164974433_set_a
@ ( cons_l6707406555391138123_set_a @ Xs
@ ( concat3671710083786574464_set_a
@ ( map_li6987350538220096856_set_a
@ ( case_l3909372001649238506_set_a @ nil_li1965212427176585467_set_a
@ ^ [H: mapping_a_set_a,T3: list_mapping_a_set_a] : ( cons_l6707406555391138123_set_a @ T3 @ nil_li1965212427176585467_set_a ) )
@ Xss3 ) ) ) ) ) ) ) ).
% transpose.psimps(3)
thf(fact_529_transpose_Opsimps_I3_J,axiom,
! [X: nat,Xs: list_nat,Xss3: list_list_nat] :
( ( accp_list_list_nat @ transpose_rel_nat @ ( cons_list_nat @ ( cons_nat @ X @ Xs ) @ Xss3 ) )
=> ( ( transpose_nat @ ( cons_list_nat @ ( cons_nat @ X @ Xs ) @ Xss3 ) )
= ( cons_list_nat
@ ( cons_nat @ X
@ ( concat_nat
@ ( map_li7225945977422193158st_nat
@ ( case_l2340614614379431832at_nat @ nil_nat
@ ^ [H: nat,T3: list_nat] : ( cons_nat @ H @ nil_nat ) )
@ Xss3 ) ) )
@ ( transpose_nat
@ ( cons_list_nat @ Xs
@ ( concat_list_nat
@ ( map_li960784813134754710st_nat
@ ( case_l3331202209248957608at_nat @ nil_list_nat
@ ^ [H: nat,T3: list_nat] : ( cons_list_nat @ T3 @ nil_list_nat ) )
@ Xss3 ) ) ) ) ) ) ) ).
% transpose.psimps(3)
thf(fact_530_transpose_Opelims,axiom,
! [X: list_l8399423937273897361_set_a,Y: list_l8399423937273897361_set_a] :
( ( ( transp4038014982164974433_set_a @ X )
= Y )
=> ( ( accp_l4640782729599666248_set_a @ transp3248090008155149692_set_a @ X )
=> ( ( ( X = nil_li1965212427176585467_set_a )
=> ( ( Y = nil_li1965212427176585467_set_a )
=> ~ ( accp_l4640782729599666248_set_a @ transp3248090008155149692_set_a @ nil_li1965212427176585467_set_a ) ) )
=> ( ! [Xss: list_l8399423937273897361_set_a] :
( ( X
= ( cons_l6707406555391138123_set_a @ nil_mapping_a_set_a @ Xss ) )
=> ( ( Y
= ( transp4038014982164974433_set_a @ Xss ) )
=> ~ ( accp_l4640782729599666248_set_a @ transp3248090008155149692_set_a @ ( cons_l6707406555391138123_set_a @ nil_mapping_a_set_a @ Xss ) ) ) )
=> ~ ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a,Xss: list_l8399423937273897361_set_a] :
( ( X
= ( cons_l6707406555391138123_set_a @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) @ Xss ) )
=> ( ( Y
= ( cons_l6707406555391138123_set_a
@ ( cons_mapping_a_set_a @ X3
@ ( concat6784524380904369520_set_a
@ ( map_li7167894565733511880_set_a
@ ( case_l6933312115870525274_set_a @ nil_mapping_a_set_a
@ ^ [H: mapping_a_set_a,T3: list_mapping_a_set_a] : ( cons_mapping_a_set_a @ H @ nil_mapping_a_set_a ) )
@ Xss ) ) )
@ ( transp4038014982164974433_set_a
@ ( cons_l6707406555391138123_set_a @ Xs2
@ ( concat3671710083786574464_set_a
@ ( map_li6987350538220096856_set_a
@ ( case_l3909372001649238506_set_a @ nil_li1965212427176585467_set_a
@ ^ [H: mapping_a_set_a,T3: list_mapping_a_set_a] : ( cons_l6707406555391138123_set_a @ T3 @ nil_li1965212427176585467_set_a ) )
@ Xss ) ) ) ) ) )
=> ~ ( accp_l4640782729599666248_set_a @ transp3248090008155149692_set_a @ ( cons_l6707406555391138123_set_a @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) @ Xss ) ) ) ) ) ) ) ) ).
% transpose.pelims
thf(fact_531_transpose_Opelims,axiom,
! [X: list_list_nat,Y: list_list_nat] :
( ( ( transpose_nat @ X )
= Y )
=> ( ( accp_list_list_nat @ transpose_rel_nat @ X )
=> ( ( ( X = nil_list_nat )
=> ( ( Y = nil_list_nat )
=> ~ ( accp_list_list_nat @ transpose_rel_nat @ nil_list_nat ) ) )
=> ( ! [Xss: list_list_nat] :
( ( X
= ( cons_list_nat @ nil_nat @ Xss ) )
=> ( ( Y
= ( transpose_nat @ Xss ) )
=> ~ ( accp_list_list_nat @ transpose_rel_nat @ ( cons_list_nat @ nil_nat @ Xss ) ) ) )
=> ~ ! [X3: nat,Xs2: list_nat,Xss: list_list_nat] :
( ( X
= ( cons_list_nat @ ( cons_nat @ X3 @ Xs2 ) @ Xss ) )
=> ( ( Y
= ( cons_list_nat
@ ( cons_nat @ X3
@ ( concat_nat
@ ( map_li7225945977422193158st_nat
@ ( case_l2340614614379431832at_nat @ nil_nat
@ ^ [H: nat,T3: list_nat] : ( cons_nat @ H @ nil_nat ) )
@ Xss ) ) )
@ ( transpose_nat
@ ( cons_list_nat @ Xs2
@ ( concat_list_nat
@ ( map_li960784813134754710st_nat
@ ( case_l3331202209248957608at_nat @ nil_list_nat
@ ^ [H: nat,T3: list_nat] : ( cons_list_nat @ T3 @ nil_list_nat ) )
@ Xss ) ) ) ) ) )
=> ~ ( accp_list_list_nat @ transpose_rel_nat @ ( cons_list_nat @ ( cons_nat @ X3 @ Xs2 ) @ Xss ) ) ) ) ) ) ) ) ).
% transpose.pelims
thf(fact_532_transpose__aux__filter__head,axiom,
! [Xss3: list_l8399423937273897361_set_a] :
( ( concat6784524380904369520_set_a
@ ( map_li7167894565733511880_set_a
@ ( case_l6933312115870525274_set_a @ nil_mapping_a_set_a
@ ^ [H: mapping_a_set_a,T3: list_mapping_a_set_a] : ( cons_mapping_a_set_a @ H @ nil_mapping_a_set_a ) )
@ Xss3 ) )
= ( map_li6483730670513101240_set_a @ hd_mapping_a_set_a
@ ( filter5923938535083274564_set_a
@ ^ [Ys3: list_mapping_a_set_a] : ( Ys3 != nil_mapping_a_set_a )
@ Xss3 ) ) ) ).
% transpose_aux_filter_head
thf(fact_533_transpose__aux__filter__head,axiom,
! [Xss3: list_list_nat] :
( ( concat_nat
@ ( map_li7225945977422193158st_nat
@ ( case_l2340614614379431832at_nat @ nil_nat
@ ^ [H: nat,T3: list_nat] : ( cons_nat @ H @ nil_nat ) )
@ Xss3 ) )
= ( map_list_nat_nat @ hd_nat
@ ( filter_list_nat
@ ^ [Ys3: list_nat] : ( Ys3 != nil_nat )
@ Xss3 ) ) ) ).
% transpose_aux_filter_head
thf(fact_534_filter_Osimps_I1_J,axiom,
! [P: mapping_a_set_a > $o] :
( ( filter7335739693268387380_set_a @ P @ nil_mapping_a_set_a )
= nil_mapping_a_set_a ) ).
% filter.simps(1)
thf(fact_535_filter_Osimps_I1_J,axiom,
! [P: nat > $o] :
( ( filter_nat @ P @ nil_nat )
= nil_nat ) ).
% filter.simps(1)
thf(fact_536_filter_Osimps_I2_J,axiom,
! [P: mapping_a_set_a > $o,X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( ( P @ X )
=> ( ( filter7335739693268387380_set_a @ P @ ( cons_mapping_a_set_a @ X @ Xs ) )
= ( cons_mapping_a_set_a @ X @ ( filter7335739693268387380_set_a @ P @ Xs ) ) ) )
& ( ~ ( P @ X )
=> ( ( filter7335739693268387380_set_a @ P @ ( cons_mapping_a_set_a @ X @ Xs ) )
= ( filter7335739693268387380_set_a @ P @ Xs ) ) ) ) ).
% filter.simps(2)
thf(fact_537_filter_Osimps_I2_J,axiom,
! [P: nat > $o,X: nat,Xs: list_nat] :
( ( ( P @ X )
=> ( ( filter_nat @ P @ ( cons_nat @ X @ Xs ) )
= ( cons_nat @ X @ ( filter_nat @ P @ Xs ) ) ) )
& ( ~ ( P @ X )
=> ( ( filter_nat @ P @ ( cons_nat @ X @ Xs ) )
= ( filter_nat @ P @ Xs ) ) ) ) ).
% filter.simps(2)
thf(fact_538_rev__filter,axiom,
! [P: nat > $o,Xs: list_nat] :
( ( rev_nat @ ( filter_nat @ P @ Xs ) )
= ( filter_nat @ P @ ( rev_nat @ Xs ) ) ) ).
% rev_filter
thf(fact_539_list_Odisc__eq__case_I2_J,axiom,
! [List: list_mapping_a_set_a] :
( ( List != nil_mapping_a_set_a )
= ( case_l5966180421458340771_set_a @ $false
@ ^ [Uu: mapping_a_set_a,Uv2: list_mapping_a_set_a] : $true
@ List ) ) ).
% list.disc_eq_case(2)
thf(fact_540_list_Odisc__eq__case_I2_J,axiom,
! [List: list_nat] :
( ( List != nil_nat )
= ( case_list_o_nat @ $false
@ ^ [Uu: nat,Uv2: list_nat] : $true
@ List ) ) ).
% list.disc_eq_case(2)
thf(fact_541_list_Odisc__eq__case_I1_J,axiom,
! [List: list_mapping_a_set_a] :
( ( List = nil_mapping_a_set_a )
= ( case_l5966180421458340771_set_a @ $true
@ ^ [Uu: mapping_a_set_a,Uv2: list_mapping_a_set_a] : $false
@ List ) ) ).
% list.disc_eq_case(1)
thf(fact_542_list_Odisc__eq__case_I1_J,axiom,
! [List: list_nat] :
( ( List = nil_nat )
= ( case_list_o_nat @ $true
@ ^ [Uu: nat,Uv2: list_nat] : $false
@ List ) ) ).
% list.disc_eq_case(1)
thf(fact_543_transpose_Opsimps_I2_J,axiom,
! [Xss3: list_l8399423937273897361_set_a] :
( ( accp_l4640782729599666248_set_a @ transp3248090008155149692_set_a @ ( cons_l6707406555391138123_set_a @ nil_mapping_a_set_a @ Xss3 ) )
=> ( ( transp4038014982164974433_set_a @ ( cons_l6707406555391138123_set_a @ nil_mapping_a_set_a @ Xss3 ) )
= ( transp4038014982164974433_set_a @ Xss3 ) ) ) ).
% transpose.psimps(2)
thf(fact_544_transpose_Opsimps_I2_J,axiom,
! [Xss3: list_list_nat] :
( ( accp_list_list_nat @ transpose_rel_nat @ ( cons_list_nat @ nil_nat @ Xss3 ) )
=> ( ( transpose_nat @ ( cons_list_nat @ nil_nat @ Xss3 ) )
= ( transpose_nat @ Xss3 ) ) ) ).
% transpose.psimps(2)
thf(fact_545_transpose_Osimps_I2_J,axiom,
! [Xss3: list_l8399423937273897361_set_a] :
( ( transp4038014982164974433_set_a @ ( cons_l6707406555391138123_set_a @ nil_mapping_a_set_a @ Xss3 ) )
= ( transp4038014982164974433_set_a @ Xss3 ) ) ).
% transpose.simps(2)
thf(fact_546_transpose_Osimps_I2_J,axiom,
! [Xss3: list_list_nat] :
( ( transpose_nat @ ( cons_list_nat @ nil_nat @ Xss3 ) )
= ( transpose_nat @ Xss3 ) ) ).
% transpose.simps(2)
thf(fact_547_transpose__map__map,axiom,
! [F: nat > nat,Xs: list_list_nat] :
( ( transpose_nat @ ( map_li7225945977422193158st_nat @ ( map_nat_nat @ F ) @ Xs ) )
= ( map_li7225945977422193158st_nat @ ( map_nat_nat @ F ) @ ( transpose_nat @ Xs ) ) ) ).
% transpose_map_map
thf(fact_548_transpose__aux__filter__tail,axiom,
! [Xss3: list_l8399423937273897361_set_a] :
( ( concat3671710083786574464_set_a
@ ( map_li6987350538220096856_set_a
@ ( case_l3909372001649238506_set_a @ nil_li1965212427176585467_set_a
@ ^ [H: mapping_a_set_a,T3: list_mapping_a_set_a] : ( cons_l6707406555391138123_set_a @ T3 @ nil_li1965212427176585467_set_a ) )
@ Xss3 ) )
= ( map_li7167894565733511880_set_a @ tl_mapping_a_set_a
@ ( filter5923938535083274564_set_a
@ ^ [Ys3: list_mapping_a_set_a] : ( Ys3 != nil_mapping_a_set_a )
@ Xss3 ) ) ) ).
% transpose_aux_filter_tail
thf(fact_549_transpose__aux__filter__tail,axiom,
! [Xss3: list_list_nat] :
( ( concat_list_nat
@ ( map_li960784813134754710st_nat
@ ( case_l3331202209248957608at_nat @ nil_list_nat
@ ^ [H: nat,T3: list_nat] : ( cons_list_nat @ T3 @ nil_list_nat ) )
@ Xss3 ) )
= ( map_li7225945977422193158st_nat @ tl_nat
@ ( filter_list_nat
@ ^ [Ys3: list_nat] : ( Ys3 != nil_nat )
@ Xss3 ) ) ) ).
% transpose_aux_filter_tail
thf(fact_550_tl__upt,axiom,
! [M: nat,N: nat] :
( ( tl_nat @ ( upt @ M @ N ) )
= ( upt @ ( suc @ M ) @ N ) ) ).
% tl_upt
thf(fact_551_tl__append2,axiom,
! [Xs: list_mapping_a_set_a,Ys: list_mapping_a_set_a] :
( ( Xs != nil_mapping_a_set_a )
=> ( ( tl_mapping_a_set_a @ ( append4262749607566113174_set_a @ Xs @ Ys ) )
= ( append4262749607566113174_set_a @ ( tl_mapping_a_set_a @ Xs ) @ Ys ) ) ) ).
% tl_append2
thf(fact_552_tl__append2,axiom,
! [Xs: list_nat,Ys: list_nat] :
( ( Xs != nil_nat )
=> ( ( tl_nat @ ( append_nat @ Xs @ Ys ) )
= ( append_nat @ ( tl_nat @ Xs ) @ Ys ) ) ) ).
% tl_append2
thf(fact_553_list_Ocollapse,axiom,
! [List: list_mapping_a_set_a] :
( ( List != nil_mapping_a_set_a )
=> ( ( cons_mapping_a_set_a @ ( hd_mapping_a_set_a @ List ) @ ( tl_mapping_a_set_a @ List ) )
= List ) ) ).
% list.collapse
thf(fact_554_list_Ocollapse,axiom,
! [List: list_nat] :
( ( List != nil_nat )
=> ( ( cons_nat @ ( hd_nat @ List ) @ ( tl_nat @ List ) )
= List ) ) ).
% list.collapse
thf(fact_555_hd__Cons__tl,axiom,
! [Xs: list_mapping_a_set_a] :
( ( Xs != nil_mapping_a_set_a )
=> ( ( cons_mapping_a_set_a @ ( hd_mapping_a_set_a @ Xs ) @ ( tl_mapping_a_set_a @ Xs ) )
= Xs ) ) ).
% hd_Cons_tl
thf(fact_556_hd__Cons__tl,axiom,
! [Xs: list_nat] :
( ( Xs != nil_nat )
=> ( ( cons_nat @ ( hd_nat @ Xs ) @ ( tl_nat @ Xs ) )
= Xs ) ) ).
% hd_Cons_tl
thf(fact_557_list_Osel_I3_J,axiom,
! [X21: mapping_a_set_a,X22: list_mapping_a_set_a] :
( ( tl_mapping_a_set_a @ ( cons_mapping_a_set_a @ X21 @ X22 ) )
= X22 ) ).
% list.sel(3)
thf(fact_558_list_Osel_I3_J,axiom,
! [X21: nat,X22: list_nat] :
( ( tl_nat @ ( cons_nat @ X21 @ X22 ) )
= X22 ) ).
% list.sel(3)
thf(fact_559_list_Osel_I2_J,axiom,
( ( tl_mapping_a_set_a @ nil_mapping_a_set_a )
= nil_mapping_a_set_a ) ).
% list.sel(2)
thf(fact_560_list_Osel_I2_J,axiom,
( ( tl_nat @ nil_nat )
= nil_nat ) ).
% list.sel(2)
thf(fact_561_map__tl,axiom,
! [F: nat > nat,Xs: list_nat] :
( ( map_nat_nat @ F @ ( tl_nat @ Xs ) )
= ( tl_nat @ ( map_nat_nat @ F @ Xs ) ) ) ).
% map_tl
thf(fact_562_tl__Nil,axiom,
! [Xs: list_mapping_a_set_a] :
( ( ( tl_mapping_a_set_a @ Xs )
= nil_mapping_a_set_a )
= ( ( Xs = nil_mapping_a_set_a )
| ? [X4: mapping_a_set_a] :
( Xs
= ( cons_mapping_a_set_a @ X4 @ nil_mapping_a_set_a ) ) ) ) ).
% tl_Nil
thf(fact_563_tl__Nil,axiom,
! [Xs: list_nat] :
( ( ( tl_nat @ Xs )
= nil_nat )
= ( ( Xs = nil_nat )
| ? [X4: nat] :
( Xs
= ( cons_nat @ X4 @ nil_nat ) ) ) ) ).
% tl_Nil
thf(fact_564_Nil__tl,axiom,
! [Xs: list_mapping_a_set_a] :
( ( nil_mapping_a_set_a
= ( tl_mapping_a_set_a @ Xs ) )
= ( ( Xs = nil_mapping_a_set_a )
| ? [X4: mapping_a_set_a] :
( Xs
= ( cons_mapping_a_set_a @ X4 @ nil_mapping_a_set_a ) ) ) ) ).
% Nil_tl
thf(fact_565_Nil__tl,axiom,
! [Xs: list_nat] :
( ( nil_nat
= ( tl_nat @ Xs ) )
= ( ( Xs = nil_nat )
| ? [X4: nat] :
( Xs
= ( cons_nat @ X4 @ nil_nat ) ) ) ) ).
% Nil_tl
thf(fact_566_tl__append__if,axiom,
! [Xs: list_mapping_a_set_a,Ys: list_mapping_a_set_a] :
( ( ( Xs = nil_mapping_a_set_a )
=> ( ( tl_mapping_a_set_a @ ( append4262749607566113174_set_a @ Xs @ Ys ) )
= ( tl_mapping_a_set_a @ Ys ) ) )
& ( ( Xs != nil_mapping_a_set_a )
=> ( ( tl_mapping_a_set_a @ ( append4262749607566113174_set_a @ Xs @ Ys ) )
= ( append4262749607566113174_set_a @ ( tl_mapping_a_set_a @ Xs ) @ Ys ) ) ) ) ).
% tl_append_if
thf(fact_567_tl__append__if,axiom,
! [Xs: list_nat,Ys: list_nat] :
( ( ( Xs = nil_nat )
=> ( ( tl_nat @ ( append_nat @ Xs @ Ys ) )
= ( tl_nat @ Ys ) ) )
& ( ( Xs != nil_nat )
=> ( ( tl_nat @ ( append_nat @ Xs @ Ys ) )
= ( append_nat @ ( tl_nat @ Xs ) @ Ys ) ) ) ) ).
% tl_append_if
thf(fact_568_list_Omap__sel_I2_J,axiom,
! [A: list_mapping_a_set_a,F: mapping_a_set_a > nat] :
( ( A != nil_mapping_a_set_a )
=> ( ( tl_nat @ ( map_ma4603351842386580103_a_nat @ F @ A ) )
= ( map_ma4603351842386580103_a_nat @ F @ ( tl_mapping_a_set_a @ A ) ) ) ) ).
% list.map_sel(2)
thf(fact_569_list_Omap__sel_I2_J,axiom,
! [A: list_nat,F: nat > nat] :
( ( A != nil_nat )
=> ( ( tl_nat @ ( map_nat_nat @ F @ A ) )
= ( map_nat_nat @ F @ ( tl_nat @ A ) ) ) ) ).
% list.map_sel(2)
thf(fact_570_list_Oexpand,axiom,
! [List: list_mapping_a_set_a,List2: list_mapping_a_set_a] :
( ( ( List = nil_mapping_a_set_a )
= ( List2 = nil_mapping_a_set_a ) )
=> ( ( ( List != nil_mapping_a_set_a )
=> ( ( List2 != nil_mapping_a_set_a )
=> ( ( ( hd_mapping_a_set_a @ List )
= ( hd_mapping_a_set_a @ List2 ) )
& ( ( tl_mapping_a_set_a @ List )
= ( tl_mapping_a_set_a @ List2 ) ) ) ) )
=> ( List = List2 ) ) ) ).
% list.expand
thf(fact_571_list_Oexpand,axiom,
! [List: list_nat,List2: list_nat] :
( ( ( List = nil_nat )
= ( List2 = nil_nat ) )
=> ( ( ( List != nil_nat )
=> ( ( List2 != nil_nat )
=> ( ( ( hd_nat @ List )
= ( hd_nat @ List2 ) )
& ( ( tl_nat @ List )
= ( tl_nat @ List2 ) ) ) ) )
=> ( List = List2 ) ) ) ).
% list.expand
thf(fact_572_tl__def,axiom,
( tl_mapping_a_set_a
= ( case_l6933312115870525274_set_a @ nil_mapping_a_set_a
@ ^ [X213: mapping_a_set_a,X223: list_mapping_a_set_a] : X223 ) ) ).
% tl_def
thf(fact_573_tl__def,axiom,
( tl_nat
= ( case_l2340614614379431832at_nat @ nil_nat
@ ^ [X213: nat,X223: list_nat] : X223 ) ) ).
% tl_def
thf(fact_574_tl__append,axiom,
! [Xs: list_nat,Ys: list_nat] :
( ( tl_nat @ ( append_nat @ Xs @ Ys ) )
= ( case_l2340614614379431832at_nat @ ( tl_nat @ Ys )
@ ^ [Z: nat,Zs2: list_nat] : ( append_nat @ Zs2 @ Ys )
@ Xs ) ) ).
% tl_append
thf(fact_575_list_Oexhaust__sel,axiom,
! [List: list_mapping_a_set_a] :
( ( List != nil_mapping_a_set_a )
=> ( List
= ( cons_mapping_a_set_a @ ( hd_mapping_a_set_a @ List ) @ ( tl_mapping_a_set_a @ List ) ) ) ) ).
% list.exhaust_sel
thf(fact_576_list_Oexhaust__sel,axiom,
! [List: list_nat] :
( ( List != nil_nat )
=> ( List
= ( cons_nat @ ( hd_nat @ List ) @ ( tl_nat @ List ) ) ) ) ).
% list.exhaust_sel
thf(fact_577_rotate1__hd__tl,axiom,
! [Xs: list_mapping_a_set_a] :
( ( Xs != nil_mapping_a_set_a )
=> ( ( rotate6178470443254404702_set_a @ Xs )
= ( append4262749607566113174_set_a @ ( tl_mapping_a_set_a @ Xs ) @ ( cons_mapping_a_set_a @ ( hd_mapping_a_set_a @ Xs ) @ nil_mapping_a_set_a ) ) ) ) ).
% rotate1_hd_tl
thf(fact_578_rotate1__hd__tl,axiom,
! [Xs: list_nat] :
( ( Xs != nil_nat )
=> ( ( rotate1_nat @ Xs )
= ( append_nat @ ( tl_nat @ Xs ) @ ( cons_nat @ ( hd_nat @ Xs ) @ nil_nat ) ) ) ) ).
% rotate1_hd_tl
thf(fact_579_map__rec,axiom,
( map_nat_nat
= ( ^ [F3: nat > nat] :
( rec_li7516600145284979816at_nat @ nil_nat
@ ^ [X4: nat,Uu: list_nat] : ( cons_nat @ ( F3 @ X4 ) ) ) ) ) ).
% map_rec
thf(fact_580_map__tailrec__rev,axiom,
( map_ta7164188454487880599at_nat
= ( ^ [F3: nat > nat,As: list_nat] : ( append_nat @ ( rev_nat @ ( map_nat_nat @ F3 @ As ) ) ) ) ) ).
% map_tailrec_rev
thf(fact_581_rotate1__is__Nil__conv,axiom,
! [Xs: list_mapping_a_set_a] :
( ( ( rotate6178470443254404702_set_a @ Xs )
= nil_mapping_a_set_a )
= ( Xs = nil_mapping_a_set_a ) ) ).
% rotate1_is_Nil_conv
thf(fact_582_rotate1__is__Nil__conv,axiom,
! [Xs: list_nat] :
( ( ( rotate1_nat @ Xs )
= nil_nat )
= ( Xs = nil_nat ) ) ).
% rotate1_is_Nil_conv
thf(fact_583_rotate1_Osimps_I1_J,axiom,
( ( rotate6178470443254404702_set_a @ nil_mapping_a_set_a )
= nil_mapping_a_set_a ) ).
% rotate1.simps(1)
thf(fact_584_rotate1_Osimps_I1_J,axiom,
( ( rotate1_nat @ nil_nat )
= nil_nat ) ).
% rotate1.simps(1)
thf(fact_585_rotate1__map,axiom,
! [F: nat > nat,Xs: list_nat] :
( ( rotate1_nat @ ( map_nat_nat @ F @ Xs ) )
= ( map_nat_nat @ F @ ( rotate1_nat @ Xs ) ) ) ).
% rotate1_map
thf(fact_586_map__tailrec__rev_Osimps_I2_J,axiom,
! [F: mapping_a_set_a > mapping_a_set_a,A: mapping_a_set_a,As2: list_mapping_a_set_a,Bs: list_mapping_a_set_a] :
( ( map_ta5163468435162167769_set_a @ F @ ( cons_mapping_a_set_a @ A @ As2 ) @ Bs )
= ( map_ta5163468435162167769_set_a @ F @ As2 @ ( cons_mapping_a_set_a @ ( F @ A ) @ Bs ) ) ) ).
% map_tailrec_rev.simps(2)
thf(fact_587_map__tailrec__rev_Osimps_I2_J,axiom,
! [F: mapping_a_set_a > nat,A: mapping_a_set_a,As2: list_mapping_a_set_a,Bs: list_nat] :
( ( map_ta8613830578749771448_a_nat @ F @ ( cons_mapping_a_set_a @ A @ As2 ) @ Bs )
= ( map_ta8613830578749771448_a_nat @ F @ As2 @ ( cons_nat @ ( F @ A ) @ Bs ) ) ) ).
% map_tailrec_rev.simps(2)
thf(fact_588_map__tailrec__rev_Osimps_I2_J,axiom,
! [F: nat > mapping_a_set_a,A: nat,As2: list_nat,Bs: list_mapping_a_set_a] :
( ( map_ta3789601995565066424_set_a @ F @ ( cons_nat @ A @ As2 ) @ Bs )
= ( map_ta3789601995565066424_set_a @ F @ As2 @ ( cons_mapping_a_set_a @ ( F @ A ) @ Bs ) ) ) ).
% map_tailrec_rev.simps(2)
thf(fact_589_map__tailrec__rev_Osimps_I2_J,axiom,
! [F: nat > nat,A: nat,As2: list_nat,Bs: list_nat] :
( ( map_ta7164188454487880599at_nat @ F @ ( cons_nat @ A @ As2 ) @ Bs )
= ( map_ta7164188454487880599at_nat @ F @ As2 @ ( cons_nat @ ( F @ A ) @ Bs ) ) ) ).
% map_tailrec_rev.simps(2)
thf(fact_590_maps__simps_I2_J,axiom,
! [F: mapping_a_set_a > list_mapping_a_set_a] :
( ( maps_m3412264917517915941_set_a @ F @ nil_mapping_a_set_a )
= nil_mapping_a_set_a ) ).
% maps_simps(2)
thf(fact_591_maps__simps_I2_J,axiom,
! [F: mapping_a_set_a > list_nat] :
( ( maps_m6483984096961324036_a_nat @ F @ nil_mapping_a_set_a )
= nil_nat ) ).
% maps_simps(2)
thf(fact_592_maps__simps_I2_J,axiom,
! [F: nat > list_mapping_a_set_a] :
( ( maps_n1659755513776619012_set_a @ F @ nil_nat )
= nil_mapping_a_set_a ) ).
% maps_simps(2)
thf(fact_593_maps__simps_I2_J,axiom,
! [F: nat > list_nat] :
( ( maps_nat_nat @ F @ nil_nat )
= nil_nat ) ).
% maps_simps(2)
thf(fact_594_map__tailrec__rev_Oelims,axiom,
! [X: mapping_a_set_a > mapping_a_set_a,Xa: list_mapping_a_set_a,Xb: list_mapping_a_set_a,Y: list_mapping_a_set_a] :
( ( ( map_ta5163468435162167769_set_a @ X @ Xa @ Xb )
= Y )
=> ( ( ( Xa = nil_mapping_a_set_a )
=> ( Y != Xb ) )
=> ~ ! [A3: mapping_a_set_a,As3: list_mapping_a_set_a] :
( ( Xa
= ( cons_mapping_a_set_a @ A3 @ As3 ) )
=> ( Y
!= ( map_ta5163468435162167769_set_a @ X @ As3 @ ( cons_mapping_a_set_a @ ( X @ A3 ) @ Xb ) ) ) ) ) ) ).
% map_tailrec_rev.elims
thf(fact_595_map__tailrec__rev_Oelims,axiom,
! [X: mapping_a_set_a > nat,Xa: list_mapping_a_set_a,Xb: list_nat,Y: list_nat] :
( ( ( map_ta8613830578749771448_a_nat @ X @ Xa @ Xb )
= Y )
=> ( ( ( Xa = nil_mapping_a_set_a )
=> ( Y != Xb ) )
=> ~ ! [A3: mapping_a_set_a,As3: list_mapping_a_set_a] :
( ( Xa
= ( cons_mapping_a_set_a @ A3 @ As3 ) )
=> ( Y
!= ( map_ta8613830578749771448_a_nat @ X @ As3 @ ( cons_nat @ ( X @ A3 ) @ Xb ) ) ) ) ) ) ).
% map_tailrec_rev.elims
thf(fact_596_map__tailrec__rev_Oelims,axiom,
! [X: nat > mapping_a_set_a,Xa: list_nat,Xb: list_mapping_a_set_a,Y: list_mapping_a_set_a] :
( ( ( map_ta3789601995565066424_set_a @ X @ Xa @ Xb )
= Y )
=> ( ( ( Xa = nil_nat )
=> ( Y != Xb ) )
=> ~ ! [A3: nat,As3: list_nat] :
( ( Xa
= ( cons_nat @ A3 @ As3 ) )
=> ( Y
!= ( map_ta3789601995565066424_set_a @ X @ As3 @ ( cons_mapping_a_set_a @ ( X @ A3 ) @ Xb ) ) ) ) ) ) ).
% map_tailrec_rev.elims
thf(fact_597_map__tailrec__rev_Oelims,axiom,
! [X: nat > nat,Xa: list_nat,Xb: list_nat,Y: list_nat] :
( ( ( map_ta7164188454487880599at_nat @ X @ Xa @ Xb )
= Y )
=> ( ( ( Xa = nil_nat )
=> ( Y != Xb ) )
=> ~ ! [A3: nat,As3: list_nat] :
( ( Xa
= ( cons_nat @ A3 @ As3 ) )
=> ( Y
!= ( map_ta7164188454487880599at_nat @ X @ As3 @ ( cons_nat @ ( X @ A3 ) @ Xb ) ) ) ) ) ) ).
% map_tailrec_rev.elims
thf(fact_598_rotate1_Osimps_I2_J,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( rotate6178470443254404702_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) )
= ( append4262749607566113174_set_a @ Xs @ ( cons_mapping_a_set_a @ X @ nil_mapping_a_set_a ) ) ) ).
% rotate1.simps(2)
thf(fact_599_rotate1_Osimps_I2_J,axiom,
! [X: nat,Xs: list_nat] :
( ( rotate1_nat @ ( cons_nat @ X @ Xs ) )
= ( append_nat @ Xs @ ( cons_nat @ X @ nil_nat ) ) ) ).
% rotate1.simps(2)
thf(fact_600_snoc__listrel1__snoc__iff,axiom,
! [Xs: list_mapping_a_set_a,X: mapping_a_set_a,Ys: list_mapping_a_set_a,Y: mapping_a_set_a,R: set_Pr3081520320537980707_set_a] :
( ( member5198625016828253580_set_a @ ( produc3343591741951367323_set_a @ ( append4262749607566113174_set_a @ Xs @ ( cons_mapping_a_set_a @ X @ nil_mapping_a_set_a ) ) @ ( append4262749607566113174_set_a @ Ys @ ( cons_mapping_a_set_a @ Y @ nil_mapping_a_set_a ) ) ) @ ( listre7612188901796163410_set_a @ R ) )
= ( ( ( member5198625016828253580_set_a @ ( produc3343591741951367323_set_a @ Xs @ Ys ) @ ( listre7612188901796163410_set_a @ R ) )
& ( X = Y ) )
| ( ( Xs = Ys )
& ( member2757164922633442668_set_a @ ( produc7827954888401655931_set_a @ X @ Y ) @ R ) ) ) ) ).
% snoc_listrel1_snoc_iff
thf(fact_601_snoc__listrel1__snoc__iff,axiom,
! [Xs: list_nat,X: nat,Ys: list_nat,Y: nat,R: set_Pr1261947904930325089at_nat] :
( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( append_nat @ Xs @ ( cons_nat @ X @ nil_nat ) ) @ ( append_nat @ Ys @ ( cons_nat @ Y @ nil_nat ) ) ) @ ( listrel1_nat @ R ) )
= ( ( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ Ys ) @ ( listrel1_nat @ R ) )
& ( X = Y ) )
| ( ( Xs = Ys )
& ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Y ) @ R ) ) ) ) ).
% snoc_listrel1_snoc_iff
thf(fact_602_map__decr__upt,axiom,
! [M: nat,N: nat] :
( ( map_nat_nat
@ ^ [N4: nat] : ( minus_minus_nat @ N4 @ ( suc @ zero_zero_nat ) )
@ ( upt @ ( suc @ M ) @ ( suc @ N ) ) )
= ( upt @ M @ N ) ) ).
% map_decr_upt
thf(fact_603_cancel__comm__monoid__add__class_Odiff__cancel,axiom,
! [A: nat] :
( ( minus_minus_nat @ A @ A )
= zero_zero_nat ) ).
% cancel_comm_monoid_add_class.diff_cancel
thf(fact_604_diff__zero,axiom,
! [A: nat] :
( ( minus_minus_nat @ A @ zero_zero_nat )
= A ) ).
% diff_zero
thf(fact_605_zero__diff,axiom,
! [A: nat] :
( ( minus_minus_nat @ zero_zero_nat @ A )
= zero_zero_nat ) ).
% zero_diff
thf(fact_606_diff__Suc__Suc,axiom,
! [M: nat,N: nat] :
( ( minus_minus_nat @ ( suc @ M ) @ ( suc @ N ) )
= ( minus_minus_nat @ M @ N ) ) ).
% diff_Suc_Suc
thf(fact_607_Suc__diff__diff,axiom,
! [M: nat,N: nat,K2: nat] :
( ( minus_minus_nat @ ( minus_minus_nat @ ( suc @ M ) @ N ) @ ( suc @ K2 ) )
= ( minus_minus_nat @ ( minus_minus_nat @ M @ N ) @ K2 ) ) ).
% Suc_diff_diff
thf(fact_608_diff__self__eq__0,axiom,
! [M: nat] :
( ( minus_minus_nat @ M @ M )
= zero_zero_nat ) ).
% diff_self_eq_0
thf(fact_609_diff__0__eq__0,axiom,
! [N: nat] :
( ( minus_minus_nat @ zero_zero_nat @ N )
= zero_zero_nat ) ).
% diff_0_eq_0
thf(fact_610_zero__less__diff,axiom,
! [N: nat,M: nat] :
( ( ord_less_nat @ zero_zero_nat @ ( minus_minus_nat @ N @ M ) )
= ( ord_less_nat @ M @ N ) ) ).
% zero_less_diff
thf(fact_611_Suc__pred,axiom,
! [N: nat] :
( ( ord_less_nat @ zero_zero_nat @ N )
=> ( ( suc @ ( minus_minus_nat @ N @ ( suc @ zero_zero_nat ) ) )
= N ) ) ).
% Suc_pred
thf(fact_612_Cons__listrel1__Cons,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a,Y: mapping_a_set_a,Ys: list_mapping_a_set_a,R: set_Pr3081520320537980707_set_a] :
( ( member5198625016828253580_set_a @ ( produc3343591741951367323_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) @ ( cons_mapping_a_set_a @ Y @ Ys ) ) @ ( listre7612188901796163410_set_a @ R ) )
= ( ( ( member2757164922633442668_set_a @ ( produc7827954888401655931_set_a @ X @ Y ) @ R )
& ( Xs = Ys ) )
| ( ( X = Y )
& ( member5198625016828253580_set_a @ ( produc3343591741951367323_set_a @ Xs @ Ys ) @ ( listre7612188901796163410_set_a @ R ) ) ) ) ) ).
% Cons_listrel1_Cons
thf(fact_613_Cons__listrel1__Cons,axiom,
! [X: nat,Xs: list_nat,Y: nat,Ys: list_nat,R: set_Pr1261947904930325089at_nat] :
( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ X @ Xs ) @ ( cons_nat @ Y @ Ys ) ) @ ( listrel1_nat @ R ) )
= ( ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Y ) @ R )
& ( Xs = Ys ) )
| ( ( X = Y )
& ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ Ys ) @ ( listrel1_nat @ R ) ) ) ) ) ).
% Cons_listrel1_Cons
thf(fact_614_zero__induct__lemma,axiom,
! [P: nat > $o,K2: nat,I: nat] :
( ( P @ K2 )
=> ( ! [N2: nat] :
( ( P @ ( suc @ N2 ) )
=> ( P @ N2 ) )
=> ( P @ ( minus_minus_nat @ K2 @ I ) ) ) ) ).
% zero_induct_lemma
thf(fact_615_minus__nat_Odiff__0,axiom,
! [M: nat] :
( ( minus_minus_nat @ M @ zero_zero_nat )
= M ) ).
% minus_nat.diff_0
thf(fact_616_diffs0__imp__equal,axiom,
! [M: nat,N: nat] :
( ( ( minus_minus_nat @ M @ N )
= zero_zero_nat )
=> ( ( ( minus_minus_nat @ N @ M )
= zero_zero_nat )
=> ( M = N ) ) ) ).
% diffs0_imp_equal
thf(fact_617_less__imp__diff__less,axiom,
! [J2: nat,K2: nat,N: nat] :
( ( ord_less_nat @ J2 @ K2 )
=> ( ord_less_nat @ ( minus_minus_nat @ J2 @ N ) @ K2 ) ) ).
% less_imp_diff_less
thf(fact_618_diff__less__mono2,axiom,
! [M: nat,N: nat,L: nat] :
( ( ord_less_nat @ M @ N )
=> ( ( ord_less_nat @ M @ L )
=> ( ord_less_nat @ ( minus_minus_nat @ L @ N ) @ ( minus_minus_nat @ L @ M ) ) ) ) ).
% diff_less_mono2
thf(fact_619_diff__commute,axiom,
! [I: nat,J2: nat,K2: nat] :
( ( minus_minus_nat @ ( minus_minus_nat @ I @ J2 ) @ K2 )
= ( minus_minus_nat @ ( minus_minus_nat @ I @ K2 ) @ J2 ) ) ).
% diff_commute
thf(fact_620_diff__right__commute,axiom,
! [A: nat,C: nat,B: nat] :
( ( minus_minus_nat @ ( minus_minus_nat @ A @ C ) @ B )
= ( minus_minus_nat @ ( minus_minus_nat @ A @ B ) @ C ) ) ).
% diff_right_commute
thf(fact_621_Suc__diff__Suc,axiom,
! [N: nat,M: nat] :
( ( ord_less_nat @ N @ M )
=> ( ( suc @ ( minus_minus_nat @ M @ ( suc @ N ) ) )
= ( minus_minus_nat @ M @ N ) ) ) ).
% Suc_diff_Suc
thf(fact_622_diff__less__Suc,axiom,
! [M: nat,N: nat] : ( ord_less_nat @ ( minus_minus_nat @ M @ N ) @ ( suc @ M ) ) ).
% diff_less_Suc
thf(fact_623_diff__less,axiom,
! [N: nat,M: nat] :
( ( ord_less_nat @ zero_zero_nat @ N )
=> ( ( ord_less_nat @ zero_zero_nat @ M )
=> ( ord_less_nat @ ( minus_minus_nat @ M @ N ) @ M ) ) ) ).
% diff_less
thf(fact_624_listrel1I2,axiom,
! [Xs: list_mapping_a_set_a,Ys: list_mapping_a_set_a,R: set_Pr3081520320537980707_set_a,X: mapping_a_set_a] :
( ( member5198625016828253580_set_a @ ( produc3343591741951367323_set_a @ Xs @ Ys ) @ ( listre7612188901796163410_set_a @ R ) )
=> ( member5198625016828253580_set_a @ ( produc3343591741951367323_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) @ ( cons_mapping_a_set_a @ X @ Ys ) ) @ ( listre7612188901796163410_set_a @ R ) ) ) ).
% listrel1I2
thf(fact_625_listrel1I2,axiom,
! [Xs: list_nat,Ys: list_nat,R: set_Pr1261947904930325089at_nat,X: nat] :
( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ Ys ) @ ( listrel1_nat @ R ) )
=> ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ X @ Xs ) @ ( cons_nat @ X @ Ys ) ) @ ( listrel1_nat @ R ) ) ) ).
% listrel1I2
thf(fact_626_not__listrel1__Nil,axiom,
! [Xs: list_mapping_a_set_a,R: set_Pr3081520320537980707_set_a] :
~ ( member5198625016828253580_set_a @ ( produc3343591741951367323_set_a @ Xs @ nil_mapping_a_set_a ) @ ( listre7612188901796163410_set_a @ R ) ) ).
% not_listrel1_Nil
thf(fact_627_not__listrel1__Nil,axiom,
! [Xs: list_nat,R: set_Pr1261947904930325089at_nat] :
~ ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ nil_nat ) @ ( listrel1_nat @ R ) ) ).
% not_listrel1_Nil
thf(fact_628_not__Nil__listrel1,axiom,
! [Xs: list_mapping_a_set_a,R: set_Pr3081520320537980707_set_a] :
~ ( member5198625016828253580_set_a @ ( produc3343591741951367323_set_a @ nil_mapping_a_set_a @ Xs ) @ ( listre7612188901796163410_set_a @ R ) ) ).
% not_Nil_listrel1
thf(fact_629_not__Nil__listrel1,axiom,
! [Xs: list_nat,R: set_Pr1261947904930325089at_nat] :
~ ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ nil_nat @ Xs ) @ ( listrel1_nat @ R ) ) ).
% not_Nil_listrel1
thf(fact_630_diff__Suc__less,axiom,
! [N: nat,I: nat] :
( ( ord_less_nat @ zero_zero_nat @ N )
=> ( ord_less_nat @ ( minus_minus_nat @ N @ ( suc @ I ) ) @ N ) ) ).
% diff_Suc_less
thf(fact_631_Cons__listrel1E2,axiom,
! [Xs: list_mapping_a_set_a,Y: mapping_a_set_a,Ys: list_mapping_a_set_a,R: set_Pr3081520320537980707_set_a] :
( ( member5198625016828253580_set_a @ ( produc3343591741951367323_set_a @ Xs @ ( cons_mapping_a_set_a @ Y @ Ys ) ) @ ( listre7612188901796163410_set_a @ R ) )
=> ( ! [X3: mapping_a_set_a] :
( ( Xs
= ( cons_mapping_a_set_a @ X3 @ Ys ) )
=> ~ ( member2757164922633442668_set_a @ ( produc7827954888401655931_set_a @ X3 @ Y ) @ R ) )
=> ~ ! [Zs3: list_mapping_a_set_a] :
( ( Xs
= ( cons_mapping_a_set_a @ Y @ Zs3 ) )
=> ~ ( member5198625016828253580_set_a @ ( produc3343591741951367323_set_a @ Zs3 @ Ys ) @ ( listre7612188901796163410_set_a @ R ) ) ) ) ) ).
% Cons_listrel1E2
thf(fact_632_Cons__listrel1E2,axiom,
! [Xs: list_nat,Y: nat,Ys: list_nat,R: set_Pr1261947904930325089at_nat] :
( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ ( cons_nat @ Y @ Ys ) ) @ ( listrel1_nat @ R ) )
=> ( ! [X3: nat] :
( ( Xs
= ( cons_nat @ X3 @ Ys ) )
=> ~ ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X3 @ Y ) @ R ) )
=> ~ ! [Zs3: list_nat] :
( ( Xs
= ( cons_nat @ Y @ Zs3 ) )
=> ~ ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Zs3 @ Ys ) @ ( listrel1_nat @ R ) ) ) ) ) ).
% Cons_listrel1E2
thf(fact_633_Cons__listrel1E1,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a,Ys: list_mapping_a_set_a,R: set_Pr3081520320537980707_set_a] :
( ( member5198625016828253580_set_a @ ( produc3343591741951367323_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) @ Ys ) @ ( listre7612188901796163410_set_a @ R ) )
=> ( ! [Y3: mapping_a_set_a] :
( ( Ys
= ( cons_mapping_a_set_a @ Y3 @ Xs ) )
=> ~ ( member2757164922633442668_set_a @ ( produc7827954888401655931_set_a @ X @ Y3 ) @ R ) )
=> ~ ! [Zs3: list_mapping_a_set_a] :
( ( Ys
= ( cons_mapping_a_set_a @ X @ Zs3 ) )
=> ~ ( member5198625016828253580_set_a @ ( produc3343591741951367323_set_a @ Xs @ Zs3 ) @ ( listre7612188901796163410_set_a @ R ) ) ) ) ) ).
% Cons_listrel1E1
thf(fact_634_Cons__listrel1E1,axiom,
! [X: nat,Xs: list_nat,Ys: list_nat,R: set_Pr1261947904930325089at_nat] :
( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ X @ Xs ) @ Ys ) @ ( listrel1_nat @ R ) )
=> ( ! [Y3: nat] :
( ( Ys
= ( cons_nat @ Y3 @ Xs ) )
=> ~ ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Y3 ) @ R ) )
=> ~ ! [Zs3: list_nat] :
( ( Ys
= ( cons_nat @ X @ Zs3 ) )
=> ~ ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ Zs3 ) @ ( listrel1_nat @ R ) ) ) ) ) ).
% Cons_listrel1E1
thf(fact_635_listrel1I1,axiom,
! [X: mapping_a_set_a,Y: mapping_a_set_a,R: set_Pr3081520320537980707_set_a,Xs: list_mapping_a_set_a] :
( ( member2757164922633442668_set_a @ ( produc7827954888401655931_set_a @ X @ Y ) @ R )
=> ( member5198625016828253580_set_a @ ( produc3343591741951367323_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) @ ( cons_mapping_a_set_a @ Y @ Xs ) ) @ ( listre7612188901796163410_set_a @ R ) ) ) ).
% listrel1I1
thf(fact_636_listrel1I1,axiom,
! [X: nat,Y: nat,R: set_Pr1261947904930325089at_nat,Xs: list_nat] :
( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Y ) @ R )
=> ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ X @ Xs ) @ ( cons_nat @ Y @ Xs ) ) @ ( listrel1_nat @ R ) ) ) ).
% listrel1I1
thf(fact_637_listrel1I,axiom,
! [X: mapping_a_set_a,Y: mapping_a_set_a,R: set_Pr3081520320537980707_set_a,Xs: list_mapping_a_set_a,Us2: list_mapping_a_set_a,Vs2: list_mapping_a_set_a,Ys: list_mapping_a_set_a] :
( ( member2757164922633442668_set_a @ ( produc7827954888401655931_set_a @ X @ Y ) @ R )
=> ( ( Xs
= ( append4262749607566113174_set_a @ Us2 @ ( cons_mapping_a_set_a @ X @ Vs2 ) ) )
=> ( ( Ys
= ( append4262749607566113174_set_a @ Us2 @ ( cons_mapping_a_set_a @ Y @ Vs2 ) ) )
=> ( member5198625016828253580_set_a @ ( produc3343591741951367323_set_a @ Xs @ Ys ) @ ( listre7612188901796163410_set_a @ R ) ) ) ) ) ).
% listrel1I
thf(fact_638_listrel1I,axiom,
! [X: nat,Y: nat,R: set_Pr1261947904930325089at_nat,Xs: list_nat,Us2: list_nat,Vs2: list_nat,Ys: list_nat] :
( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Y ) @ R )
=> ( ( Xs
= ( append_nat @ Us2 @ ( cons_nat @ X @ Vs2 ) ) )
=> ( ( Ys
= ( append_nat @ Us2 @ ( cons_nat @ Y @ Vs2 ) ) )
=> ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ Ys ) @ ( listrel1_nat @ R ) ) ) ) ) ).
% listrel1I
thf(fact_639_listrel1E,axiom,
! [Xs: list_mapping_a_set_a,Ys: list_mapping_a_set_a,R: set_Pr3081520320537980707_set_a] :
( ( member5198625016828253580_set_a @ ( produc3343591741951367323_set_a @ Xs @ Ys ) @ ( listre7612188901796163410_set_a @ R ) )
=> ~ ! [X3: mapping_a_set_a,Y3: mapping_a_set_a] :
( ( member2757164922633442668_set_a @ ( produc7827954888401655931_set_a @ X3 @ Y3 ) @ R )
=> ! [Us3: list_mapping_a_set_a,Vs3: list_mapping_a_set_a] :
( ( Xs
= ( append4262749607566113174_set_a @ Us3 @ ( cons_mapping_a_set_a @ X3 @ Vs3 ) ) )
=> ( Ys
!= ( append4262749607566113174_set_a @ Us3 @ ( cons_mapping_a_set_a @ Y3 @ Vs3 ) ) ) ) ) ) ).
% listrel1E
thf(fact_640_listrel1E,axiom,
! [Xs: list_nat,Ys: list_nat,R: set_Pr1261947904930325089at_nat] :
( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ Ys ) @ ( listrel1_nat @ R ) )
=> ~ ! [X3: nat,Y3: nat] :
( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X3 @ Y3 ) @ R )
=> ! [Us3: list_nat,Vs3: list_nat] :
( ( Xs
= ( append_nat @ Us3 @ ( cons_nat @ X3 @ Vs3 ) ) )
=> ( Ys
!= ( append_nat @ Us3 @ ( cons_nat @ Y3 @ Vs3 ) ) ) ) ) ) ).
% listrel1E
thf(fact_641_map__eq__map__tailrec,axiom,
map_nat_nat = map_tailrec_nat_nat ).
% map_eq_map_tailrec
thf(fact_642_nth__Cons__pos,axiom,
! [N: nat,X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( ord_less_nat @ zero_zero_nat @ N )
=> ( ( nth_mapping_a_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) @ N )
= ( nth_mapping_a_set_a @ Xs @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ).
% nth_Cons_pos
thf(fact_643_nth__Cons__pos,axiom,
! [N: nat,X: nat,Xs: list_nat] :
( ( ord_less_nat @ zero_zero_nat @ N )
=> ( ( nth_nat @ ( cons_nat @ X @ Xs ) @ N )
= ( nth_nat @ Xs @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ).
% nth_Cons_pos
thf(fact_644_nth__map__upt,axiom,
! [I: nat,N: nat,M: nat,F: nat > nat] :
( ( ord_less_nat @ I @ ( minus_minus_nat @ N @ M ) )
=> ( ( nth_nat @ ( map_nat_nat @ F @ ( upt @ M @ N ) ) @ I )
= ( F @ ( plus_plus_nat @ M @ I ) ) ) ) ).
% nth_map_upt
thf(fact_645_nth__non__equal__first__eq,axiom,
! [X: mapping_a_set_a,Y: mapping_a_set_a,Xs: list_mapping_a_set_a,N: nat] :
( ( X != Y )
=> ( ( ( nth_mapping_a_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) @ N )
= Y )
= ( ( ( nth_mapping_a_set_a @ Xs @ ( minus_minus_nat @ N @ one_one_nat ) )
= Y )
& ( ord_less_nat @ zero_zero_nat @ N ) ) ) ) ).
% nth_non_equal_first_eq
thf(fact_646_nth__non__equal__first__eq,axiom,
! [X: nat,Y: nat,Xs: list_nat,N: nat] :
( ( X != Y )
=> ( ( ( nth_nat @ ( cons_nat @ X @ Xs ) @ N )
= Y )
= ( ( ( nth_nat @ Xs @ ( minus_minus_nat @ N @ one_one_nat ) )
= Y )
& ( ord_less_nat @ zero_zero_nat @ N ) ) ) ) ).
% nth_non_equal_first_eq
thf(fact_647_nth__Cons__numeral,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a,V: num] :
( ( nth_mapping_a_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) @ ( numeral_numeral_nat @ V ) )
= ( nth_mapping_a_set_a @ Xs @ ( minus_minus_nat @ ( numeral_numeral_nat @ V ) @ one_one_nat ) ) ) ).
% nth_Cons_numeral
thf(fact_648_nth__Cons__numeral,axiom,
! [X: nat,Xs: list_nat,V: num] :
( ( nth_nat @ ( cons_nat @ X @ Xs ) @ ( numeral_numeral_nat @ V ) )
= ( nth_nat @ Xs @ ( minus_minus_nat @ ( numeral_numeral_nat @ V ) @ one_one_nat ) ) ) ).
% nth_Cons_numeral
thf(fact_649_Suc__diff__1,axiom,
! [N: nat] :
( ( ord_less_nat @ zero_zero_nat @ N )
=> ( ( suc @ ( minus_minus_nat @ N @ one_one_nat ) )
= N ) ) ).
% Suc_diff_1
thf(fact_650_add__right__cancel,axiom,
! [B: nat,A: nat,C: nat] :
( ( ( plus_plus_nat @ B @ A )
= ( plus_plus_nat @ C @ A ) )
= ( B = C ) ) ).
% add_right_cancel
thf(fact_651_add__left__cancel,axiom,
! [A: nat,B: nat,C: nat] :
( ( ( plus_plus_nat @ A @ B )
= ( plus_plus_nat @ A @ C ) )
= ( B = C ) ) ).
% add_left_cancel
thf(fact_652_add_Oright__neutral,axiom,
! [A: nat] :
( ( plus_plus_nat @ A @ zero_zero_nat )
= A ) ).
% add.right_neutral
thf(fact_653_add__cancel__left__left,axiom,
! [B: nat,A: nat] :
( ( ( plus_plus_nat @ B @ A )
= A )
= ( B = zero_zero_nat ) ) ).
% add_cancel_left_left
thf(fact_654_add__cancel__left__right,axiom,
! [A: nat,B: nat] :
( ( ( plus_plus_nat @ A @ B )
= A )
= ( B = zero_zero_nat ) ) ).
% add_cancel_left_right
thf(fact_655_add__cancel__right__left,axiom,
! [A: nat,B: nat] :
( ( A
= ( plus_plus_nat @ B @ A ) )
= ( B = zero_zero_nat ) ) ).
% add_cancel_right_left
thf(fact_656_add__cancel__right__right,axiom,
! [A: nat,B: nat] :
( ( A
= ( plus_plus_nat @ A @ B ) )
= ( B = zero_zero_nat ) ) ).
% add_cancel_right_right
thf(fact_657_add__eq__0__iff__both__eq__0,axiom,
! [X: nat,Y: nat] :
( ( ( plus_plus_nat @ X @ Y )
= zero_zero_nat )
= ( ( X = zero_zero_nat )
& ( Y = zero_zero_nat ) ) ) ).
% add_eq_0_iff_both_eq_0
thf(fact_658_zero__eq__add__iff__both__eq__0,axiom,
! [X: nat,Y: nat] :
( ( zero_zero_nat
= ( plus_plus_nat @ X @ Y ) )
= ( ( X = zero_zero_nat )
& ( Y = zero_zero_nat ) ) ) ).
% zero_eq_add_iff_both_eq_0
thf(fact_659_add__0,axiom,
! [A: nat] :
( ( plus_plus_nat @ zero_zero_nat @ A )
= A ) ).
% add_0
thf(fact_660_add__less__cancel__right,axiom,
! [A: nat,C: nat,B: nat] :
( ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) )
= ( ord_less_nat @ A @ B ) ) ).
% add_less_cancel_right
thf(fact_661_add__less__cancel__left,axiom,
! [C: nat,A: nat,B: nat] :
( ( ord_less_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) )
= ( ord_less_nat @ A @ B ) ) ).
% add_less_cancel_left
thf(fact_662_numeral__plus__numeral,axiom,
! [M: num,N: num] :
( ( plus_plus_nat @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ N ) )
= ( numeral_numeral_nat @ ( plus_plus_num @ M @ N ) ) ) ).
% numeral_plus_numeral
thf(fact_663_add__numeral__left,axiom,
! [V: num,W: num,Z3: nat] :
( ( plus_plus_nat @ ( numeral_numeral_nat @ V ) @ ( plus_plus_nat @ ( numeral_numeral_nat @ W ) @ Z3 ) )
= ( plus_plus_nat @ ( numeral_numeral_nat @ ( plus_plus_num @ V @ W ) ) @ Z3 ) ) ).
% add_numeral_left
thf(fact_664_add__diff__cancel__right_H,axiom,
! [A: nat,B: nat] :
( ( minus_minus_nat @ ( plus_plus_nat @ A @ B ) @ B )
= A ) ).
% add_diff_cancel_right'
thf(fact_665_add__diff__cancel__right,axiom,
! [A: nat,C: nat,B: nat] :
( ( minus_minus_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) )
= ( minus_minus_nat @ A @ B ) ) ).
% add_diff_cancel_right
thf(fact_666_add__diff__cancel__left_H,axiom,
! [A: nat,B: nat] :
( ( minus_minus_nat @ ( plus_plus_nat @ A @ B ) @ A )
= B ) ).
% add_diff_cancel_left'
thf(fact_667_add__diff__cancel__left,axiom,
! [C: nat,A: nat,B: nat] :
( ( minus_minus_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) )
= ( minus_minus_nat @ A @ B ) ) ).
% add_diff_cancel_left
thf(fact_668_add__Suc__right,axiom,
! [M: nat,N: nat] :
( ( plus_plus_nat @ M @ ( suc @ N ) )
= ( suc @ ( plus_plus_nat @ M @ N ) ) ) ).
% add_Suc_right
thf(fact_669_add__is__0,axiom,
! [M: nat,N: nat] :
( ( ( plus_plus_nat @ M @ N )
= zero_zero_nat )
= ( ( M = zero_zero_nat )
& ( N = zero_zero_nat ) ) ) ).
% add_is_0
thf(fact_670_Nat_Oadd__0__right,axiom,
! [M: nat] :
( ( plus_plus_nat @ M @ zero_zero_nat )
= M ) ).
% Nat.add_0_right
thf(fact_671_nat__add__left__cancel__less,axiom,
! [K2: nat,M: nat,N: nat] :
( ( ord_less_nat @ ( plus_plus_nat @ K2 @ M ) @ ( plus_plus_nat @ K2 @ N ) )
= ( ord_less_nat @ M @ N ) ) ).
% nat_add_left_cancel_less
thf(fact_672_diff__diff__left,axiom,
! [I: nat,J2: nat,K2: nat] :
( ( minus_minus_nat @ ( minus_minus_nat @ I @ J2 ) @ K2 )
= ( minus_minus_nat @ I @ ( plus_plus_nat @ J2 @ K2 ) ) ) ).
% diff_diff_left
thf(fact_673_less__add__same__cancel2,axiom,
! [A: nat,B: nat] :
( ( ord_less_nat @ A @ ( plus_plus_nat @ B @ A ) )
= ( ord_less_nat @ zero_zero_nat @ B ) ) ).
% less_add_same_cancel2
thf(fact_674_less__add__same__cancel1,axiom,
! [A: nat,B: nat] :
( ( ord_less_nat @ A @ ( plus_plus_nat @ A @ B ) )
= ( ord_less_nat @ zero_zero_nat @ B ) ) ).
% less_add_same_cancel1
thf(fact_675_add__less__same__cancel2,axiom,
! [A: nat,B: nat] :
( ( ord_less_nat @ ( plus_plus_nat @ A @ B ) @ B )
= ( ord_less_nat @ A @ zero_zero_nat ) ) ).
% add_less_same_cancel2
thf(fact_676_add__less__same__cancel1,axiom,
! [B: nat,A: nat] :
( ( ord_less_nat @ ( plus_plus_nat @ B @ A ) @ B )
= ( ord_less_nat @ A @ zero_zero_nat ) ) ).
% add_less_same_cancel1
thf(fact_677_diff__add__zero,axiom,
! [A: nat,B: nat] :
( ( minus_minus_nat @ A @ ( plus_plus_nat @ A @ B ) )
= zero_zero_nat ) ).
% diff_add_zero
thf(fact_678_add__gr__0,axiom,
! [M: nat,N: nat] :
( ( ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ M @ N ) )
= ( ( ord_less_nat @ zero_zero_nat @ M )
| ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).
% add_gr_0
thf(fact_679_less__one,axiom,
! [N: nat] :
( ( ord_less_nat @ N @ one_one_nat )
= ( N = zero_zero_nat ) ) ).
% less_one
thf(fact_680_diff__Suc__1,axiom,
! [N: nat] :
( ( minus_minus_nat @ ( suc @ N ) @ one_one_nat )
= N ) ).
% diff_Suc_1
thf(fact_681_nth__upt,axiom,
! [I: nat,K2: nat,J2: nat] :
( ( ord_less_nat @ ( plus_plus_nat @ I @ K2 ) @ J2 )
=> ( ( nth_nat @ ( upt @ I @ J2 ) @ K2 )
= ( plus_plus_nat @ I @ K2 ) ) ) ).
% nth_upt
thf(fact_682_Nat_Odiff__cancel,axiom,
! [K2: nat,M: nat,N: nat] :
( ( minus_minus_nat @ ( plus_plus_nat @ K2 @ M ) @ ( plus_plus_nat @ K2 @ N ) )
= ( minus_minus_nat @ M @ N ) ) ).
% Nat.diff_cancel
thf(fact_683_diff__cancel2,axiom,
! [M: nat,K2: nat,N: nat] :
( ( minus_minus_nat @ ( plus_plus_nat @ M @ K2 ) @ ( plus_plus_nat @ N @ K2 ) )
= ( minus_minus_nat @ M @ N ) ) ).
% diff_cancel2
thf(fact_684_diff__add__inverse,axiom,
! [N: nat,M: nat] :
( ( minus_minus_nat @ ( plus_plus_nat @ N @ M ) @ N )
= M ) ).
% diff_add_inverse
thf(fact_685_diff__add__inverse2,axiom,
! [M: nat,N: nat] :
( ( minus_minus_nat @ ( plus_plus_nat @ M @ N ) @ N )
= M ) ).
% diff_add_inverse2
thf(fact_686_add__implies__diff,axiom,
! [C: nat,B: nat,A: nat] :
( ( ( plus_plus_nat @ C @ B )
= A )
=> ( C
= ( minus_minus_nat @ A @ B ) ) ) ).
% add_implies_diff
thf(fact_687_diff__diff__eq,axiom,
! [A: nat,B: nat,C: nat] :
( ( minus_minus_nat @ ( minus_minus_nat @ A @ B ) @ C )
= ( minus_minus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).
% diff_diff_eq
thf(fact_688_less__numeral__extra_I4_J,axiom,
~ ( ord_less_nat @ one_one_nat @ one_one_nat ) ).
% less_numeral_extra(4)
thf(fact_689_add_Ocomm__neutral,axiom,
! [A: nat] :
( ( plus_plus_nat @ A @ zero_zero_nat )
= A ) ).
% add.comm_neutral
thf(fact_690_comm__monoid__add__class_Oadd__0,axiom,
! [A: nat] :
( ( plus_plus_nat @ zero_zero_nat @ A )
= A ) ).
% comm_monoid_add_class.add_0
thf(fact_691_add__mono__thms__linordered__field_I5_J,axiom,
! [I: nat,J2: nat,K2: nat,L: nat] :
( ( ( ord_less_nat @ I @ J2 )
& ( ord_less_nat @ K2 @ L ) )
=> ( ord_less_nat @ ( plus_plus_nat @ I @ K2 ) @ ( plus_plus_nat @ J2 @ L ) ) ) ).
% add_mono_thms_linordered_field(5)
thf(fact_692_add__mono__thms__linordered__field_I2_J,axiom,
! [I: nat,J2: nat,K2: nat,L: nat] :
( ( ( I = J2 )
& ( ord_less_nat @ K2 @ L ) )
=> ( ord_less_nat @ ( plus_plus_nat @ I @ K2 ) @ ( plus_plus_nat @ J2 @ L ) ) ) ).
% add_mono_thms_linordered_field(2)
thf(fact_693_add__mono__thms__linordered__field_I1_J,axiom,
! [I: nat,J2: nat,K2: nat,L: nat] :
( ( ( ord_less_nat @ I @ J2 )
& ( K2 = L ) )
=> ( ord_less_nat @ ( plus_plus_nat @ I @ K2 ) @ ( plus_plus_nat @ J2 @ L ) ) ) ).
% add_mono_thms_linordered_field(1)
thf(fact_694_add__strict__mono,axiom,
! [A: nat,B: nat,C: nat,D: nat] :
( ( ord_less_nat @ A @ B )
=> ( ( ord_less_nat @ C @ D )
=> ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ D ) ) ) ) ).
% add_strict_mono
thf(fact_695_add__strict__left__mono,axiom,
! [A: nat,B: nat,C: nat] :
( ( ord_less_nat @ A @ B )
=> ( ord_less_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) ) ) ).
% add_strict_left_mono
thf(fact_696_add__strict__right__mono,axiom,
! [A: nat,B: nat,C: nat] :
( ( ord_less_nat @ A @ B )
=> ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) ) ) ).
% add_strict_right_mono
thf(fact_697_add__less__imp__less__left,axiom,
! [C: nat,A: nat,B: nat] :
( ( ord_less_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) )
=> ( ord_less_nat @ A @ B ) ) ).
% add_less_imp_less_left
thf(fact_698_add__less__imp__less__right,axiom,
! [A: nat,C: nat,B: nat] :
( ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) )
=> ( ord_less_nat @ A @ B ) ) ).
% add_less_imp_less_right
thf(fact_699_one__plus__numeral__commute,axiom,
! [X: num] :
( ( plus_plus_nat @ one_one_nat @ ( numeral_numeral_nat @ X ) )
= ( plus_plus_nat @ ( numeral_numeral_nat @ X ) @ one_one_nat ) ) ).
% one_plus_numeral_commute
thf(fact_700_one__reorient,axiom,
! [X: nat] :
( ( one_one_nat = X )
= ( X = one_one_nat ) ) ).
% one_reorient
thf(fact_701_add__right__imp__eq,axiom,
! [B: nat,A: nat,C: nat] :
( ( ( plus_plus_nat @ B @ A )
= ( plus_plus_nat @ C @ A ) )
=> ( B = C ) ) ).
% add_right_imp_eq
thf(fact_702_add__left__imp__eq,axiom,
! [A: nat,B: nat,C: nat] :
( ( ( plus_plus_nat @ A @ B )
= ( plus_plus_nat @ A @ C ) )
=> ( B = C ) ) ).
% add_left_imp_eq
thf(fact_703_add_Oleft__commute,axiom,
! [B: nat,A: nat,C: nat] :
( ( plus_plus_nat @ B @ ( plus_plus_nat @ A @ C ) )
= ( plus_plus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).
% add.left_commute
thf(fact_704_add_Ocommute,axiom,
( plus_plus_nat
= ( ^ [A4: nat,B2: nat] : ( plus_plus_nat @ B2 @ A4 ) ) ) ).
% add.commute
thf(fact_705_add_Oassoc,axiom,
! [A: nat,B: nat,C: nat] :
( ( plus_plus_nat @ ( plus_plus_nat @ A @ B ) @ C )
= ( plus_plus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).
% add.assoc
thf(fact_706_group__cancel_Oadd2,axiom,
! [B3: nat,K2: nat,B: nat,A: nat] :
( ( B3
= ( plus_plus_nat @ K2 @ B ) )
=> ( ( plus_plus_nat @ A @ B3 )
= ( plus_plus_nat @ K2 @ ( plus_plus_nat @ A @ B ) ) ) ) ).
% group_cancel.add2
thf(fact_707_group__cancel_Oadd1,axiom,
! [A2: nat,K2: nat,A: nat,B: nat] :
( ( A2
= ( plus_plus_nat @ K2 @ A ) )
=> ( ( plus_plus_nat @ A2 @ B )
= ( plus_plus_nat @ K2 @ ( plus_plus_nat @ A @ B ) ) ) ) ).
% group_cancel.add1
thf(fact_708_add__mono__thms__linordered__semiring_I4_J,axiom,
! [I: nat,J2: nat,K2: nat,L: nat] :
( ( ( I = J2 )
& ( K2 = L ) )
=> ( ( plus_plus_nat @ I @ K2 )
= ( plus_plus_nat @ J2 @ L ) ) ) ).
% add_mono_thms_linordered_semiring(4)
thf(fact_709_ab__semigroup__add__class_Oadd__ac_I1_J,axiom,
! [A: nat,B: nat,C: nat] :
( ( plus_plus_nat @ ( plus_plus_nat @ A @ B ) @ C )
= ( plus_plus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).
% ab_semigroup_add_class.add_ac(1)
thf(fact_710_Suc__eq__plus1__left,axiom,
( suc
= ( plus_plus_nat @ one_one_nat ) ) ).
% Suc_eq_plus1_left
thf(fact_711_plus__1__eq__Suc,axiom,
( ( plus_plus_nat @ one_one_nat )
= suc ) ).
% plus_1_eq_Suc
thf(fact_712_Suc__eq__plus1,axiom,
( suc
= ( ^ [N4: nat] : ( plus_plus_nat @ N4 @ one_one_nat ) ) ) ).
% Suc_eq_plus1
thf(fact_713_add__lessD1,axiom,
! [I: nat,J2: nat,K2: nat] :
( ( ord_less_nat @ ( plus_plus_nat @ I @ J2 ) @ K2 )
=> ( ord_less_nat @ I @ K2 ) ) ).
% add_lessD1
thf(fact_714_add__less__mono,axiom,
! [I: nat,J2: nat,K2: nat,L: nat] :
( ( ord_less_nat @ I @ J2 )
=> ( ( ord_less_nat @ K2 @ L )
=> ( ord_less_nat @ ( plus_plus_nat @ I @ K2 ) @ ( plus_plus_nat @ J2 @ L ) ) ) ) ).
% add_less_mono
thf(fact_715_not__add__less1,axiom,
! [I: nat,J2: nat] :
~ ( ord_less_nat @ ( plus_plus_nat @ I @ J2 ) @ I ) ).
% not_add_less1
thf(fact_716_not__add__less2,axiom,
! [J2: nat,I: nat] :
~ ( ord_less_nat @ ( plus_plus_nat @ J2 @ I ) @ I ) ).
% not_add_less2
thf(fact_717_add__less__mono1,axiom,
! [I: nat,J2: nat,K2: nat] :
( ( ord_less_nat @ I @ J2 )
=> ( ord_less_nat @ ( plus_plus_nat @ I @ K2 ) @ ( plus_plus_nat @ J2 @ K2 ) ) ) ).
% add_less_mono1
thf(fact_718_trans__less__add1,axiom,
! [I: nat,J2: nat,M: nat] :
( ( ord_less_nat @ I @ J2 )
=> ( ord_less_nat @ I @ ( plus_plus_nat @ J2 @ M ) ) ) ).
% trans_less_add1
thf(fact_719_trans__less__add2,axiom,
! [I: nat,J2: nat,M: nat] :
( ( ord_less_nat @ I @ J2 )
=> ( ord_less_nat @ I @ ( plus_plus_nat @ M @ J2 ) ) ) ).
% trans_less_add2
thf(fact_720_less__add__eq__less,axiom,
! [K2: nat,L: nat,M: nat,N: nat] :
( ( ord_less_nat @ K2 @ L )
=> ( ( ( plus_plus_nat @ M @ L )
= ( plus_plus_nat @ K2 @ N ) )
=> ( ord_less_nat @ M @ N ) ) ) ).
% less_add_eq_less
thf(fact_721_add__eq__self__zero,axiom,
! [M: nat,N: nat] :
( ( ( plus_plus_nat @ M @ N )
= M )
=> ( N = zero_zero_nat ) ) ).
% add_eq_self_zero
thf(fact_722_plus__nat_Oadd__0,axiom,
! [N: nat] :
( ( plus_plus_nat @ zero_zero_nat @ N )
= N ) ).
% plus_nat.add_0
thf(fact_723_nat__arith_Osuc1,axiom,
! [A2: nat,K2: nat,A: nat] :
( ( A2
= ( plus_plus_nat @ K2 @ A ) )
=> ( ( suc @ A2 )
= ( plus_plus_nat @ K2 @ ( suc @ A ) ) ) ) ).
% nat_arith.suc1
thf(fact_724_add__Suc,axiom,
! [M: nat,N: nat] :
( ( plus_plus_nat @ ( suc @ M ) @ N )
= ( suc @ ( plus_plus_nat @ M @ N ) ) ) ).
% add_Suc
thf(fact_725_add__Suc__shift,axiom,
! [M: nat,N: nat] :
( ( plus_plus_nat @ ( suc @ M ) @ N )
= ( plus_plus_nat @ M @ ( suc @ N ) ) ) ).
% add_Suc_shift
thf(fact_726_add__eq__if,axiom,
( plus_plus_nat
= ( ^ [M6: nat,N4: nat] : ( if_nat @ ( M6 = zero_zero_nat ) @ N4 @ ( suc @ ( plus_plus_nat @ ( minus_minus_nat @ M6 @ one_one_nat ) @ N4 ) ) ) ) ) ).
% add_eq_if
thf(fact_727_upt__eq__Cons__conv,axiom,
! [I: nat,J2: nat,X: nat,Xs: list_nat] :
( ( ( upt @ I @ J2 )
= ( cons_nat @ X @ Xs ) )
= ( ( ord_less_nat @ I @ J2 )
& ( I = X )
& ( ( upt @ ( plus_plus_nat @ I @ one_one_nat ) @ J2 )
= Xs ) ) ) ).
% upt_eq_Cons_conv
thf(fact_728_add__neg__neg,axiom,
! [A: nat,B: nat] :
( ( ord_less_nat @ A @ zero_zero_nat )
=> ( ( ord_less_nat @ B @ zero_zero_nat )
=> ( ord_less_nat @ ( plus_plus_nat @ A @ B ) @ zero_zero_nat ) ) ) ).
% add_neg_neg
thf(fact_729_add__pos__pos,axiom,
! [A: nat,B: nat] :
( ( ord_less_nat @ zero_zero_nat @ A )
=> ( ( ord_less_nat @ zero_zero_nat @ B )
=> ( ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ A @ B ) ) ) ) ).
% add_pos_pos
thf(fact_730_canonically__ordered__monoid__add__class_OlessE,axiom,
! [A: nat,B: nat] :
( ( ord_less_nat @ A @ B )
=> ~ ! [C2: nat] :
( ( B
= ( plus_plus_nat @ A @ C2 ) )
=> ( C2 = zero_zero_nat ) ) ) ).
% canonically_ordered_monoid_add_class.lessE
thf(fact_731_pos__add__strict,axiom,
! [A: nat,B: nat,C: nat] :
( ( ord_less_nat @ zero_zero_nat @ A )
=> ( ( ord_less_nat @ B @ C )
=> ( ord_less_nat @ B @ ( plus_plus_nat @ A @ C ) ) ) ) ).
% pos_add_strict
thf(fact_732_add__is__1,axiom,
! [M: nat,N: nat] :
( ( ( plus_plus_nat @ M @ N )
= ( suc @ zero_zero_nat ) )
= ( ( ( M
= ( suc @ zero_zero_nat ) )
& ( N = zero_zero_nat ) )
| ( ( M = zero_zero_nat )
& ( N
= ( suc @ zero_zero_nat ) ) ) ) ) ).
% add_is_1
thf(fact_733_one__is__add,axiom,
! [M: nat,N: nat] :
( ( ( suc @ zero_zero_nat )
= ( plus_plus_nat @ M @ N ) )
= ( ( ( M
= ( suc @ zero_zero_nat ) )
& ( N = zero_zero_nat ) )
| ( ( M = zero_zero_nat )
& ( N
= ( suc @ zero_zero_nat ) ) ) ) ) ).
% one_is_add
thf(fact_734_less__imp__Suc__add,axiom,
! [M: nat,N: nat] :
( ( ord_less_nat @ M @ N )
=> ? [K3: nat] :
( N
= ( suc @ ( plus_plus_nat @ M @ K3 ) ) ) ) ).
% less_imp_Suc_add
thf(fact_735_less__iff__Suc__add,axiom,
( ord_less_nat
= ( ^ [M6: nat,N4: nat] :
? [K: nat] :
( N4
= ( suc @ ( plus_plus_nat @ M6 @ K ) ) ) ) ) ).
% less_iff_Suc_add
thf(fact_736_less__add__Suc2,axiom,
! [I: nat,M: nat] : ( ord_less_nat @ I @ ( suc @ ( plus_plus_nat @ M @ I ) ) ) ).
% less_add_Suc2
thf(fact_737_less__add__Suc1,axiom,
! [I: nat,M: nat] : ( ord_less_nat @ I @ ( suc @ ( plus_plus_nat @ I @ M ) ) ) ).
% less_add_Suc1
thf(fact_738_less__natE,axiom,
! [M: nat,N: nat] :
( ( ord_less_nat @ M @ N )
=> ~ ! [Q3: nat] :
( N
!= ( suc @ ( plus_plus_nat @ M @ Q3 ) ) ) ) ).
% less_natE
thf(fact_739_less__imp__add__positive,axiom,
! [I: nat,J2: nat] :
( ( ord_less_nat @ I @ J2 )
=> ? [K3: nat] :
( ( ord_less_nat @ zero_zero_nat @ K3 )
& ( ( plus_plus_nat @ I @ K3 )
= J2 ) ) ) ).
% less_imp_add_positive
thf(fact_740_diff__add__0,axiom,
! [N: nat,M: nat] :
( ( minus_minus_nat @ N @ ( plus_plus_nat @ N @ M ) )
= zero_zero_nat ) ).
% diff_add_0
thf(fact_741_less__numeral__extra_I1_J,axiom,
ord_less_nat @ zero_zero_nat @ one_one_nat ).
% less_numeral_extra(1)
thf(fact_742_less__diff__conv,axiom,
! [I: nat,J2: nat,K2: nat] :
( ( ord_less_nat @ I @ ( minus_minus_nat @ J2 @ K2 ) )
= ( ord_less_nat @ ( plus_plus_nat @ I @ K2 ) @ J2 ) ) ).
% less_diff_conv
thf(fact_743_add__diff__inverse__nat,axiom,
! [M: nat,N: nat] :
( ~ ( ord_less_nat @ M @ N )
=> ( ( plus_plus_nat @ N @ ( minus_minus_nat @ M @ N ) )
= M ) ) ).
% add_diff_inverse_nat
thf(fact_744_not__numeral__less__one,axiom,
! [N: num] :
~ ( ord_less_nat @ ( numeral_numeral_nat @ N ) @ one_one_nat ) ).
% not_numeral_less_one
thf(fact_745_One__nat__def,axiom,
( one_one_nat
= ( suc @ zero_zero_nat ) ) ).
% One_nat_def
thf(fact_746_diff__Suc__eq__diff__pred,axiom,
! [M: nat,N: nat] :
( ( minus_minus_nat @ M @ ( suc @ N ) )
= ( minus_minus_nat @ ( minus_minus_nat @ M @ one_one_nat ) @ N ) ) ).
% diff_Suc_eq_diff_pred
thf(fact_747_nat__diff__split__asm,axiom,
! [P: nat > $o,A: nat,B: nat] :
( ( P @ ( minus_minus_nat @ A @ B ) )
= ( ~ ( ( ( ord_less_nat @ A @ B )
& ~ ( P @ zero_zero_nat ) )
| ? [D2: nat] :
( ( A
= ( plus_plus_nat @ B @ D2 ) )
& ~ ( P @ D2 ) ) ) ) ) ).
% nat_diff_split_asm
thf(fact_748_nat__diff__split,axiom,
! [P: nat > $o,A: nat,B: nat] :
( ( P @ ( minus_minus_nat @ A @ B ) )
= ( ( ( ord_less_nat @ A @ B )
=> ( P @ zero_zero_nat ) )
& ! [D2: nat] :
( ( A
= ( plus_plus_nat @ B @ D2 ) )
=> ( P @ D2 ) ) ) ) ).
% nat_diff_split
thf(fact_749_nat__induct__non__zero,axiom,
! [N: nat,P: nat > $o] :
( ( ord_less_nat @ zero_zero_nat @ N )
=> ( ( P @ one_one_nat )
=> ( ! [N2: nat] :
( ( ord_less_nat @ zero_zero_nat @ N2 )
=> ( ( P @ N2 )
=> ( P @ ( suc @ N2 ) ) ) )
=> ( P @ N ) ) ) ) ).
% nat_induct_non_zero
thf(fact_750_Suc__pred_H,axiom,
! [N: nat] :
( ( ord_less_nat @ zero_zero_nat @ N )
=> ( N
= ( suc @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ).
% Suc_pred'
thf(fact_751_Suc__diff__eq__diff__pred,axiom,
! [N: nat,M: nat] :
( ( ord_less_nat @ zero_zero_nat @ N )
=> ( ( minus_minus_nat @ ( suc @ M ) @ N )
= ( minus_minus_nat @ M @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ).
% Suc_diff_eq_diff_pred
thf(fact_752_map__add__upt,axiom,
! [N: nat,M: nat] :
( ( map_nat_nat
@ ^ [I2: nat] : ( plus_plus_nat @ I2 @ N )
@ ( upt @ zero_zero_nat @ M ) )
= ( upt @ N @ ( plus_plus_nat @ M @ N ) ) ) ).
% map_add_upt
thf(fact_753_nth__Cons_H,axiom,
! [N: nat,X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( ( N = zero_zero_nat )
=> ( ( nth_mapping_a_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) @ N )
= X ) )
& ( ( N != zero_zero_nat )
=> ( ( nth_mapping_a_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) @ N )
= ( nth_mapping_a_set_a @ Xs @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ) ).
% nth_Cons'
thf(fact_754_nth__Cons_H,axiom,
! [N: nat,X: nat,Xs: list_nat] :
( ( ( N = zero_zero_nat )
=> ( ( nth_nat @ ( cons_nat @ X @ Xs ) @ N )
= X ) )
& ( ( N != zero_zero_nat )
=> ( ( nth_nat @ ( cons_nat @ X @ Xs ) @ N )
= ( nth_nat @ Xs @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ) ).
% nth_Cons'
thf(fact_755_zero__less__two,axiom,
ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ one_one_nat @ one_one_nat ) ).
% zero_less_two
thf(fact_756_linordered__semidom__class_Oadd__diff__inverse,axiom,
! [A: nat,B: nat] :
( ~ ( ord_less_nat @ A @ B )
=> ( ( plus_plus_nat @ B @ ( minus_minus_nat @ A @ B ) )
= A ) ) ).
% linordered_semidom_class.add_diff_inverse
thf(fact_757_zero__neq__one,axiom,
zero_zero_nat != one_one_nat ).
% zero_neq_one
thf(fact_758_not__one__less__zero,axiom,
~ ( ord_less_nat @ one_one_nat @ zero_zero_nat ) ).
% not_one_less_zero
thf(fact_759_zero__less__one,axiom,
ord_less_nat @ zero_zero_nat @ one_one_nat ).
% zero_less_one
thf(fact_760_less__add__one,axiom,
! [A: nat] : ( ord_less_nat @ A @ ( plus_plus_nat @ A @ one_one_nat ) ) ).
% less_add_one
thf(fact_761_add__mono1,axiom,
! [A: nat,B: nat] :
( ( ord_less_nat @ A @ B )
=> ( ord_less_nat @ ( plus_plus_nat @ A @ one_one_nat ) @ ( plus_plus_nat @ B @ one_one_nat ) ) ) ).
% add_mono1
thf(fact_762_Euclid__induct,axiom,
! [P: nat > nat > $o,A: nat,B: nat] :
( ! [A3: nat,B4: nat] :
( ( P @ A3 @ B4 )
= ( P @ B4 @ A3 ) )
=> ( ! [A3: nat] : ( P @ A3 @ zero_zero_nat )
=> ( ! [A3: nat,B4: nat] :
( ( P @ A3 @ B4 )
=> ( P @ A3 @ ( plus_plus_nat @ A3 @ B4 ) ) )
=> ( P @ A @ B ) ) ) ) ).
% Euclid_induct
thf(fact_763_triangle__Suc,axiom,
! [N: nat] :
( ( nat_triangle @ ( suc @ N ) )
= ( plus_plus_nat @ ( nat_triangle @ N ) @ ( suc @ N ) ) ) ).
% triangle_Suc
thf(fact_764_concat__replicate__trivial,axiom,
! [I: nat] :
( ( concat6784524380904369520_set_a @ ( replic3260553529942556609_set_a @ I @ nil_mapping_a_set_a ) )
= nil_mapping_a_set_a ) ).
% concat_replicate_trivial
thf(fact_765_concat__replicate__trivial,axiom,
! [I: nat] :
( ( concat_nat @ ( replicate_list_nat @ I @ nil_nat ) )
= nil_nat ) ).
% concat_replicate_trivial
thf(fact_766_map__replicate,axiom,
! [F: nat > nat,N: nat,X: nat] :
( ( map_nat_nat @ F @ ( replicate_nat @ N @ X ) )
= ( replicate_nat @ N @ ( F @ X ) ) ) ).
% map_replicate
thf(fact_767_rev__replicate,axiom,
! [N: nat,X: nat] :
( ( rev_nat @ ( replicate_nat @ N @ X ) )
= ( replicate_nat @ N @ X ) ) ).
% rev_replicate
thf(fact_768_triangle__0,axiom,
( ( nat_triangle @ zero_zero_nat )
= zero_zero_nat ) ).
% triangle_0
thf(fact_769_empty__replicate,axiom,
! [N: nat,X: mapping_a_set_a] :
( ( nil_mapping_a_set_a
= ( replic1631670222262777649_set_a @ N @ X ) )
= ( N = zero_zero_nat ) ) ).
% empty_replicate
thf(fact_770_empty__replicate,axiom,
! [N: nat,X: nat] :
( ( nil_nat
= ( replicate_nat @ N @ X ) )
= ( N = zero_zero_nat ) ) ).
% empty_replicate
thf(fact_771_replicate__empty,axiom,
! [N: nat,X: mapping_a_set_a] :
( ( ( replic1631670222262777649_set_a @ N @ X )
= nil_mapping_a_set_a )
= ( N = zero_zero_nat ) ) ).
% replicate_empty
thf(fact_772_replicate__empty,axiom,
! [N: nat,X: nat] :
( ( ( replicate_nat @ N @ X )
= nil_nat )
= ( N = zero_zero_nat ) ) ).
% replicate_empty
thf(fact_773_nth__replicate,axiom,
! [I: nat,N: nat,X: nat] :
( ( ord_less_nat @ I @ N )
=> ( ( nth_nat @ ( replicate_nat @ N @ X ) @ I )
= X ) ) ).
% nth_replicate
thf(fact_774_hd__replicate,axiom,
! [N: nat,X: mapping_a_set_a] :
( ( N != zero_zero_nat )
=> ( ( hd_mapping_a_set_a @ ( replic1631670222262777649_set_a @ N @ X ) )
= X ) ) ).
% hd_replicate
thf(fact_775_hd__replicate,axiom,
! [N: nat,X: nat] :
( ( N != zero_zero_nat )
=> ( ( hd_nat @ ( replicate_nat @ N @ X ) )
= X ) ) ).
% hd_replicate
thf(fact_776_tl__replicate,axiom,
! [N: nat,X: nat] :
( ( tl_nat @ ( replicate_nat @ N @ X ) )
= ( replicate_nat @ ( minus_minus_nat @ N @ one_one_nat ) @ X ) ) ).
% tl_replicate
thf(fact_777_replicate__Suc,axiom,
! [N: nat,X: mapping_a_set_a] :
( ( replic1631670222262777649_set_a @ ( suc @ N ) @ X )
= ( cons_mapping_a_set_a @ X @ ( replic1631670222262777649_set_a @ N @ X ) ) ) ).
% replicate_Suc
thf(fact_778_replicate__Suc,axiom,
! [N: nat,X: nat] :
( ( replicate_nat @ ( suc @ N ) @ X )
= ( cons_nat @ X @ ( replicate_nat @ N @ X ) ) ) ).
% replicate_Suc
thf(fact_779_replicate__0,axiom,
! [X: mapping_a_set_a] :
( ( replic1631670222262777649_set_a @ zero_zero_nat @ X )
= nil_mapping_a_set_a ) ).
% replicate_0
thf(fact_780_replicate__0,axiom,
! [X: nat] :
( ( replicate_nat @ zero_zero_nat @ X )
= nil_nat ) ).
% replicate_0
thf(fact_781_replicate__app__Cons__same,axiom,
! [N: nat,X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( append4262749607566113174_set_a @ ( replic1631670222262777649_set_a @ N @ X ) @ ( cons_mapping_a_set_a @ X @ Xs ) )
= ( cons_mapping_a_set_a @ X @ ( append4262749607566113174_set_a @ ( replic1631670222262777649_set_a @ N @ X ) @ Xs ) ) ) ).
% replicate_app_Cons_same
thf(fact_782_replicate__app__Cons__same,axiom,
! [N: nat,X: nat,Xs: list_nat] :
( ( append_nat @ ( replicate_nat @ N @ X ) @ ( cons_nat @ X @ Xs ) )
= ( cons_nat @ X @ ( append_nat @ ( replicate_nat @ N @ X ) @ Xs ) ) ) ).
% replicate_app_Cons_same
thf(fact_783_filter__replicate,axiom,
! [P: mapping_a_set_a > $o,X: mapping_a_set_a,N: nat] :
( ( ( P @ X )
=> ( ( filter7335739693268387380_set_a @ P @ ( replic1631670222262777649_set_a @ N @ X ) )
= ( replic1631670222262777649_set_a @ N @ X ) ) )
& ( ~ ( P @ X )
=> ( ( filter7335739693268387380_set_a @ P @ ( replic1631670222262777649_set_a @ N @ X ) )
= nil_mapping_a_set_a ) ) ) ).
% filter_replicate
thf(fact_784_filter__replicate,axiom,
! [P: nat > $o,X: nat,N: nat] :
( ( ( P @ X )
=> ( ( filter_nat @ P @ ( replicate_nat @ N @ X ) )
= ( replicate_nat @ N @ X ) ) )
& ( ~ ( P @ X )
=> ( ( filter_nat @ P @ ( replicate_nat @ N @ X ) )
= nil_nat ) ) ) ).
% filter_replicate
thf(fact_785_replicate__append__same,axiom,
! [I: nat,X: mapping_a_set_a] :
( ( append4262749607566113174_set_a @ ( replic1631670222262777649_set_a @ I @ X ) @ ( cons_mapping_a_set_a @ X @ nil_mapping_a_set_a ) )
= ( cons_mapping_a_set_a @ X @ ( replic1631670222262777649_set_a @ I @ X ) ) ) ).
% replicate_append_same
thf(fact_786_replicate__append__same,axiom,
! [I: nat,X: nat] :
( ( append_nat @ ( replicate_nat @ I @ X ) @ ( cons_nat @ X @ nil_nat ) )
= ( cons_nat @ X @ ( replicate_nat @ I @ X ) ) ) ).
% replicate_append_same
thf(fact_787_map__replicate__trivial,axiom,
! [X: nat,I: nat] :
( ( map_nat_nat
@ ^ [I2: nat] : X
@ ( upt @ zero_zero_nat @ I ) )
= ( replicate_nat @ I @ X ) ) ).
% map_replicate_trivial
thf(fact_788_Cons__replicate__eq,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a,N: nat,Y: mapping_a_set_a] :
( ( ( cons_mapping_a_set_a @ X @ Xs )
= ( replic1631670222262777649_set_a @ N @ Y ) )
= ( ( X = Y )
& ( ord_less_nat @ zero_zero_nat @ N )
& ( Xs
= ( replic1631670222262777649_set_a @ ( minus_minus_nat @ N @ one_one_nat ) @ X ) ) ) ) ).
% Cons_replicate_eq
thf(fact_789_Cons__replicate__eq,axiom,
! [X: nat,Xs: list_nat,N: nat,Y: nat] :
( ( ( cons_nat @ X @ Xs )
= ( replicate_nat @ N @ Y ) )
= ( ( X = Y )
& ( ord_less_nat @ zero_zero_nat @ N )
& ( Xs
= ( replicate_nat @ ( minus_minus_nat @ N @ one_one_nat ) @ X ) ) ) ) ).
% Cons_replicate_eq
thf(fact_790_comm__append__is__replicate,axiom,
! [Xs: list_mapping_a_set_a,Ys: list_mapping_a_set_a] :
( ( Xs != nil_mapping_a_set_a )
=> ( ( Ys != nil_mapping_a_set_a )
=> ( ( ( append4262749607566113174_set_a @ Xs @ Ys )
= ( append4262749607566113174_set_a @ Ys @ Xs ) )
=> ? [N2: nat,Zs3: list_mapping_a_set_a] :
( ( ord_less_nat @ one_one_nat @ N2 )
& ( ( concat6784524380904369520_set_a @ ( replic3260553529942556609_set_a @ N2 @ Zs3 ) )
= ( append4262749607566113174_set_a @ Xs @ Ys ) ) ) ) ) ) ).
% comm_append_is_replicate
thf(fact_791_comm__append__is__replicate,axiom,
! [Xs: list_nat,Ys: list_nat] :
( ( Xs != nil_nat )
=> ( ( Ys != nil_nat )
=> ( ( ( append_nat @ Xs @ Ys )
= ( append_nat @ Ys @ Xs ) )
=> ? [N2: nat,Zs3: list_nat] :
( ( ord_less_nat @ one_one_nat @ N2 )
& ( ( concat_nat @ ( replicate_list_nat @ N2 @ Zs3 ) )
= ( append_nat @ Xs @ Ys ) ) ) ) ) ) ).
% comm_append_is_replicate
thf(fact_792_verit__sum__simplify,axiom,
! [A: nat] :
( ( plus_plus_nat @ A @ zero_zero_nat )
= A ) ).
% verit_sum_simplify
thf(fact_793_add__0__iff,axiom,
! [B: nat,A: nat] :
( ( B
= ( plus_plus_nat @ B @ A ) )
= ( A = zero_zero_nat ) ) ).
% add_0_iff
thf(fact_794_map__upt__eqI,axiom,
! [Xs: list_nat,N: nat,M: nat,F: nat > nat] :
( ( ( size_size_list_nat @ Xs )
= ( minus_minus_nat @ N @ M ) )
=> ( ! [I3: nat] :
( ( ord_less_nat @ I3 @ ( size_size_list_nat @ Xs ) )
=> ( ( nth_nat @ Xs @ I3 )
= ( F @ ( plus_plus_nat @ M @ I3 ) ) ) )
=> ( ( map_nat_nat @ F @ ( upt @ M @ N ) )
= Xs ) ) ) ).
% map_upt_eqI
thf(fact_795_append__eq__append__conv,axiom,
! [Xs: list_nat,Ys: list_nat,Us2: list_nat,Vs2: list_nat] :
( ( ( ( size_size_list_nat @ Xs )
= ( size_size_list_nat @ Ys ) )
| ( ( size_size_list_nat @ Us2 )
= ( size_size_list_nat @ Vs2 ) ) )
=> ( ( ( append_nat @ Xs @ Us2 )
= ( append_nat @ Ys @ Vs2 ) )
= ( ( Xs = Ys )
& ( Us2 = Vs2 ) ) ) ) ).
% append_eq_append_conv
thf(fact_796_length__map,axiom,
! [F: nat > nat,Xs: list_nat] :
( ( size_size_list_nat @ ( map_nat_nat @ F @ Xs ) )
= ( size_size_list_nat @ Xs ) ) ).
% length_map
thf(fact_797_length__rev,axiom,
! [Xs: list_nat] :
( ( size_size_list_nat @ ( rev_nat @ Xs ) )
= ( size_size_list_nat @ Xs ) ) ).
% length_rev
thf(fact_798_length__replicate,axiom,
! [N: nat,X: nat] :
( ( size_size_list_nat @ ( replicate_nat @ N @ X ) )
= N ) ).
% length_replicate
thf(fact_799_length__upt,axiom,
! [I: nat,J2: nat] :
( ( size_size_list_nat @ ( upt @ I @ J2 ) )
= ( minus_minus_nat @ J2 @ I ) ) ).
% length_upt
thf(fact_800_length__rotate1,axiom,
! [Xs: list_nat] :
( ( size_size_list_nat @ ( rotate1_nat @ Xs ) )
= ( size_size_list_nat @ Xs ) ) ).
% length_rotate1
thf(fact_801_length__enumerate,axiom,
! [N: nat,Xs: list_nat] :
( ( size_s5460976970255530739at_nat @ ( enumerate_nat @ N @ Xs ) )
= ( size_size_list_nat @ Xs ) ) ).
% length_enumerate
thf(fact_802_length__0__conv,axiom,
! [Xs: list_mapping_a_set_a] :
( ( ( size_s2079826900039435797_set_a @ Xs )
= zero_zero_nat )
= ( Xs = nil_mapping_a_set_a ) ) ).
% length_0_conv
thf(fact_803_length__0__conv,axiom,
! [Xs: list_nat] :
( ( ( size_size_list_nat @ Xs )
= zero_zero_nat )
= ( Xs = nil_nat ) ) ).
% length_0_conv
thf(fact_804_length__append,axiom,
! [Xs: list_nat,Ys: list_nat] :
( ( size_size_list_nat @ ( append_nat @ Xs @ Ys ) )
= ( plus_plus_nat @ ( size_size_list_nat @ Xs ) @ ( size_size_list_nat @ Ys ) ) ) ).
% length_append
thf(fact_805_length__suffixes,axiom,
! [Xs: list_nat] :
( ( size_s3023201423986296836st_nat @ ( suffixes_nat @ Xs ) )
= ( suc @ ( size_size_list_nat @ Xs ) ) ) ).
% length_suffixes
thf(fact_806_length__concat__rev,axiom,
! [Xs: list_list_nat] :
( ( size_size_list_nat @ ( concat_nat @ ( rev_list_nat @ Xs ) ) )
= ( size_size_list_nat @ ( concat_nat @ Xs ) ) ) ).
% length_concat_rev
thf(fact_807_length__greater__0__conv,axiom,
! [Xs: list_mapping_a_set_a] :
( ( ord_less_nat @ zero_zero_nat @ ( size_s2079826900039435797_set_a @ Xs ) )
= ( Xs != nil_mapping_a_set_a ) ) ).
% length_greater_0_conv
thf(fact_808_length__greater__0__conv,axiom,
! [Xs: list_nat] :
( ( ord_less_nat @ zero_zero_nat @ ( size_size_list_nat @ Xs ) )
= ( Xs != nil_nat ) ) ).
% length_greater_0_conv
thf(fact_809_nth__append__length,axiom,
! [Xs: list_mapping_a_set_a,X: mapping_a_set_a,Ys: list_mapping_a_set_a] :
( ( nth_mapping_a_set_a @ ( append4262749607566113174_set_a @ Xs @ ( cons_mapping_a_set_a @ X @ Ys ) ) @ ( size_s2079826900039435797_set_a @ Xs ) )
= X ) ).
% nth_append_length
thf(fact_810_nth__append__length,axiom,
! [Xs: list_nat,X: nat,Ys: list_nat] :
( ( nth_nat @ ( append_nat @ Xs @ ( cons_nat @ X @ Ys ) ) @ ( size_size_list_nat @ Xs ) )
= X ) ).
% nth_append_length
thf(fact_811_nth__map,axiom,
! [N: nat,Xs: list_nat,F: nat > nat] :
( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs ) )
=> ( ( nth_nat @ ( map_nat_nat @ F @ Xs ) @ N )
= ( F @ ( nth_nat @ Xs @ N ) ) ) ) ).
% nth_map
thf(fact_812_nth__append__length__plus,axiom,
! [Xs: list_nat,Ys: list_nat,N: nat] :
( ( nth_nat @ ( append_nat @ Xs @ Ys ) @ ( plus_plus_nat @ ( size_size_list_nat @ Xs ) @ N ) )
= ( nth_nat @ Ys @ N ) ) ).
% nth_append_length_plus
thf(fact_813_length__tl,axiom,
! [Xs: list_nat] :
( ( size_size_list_nat @ ( tl_nat @ Xs ) )
= ( minus_minus_nat @ ( size_size_list_nat @ Xs ) @ one_one_nat ) ) ).
% length_tl
thf(fact_814_length__prefixes,axiom,
! [Xs: list_nat] :
( ( size_s3023201423986296836st_nat @ ( prefixes_nat @ Xs ) )
= ( plus_plus_nat @ ( size_size_list_nat @ Xs ) @ one_one_nat ) ) ).
% length_prefixes
thf(fact_815_length__induct,axiom,
! [P: list_nat > $o,Xs: list_nat] :
( ! [Xs2: list_nat] :
( ! [Ys6: list_nat] :
( ( ord_less_nat @ ( size_size_list_nat @ Ys6 ) @ ( size_size_list_nat @ Xs2 ) )
=> ( P @ Ys6 ) )
=> ( P @ Xs2 ) )
=> ( P @ Xs ) ) ).
% length_induct
thf(fact_816_map__eq__imp__length__eq,axiom,
! [F: nat > nat,Xs: list_nat,G: nat > nat,Ys: list_nat] :
( ( ( map_nat_nat @ F @ Xs )
= ( map_nat_nat @ G @ Ys ) )
=> ( ( size_size_list_nat @ Xs )
= ( size_size_list_nat @ Ys ) ) ) ).
% map_eq_imp_length_eq
thf(fact_817_Ex__list__of__length,axiom,
! [N: nat] :
? [Xs2: list_nat] :
( ( size_size_list_nat @ Xs2 )
= N ) ).
% Ex_list_of_length
thf(fact_818_neq__if__length__neq,axiom,
! [Xs: list_nat,Ys: list_nat] :
( ( ( size_size_list_nat @ Xs )
!= ( size_size_list_nat @ Ys ) )
=> ( Xs != Ys ) ) ).
% neq_if_length_neq
thf(fact_819_size__neq__size__imp__neq,axiom,
! [X: list_nat,Y: list_nat] :
( ( ( size_size_list_nat @ X )
!= ( size_size_list_nat @ Y ) )
=> ( X != Y ) ) ).
% size_neq_size_imp_neq
thf(fact_820_size__neq__size__imp__neq,axiom,
! [X: char,Y: char] :
( ( ( size_size_char @ X )
!= ( size_size_char @ Y ) )
=> ( X != Y ) ) ).
% size_neq_size_imp_neq
thf(fact_821_foldr__length__helper,axiom,
! [Xs: list_nat,Ys: list_nat,F: list_mapping_a_set_a > list_mapping_a_set_a,B: list_mapping_a_set_a] :
( ( ( size_size_list_nat @ Xs )
= ( size_size_list_nat @ Ys ) )
=> ( ( foldr_4622666561834033786_set_a
@ ^ [Uu: nat] : F
@ Xs
@ B )
= ( foldr_4622666561834033786_set_a
@ ^ [A4: nat] : F
@ Ys
@ B ) ) ) ).
% foldr_length_helper
thf(fact_822_list__induct4,axiom,
! [Xs: list_nat,Ys: list_nat,Zs: list_nat,Ws: list_nat,P: list_nat > list_nat > list_nat > list_nat > $o] :
( ( ( size_size_list_nat @ Xs )
= ( size_size_list_nat @ Ys ) )
=> ( ( ( size_size_list_nat @ Ys )
= ( size_size_list_nat @ Zs ) )
=> ( ( ( size_size_list_nat @ Zs )
= ( size_size_list_nat @ Ws ) )
=> ( ( P @ nil_nat @ nil_nat @ nil_nat @ nil_nat )
=> ( ! [X3: nat,Xs2: list_nat,Y3: nat,Ys2: list_nat,Z2: nat,Zs3: list_nat,W2: nat,Ws2: list_nat] :
( ( ( size_size_list_nat @ Xs2 )
= ( size_size_list_nat @ Ys2 ) )
=> ( ( ( size_size_list_nat @ Ys2 )
= ( size_size_list_nat @ Zs3 ) )
=> ( ( ( size_size_list_nat @ Zs3 )
= ( size_size_list_nat @ Ws2 ) )
=> ( ( P @ Xs2 @ Ys2 @ Zs3 @ Ws2 )
=> ( P @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys2 ) @ ( cons_nat @ Z2 @ Zs3 ) @ ( cons_nat @ W2 @ Ws2 ) ) ) ) ) )
=> ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).
% list_induct4
thf(fact_823_list__induct4,axiom,
! [Xs: list_mapping_a_set_a,Ys: list_nat,Zs: list_nat,Ws: list_nat,P: list_mapping_a_set_a > list_nat > list_nat > list_nat > $o] :
( ( ( size_s2079826900039435797_set_a @ Xs )
= ( size_size_list_nat @ Ys ) )
=> ( ( ( size_size_list_nat @ Ys )
= ( size_size_list_nat @ Zs ) )
=> ( ( ( size_size_list_nat @ Zs )
= ( size_size_list_nat @ Ws ) )
=> ( ( P @ nil_mapping_a_set_a @ nil_nat @ nil_nat @ nil_nat )
=> ( ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a,Y3: nat,Ys2: list_nat,Z2: nat,Zs3: list_nat,W2: nat,Ws2: list_nat] :
( ( ( size_s2079826900039435797_set_a @ Xs2 )
= ( size_size_list_nat @ Ys2 ) )
=> ( ( ( size_size_list_nat @ Ys2 )
= ( size_size_list_nat @ Zs3 ) )
=> ( ( ( size_size_list_nat @ Zs3 )
= ( size_size_list_nat @ Ws2 ) )
=> ( ( P @ Xs2 @ Ys2 @ Zs3 @ Ws2 )
=> ( P @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys2 ) @ ( cons_nat @ Z2 @ Zs3 ) @ ( cons_nat @ W2 @ Ws2 ) ) ) ) ) )
=> ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).
% list_induct4
thf(fact_824_list__induct4,axiom,
! [Xs: list_nat,Ys: list_mapping_a_set_a,Zs: list_nat,Ws: list_nat,P: list_nat > list_mapping_a_set_a > list_nat > list_nat > $o] :
( ( ( size_size_list_nat @ Xs )
= ( size_s2079826900039435797_set_a @ Ys ) )
=> ( ( ( size_s2079826900039435797_set_a @ Ys )
= ( size_size_list_nat @ Zs ) )
=> ( ( ( size_size_list_nat @ Zs )
= ( size_size_list_nat @ Ws ) )
=> ( ( P @ nil_nat @ nil_mapping_a_set_a @ nil_nat @ nil_nat )
=> ( ! [X3: nat,Xs2: list_nat,Y3: mapping_a_set_a,Ys2: list_mapping_a_set_a,Z2: nat,Zs3: list_nat,W2: nat,Ws2: list_nat] :
( ( ( size_size_list_nat @ Xs2 )
= ( size_s2079826900039435797_set_a @ Ys2 ) )
=> ( ( ( size_s2079826900039435797_set_a @ Ys2 )
= ( size_size_list_nat @ Zs3 ) )
=> ( ( ( size_size_list_nat @ Zs3 )
= ( size_size_list_nat @ Ws2 ) )
=> ( ( P @ Xs2 @ Ys2 @ Zs3 @ Ws2 )
=> ( P @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_mapping_a_set_a @ Y3 @ Ys2 ) @ ( cons_nat @ Z2 @ Zs3 ) @ ( cons_nat @ W2 @ Ws2 ) ) ) ) ) )
=> ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).
% list_induct4
thf(fact_825_list__induct4,axiom,
! [Xs: list_nat,Ys: list_nat,Zs: list_mapping_a_set_a,Ws: list_nat,P: list_nat > list_nat > list_mapping_a_set_a > list_nat > $o] :
( ( ( size_size_list_nat @ Xs )
= ( size_size_list_nat @ Ys ) )
=> ( ( ( size_size_list_nat @ Ys )
= ( size_s2079826900039435797_set_a @ Zs ) )
=> ( ( ( size_s2079826900039435797_set_a @ Zs )
= ( size_size_list_nat @ Ws ) )
=> ( ( P @ nil_nat @ nil_nat @ nil_mapping_a_set_a @ nil_nat )
=> ( ! [X3: nat,Xs2: list_nat,Y3: nat,Ys2: list_nat,Z2: mapping_a_set_a,Zs3: list_mapping_a_set_a,W2: nat,Ws2: list_nat] :
( ( ( size_size_list_nat @ Xs2 )
= ( size_size_list_nat @ Ys2 ) )
=> ( ( ( size_size_list_nat @ Ys2 )
= ( size_s2079826900039435797_set_a @ Zs3 ) )
=> ( ( ( size_s2079826900039435797_set_a @ Zs3 )
= ( size_size_list_nat @ Ws2 ) )
=> ( ( P @ Xs2 @ Ys2 @ Zs3 @ Ws2 )
=> ( P @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys2 ) @ ( cons_mapping_a_set_a @ Z2 @ Zs3 ) @ ( cons_nat @ W2 @ Ws2 ) ) ) ) ) )
=> ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).
% list_induct4
thf(fact_826_list__induct4,axiom,
! [Xs: list_nat,Ys: list_nat,Zs: list_nat,Ws: list_mapping_a_set_a,P: list_nat > list_nat > list_nat > list_mapping_a_set_a > $o] :
( ( ( size_size_list_nat @ Xs )
= ( size_size_list_nat @ Ys ) )
=> ( ( ( size_size_list_nat @ Ys )
= ( size_size_list_nat @ Zs ) )
=> ( ( ( size_size_list_nat @ Zs )
= ( size_s2079826900039435797_set_a @ Ws ) )
=> ( ( P @ nil_nat @ nil_nat @ nil_nat @ nil_mapping_a_set_a )
=> ( ! [X3: nat,Xs2: list_nat,Y3: nat,Ys2: list_nat,Z2: nat,Zs3: list_nat,W2: mapping_a_set_a,Ws2: list_mapping_a_set_a] :
( ( ( size_size_list_nat @ Xs2 )
= ( size_size_list_nat @ Ys2 ) )
=> ( ( ( size_size_list_nat @ Ys2 )
= ( size_size_list_nat @ Zs3 ) )
=> ( ( ( size_size_list_nat @ Zs3 )
= ( size_s2079826900039435797_set_a @ Ws2 ) )
=> ( ( P @ Xs2 @ Ys2 @ Zs3 @ Ws2 )
=> ( P @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys2 ) @ ( cons_nat @ Z2 @ Zs3 ) @ ( cons_mapping_a_set_a @ W2 @ Ws2 ) ) ) ) ) )
=> ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).
% list_induct4
thf(fact_827_list__induct4,axiom,
! [Xs: list_mapping_a_set_a,Ys: list_mapping_a_set_a,Zs: list_nat,Ws: list_nat,P: list_mapping_a_set_a > list_mapping_a_set_a > list_nat > list_nat > $o] :
( ( ( size_s2079826900039435797_set_a @ Xs )
= ( size_s2079826900039435797_set_a @ Ys ) )
=> ( ( ( size_s2079826900039435797_set_a @ Ys )
= ( size_size_list_nat @ Zs ) )
=> ( ( ( size_size_list_nat @ Zs )
= ( size_size_list_nat @ Ws ) )
=> ( ( P @ nil_mapping_a_set_a @ nil_mapping_a_set_a @ nil_nat @ nil_nat )
=> ( ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a,Y3: mapping_a_set_a,Ys2: list_mapping_a_set_a,Z2: nat,Zs3: list_nat,W2: nat,Ws2: list_nat] :
( ( ( size_s2079826900039435797_set_a @ Xs2 )
= ( size_s2079826900039435797_set_a @ Ys2 ) )
=> ( ( ( size_s2079826900039435797_set_a @ Ys2 )
= ( size_size_list_nat @ Zs3 ) )
=> ( ( ( size_size_list_nat @ Zs3 )
= ( size_size_list_nat @ Ws2 ) )
=> ( ( P @ Xs2 @ Ys2 @ Zs3 @ Ws2 )
=> ( P @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) @ ( cons_mapping_a_set_a @ Y3 @ Ys2 ) @ ( cons_nat @ Z2 @ Zs3 ) @ ( cons_nat @ W2 @ Ws2 ) ) ) ) ) )
=> ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).
% list_induct4
thf(fact_828_list__induct4,axiom,
! [Xs: list_mapping_a_set_a,Ys: list_nat,Zs: list_mapping_a_set_a,Ws: list_nat,P: list_mapping_a_set_a > list_nat > list_mapping_a_set_a > list_nat > $o] :
( ( ( size_s2079826900039435797_set_a @ Xs )
= ( size_size_list_nat @ Ys ) )
=> ( ( ( size_size_list_nat @ Ys )
= ( size_s2079826900039435797_set_a @ Zs ) )
=> ( ( ( size_s2079826900039435797_set_a @ Zs )
= ( size_size_list_nat @ Ws ) )
=> ( ( P @ nil_mapping_a_set_a @ nil_nat @ nil_mapping_a_set_a @ nil_nat )
=> ( ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a,Y3: nat,Ys2: list_nat,Z2: mapping_a_set_a,Zs3: list_mapping_a_set_a,W2: nat,Ws2: list_nat] :
( ( ( size_s2079826900039435797_set_a @ Xs2 )
= ( size_size_list_nat @ Ys2 ) )
=> ( ( ( size_size_list_nat @ Ys2 )
= ( size_s2079826900039435797_set_a @ Zs3 ) )
=> ( ( ( size_s2079826900039435797_set_a @ Zs3 )
= ( size_size_list_nat @ Ws2 ) )
=> ( ( P @ Xs2 @ Ys2 @ Zs3 @ Ws2 )
=> ( P @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys2 ) @ ( cons_mapping_a_set_a @ Z2 @ Zs3 ) @ ( cons_nat @ W2 @ Ws2 ) ) ) ) ) )
=> ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).
% list_induct4
thf(fact_829_list__induct4,axiom,
! [Xs: list_mapping_a_set_a,Ys: list_nat,Zs: list_nat,Ws: list_mapping_a_set_a,P: list_mapping_a_set_a > list_nat > list_nat > list_mapping_a_set_a > $o] :
( ( ( size_s2079826900039435797_set_a @ Xs )
= ( size_size_list_nat @ Ys ) )
=> ( ( ( size_size_list_nat @ Ys )
= ( size_size_list_nat @ Zs ) )
=> ( ( ( size_size_list_nat @ Zs )
= ( size_s2079826900039435797_set_a @ Ws ) )
=> ( ( P @ nil_mapping_a_set_a @ nil_nat @ nil_nat @ nil_mapping_a_set_a )
=> ( ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a,Y3: nat,Ys2: list_nat,Z2: nat,Zs3: list_nat,W2: mapping_a_set_a,Ws2: list_mapping_a_set_a] :
( ( ( size_s2079826900039435797_set_a @ Xs2 )
= ( size_size_list_nat @ Ys2 ) )
=> ( ( ( size_size_list_nat @ Ys2 )
= ( size_size_list_nat @ Zs3 ) )
=> ( ( ( size_size_list_nat @ Zs3 )
= ( size_s2079826900039435797_set_a @ Ws2 ) )
=> ( ( P @ Xs2 @ Ys2 @ Zs3 @ Ws2 )
=> ( P @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys2 ) @ ( cons_nat @ Z2 @ Zs3 ) @ ( cons_mapping_a_set_a @ W2 @ Ws2 ) ) ) ) ) )
=> ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).
% list_induct4
thf(fact_830_list__induct4,axiom,
! [Xs: list_nat,Ys: list_mapping_a_set_a,Zs: list_mapping_a_set_a,Ws: list_nat,P: list_nat > list_mapping_a_set_a > list_mapping_a_set_a > list_nat > $o] :
( ( ( size_size_list_nat @ Xs )
= ( size_s2079826900039435797_set_a @ Ys ) )
=> ( ( ( size_s2079826900039435797_set_a @ Ys )
= ( size_s2079826900039435797_set_a @ Zs ) )
=> ( ( ( size_s2079826900039435797_set_a @ Zs )
= ( size_size_list_nat @ Ws ) )
=> ( ( P @ nil_nat @ nil_mapping_a_set_a @ nil_mapping_a_set_a @ nil_nat )
=> ( ! [X3: nat,Xs2: list_nat,Y3: mapping_a_set_a,Ys2: list_mapping_a_set_a,Z2: mapping_a_set_a,Zs3: list_mapping_a_set_a,W2: nat,Ws2: list_nat] :
( ( ( size_size_list_nat @ Xs2 )
= ( size_s2079826900039435797_set_a @ Ys2 ) )
=> ( ( ( size_s2079826900039435797_set_a @ Ys2 )
= ( size_s2079826900039435797_set_a @ Zs3 ) )
=> ( ( ( size_s2079826900039435797_set_a @ Zs3 )
= ( size_size_list_nat @ Ws2 ) )
=> ( ( P @ Xs2 @ Ys2 @ Zs3 @ Ws2 )
=> ( P @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_mapping_a_set_a @ Y3 @ Ys2 ) @ ( cons_mapping_a_set_a @ Z2 @ Zs3 ) @ ( cons_nat @ W2 @ Ws2 ) ) ) ) ) )
=> ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).
% list_induct4
thf(fact_831_list__induct4,axiom,
! [Xs: list_nat,Ys: list_mapping_a_set_a,Zs: list_nat,Ws: list_mapping_a_set_a,P: list_nat > list_mapping_a_set_a > list_nat > list_mapping_a_set_a > $o] :
( ( ( size_size_list_nat @ Xs )
= ( size_s2079826900039435797_set_a @ Ys ) )
=> ( ( ( size_s2079826900039435797_set_a @ Ys )
= ( size_size_list_nat @ Zs ) )
=> ( ( ( size_size_list_nat @ Zs )
= ( size_s2079826900039435797_set_a @ Ws ) )
=> ( ( P @ nil_nat @ nil_mapping_a_set_a @ nil_nat @ nil_mapping_a_set_a )
=> ( ! [X3: nat,Xs2: list_nat,Y3: mapping_a_set_a,Ys2: list_mapping_a_set_a,Z2: nat,Zs3: list_nat,W2: mapping_a_set_a,Ws2: list_mapping_a_set_a] :
( ( ( size_size_list_nat @ Xs2 )
= ( size_s2079826900039435797_set_a @ Ys2 ) )
=> ( ( ( size_s2079826900039435797_set_a @ Ys2 )
= ( size_size_list_nat @ Zs3 ) )
=> ( ( ( size_size_list_nat @ Zs3 )
= ( size_s2079826900039435797_set_a @ Ws2 ) )
=> ( ( P @ Xs2 @ Ys2 @ Zs3 @ Ws2 )
=> ( P @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_mapping_a_set_a @ Y3 @ Ys2 ) @ ( cons_nat @ Z2 @ Zs3 ) @ ( cons_mapping_a_set_a @ W2 @ Ws2 ) ) ) ) ) )
=> ( P @ Xs @ Ys @ Zs @ Ws ) ) ) ) ) ) ).
% list_induct4
thf(fact_832_list__induct3,axiom,
! [Xs: list_mapping_a_set_a,Ys: list_mapping_a_set_a,Zs: list_mapping_a_set_a,P: list_mapping_a_set_a > list_mapping_a_set_a > list_mapping_a_set_a > $o] :
( ( ( size_s2079826900039435797_set_a @ Xs )
= ( size_s2079826900039435797_set_a @ Ys ) )
=> ( ( ( size_s2079826900039435797_set_a @ Ys )
= ( size_s2079826900039435797_set_a @ Zs ) )
=> ( ( P @ nil_mapping_a_set_a @ nil_mapping_a_set_a @ nil_mapping_a_set_a )
=> ( ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a,Y3: mapping_a_set_a,Ys2: list_mapping_a_set_a,Z2: mapping_a_set_a,Zs3: list_mapping_a_set_a] :
( ( ( size_s2079826900039435797_set_a @ Xs2 )
= ( size_s2079826900039435797_set_a @ Ys2 ) )
=> ( ( ( size_s2079826900039435797_set_a @ Ys2 )
= ( size_s2079826900039435797_set_a @ Zs3 ) )
=> ( ( P @ Xs2 @ Ys2 @ Zs3 )
=> ( P @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) @ ( cons_mapping_a_set_a @ Y3 @ Ys2 ) @ ( cons_mapping_a_set_a @ Z2 @ Zs3 ) ) ) ) )
=> ( P @ Xs @ Ys @ Zs ) ) ) ) ) ).
% list_induct3
thf(fact_833_list__induct3,axiom,
! [Xs: list_mapping_a_set_a,Ys: list_mapping_a_set_a,Zs: list_nat,P: list_mapping_a_set_a > list_mapping_a_set_a > list_nat > $o] :
( ( ( size_s2079826900039435797_set_a @ Xs )
= ( size_s2079826900039435797_set_a @ Ys ) )
=> ( ( ( size_s2079826900039435797_set_a @ Ys )
= ( size_size_list_nat @ Zs ) )
=> ( ( P @ nil_mapping_a_set_a @ nil_mapping_a_set_a @ nil_nat )
=> ( ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a,Y3: mapping_a_set_a,Ys2: list_mapping_a_set_a,Z2: nat,Zs3: list_nat] :
( ( ( size_s2079826900039435797_set_a @ Xs2 )
= ( size_s2079826900039435797_set_a @ Ys2 ) )
=> ( ( ( size_s2079826900039435797_set_a @ Ys2 )
= ( size_size_list_nat @ Zs3 ) )
=> ( ( P @ Xs2 @ Ys2 @ Zs3 )
=> ( P @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) @ ( cons_mapping_a_set_a @ Y3 @ Ys2 ) @ ( cons_nat @ Z2 @ Zs3 ) ) ) ) )
=> ( P @ Xs @ Ys @ Zs ) ) ) ) ) ).
% list_induct3
thf(fact_834_list__induct3,axiom,
! [Xs: list_mapping_a_set_a,Ys: list_nat,Zs: list_mapping_a_set_a,P: list_mapping_a_set_a > list_nat > list_mapping_a_set_a > $o] :
( ( ( size_s2079826900039435797_set_a @ Xs )
= ( size_size_list_nat @ Ys ) )
=> ( ( ( size_size_list_nat @ Ys )
= ( size_s2079826900039435797_set_a @ Zs ) )
=> ( ( P @ nil_mapping_a_set_a @ nil_nat @ nil_mapping_a_set_a )
=> ( ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a,Y3: nat,Ys2: list_nat,Z2: mapping_a_set_a,Zs3: list_mapping_a_set_a] :
( ( ( size_s2079826900039435797_set_a @ Xs2 )
= ( size_size_list_nat @ Ys2 ) )
=> ( ( ( size_size_list_nat @ Ys2 )
= ( size_s2079826900039435797_set_a @ Zs3 ) )
=> ( ( P @ Xs2 @ Ys2 @ Zs3 )
=> ( P @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys2 ) @ ( cons_mapping_a_set_a @ Z2 @ Zs3 ) ) ) ) )
=> ( P @ Xs @ Ys @ Zs ) ) ) ) ) ).
% list_induct3
thf(fact_835_list__induct3,axiom,
! [Xs: list_mapping_a_set_a,Ys: list_nat,Zs: list_nat,P: list_mapping_a_set_a > list_nat > list_nat > $o] :
( ( ( size_s2079826900039435797_set_a @ Xs )
= ( size_size_list_nat @ Ys ) )
=> ( ( ( size_size_list_nat @ Ys )
= ( size_size_list_nat @ Zs ) )
=> ( ( P @ nil_mapping_a_set_a @ nil_nat @ nil_nat )
=> ( ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a,Y3: nat,Ys2: list_nat,Z2: nat,Zs3: list_nat] :
( ( ( size_s2079826900039435797_set_a @ Xs2 )
= ( size_size_list_nat @ Ys2 ) )
=> ( ( ( size_size_list_nat @ Ys2 )
= ( size_size_list_nat @ Zs3 ) )
=> ( ( P @ Xs2 @ Ys2 @ Zs3 )
=> ( P @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys2 ) @ ( cons_nat @ Z2 @ Zs3 ) ) ) ) )
=> ( P @ Xs @ Ys @ Zs ) ) ) ) ) ).
% list_induct3
thf(fact_836_list__induct3,axiom,
! [Xs: list_nat,Ys: list_mapping_a_set_a,Zs: list_mapping_a_set_a,P: list_nat > list_mapping_a_set_a > list_mapping_a_set_a > $o] :
( ( ( size_size_list_nat @ Xs )
= ( size_s2079826900039435797_set_a @ Ys ) )
=> ( ( ( size_s2079826900039435797_set_a @ Ys )
= ( size_s2079826900039435797_set_a @ Zs ) )
=> ( ( P @ nil_nat @ nil_mapping_a_set_a @ nil_mapping_a_set_a )
=> ( ! [X3: nat,Xs2: list_nat,Y3: mapping_a_set_a,Ys2: list_mapping_a_set_a,Z2: mapping_a_set_a,Zs3: list_mapping_a_set_a] :
( ( ( size_size_list_nat @ Xs2 )
= ( size_s2079826900039435797_set_a @ Ys2 ) )
=> ( ( ( size_s2079826900039435797_set_a @ Ys2 )
= ( size_s2079826900039435797_set_a @ Zs3 ) )
=> ( ( P @ Xs2 @ Ys2 @ Zs3 )
=> ( P @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_mapping_a_set_a @ Y3 @ Ys2 ) @ ( cons_mapping_a_set_a @ Z2 @ Zs3 ) ) ) ) )
=> ( P @ Xs @ Ys @ Zs ) ) ) ) ) ).
% list_induct3
thf(fact_837_list__induct3,axiom,
! [Xs: list_nat,Ys: list_mapping_a_set_a,Zs: list_nat,P: list_nat > list_mapping_a_set_a > list_nat > $o] :
( ( ( size_size_list_nat @ Xs )
= ( size_s2079826900039435797_set_a @ Ys ) )
=> ( ( ( size_s2079826900039435797_set_a @ Ys )
= ( size_size_list_nat @ Zs ) )
=> ( ( P @ nil_nat @ nil_mapping_a_set_a @ nil_nat )
=> ( ! [X3: nat,Xs2: list_nat,Y3: mapping_a_set_a,Ys2: list_mapping_a_set_a,Z2: nat,Zs3: list_nat] :
( ( ( size_size_list_nat @ Xs2 )
= ( size_s2079826900039435797_set_a @ Ys2 ) )
=> ( ( ( size_s2079826900039435797_set_a @ Ys2 )
= ( size_size_list_nat @ Zs3 ) )
=> ( ( P @ Xs2 @ Ys2 @ Zs3 )
=> ( P @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_mapping_a_set_a @ Y3 @ Ys2 ) @ ( cons_nat @ Z2 @ Zs3 ) ) ) ) )
=> ( P @ Xs @ Ys @ Zs ) ) ) ) ) ).
% list_induct3
thf(fact_838_list__induct3,axiom,
! [Xs: list_nat,Ys: list_nat,Zs: list_mapping_a_set_a,P: list_nat > list_nat > list_mapping_a_set_a > $o] :
( ( ( size_size_list_nat @ Xs )
= ( size_size_list_nat @ Ys ) )
=> ( ( ( size_size_list_nat @ Ys )
= ( size_s2079826900039435797_set_a @ Zs ) )
=> ( ( P @ nil_nat @ nil_nat @ nil_mapping_a_set_a )
=> ( ! [X3: nat,Xs2: list_nat,Y3: nat,Ys2: list_nat,Z2: mapping_a_set_a,Zs3: list_mapping_a_set_a] :
( ( ( size_size_list_nat @ Xs2 )
= ( size_size_list_nat @ Ys2 ) )
=> ( ( ( size_size_list_nat @ Ys2 )
= ( size_s2079826900039435797_set_a @ Zs3 ) )
=> ( ( P @ Xs2 @ Ys2 @ Zs3 )
=> ( P @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys2 ) @ ( cons_mapping_a_set_a @ Z2 @ Zs3 ) ) ) ) )
=> ( P @ Xs @ Ys @ Zs ) ) ) ) ) ).
% list_induct3
thf(fact_839_list__induct3,axiom,
! [Xs: list_nat,Ys: list_nat,Zs: list_nat,P: list_nat > list_nat > list_nat > $o] :
( ( ( size_size_list_nat @ Xs )
= ( size_size_list_nat @ Ys ) )
=> ( ( ( size_size_list_nat @ Ys )
= ( size_size_list_nat @ Zs ) )
=> ( ( P @ nil_nat @ nil_nat @ nil_nat )
=> ( ! [X3: nat,Xs2: list_nat,Y3: nat,Ys2: list_nat,Z2: nat,Zs3: list_nat] :
( ( ( size_size_list_nat @ Xs2 )
= ( size_size_list_nat @ Ys2 ) )
=> ( ( ( size_size_list_nat @ Ys2 )
= ( size_size_list_nat @ Zs3 ) )
=> ( ( P @ Xs2 @ Ys2 @ Zs3 )
=> ( P @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys2 ) @ ( cons_nat @ Z2 @ Zs3 ) ) ) ) )
=> ( P @ Xs @ Ys @ Zs ) ) ) ) ) ).
% list_induct3
thf(fact_840_list__induct2,axiom,
! [Xs: list_mapping_a_set_a,Ys: list_mapping_a_set_a,P: list_mapping_a_set_a > list_mapping_a_set_a > $o] :
( ( ( size_s2079826900039435797_set_a @ Xs )
= ( size_s2079826900039435797_set_a @ Ys ) )
=> ( ( P @ nil_mapping_a_set_a @ nil_mapping_a_set_a )
=> ( ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a,Y3: mapping_a_set_a,Ys2: list_mapping_a_set_a] :
( ( ( size_s2079826900039435797_set_a @ Xs2 )
= ( size_s2079826900039435797_set_a @ Ys2 ) )
=> ( ( P @ Xs2 @ Ys2 )
=> ( P @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) @ ( cons_mapping_a_set_a @ Y3 @ Ys2 ) ) ) )
=> ( P @ Xs @ Ys ) ) ) ) ).
% list_induct2
thf(fact_841_list__induct2,axiom,
! [Xs: list_mapping_a_set_a,Ys: list_nat,P: list_mapping_a_set_a > list_nat > $o] :
( ( ( size_s2079826900039435797_set_a @ Xs )
= ( size_size_list_nat @ Ys ) )
=> ( ( P @ nil_mapping_a_set_a @ nil_nat )
=> ( ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a,Y3: nat,Ys2: list_nat] :
( ( ( size_s2079826900039435797_set_a @ Xs2 )
= ( size_size_list_nat @ Ys2 ) )
=> ( ( P @ Xs2 @ Ys2 )
=> ( P @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys2 ) ) ) )
=> ( P @ Xs @ Ys ) ) ) ) ).
% list_induct2
thf(fact_842_list__induct2,axiom,
! [Xs: list_nat,Ys: list_mapping_a_set_a,P: list_nat > list_mapping_a_set_a > $o] :
( ( ( size_size_list_nat @ Xs )
= ( size_s2079826900039435797_set_a @ Ys ) )
=> ( ( P @ nil_nat @ nil_mapping_a_set_a )
=> ( ! [X3: nat,Xs2: list_nat,Y3: mapping_a_set_a,Ys2: list_mapping_a_set_a] :
( ( ( size_size_list_nat @ Xs2 )
= ( size_s2079826900039435797_set_a @ Ys2 ) )
=> ( ( P @ Xs2 @ Ys2 )
=> ( P @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_mapping_a_set_a @ Y3 @ Ys2 ) ) ) )
=> ( P @ Xs @ Ys ) ) ) ) ).
% list_induct2
thf(fact_843_list__induct2,axiom,
! [Xs: list_nat,Ys: list_nat,P: list_nat > list_nat > $o] :
( ( ( size_size_list_nat @ Xs )
= ( size_size_list_nat @ Ys ) )
=> ( ( P @ nil_nat @ nil_nat )
=> ( ! [X3: nat,Xs2: list_nat,Y3: nat,Ys2: list_nat] :
( ( ( size_size_list_nat @ Xs2 )
= ( size_size_list_nat @ Ys2 ) )
=> ( ( P @ Xs2 @ Ys2 )
=> ( P @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys2 ) ) ) )
=> ( P @ Xs @ Ys ) ) ) ) ).
% list_induct2
thf(fact_844_Suc__length__conv,axiom,
! [N: nat,Xs: list_mapping_a_set_a] :
( ( ( suc @ N )
= ( size_s2079826900039435797_set_a @ Xs ) )
= ( ? [Y4: mapping_a_set_a,Ys3: list_mapping_a_set_a] :
( ( Xs
= ( cons_mapping_a_set_a @ Y4 @ Ys3 ) )
& ( ( size_s2079826900039435797_set_a @ Ys3 )
= N ) ) ) ) ).
% Suc_length_conv
thf(fact_845_Suc__length__conv,axiom,
! [N: nat,Xs: list_nat] :
( ( ( suc @ N )
= ( size_size_list_nat @ Xs ) )
= ( ? [Y4: nat,Ys3: list_nat] :
( ( Xs
= ( cons_nat @ Y4 @ Ys3 ) )
& ( ( size_size_list_nat @ Ys3 )
= N ) ) ) ) ).
% Suc_length_conv
thf(fact_846_length__Suc__conv,axiom,
! [Xs: list_mapping_a_set_a,N: nat] :
( ( ( size_s2079826900039435797_set_a @ Xs )
= ( suc @ N ) )
= ( ? [Y4: mapping_a_set_a,Ys3: list_mapping_a_set_a] :
( ( Xs
= ( cons_mapping_a_set_a @ Y4 @ Ys3 ) )
& ( ( size_s2079826900039435797_set_a @ Ys3 )
= N ) ) ) ) ).
% length_Suc_conv
thf(fact_847_length__Suc__conv,axiom,
! [Xs: list_nat,N: nat] :
( ( ( size_size_list_nat @ Xs )
= ( suc @ N ) )
= ( ? [Y4: nat,Ys3: list_nat] :
( ( Xs
= ( cons_nat @ Y4 @ Ys3 ) )
& ( ( size_size_list_nat @ Ys3 )
= N ) ) ) ) ).
% length_Suc_conv
thf(fact_848_length__Cons,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( size_s2079826900039435797_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) )
= ( suc @ ( size_s2079826900039435797_set_a @ Xs ) ) ) ).
% length_Cons
thf(fact_849_length__Cons,axiom,
! [X: nat,Xs: list_nat] :
( ( size_size_list_nat @ ( cons_nat @ X @ Xs ) )
= ( suc @ ( size_size_list_nat @ Xs ) ) ) ).
% length_Cons
thf(fact_850_list_Osize_I3_J,axiom,
( ( size_s2079826900039435797_set_a @ nil_mapping_a_set_a )
= zero_zero_nat ) ).
% list.size(3)
thf(fact_851_list_Osize_I3_J,axiom,
( ( size_size_list_nat @ nil_nat )
= zero_zero_nat ) ).
% list.size(3)
thf(fact_852_list__eq__iff__nth__eq,axiom,
( ( ^ [Y5: list_nat,Z4: list_nat] : ( Y5 = Z4 ) )
= ( ^ [Xs4: list_nat,Ys3: list_nat] :
( ( ( size_size_list_nat @ Xs4 )
= ( size_size_list_nat @ Ys3 ) )
& ! [I2: nat] :
( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Xs4 ) )
=> ( ( nth_nat @ Xs4 @ I2 )
= ( nth_nat @ Ys3 @ I2 ) ) ) ) ) ) ).
% list_eq_iff_nth_eq
thf(fact_853_Skolem__list__nth,axiom,
! [K2: nat,P: nat > nat > $o] :
( ( ! [I2: nat] :
( ( ord_less_nat @ I2 @ K2 )
=> ? [X5: nat] : ( P @ I2 @ X5 ) ) )
= ( ? [Xs4: list_nat] :
( ( ( size_size_list_nat @ Xs4 )
= K2 )
& ! [I2: nat] :
( ( ord_less_nat @ I2 @ K2 )
=> ( P @ I2 @ ( nth_nat @ Xs4 @ I2 ) ) ) ) ) ) ).
% Skolem_list_nth
thf(fact_854_nth__equalityI,axiom,
! [Xs: list_nat,Ys: list_nat] :
( ( ( size_size_list_nat @ Xs )
= ( size_size_list_nat @ Ys ) )
=> ( ! [I3: nat] :
( ( ord_less_nat @ I3 @ ( size_size_list_nat @ Xs ) )
=> ( ( nth_nat @ Xs @ I3 )
= ( nth_nat @ Ys @ I3 ) ) )
=> ( Xs = Ys ) ) ) ).
% nth_equalityI
thf(fact_855_nths__all,axiom,
! [Xs: list_nat,I4: set_nat] :
( ! [I3: nat] :
( ( ord_less_nat @ I3 @ ( size_size_list_nat @ Xs ) )
=> ( member_nat @ I3 @ I4 ) )
=> ( ( nths_nat @ Xs @ I4 )
= Xs ) ) ).
% nths_all
thf(fact_856_listrel1__eq__len,axiom,
! [Xs: list_nat,Ys: list_nat,R: set_Pr1261947904930325089at_nat] :
( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ Ys ) @ ( listrel1_nat @ R ) )
=> ( ( size_size_list_nat @ Xs )
= ( size_size_list_nat @ Ys ) ) ) ).
% listrel1_eq_len
thf(fact_857_sum__length__filter__compl,axiom,
! [P: nat > $o,Xs: list_nat] :
( ( plus_plus_nat @ ( size_size_list_nat @ ( filter_nat @ P @ Xs ) )
@ ( size_size_list_nat
@ ( filter_nat
@ ^ [X4: nat] :
~ ( P @ X4 )
@ Xs ) ) )
= ( size_size_list_nat @ Xs ) ) ).
% sum_length_filter_compl
thf(fact_858_map__replicate__const,axiom,
! [K2: nat,Lst: list_nat] :
( ( map_nat_nat
@ ^ [X4: nat] : K2
@ Lst )
= ( replicate_nat @ ( size_size_list_nat @ Lst ) @ K2 ) ) ).
% map_replicate_const
thf(fact_859_replicate__length__filter,axiom,
! [X: nat,Xs: list_nat] :
( ( replicate_nat
@ ( size_size_list_nat
@ ( filter_nat
@ ( ^ [Y5: nat,Z4: nat] : ( Y5 = Z4 )
@ X )
@ Xs ) )
@ X )
= ( filter_nat
@ ( ^ [Y5: nat,Z4: nat] : ( Y5 = Z4 )
@ X )
@ Xs ) ) ).
% replicate_length_filter
thf(fact_860_length__code,axiom,
( size_s2079826900039435797_set_a
= ( gen_le7107825650602424350_set_a @ zero_zero_nat ) ) ).
% length_code
thf(fact_861_length__code,axiom,
( size_size_list_nat
= ( gen_length_nat @ zero_zero_nat ) ) ).
% length_code
thf(fact_862_gen__length__def,axiom,
( gen_le7107825650602424350_set_a
= ( ^ [N4: nat,Xs4: list_mapping_a_set_a] : ( plus_plus_nat @ N4 @ ( size_s2079826900039435797_set_a @ Xs4 ) ) ) ) ).
% gen_length_def
thf(fact_863_gen__length__def,axiom,
( gen_length_nat
= ( ^ [N4: nat,Xs4: list_nat] : ( plus_plus_nat @ N4 @ ( size_size_list_nat @ Xs4 ) ) ) ) ).
% gen_length_def
thf(fact_864_nth__transpose,axiom,
! [I: nat,Xs: list_list_nat] :
( ( ord_less_nat @ I @ ( size_s3023201423986296836st_nat @ ( transpose_nat @ Xs ) ) )
=> ( ( nth_list_nat @ ( transpose_nat @ Xs ) @ I )
= ( map_list_nat_nat
@ ^ [Xs4: list_nat] : ( nth_nat @ Xs4 @ I )
@ ( filter_list_nat
@ ^ [Ys3: list_nat] : ( ord_less_nat @ I @ ( size_size_list_nat @ Ys3 ) )
@ Xs ) ) ) ) ).
% nth_transpose
thf(fact_865_rev__induct2,axiom,
! [Xs: list_mapping_a_set_a,Ys: list_mapping_a_set_a,P: list_mapping_a_set_a > list_mapping_a_set_a > $o] :
( ( ( size_s2079826900039435797_set_a @ Xs )
= ( size_s2079826900039435797_set_a @ Ys ) )
=> ( ( P @ nil_mapping_a_set_a @ nil_mapping_a_set_a )
=> ( ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a,Y3: mapping_a_set_a,Ys2: list_mapping_a_set_a] :
( ( ( size_s2079826900039435797_set_a @ Xs2 )
= ( size_s2079826900039435797_set_a @ Ys2 ) )
=> ( ( P @ Xs2 @ Ys2 )
=> ( P @ ( append4262749607566113174_set_a @ Xs2 @ ( cons_mapping_a_set_a @ X3 @ nil_mapping_a_set_a ) ) @ ( append4262749607566113174_set_a @ Ys2 @ ( cons_mapping_a_set_a @ Y3 @ nil_mapping_a_set_a ) ) ) ) )
=> ( P @ Xs @ Ys ) ) ) ) ).
% rev_induct2
thf(fact_866_rev__induct2,axiom,
! [Xs: list_mapping_a_set_a,Ys: list_nat,P: list_mapping_a_set_a > list_nat > $o] :
( ( ( size_s2079826900039435797_set_a @ Xs )
= ( size_size_list_nat @ Ys ) )
=> ( ( P @ nil_mapping_a_set_a @ nil_nat )
=> ( ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a,Y3: nat,Ys2: list_nat] :
( ( ( size_s2079826900039435797_set_a @ Xs2 )
= ( size_size_list_nat @ Ys2 ) )
=> ( ( P @ Xs2 @ Ys2 )
=> ( P @ ( append4262749607566113174_set_a @ Xs2 @ ( cons_mapping_a_set_a @ X3 @ nil_mapping_a_set_a ) ) @ ( append_nat @ Ys2 @ ( cons_nat @ Y3 @ nil_nat ) ) ) ) )
=> ( P @ Xs @ Ys ) ) ) ) ).
% rev_induct2
thf(fact_867_rev__induct2,axiom,
! [Xs: list_nat,Ys: list_mapping_a_set_a,P: list_nat > list_mapping_a_set_a > $o] :
( ( ( size_size_list_nat @ Xs )
= ( size_s2079826900039435797_set_a @ Ys ) )
=> ( ( P @ nil_nat @ nil_mapping_a_set_a )
=> ( ! [X3: nat,Xs2: list_nat,Y3: mapping_a_set_a,Ys2: list_mapping_a_set_a] :
( ( ( size_size_list_nat @ Xs2 )
= ( size_s2079826900039435797_set_a @ Ys2 ) )
=> ( ( P @ Xs2 @ Ys2 )
=> ( P @ ( append_nat @ Xs2 @ ( cons_nat @ X3 @ nil_nat ) ) @ ( append4262749607566113174_set_a @ Ys2 @ ( cons_mapping_a_set_a @ Y3 @ nil_mapping_a_set_a ) ) ) ) )
=> ( P @ Xs @ Ys ) ) ) ) ).
% rev_induct2
thf(fact_868_rev__induct2,axiom,
! [Xs: list_nat,Ys: list_nat,P: list_nat > list_nat > $o] :
( ( ( size_size_list_nat @ Xs )
= ( size_size_list_nat @ Ys ) )
=> ( ( P @ nil_nat @ nil_nat )
=> ( ! [X3: nat,Xs2: list_nat,Y3: nat,Ys2: list_nat] :
( ( ( size_size_list_nat @ Xs2 )
= ( size_size_list_nat @ Ys2 ) )
=> ( ( P @ Xs2 @ Ys2 )
=> ( P @ ( append_nat @ Xs2 @ ( cons_nat @ X3 @ nil_nat ) ) @ ( append_nat @ Ys2 @ ( cons_nat @ Y3 @ nil_nat ) ) ) ) )
=> ( P @ Xs @ Ys ) ) ) ) ).
% rev_induct2
thf(fact_869_same__length__different,axiom,
! [Xs: list_mapping_a_set_a,Ys: list_mapping_a_set_a] :
( ( Xs != Ys )
=> ( ( ( size_s2079826900039435797_set_a @ Xs )
= ( size_s2079826900039435797_set_a @ Ys ) )
=> ? [Pre: list_mapping_a_set_a,X3: mapping_a_set_a,Xs3: list_mapping_a_set_a,Y3: mapping_a_set_a,Ys5: list_mapping_a_set_a] :
( ( X3 != Y3 )
& ( Xs
= ( append4262749607566113174_set_a @ Pre @ ( append4262749607566113174_set_a @ ( cons_mapping_a_set_a @ X3 @ nil_mapping_a_set_a ) @ Xs3 ) ) )
& ( Ys
= ( append4262749607566113174_set_a @ Pre @ ( append4262749607566113174_set_a @ ( cons_mapping_a_set_a @ Y3 @ nil_mapping_a_set_a ) @ Ys5 ) ) ) ) ) ) ).
% same_length_different
thf(fact_870_same__length__different,axiom,
! [Xs: list_nat,Ys: list_nat] :
( ( Xs != Ys )
=> ( ( ( size_size_list_nat @ Xs )
= ( size_size_list_nat @ Ys ) )
=> ? [Pre: list_nat,X3: nat,Xs3: list_nat,Y3: nat,Ys5: list_nat] :
( ( X3 != Y3 )
& ( Xs
= ( append_nat @ Pre @ ( append_nat @ ( cons_nat @ X3 @ nil_nat ) @ Xs3 ) ) )
& ( Ys
= ( append_nat @ Pre @ ( append_nat @ ( cons_nat @ Y3 @ nil_nat ) @ Ys5 ) ) ) ) ) ) ).
% same_length_different
thf(fact_871_list__index__fun__gt,axiom,
! [Xs: list_nat,F: nat > nat,J2: nat,I: nat] :
( ! [I3: nat] :
( ( ord_less_nat @ ( suc @ I3 ) @ ( size_size_list_nat @ Xs ) )
=> ( ord_less_nat @ ( F @ ( nth_nat @ Xs @ ( suc @ I3 ) ) ) @ ( F @ ( nth_nat @ Xs @ I3 ) ) ) )
=> ( ( ord_less_nat @ J2 @ I )
=> ( ( ord_less_nat @ I @ ( size_size_list_nat @ Xs ) )
=> ( ord_less_nat @ ( F @ ( nth_nat @ Xs @ I ) ) @ ( F @ ( nth_nat @ Xs @ J2 ) ) ) ) ) ) ).
% list_index_fun_gt
thf(fact_872_map__equality__iff,axiom,
! [F: nat > nat,Xs: list_nat,G: nat > nat,Ys: list_nat] :
( ( ( map_nat_nat @ F @ Xs )
= ( map_nat_nat @ G @ Ys ) )
= ( ( ( size_size_list_nat @ Xs )
= ( size_size_list_nat @ Ys ) )
& ! [I2: nat] :
( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Ys ) )
=> ( ( F @ ( nth_nat @ Xs @ I2 ) )
= ( G @ ( nth_nat @ Ys @ I2 ) ) ) ) ) ) ).
% map_equality_iff
thf(fact_873_verit__comp__simplify1_I1_J,axiom,
! [A: nat] :
~ ( ord_less_nat @ A @ A ) ).
% verit_comp_simplify1(1)
thf(fact_874_enumerate__append__eq,axiom,
! [N: nat,Xs: list_nat,Ys: list_nat] :
( ( enumerate_nat @ N @ ( append_nat @ Xs @ Ys ) )
= ( append985823374593552924at_nat @ ( enumerate_nat @ N @ Xs ) @ ( enumerate_nat @ ( plus_plus_nat @ N @ ( size_size_list_nat @ Xs ) ) @ Ys ) ) ) ).
% enumerate_append_eq
thf(fact_875_filter__not__all__length,axiom,
! [P: mapping_a_set_a > $o,Xs: list_mapping_a_set_a] :
( ( ( filter7335739693268387380_set_a @ P @ Xs )
!= nil_mapping_a_set_a )
=> ( ord_less_nat
@ ( size_s2079826900039435797_set_a
@ ( filter7335739693268387380_set_a
@ ^ [X4: mapping_a_set_a] :
~ ( P @ X4 )
@ Xs ) )
@ ( size_s2079826900039435797_set_a @ Xs ) ) ) ).
% filter_not_all_length
thf(fact_876_filter__not__all__length,axiom,
! [P: nat > $o,Xs: list_nat] :
( ( ( filter_nat @ P @ Xs )
!= nil_nat )
=> ( ord_less_nat
@ ( size_size_list_nat
@ ( filter_nat
@ ^ [X4: nat] :
~ ( P @ X4 )
@ Xs ) )
@ ( size_size_list_nat @ Xs ) ) ) ).
% filter_not_all_length
thf(fact_877_nths__append,axiom,
! [L: list_nat,L2: list_nat,A2: set_nat] :
( ( nths_nat @ ( append_nat @ L @ L2 ) @ A2 )
= ( append_nat @ ( nths_nat @ L @ A2 )
@ ( nths_nat @ L2
@ ( collect_nat
@ ^ [J: nat] : ( member_nat @ ( plus_plus_nat @ J @ ( size_size_list_nat @ L ) ) @ A2 ) ) ) ) ) ).
% nths_append
thf(fact_878_transpose__rectangle,axiom,
! [Xs: list_list_nat,N: nat] :
( ( ( Xs = nil_list_nat )
=> ( N = zero_zero_nat ) )
=> ( ! [I3: nat] :
( ( ord_less_nat @ I3 @ ( size_s3023201423986296836st_nat @ Xs ) )
=> ( ( size_size_list_nat @ ( nth_list_nat @ Xs @ I3 ) )
= N ) )
=> ( ( transpose_nat @ Xs )
= ( map_nat_list_nat
@ ^ [I2: nat] :
( map_nat_nat
@ ^ [J: nat] : ( nth_nat @ ( nth_list_nat @ Xs @ J ) @ I2 )
@ ( upt @ zero_zero_nat @ ( size_s3023201423986296836st_nat @ Xs ) ) )
@ ( upt @ zero_zero_nat @ N ) ) ) ) ) ).
% transpose_rectangle
thf(fact_879_length__Suc__conv__rev,axiom,
! [Xs: list_mapping_a_set_a,N: nat] :
( ( ( size_s2079826900039435797_set_a @ Xs )
= ( suc @ N ) )
= ( ? [Y4: mapping_a_set_a,Ys3: list_mapping_a_set_a] :
( ( Xs
= ( append4262749607566113174_set_a @ Ys3 @ ( cons_mapping_a_set_a @ Y4 @ nil_mapping_a_set_a ) ) )
& ( ( size_s2079826900039435797_set_a @ Ys3 )
= N ) ) ) ) ).
% length_Suc_conv_rev
thf(fact_880_length__Suc__conv__rev,axiom,
! [Xs: list_nat,N: nat] :
( ( ( size_size_list_nat @ Xs )
= ( suc @ N ) )
= ( ? [Y4: nat,Ys3: list_nat] :
( ( Xs
= ( append_nat @ Ys3 @ ( cons_nat @ Y4 @ nil_nat ) ) )
& ( ( size_size_list_nat @ Ys3 )
= N ) ) ) ) ).
% length_Suc_conv_rev
thf(fact_881_length__append__singleton,axiom,
! [Xs: list_mapping_a_set_a,X: mapping_a_set_a] :
( ( size_s2079826900039435797_set_a @ ( append4262749607566113174_set_a @ Xs @ ( cons_mapping_a_set_a @ X @ nil_mapping_a_set_a ) ) )
= ( suc @ ( size_s2079826900039435797_set_a @ Xs ) ) ) ).
% length_append_singleton
thf(fact_882_length__append__singleton,axiom,
! [Xs: list_nat,X: nat] :
( ( size_size_list_nat @ ( append_nat @ Xs @ ( cons_nat @ X @ nil_nat ) ) )
= ( suc @ ( size_size_list_nat @ Xs ) ) ) ).
% length_append_singleton
thf(fact_883_list_Osize_I4_J,axiom,
! [X21: mapping_a_set_a,X22: list_mapping_a_set_a] :
( ( size_s2079826900039435797_set_a @ ( cons_mapping_a_set_a @ X21 @ X22 ) )
= ( plus_plus_nat @ ( size_s2079826900039435797_set_a @ X22 ) @ ( suc @ zero_zero_nat ) ) ) ).
% list.size(4)
thf(fact_884_list_Osize_I4_J,axiom,
! [X21: nat,X22: list_nat] :
( ( size_size_list_nat @ ( cons_nat @ X21 @ X22 ) )
= ( plus_plus_nat @ ( size_size_list_nat @ X22 ) @ ( suc @ zero_zero_nat ) ) ) ).
% list.size(4)
thf(fact_885_nth__append,axiom,
! [N: nat,Xs: list_nat,Ys: list_nat] :
( ( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs ) )
=> ( ( nth_nat @ ( append_nat @ Xs @ Ys ) @ N )
= ( nth_nat @ Xs @ N ) ) )
& ( ~ ( ord_less_nat @ N @ ( size_size_list_nat @ Xs ) )
=> ( ( nth_nat @ ( append_nat @ Xs @ Ys ) @ N )
= ( nth_nat @ Ys @ ( minus_minus_nat @ N @ ( size_size_list_nat @ Xs ) ) ) ) ) ) ).
% nth_append
thf(fact_886_nth__tl,axiom,
! [N: nat,Xs: list_nat] :
( ( ord_less_nat @ N @ ( size_size_list_nat @ ( tl_nat @ Xs ) ) )
=> ( ( nth_nat @ ( tl_nat @ Xs ) @ N )
= ( nth_nat @ Xs @ ( suc @ N ) ) ) ) ).
% nth_tl
thf(fact_887_filter__eq__nths,axiom,
( filter_nat
= ( ^ [P3: nat > $o,Xs4: list_nat] :
( nths_nat @ Xs4
@ ( collect_nat
@ ^ [I2: nat] :
( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Xs4 ) )
& ( P3 @ ( nth_nat @ Xs4 @ I2 ) ) ) ) ) ) ) ).
% filter_eq_nths
thf(fact_888_map__nth,axiom,
! [Xs: list_nat] :
( ( map_nat_nat @ ( nth_nat @ Xs ) @ ( upt @ zero_zero_nat @ ( size_size_list_nat @ Xs ) ) )
= Xs ) ).
% map_nth
thf(fact_889_rev__nth,axiom,
! [N: nat,Xs: list_nat] :
( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs ) )
=> ( ( nth_nat @ ( rev_nat @ Xs ) @ N )
= ( nth_nat @ Xs @ ( minus_minus_nat @ ( size_size_list_nat @ Xs ) @ ( suc @ N ) ) ) ) ) ).
% rev_nth
thf(fact_890_nth__enumerate__eq,axiom,
! [M: nat,Xs: list_nat,N: nat] :
( ( ord_less_nat @ M @ ( size_size_list_nat @ Xs ) )
=> ( ( nth_Pr7617993195940197384at_nat @ ( enumerate_nat @ N @ Xs ) @ M )
= ( product_Pair_nat_nat @ ( plus_plus_nat @ N @ M ) @ ( nth_nat @ Xs @ M ) ) ) ) ).
% nth_enumerate_eq
thf(fact_891_Nitpick_Osize__list__simp_I2_J,axiom,
( size_s2079826900039435797_set_a
= ( ^ [Xs4: list_mapping_a_set_a] : ( if_nat @ ( Xs4 = nil_mapping_a_set_a ) @ zero_zero_nat @ ( suc @ ( size_s2079826900039435797_set_a @ ( tl_mapping_a_set_a @ Xs4 ) ) ) ) ) ) ).
% Nitpick.size_list_simp(2)
thf(fact_892_Nitpick_Osize__list__simp_I2_J,axiom,
( size_size_list_nat
= ( ^ [Xs4: list_nat] : ( if_nat @ ( Xs4 = nil_nat ) @ zero_zero_nat @ ( suc @ ( size_size_list_nat @ ( tl_nat @ Xs4 ) ) ) ) ) ) ).
% Nitpick.size_list_simp(2)
thf(fact_893_Cons__lenlex__iff,axiom,
! [M: mapping_a_set_a,Ms: list_mapping_a_set_a,N: mapping_a_set_a,Ns: list_mapping_a_set_a,R: set_Pr3081520320537980707_set_a] :
( ( member5198625016828253580_set_a @ ( produc3343591741951367323_set_a @ ( cons_mapping_a_set_a @ M @ Ms ) @ ( cons_mapping_a_set_a @ N @ Ns ) ) @ ( lenlex8686202977806187302_set_a @ R ) )
= ( ( ord_less_nat @ ( size_s2079826900039435797_set_a @ Ms ) @ ( size_s2079826900039435797_set_a @ Ns ) )
| ( ( ( size_s2079826900039435797_set_a @ Ms )
= ( size_s2079826900039435797_set_a @ Ns ) )
& ( member2757164922633442668_set_a @ ( produc7827954888401655931_set_a @ M @ N ) @ R ) )
| ( ( M = N )
& ( member5198625016828253580_set_a @ ( produc3343591741951367323_set_a @ Ms @ Ns ) @ ( lenlex8686202977806187302_set_a @ R ) ) ) ) ) ).
% Cons_lenlex_iff
thf(fact_894_Cons__lenlex__iff,axiom,
! [M: nat,Ms: list_nat,N: nat,Ns: list_nat,R: set_Pr1261947904930325089at_nat] :
( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ M @ Ms ) @ ( cons_nat @ N @ Ns ) ) @ ( lenlex_nat @ R ) )
= ( ( ord_less_nat @ ( size_size_list_nat @ Ms ) @ ( size_size_list_nat @ Ns ) )
| ( ( ( size_size_list_nat @ Ms )
= ( size_size_list_nat @ Ns ) )
& ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ M @ N ) @ R ) )
| ( ( M = N )
& ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Ms @ Ns ) @ ( lenlex_nat @ R ) ) ) ) ) ).
% Cons_lenlex_iff
thf(fact_895_Cons__in__lex,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a,Y: mapping_a_set_a,Ys: list_mapping_a_set_a,R: set_Pr3081520320537980707_set_a] :
( ( member5198625016828253580_set_a @ ( produc3343591741951367323_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) @ ( cons_mapping_a_set_a @ Y @ Ys ) ) @ ( lex_mapping_a_set_a @ R ) )
= ( ( ( member2757164922633442668_set_a @ ( produc7827954888401655931_set_a @ X @ Y ) @ R )
& ( ( size_s2079826900039435797_set_a @ Xs )
= ( size_s2079826900039435797_set_a @ Ys ) ) )
| ( ( X = Y )
& ( member5198625016828253580_set_a @ ( produc3343591741951367323_set_a @ Xs @ Ys ) @ ( lex_mapping_a_set_a @ R ) ) ) ) ) ).
% Cons_in_lex
thf(fact_896_Cons__in__lex,axiom,
! [X: nat,Xs: list_nat,Y: nat,Ys: list_nat,R: set_Pr1261947904930325089at_nat] :
( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( cons_nat @ X @ Xs ) @ ( cons_nat @ Y @ Ys ) ) @ ( lex_nat @ R ) )
= ( ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Y ) @ R )
& ( ( size_size_list_nat @ Xs )
= ( size_size_list_nat @ Ys ) ) )
| ( ( X = Y )
& ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ Ys ) @ ( lex_nat @ R ) ) ) ) ) ).
% Cons_in_lex
thf(fact_897_Nil__lenlex__iff1,axiom,
! [Ns: list_mapping_a_set_a,R: set_Pr3081520320537980707_set_a] :
( ( member5198625016828253580_set_a @ ( produc3343591741951367323_set_a @ nil_mapping_a_set_a @ Ns ) @ ( lenlex8686202977806187302_set_a @ R ) )
= ( Ns != nil_mapping_a_set_a ) ) ).
% Nil_lenlex_iff1
thf(fact_898_Nil__lenlex__iff1,axiom,
! [Ns: list_nat,R: set_Pr1261947904930325089at_nat] :
( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ nil_nat @ Ns ) @ ( lenlex_nat @ R ) )
= ( Ns != nil_nat ) ) ).
% Nil_lenlex_iff1
thf(fact_899_Nil__notin__lex,axiom,
! [Ys: list_mapping_a_set_a,R: set_Pr3081520320537980707_set_a] :
~ ( member5198625016828253580_set_a @ ( produc3343591741951367323_set_a @ nil_mapping_a_set_a @ Ys ) @ ( lex_mapping_a_set_a @ R ) ) ).
% Nil_notin_lex
thf(fact_900_Nil__notin__lex,axiom,
! [Ys: list_nat,R: set_Pr1261947904930325089at_nat] :
~ ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ nil_nat @ Ys ) @ ( lex_nat @ R ) ) ).
% Nil_notin_lex
thf(fact_901_Nil2__notin__lex,axiom,
! [Xs: list_mapping_a_set_a,R: set_Pr3081520320537980707_set_a] :
~ ( member5198625016828253580_set_a @ ( produc3343591741951367323_set_a @ Xs @ nil_mapping_a_set_a ) @ ( lex_mapping_a_set_a @ R ) ) ).
% Nil2_notin_lex
thf(fact_902_Nil2__notin__lex,axiom,
! [Xs: list_nat,R: set_Pr1261947904930325089at_nat] :
~ ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ nil_nat ) @ ( lex_nat @ R ) ) ).
% Nil2_notin_lex
thf(fact_903_Nil__lenlex__iff2,axiom,
! [Ns: list_mapping_a_set_a,R: set_Pr3081520320537980707_set_a] :
~ ( member5198625016828253580_set_a @ ( produc3343591741951367323_set_a @ Ns @ nil_mapping_a_set_a ) @ ( lenlex8686202977806187302_set_a @ R ) ) ).
% Nil_lenlex_iff2
thf(fact_904_Nil__lenlex__iff2,axiom,
! [Ns: list_nat,R: set_Pr1261947904930325089at_nat] :
~ ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Ns @ nil_nat ) @ ( lenlex_nat @ R ) ) ).
% Nil_lenlex_iff2
thf(fact_905_lex__append__rightI,axiom,
! [Xs: list_nat,Ys: list_nat,R: set_Pr1261947904930325089at_nat,Vs2: list_nat,Us2: list_nat] :
( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ Ys ) @ ( lex_nat @ R ) )
=> ( ( ( size_size_list_nat @ Vs2 )
= ( size_size_list_nat @ Us2 ) )
=> ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( append_nat @ Xs @ Us2 ) @ ( append_nat @ Ys @ Vs2 ) ) @ ( lex_nat @ R ) ) ) ) ).
% lex_append_rightI
thf(fact_906_lenlex__append1,axiom,
! [Us2: list_nat,Xs: list_nat,R2: set_Pr1261947904930325089at_nat,Vs2: list_nat,Ys: list_nat] :
( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Us2 @ Xs ) @ ( lenlex_nat @ R2 ) )
=> ( ( ( size_size_list_nat @ Vs2 )
= ( size_size_list_nat @ Ys ) )
=> ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ ( append_nat @ Us2 @ Vs2 ) @ ( append_nat @ Xs @ Ys ) ) @ ( lenlex_nat @ R2 ) ) ) ) ).
% lenlex_append1
thf(fact_907_Nitpick_Osize__list__simp_I1_J,axiom,
( size_l2551612255187775209_set_a
= ( ^ [F3: mapping_a_set_a > nat,Xs4: list_mapping_a_set_a] : ( if_nat @ ( Xs4 = nil_mapping_a_set_a ) @ zero_zero_nat @ ( suc @ ( plus_plus_nat @ ( F3 @ ( hd_mapping_a_set_a @ Xs4 ) ) @ ( size_l2551612255187775209_set_a @ F3 @ ( tl_mapping_a_set_a @ Xs4 ) ) ) ) ) ) ) ).
% Nitpick.size_list_simp(1)
thf(fact_908_Nitpick_Osize__list__simp_I1_J,axiom,
( size_list_nat
= ( ^ [F3: nat > nat,Xs4: list_nat] : ( if_nat @ ( Xs4 = nil_nat ) @ zero_zero_nat @ ( suc @ ( plus_plus_nat @ ( F3 @ ( hd_nat @ Xs4 ) ) @ ( size_list_nat @ F3 @ ( tl_nat @ Xs4 ) ) ) ) ) ) ) ).
% Nitpick.size_list_simp(1)
thf(fact_909_size__char__eq__0,axiom,
( size_size_char
= ( ^ [C3: char] : zero_zero_nat ) ) ).
% size_char_eq_0
thf(fact_910_list_Osize__gen_I1_J,axiom,
! [X: mapping_a_set_a > nat] :
( ( size_l2551612255187775209_set_a @ X @ nil_mapping_a_set_a )
= zero_zero_nat ) ).
% list.size_gen(1)
thf(fact_911_list_Osize__gen_I1_J,axiom,
! [X: nat > nat] :
( ( size_list_nat @ X @ nil_nat )
= zero_zero_nat ) ).
% list.size_gen(1)
thf(fact_912_list_Osize__gen_I2_J,axiom,
! [X: mapping_a_set_a > nat,X21: mapping_a_set_a,X22: list_mapping_a_set_a] :
( ( size_l2551612255187775209_set_a @ X @ ( cons_mapping_a_set_a @ X21 @ X22 ) )
= ( plus_plus_nat @ ( plus_plus_nat @ ( X @ X21 ) @ ( size_l2551612255187775209_set_a @ X @ X22 ) ) @ ( suc @ zero_zero_nat ) ) ) ).
% list.size_gen(2)
thf(fact_913_list_Osize__gen_I2_J,axiom,
! [X: nat > nat,X21: nat,X22: list_nat] :
( ( size_list_nat @ X @ ( cons_nat @ X21 @ X22 ) )
= ( plus_plus_nat @ ( plus_plus_nat @ ( X @ X21 ) @ ( size_list_nat @ X @ X22 ) ) @ ( suc @ zero_zero_nat ) ) ) ).
% list.size_gen(2)
thf(fact_914_size_H__char__eq__0,axiom,
( size_char
= ( ^ [C3: char] : zero_zero_nat ) ) ).
% size'_char_eq_0
thf(fact_915_transpose__max__length,axiom,
! [Xs: list_l8399423937273897361_set_a] :
( ( foldr_7986787372255180026_a_nat
@ ^ [Xs4: list_mapping_a_set_a] : ( ord_max_nat @ ( size_s2079826900039435797_set_a @ Xs4 ) )
@ ( transp4038014982164974433_set_a @ Xs )
@ zero_zero_nat )
= ( size_s1578076166182737445_set_a
@ ( filter5923938535083274564_set_a
@ ^ [X4: list_mapping_a_set_a] : ( X4 != nil_mapping_a_set_a )
@ Xs ) ) ) ).
% transpose_max_length
thf(fact_916_transpose__max__length,axiom,
! [Xs: list_list_nat] :
( ( foldr_list_nat_nat
@ ^ [Xs4: list_nat] : ( ord_max_nat @ ( size_size_list_nat @ Xs4 ) )
@ ( transpose_nat @ Xs )
@ zero_zero_nat )
= ( size_s3023201423986296836st_nat
@ ( filter_list_nat
@ ^ [X4: list_nat] : ( X4 != nil_nat )
@ Xs ) ) ) ).
% transpose_max_length
thf(fact_917_max__Suc__Suc,axiom,
! [M: nat,N: nat] :
( ( ord_max_nat @ ( suc @ M ) @ ( suc @ N ) )
= ( suc @ ( ord_max_nat @ M @ N ) ) ) ).
% max_Suc_Suc
thf(fact_918_max__0R,axiom,
! [N: nat] :
( ( ord_max_nat @ N @ zero_zero_nat )
= N ) ).
% max_0R
thf(fact_919_max__0L,axiom,
! [N: nat] :
( ( ord_max_nat @ zero_zero_nat @ N )
= N ) ).
% max_0L
thf(fact_920_max__nat_Oright__neutral,axiom,
! [A: nat] :
( ( ord_max_nat @ A @ zero_zero_nat )
= A ) ).
% max_nat.right_neutral
thf(fact_921_max__nat_Oneutr__eq__iff,axiom,
! [A: nat,B: nat] :
( ( zero_zero_nat
= ( ord_max_nat @ A @ B ) )
= ( ( A = zero_zero_nat )
& ( B = zero_zero_nat ) ) ) ).
% max_nat.neutr_eq_iff
thf(fact_922_max__nat_Oleft__neutral,axiom,
! [A: nat] :
( ( ord_max_nat @ zero_zero_nat @ A )
= A ) ).
% max_nat.left_neutral
thf(fact_923_max__nat_Oeq__neutr__iff,axiom,
! [A: nat,B: nat] :
( ( ( ord_max_nat @ A @ B )
= zero_zero_nat )
= ( ( A = zero_zero_nat )
& ( B = zero_zero_nat ) ) ) ).
% max_nat.eq_neutr_iff
thf(fact_924_max__0__1_I4_J,axiom,
! [X: num] :
( ( ord_max_nat @ ( numeral_numeral_nat @ X ) @ zero_zero_nat )
= ( numeral_numeral_nat @ X ) ) ).
% max_0_1(4)
thf(fact_925_max__0__1_I3_J,axiom,
! [X: num] :
( ( ord_max_nat @ zero_zero_nat @ ( numeral_numeral_nat @ X ) )
= ( numeral_numeral_nat @ X ) ) ).
% max_0_1(3)
thf(fact_926_max__0__1_I1_J,axiom,
( ( ord_max_nat @ zero_zero_nat @ one_one_nat )
= one_one_nat ) ).
% max_0_1(1)
thf(fact_927_max__0__1_I2_J,axiom,
( ( ord_max_nat @ one_one_nat @ zero_zero_nat )
= one_one_nat ) ).
% max_0_1(2)
thf(fact_928_max__0__1_I6_J,axiom,
! [X: num] :
( ( ord_max_nat @ ( numeral_numeral_nat @ X ) @ one_one_nat )
= ( numeral_numeral_nat @ X ) ) ).
% max_0_1(6)
thf(fact_929_max__0__1_I5_J,axiom,
! [X: num] :
( ( ord_max_nat @ one_one_nat @ ( numeral_numeral_nat @ X ) )
= ( numeral_numeral_nat @ X ) ) ).
% max_0_1(5)
thf(fact_930_max__add__distrib__right,axiom,
! [X: nat,Y: nat,Z3: nat] :
( ( plus_plus_nat @ X @ ( ord_max_nat @ Y @ Z3 ) )
= ( ord_max_nat @ ( plus_plus_nat @ X @ Y ) @ ( plus_plus_nat @ X @ Z3 ) ) ) ).
% max_add_distrib_right
thf(fact_931_max__add__distrib__left,axiom,
! [X: nat,Y: nat,Z3: nat] :
( ( plus_plus_nat @ ( ord_max_nat @ X @ Y ) @ Z3 )
= ( ord_max_nat @ ( plus_plus_nat @ X @ Z3 ) @ ( plus_plus_nat @ Y @ Z3 ) ) ) ).
% max_add_distrib_left
thf(fact_932_nat__add__max__right,axiom,
! [M: nat,N: nat,Q: nat] :
( ( plus_plus_nat @ M @ ( ord_max_nat @ N @ Q ) )
= ( ord_max_nat @ ( plus_plus_nat @ M @ N ) @ ( plus_plus_nat @ M @ Q ) ) ) ).
% nat_add_max_right
thf(fact_933_nat__add__max__left,axiom,
! [M: nat,N: nat,Q: nat] :
( ( plus_plus_nat @ ( ord_max_nat @ M @ N ) @ Q )
= ( ord_max_nat @ ( plus_plus_nat @ M @ Q ) @ ( plus_plus_nat @ N @ Q ) ) ) ).
% nat_add_max_left
thf(fact_934_nat__minus__add__max,axiom,
! [N: nat,M: nat] :
( ( plus_plus_nat @ ( minus_minus_nat @ N @ M ) @ M )
= ( ord_max_nat @ N @ M ) ) ).
% nat_minus_add_max
thf(fact_935_length__transpose,axiom,
! [Xs: list_list_nat] :
( ( size_s3023201423986296836st_nat @ ( transpose_nat @ Xs ) )
= ( foldr_list_nat_nat
@ ^ [Xs4: list_nat] : ( ord_max_nat @ ( size_size_list_nat @ Xs4 ) )
@ Xs
@ zero_zero_nat ) ) ).
% length_transpose
thf(fact_936_transpose__aux__max,axiom,
! [Xs: list_nat,Xss3: list_l8399423937273897361_set_a] :
( ( ord_max_nat @ ( suc @ ( size_size_list_nat @ Xs ) )
@ ( foldr_7986787372255180026_a_nat
@ ^ [Xs4: list_mapping_a_set_a] : ( ord_max_nat @ ( size_s2079826900039435797_set_a @ Xs4 ) )
@ Xss3
@ zero_zero_nat ) )
= ( suc
@ ( ord_max_nat @ ( size_size_list_nat @ Xs )
@ ( foldr_7986787372255180026_a_nat
@ ^ [X4: list_mapping_a_set_a] : ( ord_max_nat @ ( minus_minus_nat @ ( size_s2079826900039435797_set_a @ X4 ) @ ( suc @ zero_zero_nat ) ) )
@ ( filter5923938535083274564_set_a
@ ^ [Ys3: list_mapping_a_set_a] : ( Ys3 != nil_mapping_a_set_a )
@ Xss3 )
@ zero_zero_nat ) ) ) ) ).
% transpose_aux_max
thf(fact_937_transpose__aux__max,axiom,
! [Xs: list_nat,Xss3: list_list_nat] :
( ( ord_max_nat @ ( suc @ ( size_size_list_nat @ Xs ) )
@ ( foldr_list_nat_nat
@ ^ [Xs4: list_nat] : ( ord_max_nat @ ( size_size_list_nat @ Xs4 ) )
@ Xss3
@ zero_zero_nat ) )
= ( suc
@ ( ord_max_nat @ ( size_size_list_nat @ Xs )
@ ( foldr_list_nat_nat
@ ^ [X4: list_nat] : ( ord_max_nat @ ( minus_minus_nat @ ( size_size_list_nat @ X4 ) @ ( suc @ zero_zero_nat ) ) )
@ ( filter_list_nat
@ ^ [Ys3: list_nat] : ( Ys3 != nil_nat )
@ Xss3 )
@ zero_zero_nat ) ) ) ) ).
% transpose_aux_max
thf(fact_938_max_Oabsorb3,axiom,
! [B: nat,A: nat] :
( ( ord_less_nat @ B @ A )
=> ( ( ord_max_nat @ A @ B )
= A ) ) ).
% max.absorb3
thf(fact_939_max_Oabsorb4,axiom,
! [A: nat,B: nat] :
( ( ord_less_nat @ A @ B )
=> ( ( ord_max_nat @ A @ B )
= B ) ) ).
% max.absorb4
thf(fact_940_max__less__iff__conj,axiom,
! [X: nat,Y: nat,Z3: nat] :
( ( ord_less_nat @ ( ord_max_nat @ X @ Y ) @ Z3 )
= ( ( ord_less_nat @ X @ Z3 )
& ( ord_less_nat @ Y @ Z3 ) ) ) ).
% max_less_iff_conj
thf(fact_941_less__max__iff__disj,axiom,
! [Z3: nat,X: nat,Y: nat] :
( ( ord_less_nat @ Z3 @ ( ord_max_nat @ X @ Y ) )
= ( ( ord_less_nat @ Z3 @ X )
| ( ord_less_nat @ Z3 @ Y ) ) ) ).
% less_max_iff_disj
thf(fact_942_max_Ostrict__boundedE,axiom,
! [B: nat,C: nat,A: nat] :
( ( ord_less_nat @ ( ord_max_nat @ B @ C ) @ A )
=> ~ ( ( ord_less_nat @ B @ A )
=> ~ ( ord_less_nat @ C @ A ) ) ) ).
% max.strict_boundedE
thf(fact_943_max_Ostrict__order__iff,axiom,
( ord_less_nat
= ( ^ [B2: nat,A4: nat] :
( ( A4
= ( ord_max_nat @ A4 @ B2 ) )
& ( A4 != B2 ) ) ) ) ).
% max.strict_order_iff
thf(fact_944_max_Ostrict__coboundedI1,axiom,
! [C: nat,A: nat,B: nat] :
( ( ord_less_nat @ C @ A )
=> ( ord_less_nat @ C @ ( ord_max_nat @ A @ B ) ) ) ).
% max.strict_coboundedI1
thf(fact_945_max_Ostrict__coboundedI2,axiom,
! [C: nat,B: nat,A: nat] :
( ( ord_less_nat @ C @ B )
=> ( ord_less_nat @ C @ ( ord_max_nat @ A @ B ) ) ) ).
% max.strict_coboundedI2
thf(fact_946_take__Suc__conv__app__nth,axiom,
! [I: nat,Xs: list_mapping_a_set_a] :
( ( ord_less_nat @ I @ ( size_s2079826900039435797_set_a @ Xs ) )
=> ( ( take_mapping_a_set_a @ ( suc @ I ) @ Xs )
= ( append4262749607566113174_set_a @ ( take_mapping_a_set_a @ I @ Xs ) @ ( cons_mapping_a_set_a @ ( nth_mapping_a_set_a @ Xs @ I ) @ nil_mapping_a_set_a ) ) ) ) ).
% take_Suc_conv_app_nth
thf(fact_947_take__Suc__conv__app__nth,axiom,
! [I: nat,Xs: list_nat] :
( ( ord_less_nat @ I @ ( size_size_list_nat @ Xs ) )
=> ( ( take_nat @ ( suc @ I ) @ Xs )
= ( append_nat @ ( take_nat @ I @ Xs ) @ ( cons_nat @ ( nth_nat @ Xs @ I ) @ nil_nat ) ) ) ) ).
% take_Suc_conv_app_nth
thf(fact_948_listrel1__iff__update,axiom,
! [Xs: list_nat,Ys: list_nat,R: set_Pr1261947904930325089at_nat] :
( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ Ys ) @ ( listrel1_nat @ R ) )
= ( ? [Y4: nat,N4: nat] :
( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ ( nth_nat @ Xs @ N4 ) @ Y4 ) @ R )
& ( ord_less_nat @ N4 @ ( size_size_list_nat @ Xs ) )
& ( Ys
= ( list_update_nat @ Xs @ N4 @ Y4 ) ) ) ) ) ).
% listrel1_iff_update
thf(fact_949_list__update__nonempty,axiom,
! [Xs: list_mapping_a_set_a,K2: nat,X: mapping_a_set_a] :
( ( ( list_u3231430371889417475_set_a @ Xs @ K2 @ X )
= nil_mapping_a_set_a )
= ( Xs = nil_mapping_a_set_a ) ) ).
% list_update_nonempty
thf(fact_950_list__update__nonempty,axiom,
! [Xs: list_nat,K2: nat,X: nat] :
( ( ( list_update_nat @ Xs @ K2 @ X )
= nil_nat )
= ( Xs = nil_nat ) ) ).
% list_update_nonempty
thf(fact_951_length__list__update,axiom,
! [Xs: list_nat,I: nat,X: nat] :
( ( size_size_list_nat @ ( list_update_nat @ Xs @ I @ X ) )
= ( size_size_list_nat @ Xs ) ) ).
% length_list_update
thf(fact_952_list__update__id,axiom,
! [Xs: list_nat,I: nat] :
( ( list_update_nat @ Xs @ I @ ( nth_nat @ Xs @ I ) )
= Xs ) ).
% list_update_id
thf(fact_953_nth__list__update__neq,axiom,
! [I: nat,J2: nat,Xs: list_nat,X: nat] :
( ( I != J2 )
=> ( ( nth_nat @ ( list_update_nat @ Xs @ I @ X ) @ J2 )
= ( nth_nat @ Xs @ J2 ) ) ) ).
% nth_list_update_neq
thf(fact_954_take__Suc__Cons,axiom,
! [N: nat,X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( take_mapping_a_set_a @ ( suc @ N ) @ ( cons_mapping_a_set_a @ X @ Xs ) )
= ( cons_mapping_a_set_a @ X @ ( take_mapping_a_set_a @ N @ Xs ) ) ) ).
% take_Suc_Cons
thf(fact_955_take__Suc__Cons,axiom,
! [N: nat,X: nat,Xs: list_nat] :
( ( take_nat @ ( suc @ N ) @ ( cons_nat @ X @ Xs ) )
= ( cons_nat @ X @ ( take_nat @ N @ Xs ) ) ) ).
% take_Suc_Cons
thf(fact_956_take0,axiom,
( ( take_mapping_a_set_a @ zero_zero_nat )
= ( ^ [Xs4: list_mapping_a_set_a] : nil_mapping_a_set_a ) ) ).
% take0
thf(fact_957_take0,axiom,
( ( take_nat @ zero_zero_nat )
= ( ^ [Xs4: list_nat] : nil_nat ) ) ).
% take0
thf(fact_958_take__eq__Nil,axiom,
! [N: nat,Xs: list_mapping_a_set_a] :
( ( ( take_mapping_a_set_a @ N @ Xs )
= nil_mapping_a_set_a )
= ( ( N = zero_zero_nat )
| ( Xs = nil_mapping_a_set_a ) ) ) ).
% take_eq_Nil
thf(fact_959_take__eq__Nil,axiom,
! [N: nat,Xs: list_nat] :
( ( ( take_nat @ N @ Xs )
= nil_nat )
= ( ( N = zero_zero_nat )
| ( Xs = nil_nat ) ) ) ).
% take_eq_Nil
thf(fact_960_take__eq__Nil2,axiom,
! [N: nat,Xs: list_mapping_a_set_a] :
( ( nil_mapping_a_set_a
= ( take_mapping_a_set_a @ N @ Xs ) )
= ( ( N = zero_zero_nat )
| ( Xs = nil_mapping_a_set_a ) ) ) ).
% take_eq_Nil2
thf(fact_961_take__eq__Nil2,axiom,
! [N: nat,Xs: list_nat] :
( ( nil_nat
= ( take_nat @ N @ Xs ) )
= ( ( N = zero_zero_nat )
| ( Xs = nil_nat ) ) ) ).
% take_eq_Nil2
thf(fact_962_nth__take,axiom,
! [I: nat,N: nat,Xs: list_nat] :
( ( ord_less_nat @ I @ N )
=> ( ( nth_nat @ ( take_nat @ N @ Xs ) @ I )
= ( nth_nat @ Xs @ I ) ) ) ).
% nth_take
thf(fact_963_take__append,axiom,
! [N: nat,Xs: list_nat,Ys: list_nat] :
( ( take_nat @ N @ ( append_nat @ Xs @ Ys ) )
= ( append_nat @ ( take_nat @ N @ Xs ) @ ( take_nat @ ( minus_minus_nat @ N @ ( size_size_list_nat @ Xs ) ) @ Ys ) ) ) ).
% take_append
thf(fact_964_list__update__length,axiom,
! [Xs: list_mapping_a_set_a,X: mapping_a_set_a,Ys: list_mapping_a_set_a,Y: mapping_a_set_a] :
( ( list_u3231430371889417475_set_a @ ( append4262749607566113174_set_a @ Xs @ ( cons_mapping_a_set_a @ X @ Ys ) ) @ ( size_s2079826900039435797_set_a @ Xs ) @ Y )
= ( append4262749607566113174_set_a @ Xs @ ( cons_mapping_a_set_a @ Y @ Ys ) ) ) ).
% list_update_length
thf(fact_965_list__update__length,axiom,
! [Xs: list_nat,X: nat,Ys: list_nat,Y: nat] :
( ( list_update_nat @ ( append_nat @ Xs @ ( cons_nat @ X @ Ys ) ) @ ( size_size_list_nat @ Xs ) @ Y )
= ( append_nat @ Xs @ ( cons_nat @ Y @ Ys ) ) ) ).
% list_update_length
thf(fact_966_hd__take,axiom,
! [J2: nat,Xs: list_mapping_a_set_a] :
( ( ord_less_nat @ zero_zero_nat @ J2 )
=> ( ( hd_mapping_a_set_a @ ( take_mapping_a_set_a @ J2 @ Xs ) )
= ( hd_mapping_a_set_a @ Xs ) ) ) ).
% hd_take
thf(fact_967_hd__take,axiom,
! [J2: nat,Xs: list_nat] :
( ( ord_less_nat @ zero_zero_nat @ J2 )
=> ( ( hd_nat @ ( take_nat @ J2 @ Xs ) )
= ( hd_nat @ Xs ) ) ) ).
% hd_take
thf(fact_968_nth__list__update__eq,axiom,
! [I: nat,Xs: list_nat,X: nat] :
( ( ord_less_nat @ I @ ( size_size_list_nat @ Xs ) )
=> ( ( nth_nat @ ( list_update_nat @ Xs @ I @ X ) @ I )
= X ) ) ).
% nth_list_update_eq
thf(fact_969_take__Cons__numeral,axiom,
! [V: num,X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( take_mapping_a_set_a @ ( numeral_numeral_nat @ V ) @ ( cons_mapping_a_set_a @ X @ Xs ) )
= ( cons_mapping_a_set_a @ X @ ( take_mapping_a_set_a @ ( minus_minus_nat @ ( numeral_numeral_nat @ V ) @ one_one_nat ) @ Xs ) ) ) ).
% take_Cons_numeral
thf(fact_970_take__Cons__numeral,axiom,
! [V: num,X: nat,Xs: list_nat] :
( ( take_nat @ ( numeral_numeral_nat @ V ) @ ( cons_nat @ X @ Xs ) )
= ( cons_nat @ X @ ( take_nat @ ( minus_minus_nat @ ( numeral_numeral_nat @ V ) @ one_one_nat ) @ Xs ) ) ) ).
% take_Cons_numeral
thf(fact_971_list__update__code_I3_J,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a,I: nat,Y: mapping_a_set_a] :
( ( list_u3231430371889417475_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) @ ( suc @ I ) @ Y )
= ( cons_mapping_a_set_a @ X @ ( list_u3231430371889417475_set_a @ Xs @ I @ Y ) ) ) ).
% list_update_code(3)
thf(fact_972_list__update__code_I3_J,axiom,
! [X: nat,Xs: list_nat,I: nat,Y: nat] :
( ( list_update_nat @ ( cons_nat @ X @ Xs ) @ ( suc @ I ) @ Y )
= ( cons_nat @ X @ ( list_update_nat @ Xs @ I @ Y ) ) ) ).
% list_update_code(3)
thf(fact_973_list__update__code_I2_J,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a,Y: mapping_a_set_a] :
( ( list_u3231430371889417475_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) @ zero_zero_nat @ Y )
= ( cons_mapping_a_set_a @ Y @ Xs ) ) ).
% list_update_code(2)
thf(fact_974_list__update__code_I2_J,axiom,
! [X: nat,Xs: list_nat,Y: nat] :
( ( list_update_nat @ ( cons_nat @ X @ Xs ) @ zero_zero_nat @ Y )
= ( cons_nat @ Y @ Xs ) ) ).
% list_update_code(2)
thf(fact_975_list__update__code_I1_J,axiom,
! [I: nat,Y: mapping_a_set_a] :
( ( list_u3231430371889417475_set_a @ nil_mapping_a_set_a @ I @ Y )
= nil_mapping_a_set_a ) ).
% list_update_code(1)
thf(fact_976_list__update__code_I1_J,axiom,
! [I: nat,Y: nat] :
( ( list_update_nat @ nil_nat @ I @ Y )
= nil_nat ) ).
% list_update_code(1)
thf(fact_977_list__update_Osimps_I1_J,axiom,
! [I: nat,V: mapping_a_set_a] :
( ( list_u3231430371889417475_set_a @ nil_mapping_a_set_a @ I @ V )
= nil_mapping_a_set_a ) ).
% list_update.simps(1)
thf(fact_978_list__update_Osimps_I1_J,axiom,
! [I: nat,V: nat] :
( ( list_update_nat @ nil_nat @ I @ V )
= nil_nat ) ).
% list_update.simps(1)
thf(fact_979_take__Nil,axiom,
! [N: nat] :
( ( take_mapping_a_set_a @ N @ nil_mapping_a_set_a )
= nil_mapping_a_set_a ) ).
% take_Nil
thf(fact_980_take__Nil,axiom,
! [N: nat] :
( ( take_nat @ N @ nil_nat )
= nil_nat ) ).
% take_Nil
thf(fact_981_take__tl,axiom,
! [N: nat,Xs: list_nat] :
( ( take_nat @ N @ ( tl_nat @ Xs ) )
= ( tl_nat @ ( take_nat @ ( suc @ N ) @ Xs ) ) ) ).
% take_tl
thf(fact_982_take__0,axiom,
! [Xs: list_mapping_a_set_a] :
( ( take_mapping_a_set_a @ zero_zero_nat @ Xs )
= nil_mapping_a_set_a ) ).
% take_0
thf(fact_983_take__0,axiom,
! [Xs: list_nat] :
( ( take_nat @ zero_zero_nat @ Xs )
= nil_nat ) ).
% take_0
thf(fact_984_take__map,axiom,
! [N: nat,F: nat > nat,Xs: list_nat] :
( ( take_nat @ N @ ( map_nat_nat @ F @ Xs ) )
= ( map_nat_nat @ F @ ( take_nat @ N @ Xs ) ) ) ).
% take_map
thf(fact_985_map__update,axiom,
! [F: nat > nat,Xs: list_nat,K2: nat,Y: nat] :
( ( map_nat_nat @ F @ ( list_update_nat @ Xs @ K2 @ Y ) )
= ( list_update_nat @ ( map_nat_nat @ F @ Xs ) @ K2 @ ( F @ Y ) ) ) ).
% map_update
thf(fact_986_tl__take,axiom,
! [N: nat,Xs: list_nat] :
( ( tl_nat @ ( take_nat @ N @ Xs ) )
= ( take_nat @ ( minus_minus_nat @ N @ one_one_nat ) @ ( tl_nat @ Xs ) ) ) ).
% tl_take
thf(fact_987_list__update__append1,axiom,
! [I: nat,Xs: list_nat,Ys: list_nat,X: nat] :
( ( ord_less_nat @ I @ ( size_size_list_nat @ Xs ) )
=> ( ( list_update_nat @ ( append_nat @ Xs @ Ys ) @ I @ X )
= ( append_nat @ ( list_update_nat @ Xs @ I @ X ) @ Ys ) ) ) ).
% list_update_append1
thf(fact_988_list__update__same__conv,axiom,
! [I: nat,Xs: list_nat,X: nat] :
( ( ord_less_nat @ I @ ( size_size_list_nat @ Xs ) )
=> ( ( ( list_update_nat @ Xs @ I @ X )
= Xs )
= ( ( nth_nat @ Xs @ I )
= X ) ) ) ).
% list_update_same_conv
thf(fact_989_nth__list__update,axiom,
! [I: nat,Xs: list_nat,J2: nat,X: nat] :
( ( ord_less_nat @ I @ ( size_size_list_nat @ Xs ) )
=> ( ( ( I = J2 )
=> ( ( nth_nat @ ( list_update_nat @ Xs @ I @ X ) @ J2 )
= X ) )
& ( ( I != J2 )
=> ( ( nth_nat @ ( list_update_nat @ Xs @ I @ X ) @ J2 )
= ( nth_nat @ Xs @ J2 ) ) ) ) ) ).
% nth_list_update
thf(fact_990_list__update__append,axiom,
! [N: nat,Xs: list_nat,Ys: list_nat,X: nat] :
( ( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs ) )
=> ( ( list_update_nat @ ( append_nat @ Xs @ Ys ) @ N @ X )
= ( append_nat @ ( list_update_nat @ Xs @ N @ X ) @ Ys ) ) )
& ( ~ ( ord_less_nat @ N @ ( size_size_list_nat @ Xs ) )
=> ( ( list_update_nat @ ( append_nat @ Xs @ Ys ) @ N @ X )
= ( append_nat @ Xs @ ( list_update_nat @ Ys @ ( minus_minus_nat @ N @ ( size_size_list_nat @ Xs ) ) @ X ) ) ) ) ) ).
% list_update_append
thf(fact_991_take__Cons_H,axiom,
! [N: nat,X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( ( N = zero_zero_nat )
=> ( ( take_mapping_a_set_a @ N @ ( cons_mapping_a_set_a @ X @ Xs ) )
= nil_mapping_a_set_a ) )
& ( ( N != zero_zero_nat )
=> ( ( take_mapping_a_set_a @ N @ ( cons_mapping_a_set_a @ X @ Xs ) )
= ( cons_mapping_a_set_a @ X @ ( take_mapping_a_set_a @ ( minus_minus_nat @ N @ one_one_nat ) @ Xs ) ) ) ) ) ).
% take_Cons'
thf(fact_992_take__Cons_H,axiom,
! [N: nat,X: nat,Xs: list_nat] :
( ( ( N = zero_zero_nat )
=> ( ( take_nat @ N @ ( cons_nat @ X @ Xs ) )
= nil_nat ) )
& ( ( N != zero_zero_nat )
=> ( ( take_nat @ N @ ( cons_nat @ X @ Xs ) )
= ( cons_nat @ X @ ( take_nat @ ( minus_minus_nat @ N @ one_one_nat ) @ Xs ) ) ) ) ) ).
% take_Cons'
thf(fact_993_take__Suc,axiom,
! [Xs: list_mapping_a_set_a,N: nat] :
( ( Xs != nil_mapping_a_set_a )
=> ( ( take_mapping_a_set_a @ ( suc @ N ) @ Xs )
= ( cons_mapping_a_set_a @ ( hd_mapping_a_set_a @ Xs ) @ ( take_mapping_a_set_a @ N @ ( tl_mapping_a_set_a @ Xs ) ) ) ) ) ).
% take_Suc
thf(fact_994_take__Suc,axiom,
! [Xs: list_nat,N: nat] :
( ( Xs != nil_nat )
=> ( ( take_nat @ ( suc @ N ) @ Xs )
= ( cons_nat @ ( hd_nat @ Xs ) @ ( take_nat @ N @ ( tl_nat @ Xs ) ) ) ) ) ).
% take_Suc
thf(fact_995_rev__update,axiom,
! [K2: nat,Xs: list_nat,Y: nat] :
( ( ord_less_nat @ K2 @ ( size_size_list_nat @ Xs ) )
=> ( ( rev_nat @ ( list_update_nat @ Xs @ K2 @ Y ) )
= ( list_update_nat @ ( rev_nat @ Xs ) @ ( minus_minus_nat @ ( minus_minus_nat @ ( size_size_list_nat @ Xs ) @ K2 ) @ one_one_nat ) @ Y ) ) ) ).
% rev_update
thf(fact_996_lex__take__index,axiom,
! [Xs: list_nat,Ys: list_nat,R: set_Pr1261947904930325089at_nat] :
( ( member7340969449405702474st_nat @ ( produc2694037385005941721st_nat @ Xs @ Ys ) @ ( lex_nat @ R ) )
=> ~ ! [I3: nat] :
( ( ord_less_nat @ I3 @ ( size_size_list_nat @ Xs ) )
=> ( ( ord_less_nat @ I3 @ ( size_size_list_nat @ Ys ) )
=> ( ( ( take_nat @ I3 @ Xs )
= ( take_nat @ I3 @ Ys ) )
=> ~ ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ ( nth_nat @ Xs @ I3 ) @ ( nth_nat @ Ys @ I3 ) ) @ R ) ) ) ) ) ).
% lex_take_index
thf(fact_997_take__hd__drop,axiom,
! [N: nat,Xs: list_mapping_a_set_a] :
( ( ord_less_nat @ N @ ( size_s2079826900039435797_set_a @ Xs ) )
=> ( ( append4262749607566113174_set_a @ ( take_mapping_a_set_a @ N @ Xs ) @ ( cons_mapping_a_set_a @ ( hd_mapping_a_set_a @ ( drop_mapping_a_set_a @ N @ Xs ) ) @ nil_mapping_a_set_a ) )
= ( take_mapping_a_set_a @ ( suc @ N ) @ Xs ) ) ) ).
% take_hd_drop
thf(fact_998_take__hd__drop,axiom,
! [N: nat,Xs: list_nat] :
( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs ) )
=> ( ( append_nat @ ( take_nat @ N @ Xs ) @ ( cons_nat @ ( hd_nat @ ( drop_nat @ N @ Xs ) ) @ nil_nat ) )
= ( take_nat @ ( suc @ N ) @ Xs ) ) ) ).
% take_hd_drop
thf(fact_999_upd__conv__take__nth__drop,axiom,
! [I: nat,Xs: list_mapping_a_set_a,A: mapping_a_set_a] :
( ( ord_less_nat @ I @ ( size_s2079826900039435797_set_a @ Xs ) )
=> ( ( list_u3231430371889417475_set_a @ Xs @ I @ A )
= ( append4262749607566113174_set_a @ ( take_mapping_a_set_a @ I @ Xs ) @ ( cons_mapping_a_set_a @ A @ ( drop_mapping_a_set_a @ ( suc @ I ) @ Xs ) ) ) ) ) ).
% upd_conv_take_nth_drop
thf(fact_1000_upd__conv__take__nth__drop,axiom,
! [I: nat,Xs: list_nat,A: nat] :
( ( ord_less_nat @ I @ ( size_size_list_nat @ Xs ) )
=> ( ( list_update_nat @ Xs @ I @ A )
= ( append_nat @ ( take_nat @ I @ Xs ) @ ( cons_nat @ A @ ( drop_nat @ ( suc @ I ) @ Xs ) ) ) ) ) ).
% upd_conv_take_nth_drop
thf(fact_1001_drop0,axiom,
( ( drop_nat @ zero_zero_nat )
= ( ^ [X4: list_nat] : X4 ) ) ).
% drop0
thf(fact_1002_drop__drop,axiom,
! [N: nat,M: nat,Xs: list_nat] :
( ( drop_nat @ N @ ( drop_nat @ M @ Xs ) )
= ( drop_nat @ ( plus_plus_nat @ N @ M ) @ Xs ) ) ).
% drop_drop
thf(fact_1003_drop__upt,axiom,
! [M: nat,I: nat,J2: nat] :
( ( drop_nat @ M @ ( upt @ I @ J2 ) )
= ( upt @ ( plus_plus_nat @ I @ M ) @ J2 ) ) ).
% drop_upt
thf(fact_1004_drop__Suc__Cons,axiom,
! [N: nat,X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( drop_mapping_a_set_a @ ( suc @ N ) @ ( cons_mapping_a_set_a @ X @ Xs ) )
= ( drop_mapping_a_set_a @ N @ Xs ) ) ).
% drop_Suc_Cons
thf(fact_1005_drop__Suc__Cons,axiom,
! [N: nat,X: nat,Xs: list_nat] :
( ( drop_nat @ ( suc @ N ) @ ( cons_nat @ X @ Xs ) )
= ( drop_nat @ N @ Xs ) ) ).
% drop_Suc_Cons
thf(fact_1006_length__drop,axiom,
! [N: nat,Xs: list_nat] :
( ( size_size_list_nat @ ( drop_nat @ N @ Xs ) )
= ( minus_minus_nat @ ( size_size_list_nat @ Xs ) @ N ) ) ).
% length_drop
thf(fact_1007_append__take__drop__id,axiom,
! [N: nat,Xs: list_nat] :
( ( append_nat @ ( take_nat @ N @ Xs ) @ ( drop_nat @ N @ Xs ) )
= Xs ) ).
% append_take_drop_id
thf(fact_1008_drop__update__cancel,axiom,
! [N: nat,M: nat,Xs: list_nat,X: nat] :
( ( ord_less_nat @ N @ M )
=> ( ( drop_nat @ M @ ( list_update_nat @ Xs @ N @ X ) )
= ( drop_nat @ M @ Xs ) ) ) ).
% drop_update_cancel
thf(fact_1009_drop__replicate,axiom,
! [I: nat,K2: nat,X: nat] :
( ( drop_nat @ I @ ( replicate_nat @ K2 @ X ) )
= ( replicate_nat @ ( minus_minus_nat @ K2 @ I ) @ X ) ) ).
% drop_replicate
thf(fact_1010_drop__append,axiom,
! [N: nat,Xs: list_nat,Ys: list_nat] :
( ( drop_nat @ N @ ( append_nat @ Xs @ Ys ) )
= ( append_nat @ ( drop_nat @ N @ Xs ) @ ( drop_nat @ ( minus_minus_nat @ N @ ( size_size_list_nat @ Xs ) ) @ Ys ) ) ) ).
% drop_append
thf(fact_1011_drop__Cons__numeral,axiom,
! [V: num,X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( drop_mapping_a_set_a @ ( numeral_numeral_nat @ V ) @ ( cons_mapping_a_set_a @ X @ Xs ) )
= ( drop_mapping_a_set_a @ ( minus_minus_nat @ ( numeral_numeral_nat @ V ) @ one_one_nat ) @ Xs ) ) ).
% drop_Cons_numeral
thf(fact_1012_drop__Cons__numeral,axiom,
! [V: num,X: nat,Xs: list_nat] :
( ( drop_nat @ ( numeral_numeral_nat @ V ) @ ( cons_nat @ X @ Xs ) )
= ( drop_nat @ ( minus_minus_nat @ ( numeral_numeral_nat @ V ) @ one_one_nat ) @ Xs ) ) ).
% drop_Cons_numeral
thf(fact_1013_take__drop,axiom,
! [N: nat,M: nat,Xs: list_nat] :
( ( take_nat @ N @ ( drop_nat @ M @ Xs ) )
= ( drop_nat @ M @ ( take_nat @ ( plus_plus_nat @ N @ M ) @ Xs ) ) ) ).
% take_drop
thf(fact_1014_drop__take,axiom,
! [N: nat,M: nat,Xs: list_nat] :
( ( drop_nat @ N @ ( take_nat @ M @ Xs ) )
= ( take_nat @ ( minus_minus_nat @ M @ N ) @ ( drop_nat @ N @ Xs ) ) ) ).
% drop_take
thf(fact_1015_drop__map,axiom,
! [N: nat,F: nat > nat,Xs: list_nat] :
( ( drop_nat @ N @ ( map_nat_nat @ F @ Xs ) )
= ( map_nat_nat @ F @ ( drop_nat @ N @ Xs ) ) ) ).
% drop_map
thf(fact_1016_nth__via__drop,axiom,
! [N: nat,Xs: list_mapping_a_set_a,Y: mapping_a_set_a,Ys: list_mapping_a_set_a] :
( ( ( drop_mapping_a_set_a @ N @ Xs )
= ( cons_mapping_a_set_a @ Y @ Ys ) )
=> ( ( nth_mapping_a_set_a @ Xs @ N )
= Y ) ) ).
% nth_via_drop
thf(fact_1017_nth__via__drop,axiom,
! [N: nat,Xs: list_nat,Y: nat,Ys: list_nat] :
( ( ( drop_nat @ N @ Xs )
= ( cons_nat @ Y @ Ys ) )
=> ( ( nth_nat @ Xs @ N )
= Y ) ) ).
% nth_via_drop
thf(fact_1018_drop__0,axiom,
! [Xs: list_nat] :
( ( drop_nat @ zero_zero_nat @ Xs )
= Xs ) ).
% drop_0
thf(fact_1019_tl__drop,axiom,
! [N: nat,Xs: list_nat] :
( ( tl_nat @ ( drop_nat @ N @ Xs ) )
= ( drop_nat @ N @ ( tl_nat @ Xs ) ) ) ).
% tl_drop
thf(fact_1020_drop__Nil,axiom,
! [N: nat] :
( ( drop_mapping_a_set_a @ N @ nil_mapping_a_set_a )
= nil_mapping_a_set_a ) ).
% drop_Nil
thf(fact_1021_drop__Nil,axiom,
! [N: nat] :
( ( drop_nat @ N @ nil_nat )
= nil_nat ) ).
% drop_Nil
thf(fact_1022_drop__Suc,axiom,
! [N: nat,Xs: list_nat] :
( ( drop_nat @ ( suc @ N ) @ Xs )
= ( drop_nat @ N @ ( tl_nat @ Xs ) ) ) ).
% drop_Suc
thf(fact_1023_append__eq__conv__conj,axiom,
! [Xs: list_nat,Ys: list_nat,Zs: list_nat] :
( ( ( append_nat @ Xs @ Ys )
= Zs )
= ( ( Xs
= ( take_nat @ ( size_size_list_nat @ Xs ) @ Zs ) )
& ( Ys
= ( drop_nat @ ( size_size_list_nat @ Xs ) @ Zs ) ) ) ) ).
% append_eq_conv_conj
thf(fact_1024_take__add,axiom,
! [I: nat,J2: nat,Xs: list_nat] :
( ( take_nat @ ( plus_plus_nat @ I @ J2 ) @ Xs )
= ( append_nat @ ( take_nat @ I @ Xs ) @ ( take_nat @ J2 @ ( drop_nat @ I @ Xs ) ) ) ) ).
% take_add
thf(fact_1025_drop__Cons_H,axiom,
! [N: nat,X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( ( N = zero_zero_nat )
=> ( ( drop_mapping_a_set_a @ N @ ( cons_mapping_a_set_a @ X @ Xs ) )
= ( cons_mapping_a_set_a @ X @ Xs ) ) )
& ( ( N != zero_zero_nat )
=> ( ( drop_mapping_a_set_a @ N @ ( cons_mapping_a_set_a @ X @ Xs ) )
= ( drop_mapping_a_set_a @ ( minus_minus_nat @ N @ one_one_nat ) @ Xs ) ) ) ) ).
% drop_Cons'
thf(fact_1026_drop__Cons_H,axiom,
! [N: nat,X: nat,Xs: list_nat] :
( ( ( N = zero_zero_nat )
=> ( ( drop_nat @ N @ ( cons_nat @ X @ Xs ) )
= ( cons_nat @ X @ Xs ) ) )
& ( ( N != zero_zero_nat )
=> ( ( drop_nat @ N @ ( cons_nat @ X @ Xs ) )
= ( drop_nat @ ( minus_minus_nat @ N @ one_one_nat ) @ Xs ) ) ) ) ).
% drop_Cons'
thf(fact_1027_hd__drop__conv__nth,axiom,
! [N: nat,Xs: list_mapping_a_set_a] :
( ( ord_less_nat @ N @ ( size_s2079826900039435797_set_a @ Xs ) )
=> ( ( hd_mapping_a_set_a @ ( drop_mapping_a_set_a @ N @ Xs ) )
= ( nth_mapping_a_set_a @ Xs @ N ) ) ) ).
% hd_drop_conv_nth
thf(fact_1028_hd__drop__conv__nth,axiom,
! [N: nat,Xs: list_nat] :
( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs ) )
=> ( ( hd_nat @ ( drop_nat @ N @ Xs ) )
= ( nth_nat @ Xs @ N ) ) ) ).
% hd_drop_conv_nth
thf(fact_1029_take__rev,axiom,
! [N: nat,Xs: list_nat] :
( ( take_nat @ N @ ( rev_nat @ Xs ) )
= ( rev_nat @ ( drop_nat @ ( minus_minus_nat @ ( size_size_list_nat @ Xs ) @ N ) @ Xs ) ) ) ).
% take_rev
thf(fact_1030_rev__take,axiom,
! [I: nat,Xs: list_nat] :
( ( rev_nat @ ( take_nat @ I @ Xs ) )
= ( drop_nat @ ( minus_minus_nat @ ( size_size_list_nat @ Xs ) @ I ) @ ( rev_nat @ Xs ) ) ) ).
% rev_take
thf(fact_1031_rev__drop,axiom,
! [I: nat,Xs: list_nat] :
( ( rev_nat @ ( drop_nat @ I @ Xs ) )
= ( take_nat @ ( minus_minus_nat @ ( size_size_list_nat @ Xs ) @ I ) @ ( rev_nat @ Xs ) ) ) ).
% rev_drop
thf(fact_1032_drop__rev,axiom,
! [N: nat,Xs: list_nat] :
( ( drop_nat @ N @ ( rev_nat @ Xs ) )
= ( rev_nat @ ( take_nat @ ( minus_minus_nat @ ( size_size_list_nat @ Xs ) @ N ) @ Xs ) ) ) ).
% drop_rev
thf(fact_1033_Cons__nth__drop__Suc,axiom,
! [I: nat,Xs: list_mapping_a_set_a] :
( ( ord_less_nat @ I @ ( size_s2079826900039435797_set_a @ Xs ) )
=> ( ( cons_mapping_a_set_a @ ( nth_mapping_a_set_a @ Xs @ I ) @ ( drop_mapping_a_set_a @ ( suc @ I ) @ Xs ) )
= ( drop_mapping_a_set_a @ I @ Xs ) ) ) ).
% Cons_nth_drop_Suc
thf(fact_1034_Cons__nth__drop__Suc,axiom,
! [I: nat,Xs: list_nat] :
( ( ord_less_nat @ I @ ( size_size_list_nat @ Xs ) )
=> ( ( cons_nat @ ( nth_nat @ Xs @ I ) @ ( drop_nat @ ( suc @ I ) @ Xs ) )
= ( drop_nat @ I @ Xs ) ) ) ).
% Cons_nth_drop_Suc
thf(fact_1035_id__take__nth__drop,axiom,
! [I: nat,Xs: list_mapping_a_set_a] :
( ( ord_less_nat @ I @ ( size_s2079826900039435797_set_a @ Xs ) )
=> ( Xs
= ( append4262749607566113174_set_a @ ( take_mapping_a_set_a @ I @ Xs ) @ ( cons_mapping_a_set_a @ ( nth_mapping_a_set_a @ Xs @ I ) @ ( drop_mapping_a_set_a @ ( suc @ I ) @ Xs ) ) ) ) ) ).
% id_take_nth_drop
thf(fact_1036_id__take__nth__drop,axiom,
! [I: nat,Xs: list_nat] :
( ( ord_less_nat @ I @ ( size_size_list_nat @ Xs ) )
=> ( Xs
= ( append_nat @ ( take_nat @ I @ Xs ) @ ( cons_nat @ ( nth_nat @ Xs @ I ) @ ( drop_nat @ ( suc @ I ) @ Xs ) ) ) ) ) ).
% id_take_nth_drop
thf(fact_1037_list__index__split__set,axiom,
! [I: nat,Xs: list_mapping_a_set_a] :
( ( ord_less_nat @ I @ ( size_s2079826900039435797_set_a @ Xs ) )
=> ( ( set_mapping_a_set_a2 @ Xs )
= ( set_mapping_a_set_a2 @ ( cons_mapping_a_set_a @ ( nth_mapping_a_set_a @ Xs @ I ) @ ( append4262749607566113174_set_a @ ( take_mapping_a_set_a @ I @ Xs ) @ ( drop_mapping_a_set_a @ ( suc @ I ) @ Xs ) ) ) ) ) ) ).
% list_index_split_set
thf(fact_1038_list__index__split__set,axiom,
! [I: nat,Xs: list_nat] :
( ( ord_less_nat @ I @ ( size_size_list_nat @ Xs ) )
=> ( ( set_nat2 @ Xs )
= ( set_nat2 @ ( cons_nat @ ( nth_nat @ Xs @ I ) @ ( append_nat @ ( take_nat @ I @ Xs ) @ ( drop_nat @ ( suc @ I ) @ Xs ) ) ) ) ) ) ).
% list_index_split_set
thf(fact_1039_remdups__adj__singleton__iff,axiom,
! [Xs: list_mapping_a_set_a] :
( ( ( size_s2079826900039435797_set_a @ ( remdup7353998041916051893_set_a @ Xs ) )
= ( suc @ zero_zero_nat ) )
= ( ( Xs != nil_mapping_a_set_a )
& ( Xs
= ( replic1631670222262777649_set_a @ ( size_s2079826900039435797_set_a @ Xs ) @ ( hd_mapping_a_set_a @ Xs ) ) ) ) ) ).
% remdups_adj_singleton_iff
thf(fact_1040_remdups__adj__singleton__iff,axiom,
! [Xs: list_nat] :
( ( ( size_size_list_nat @ ( remdups_adj_nat @ Xs ) )
= ( suc @ zero_zero_nat ) )
= ( ( Xs != nil_nat )
& ( Xs
= ( replicate_nat @ ( size_size_list_nat @ Xs ) @ ( hd_nat @ Xs ) ) ) ) ) ).
% remdups_adj_singleton_iff
thf(fact_1041_map__eq__conv,axiom,
! [F: nat > nat,Xs: list_nat,G: nat > nat] :
( ( ( map_nat_nat @ F @ Xs )
= ( map_nat_nat @ G @ Xs ) )
= ( ! [X4: nat] :
( ( member_nat @ X4 @ ( set_nat2 @ Xs ) )
=> ( ( F @ X4 )
= ( G @ X4 ) ) ) ) ) ).
% map_eq_conv
thf(fact_1042_set__rev,axiom,
! [Xs: list_nat] :
( ( set_nat2 @ ( rev_nat @ Xs ) )
= ( set_nat2 @ Xs ) ) ).
% set_rev
thf(fact_1043_concat__eq__Nil__conv,axiom,
! [Xss3: list_l8399423937273897361_set_a] :
( ( ( concat6784524380904369520_set_a @ Xss3 )
= nil_mapping_a_set_a )
= ( ! [X4: list_mapping_a_set_a] :
( ( member2763587292577307288_set_a @ X4 @ ( set_li175978742148655916_set_a @ Xss3 ) )
=> ( X4 = nil_mapping_a_set_a ) ) ) ) ).
% concat_eq_Nil_conv
thf(fact_1044_concat__eq__Nil__conv,axiom,
! [Xss3: list_list_nat] :
( ( ( concat_nat @ Xss3 )
= nil_nat )
= ( ! [X4: list_nat] :
( ( member_list_nat @ X4 @ ( set_list_nat2 @ Xss3 ) )
=> ( X4 = nil_nat ) ) ) ) ).
% concat_eq_Nil_conv
thf(fact_1045_Nil__eq__concat__conv,axiom,
! [Xss3: list_l8399423937273897361_set_a] :
( ( nil_mapping_a_set_a
= ( concat6784524380904369520_set_a @ Xss3 ) )
= ( ! [X4: list_mapping_a_set_a] :
( ( member2763587292577307288_set_a @ X4 @ ( set_li175978742148655916_set_a @ Xss3 ) )
=> ( X4 = nil_mapping_a_set_a ) ) ) ) ).
% Nil_eq_concat_conv
thf(fact_1046_Nil__eq__concat__conv,axiom,
! [Xss3: list_list_nat] :
( ( nil_nat
= ( concat_nat @ Xss3 ) )
= ( ! [X4: list_nat] :
( ( member_list_nat @ X4 @ ( set_list_nat2 @ Xss3 ) )
=> ( X4 = nil_nat ) ) ) ) ).
% Nil_eq_concat_conv
thf(fact_1047_remdups__adj__Nil__iff,axiom,
! [Xs: list_mapping_a_set_a] :
( ( ( remdup7353998041916051893_set_a @ Xs )
= nil_mapping_a_set_a )
= ( Xs = nil_mapping_a_set_a ) ) ).
% remdups_adj_Nil_iff
thf(fact_1048_remdups__adj__Nil__iff,axiom,
! [Xs: list_nat] :
( ( ( remdups_adj_nat @ Xs )
= nil_nat )
= ( Xs = nil_nat ) ) ).
% remdups_adj_Nil_iff
thf(fact_1049_remdups__adj__rev,axiom,
! [Xs: list_nat] :
( ( remdups_adj_nat @ ( rev_nat @ Xs ) )
= ( rev_nat @ ( remdups_adj_nat @ Xs ) ) ) ).
% remdups_adj_rev
thf(fact_1050_hd__remdups__adj,axiom,
! [Xs: list_mapping_a_set_a] :
( ( hd_mapping_a_set_a @ ( remdup7353998041916051893_set_a @ Xs ) )
= ( hd_mapping_a_set_a @ Xs ) ) ).
% hd_remdups_adj
thf(fact_1051_hd__remdups__adj,axiom,
! [Xs: list_nat] :
( ( hd_nat @ ( remdups_adj_nat @ Xs ) )
= ( hd_nat @ Xs ) ) ).
% hd_remdups_adj
thf(fact_1052_filter__False,axiom,
! [Xs: list_mapping_a_set_a,P: mapping_a_set_a > $o] :
( ! [X3: mapping_a_set_a] :
( ( member5773590555267836296_set_a @ X3 @ ( set_mapping_a_set_a2 @ Xs ) )
=> ~ ( P @ X3 ) )
=> ( ( filter7335739693268387380_set_a @ P @ Xs )
= nil_mapping_a_set_a ) ) ).
% filter_False
thf(fact_1053_filter__False,axiom,
! [Xs: list_nat,P: nat > $o] :
( ! [X3: nat] :
( ( member_nat @ X3 @ ( set_nat2 @ Xs ) )
=> ~ ( P @ X3 ) )
=> ( ( filter_nat @ P @ Xs )
= nil_nat ) ) ).
% filter_False
thf(fact_1054_remdups__adj__Cons__alt,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( cons_mapping_a_set_a @ X @ ( tl_mapping_a_set_a @ ( remdup7353998041916051893_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) ) ) )
= ( remdup7353998041916051893_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) ) ) ).
% remdups_adj_Cons_alt
thf(fact_1055_remdups__adj__Cons__alt,axiom,
! [X: nat,Xs: list_nat] :
( ( cons_nat @ X @ ( tl_nat @ ( remdups_adj_nat @ ( cons_nat @ X @ Xs ) ) ) )
= ( remdups_adj_nat @ ( cons_nat @ X @ Xs ) ) ) ).
% remdups_adj_Cons_alt
thf(fact_1056_not__in__set__insert,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ~ ( member5773590555267836296_set_a @ X @ ( set_mapping_a_set_a2 @ Xs ) )
=> ( ( insert2013799400217708245_set_a @ X @ Xs )
= ( cons_mapping_a_set_a @ X @ Xs ) ) ) ).
% not_in_set_insert
thf(fact_1057_not__in__set__insert,axiom,
! [X: nat,Xs: list_nat] :
( ~ ( member_nat @ X @ ( set_nat2 @ Xs ) )
=> ( ( insert_nat @ X @ Xs )
= ( cons_nat @ X @ Xs ) ) ) ).
% not_in_set_insert
thf(fact_1058_set__swap,axiom,
! [I: nat,Xs: list_nat,J2: nat] :
( ( ord_less_nat @ I @ ( size_size_list_nat @ Xs ) )
=> ( ( ord_less_nat @ J2 @ ( size_size_list_nat @ Xs ) )
=> ( ( set_nat2 @ ( list_update_nat @ ( list_update_nat @ Xs @ I @ ( nth_nat @ Xs @ J2 ) ) @ J2 @ ( nth_nat @ Xs @ I ) ) )
= ( set_nat2 @ Xs ) ) ) ) ).
% set_swap
thf(fact_1059_in__set__dropD,axiom,
! [X: nat,N: nat,Xs: list_nat] :
( ( member_nat @ X @ ( set_nat2 @ ( drop_nat @ N @ Xs ) ) )
=> ( member_nat @ X @ ( set_nat2 @ Xs ) ) ) ).
% in_set_dropD
thf(fact_1060_Cons__in__subseqsD,axiom,
! [Y: mapping_a_set_a,Ys: list_mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( member2763587292577307288_set_a @ ( cons_mapping_a_set_a @ Y @ Ys ) @ ( set_li175978742148655916_set_a @ ( subseq2557973625717637724_set_a @ Xs ) ) )
=> ( member2763587292577307288_set_a @ Ys @ ( set_li175978742148655916_set_a @ ( subseq2557973625717637724_set_a @ Xs ) ) ) ) ).
% Cons_in_subseqsD
thf(fact_1061_Cons__in__subseqsD,axiom,
! [Y: nat,Ys: list_nat,Xs: list_nat] :
( ( member_list_nat @ ( cons_nat @ Y @ Ys ) @ ( set_list_nat2 @ ( subseqs_nat @ Xs ) ) )
=> ( member_list_nat @ Ys @ ( set_list_nat2 @ ( subseqs_nat @ Xs ) ) ) ) ).
% Cons_in_subseqsD
thf(fact_1062_filter__map__elem,axiom,
! [T2: nat,G: nat > nat,F: nat > $o,Xs: list_nat] :
( ( member_nat @ T2 @ ( set_nat2 @ ( map_nat_nat @ G @ ( filter_nat @ F @ Xs ) ) ) )
=> ? [X3: nat] :
( ( member_nat @ X3 @ ( set_nat2 @ Xs ) )
& ( F @ X3 )
& ( T2
= ( G @ X3 ) ) ) ) ).
% filter_map_elem
thf(fact_1063_hd__in__set,axiom,
! [Xs: list_mapping_a_set_a] :
( ( Xs != nil_mapping_a_set_a )
=> ( member5773590555267836296_set_a @ ( hd_mapping_a_set_a @ Xs ) @ ( set_mapping_a_set_a2 @ Xs ) ) ) ).
% hd_in_set
thf(fact_1064_hd__in__set,axiom,
! [Xs: list_nat] :
( ( Xs != nil_nat )
=> ( member_nat @ ( hd_nat @ Xs ) @ ( set_nat2 @ Xs ) ) ) ).
% hd_in_set
thf(fact_1065_list_Oset__sel_I1_J,axiom,
! [A: list_mapping_a_set_a] :
( ( A != nil_mapping_a_set_a )
=> ( member5773590555267836296_set_a @ ( hd_mapping_a_set_a @ A ) @ ( set_mapping_a_set_a2 @ A ) ) ) ).
% list.set_sel(1)
thf(fact_1066_list_Oset__sel_I1_J,axiom,
! [A: list_nat] :
( ( A != nil_nat )
=> ( member_nat @ ( hd_nat @ A ) @ ( set_nat2 @ A ) ) ) ).
% list.set_sel(1)
thf(fact_1067_list_Oset__sel_I2_J,axiom,
! [A: list_mapping_a_set_a,X: mapping_a_set_a] :
( ( A != nil_mapping_a_set_a )
=> ( ( member5773590555267836296_set_a @ X @ ( set_mapping_a_set_a2 @ ( tl_mapping_a_set_a @ A ) ) )
=> ( member5773590555267836296_set_a @ X @ ( set_mapping_a_set_a2 @ A ) ) ) ) ).
% list.set_sel(2)
thf(fact_1068_list_Oset__sel_I2_J,axiom,
! [A: list_nat,X: nat] :
( ( A != nil_nat )
=> ( ( member_nat @ X @ ( set_nat2 @ ( tl_nat @ A ) ) )
=> ( member_nat @ X @ ( set_nat2 @ A ) ) ) ) ).
% list.set_sel(2)
thf(fact_1069_prefixes__Cons_I1_J,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a,Y: mapping_a_set_a,Ys: list_mapping_a_set_a] :
( ( member2763587292577307288_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) @ ( set_li175978742148655916_set_a @ ( prefix4582622650860598052_set_a @ ( cons_mapping_a_set_a @ Y @ Ys ) ) ) )
=> ( X = Y ) ) ).
% prefixes_Cons(1)
thf(fact_1070_prefixes__Cons_I1_J,axiom,
! [X: nat,Xs: list_nat,Y: nat,Ys: list_nat] :
( ( member_list_nat @ ( cons_nat @ X @ Xs ) @ ( set_list_nat2 @ ( prefixes_nat @ ( cons_nat @ Y @ Ys ) ) ) )
=> ( X = Y ) ) ).
% prefixes_Cons(1)
thf(fact_1071_prefixes__Cons_I2_J,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a,Y: mapping_a_set_a,Ys: list_mapping_a_set_a] :
( ( member2763587292577307288_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) @ ( set_li175978742148655916_set_a @ ( prefix4582622650860598052_set_a @ ( cons_mapping_a_set_a @ Y @ Ys ) ) ) )
=> ( member2763587292577307288_set_a @ Xs @ ( set_li175978742148655916_set_a @ ( prefix4582622650860598052_set_a @ Ys ) ) ) ) ).
% prefixes_Cons(2)
thf(fact_1072_prefixes__Cons_I2_J,axiom,
! [X: nat,Xs: list_nat,Y: nat,Ys: list_nat] :
( ( member_list_nat @ ( cons_nat @ X @ Xs ) @ ( set_list_nat2 @ ( prefixes_nat @ ( cons_nat @ Y @ Ys ) ) ) )
=> ( member_list_nat @ Xs @ ( set_list_nat2 @ ( prefixes_nat @ Ys ) ) ) ) ).
% prefixes_Cons(2)
thf(fact_1073_replicate__length__same,axiom,
! [Xs: list_nat,X: nat] :
( ! [X3: nat] :
( ( member_nat @ X3 @ ( set_nat2 @ Xs ) )
=> ( X3 = X ) )
=> ( ( replicate_nat @ ( size_size_list_nat @ Xs ) @ X )
= Xs ) ) ).
% replicate_length_same
thf(fact_1074_replicate__eqI,axiom,
! [Xs: list_nat,N: nat,X: nat] :
( ( ( size_size_list_nat @ Xs )
= N )
=> ( ! [Y3: nat] :
( ( member_nat @ Y3 @ ( set_nat2 @ Xs ) )
=> ( Y3 = X ) )
=> ( Xs
= ( replicate_nat @ N @ X ) ) ) ) ).
% replicate_eqI
thf(fact_1075_prefixes__set__Nil,axiom,
! [Xs: list_mapping_a_set_a] : ( member2763587292577307288_set_a @ nil_mapping_a_set_a @ ( set_li175978742148655916_set_a @ ( prefix4582622650860598052_set_a @ Xs ) ) ) ).
% prefixes_set_Nil
thf(fact_1076_prefixes__set__Nil,axiom,
! [Xs: list_nat] : ( member_list_nat @ nil_nat @ ( set_list_nat2 @ ( prefixes_nat @ Xs ) ) ) ).
% prefixes_set_Nil
thf(fact_1077_split__list,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( member5773590555267836296_set_a @ X @ ( set_mapping_a_set_a2 @ Xs ) )
=> ? [Ys2: list_mapping_a_set_a,Zs3: list_mapping_a_set_a] :
( Xs
= ( append4262749607566113174_set_a @ Ys2 @ ( cons_mapping_a_set_a @ X @ Zs3 ) ) ) ) ).
% split_list
thf(fact_1078_split__list,axiom,
! [X: nat,Xs: list_nat] :
( ( member_nat @ X @ ( set_nat2 @ Xs ) )
=> ? [Ys2: list_nat,Zs3: list_nat] :
( Xs
= ( append_nat @ Ys2 @ ( cons_nat @ X @ Zs3 ) ) ) ) ).
% split_list
thf(fact_1079_split__list__last,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( member5773590555267836296_set_a @ X @ ( set_mapping_a_set_a2 @ Xs ) )
=> ? [Ys2: list_mapping_a_set_a,Zs3: list_mapping_a_set_a] :
( ( Xs
= ( append4262749607566113174_set_a @ Ys2 @ ( cons_mapping_a_set_a @ X @ Zs3 ) ) )
& ~ ( member5773590555267836296_set_a @ X @ ( set_mapping_a_set_a2 @ Zs3 ) ) ) ) ).
% split_list_last
thf(fact_1080_split__list__last,axiom,
! [X: nat,Xs: list_nat] :
( ( member_nat @ X @ ( set_nat2 @ Xs ) )
=> ? [Ys2: list_nat,Zs3: list_nat] :
( ( Xs
= ( append_nat @ Ys2 @ ( cons_nat @ X @ Zs3 ) ) )
& ~ ( member_nat @ X @ ( set_nat2 @ Zs3 ) ) ) ) ).
% split_list_last
thf(fact_1081_split__list__prop,axiom,
! [Xs: list_mapping_a_set_a,P: mapping_a_set_a > $o] :
( ? [X6: mapping_a_set_a] :
( ( member5773590555267836296_set_a @ X6 @ ( set_mapping_a_set_a2 @ Xs ) )
& ( P @ X6 ) )
=> ? [Ys2: list_mapping_a_set_a,X3: mapping_a_set_a] :
( ? [Zs3: list_mapping_a_set_a] :
( Xs
= ( append4262749607566113174_set_a @ Ys2 @ ( cons_mapping_a_set_a @ X3 @ Zs3 ) ) )
& ( P @ X3 ) ) ) ).
% split_list_prop
thf(fact_1082_split__list__prop,axiom,
! [Xs: list_nat,P: nat > $o] :
( ? [X6: nat] :
( ( member_nat @ X6 @ ( set_nat2 @ Xs ) )
& ( P @ X6 ) )
=> ? [Ys2: list_nat,X3: nat] :
( ? [Zs3: list_nat] :
( Xs
= ( append_nat @ Ys2 @ ( cons_nat @ X3 @ Zs3 ) ) )
& ( P @ X3 ) ) ) ).
% split_list_prop
thf(fact_1083_split__list__first,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( member5773590555267836296_set_a @ X @ ( set_mapping_a_set_a2 @ Xs ) )
=> ? [Ys2: list_mapping_a_set_a,Zs3: list_mapping_a_set_a] :
( ( Xs
= ( append4262749607566113174_set_a @ Ys2 @ ( cons_mapping_a_set_a @ X @ Zs3 ) ) )
& ~ ( member5773590555267836296_set_a @ X @ ( set_mapping_a_set_a2 @ Ys2 ) ) ) ) ).
% split_list_first
thf(fact_1084_split__list__first,axiom,
! [X: nat,Xs: list_nat] :
( ( member_nat @ X @ ( set_nat2 @ Xs ) )
=> ? [Ys2: list_nat,Zs3: list_nat] :
( ( Xs
= ( append_nat @ Ys2 @ ( cons_nat @ X @ Zs3 ) ) )
& ~ ( member_nat @ X @ ( set_nat2 @ Ys2 ) ) ) ) ).
% split_list_first
thf(fact_1085_split__list__propE,axiom,
! [Xs: list_mapping_a_set_a,P: mapping_a_set_a > $o] :
( ? [X6: mapping_a_set_a] :
( ( member5773590555267836296_set_a @ X6 @ ( set_mapping_a_set_a2 @ Xs ) )
& ( P @ X6 ) )
=> ~ ! [Ys2: list_mapping_a_set_a,X3: mapping_a_set_a] :
( ? [Zs3: list_mapping_a_set_a] :
( Xs
= ( append4262749607566113174_set_a @ Ys2 @ ( cons_mapping_a_set_a @ X3 @ Zs3 ) ) )
=> ~ ( P @ X3 ) ) ) ).
% split_list_propE
thf(fact_1086_split__list__propE,axiom,
! [Xs: list_nat,P: nat > $o] :
( ? [X6: nat] :
( ( member_nat @ X6 @ ( set_nat2 @ Xs ) )
& ( P @ X6 ) )
=> ~ ! [Ys2: list_nat,X3: nat] :
( ? [Zs3: list_nat] :
( Xs
= ( append_nat @ Ys2 @ ( cons_nat @ X3 @ Zs3 ) ) )
=> ~ ( P @ X3 ) ) ) ).
% split_list_propE
thf(fact_1087_append__Cons__eq__iff,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a,Ys: list_mapping_a_set_a,Xs6: list_mapping_a_set_a,Ys7: list_mapping_a_set_a] :
( ~ ( member5773590555267836296_set_a @ X @ ( set_mapping_a_set_a2 @ Xs ) )
=> ( ~ ( member5773590555267836296_set_a @ X @ ( set_mapping_a_set_a2 @ Ys ) )
=> ( ( ( append4262749607566113174_set_a @ Xs @ ( cons_mapping_a_set_a @ X @ Ys ) )
= ( append4262749607566113174_set_a @ Xs6 @ ( cons_mapping_a_set_a @ X @ Ys7 ) ) )
= ( ( Xs = Xs6 )
& ( Ys = Ys7 ) ) ) ) ) ).
% append_Cons_eq_iff
thf(fact_1088_append__Cons__eq__iff,axiom,
! [X: nat,Xs: list_nat,Ys: list_nat,Xs6: list_nat,Ys7: list_nat] :
( ~ ( member_nat @ X @ ( set_nat2 @ Xs ) )
=> ( ~ ( member_nat @ X @ ( set_nat2 @ Ys ) )
=> ( ( ( append_nat @ Xs @ ( cons_nat @ X @ Ys ) )
= ( append_nat @ Xs6 @ ( cons_nat @ X @ Ys7 ) ) )
= ( ( Xs = Xs6 )
& ( Ys = Ys7 ) ) ) ) ) ).
% append_Cons_eq_iff
thf(fact_1089_in__set__conv__decomp,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( member5773590555267836296_set_a @ X @ ( set_mapping_a_set_a2 @ Xs ) )
= ( ? [Ys3: list_mapping_a_set_a,Zs2: list_mapping_a_set_a] :
( Xs
= ( append4262749607566113174_set_a @ Ys3 @ ( cons_mapping_a_set_a @ X @ Zs2 ) ) ) ) ) ).
% in_set_conv_decomp
thf(fact_1090_in__set__conv__decomp,axiom,
! [X: nat,Xs: list_nat] :
( ( member_nat @ X @ ( set_nat2 @ Xs ) )
= ( ? [Ys3: list_nat,Zs2: list_nat] :
( Xs
= ( append_nat @ Ys3 @ ( cons_nat @ X @ Zs2 ) ) ) ) ) ).
% in_set_conv_decomp
thf(fact_1091_split__list__last__prop,axiom,
! [Xs: list_mapping_a_set_a,P: mapping_a_set_a > $o] :
( ? [X6: mapping_a_set_a] :
( ( member5773590555267836296_set_a @ X6 @ ( set_mapping_a_set_a2 @ Xs ) )
& ( P @ X6 ) )
=> ? [Ys2: list_mapping_a_set_a,X3: mapping_a_set_a,Zs3: list_mapping_a_set_a] :
( ( Xs
= ( append4262749607566113174_set_a @ Ys2 @ ( cons_mapping_a_set_a @ X3 @ Zs3 ) ) )
& ( P @ X3 )
& ! [Xa2: mapping_a_set_a] :
( ( member5773590555267836296_set_a @ Xa2 @ ( set_mapping_a_set_a2 @ Zs3 ) )
=> ~ ( P @ Xa2 ) ) ) ) ).
% split_list_last_prop
thf(fact_1092_split__list__last__prop,axiom,
! [Xs: list_nat,P: nat > $o] :
( ? [X6: nat] :
( ( member_nat @ X6 @ ( set_nat2 @ Xs ) )
& ( P @ X6 ) )
=> ? [Ys2: list_nat,X3: nat,Zs3: list_nat] :
( ( Xs
= ( append_nat @ Ys2 @ ( cons_nat @ X3 @ Zs3 ) ) )
& ( P @ X3 )
& ! [Xa2: nat] :
( ( member_nat @ Xa2 @ ( set_nat2 @ Zs3 ) )
=> ~ ( P @ Xa2 ) ) ) ) ).
% split_list_last_prop
thf(fact_1093_split__list__first__prop,axiom,
! [Xs: list_mapping_a_set_a,P: mapping_a_set_a > $o] :
( ? [X6: mapping_a_set_a] :
( ( member5773590555267836296_set_a @ X6 @ ( set_mapping_a_set_a2 @ Xs ) )
& ( P @ X6 ) )
=> ? [Ys2: list_mapping_a_set_a,X3: mapping_a_set_a] :
( ? [Zs3: list_mapping_a_set_a] :
( Xs
= ( append4262749607566113174_set_a @ Ys2 @ ( cons_mapping_a_set_a @ X3 @ Zs3 ) ) )
& ( P @ X3 )
& ! [Xa2: mapping_a_set_a] :
( ( member5773590555267836296_set_a @ Xa2 @ ( set_mapping_a_set_a2 @ Ys2 ) )
=> ~ ( P @ Xa2 ) ) ) ) ).
% split_list_first_prop
thf(fact_1094_split__list__first__prop,axiom,
! [Xs: list_nat,P: nat > $o] :
( ? [X6: nat] :
( ( member_nat @ X6 @ ( set_nat2 @ Xs ) )
& ( P @ X6 ) )
=> ? [Ys2: list_nat,X3: nat] :
( ? [Zs3: list_nat] :
( Xs
= ( append_nat @ Ys2 @ ( cons_nat @ X3 @ Zs3 ) ) )
& ( P @ X3 )
& ! [Xa2: nat] :
( ( member_nat @ Xa2 @ ( set_nat2 @ Ys2 ) )
=> ~ ( P @ Xa2 ) ) ) ) ).
% split_list_first_prop
thf(fact_1095_split__list__last__propE,axiom,
! [Xs: list_mapping_a_set_a,P: mapping_a_set_a > $o] :
( ? [X6: mapping_a_set_a] :
( ( member5773590555267836296_set_a @ X6 @ ( set_mapping_a_set_a2 @ Xs ) )
& ( P @ X6 ) )
=> ~ ! [Ys2: list_mapping_a_set_a,X3: mapping_a_set_a,Zs3: list_mapping_a_set_a] :
( ( Xs
= ( append4262749607566113174_set_a @ Ys2 @ ( cons_mapping_a_set_a @ X3 @ Zs3 ) ) )
=> ( ( P @ X3 )
=> ~ ! [Xa2: mapping_a_set_a] :
( ( member5773590555267836296_set_a @ Xa2 @ ( set_mapping_a_set_a2 @ Zs3 ) )
=> ~ ( P @ Xa2 ) ) ) ) ) ).
% split_list_last_propE
thf(fact_1096_split__list__last__propE,axiom,
! [Xs: list_nat,P: nat > $o] :
( ? [X6: nat] :
( ( member_nat @ X6 @ ( set_nat2 @ Xs ) )
& ( P @ X6 ) )
=> ~ ! [Ys2: list_nat,X3: nat,Zs3: list_nat] :
( ( Xs
= ( append_nat @ Ys2 @ ( cons_nat @ X3 @ Zs3 ) ) )
=> ( ( P @ X3 )
=> ~ ! [Xa2: nat] :
( ( member_nat @ Xa2 @ ( set_nat2 @ Zs3 ) )
=> ~ ( P @ Xa2 ) ) ) ) ) ).
% split_list_last_propE
thf(fact_1097_split__list__first__propE,axiom,
! [Xs: list_mapping_a_set_a,P: mapping_a_set_a > $o] :
( ? [X6: mapping_a_set_a] :
( ( member5773590555267836296_set_a @ X6 @ ( set_mapping_a_set_a2 @ Xs ) )
& ( P @ X6 ) )
=> ~ ! [Ys2: list_mapping_a_set_a,X3: mapping_a_set_a] :
( ? [Zs3: list_mapping_a_set_a] :
( Xs
= ( append4262749607566113174_set_a @ Ys2 @ ( cons_mapping_a_set_a @ X3 @ Zs3 ) ) )
=> ( ( P @ X3 )
=> ~ ! [Xa2: mapping_a_set_a] :
( ( member5773590555267836296_set_a @ Xa2 @ ( set_mapping_a_set_a2 @ Ys2 ) )
=> ~ ( P @ Xa2 ) ) ) ) ) ).
% split_list_first_propE
thf(fact_1098_split__list__first__propE,axiom,
! [Xs: list_nat,P: nat > $o] :
( ? [X6: nat] :
( ( member_nat @ X6 @ ( set_nat2 @ Xs ) )
& ( P @ X6 ) )
=> ~ ! [Ys2: list_nat,X3: nat] :
( ? [Zs3: list_nat] :
( Xs
= ( append_nat @ Ys2 @ ( cons_nat @ X3 @ Zs3 ) ) )
=> ( ( P @ X3 )
=> ~ ! [Xa2: nat] :
( ( member_nat @ Xa2 @ ( set_nat2 @ Ys2 ) )
=> ~ ( P @ Xa2 ) ) ) ) ) ).
% split_list_first_propE
thf(fact_1099_in__set__conv__decomp__last,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( member5773590555267836296_set_a @ X @ ( set_mapping_a_set_a2 @ Xs ) )
= ( ? [Ys3: list_mapping_a_set_a,Zs2: list_mapping_a_set_a] :
( ( Xs
= ( append4262749607566113174_set_a @ Ys3 @ ( cons_mapping_a_set_a @ X @ Zs2 ) ) )
& ~ ( member5773590555267836296_set_a @ X @ ( set_mapping_a_set_a2 @ Zs2 ) ) ) ) ) ).
% in_set_conv_decomp_last
thf(fact_1100_in__set__conv__decomp__last,axiom,
! [X: nat,Xs: list_nat] :
( ( member_nat @ X @ ( set_nat2 @ Xs ) )
= ( ? [Ys3: list_nat,Zs2: list_nat] :
( ( Xs
= ( append_nat @ Ys3 @ ( cons_nat @ X @ Zs2 ) ) )
& ~ ( member_nat @ X @ ( set_nat2 @ Zs2 ) ) ) ) ) ).
% in_set_conv_decomp_last
thf(fact_1101_in__set__conv__decomp__first,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( member5773590555267836296_set_a @ X @ ( set_mapping_a_set_a2 @ Xs ) )
= ( ? [Ys3: list_mapping_a_set_a,Zs2: list_mapping_a_set_a] :
( ( Xs
= ( append4262749607566113174_set_a @ Ys3 @ ( cons_mapping_a_set_a @ X @ Zs2 ) ) )
& ~ ( member5773590555267836296_set_a @ X @ ( set_mapping_a_set_a2 @ Ys3 ) ) ) ) ) ).
% in_set_conv_decomp_first
thf(fact_1102_in__set__conv__decomp__first,axiom,
! [X: nat,Xs: list_nat] :
( ( member_nat @ X @ ( set_nat2 @ Xs ) )
= ( ? [Ys3: list_nat,Zs2: list_nat] :
( ( Xs
= ( append_nat @ Ys3 @ ( cons_nat @ X @ Zs2 ) ) )
& ~ ( member_nat @ X @ ( set_nat2 @ Ys3 ) ) ) ) ) ).
% in_set_conv_decomp_first
thf(fact_1103_split__list__last__prop__iff,axiom,
! [Xs: list_mapping_a_set_a,P: mapping_a_set_a > $o] :
( ( ? [X4: mapping_a_set_a] :
( ( member5773590555267836296_set_a @ X4 @ ( set_mapping_a_set_a2 @ Xs ) )
& ( P @ X4 ) ) )
= ( ? [Ys3: list_mapping_a_set_a,X4: mapping_a_set_a,Zs2: list_mapping_a_set_a] :
( ( Xs
= ( append4262749607566113174_set_a @ Ys3 @ ( cons_mapping_a_set_a @ X4 @ Zs2 ) ) )
& ( P @ X4 )
& ! [Y4: mapping_a_set_a] :
( ( member5773590555267836296_set_a @ Y4 @ ( set_mapping_a_set_a2 @ Zs2 ) )
=> ~ ( P @ Y4 ) ) ) ) ) ).
% split_list_last_prop_iff
thf(fact_1104_split__list__last__prop__iff,axiom,
! [Xs: list_nat,P: nat > $o] :
( ( ? [X4: nat] :
( ( member_nat @ X4 @ ( set_nat2 @ Xs ) )
& ( P @ X4 ) ) )
= ( ? [Ys3: list_nat,X4: nat,Zs2: list_nat] :
( ( Xs
= ( append_nat @ Ys3 @ ( cons_nat @ X4 @ Zs2 ) ) )
& ( P @ X4 )
& ! [Y4: nat] :
( ( member_nat @ Y4 @ ( set_nat2 @ Zs2 ) )
=> ~ ( P @ Y4 ) ) ) ) ) ).
% split_list_last_prop_iff
thf(fact_1105_split__list__first__prop__iff,axiom,
! [Xs: list_mapping_a_set_a,P: mapping_a_set_a > $o] :
( ( ? [X4: mapping_a_set_a] :
( ( member5773590555267836296_set_a @ X4 @ ( set_mapping_a_set_a2 @ Xs ) )
& ( P @ X4 ) ) )
= ( ? [Ys3: list_mapping_a_set_a,X4: mapping_a_set_a] :
( ? [Zs2: list_mapping_a_set_a] :
( Xs
= ( append4262749607566113174_set_a @ Ys3 @ ( cons_mapping_a_set_a @ X4 @ Zs2 ) ) )
& ( P @ X4 )
& ! [Y4: mapping_a_set_a] :
( ( member5773590555267836296_set_a @ Y4 @ ( set_mapping_a_set_a2 @ Ys3 ) )
=> ~ ( P @ Y4 ) ) ) ) ) ).
% split_list_first_prop_iff
thf(fact_1106_split__list__first__prop__iff,axiom,
! [Xs: list_nat,P: nat > $o] :
( ( ? [X4: nat] :
( ( member_nat @ X4 @ ( set_nat2 @ Xs ) )
& ( P @ X4 ) ) )
= ( ? [Ys3: list_nat,X4: nat] :
( ? [Zs2: list_nat] :
( Xs
= ( append_nat @ Ys3 @ ( cons_nat @ X4 @ Zs2 ) ) )
& ( P @ X4 )
& ! [Y4: nat] :
( ( member_nat @ Y4 @ ( set_nat2 @ Ys3 ) )
=> ~ ( P @ Y4 ) ) ) ) ) ).
% split_list_first_prop_iff
thf(fact_1107_remdups__adj_Osimps_I1_J,axiom,
( ( remdup7353998041916051893_set_a @ nil_mapping_a_set_a )
= nil_mapping_a_set_a ) ).
% remdups_adj.simps(1)
thf(fact_1108_remdups__adj_Osimps_I1_J,axiom,
( ( remdups_adj_nat @ nil_nat )
= nil_nat ) ).
% remdups_adj.simps(1)
thf(fact_1109_remdups__adj_Osimps_I3_J,axiom,
! [X: mapping_a_set_a,Y: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( ( X = Y )
=> ( ( remdup7353998041916051893_set_a @ ( cons_mapping_a_set_a @ X @ ( cons_mapping_a_set_a @ Y @ Xs ) ) )
= ( remdup7353998041916051893_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) ) ) )
& ( ( X != Y )
=> ( ( remdup7353998041916051893_set_a @ ( cons_mapping_a_set_a @ X @ ( cons_mapping_a_set_a @ Y @ Xs ) ) )
= ( cons_mapping_a_set_a @ X @ ( remdup7353998041916051893_set_a @ ( cons_mapping_a_set_a @ Y @ Xs ) ) ) ) ) ) ).
% remdups_adj.simps(3)
thf(fact_1110_remdups__adj_Osimps_I3_J,axiom,
! [X: nat,Y: nat,Xs: list_nat] :
( ( ( X = Y )
=> ( ( remdups_adj_nat @ ( cons_nat @ X @ ( cons_nat @ Y @ Xs ) ) )
= ( remdups_adj_nat @ ( cons_nat @ X @ Xs ) ) ) )
& ( ( X != Y )
=> ( ( remdups_adj_nat @ ( cons_nat @ X @ ( cons_nat @ Y @ Xs ) ) )
= ( cons_nat @ X @ ( remdups_adj_nat @ ( cons_nat @ Y @ Xs ) ) ) ) ) ) ).
% remdups_adj.simps(3)
thf(fact_1111_list_Oset__intros_I2_J,axiom,
! [Y: mapping_a_set_a,X22: list_mapping_a_set_a,X21: mapping_a_set_a] :
( ( member5773590555267836296_set_a @ Y @ ( set_mapping_a_set_a2 @ X22 ) )
=> ( member5773590555267836296_set_a @ Y @ ( set_mapping_a_set_a2 @ ( cons_mapping_a_set_a @ X21 @ X22 ) ) ) ) ).
% list.set_intros(2)
thf(fact_1112_list_Oset__intros_I2_J,axiom,
! [Y: nat,X22: list_nat,X21: nat] :
( ( member_nat @ Y @ ( set_nat2 @ X22 ) )
=> ( member_nat @ Y @ ( set_nat2 @ ( cons_nat @ X21 @ X22 ) ) ) ) ).
% list.set_intros(2)
thf(fact_1113_list_Oset__intros_I1_J,axiom,
! [X21: mapping_a_set_a,X22: list_mapping_a_set_a] : ( member5773590555267836296_set_a @ X21 @ ( set_mapping_a_set_a2 @ ( cons_mapping_a_set_a @ X21 @ X22 ) ) ) ).
% list.set_intros(1)
thf(fact_1114_list_Oset__intros_I1_J,axiom,
! [X21: nat,X22: list_nat] : ( member_nat @ X21 @ ( set_nat2 @ ( cons_nat @ X21 @ X22 ) ) ) ).
% list.set_intros(1)
thf(fact_1115_list_Oset__cases,axiom,
! [E: mapping_a_set_a,A: list_mapping_a_set_a] :
( ( member5773590555267836296_set_a @ E @ ( set_mapping_a_set_a2 @ A ) )
=> ( ! [Z22: list_mapping_a_set_a] :
( A
!= ( cons_mapping_a_set_a @ E @ Z22 ) )
=> ~ ! [Z1: mapping_a_set_a,Z22: list_mapping_a_set_a] :
( ( A
= ( cons_mapping_a_set_a @ Z1 @ Z22 ) )
=> ~ ( member5773590555267836296_set_a @ E @ ( set_mapping_a_set_a2 @ Z22 ) ) ) ) ) ).
% list.set_cases
thf(fact_1116_list_Oset__cases,axiom,
! [E: nat,A: list_nat] :
( ( member_nat @ E @ ( set_nat2 @ A ) )
=> ( ! [Z22: list_nat] :
( A
!= ( cons_nat @ E @ Z22 ) )
=> ~ ! [Z1: nat,Z22: list_nat] :
( ( A
= ( cons_nat @ Z1 @ Z22 ) )
=> ~ ( member_nat @ E @ ( set_nat2 @ Z22 ) ) ) ) ) ).
% list.set_cases
thf(fact_1117_set__ConsD,axiom,
! [Y: mapping_a_set_a,X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( member5773590555267836296_set_a @ Y @ ( set_mapping_a_set_a2 @ ( cons_mapping_a_set_a @ X @ Xs ) ) )
=> ( ( Y = X )
| ( member5773590555267836296_set_a @ Y @ ( set_mapping_a_set_a2 @ Xs ) ) ) ) ).
% set_ConsD
thf(fact_1118_set__ConsD,axiom,
! [Y: nat,X: nat,Xs: list_nat] :
( ( member_nat @ Y @ ( set_nat2 @ ( cons_nat @ X @ Xs ) ) )
=> ( ( Y = X )
| ( member_nat @ Y @ ( set_nat2 @ Xs ) ) ) ) ).
% set_ConsD
thf(fact_1119_remdups__adj_Oelims,axiom,
! [X: list_mapping_a_set_a,Y: list_mapping_a_set_a] :
( ( ( remdup7353998041916051893_set_a @ X )
= Y )
=> ( ( ( X = nil_mapping_a_set_a )
=> ( Y != nil_mapping_a_set_a ) )
=> ( ! [X3: mapping_a_set_a] :
( ( X
= ( cons_mapping_a_set_a @ X3 @ nil_mapping_a_set_a ) )
=> ( Y
!= ( cons_mapping_a_set_a @ X3 @ nil_mapping_a_set_a ) ) )
=> ~ ! [X3: mapping_a_set_a,Y3: mapping_a_set_a,Xs2: list_mapping_a_set_a] :
( ( X
= ( cons_mapping_a_set_a @ X3 @ ( cons_mapping_a_set_a @ Y3 @ Xs2 ) ) )
=> ~ ( ( ( X3 = Y3 )
=> ( Y
= ( remdup7353998041916051893_set_a @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) ) ) )
& ( ( X3 != Y3 )
=> ( Y
= ( cons_mapping_a_set_a @ X3 @ ( remdup7353998041916051893_set_a @ ( cons_mapping_a_set_a @ Y3 @ Xs2 ) ) ) ) ) ) ) ) ) ) ).
% remdups_adj.elims
thf(fact_1120_remdups__adj_Oelims,axiom,
! [X: list_nat,Y: list_nat] :
( ( ( remdups_adj_nat @ X )
= Y )
=> ( ( ( X = nil_nat )
=> ( Y != nil_nat ) )
=> ( ! [X3: nat] :
( ( X
= ( cons_nat @ X3 @ nil_nat ) )
=> ( Y
!= ( cons_nat @ X3 @ nil_nat ) ) )
=> ~ ! [X3: nat,Y3: nat,Xs2: list_nat] :
( ( X
= ( cons_nat @ X3 @ ( cons_nat @ Y3 @ Xs2 ) ) )
=> ~ ( ( ( X3 = Y3 )
=> ( Y
= ( remdups_adj_nat @ ( cons_nat @ X3 @ Xs2 ) ) ) )
& ( ( X3 != Y3 )
=> ( Y
= ( cons_nat @ X3 @ ( remdups_adj_nat @ ( cons_nat @ Y3 @ Xs2 ) ) ) ) ) ) ) ) ) ) ).
% remdups_adj.elims
thf(fact_1121_remdups__adj_Osimps_I2_J,axiom,
! [X: mapping_a_set_a] :
( ( remdup7353998041916051893_set_a @ ( cons_mapping_a_set_a @ X @ nil_mapping_a_set_a ) )
= ( cons_mapping_a_set_a @ X @ nil_mapping_a_set_a ) ) ).
% remdups_adj.simps(2)
thf(fact_1122_remdups__adj_Osimps_I2_J,axiom,
! [X: nat] :
( ( remdups_adj_nat @ ( cons_nat @ X @ nil_nat ) )
= ( cons_nat @ X @ nil_nat ) ) ).
% remdups_adj.simps(2)
thf(fact_1123_list__map__source__elem,axiom,
! [X: nat,F: nat > nat,Xs: list_nat] :
( ( member_nat @ X @ ( set_nat2 @ ( map_nat_nat @ F @ Xs ) ) )
=> ? [X3: nat] :
( ( member_nat @ X3 @ ( set_nat2 @ Xs ) )
& ( X
= ( F @ X3 ) ) ) ) ).
% list_map_source_elem
thf(fact_1124_list__map__set__prop,axiom,
! [X: nat,F: nat > nat,Xs: list_nat,P: nat > $o] :
( ( member_nat @ X @ ( set_nat2 @ ( map_nat_nat @ F @ Xs ) ) )
=> ( ! [Y3: nat] : ( P @ ( F @ Y3 ) )
=> ( P @ X ) ) ) ).
% list_map_set_prop
thf(fact_1125_set__map__elem,axiom,
! [Y: nat,F: nat > nat,Xs: list_nat] :
( ( member_nat @ Y @ ( set_nat2 @ ( map_nat_nat @ F @ Xs ) ) )
=> ~ ! [X3: nat] :
( ( Y
= ( F @ X3 ) )
=> ~ ( member_nat @ X3 @ ( set_nat2 @ Xs ) ) ) ) ).
% set_map_elem
thf(fact_1126_map__set,axiom,
! [X: nat,Xs: list_nat,F: nat > nat] :
( ( member_nat @ X @ ( set_nat2 @ Xs ) )
=> ( member_nat @ ( F @ X ) @ ( set_nat2 @ ( map_nat_nat @ F @ Xs ) ) ) ) ).
% map_set
thf(fact_1127_ex__map__conv,axiom,
! [Ys: list_nat,F: nat > nat] :
( ( ? [Xs4: list_nat] :
( Ys
= ( map_nat_nat @ F @ Xs4 ) ) )
= ( ! [X4: nat] :
( ( member_nat @ X4 @ ( set_nat2 @ Ys ) )
=> ? [Y4: nat] :
( X4
= ( F @ Y4 ) ) ) ) ) ).
% ex_map_conv
thf(fact_1128_map__cong,axiom,
! [Xs: list_nat,Ys: list_nat,F: nat > nat,G: nat > nat] :
( ( Xs = Ys )
=> ( ! [X3: nat] :
( ( member_nat @ X3 @ ( set_nat2 @ Ys ) )
=> ( ( F @ X3 )
= ( G @ X3 ) ) )
=> ( ( map_nat_nat @ F @ Xs )
= ( map_nat_nat @ G @ Ys ) ) ) ) ).
% map_cong
thf(fact_1129_map__idI,axiom,
! [Xs: list_nat,F: nat > nat] :
( ! [X3: nat] :
( ( member_nat @ X3 @ ( set_nat2 @ Xs ) )
=> ( ( F @ X3 )
= X3 ) )
=> ( ( map_nat_nat @ F @ Xs )
= Xs ) ) ).
% map_idI
thf(fact_1130_map__ext,axiom,
! [Xs: list_nat,F: nat > nat,G: nat > nat] :
( ! [X3: nat] :
( ( member_nat @ X3 @ ( set_nat2 @ Xs ) )
=> ( ( F @ X3 )
= ( G @ X3 ) ) )
=> ( ( map_nat_nat @ F @ Xs )
= ( map_nat_nat @ G @ Xs ) ) ) ).
% map_ext
thf(fact_1131_list_Omap__ident__strong,axiom,
! [T2: list_nat,F: nat > nat] :
( ! [Z2: nat] :
( ( member_nat @ Z2 @ ( set_nat2 @ T2 ) )
=> ( ( F @ Z2 )
= Z2 ) )
=> ( ( map_nat_nat @ F @ T2 )
= T2 ) ) ).
% list.map_ident_strong
thf(fact_1132_list_Oinj__map__strong,axiom,
! [X: list_nat,Xa: list_nat,F: nat > nat,Fa: nat > nat] :
( ! [Z2: nat,Za: nat] :
( ( member_nat @ Z2 @ ( set_nat2 @ X ) )
=> ( ( member_nat @ Za @ ( set_nat2 @ Xa ) )
=> ( ( ( F @ Z2 )
= ( Fa @ Za ) )
=> ( Z2 = Za ) ) ) )
=> ( ( ( map_nat_nat @ F @ X )
= ( map_nat_nat @ Fa @ Xa ) )
=> ( X = Xa ) ) ) ).
% list.inj_map_strong
thf(fact_1133_list_Omap__cong0,axiom,
! [X: list_nat,F: nat > nat,G: nat > nat] :
( ! [Z2: nat] :
( ( member_nat @ Z2 @ ( set_nat2 @ X ) )
=> ( ( F @ Z2 )
= ( G @ Z2 ) ) )
=> ( ( map_nat_nat @ F @ X )
= ( map_nat_nat @ G @ X ) ) ) ).
% list.map_cong0
thf(fact_1134_list_Omap__cong,axiom,
! [X: list_nat,Ya: list_nat,F: nat > nat,G: nat > nat] :
( ( X = Ya )
=> ( ! [Z2: nat] :
( ( member_nat @ Z2 @ ( set_nat2 @ Ya ) )
=> ( ( F @ Z2 )
= ( G @ Z2 ) ) )
=> ( ( map_nat_nat @ F @ X )
= ( map_nat_nat @ G @ Ya ) ) ) ) ).
% list.map_cong
thf(fact_1135_empty__filter__conv,axiom,
! [P: mapping_a_set_a > $o,Xs: list_mapping_a_set_a] :
( ( nil_mapping_a_set_a
= ( filter7335739693268387380_set_a @ P @ Xs ) )
= ( ! [X4: mapping_a_set_a] :
( ( member5773590555267836296_set_a @ X4 @ ( set_mapping_a_set_a2 @ Xs ) )
=> ~ ( P @ X4 ) ) ) ) ).
% empty_filter_conv
thf(fact_1136_empty__filter__conv,axiom,
! [P: nat > $o,Xs: list_nat] :
( ( nil_nat
= ( filter_nat @ P @ Xs ) )
= ( ! [X4: nat] :
( ( member_nat @ X4 @ ( set_nat2 @ Xs ) )
=> ~ ( P @ X4 ) ) ) ) ).
% empty_filter_conv
thf(fact_1137_filter__empty__conv,axiom,
! [P: mapping_a_set_a > $o,Xs: list_mapping_a_set_a] :
( ( ( filter7335739693268387380_set_a @ P @ Xs )
= nil_mapping_a_set_a )
= ( ! [X4: mapping_a_set_a] :
( ( member5773590555267836296_set_a @ X4 @ ( set_mapping_a_set_a2 @ Xs ) )
=> ~ ( P @ X4 ) ) ) ) ).
% filter_empty_conv
thf(fact_1138_filter__empty__conv,axiom,
! [P: nat > $o,Xs: list_nat] :
( ( ( filter_nat @ P @ Xs )
= nil_nat )
= ( ! [X4: nat] :
( ( member_nat @ X4 @ ( set_nat2 @ Xs ) )
=> ~ ( P @ X4 ) ) ) ) ).
% filter_empty_conv
thf(fact_1139_foldr__cong,axiom,
! [A: list_mapping_a_set_a,B: list_mapping_a_set_a,L: list_nat,K2: list_nat,F: nat > list_mapping_a_set_a > list_mapping_a_set_a,G: nat > list_mapping_a_set_a > list_mapping_a_set_a] :
( ( A = B )
=> ( ( L = K2 )
=> ( ! [A3: list_mapping_a_set_a,X3: nat] :
( ( member_nat @ X3 @ ( set_nat2 @ L ) )
=> ( ( F @ X3 @ A3 )
= ( G @ X3 @ A3 ) ) )
=> ( ( foldr_4622666561834033786_set_a @ F @ L @ A )
= ( foldr_4622666561834033786_set_a @ G @ K2 @ B ) ) ) ) ) ).
% foldr_cong
thf(fact_1140_List_Oinsert__def,axiom,
( insert2013799400217708245_set_a
= ( ^ [X4: mapping_a_set_a,Xs4: list_mapping_a_set_a] : ( if_lis8209991044144858171_set_a @ ( member5773590555267836296_set_a @ X4 @ ( set_mapping_a_set_a2 @ Xs4 ) ) @ Xs4 @ ( cons_mapping_a_set_a @ X4 @ Xs4 ) ) ) ) ).
% List.insert_def
thf(fact_1141_List_Oinsert__def,axiom,
( insert_nat
= ( ^ [X4: nat,Xs4: list_nat] : ( if_list_nat @ ( member_nat @ X4 @ ( set_nat2 @ Xs4 ) ) @ Xs4 @ ( cons_nat @ X4 @ Xs4 ) ) ) ) ).
% List.insert_def
thf(fact_1142_lists__of__length__length,axiom,
! [Xs: list_nat,T: list_nat,N: nat] :
( ( member_list_nat @ Xs @ ( set_list_nat2 @ ( lists_of_length_nat @ T @ N ) ) )
=> ( ( size_size_list_nat @ Xs )
= N ) ) ).
% lists_of_length_length
thf(fact_1143_length__n__lists__elem,axiom,
! [Ys: list_nat,N: nat,Xs: list_nat] :
( ( member_list_nat @ Ys @ ( set_list_nat2 @ ( n_lists_nat @ N @ Xs ) ) )
=> ( ( size_size_list_nat @ Ys )
= N ) ) ).
% length_n_lists_elem
thf(fact_1144_set__map__subset,axiom,
! [X: nat,Xs: list_nat,T2: nat,F: nat > nat] :
( ( member_nat @ X @ ( set_nat2 @ Xs ) )
=> ( ( member_nat @ T2 @ ( set_nat2 @ ( map_nat_nat @ F @ ( cons_nat @ X @ nil_nat ) ) ) )
=> ( member_nat @ T2 @ ( set_nat2 @ ( map_nat_nat @ F @ Xs ) ) ) ) ) ).
% set_map_subset
thf(fact_1145_remdups__adj__append__two,axiom,
! [Xs: list_mapping_a_set_a,X: mapping_a_set_a,Y: mapping_a_set_a] :
( ( remdup7353998041916051893_set_a @ ( append4262749607566113174_set_a @ Xs @ ( cons_mapping_a_set_a @ X @ ( cons_mapping_a_set_a @ Y @ nil_mapping_a_set_a ) ) ) )
= ( append4262749607566113174_set_a @ ( remdup7353998041916051893_set_a @ ( append4262749607566113174_set_a @ Xs @ ( cons_mapping_a_set_a @ X @ nil_mapping_a_set_a ) ) ) @ ( if_lis8209991044144858171_set_a @ ( X = Y ) @ nil_mapping_a_set_a @ ( cons_mapping_a_set_a @ Y @ nil_mapping_a_set_a ) ) ) ) ).
% remdups_adj_append_two
thf(fact_1146_remdups__adj__append__two,axiom,
! [Xs: list_nat,X: nat,Y: nat] :
( ( remdups_adj_nat @ ( append_nat @ Xs @ ( cons_nat @ X @ ( cons_nat @ Y @ nil_nat ) ) ) )
= ( append_nat @ ( remdups_adj_nat @ ( append_nat @ Xs @ ( cons_nat @ X @ nil_nat ) ) ) @ ( if_list_nat @ ( X = Y ) @ nil_nat @ ( cons_nat @ Y @ nil_nat ) ) ) ) ).
% remdups_adj_append_two
thf(fact_1147_length__pos__if__in__set,axiom,
! [X: nat,Xs: list_nat] :
( ( member_nat @ X @ ( set_nat2 @ Xs ) )
=> ( ord_less_nat @ zero_zero_nat @ ( size_size_list_nat @ Xs ) ) ) ).
% length_pos_if_in_set
thf(fact_1148_Cons__eq__filterD,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a,P: mapping_a_set_a > $o,Ys: list_mapping_a_set_a] :
( ( ( cons_mapping_a_set_a @ X @ Xs )
= ( filter7335739693268387380_set_a @ P @ Ys ) )
=> ? [Us3: list_mapping_a_set_a,Vs3: list_mapping_a_set_a] :
( ( Ys
= ( append4262749607566113174_set_a @ Us3 @ ( cons_mapping_a_set_a @ X @ Vs3 ) ) )
& ! [X6: mapping_a_set_a] :
( ( member5773590555267836296_set_a @ X6 @ ( set_mapping_a_set_a2 @ Us3 ) )
=> ~ ( P @ X6 ) )
& ( P @ X )
& ( Xs
= ( filter7335739693268387380_set_a @ P @ Vs3 ) ) ) ) ).
% Cons_eq_filterD
thf(fact_1149_Cons__eq__filterD,axiom,
! [X: nat,Xs: list_nat,P: nat > $o,Ys: list_nat] :
( ( ( cons_nat @ X @ Xs )
= ( filter_nat @ P @ Ys ) )
=> ? [Us3: list_nat,Vs3: list_nat] :
( ( Ys
= ( append_nat @ Us3 @ ( cons_nat @ X @ Vs3 ) ) )
& ! [X6: nat] :
( ( member_nat @ X6 @ ( set_nat2 @ Us3 ) )
=> ~ ( P @ X6 ) )
& ( P @ X )
& ( Xs
= ( filter_nat @ P @ Vs3 ) ) ) ) ).
% Cons_eq_filterD
thf(fact_1150_filter__eq__ConsD,axiom,
! [P: mapping_a_set_a > $o,Ys: list_mapping_a_set_a,X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( ( filter7335739693268387380_set_a @ P @ Ys )
= ( cons_mapping_a_set_a @ X @ Xs ) )
=> ? [Us3: list_mapping_a_set_a,Vs3: list_mapping_a_set_a] :
( ( Ys
= ( append4262749607566113174_set_a @ Us3 @ ( cons_mapping_a_set_a @ X @ Vs3 ) ) )
& ! [X6: mapping_a_set_a] :
( ( member5773590555267836296_set_a @ X6 @ ( set_mapping_a_set_a2 @ Us3 ) )
=> ~ ( P @ X6 ) )
& ( P @ X )
& ( Xs
= ( filter7335739693268387380_set_a @ P @ Vs3 ) ) ) ) ).
% filter_eq_ConsD
thf(fact_1151_filter__eq__ConsD,axiom,
! [P: nat > $o,Ys: list_nat,X: nat,Xs: list_nat] :
( ( ( filter_nat @ P @ Ys )
= ( cons_nat @ X @ Xs ) )
=> ? [Us3: list_nat,Vs3: list_nat] :
( ( Ys
= ( append_nat @ Us3 @ ( cons_nat @ X @ Vs3 ) ) )
& ! [X6: nat] :
( ( member_nat @ X6 @ ( set_nat2 @ Us3 ) )
=> ~ ( P @ X6 ) )
& ( P @ X )
& ( Xs
= ( filter_nat @ P @ Vs3 ) ) ) ) ).
% filter_eq_ConsD
thf(fact_1152_Cons__eq__filter__iff,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a,P: mapping_a_set_a > $o,Ys: list_mapping_a_set_a] :
( ( ( cons_mapping_a_set_a @ X @ Xs )
= ( filter7335739693268387380_set_a @ P @ Ys ) )
= ( ? [Us: list_mapping_a_set_a,Vs: list_mapping_a_set_a] :
( ( Ys
= ( append4262749607566113174_set_a @ Us @ ( cons_mapping_a_set_a @ X @ Vs ) ) )
& ! [X4: mapping_a_set_a] :
( ( member5773590555267836296_set_a @ X4 @ ( set_mapping_a_set_a2 @ Us ) )
=> ~ ( P @ X4 ) )
& ( P @ X )
& ( Xs
= ( filter7335739693268387380_set_a @ P @ Vs ) ) ) ) ) ).
% Cons_eq_filter_iff
thf(fact_1153_Cons__eq__filter__iff,axiom,
! [X: nat,Xs: list_nat,P: nat > $o,Ys: list_nat] :
( ( ( cons_nat @ X @ Xs )
= ( filter_nat @ P @ Ys ) )
= ( ? [Us: list_nat,Vs: list_nat] :
( ( Ys
= ( append_nat @ Us @ ( cons_nat @ X @ Vs ) ) )
& ! [X4: nat] :
( ( member_nat @ X4 @ ( set_nat2 @ Us ) )
=> ~ ( P @ X4 ) )
& ( P @ X )
& ( Xs
= ( filter_nat @ P @ Vs ) ) ) ) ) ).
% Cons_eq_filter_iff
thf(fact_1154_filter__eq__Cons__iff,axiom,
! [P: mapping_a_set_a > $o,Ys: list_mapping_a_set_a,X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( ( filter7335739693268387380_set_a @ P @ Ys )
= ( cons_mapping_a_set_a @ X @ Xs ) )
= ( ? [Us: list_mapping_a_set_a,Vs: list_mapping_a_set_a] :
( ( Ys
= ( append4262749607566113174_set_a @ Us @ ( cons_mapping_a_set_a @ X @ Vs ) ) )
& ! [X4: mapping_a_set_a] :
( ( member5773590555267836296_set_a @ X4 @ ( set_mapping_a_set_a2 @ Us ) )
=> ~ ( P @ X4 ) )
& ( P @ X )
& ( Xs
= ( filter7335739693268387380_set_a @ P @ Vs ) ) ) ) ) ).
% filter_eq_Cons_iff
thf(fact_1155_filter__eq__Cons__iff,axiom,
! [P: nat > $o,Ys: list_nat,X: nat,Xs: list_nat] :
( ( ( filter_nat @ P @ Ys )
= ( cons_nat @ X @ Xs ) )
= ( ? [Us: list_nat,Vs: list_nat] :
( ( Ys
= ( append_nat @ Us @ ( cons_nat @ X @ Vs ) ) )
& ! [X4: nat] :
( ( member_nat @ X4 @ ( set_nat2 @ Us ) )
=> ~ ( P @ X4 ) )
& ( P @ X )
& ( Xs
= ( filter_nat @ P @ Vs ) ) ) ) ) ).
% filter_eq_Cons_iff
thf(fact_1156_list__property__from__index__property,axiom,
! [Xs: list_nat,P: nat > $o,X: nat] :
( ! [I3: nat] :
( ( ord_less_nat @ I3 @ ( size_size_list_nat @ Xs ) )
=> ( P @ ( nth_nat @ Xs @ I3 ) ) )
=> ( ( member_nat @ X @ ( set_nat2 @ Xs ) )
=> ( P @ X ) ) ) ).
% list_property_from_index_property
thf(fact_1157_all__set__conv__all__nth,axiom,
! [Xs: list_nat,P: nat > $o] :
( ( ! [X4: nat] :
( ( member_nat @ X4 @ ( set_nat2 @ Xs ) )
=> ( P @ X4 ) ) )
= ( ! [I2: nat] :
( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Xs ) )
=> ( P @ ( nth_nat @ Xs @ I2 ) ) ) ) ) ).
% all_set_conv_all_nth
thf(fact_1158_all__nth__imp__all__set,axiom,
! [Xs: list_nat,P: nat > $o,X: nat] :
( ! [I3: nat] :
( ( ord_less_nat @ I3 @ ( size_size_list_nat @ Xs ) )
=> ( P @ ( nth_nat @ Xs @ I3 ) ) )
=> ( ( member_nat @ X @ ( set_nat2 @ Xs ) )
=> ( P @ X ) ) ) ).
% all_nth_imp_all_set
thf(fact_1159_in__set__conv__nth,axiom,
! [X: nat,Xs: list_nat] :
( ( member_nat @ X @ ( set_nat2 @ Xs ) )
= ( ? [I2: nat] :
( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Xs ) )
& ( ( nth_nat @ Xs @ I2 )
= X ) ) ) ) ).
% in_set_conv_nth
thf(fact_1160_list__ball__nth,axiom,
! [N: nat,Xs: list_nat,P: nat > $o] :
( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs ) )
=> ( ! [X3: nat] :
( ( member_nat @ X3 @ ( set_nat2 @ Xs ) )
=> ( P @ X3 ) )
=> ( P @ ( nth_nat @ Xs @ N ) ) ) ) ).
% list_ball_nth
thf(fact_1161_nth__mem,axiom,
! [N: nat,Xs: list_nat] :
( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs ) )
=> ( member_nat @ ( nth_nat @ Xs @ N ) @ ( set_nat2 @ Xs ) ) ) ).
% nth_mem
thf(fact_1162_length__filter__less,axiom,
! [X: nat,Xs: list_nat,P: nat > $o] :
( ( member_nat @ X @ ( set_nat2 @ Xs ) )
=> ( ~ ( P @ X )
=> ( ord_less_nat @ ( size_size_list_nat @ ( filter_nat @ P @ Xs ) ) @ ( size_size_list_nat @ Xs ) ) ) ) ).
% length_filter_less
thf(fact_1163_prefixes__prefix__suffix__ob,axiom,
! [A: list_mapping_a_set_a,B: list_mapping_a_set_a,C: list_mapping_a_set_a] :
( ( member2763587292577307288_set_a @ A @ ( set_li175978742148655916_set_a @ ( prefix4582622650860598052_set_a @ ( append4262749607566113174_set_a @ B @ C ) ) ) )
=> ( ~ ( member2763587292577307288_set_a @ A @ ( set_li175978742148655916_set_a @ ( prefix4582622650860598052_set_a @ B ) ) )
=> ~ ! [C4: list_mapping_a_set_a] :
( ? [C5: list_mapping_a_set_a] :
( C
= ( append4262749607566113174_set_a @ C4 @ C5 ) )
=> ( ( A
= ( append4262749607566113174_set_a @ B @ C4 ) )
=> ( C4 = nil_mapping_a_set_a ) ) ) ) ) ).
% prefixes_prefix_suffix_ob
thf(fact_1164_prefixes__prefix__suffix__ob,axiom,
! [A: list_nat,B: list_nat,C: list_nat] :
( ( member_list_nat @ A @ ( set_list_nat2 @ ( prefixes_nat @ ( append_nat @ B @ C ) ) ) )
=> ( ~ ( member_list_nat @ A @ ( set_list_nat2 @ ( prefixes_nat @ B ) ) )
=> ~ ! [C4: list_nat] :
( ? [C5: list_nat] :
( C
= ( append_nat @ C4 @ C5 ) )
=> ( ( A
= ( append_nat @ B @ C4 ) )
=> ( C4 = nil_nat ) ) ) ) ) ).
% prefixes_prefix_suffix_ob
thf(fact_1165_set__update__memI,axiom,
! [N: nat,Xs: list_nat,X: nat] :
( ( ord_less_nat @ N @ ( size_size_list_nat @ Xs ) )
=> ( member_nat @ X @ ( set_nat2 @ ( list_update_nat @ Xs @ N @ X ) ) ) ) ).
% set_update_memI
thf(fact_1166_prefixes__take__iff,axiom,
! [Xs: list_nat,Ys: list_nat] :
( ( member_list_nat @ Xs @ ( set_list_nat2 @ ( prefixes_nat @ Ys ) ) )
= ( ( take_nat @ ( size_size_list_nat @ Xs ) @ Ys )
= Xs ) ) ).
% prefixes_take_iff
thf(fact_1167_transpose__empty,axiom,
! [Xs: list_l8399423937273897361_set_a] :
( ( ( transp4038014982164974433_set_a @ Xs )
= nil_li1965212427176585467_set_a )
= ( ! [X4: list_mapping_a_set_a] :
( ( member2763587292577307288_set_a @ X4 @ ( set_li175978742148655916_set_a @ Xs ) )
=> ( X4 = nil_mapping_a_set_a ) ) ) ) ).
% transpose_empty
thf(fact_1168_transpose__empty,axiom,
! [Xs: list_list_nat] :
( ( ( transpose_nat @ Xs )
= nil_list_nat )
= ( ! [X4: list_nat] :
( ( member_list_nat @ X4 @ ( set_list_nat2 @ Xs ) )
=> ( X4 = nil_nat ) ) ) ) ).
% transpose_empty
thf(fact_1169_remdups__adj__Cons,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( remdup7353998041916051893_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) )
= ( case_l6933312115870525274_set_a @ ( cons_mapping_a_set_a @ X @ nil_mapping_a_set_a )
@ ^ [Y4: mapping_a_set_a,Xs4: list_mapping_a_set_a] : ( if_lis8209991044144858171_set_a @ ( X = Y4 ) @ ( cons_mapping_a_set_a @ Y4 @ Xs4 ) @ ( cons_mapping_a_set_a @ X @ ( cons_mapping_a_set_a @ Y4 @ Xs4 ) ) )
@ ( remdup7353998041916051893_set_a @ Xs ) ) ) ).
% remdups_adj_Cons
thf(fact_1170_remdups__adj__Cons,axiom,
! [X: nat,Xs: list_nat] :
( ( remdups_adj_nat @ ( cons_nat @ X @ Xs ) )
= ( case_l2340614614379431832at_nat @ ( cons_nat @ X @ nil_nat )
@ ^ [Y4: nat,Xs4: list_nat] : ( if_list_nat @ ( X = Y4 ) @ ( cons_nat @ Y4 @ Xs4 ) @ ( cons_nat @ X @ ( cons_nat @ Y4 @ Xs4 ) ) )
@ ( remdups_adj_nat @ Xs ) ) ) ).
% remdups_adj_Cons
thf(fact_1171_in__set__product__lists__length,axiom,
! [Xs: list_nat,Xss3: list_list_nat] :
( ( member_list_nat @ Xs @ ( set_list_nat2 @ ( product_lists_nat @ Xss3 ) ) )
=> ( ( size_size_list_nat @ Xs )
= ( size_s3023201423986296836st_nat @ Xss3 ) ) ) ).
% in_set_product_lists_length
thf(fact_1172_remdups__adj__adjacent,axiom,
! [I: nat,Xs: list_nat] :
( ( ord_less_nat @ ( suc @ I ) @ ( size_size_list_nat @ ( remdups_adj_nat @ Xs ) ) )
=> ( ( nth_nat @ ( remdups_adj_nat @ Xs ) @ I )
!= ( nth_nat @ ( remdups_adj_nat @ Xs ) @ ( suc @ I ) ) ) ) ).
% remdups_adj_adjacent
thf(fact_1173_remdups__adj__replicate,axiom,
! [N: nat,X: mapping_a_set_a] :
( ( ( N = zero_zero_nat )
=> ( ( remdup7353998041916051893_set_a @ ( replic1631670222262777649_set_a @ N @ X ) )
= nil_mapping_a_set_a ) )
& ( ( N != zero_zero_nat )
=> ( ( remdup7353998041916051893_set_a @ ( replic1631670222262777649_set_a @ N @ X ) )
= ( cons_mapping_a_set_a @ X @ nil_mapping_a_set_a ) ) ) ) ).
% remdups_adj_replicate
thf(fact_1174_remdups__adj__replicate,axiom,
! [N: nat,X: nat] :
( ( ( N = zero_zero_nat )
=> ( ( remdups_adj_nat @ ( replicate_nat @ N @ X ) )
= nil_nat ) )
& ( ( N != zero_zero_nat )
=> ( ( remdups_adj_nat @ ( replicate_nat @ N @ X ) )
= ( cons_nat @ X @ nil_nat ) ) ) ) ).
% remdups_adj_replicate
thf(fact_1175_remdups__adj__singleton,axiom,
! [Xs: list_mapping_a_set_a,X: mapping_a_set_a] :
( ( ( remdup7353998041916051893_set_a @ Xs )
= ( cons_mapping_a_set_a @ X @ nil_mapping_a_set_a ) )
=> ( Xs
= ( replic1631670222262777649_set_a @ ( size_s2079826900039435797_set_a @ Xs ) @ X ) ) ) ).
% remdups_adj_singleton
thf(fact_1176_remdups__adj__singleton,axiom,
! [Xs: list_nat,X: nat] :
( ( ( remdups_adj_nat @ Xs )
= ( cons_nat @ X @ nil_nat ) )
=> ( Xs
= ( replicate_nat @ ( size_size_list_nat @ Xs ) @ X ) ) ) ).
% remdups_adj_singleton
thf(fact_1177_remdups__adj__append,axiom,
! [Xs_1: list_mapping_a_set_a,X: mapping_a_set_a,Xs_2: list_mapping_a_set_a] :
( ( remdup7353998041916051893_set_a @ ( append4262749607566113174_set_a @ Xs_1 @ ( cons_mapping_a_set_a @ X @ Xs_2 ) ) )
= ( append4262749607566113174_set_a @ ( remdup7353998041916051893_set_a @ ( append4262749607566113174_set_a @ Xs_1 @ ( cons_mapping_a_set_a @ X @ nil_mapping_a_set_a ) ) ) @ ( tl_mapping_a_set_a @ ( remdup7353998041916051893_set_a @ ( cons_mapping_a_set_a @ X @ Xs_2 ) ) ) ) ) ).
% remdups_adj_append
thf(fact_1178_remdups__adj__append,axiom,
! [Xs_1: list_nat,X: nat,Xs_2: list_nat] :
( ( remdups_adj_nat @ ( append_nat @ Xs_1 @ ( cons_nat @ X @ Xs_2 ) ) )
= ( append_nat @ ( remdups_adj_nat @ ( append_nat @ Xs_1 @ ( cons_nat @ X @ nil_nat ) ) ) @ ( tl_nat @ ( remdups_adj_nat @ ( cons_nat @ X @ Xs_2 ) ) ) ) ) ).
% remdups_adj_append
thf(fact_1179_concat__map__hd__tl__elem,axiom,
! [Cs: list_mapping_a_set_a,P1: list_mapping_a_set_a,P22: list_l8399423937273897361_set_a] :
( ( member5773590555267836296_set_a @ ( hd_mapping_a_set_a @ Cs ) @ ( set_mapping_a_set_a2 @ P1 ) )
=> ( ( member2763587292577307288_set_a @ ( tl_mapping_a_set_a @ Cs ) @ ( set_li175978742148655916_set_a @ P22 ) )
=> ( ( ord_less_nat @ zero_zero_nat @ ( size_s2079826900039435797_set_a @ Cs ) )
=> ( member2763587292577307288_set_a @ Cs
@ ( set_li175978742148655916_set_a
@ ( concat3671710083786574464_set_a
@ ( map_ma8718683969823173448_set_a
@ ^ [Xy: mapping_a_set_a] : ( map_li7167894565733511880_set_a @ ( cons_mapping_a_set_a @ Xy ) @ P22 )
@ P1 ) ) ) ) ) ) ) ).
% concat_map_hd_tl_elem
thf(fact_1180_concat__map__hd__tl__elem,axiom,
! [Cs: list_nat,P1: list_nat,P22: list_list_nat] :
( ( member_nat @ ( hd_nat @ Cs ) @ ( set_nat2 @ P1 ) )
=> ( ( member_list_nat @ ( tl_nat @ Cs ) @ ( set_list_nat2 @ P22 ) )
=> ( ( ord_less_nat @ zero_zero_nat @ ( size_size_list_nat @ Cs ) )
=> ( member_list_nat @ Cs
@ ( set_list_nat2
@ ( concat_list_nat
@ ( map_na6205611841492582150st_nat
@ ^ [Xy: nat] : ( map_li7225945977422193158st_nat @ ( cons_nat @ Xy ) @ P22 )
@ P1 ) ) ) ) ) ) ) ).
% concat_map_hd_tl_elem
thf(fact_1181_remdups__adj_Opelims,axiom,
! [X: list_mapping_a_set_a,Y: list_mapping_a_set_a] :
( ( ( remdup7353998041916051893_set_a @ X )
= Y )
=> ( ( accp_l4949953582330668472_set_a @ remdup8937436175610656808_set_a @ X )
=> ( ( ( X = nil_mapping_a_set_a )
=> ( ( Y = nil_mapping_a_set_a )
=> ~ ( accp_l4949953582330668472_set_a @ remdup8937436175610656808_set_a @ nil_mapping_a_set_a ) ) )
=> ( ! [X3: mapping_a_set_a] :
( ( X
= ( cons_mapping_a_set_a @ X3 @ nil_mapping_a_set_a ) )
=> ( ( Y
= ( cons_mapping_a_set_a @ X3 @ nil_mapping_a_set_a ) )
=> ~ ( accp_l4949953582330668472_set_a @ remdup8937436175610656808_set_a @ ( cons_mapping_a_set_a @ X3 @ nil_mapping_a_set_a ) ) ) )
=> ~ ! [X3: mapping_a_set_a,Y3: mapping_a_set_a,Xs2: list_mapping_a_set_a] :
( ( X
= ( cons_mapping_a_set_a @ X3 @ ( cons_mapping_a_set_a @ Y3 @ Xs2 ) ) )
=> ( ( ( ( X3 = Y3 )
=> ( Y
= ( remdup7353998041916051893_set_a @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) ) ) )
& ( ( X3 != Y3 )
=> ( Y
= ( cons_mapping_a_set_a @ X3 @ ( remdup7353998041916051893_set_a @ ( cons_mapping_a_set_a @ Y3 @ Xs2 ) ) ) ) ) )
=> ~ ( accp_l4949953582330668472_set_a @ remdup8937436175610656808_set_a @ ( cons_mapping_a_set_a @ X3 @ ( cons_mapping_a_set_a @ Y3 @ Xs2 ) ) ) ) ) ) ) ) ) ).
% remdups_adj.pelims
thf(fact_1182_remdups__adj_Opelims,axiom,
! [X: list_nat,Y: list_nat] :
( ( ( remdups_adj_nat @ X )
= Y )
=> ( ( accp_list_nat @ remdups_adj_rel_nat @ X )
=> ( ( ( X = nil_nat )
=> ( ( Y = nil_nat )
=> ~ ( accp_list_nat @ remdups_adj_rel_nat @ nil_nat ) ) )
=> ( ! [X3: nat] :
( ( X
= ( cons_nat @ X3 @ nil_nat ) )
=> ( ( Y
= ( cons_nat @ X3 @ nil_nat ) )
=> ~ ( accp_list_nat @ remdups_adj_rel_nat @ ( cons_nat @ X3 @ nil_nat ) ) ) )
=> ~ ! [X3: nat,Y3: nat,Xs2: list_nat] :
( ( X
= ( cons_nat @ X3 @ ( cons_nat @ Y3 @ Xs2 ) ) )
=> ( ( ( ( X3 = Y3 )
=> ( Y
= ( remdups_adj_nat @ ( cons_nat @ X3 @ Xs2 ) ) ) )
& ( ( X3 != Y3 )
=> ( Y
= ( cons_nat @ X3 @ ( remdups_adj_nat @ ( cons_nat @ Y3 @ Xs2 ) ) ) ) ) )
=> ~ ( accp_list_nat @ remdups_adj_rel_nat @ ( cons_nat @ X3 @ ( cons_nat @ Y3 @ Xs2 ) ) ) ) ) ) ) ) ) ).
% remdups_adj.pelims
thf(fact_1183_non__sym__dist__pairs_H__indices,axiom,
! [Xs: list_nat,X: nat,Y: nat] :
( ( distinct_nat @ Xs )
=> ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Y ) @ ( set_Pr5648618587558075414at_nat @ ( non_sy1784707333927398277rs_nat @ Xs ) ) )
=> ? [I3: nat,J3: nat] :
( ( ( nth_nat @ Xs @ I3 )
= X )
& ( ( nth_nat @ Xs @ J3 )
= Y )
& ( ord_less_nat @ I3 @ J3 )
& ( ord_less_nat @ I3 @ ( size_size_list_nat @ Xs ) )
& ( ord_less_nat @ J3 @ ( size_size_list_nat @ Xs ) ) ) ) ) ).
% non_sym_dist_pairs'_indices
thf(fact_1184_append__one__prefix,axiom,
! [Xs: list_mapping_a_set_a,Ys: list_mapping_a_set_a] :
( ( prefix1108942689367818198_set_a @ Xs @ Ys )
=> ( ( ord_less_nat @ ( size_s2079826900039435797_set_a @ Xs ) @ ( size_s2079826900039435797_set_a @ Ys ) )
=> ( prefix1108942689367818198_set_a @ ( append4262749607566113174_set_a @ Xs @ ( cons_mapping_a_set_a @ ( nth_mapping_a_set_a @ Ys @ ( size_s2079826900039435797_set_a @ Xs ) ) @ nil_mapping_a_set_a ) ) @ Ys ) ) ) ).
% append_one_prefix
thf(fact_1185_append__one__prefix,axiom,
! [Xs: list_nat,Ys: list_nat] :
( ( prefix_nat @ Xs @ Ys )
=> ( ( ord_less_nat @ ( size_size_list_nat @ Xs ) @ ( size_size_list_nat @ Ys ) )
=> ( prefix_nat @ ( append_nat @ Xs @ ( cons_nat @ ( nth_nat @ Ys @ ( size_size_list_nat @ Xs ) ) @ nil_nat ) ) @ Ys ) ) ) ).
% append_one_prefix
thf(fact_1186_Cons__prefix__Cons,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a,Y: mapping_a_set_a,Ys: list_mapping_a_set_a] :
( ( prefix1108942689367818198_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) @ ( cons_mapping_a_set_a @ Y @ Ys ) )
= ( ( X = Y )
& ( prefix1108942689367818198_set_a @ Xs @ Ys ) ) ) ).
% Cons_prefix_Cons
thf(fact_1187_Cons__prefix__Cons,axiom,
! [X: nat,Xs: list_nat,Y: nat,Ys: list_nat] :
( ( prefix_nat @ ( cons_nat @ X @ Xs ) @ ( cons_nat @ Y @ Ys ) )
= ( ( X = Y )
& ( prefix_nat @ Xs @ Ys ) ) ) ).
% Cons_prefix_Cons
thf(fact_1188_prefix__Nil,axiom,
! [Xs: list_mapping_a_set_a] :
( ( prefix1108942689367818198_set_a @ Xs @ nil_mapping_a_set_a )
= ( Xs = nil_mapping_a_set_a ) ) ).
% prefix_Nil
thf(fact_1189_prefix__Nil,axiom,
! [Xs: list_nat] :
( ( prefix_nat @ Xs @ nil_nat )
= ( Xs = nil_nat ) ) ).
% prefix_Nil
thf(fact_1190_prefix__bot_Oextremum__unique,axiom,
! [A: list_mapping_a_set_a] :
( ( prefix1108942689367818198_set_a @ A @ nil_mapping_a_set_a )
= ( A = nil_mapping_a_set_a ) ) ).
% prefix_bot.extremum_unique
thf(fact_1191_prefix__bot_Oextremum__unique,axiom,
! [A: list_nat] :
( ( prefix_nat @ A @ nil_nat )
= ( A = nil_nat ) ) ).
% prefix_bot.extremum_unique
thf(fact_1192_prefix__code_I1_J,axiom,
! [Xs: list_mapping_a_set_a] : ( prefix1108942689367818198_set_a @ nil_mapping_a_set_a @ Xs ) ).
% prefix_code(1)
thf(fact_1193_prefix__code_I1_J,axiom,
! [Xs: list_nat] : ( prefix_nat @ nil_nat @ Xs ) ).
% prefix_code(1)
thf(fact_1194_distinct__rev,axiom,
! [Xs: list_nat] :
( ( distinct_nat @ ( rev_nat @ Xs ) )
= ( distinct_nat @ Xs ) ) ).
% distinct_rev
thf(fact_1195_distinct1__rotate,axiom,
! [Xs: list_nat] :
( ( distinct_nat @ ( rotate1_nat @ Xs ) )
= ( distinct_nat @ Xs ) ) ).
% distinct1_rotate
thf(fact_1196_distinct__insert,axiom,
! [X: nat,Xs: list_nat] :
( ( distinct_nat @ ( insert_nat @ X @ Xs ) )
= ( distinct_nat @ Xs ) ) ).
% distinct_insert
thf(fact_1197_same__prefix__nil,axiom,
! [Xs: list_mapping_a_set_a,Ys: list_mapping_a_set_a] :
( ( prefix1108942689367818198_set_a @ ( append4262749607566113174_set_a @ Xs @ Ys ) @ Xs )
= ( Ys = nil_mapping_a_set_a ) ) ).
% same_prefix_nil
thf(fact_1198_same__prefix__nil,axiom,
! [Xs: list_nat,Ys: list_nat] :
( ( prefix_nat @ ( append_nat @ Xs @ Ys ) @ Xs )
= ( Ys = nil_nat ) ) ).
% same_prefix_nil
thf(fact_1199_prefix__snoc,axiom,
! [Xs: list_mapping_a_set_a,Ys: list_mapping_a_set_a,Y: mapping_a_set_a] :
( ( prefix1108942689367818198_set_a @ Xs @ ( append4262749607566113174_set_a @ Ys @ ( cons_mapping_a_set_a @ Y @ nil_mapping_a_set_a ) ) )
= ( ( Xs
= ( append4262749607566113174_set_a @ Ys @ ( cons_mapping_a_set_a @ Y @ nil_mapping_a_set_a ) ) )
| ( prefix1108942689367818198_set_a @ Xs @ Ys ) ) ) ).
% prefix_snoc
thf(fact_1200_prefix__snoc,axiom,
! [Xs: list_nat,Ys: list_nat,Y: nat] :
( ( prefix_nat @ Xs @ ( append_nat @ Ys @ ( cons_nat @ Y @ nil_nat ) ) )
= ( ( Xs
= ( append_nat @ Ys @ ( cons_nat @ Y @ nil_nat ) ) )
| ( prefix_nat @ Xs @ Ys ) ) ) ).
% prefix_snoc
thf(fact_1201_distinct__swap,axiom,
! [I: nat,Xs: list_nat,J2: nat] :
( ( ord_less_nat @ I @ ( size_size_list_nat @ Xs ) )
=> ( ( ord_less_nat @ J2 @ ( size_size_list_nat @ Xs ) )
=> ( ( distinct_nat @ ( list_update_nat @ ( list_update_nat @ Xs @ I @ ( nth_nat @ Xs @ J2 ) ) @ J2 @ ( nth_nat @ Xs @ I ) ) )
= ( distinct_nat @ Xs ) ) ) ) ).
% distinct_swap
thf(fact_1202_distinct__product__lists,axiom,
! [Xss3: list_list_nat] :
( ! [X3: list_nat] :
( ( member_list_nat @ X3 @ ( set_list_nat2 @ Xss3 ) )
=> ( distinct_nat @ X3 ) )
=> ( distinct_list_nat @ ( product_lists_nat @ Xss3 ) ) ) ).
% distinct_product_lists
thf(fact_1203_subseqs__distinctD,axiom,
! [Ys: list_nat,Xs: list_nat] :
( ( member_list_nat @ Ys @ ( set_list_nat2 @ ( subseqs_nat @ Xs ) ) )
=> ( ( distinct_nat @ Xs )
=> ( distinct_nat @ Ys ) ) ) ).
% subseqs_distinctD
thf(fact_1204_distinct_Osimps_I2_J,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( distin1103880245795799096_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) )
= ( ~ ( member5773590555267836296_set_a @ X @ ( set_mapping_a_set_a2 @ Xs ) )
& ( distin1103880245795799096_set_a @ Xs ) ) ) ).
% distinct.simps(2)
thf(fact_1205_distinct_Osimps_I2_J,axiom,
! [X: nat,Xs: list_nat] :
( ( distinct_nat @ ( cons_nat @ X @ Xs ) )
= ( ~ ( member_nat @ X @ ( set_nat2 @ Xs ) )
& ( distinct_nat @ Xs ) ) ) ).
% distinct.simps(2)
thf(fact_1206_distinct__set__subseqs,axiom,
! [Xs: list_nat] :
( ( distinct_nat @ Xs )
=> ( distinct_set_nat @ ( map_list_nat_set_nat @ set_nat2 @ ( subseqs_nat @ Xs ) ) ) ) ).
% distinct_set_subseqs
thf(fact_1207_not__distinct__decomp,axiom,
! [Ws: list_mapping_a_set_a] :
( ~ ( distin1103880245795799096_set_a @ Ws )
=> ? [Xs2: list_mapping_a_set_a,Ys2: list_mapping_a_set_a,Zs3: list_mapping_a_set_a,Y3: mapping_a_set_a] :
( Ws
= ( append4262749607566113174_set_a @ Xs2 @ ( append4262749607566113174_set_a @ ( cons_mapping_a_set_a @ Y3 @ nil_mapping_a_set_a ) @ ( append4262749607566113174_set_a @ Ys2 @ ( append4262749607566113174_set_a @ ( cons_mapping_a_set_a @ Y3 @ nil_mapping_a_set_a ) @ Zs3 ) ) ) ) ) ) ).
% not_distinct_decomp
thf(fact_1208_not__distinct__decomp,axiom,
! [Ws: list_nat] :
( ~ ( distinct_nat @ Ws )
=> ? [Xs2: list_nat,Ys2: list_nat,Zs3: list_nat,Y3: nat] :
( Ws
= ( append_nat @ Xs2 @ ( append_nat @ ( cons_nat @ Y3 @ nil_nat ) @ ( append_nat @ Ys2 @ ( append_nat @ ( cons_nat @ Y3 @ nil_nat ) @ Zs3 ) ) ) ) ) ) ).
% not_distinct_decomp
thf(fact_1209_not__distinct__conv__prefix,axiom,
! [As2: list_mapping_a_set_a] :
( ( ~ ( distin1103880245795799096_set_a @ As2 ) )
= ( ? [Xs4: list_mapping_a_set_a,Y4: mapping_a_set_a,Ys3: list_mapping_a_set_a] :
( ( member5773590555267836296_set_a @ Y4 @ ( set_mapping_a_set_a2 @ Xs4 ) )
& ( distin1103880245795799096_set_a @ Xs4 )
& ( As2
= ( append4262749607566113174_set_a @ Xs4 @ ( cons_mapping_a_set_a @ Y4 @ Ys3 ) ) ) ) ) ) ).
% not_distinct_conv_prefix
thf(fact_1210_not__distinct__conv__prefix,axiom,
! [As2: list_nat] :
( ( ~ ( distinct_nat @ As2 ) )
= ( ? [Xs4: list_nat,Y4: nat,Ys3: list_nat] :
( ( member_nat @ Y4 @ ( set_nat2 @ Xs4 ) )
& ( distinct_nat @ Xs4 )
& ( As2
= ( append_nat @ Xs4 @ ( cons_nat @ Y4 @ Ys3 ) ) ) ) ) ) ).
% not_distinct_conv_prefix
thf(fact_1211_distinct__conv__nth,axiom,
( distinct_nat
= ( ^ [Xs4: list_nat] :
! [I2: nat] :
( ( ord_less_nat @ I2 @ ( size_size_list_nat @ Xs4 ) )
=> ! [J: nat] :
( ( ord_less_nat @ J @ ( size_size_list_nat @ Xs4 ) )
=> ( ( I2 != J )
=> ( ( nth_nat @ Xs4 @ I2 )
!= ( nth_nat @ Xs4 @ J ) ) ) ) ) ) ) ).
% distinct_conv_nth
thf(fact_1212_nth__eq__iff__index__eq,axiom,
! [Xs: list_nat,I: nat,J2: nat] :
( ( distinct_nat @ Xs )
=> ( ( ord_less_nat @ I @ ( size_size_list_nat @ Xs ) )
=> ( ( ord_less_nat @ J2 @ ( size_size_list_nat @ Xs ) )
=> ( ( ( nth_nat @ Xs @ I )
= ( nth_nat @ Xs @ J2 ) )
= ( I = J2 ) ) ) ) ) ).
% nth_eq_iff_index_eq
thf(fact_1213_non__distinct__repetition__indices__rev,axiom,
! [I: nat,J2: nat,Xs: list_nat] :
( ( ord_less_nat @ I @ J2 )
=> ( ( ord_less_nat @ J2 @ ( size_size_list_nat @ Xs ) )
=> ( ( ( nth_nat @ Xs @ I )
= ( nth_nat @ Xs @ J2 ) )
=> ~ ( distinct_nat @ Xs ) ) ) ) ).
% non_distinct_repetition_indices_rev
thf(fact_1214_non__distinct__repetition__indices,axiom,
! [Xs: list_nat] :
( ~ ( distinct_nat @ Xs )
=> ? [I3: nat,J3: nat] :
( ( ord_less_nat @ I3 @ J3 )
& ( ord_less_nat @ J3 @ ( size_size_list_nat @ Xs ) )
& ( ( nth_nat @ Xs @ I3 )
= ( nth_nat @ Xs @ J3 ) ) ) ) ).
% non_distinct_repetition_indices
thf(fact_1215_distinct__not__in__prefix,axiom,
! [Xs: list_nat] :
( ! [I3: nat,X3: nat] :
( ( member_nat @ X3 @ ( set_nat2 @ ( take_nat @ I3 @ Xs ) ) )
=> ( ( nth_nat @ Xs @ I3 )
!= X3 ) )
=> ( distinct_nat @ Xs ) ) ).
% distinct_not_in_prefix
thf(fact_1216_distinct_Osimps_I1_J,axiom,
distin1103880245795799096_set_a @ nil_mapping_a_set_a ).
% distinct.simps(1)
thf(fact_1217_distinct_Osimps_I1_J,axiom,
distinct_nat @ nil_nat ).
% distinct.simps(1)
thf(fact_1218_prefix__bot_Obot__least,axiom,
! [A: list_mapping_a_set_a] : ( prefix1108942689367818198_set_a @ nil_mapping_a_set_a @ A ) ).
% prefix_bot.bot_least
thf(fact_1219_prefix__bot_Obot__least,axiom,
! [A: list_nat] : ( prefix_nat @ nil_nat @ A ) ).
% prefix_bot.bot_least
thf(fact_1220_prefix__bot_Oextremum__uniqueI,axiom,
! [A: list_mapping_a_set_a] :
( ( prefix1108942689367818198_set_a @ A @ nil_mapping_a_set_a )
=> ( A = nil_mapping_a_set_a ) ) ).
% prefix_bot.extremum_uniqueI
thf(fact_1221_prefix__bot_Oextremum__uniqueI,axiom,
! [A: list_nat] :
( ( prefix_nat @ A @ nil_nat )
=> ( A = nil_nat ) ) ).
% prefix_bot.extremum_uniqueI
thf(fact_1222_Nil__prefix,axiom,
! [Xs: list_mapping_a_set_a] : ( prefix1108942689367818198_set_a @ nil_mapping_a_set_a @ Xs ) ).
% Nil_prefix
thf(fact_1223_Nil__prefix,axiom,
! [Xs: list_nat] : ( prefix_nat @ nil_nat @ Xs ) ).
% Nil_prefix
thf(fact_1224_distinct__upt,axiom,
! [I: nat,J2: nat] : ( distinct_nat @ ( upt @ I @ J2 ) ) ).
% distinct_upt
thf(fact_1225_distinct__tl,axiom,
! [Xs: list_nat] :
( ( distinct_nat @ Xs )
=> ( distinct_nat @ ( tl_nat @ Xs ) ) ) ).
% distinct_tl
thf(fact_1226_distinct__product,axiom,
! [Xs: list_nat,Ys: list_nat] :
( ( distinct_nat @ Xs )
=> ( ( distinct_nat @ Ys )
=> ( distin6923225563576452346at_nat @ ( product_nat_nat @ Xs @ Ys ) ) ) ) ).
% distinct_product
thf(fact_1227_sorted__list__of__set_Odistinct__if__distinct__map,axiom,
! [Xs: list_nat] :
( ( distinct_nat @ Xs )
=> ( distinct_nat @ Xs ) ) ).
% sorted_list_of_set.distinct_if_distinct_map
thf(fact_1228_distinct__filter,axiom,
! [Xs: list_nat,P: nat > $o] :
( ( distinct_nat @ Xs )
=> ( distinct_nat @ ( filter_nat @ P @ Xs ) ) ) ).
% distinct_filter
thf(fact_1229_distinct__length__2__or__more,axiom,
! [A: mapping_a_set_a,B: mapping_a_set_a,Xs: list_mapping_a_set_a] :
( ( distin1103880245795799096_set_a @ ( cons_mapping_a_set_a @ A @ ( cons_mapping_a_set_a @ B @ Xs ) ) )
= ( ( A != B )
& ( distin1103880245795799096_set_a @ ( cons_mapping_a_set_a @ A @ Xs ) )
& ( distin1103880245795799096_set_a @ ( cons_mapping_a_set_a @ B @ Xs ) ) ) ) ).
% distinct_length_2_or_more
thf(fact_1230_distinct__length__2__or__more,axiom,
! [A: nat,B: nat,Xs: list_nat] :
( ( distinct_nat @ ( cons_nat @ A @ ( cons_nat @ B @ Xs ) ) )
= ( ( A != B )
& ( distinct_nat @ ( cons_nat @ A @ Xs ) )
& ( distinct_nat @ ( cons_nat @ B @ Xs ) ) ) ) ).
% distinct_length_2_or_more
thf(fact_1231_distinct__nthsI,axiom,
! [Xs: list_nat,I4: set_nat] :
( ( distinct_nat @ Xs )
=> ( distinct_nat @ ( nths_nat @ Xs @ I4 ) ) ) ).
% distinct_nthsI
thf(fact_1232_distinct__map__filter,axiom,
! [F: nat > nat,Xs: list_nat,P: nat > $o] :
( ( distinct_nat @ ( map_nat_nat @ F @ Xs ) )
=> ( distinct_nat @ ( map_nat_nat @ F @ ( filter_nat @ P @ Xs ) ) ) ) ).
% distinct_map_filter
thf(fact_1233_not__prefix__induct,axiom,
! [Ps2: list_mapping_a_set_a,Ls: list_mapping_a_set_a,P: list_mapping_a_set_a > list_mapping_a_set_a > $o] :
( ~ ( prefix1108942689367818198_set_a @ Ps2 @ Ls )
=> ( ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a] : ( P @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) @ nil_mapping_a_set_a )
=> ( ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a,Y3: mapping_a_set_a,Ys2: list_mapping_a_set_a] :
( ( X3 != Y3 )
=> ( P @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) @ ( cons_mapping_a_set_a @ Y3 @ Ys2 ) ) )
=> ( ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a,Y3: mapping_a_set_a,Ys2: list_mapping_a_set_a] :
( ( X3 = Y3 )
=> ( ~ ( prefix1108942689367818198_set_a @ Xs2 @ Ys2 )
=> ( ( P @ Xs2 @ Ys2 )
=> ( P @ ( cons_mapping_a_set_a @ X3 @ Xs2 ) @ ( cons_mapping_a_set_a @ Y3 @ Ys2 ) ) ) ) )
=> ( P @ Ps2 @ Ls ) ) ) ) ) ).
% not_prefix_induct
thf(fact_1234_not__prefix__induct,axiom,
! [Ps2: list_nat,Ls: list_nat,P: list_nat > list_nat > $o] :
( ~ ( prefix_nat @ Ps2 @ Ls )
=> ( ! [X3: nat,Xs2: list_nat] : ( P @ ( cons_nat @ X3 @ Xs2 ) @ nil_nat )
=> ( ! [X3: nat,Xs2: list_nat,Y3: nat,Ys2: list_nat] :
( ( X3 != Y3 )
=> ( P @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys2 ) ) )
=> ( ! [X3: nat,Xs2: list_nat,Y3: nat,Ys2: list_nat] :
( ( X3 = Y3 )
=> ( ~ ( prefix_nat @ Xs2 @ Ys2 )
=> ( ( P @ Xs2 @ Ys2 )
=> ( P @ ( cons_nat @ X3 @ Xs2 ) @ ( cons_nat @ Y3 @ Ys2 ) ) ) ) )
=> ( P @ Ps2 @ Ls ) ) ) ) ) ).
% not_prefix_induct
thf(fact_1235_not__prefix__cases,axiom,
! [Ps2: list_mapping_a_set_a,Ls: list_mapping_a_set_a] :
( ~ ( prefix1108942689367818198_set_a @ Ps2 @ Ls )
=> ( ( ( Ps2 != nil_mapping_a_set_a )
=> ( Ls != nil_mapping_a_set_a ) )
=> ( ! [A3: mapping_a_set_a,As3: list_mapping_a_set_a] :
( ( Ps2
= ( cons_mapping_a_set_a @ A3 @ As3 ) )
=> ! [X3: mapping_a_set_a,Xs2: list_mapping_a_set_a] :
( ( Ls
= ( cons_mapping_a_set_a @ X3 @ Xs2 ) )
=> ( ( X3 = A3 )
=> ( prefix1108942689367818198_set_a @ As3 @ Xs2 ) ) ) )
=> ~ ! [A3: mapping_a_set_a] :
( ? [As3: list_mapping_a_set_a] :
( Ps2
= ( cons_mapping_a_set_a @ A3 @ As3 ) )
=> ! [X3: mapping_a_set_a] :
( ? [Xs2: list_mapping_a_set_a] :
( Ls
= ( cons_mapping_a_set_a @ X3 @ Xs2 ) )
=> ( X3 = A3 ) ) ) ) ) ) ).
% not_prefix_cases
thf(fact_1236_not__prefix__cases,axiom,
! [Ps2: list_nat,Ls: list_nat] :
( ~ ( prefix_nat @ Ps2 @ Ls )
=> ( ( ( Ps2 != nil_nat )
=> ( Ls != nil_nat ) )
=> ( ! [A3: nat,As3: list_nat] :
( ( Ps2
= ( cons_nat @ A3 @ As3 ) )
=> ! [X3: nat,Xs2: list_nat] :
( ( Ls
= ( cons_nat @ X3 @ Xs2 ) )
=> ( ( X3 = A3 )
=> ( prefix_nat @ As3 @ Xs2 ) ) ) )
=> ~ ! [A3: nat] :
( ? [As3: list_nat] :
( Ps2
= ( cons_nat @ A3 @ As3 ) )
=> ! [X3: nat] :
( ? [Xs2: list_nat] :
( Ls
= ( cons_nat @ X3 @ Xs2 ) )
=> ( X3 = A3 ) ) ) ) ) ) ).
% not_prefix_cases
thf(fact_1237_prefix__Cons,axiom,
! [Xs: list_mapping_a_set_a,Y: mapping_a_set_a,Ys: list_mapping_a_set_a] :
( ( prefix1108942689367818198_set_a @ Xs @ ( cons_mapping_a_set_a @ Y @ Ys ) )
= ( ( Xs = nil_mapping_a_set_a )
| ? [Zs2: list_mapping_a_set_a] :
( ( Xs
= ( cons_mapping_a_set_a @ Y @ Zs2 ) )
& ( prefix1108942689367818198_set_a @ Zs2 @ Ys ) ) ) ) ).
% prefix_Cons
thf(fact_1238_prefix__Cons,axiom,
! [Xs: list_nat,Y: nat,Ys: list_nat] :
( ( prefix_nat @ Xs @ ( cons_nat @ Y @ Ys ) )
= ( ( Xs = nil_nat )
| ? [Zs2: list_nat] :
( ( Xs
= ( cons_nat @ Y @ Zs2 ) )
& ( prefix_nat @ Zs2 @ Ys ) ) ) ) ).
% prefix_Cons
thf(fact_1239_prefix__code_I2_J,axiom,
! [X: mapping_a_set_a,Xs: list_mapping_a_set_a] :
~ ( prefix1108942689367818198_set_a @ ( cons_mapping_a_set_a @ X @ Xs ) @ nil_mapping_a_set_a ) ).
% prefix_code(2)
thf(fact_1240_prefix__code_I2_J,axiom,
! [X: nat,Xs: list_nat] :
~ ( prefix_nat @ ( cons_nat @ X @ Xs ) @ nil_nat ) ).
% prefix_code(2)
thf(fact_1241_distinct__singleton,axiom,
! [X: mapping_a_set_a] : ( distin1103880245795799096_set_a @ ( cons_mapping_a_set_a @ X @ nil_mapping_a_set_a ) ) ).
% distinct_singleton
thf(fact_1242_distinct__singleton,axiom,
! [X: nat] : ( distinct_nat @ ( cons_nat @ X @ nil_nat ) ) ).
% distinct_singleton
thf(fact_1243_prefix__map__rightE,axiom,
! [Xs: list_nat,F: nat > nat,Ys: list_nat] :
( ( prefix_nat @ Xs @ ( map_nat_nat @ F @ Ys ) )
=> ? [Xs3: list_nat] :
( ( prefix_nat @ Xs3 @ Ys )
& ( Xs
= ( map_nat_nat @ F @ Xs3 ) ) ) ) ).
% prefix_map_rightE
thf(fact_1244_map__mono__prefix,axiom,
! [Xs: list_nat,Ys: list_nat,F: nat > nat] :
( ( prefix_nat @ Xs @ Ys )
=> ( prefix_nat @ ( map_nat_nat @ F @ Xs ) @ ( map_nat_nat @ F @ Ys ) ) ) ).
% map_mono_prefix
thf(fact_1245_distinct__take,axiom,
! [Xs: list_nat,I: nat] :
( ( distinct_nat @ Xs )
=> ( distinct_nat @ ( take_nat @ I @ Xs ) ) ) ).
% distinct_take
thf(fact_1246_maximal__distinct__prefix,axiom,
! [Xs: list_nat] :
( ~ ( distinct_nat @ Xs )
=> ~ ! [N2: nat] :
( ( distinct_nat @ ( take_nat @ ( suc @ N2 ) @ Xs ) )
=> ( distinct_nat @ ( take_nat @ ( suc @ ( suc @ N2 ) ) @ Xs ) ) ) ) ).
% maximal_distinct_prefix
thf(fact_1247_remdups__adj__distinct,axiom,
! [Xs: list_nat] :
( ( distinct_nat @ Xs )
=> ( ( remdups_adj_nat @ Xs )
= Xs ) ) ).
% remdups_adj_distinct
thf(fact_1248_distinct__drop,axiom,
! [Xs: list_nat,I: nat] :
( ( distinct_nat @ Xs )
=> ( distinct_nat @ ( drop_nat @ I @ Xs ) ) ) ).
% distinct_drop
thf(fact_1249_non__sym__dist__pairs_H__elems__distinct_I3_J,axiom,
! [Xs: list_nat,X: nat,Y: nat] :
( ( distinct_nat @ Xs )
=> ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Y ) @ ( set_Pr5648618587558075414at_nat @ ( non_sy1784707333927398277rs_nat @ Xs ) ) )
=> ( X != Y ) ) ) ).
% non_sym_dist_pairs'_elems_distinct(3)
thf(fact_1250_non__sym__dist__pairs_H__elems__non__refl,axiom,
! [Xs: list_nat,X: nat,Y: nat] :
( ( distinct_nat @ Xs )
=> ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Y ) @ ( set_Pr5648618587558075414at_nat @ ( non_sy1784707333927398277rs_nat @ Xs ) ) )
=> ~ ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ Y @ X ) @ ( set_Pr5648618587558075414at_nat @ ( non_sy1784707333927398277rs_nat @ Xs ) ) ) ) ) ).
% non_sym_dist_pairs'_elems_non_refl
thf(fact_1251_filter__in__nths,axiom,
! [Xs: list_nat,S: set_nat] :
( ( distinct_nat @ Xs )
=> ( ( filter_nat
@ ^ [X4: nat] : ( member_nat @ X4 @ ( set_nat2 @ ( nths_nat @ Xs @ S ) ) )
@ Xs )
= ( nths_nat @ Xs @ S ) ) ) ).
% filter_in_nths
thf(fact_1252_distinct__Ex1,axiom,
! [Xs: list_nat,X: nat] :
( ( distinct_nat @ Xs )
=> ( ( member_nat @ X @ ( set_nat2 @ Xs ) )
=> ? [X3: nat] :
( ( ord_less_nat @ X3 @ ( size_size_list_nat @ Xs ) )
& ( ( nth_nat @ Xs @ X3 )
= X )
& ! [Y6: nat] :
( ( ( ord_less_nat @ Y6 @ ( size_size_list_nat @ Xs ) )
& ( ( nth_nat @ Xs @ Y6 )
= X ) )
=> ( Y6 = X3 ) ) ) ) ) ).
% distinct_Ex1
thf(fact_1253_non__sym__dist__pairs_H__elems__distinct_I1_J,axiom,
! [Xs: list_nat,X: nat,Y: nat] :
( ( distinct_nat @ Xs )
=> ( ( member8440522571783428010at_nat @ ( product_Pair_nat_nat @ X @ Y ) @ ( set_Pr5648618587558075414at_nat @ ( non_sy1784707333927398277rs_nat @ Xs ) ) )
=> ( member_nat @ X @ ( set_nat2 @ Xs ) ) ) ) ).
% non_sym_dist_pairs'_elems_distinct(1)
% Helper facts (7)
thf(help_If_2_1_If_001t__Nat__Onat_T,axiom,
! [X: nat,Y: nat] :
( ( if_nat @ $false @ X @ Y )
= Y ) ).
thf(help_If_1_1_If_001t__Nat__Onat_T,axiom,
! [X: nat,Y: nat] :
( ( if_nat @ $true @ X @ Y )
= X ) ).
thf(help_If_2_1_If_001t__List__Olist_It__Nat__Onat_J_T,axiom,
! [X: list_nat,Y: list_nat] :
( ( if_list_nat @ $false @ X @ Y )
= Y ) ).
thf(help_If_1_1_If_001t__List__Olist_It__Nat__Onat_J_T,axiom,
! [X: list_nat,Y: list_nat] :
( ( if_list_nat @ $true @ X @ Y )
= X ) ).
thf(help_If_3_1_If_001t__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_T,axiom,
! [P: $o] :
( ( P = $true )
| ( P = $false ) ) ).
thf(help_If_2_1_If_001t__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_T,axiom,
! [X: list_mapping_a_set_a,Y: list_mapping_a_set_a] :
( ( if_lis8209991044144858171_set_a @ $false @ X @ Y )
= Y ) ).
thf(help_If_1_1_If_001t__List__Olist_It__Mapping__Omapping_Itf__a_Mt__Set__Oset_Itf__a_J_J_J_T,axiom,
! [X: list_mapping_a_set_a,Y: list_mapping_a_set_a] :
( ( if_lis8209991044144858171_set_a @ $true @ X @ Y )
= X ) ).
% Conjectures (1)
thf(conj_0,conjecture,
( ( t @ ( suc @ ka ) )
= ( cons_mapping_a_set_a @ ( oFSM_T257171030951260681_a_b_c @ m @ ( hd_mapping_a_set_a @ ( t @ ka ) ) ) @ ( t @ ka ) ) ) ).
%------------------------------------------------------------------------------