%------------------------------------------------------------------------------
% File : DT2H2X---1.9.5
% Problem : ITP100^1 : TPTP v9.2.1. Released v7.5.0.
% Transfm : none
% Format : tptp:raw
% Command : /export/starexec/sandbox2/solver/bin/run_DT2H2X /export/starexec/sandbox2/benchmark/theBenchmark.p 300
% Computer : n027.cluster.edu
% Model : x86_64 x86_64
% CPU : Intel(R) Xeon(R) CPU E5-2620 v4 2.10GHz
% Memory : 8042.1875MB
% OS : Linux 3.10.0-693.el7.x86_64
% CPULimit : 300s
% WCLimit : 300s
% DateTime : Wed Feb 25 08:55:33 AM UTC 2026
% Result : Theorem 3.10s 1.71s
% Output : Refutation 3.10s
% Verified :
% SZS Type : Refutation
% Derivation depth : 12
% Number of leaves : 5
% Syntax : Number of formulae : 27 ( 13 unt; 0 typ; 0 def)
% Number of atoms : 87 ( 86 equ; 0 cnn)
% Maximal formula atoms : 10 ( 3 avg)
% Number of connectives : 347 ( 31 ~; 28 |; 24 &; 260 @)
% ( 1 <=>; 3 =>; 0 <=; 0 <~>)
% Maximal formula depth : 11 ( 5 avg)
% Number of types : 10 ( 9 usr)
% Number of type conns : 3 ( 3 >; 0 *; 0 +; 0 <<)
% Number of symbols : 155 ( 153 usr; 8 con; 0-4 aty)
% Number of variables : 73 ( 0 ^; 66 !; 7 ?; 73 :)
% Comments :
%------------------------------------------------------------------------------
thf(type_def_5,type,
set_list_list_a: $tType ).
thf(type_def_6,type,
list_a: $tType ).
thf(type_def_8,type,
set_list_a: $tType ).
thf(type_def_9,type,
a: $tType ).
thf(type_def_10,type,
list_list_a: $tType ).
thf(type_def_11,type,
set_a: $tType ).
thf(type_def_12,type,
nat: $tType ).
thf(type_def_13,type,
list_nat: $tType ).
thf(type_def_14,type,
list_list_list_a: $tType ).
thf(func_def_0,type,
list_list_list_a: $tType ).
thf(func_def_1,type,
set_list_list_a: $tType ).
thf(func_def_2,type,
list_list_a: $tType ).
thf(func_def_3,type,
set_list_a: $tType ).
thf(func_def_4,type,
list_nat: $tType ).
thf(func_def_5,type,
list_a: $tType ).
thf(func_def_6,type,
set_a: $tType ).
thf(func_def_7,type,
nat: $tType ).
thf(func_def_8,type,
a: $tType ).
thf(func_def_9,type,
bNF_Gr1972240547list_a: set_list_list_a > list_a > set_list_list_a ).
thf(func_def_10,type,
bNF_Greatest_Shift_a: set_list_a > a > set_list_a ).
thf(func_def_11,type,
bNF_Gr1046450207list_a: set_list_list_a > list_list_a > set_list_a ).
thf(func_def_12,type,
bNF_Greatest_Succ_a: set_list_a > list_a > set_a ).
thf(func_def_13,type,
if_list_a: $o > list_a > list_a > list_a ).
thf(func_def_14,type,
list_ord_nat: ( nat > nat > $o ) > list_nat > $o ).
thf(func_def_15,type,
list_strict_asc_nat: list_nat > $o ).
thf(func_def_16,type,
map2_a_a_a: ( a > a > a ) > list_a > list_a > list_a ).
thf(func_def_17,type,
listIn1753026346list_a: list_list_a > ( nat > list_a ) > nat > list_a ).
thf(func_def_18,type,
listIn1312259492pend_a: list_a > ( nat > a ) > nat > a ).
thf(func_def_19,type,
append_list_list_a: list_list_list_a > list_list_list_a > list_list_list_a ).
thf(func_def_20,type,
append_list_a: list_list_a > list_list_a > list_list_a ).
thf(func_def_21,type,
append_nat: list_nat > list_nat > list_nat ).
thf(func_def_22,type,
append_a: list_a > list_a > list_a ).
thf(func_def_23,type,
bind_list_a_list_a: list_list_a > ( list_a > list_list_a ) > list_list_a ).
thf(func_def_24,type,
bind_list_a_a: list_list_a > ( list_a > list_a ) > list_a ).
thf(func_def_25,type,
bind_a_list_a: list_a > ( a > list_list_a ) > list_list_a ).
thf(func_def_26,type,
bind_a_a: list_a > ( a > list_a ) > list_a ).
thf(func_def_27,type,
butlast_list_a: list_list_a > list_list_a ).
thf(func_def_28,type,
butlast_a: list_a > list_a ).
thf(func_def_29,type,
concat_list_a: list_list_list_a > list_list_a ).
thf(func_def_30,type,
concat_a: list_list_a > list_a ).
thf(func_def_31,type,
distinct_adj_list_a: list_list_a > $o ).
thf(func_def_32,type,
distinct_adj_a: list_a > $o ).
thf(func_def_33,type,
foldr_769741863list_a: ( list_list_a > list_list_a > list_list_a ) > list_list_list_a > list_list_a > list_list_a ).
thf(func_def_34,type,
foldr_list_a_list_a: ( list_a > list_a > list_a ) > list_list_a > list_a > list_a ).
thf(func_def_35,type,
insert_list_a: list_a > list_list_a > list_list_a ).
thf(func_def_36,type,
insert_a: a > list_a > list_a ).
thf(func_def_37,type,
last_list_a: list_list_a > list_a ).
thf(func_def_38,type,
last_a: list_a > a ).
thf(func_def_39,type,
cons_list_list_a: list_list_a > list_list_list_a > list_list_list_a ).
thf(func_def_40,type,
cons_list_a: list_a > list_list_a > list_list_a ).
thf(func_def_41,type,
cons_nat: nat > list_nat > list_nat ).
thf(func_def_42,type,
cons_a: a > list_a > list_a ).
thf(func_def_43,type,
nil_list_list_a: list_list_list_a ).
thf(func_def_44,type,
nil_list_a: list_list_a ).
thf(func_def_45,type,
nil_nat: list_nat ).
thf(func_def_46,type,
nil_a: list_a ).
thf(func_def_47,type,
hd_list_list_a: list_list_list_a > list_list_a ).
thf(func_def_48,type,
hd_list_a: list_list_a > list_a ).
thf(func_def_49,type,
hd_a: list_a > a ).
thf(func_def_50,type,
tl_list_a: list_list_a > list_list_a ).
thf(func_def_51,type,
tl_a: list_a > list_a ).
thf(func_def_52,type,
list_ex1_list_a: ( list_a > $o ) > list_list_a > $o ).
thf(func_def_53,type,
list_ex1_a: ( a > $o ) > list_a > $o ).
thf(func_def_54,type,
listre1221556159list_a: ( list_a > list_a > $o ) > list_list_a > list_list_a > $o ).
thf(func_def_55,type,
listrelp_list_a_a: ( list_a > a > $o ) > list_list_a > list_a > $o ).
thf(func_def_56,type,
listrelp_a_list_a: ( a > list_a > $o ) > list_a > list_list_a > $o ).
thf(func_def_57,type,
listrelp_a_a: ( a > a > $o ) > list_a > list_a > $o ).
thf(func_def_58,type,
map_ta982122357list_a: ( list_a > list_a ) > list_list_a > list_list_a > list_list_a ).
thf(func_def_59,type,
map_ta2002079599st_a_a: ( list_a > a ) > list_list_a > list_a > list_a ).
thf(func_def_60,type,
map_ta41997947list_a: ( a > list_a ) > list_a > list_list_a > list_list_a ).
thf(func_def_61,type,
map_tailrec_rev_a_a: ( a > a ) > list_a > list_a > list_a ).
thf(func_def_62,type,
maps_list_a_list_a: ( list_a > list_list_a ) > list_list_a > list_list_a ).
thf(func_def_63,type,
maps_list_a_a: ( list_a > list_a ) > list_list_a > list_a ).
thf(func_def_64,type,
maps_a_list_a: ( a > list_list_a ) > list_a > list_list_a ).
thf(func_def_65,type,
maps_a_a: ( a > list_a ) > list_a > list_a ).
thf(func_def_66,type,
member_list_a: list_list_a > list_a > $o ).
thf(func_def_67,type,
member_a: list_a > a > $o ).
thf(func_def_68,type,
lexordp_eq_list_a: ( list_a > list_a > $o ) > list_list_a > list_list_a > $o ).
thf(func_def_69,type,
lexordp_eq_a: ( a > a > $o ) > list_a > list_a > $o ).
thf(func_def_70,type,
ord_lexordp_nat: list_nat > list_nat > $o ).
thf(func_def_71,type,
ord_lexordp_eq_nat: list_nat > list_nat > $o ).
thf(func_def_72,type,
product_lists_list_a: list_list_list_a > list_list_list_a ).
thf(func_def_73,type,
product_lists_a: list_list_a > list_list_a ).
thf(func_def_74,type,
remdups_adj_a: list_a > list_a ).
thf(func_def_75,type,
rotate1_list_a: list_list_a > list_list_a ).
thf(func_def_76,type,
rotate1_a: list_a > list_a ).
thf(func_def_77,type,
shuffles_a: list_a > list_a > set_list_a ).
thf(func_def_78,type,
splice_list_a: list_list_a > list_list_a > list_list_a ).
thf(func_def_79,type,
splice_a: list_a > list_a > list_a ).
thf(func_def_80,type,
subseqs_list_a: list_list_a > list_list_list_a ).
thf(func_def_81,type,
subseqs_a: list_a > list_list_a ).
thf(func_def_82,type,
successively_list_a: ( list_a > list_a > $o ) > list_list_a > $o ).
thf(func_def_83,type,
successively_a: ( a > a > $o ) > list_a > $o ).
thf(func_def_84,type,
size_size_list_a: list_a > nat ).
thf(func_def_85,type,
ord_less_nat: nat > nat > $o ).
thf(func_def_86,type,
collect_list_a: ( list_a > $o ) > set_list_a ).
thf(func_def_87,type,
collect_a: ( a > $o ) > set_a ).
thf(func_def_88,type,
member_list_list_a: list_list_a > set_list_list_a > $o ).
thf(func_def_89,type,
member_list_a2: list_a > set_list_a > $o ).
thf(func_def_90,type,
member_a2: a > set_a > $o ).
thf(func_def_91,type,
f: nat > a ).
thf(func_def_92,type,
x: a ).
thf(func_def_93,type,
xs: list_a ).
thf(func_def_110,type,
sK0: ( list_a > $o ) > a ).
thf(func_def_111,type,
sK1: ( list_a > $o ) > a ).
thf(func_def_112,type,
sK2: ( list_a > $o ) > list_a ).
thf(func_def_113,type,
sK3: ( list_a > $o ) > a ).
thf(func_def_114,type,
sK4: ( ( a > a ) > list_a > list_a > $o ) > a > a ).
thf(func_def_115,type,
sK5: ( ( a > a ) > list_a > list_a > $o ) > a ).
thf(func_def_116,type,
sK6: ( ( a > a ) > list_a > list_a > $o ) > list_a ).
thf(func_def_117,type,
sK7: ( ( a > a ) > list_a > list_a > $o ) > list_a ).
thf(func_def_118,type,
sK8: ( ( a > a ) > list_a > list_a > $o ) > list_a ).
thf(func_def_119,type,
sK9: ( ( a > a ) > list_a > list_a > $o ) > a > a ).
thf(func_def_120,type,
sK10: list_a > list_a > list_a > list_a > list_a ).
thf(func_def_121,type,
sK11: list_a > a ).
thf(func_def_122,type,
sK12: list_a > list_a ).
thf(func_def_123,type,
sK13: ( list_a > $o ) > a ).
thf(func_def_124,type,
sK14: ( list_a > $o ) > list_a ).
thf(func_def_125,type,
sK15: ( list_a > $o ) > a ).
thf(func_def_126,type,
sK16: ( list_a > $o ) > a ).
thf(func_def_127,type,
sK17: ( list_a > $o ) > a ).
thf(func_def_128,type,
sK18: ( list_a > $o ) > list_a ).
thf(func_def_129,type,
sK19: ( list_a > $o ) > a ).
thf(func_def_130,type,
sK20: ( list_a > $o ) > list_a ).
thf(func_def_131,type,
sK21: ( list_a > $o ) > a ).
thf(func_def_132,type,
sK22: ( list_a > $o ) > list_a ).
thf(func_def_133,type,
sK23: ( list_a > $o ) > a ).
thf(func_def_134,type,
sK24: list_a > list_a ).
thf(func_def_135,type,
sK25: list_a > a ).
thf(func_def_136,type,
sK26: list_a > a ).
thf(func_def_137,type,
sK27: list_a > a ).
thf(func_def_138,type,
sK28: ( list_a > list_a > $o ) > list_a ).
thf(func_def_139,type,
sK29: ( list_a > list_a > $o ) > list_a ).
thf(func_def_140,type,
sK30: ( list_a > list_a > $o ) > list_a ).
thf(func_def_141,type,
sK31: ( list_a > list_a > $o ) > a ).
thf(func_def_142,type,
sK32: ( list_a > list_a > $o ) > list_a ).
thf(func_def_143,type,
sK33: ( list_a > list_a > $o ) > a ).
thf(func_def_144,type,
sK34: list_a > list_a ).
thf(func_def_145,type,
sK35: list_a > a ).
thf(func_def_146,type,
sK36: ( list_a > $o ) > a ).
thf(func_def_147,type,
sK37: ( list_a > $o ) > a ).
thf(func_def_148,type,
sK38: ( list_a > $o ) > list_a ).
thf(func_def_149,type,
sK39: ( list_a > list_a > $o ) > list_a ).
thf(func_def_150,type,
sK40: ( list_a > list_a > $o ) > a ).
thf(func_def_151,type,
sK41: ( list_a > list_a > $o ) > list_a ).
thf(func_def_152,type,
sK42: ( list_a > list_a > $o ) > a ).
thf(func_def_153,type,
sK43: ( list_a > list_a > $o ) > list_a ).
thf(func_def_154,type,
sK44: ( list_a > list_a > $o ) > a ).
thf(func_def_155,type,
sK45: ( list_a > list_a > $o ) > list_a ).
thf(func_def_156,type,
sK46: ( list_a > list_a > $o ) > a ).
thf(func_def_157,type,
sK47: ( ( a > a > $o ) > list_a > $o ) > a > a > $o ).
thf(func_def_158,type,
sK48: ( ( a > a > $o ) > list_a > $o ) > a ).
thf(func_def_159,type,
sK49: ( ( a > a > $o ) > list_a > $o ) > a > a > $o ).
thf(func_def_160,type,
sK50: ( ( a > a > $o ) > list_a > $o ) > list_a ).
thf(func_def_161,type,
sK51: ( ( a > a > $o ) > list_a > $o ) > a ).
thf(func_def_162,type,
sK52: ( ( a > a > $o ) > list_a > $o ) > a > a > $o ).
thf(func_def_163,type,
sK53: ( ( a > a > $o ) > list_a > $o ) > a ).
thf(func_def_164,type,
sK54: ( list_a > list_a > $o ) > a ).
thf(func_def_165,type,
sK55: ( list_a > list_a > $o ) > list_a ).
thf(func_def_166,type,
sK56: ( list_a > list_a > $o ) > list_a ).
thf(func_def_167,type,
sK57: ( list_a > list_a > $o ) > list_a ).
thf(func_def_168,type,
sK58: list_a > list_a > list_a > a > list_a ).
thf(func_def_169,type,
sK59: ( ( a > a > $o ) > list_a > $o ) > a > a > $o ).
thf(func_def_170,type,
sK60: ( ( a > a > $o ) > list_a > $o ) > list_a ).
thf(func_def_171,type,
sK61: ( ( a > a > $o ) > list_a > $o ) > a > a > $o ).
thf(func_def_172,type,
sK62: ( ( a > a > $o ) > list_a > $o ) > a ).
thf(func_def_173,type,
sK63: list_a > a ).
thf(func_def_174,type,
sK64: list_a > list_a ).
thf(func_def_175,type,
sK65: a > list_a > list_a > list_a > list_a ).
thf(func_def_177,type,
ph67:
!>[X0: $tType] : X0 ).
thf(func_def_178,type,
sK68: nat ).
thf(f1016,plain,
$false,
inference(trivial_inequality_removal,[status(thm)],[f1015]) ).
thf(f1015,plain,
( ( listIn1312259492pend_a @ ( cons_a @ x @ xs ) @ f )
!= ( listIn1312259492pend_a @ ( cons_a @ x @ xs ) @ f ) ),
inference(forward_demodulation,[status(thm)],[f1014,f979]) ).
thf(f979,plain,
! [X1: list_a] :
( ( append_a @ nil_a @ X1 )
= X1 ),
inference(equality_resolution,[status(thm)],[f885]) ).
thf(f885,plain,
! [X0: list_a,X1: list_a] :
( ( ( append_a @ nil_a @ X0 )
= X1 )
| ( X0 != X1 ) ),
inference(cnf_transformation,[status(thm)],[f775]) ).
thf(f775,plain,
! [X0: list_a,X1: list_a] :
( ( ( append_a @ nil_a @ X0 )
= X1 )
| ( X0 != X1 ) ),
inference(ennf_transformation,[status(thm)],[f755]) ).
thf(f755,plain,
! [X0: list_a,X1: list_a] :
( ( X0 = X1 )
=> ( ( append_a @ nil_a @ X0 )
= X1 ) ),
inference(rectify,[status(thm)],[f169]) ).
thf(f169,axiom,
! [X15: list_a,X12: list_a] :
( ( X12 = X15 )
=> ( ( append_a @ nil_a @ X15 )
= X12 ) ),
file('/export/starexec/sandbox2/tmp/tmp.5LVVyH7wPu/DTF2THF_20820.p',fact_168_eq__Nil__appendI) ).
thf(f1014,plain,
( ( listIn1312259492pend_a @ ( cons_a @ x @ xs ) @ f )
!= ( listIn1312259492pend_a @ ( cons_a @ x @ ( append_a @ nil_a @ xs ) ) @ f ) ),
inference(forward_demodulation,[status(thm)],[f1013,f1009]) ).
thf(f1009,plain,
! [X3: a,X1: list_a,X5: list_a] :
( ( cons_a @ X3 @ ( append_a @ X5 @ X1 ) )
= ( append_a @ ( cons_a @ X3 @ X5 ) @ X1 ) ),
inference(equality_resolution,[status(thm)],[f1008]) ).
thf(f1008,plain,
! [X3: a,X0: list_a,X1: list_a,X5: list_a] :
( ( ( cons_a @ X3 @ X0 )
= ( append_a @ ( cons_a @ X3 @ X5 ) @ X1 ) )
| ( ( append_a @ X5 @ X1 )
!= X0 ) ),
inference(equality_resolution,[status(thm)],[f973]) ).
thf(f973,plain,
! [X2: list_a,X3: a,X0: list_a,X1: list_a,X5: list_a] :
( ( ( cons_a @ X3 @ X0 )
= ( append_a @ X2 @ X1 ) )
| ( ( cons_a @ X3 @ X5 )
!= X2 )
| ( ( append_a @ X5 @ X1 )
!= X0 ) ),
inference(cnf_transformation,[status(thm)],[f883]) ).
thf(f883,plain,
! [X0: list_a,X1: list_a,X2: list_a,X3: a] :
( ( ( ( ( cons_a @ X3 @ ( sK65 @ X3 @ X2 @ X1 @ X0 ) )
= X2 )
& ( ( append_a @ ( sK65 @ X3 @ X2 @ X1 @ X0 ) @ X1 )
= X0 ) )
| ( ( nil_a = X2 )
& ( ( cons_a @ X3 @ X0 )
= X1 ) )
| ( ( cons_a @ X3 @ X0 )
!= ( append_a @ X2 @ X1 ) ) )
& ( ( ( cons_a @ X3 @ X0 )
= ( append_a @ X2 @ X1 ) )
| ( ! [X5: list_a] :
( ( ( cons_a @ X3 @ X5 )
!= X2 )
| ( ( append_a @ X5 @ X1 )
!= X0 ) )
& ( ( nil_a != X2 )
| ( ( cons_a @ X3 @ X0 )
!= X1 ) ) ) ) ),
inference(skolemisation,[status(esa),new_symbols(skolem,[sK65])],[f881,f882]) ).
thf(f882,plain,
! [X0: list_a,X1: list_a,X2: list_a,X3: a] :
( ? [X4: list_a] :
( ( ( cons_a @ X3 @ X4 )
= X2 )
& ( ( append_a @ X4 @ X1 )
= X0 ) )
=> ( ( ( cons_a @ X3 @ ( sK65 @ X3 @ X2 @ X1 @ X0 ) )
= X2 )
& ( ( append_a @ ( sK65 @ X3 @ X2 @ X1 @ X0 ) @ X1 )
= X0 ) ) ),
introduced(definition,[],[choice_axiom]) ).
thf(f881,plain,
! [X0: list_a,X1: list_a,X2: list_a,X3: a] :
( ( ? [X4: list_a] :
( ( ( cons_a @ X3 @ X4 )
= X2 )
& ( ( append_a @ X4 @ X1 )
= X0 ) )
| ( ( nil_a = X2 )
& ( ( cons_a @ X3 @ X0 )
= X1 ) )
| ( ( cons_a @ X3 @ X0 )
!= ( append_a @ X2 @ X1 ) ) )
& ( ( ( cons_a @ X3 @ X0 )
= ( append_a @ X2 @ X1 ) )
| ( ! [X5: list_a] :
( ( ( cons_a @ X3 @ X5 )
!= X2 )
| ( ( append_a @ X5 @ X1 )
!= X0 ) )
& ( ( nil_a != X2 )
| ( ( cons_a @ X3 @ X0 )
!= X1 ) ) ) ) ),
inference(rectify,[status(thm)],[f880]) ).
thf(f880,plain,
! [X0: list_a,X1: list_a,X2: list_a,X3: a] :
( ( ? [X4: list_a] :
( ( ( cons_a @ X3 @ X4 )
= X2 )
& ( ( append_a @ X4 @ X1 )
= X0 ) )
| ( ( nil_a = X2 )
& ( ( cons_a @ X3 @ X0 )
= X1 ) )
| ( ( cons_a @ X3 @ X0 )
!= ( append_a @ X2 @ X1 ) ) )
& ( ( ( cons_a @ X3 @ X0 )
= ( append_a @ X2 @ X1 ) )
| ( ! [X4: list_a] :
( ( ( cons_a @ X3 @ X4 )
!= X2 )
| ( ( append_a @ X4 @ X1 )
!= X0 ) )
& ( ( nil_a != X2 )
| ( ( cons_a @ X3 @ X0 )
!= X1 ) ) ) ) ),
inference(flattening,[status(thm)],[f879]) ).
thf(f879,plain,
! [X0: list_a,X1: list_a,X2: list_a,X3: a] :
( ( ? [X4: list_a] :
( ( ( cons_a @ X3 @ X4 )
= X2 )
& ( ( append_a @ X4 @ X1 )
= X0 ) )
| ( ( nil_a = X2 )
& ( ( cons_a @ X3 @ X0 )
= X1 ) )
| ( ( cons_a @ X3 @ X0 )
!= ( append_a @ X2 @ X1 ) ) )
& ( ( ( cons_a @ X3 @ X0 )
= ( append_a @ X2 @ X1 ) )
| ( ! [X4: list_a] :
( ( ( cons_a @ X3 @ X4 )
!= X2 )
| ( ( append_a @ X4 @ X1 )
!= X0 ) )
& ( ( nil_a != X2 )
| ( ( cons_a @ X3 @ X0 )
!= X1 ) ) ) ) ),
inference(nnf_transformation,[status(thm)],[f442]) ).
thf(f442,plain,
! [X0: list_a,X1: list_a,X2: list_a,X3: a] :
( ( ? [X4: list_a] :
( ( ( cons_a @ X3 @ X4 )
= X2 )
& ( ( append_a @ X4 @ X1 )
= X0 ) )
| ( ( nil_a = X2 )
& ( ( cons_a @ X3 @ X0 )
= X1 ) ) )
<=> ( ( cons_a @ X3 @ X0 )
= ( append_a @ X2 @ X1 ) ) ),
inference(fool_elimination,[status(thm)],[f441]) ).
thf(f441,plain,
! [X0: list_a,X1: list_a,X2: list_a,X3: a] :
( ( ( ( cons_a @ X3 @ X0 )
= ( append_a @ X2 @ X1 ) )
= ( ? [X4: list_a] :
( ( ( cons_a @ X3 @ X4 )
= X2 )
& ( ( append_a @ X4 @ X1 )
= X0 ) ) ) )
| ( ( ( cons_a @ X3 @ X0 )
= X1 )
& ( nil_a = X2 ) ) ),
inference(rectify,[status(thm)],[f181]) ).
thf(f181,axiom,
! [X12: list_a,X48: list_a,X15: list_a,X24: a] :
( ( ( ( cons_a @ X24 @ X12 )
= ( append_a @ X15 @ X48 ) )
= ( ? [X57: list_a] :
( ( ( cons_a @ X24 @ X57 )
= X15 )
& ( ( append_a @ X57 @ X48 )
= X12 ) ) ) )
| ( ( ( cons_a @ X24 @ X12 )
= X48 )
& ( nil_a = X15 ) ) ),
file('/export/starexec/sandbox2/tmp/tmp.5LVVyH7wPu/DTF2THF_20820.p',fact_180_Cons__eq__append__conv) ).
thf(f1013,plain,
( ( listIn1312259492pend_a @ ( cons_a @ x @ xs ) @ f )
!= ( listIn1312259492pend_a @ ( append_a @ ( cons_a @ x @ nil_a ) @ xs ) @ f ) ),
inference(superposition,[status(thm)],[f911,f943]) ).
thf(f943,plain,
! [X2: list_a,X0: nat > a,X1: list_a] :
( ( listIn1312259492pend_a @ X2 @ ( listIn1312259492pend_a @ X1 @ X0 ) )
= ( listIn1312259492pend_a @ ( append_a @ X2 @ X1 ) @ X0 ) ),
inference(cnf_transformation,[status(thm)],[f748]) ).
thf(f748,plain,
! [X0: nat > a,X1: list_a,X2: list_a] :
( ( listIn1312259492pend_a @ X2 @ ( listIn1312259492pend_a @ X1 @ X0 ) )
= ( listIn1312259492pend_a @ ( append_a @ X2 @ X1 ) @ X0 ) ),
inference(rectify,[status(thm)],[f152]) ).
thf(f152,axiom,
! [X0: nat > a,X15: list_a,X12: list_a] :
( ( listIn1312259492pend_a @ X12 @ ( listIn1312259492pend_a @ X15 @ X0 ) )
= ( listIn1312259492pend_a @ ( append_a @ X12 @ X15 ) @ X0 ) ),
file('/export/starexec/sandbox2/tmp/tmp.5LVVyH7wPu/DTF2THF_20820.p',fact_151_i__append__assoc) ).
thf(f911,plain,
( ( listIn1312259492pend_a @ ( cons_a @ x @ xs ) @ f )
!= ( listIn1312259492pend_a @ ( cons_a @ x @ nil_a ) @ ( listIn1312259492pend_a @ xs @ f ) ) ),
inference(cnf_transformation,[status(thm)],[f747]) ).
thf(f747,plain,
( ( listIn1312259492pend_a @ ( cons_a @ x @ xs ) @ f )
!= ( listIn1312259492pend_a @ ( cons_a @ x @ nil_a ) @ ( listIn1312259492pend_a @ xs @ f ) ) ),
inference(flattening,[status(thm)],[f357]) ).
thf(f357,negated_conjecture,
( ( listIn1312259492pend_a @ ( cons_a @ x @ xs ) @ f )
!= ( listIn1312259492pend_a @ ( cons_a @ x @ nil_a ) @ ( listIn1312259492pend_a @ xs @ f ) ) ),
inference(negated_conjecture,[status(cth)],[f356]) ).
thf(f356,conjecture,
( ( listIn1312259492pend_a @ ( cons_a @ x @ xs ) @ f )
= ( listIn1312259492pend_a @ ( cons_a @ x @ nil_a ) @ ( listIn1312259492pend_a @ xs @ f ) ) ),
file('/export/starexec/sandbox2/tmp/tmp.5LVVyH7wPu/DTF2THF_20820.p',conj_0) ).
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.00/0.11 % Problem : ITP100^1 : TPTP v9.2.1. Released v7.5.0.
% 0.11/0.13 % Command : /export/starexec/sandbox2/solver/bin/run_DT2H2X /export/starexec/sandbox2/benchmark/theBenchmark.p 300
% 0.15/0.33 % Computer : n027.cluster.edu
% 0.15/0.33 % Model : x86_64 x86_64
% 0.15/0.33 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.15/0.33 % Memory : 8042.1875MB
% 0.15/0.33 % OS : Linux 3.10.0-693.el7.x86_64
% 0.15/0.33 % CPULimit : 300
% 0.15/0.33 % WCLimit : 300
% 0.15/0.33 % DateTime : Tue Feb 24 08:26:37 EST 2026
% 0.15/0.33 % CPUTime :
% 0.15/0.34 Running /export/starexec/sandbox2/solver/bin/run_DT2H2X /export/starexec/sandbox2/benchmark/theBenchmark.p 300
% 0.27/0.45 ---- Original DTF file ---
% 0.27/0.45 thf(spec,logic,$$dhol).
% 0.27/0.45 %------------------------------------------------------------------------------
% 0.27/0.45 % File : ITP100^1 : TPTP v9.2.1. Released v7.5.0.
% 0.27/0.45 % Domain : Interactive Theorem Proving
% 0.27/0.45 % Problem : Sledgehammer ListInf problem prob_52__5408414_1
% 0.27/0.45 % Version : Especial.
% 0.27/0.45 % English :
% 0.27/0.45
% 0.27/0.45 % Refs : [BH+15] Blanchette et al. (2015), Mining the Archive of Formal
% 0.27/0.45 % : [Des21] Desharnais (2021), Email to Geoff Sutcliffe
% 0.27/0.45 % Source : [Des21]
% 0.27/0.45 % Names : ListInf/prob_52__5408414_1 [Des21]
% 0.27/0.45
% 0.27/0.45 % Status : Theorem
% 0.27/0.45 % Rating : 0.33 v9.1.0, 0.25 v9.0.0, 0.30 v8.2.0, 0.38 v8.1.0, 0.27 v7.5.0
% 0.27/0.45 % Syntax : Number of formulae : 450 ( 197 unt; 94 typ; 0 def)
% 0.27/0.45 % Number of atoms : 947 ( 705 equ; 0 cnn)
% 0.27/0.45 % Maximal formula atoms : 13 ( 2 avg)
% 0.27/0.45 % Number of connectives : 3688 ( 230 ~; 53 |; 136 &;2783 @)
% 0.27/0.45 % ( 0 <=>; 486 =>; 0 <=; 0 <~>)
% 0.27/0.45 % Maximal formula depth : 29 ( 7 avg)
% 0.27/0.45 % Number of types : 10 ( 9 usr)
% 0.27/0.45 % Number of type conns : 477 ( 477 >; 0 *; 0 +; 0 <<)
% 0.27/0.45 % Number of symbols : 88 ( 85 usr; 8 con; 0-3 aty)
% 0.27/0.45 % Number of variables : 1277 ( 28 ^;1135 !; 114 ?;1277 :)
% 0.27/0.45 % SPC : TH0_THM_EQU_NAR
% 0.27/0.45
% 0.27/0.45 % Comments : This file was generated by Sledgehammer 2021-02-23 15:30:11.750
% 0.27/0.45 %------------------------------------------------------------------------------
% 0.27/0.45 % Could-be-implicit typings (9)
% 0.27/0.45 thf(ty_n_t__List__Olist_It__List__Olist_It__List__Olist_Itf__a_J_J_J,type,
% 0.27/0.45 list_list_list_a: $tType ).
% 0.27/0.45
% 0.27/0.45 thf(ty_n_t__Set__Oset_It__List__Olist_It__List__Olist_Itf__a_J_J_J,type,
% 0.27/0.45 set_list_list_a: $tType ).
% 0.27/0.45
% 0.27/0.45 thf(ty_n_t__List__Olist_It__List__Olist_Itf__a_J_J,type,
% 0.27/0.45 list_list_a: $tType ).
% 0.27/0.45
% 0.27/0.45 thf(ty_n_t__Set__Oset_It__List__Olist_Itf__a_J_J,type,
% 0.27/0.45 set_list_a: $tType ).
% 0.27/0.45
% 0.27/0.45 thf(ty_n_t__List__Olist_It__Nat__Onat_J,type,
% 0.27/0.45 list_nat: $tType ).
% 0.27/0.45
% 0.27/0.45 thf(ty_n_t__List__Olist_Itf__a_J,type,
% 0.27/0.45 list_a: $tType ).
% 0.27/0.45
% 0.27/0.45 thf(ty_n_t__Set__Oset_Itf__a_J,type,
% 0.27/0.45 set_a: $tType ).
% 0.27/0.45
% 0.27/0.45 thf(ty_n_t__Nat__Onat,type,
% 0.27/0.45 nat: $tType ).
% 0.27/0.45
% 0.27/0.45 thf(ty_n_tf__a,type,
% 0.27/0.45 a: $tType ).
% 0.27/0.45
% 0.27/0.45 % Explicit typings (85)
% 0.27/0.45 thf(sy_c_BNF__Greatest__Fixpoint_OShift_001t__List__Olist_Itf__a_J,type,
% 0.27/0.45 bNF_Gr1972240547list_a: set_list_list_a > list_a > set_list_list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_BNF__Greatest__Fixpoint_OShift_001tf__a,type,
% 0.27/0.45 bNF_Greatest_Shift_a: set_list_a > a > set_list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_BNF__Greatest__Fixpoint_OSucc_001t__List__Olist_Itf__a_J,type,
% 0.27/0.45 bNF_Gr1046450207list_a: set_list_list_a > list_list_a > set_list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_BNF__Greatest__Fixpoint_OSucc_001tf__a,type,
% 0.27/0.45 bNF_Greatest_Succ_a: set_list_a > list_a > set_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_If_001t__List__Olist_Itf__a_J,type,
% 0.27/0.45 if_list_a: $o > list_a > list_a > list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List2_Olist__ord_001t__Nat__Onat,type,
% 0.27/0.45 list_ord_nat: ( nat > nat > $o ) > list_nat > $o ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List2_Olist__strict__asc_001t__Nat__Onat,type,
% 0.27/0.45 list_strict_asc_nat: list_nat > $o ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List2_Omap2_001tf__a_001tf__a_001tf__a,type,
% 0.27/0.45 map2_a_a_a: ( a > a > a ) > list_a > list_a > list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_ListInf__Mirabelle__akbajwqfbr_Oi__append_001t__List__Olist_Itf__a_J,type,
% 0.27/0.45 listIn1753026346list_a: list_list_a > ( nat > list_a ) > nat > list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_ListInf__Mirabelle__akbajwqfbr_Oi__append_001tf__a,type,
% 0.27/0.45 listIn1312259492pend_a: list_a > ( nat > a ) > nat > a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Oappend_001t__List__Olist_It__List__Olist_Itf__a_J_J,type,
% 0.27/0.45 append_list_list_a: list_list_list_a > list_list_list_a > list_list_list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Oappend_001t__List__Olist_Itf__a_J,type,
% 0.27/0.45 append_list_a: list_list_a > list_list_a > list_list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Oappend_001t__Nat__Onat,type,
% 0.27/0.45 append_nat: list_nat > list_nat > list_nat ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Oappend_001tf__a,type,
% 0.27/0.45 append_a: list_a > list_a > list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Obind_001t__List__Olist_Itf__a_J_001t__List__Olist_Itf__a_J,type,
% 0.27/0.45 bind_list_a_list_a: list_list_a > ( list_a > list_list_a ) > list_list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Obind_001t__List__Olist_Itf__a_J_001tf__a,type,
% 0.27/0.45 bind_list_a_a: list_list_a > ( list_a > list_a ) > list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Obind_001tf__a_001t__List__Olist_Itf__a_J,type,
% 0.27/0.45 bind_a_list_a: list_a > ( a > list_list_a ) > list_list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Obind_001tf__a_001tf__a,type,
% 0.27/0.45 bind_a_a: list_a > ( a > list_a ) > list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Obutlast_001t__List__Olist_Itf__a_J,type,
% 0.27/0.45 butlast_list_a: list_list_a > list_list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Obutlast_001tf__a,type,
% 0.27/0.45 butlast_a: list_a > list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Oconcat_001t__List__Olist_Itf__a_J,type,
% 0.27/0.45 concat_list_a: list_list_list_a > list_list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Oconcat_001tf__a,type,
% 0.27/0.45 concat_a: list_list_a > list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Odistinct__adj_001t__List__Olist_Itf__a_J,type,
% 0.27/0.45 distinct_adj_list_a: list_list_a > $o ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Odistinct__adj_001tf__a,type,
% 0.27/0.45 distinct_adj_a: list_a > $o ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Ofoldr_001t__List__Olist_It__List__Olist_Itf__a_J_J_001t__List__Olist_It__List__Olist_Itf__a_J_J,type,
% 0.27/0.45 foldr_769741863list_a: ( list_list_a > list_list_a > list_list_a ) > list_list_list_a > list_list_a > list_list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Ofoldr_001t__List__Olist_Itf__a_J_001t__List__Olist_Itf__a_J,type,
% 0.27/0.45 foldr_list_a_list_a: ( list_a > list_a > list_a ) > list_list_a > list_a > list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Oinsert_001t__List__Olist_Itf__a_J,type,
% 0.27/0.45 insert_list_a: list_a > list_list_a > list_list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Oinsert_001tf__a,type,
% 0.27/0.45 insert_a: a > list_a > list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Olast_001t__List__Olist_Itf__a_J,type,
% 0.27/0.45 last_list_a: list_list_a > list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Olast_001tf__a,type,
% 0.27/0.45 last_a: list_a > a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Olist_OCons_001t__List__Olist_It__List__Olist_Itf__a_J_J,type,
% 0.27/0.45 cons_list_list_a: list_list_a > list_list_list_a > list_list_list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Olist_OCons_001t__List__Olist_Itf__a_J,type,
% 0.27/0.45 cons_list_a: list_a > list_list_a > list_list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Olist_OCons_001t__Nat__Onat,type,
% 0.27/0.45 cons_nat: nat > list_nat > list_nat ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Olist_OCons_001tf__a,type,
% 0.27/0.45 cons_a: a > list_a > list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Olist_ONil_001t__List__Olist_It__List__Olist_Itf__a_J_J,type,
% 0.27/0.45 nil_list_list_a: list_list_list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Olist_ONil_001t__List__Olist_Itf__a_J,type,
% 0.27/0.45 nil_list_a: list_list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Olist_ONil_001t__Nat__Onat,type,
% 0.27/0.45 nil_nat: list_nat ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Olist_ONil_001tf__a,type,
% 0.27/0.45 nil_a: list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Olist_Ohd_001t__List__Olist_It__List__Olist_Itf__a_J_J,type,
% 0.27/0.45 hd_list_list_a: list_list_list_a > list_list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Olist_Ohd_001t__List__Olist_Itf__a_J,type,
% 0.27/0.45 hd_list_a: list_list_a > list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Olist_Ohd_001tf__a,type,
% 0.27/0.45 hd_a: list_a > a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Olist_Otl_001t__List__Olist_Itf__a_J,type,
% 0.27/0.45 tl_list_a: list_list_a > list_list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Olist_Otl_001tf__a,type,
% 0.27/0.45 tl_a: list_a > list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Olist__ex1_001t__List__Olist_Itf__a_J,type,
% 0.27/0.45 list_ex1_list_a: ( list_a > $o ) > list_list_a > $o ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Olist__ex1_001tf__a,type,
% 0.27/0.45 list_ex1_a: ( a > $o ) > list_a > $o ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Olistrelp_001t__List__Olist_Itf__a_J_001t__List__Olist_Itf__a_J,type,
% 0.27/0.45 listre1221556159list_a: ( list_a > list_a > $o ) > list_list_a > list_list_a > $o ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Olistrelp_001t__List__Olist_Itf__a_J_001tf__a,type,
% 0.27/0.45 listrelp_list_a_a: ( list_a > a > $o ) > list_list_a > list_a > $o ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Olistrelp_001tf__a_001t__List__Olist_Itf__a_J,type,
% 0.27/0.45 listrelp_a_list_a: ( a > list_a > $o ) > list_a > list_list_a > $o ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Olistrelp_001tf__a_001tf__a,type,
% 0.27/0.45 listrelp_a_a: ( a > a > $o ) > list_a > list_a > $o ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Omap__tailrec__rev_001t__List__Olist_Itf__a_J_001t__List__Olist_Itf__a_J,type,
% 0.27/0.45 map_ta982122357list_a: ( list_a > list_a ) > list_list_a > list_list_a > list_list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Omap__tailrec__rev_001t__List__Olist_Itf__a_J_001tf__a,type,
% 0.27/0.45 map_ta2002079599st_a_a: ( list_a > a ) > list_list_a > list_a > list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Omap__tailrec__rev_001tf__a_001t__List__Olist_Itf__a_J,type,
% 0.27/0.45 map_ta41997947list_a: ( a > list_a ) > list_a > list_list_a > list_list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Omap__tailrec__rev_001tf__a_001tf__a,type,
% 0.27/0.45 map_tailrec_rev_a_a: ( a > a ) > list_a > list_a > list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Omaps_001t__List__Olist_Itf__a_J_001t__List__Olist_Itf__a_J,type,
% 0.27/0.45 maps_list_a_list_a: ( list_a > list_list_a ) > list_list_a > list_list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Omaps_001t__List__Olist_Itf__a_J_001tf__a,type,
% 0.27/0.45 maps_list_a_a: ( list_a > list_a ) > list_list_a > list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Omaps_001tf__a_001t__List__Olist_Itf__a_J,type,
% 0.27/0.45 maps_a_list_a: ( a > list_list_a ) > list_a > list_list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Omaps_001tf__a_001tf__a,type,
% 0.27/0.45 maps_a_a: ( a > list_a ) > list_a > list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Omember_001t__List__Olist_Itf__a_J,type,
% 0.27/0.45 member_list_a: list_list_a > list_a > $o ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Omember_001tf__a,type,
% 0.27/0.45 member_a: list_a > a > $o ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Oord_Olexordp__eq_001t__List__Olist_Itf__a_J,type,
% 0.27/0.45 lexordp_eq_list_a: ( list_a > list_a > $o ) > list_list_a > list_list_a > $o ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Oord_Olexordp__eq_001tf__a,type,
% 0.27/0.45 lexordp_eq_a: ( a > a > $o ) > list_a > list_a > $o ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Oord__class_Olexordp_001t__Nat__Onat,type,
% 0.27/0.45 ord_lexordp_nat: list_nat > list_nat > $o ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Oord__class_Olexordp__eq_001t__Nat__Onat,type,
% 0.27/0.45 ord_lexordp_eq_nat: list_nat > list_nat > $o ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Oproduct__lists_001t__List__Olist_Itf__a_J,type,
% 0.27/0.45 product_lists_list_a: list_list_list_a > list_list_list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Oproduct__lists_001tf__a,type,
% 0.27/0.45 product_lists_a: list_list_a > list_list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Oremdups__adj_001tf__a,type,
% 0.27/0.45 remdups_adj_a: list_a > list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Orotate1_001t__List__Olist_Itf__a_J,type,
% 0.27/0.45 rotate1_list_a: list_list_a > list_list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Orotate1_001tf__a,type,
% 0.27/0.45 rotate1_a: list_a > list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Oshuffles_001tf__a,type,
% 0.27/0.45 shuffles_a: list_a > list_a > set_list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Osplice_001t__List__Olist_Itf__a_J,type,
% 0.27/0.45 splice_list_a: list_list_a > list_list_a > list_list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Osplice_001tf__a,type,
% 0.27/0.45 splice_a: list_a > list_a > list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Osubseqs_001t__List__Olist_Itf__a_J,type,
% 0.27/0.45 subseqs_list_a: list_list_a > list_list_list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Osubseqs_001tf__a,type,
% 0.27/0.45 subseqs_a: list_a > list_list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Osuccessively_001t__List__Olist_Itf__a_J,type,
% 0.27/0.45 successively_list_a: ( list_a > list_a > $o ) > list_list_a > $o ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_List_Osuccessively_001tf__a,type,
% 0.27/0.45 successively_a: ( a > a > $o ) > list_a > $o ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_Itf__a_J,type,
% 0.27/0.45 size_size_list_a: list_a > nat ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_Orderings_Oord__class_Oless_001t__Nat__Onat,type,
% 0.27/0.45 ord_less_nat: nat > nat > $o ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_Set_OCollect_001t__List__Olist_Itf__a_J,type,
% 0.27/0.45 collect_list_a: ( list_a > $o ) > set_list_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_Set_OCollect_001tf__a,type,
% 0.27/0.45 collect_a: ( a > $o ) > set_a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_member_001t__List__Olist_It__List__Olist_Itf__a_J_J,type,
% 0.27/0.45 member_list_list_a: list_list_a > set_list_list_a > $o ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_member_001t__List__Olist_Itf__a_J,type,
% 0.27/0.45 member_list_a2: list_a > set_list_a > $o ).
% 0.27/0.45
% 0.27/0.45 thf(sy_c_member_001tf__a,type,
% 0.27/0.45 member_a2: a > set_a > $o ).
% 0.27/0.45
% 0.27/0.45 thf(sy_v_f,type,
% 0.27/0.45 f: nat > a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_v_x,type,
% 0.27/0.45 x: a ).
% 0.27/0.45
% 0.27/0.45 thf(sy_v_xs,type,
% 0.27/0.45 xs: list_a ).
% 0.27/0.45
% 0.27/0.45 % Relevant facts (352)
% 0.27/0.45 thf(fact_0_i__append__Nil,axiom,
% 0.27/0.45 ! [F: nat > list_a] :
% 0.27/0.45 ( ( listIn1753026346list_a @ nil_list_a @ F )
% 0.27/0.45 = F ) ).
% 0.27/0.45
% 0.27/0.45 % i_append_Nil
% 0.27/0.45 thf(fact_1_i__append__Nil,axiom,
% 0.27/0.45 ! [F: nat > a] :
% 0.27/0.45 ( ( listIn1312259492pend_a @ nil_a @ F )
% 0.27/0.45 = F ) ).
% 0.27/0.45
% 0.27/0.45 % i_append_Nil
% 0.27/0.45 thf(fact_2_list_Oinject,axiom,
% 0.27/0.45 ! [X21: list_a,X22: list_list_a,Y21: list_a,Y22: list_list_a] :
% 0.27/0.45 ( ( ( cons_list_a @ X21 @ X22 )
% 0.27/0.45 = ( cons_list_a @ Y21 @ Y22 ) )
% 0.27/0.45 = ( ( X21 = Y21 )
% 0.27/0.45 & ( X22 = Y22 ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % list.inject
% 0.27/0.45 thf(fact_3_list_Oinject,axiom,
% 0.27/0.45 ! [X21: a,X22: list_a,Y21: a,Y22: list_a] :
% 0.27/0.45 ( ( ( cons_a @ X21 @ X22 )
% 0.27/0.45 = ( cons_a @ Y21 @ Y22 ) )
% 0.27/0.45 = ( ( X21 = Y21 )
% 0.27/0.45 & ( X22 = Y22 ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % list.inject
% 0.27/0.45 thf(fact_4_list_Odistinct_I1_J,axiom,
% 0.27/0.45 ! [X21: list_a,X22: list_list_a] :
% 0.27/0.45 ( nil_list_a
% 0.27/0.45 != ( cons_list_a @ X21 @ X22 ) ) ).
% 0.27/0.45
% 0.27/0.45 % list.distinct(1)
% 0.27/0.45 thf(fact_5_list_Odistinct_I1_J,axiom,
% 0.27/0.45 ! [X21: a,X22: list_a] :
% 0.27/0.45 ( nil_a
% 0.27/0.45 != ( cons_a @ X21 @ X22 ) ) ).
% 0.27/0.45
% 0.27/0.45 % list.distinct(1)
% 0.27/0.45 thf(fact_6_list_OdiscI,axiom,
% 0.27/0.45 ! [List: list_list_a,X21: list_a,X22: list_list_a] :
% 0.27/0.45 ( ( List
% 0.27/0.45 = ( cons_list_a @ X21 @ X22 ) )
% 0.27/0.45 => ( List != nil_list_a ) ) ).
% 0.27/0.45
% 0.27/0.45 % list.discI
% 0.27/0.45 thf(fact_7_list_OdiscI,axiom,
% 0.27/0.45 ! [List: list_a,X21: a,X22: list_a] :
% 0.27/0.45 ( ( List
% 0.27/0.45 = ( cons_a @ X21 @ X22 ) )
% 0.27/0.45 => ( List != nil_a ) ) ).
% 0.27/0.45
% 0.27/0.45 % list.discI
% 0.27/0.45 thf(fact_8_list_Oexhaust,axiom,
% 0.27/0.45 ! [Y: list_list_a] :
% 0.27/0.45 ( ( Y != nil_list_a )
% 0.27/0.45 => ~ ! [X212: list_a,X222: list_list_a] :
% 0.27/0.45 ( Y
% 0.27/0.45 != ( cons_list_a @ X212 @ X222 ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % list.exhaust
% 0.27/0.45 thf(fact_9_list_Oexhaust,axiom,
% 0.27/0.45 ! [Y: list_a] :
% 0.27/0.45 ( ( Y != nil_a )
% 0.27/0.45 => ~ ! [X212: a,X222: list_a] :
% 0.27/0.45 ( Y
% 0.27/0.45 != ( cons_a @ X212 @ X222 ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % list.exhaust
% 0.27/0.45 thf(fact_10_list_Oinducts,axiom,
% 0.27/0.45 ! [P: list_list_a > $o,List: list_list_a] :
% 0.27/0.45 ( ( P @ nil_list_a )
% 0.27/0.45 => ( ! [X1: list_a,X2: list_list_a] :
% 0.27/0.45 ( ( P @ X2 )
% 0.27/0.45 => ( P @ ( cons_list_a @ X1 @ X2 ) ) )
% 0.27/0.45 => ( P @ List ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % list.inducts
% 0.27/0.45 thf(fact_11_list_Oinducts,axiom,
% 0.27/0.45 ! [P: list_a > $o,List: list_a] :
% 0.27/0.45 ( ( P @ nil_a )
% 0.27/0.45 => ( ! [X1: a,X2: list_a] :
% 0.27/0.45 ( ( P @ X2 )
% 0.27/0.45 => ( P @ ( cons_a @ X1 @ X2 ) ) )
% 0.27/0.45 => ( P @ List ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % list.inducts
% 0.27/0.45 thf(fact_12_neq__Nil__conv,axiom,
% 0.27/0.45 ! [Xs: list_list_a] :
% 0.27/0.45 ( ( Xs != nil_list_a )
% 0.27/0.45 = ( ? [Y2: list_a,Ys: list_list_a] :
% 0.27/0.45 ( Xs
% 0.27/0.45 = ( cons_list_a @ Y2 @ Ys ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % neq_Nil_conv
% 0.27/0.45 thf(fact_13_neq__Nil__conv,axiom,
% 0.27/0.45 ! [Xs: list_a] :
% 0.27/0.45 ( ( Xs != nil_a )
% 0.27/0.45 = ( ? [Y2: a,Ys: list_a] :
% 0.27/0.45 ( Xs
% 0.27/0.45 = ( cons_a @ Y2 @ Ys ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % neq_Nil_conv
% 0.27/0.45 thf(fact_14_list__induct2_H,axiom,
% 0.27/0.45 ! [P: list_a > list_list_a > $o,Xs: list_a,Ys2: list_list_a] :
% 0.27/0.45 ( ( P @ nil_a @ nil_list_a )
% 0.27/0.45 => ( ! [X: a,Xs2: list_a] : ( P @ ( cons_a @ X @ Xs2 ) @ nil_list_a )
% 0.27/0.45 => ( ! [Y3: list_a,Ys3: list_list_a] : ( P @ nil_a @ ( cons_list_a @ Y3 @ Ys3 ) )
% 0.27/0.45 => ( ! [X: a,Xs2: list_a,Y3: list_a,Ys3: list_list_a] :
% 0.27/0.45 ( ( P @ Xs2 @ Ys3 )
% 0.27/0.45 => ( P @ ( cons_a @ X @ Xs2 ) @ ( cons_list_a @ Y3 @ Ys3 ) ) )
% 0.27/0.45 => ( P @ Xs @ Ys2 ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % list_induct2'
% 0.27/0.45 thf(fact_15_list__induct2_H,axiom,
% 0.27/0.45 ! [P: list_list_a > list_a > $o,Xs: list_list_a,Ys2: list_a] :
% 0.27/0.45 ( ( P @ nil_list_a @ nil_a )
% 0.27/0.45 => ( ! [X: list_a,Xs2: list_list_a] : ( P @ ( cons_list_a @ X @ Xs2 ) @ nil_a )
% 0.27/0.45 => ( ! [Y3: a,Ys3: list_a] : ( P @ nil_list_a @ ( cons_a @ Y3 @ Ys3 ) )
% 0.27/0.45 => ( ! [X: list_a,Xs2: list_list_a,Y3: a,Ys3: list_a] :
% 0.27/0.45 ( ( P @ Xs2 @ Ys3 )
% 0.27/0.45 => ( P @ ( cons_list_a @ X @ Xs2 ) @ ( cons_a @ Y3 @ Ys3 ) ) )
% 0.27/0.45 => ( P @ Xs @ Ys2 ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % list_induct2'
% 0.27/0.45 thf(fact_16_list__induct2_H,axiom,
% 0.27/0.45 ! [P: list_list_a > list_list_a > $o,Xs: list_list_a,Ys2: list_list_a] :
% 0.27/0.45 ( ( P @ nil_list_a @ nil_list_a )
% 0.27/0.45 => ( ! [X: list_a,Xs2: list_list_a] : ( P @ ( cons_list_a @ X @ Xs2 ) @ nil_list_a )
% 0.27/0.45 => ( ! [Y3: list_a,Ys3: list_list_a] : ( P @ nil_list_a @ ( cons_list_a @ Y3 @ Ys3 ) )
% 0.27/0.45 => ( ! [X: list_a,Xs2: list_list_a,Y3: list_a,Ys3: list_list_a] :
% 0.27/0.45 ( ( P @ Xs2 @ Ys3 )
% 0.27/0.45 => ( P @ ( cons_list_a @ X @ Xs2 ) @ ( cons_list_a @ Y3 @ Ys3 ) ) )
% 0.27/0.45 => ( P @ Xs @ Ys2 ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % list_induct2'
% 0.27/0.45 thf(fact_17_list__induct2_H,axiom,
% 0.27/0.45 ! [P: list_a > list_a > $o,Xs: list_a,Ys2: list_a] :
% 0.27/0.45 ( ( P @ nil_a @ nil_a )
% 0.27/0.45 => ( ! [X: a,Xs2: list_a] : ( P @ ( cons_a @ X @ Xs2 ) @ nil_a )
% 0.27/0.45 => ( ! [Y3: a,Ys3: list_a] : ( P @ nil_a @ ( cons_a @ Y3 @ Ys3 ) )
% 0.27/0.45 => ( ! [X: a,Xs2: list_a,Y3: a,Ys3: list_a] :
% 0.27/0.45 ( ( P @ Xs2 @ Ys3 )
% 0.27/0.45 => ( P @ ( cons_a @ X @ Xs2 ) @ ( cons_a @ Y3 @ Ys3 ) ) )
% 0.27/0.45 => ( P @ Xs @ Ys2 ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % list_induct2'
% 0.27/0.45 thf(fact_18_splice_Oinduct,axiom,
% 0.27/0.45 ! [P: list_list_a > list_list_a > $o,A0: list_list_a,A1: list_list_a] :
% 0.27/0.45 ( ! [X_1: list_list_a] : ( P @ nil_list_a @ X_1 )
% 0.27/0.45 => ( ! [X: list_a,Xs2: list_list_a,Ys3: list_list_a] :
% 0.27/0.45 ( ( P @ Ys3 @ Xs2 )
% 0.27/0.45 => ( P @ ( cons_list_a @ X @ Xs2 ) @ Ys3 ) )
% 0.27/0.45 => ( P @ A0 @ A1 ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % splice.induct
% 0.27/0.45 thf(fact_19_splice_Oinduct,axiom,
% 0.27/0.45 ! [P: list_a > list_a > $o,A0: list_a,A1: list_a] :
% 0.27/0.45 ( ! [X_1: list_a] : ( P @ nil_a @ X_1 )
% 0.27/0.45 => ( ! [X: a,Xs2: list_a,Ys3: list_a] :
% 0.27/0.45 ( ( P @ Ys3 @ Xs2 )
% 0.27/0.45 => ( P @ ( cons_a @ X @ Xs2 ) @ Ys3 ) )
% 0.27/0.45 => ( P @ A0 @ A1 ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % splice.induct
% 0.27/0.45 thf(fact_20_induct__list012,axiom,
% 0.27/0.45 ! [P: list_list_a > $o,Xs: list_list_a] :
% 0.27/0.45 ( ( P @ nil_list_a )
% 0.27/0.45 => ( ! [X: list_a] : ( P @ ( cons_list_a @ X @ nil_list_a ) )
% 0.27/0.45 => ( ! [X: list_a,Y3: list_a,Zs: list_list_a] :
% 0.27/0.45 ( ( P @ Zs )
% 0.27/0.45 => ( ( P @ ( cons_list_a @ Y3 @ Zs ) )
% 0.27/0.45 => ( P @ ( cons_list_a @ X @ ( cons_list_a @ Y3 @ Zs ) ) ) ) )
% 0.27/0.45 => ( P @ Xs ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % induct_list012
% 0.27/0.45 thf(fact_21_induct__list012,axiom,
% 0.27/0.45 ! [P: list_a > $o,Xs: list_a] :
% 0.27/0.45 ( ( P @ nil_a )
% 0.27/0.45 => ( ! [X: a] : ( P @ ( cons_a @ X @ nil_a ) )
% 0.27/0.45 => ( ! [X: a,Y3: a,Zs: list_a] :
% 0.27/0.45 ( ( P @ Zs )
% 0.27/0.45 => ( ( P @ ( cons_a @ Y3 @ Zs ) )
% 0.27/0.45 => ( P @ ( cons_a @ X @ ( cons_a @ Y3 @ Zs ) ) ) ) )
% 0.27/0.45 => ( P @ Xs ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % induct_list012
% 0.27/0.45 thf(fact_22_shuffles_Oinduct,axiom,
% 0.27/0.45 ! [P: list_list_a > list_list_a > $o,A0: list_list_a,A1: list_list_a] :
% 0.27/0.45 ( ! [X_1: list_list_a] : ( P @ nil_list_a @ X_1 )
% 0.27/0.45 => ( ! [Xs2: list_list_a] : ( P @ Xs2 @ nil_list_a )
% 0.27/0.45 => ( ! [X: list_a,Xs2: list_list_a,Y3: list_a,Ys3: list_list_a] :
% 0.27/0.45 ( ( P @ Xs2 @ ( cons_list_a @ Y3 @ Ys3 ) )
% 0.27/0.45 => ( ( P @ ( cons_list_a @ X @ Xs2 ) @ Ys3 )
% 0.27/0.45 => ( P @ ( cons_list_a @ X @ Xs2 ) @ ( cons_list_a @ Y3 @ Ys3 ) ) ) )
% 0.27/0.45 => ( P @ A0 @ A1 ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % shuffles.induct
% 0.27/0.45 thf(fact_23_shuffles_Oinduct,axiom,
% 0.27/0.45 ! [P: list_a > list_a > $o,A0: list_a,A1: list_a] :
% 0.27/0.45 ( ! [X_1: list_a] : ( P @ nil_a @ X_1 )
% 0.27/0.45 => ( ! [Xs2: list_a] : ( P @ Xs2 @ nil_a )
% 0.27/0.45 => ( ! [X: a,Xs2: list_a,Y3: a,Ys3: list_a] :
% 0.27/0.45 ( ( P @ Xs2 @ ( cons_a @ Y3 @ Ys3 ) )
% 0.27/0.45 => ( ( P @ ( cons_a @ X @ Xs2 ) @ Ys3 )
% 0.27/0.45 => ( P @ ( cons_a @ X @ Xs2 ) @ ( cons_a @ Y3 @ Ys3 ) ) ) )
% 0.27/0.45 => ( P @ A0 @ A1 ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % shuffles.induct
% 0.27/0.45 thf(fact_24_not__Cons__self2,axiom,
% 0.27/0.45 ! [X3: list_a,Xs: list_list_a] :
% 0.27/0.45 ( ( cons_list_a @ X3 @ Xs )
% 0.27/0.45 != Xs ) ).
% 0.27/0.45
% 0.27/0.45 % not_Cons_self2
% 0.27/0.45 thf(fact_25_not__Cons__self2,axiom,
% 0.27/0.45 ! [X3: a,Xs: list_a] :
% 0.27/0.45 ( ( cons_a @ X3 @ Xs )
% 0.27/0.45 != Xs ) ).
% 0.27/0.45
% 0.27/0.45 % not_Cons_self2
% 0.27/0.45 thf(fact_26_map__tailrec__rev_Oinduct,axiom,
% 0.27/0.45 ! [P: ( list_a > a ) > list_list_a > list_a > $o,A0: list_a > a,A1: list_list_a,A2: list_a] :
% 0.27/0.45 ( ! [F2: list_a > a,X_1: list_a] : ( P @ F2 @ nil_list_a @ X_1 )
% 0.27/0.45 => ( ! [F2: list_a > a,A: list_a,As: list_list_a,Bs: list_a] :
% 0.27/0.45 ( ( P @ F2 @ As @ ( cons_a @ ( F2 @ A ) @ Bs ) )
% 0.27/0.45 => ( P @ F2 @ ( cons_list_a @ A @ As ) @ Bs ) )
% 0.27/0.45 => ( P @ A0 @ A1 @ A2 ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % map_tailrec_rev.induct
% 0.27/0.45 thf(fact_27_map__tailrec__rev_Oinduct,axiom,
% 0.27/0.45 ! [P: ( a > list_a ) > list_a > list_list_a > $o,A0: a > list_a,A1: list_a,A2: list_list_a] :
% 0.27/0.45 ( ! [F2: a > list_a,X_1: list_list_a] : ( P @ F2 @ nil_a @ X_1 )
% 0.27/0.45 => ( ! [F2: a > list_a,A: a,As: list_a,Bs: list_list_a] :
% 0.27/0.45 ( ( P @ F2 @ As @ ( cons_list_a @ ( F2 @ A ) @ Bs ) )
% 0.27/0.45 => ( P @ F2 @ ( cons_a @ A @ As ) @ Bs ) )
% 0.27/0.45 => ( P @ A0 @ A1 @ A2 ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % map_tailrec_rev.induct
% 0.27/0.45 thf(fact_28_map__tailrec__rev_Oinduct,axiom,
% 0.27/0.45 ! [P: ( list_a > list_a ) > list_list_a > list_list_a > $o,A0: list_a > list_a,A1: list_list_a,A2: list_list_a] :
% 0.27/0.45 ( ! [F2: list_a > list_a,X_1: list_list_a] : ( P @ F2 @ nil_list_a @ X_1 )
% 0.27/0.45 => ( ! [F2: list_a > list_a,A: list_a,As: list_list_a,Bs: list_list_a] :
% 0.27/0.45 ( ( P @ F2 @ As @ ( cons_list_a @ ( F2 @ A ) @ Bs ) )
% 0.27/0.45 => ( P @ F2 @ ( cons_list_a @ A @ As ) @ Bs ) )
% 0.27/0.45 => ( P @ A0 @ A1 @ A2 ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % map_tailrec_rev.induct
% 0.27/0.45 thf(fact_29_map__tailrec__rev_Oinduct,axiom,
% 0.27/0.45 ! [P: ( a > a ) > list_a > list_a > $o,A0: a > a,A1: list_a,A2: list_a] :
% 0.27/0.45 ( ! [F2: a > a,X_1: list_a] : ( P @ F2 @ nil_a @ X_1 )
% 0.27/0.45 => ( ! [F2: a > a,A: a,As: list_a,Bs: list_a] :
% 0.27/0.45 ( ( P @ F2 @ As @ ( cons_a @ ( F2 @ A ) @ Bs ) )
% 0.27/0.45 => ( P @ F2 @ ( cons_a @ A @ As ) @ Bs ) )
% 0.27/0.45 => ( P @ A0 @ A1 @ A2 ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % map_tailrec_rev.induct
% 0.27/0.45 thf(fact_30_list__nonempty__induct,axiom,
% 0.27/0.45 ! [Xs: list_list_a,P: list_list_a > $o] :
% 0.27/0.45 ( ( Xs != nil_list_a )
% 0.27/0.45 => ( ! [X: list_a] : ( P @ ( cons_list_a @ X @ nil_list_a ) )
% 0.27/0.45 => ( ! [X: list_a,Xs2: list_list_a] :
% 0.27/0.45 ( ( Xs2 != nil_list_a )
% 0.27/0.45 => ( ( P @ Xs2 )
% 0.27/0.45 => ( P @ ( cons_list_a @ X @ Xs2 ) ) ) )
% 0.27/0.45 => ( P @ Xs ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % list_nonempty_induct
% 0.27/0.45 thf(fact_31_list__nonempty__induct,axiom,
% 0.27/0.45 ! [Xs: list_a,P: list_a > $o] :
% 0.27/0.45 ( ( Xs != nil_a )
% 0.27/0.45 => ( ! [X: a] : ( P @ ( cons_a @ X @ nil_a ) )
% 0.27/0.45 => ( ! [X: a,Xs2: list_a] :
% 0.27/0.45 ( ( Xs2 != nil_a )
% 0.27/0.45 => ( ( P @ Xs2 )
% 0.27/0.45 => ( P @ ( cons_a @ X @ Xs2 ) ) ) )
% 0.27/0.45 => ( P @ Xs ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % list_nonempty_induct
% 0.27/0.45 thf(fact_32_successively_Oinduct,axiom,
% 0.27/0.45 ! [P: ( list_a > list_a > $o ) > list_list_a > $o,A0: list_a > list_a > $o,A1: list_list_a] :
% 0.27/0.45 ( ! [P2: list_a > list_a > $o] : ( P @ P2 @ nil_list_a )
% 0.27/0.45 => ( ! [P2: list_a > list_a > $o,X: list_a] : ( P @ P2 @ ( cons_list_a @ X @ nil_list_a ) )
% 0.27/0.45 => ( ! [P2: list_a > list_a > $o,X: list_a,Y3: list_a,Xs2: list_list_a] :
% 0.27/0.45 ( ( P @ P2 @ ( cons_list_a @ Y3 @ Xs2 ) )
% 0.27/0.45 => ( P @ P2 @ ( cons_list_a @ X @ ( cons_list_a @ Y3 @ Xs2 ) ) ) )
% 0.27/0.45 => ( P @ A0 @ A1 ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % successively.induct
% 0.27/0.45 thf(fact_33_successively_Oinduct,axiom,
% 0.27/0.45 ! [P: ( a > a > $o ) > list_a > $o,A0: a > a > $o,A1: list_a] :
% 0.27/0.45 ( ! [P2: a > a > $o] : ( P @ P2 @ nil_a )
% 0.27/0.45 => ( ! [P2: a > a > $o,X: a] : ( P @ P2 @ ( cons_a @ X @ nil_a ) )
% 0.27/0.45 => ( ! [P2: a > a > $o,X: a,Y3: a,Xs2: list_a] :
% 0.27/0.45 ( ( P @ P2 @ ( cons_a @ Y3 @ Xs2 ) )
% 0.27/0.45 => ( P @ P2 @ ( cons_a @ X @ ( cons_a @ Y3 @ Xs2 ) ) ) )
% 0.27/0.45 => ( P @ A0 @ A1 ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % successively.induct
% 0.27/0.45 thf(fact_34_remdups__adj_Oinduct,axiom,
% 0.27/0.45 ! [P: list_list_a > $o,A0: list_list_a] :
% 0.27/0.45 ( ( P @ nil_list_a )
% 0.27/0.45 => ( ! [X: list_a] : ( P @ ( cons_list_a @ X @ nil_list_a ) )
% 0.27/0.45 => ( ! [X: list_a,Y3: list_a,Xs2: list_list_a] :
% 0.27/0.45 ( ( ( X = Y3 )
% 0.27/0.45 => ( P @ ( cons_list_a @ X @ Xs2 ) ) )
% 0.27/0.45 => ( ( ( X != Y3 )
% 0.27/0.45 => ( P @ ( cons_list_a @ Y3 @ Xs2 ) ) )
% 0.27/0.45 => ( P @ ( cons_list_a @ X @ ( cons_list_a @ Y3 @ Xs2 ) ) ) ) )
% 0.27/0.45 => ( P @ A0 ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % remdups_adj.induct
% 0.27/0.45 thf(fact_35_remdups__adj_Oinduct,axiom,
% 0.27/0.45 ! [P: list_a > $o,A0: list_a] :
% 0.27/0.45 ( ( P @ nil_a )
% 0.27/0.45 => ( ! [X: a] : ( P @ ( cons_a @ X @ nil_a ) )
% 0.27/0.45 => ( ! [X: a,Y3: a,Xs2: list_a] :
% 0.27/0.45 ( ( ( X = Y3 )
% 0.27/0.45 => ( P @ ( cons_a @ X @ Xs2 ) ) )
% 0.27/0.45 => ( ( ( X != Y3 )
% 0.27/0.45 => ( P @ ( cons_a @ Y3 @ Xs2 ) ) )
% 0.27/0.45 => ( P @ ( cons_a @ X @ ( cons_a @ Y3 @ Xs2 ) ) ) ) )
% 0.27/0.45 => ( P @ A0 ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % remdups_adj.induct
% 0.27/0.45 thf(fact_36_sorted__wrt_Oinduct,axiom,
% 0.27/0.45 ! [P: ( list_a > list_a > $o ) > list_list_a > $o,A0: list_a > list_a > $o,A1: list_list_a] :
% 0.27/0.45 ( ! [P2: list_a > list_a > $o] : ( P @ P2 @ nil_list_a )
% 0.27/0.45 => ( ! [P2: list_a > list_a > $o,X: list_a,Ys3: list_list_a] :
% 0.27/0.45 ( ( P @ P2 @ Ys3 )
% 0.27/0.45 => ( P @ P2 @ ( cons_list_a @ X @ Ys3 ) ) )
% 0.27/0.45 => ( P @ A0 @ A1 ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % sorted_wrt.induct
% 0.27/0.45 thf(fact_37_sorted__wrt_Oinduct,axiom,
% 0.27/0.45 ! [P: ( a > a > $o ) > list_a > $o,A0: a > a > $o,A1: list_a] :
% 0.27/0.45 ( ! [P2: a > a > $o] : ( P @ P2 @ nil_a )
% 0.27/0.45 => ( ! [P2: a > a > $o,X: a,Ys3: list_a] :
% 0.27/0.45 ( ( P @ P2 @ Ys3 )
% 0.27/0.45 => ( P @ P2 @ ( cons_a @ X @ Ys3 ) ) )
% 0.27/0.45 => ( P @ A0 @ A1 ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % sorted_wrt.induct
% 0.27/0.45 thf(fact_38_remdups__adj_Ocases,axiom,
% 0.27/0.45 ! [X3: list_list_a] :
% 0.27/0.45 ( ( X3 != nil_list_a )
% 0.27/0.45 => ( ! [X: list_a] :
% 0.27/0.45 ( X3
% 0.27/0.45 != ( cons_list_a @ X @ nil_list_a ) )
% 0.27/0.45 => ~ ! [X: list_a,Y3: list_a,Xs2: list_list_a] :
% 0.27/0.45 ( X3
% 0.27/0.45 != ( cons_list_a @ X @ ( cons_list_a @ Y3 @ Xs2 ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % remdups_adj.cases
% 0.27/0.45 thf(fact_39_remdups__adj_Ocases,axiom,
% 0.27/0.45 ! [X3: list_a] :
% 0.27/0.45 ( ( X3 != nil_a )
% 0.27/0.45 => ( ! [X: a] :
% 0.27/0.45 ( X3
% 0.27/0.45 != ( cons_a @ X @ nil_a ) )
% 0.27/0.45 => ~ ! [X: a,Y3: a,Xs2: list_a] :
% 0.27/0.45 ( X3
% 0.27/0.45 != ( cons_a @ X @ ( cons_a @ Y3 @ Xs2 ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % remdups_adj.cases
% 0.27/0.45 thf(fact_40_transpose_Ocases,axiom,
% 0.27/0.45 ! [X3: list_list_list_a] :
% 0.27/0.45 ( ( X3 != nil_list_list_a )
% 0.27/0.45 => ( ! [Xss: list_list_list_a] :
% 0.27/0.45 ( X3
% 0.27/0.45 != ( cons_list_list_a @ nil_list_a @ Xss ) )
% 0.27/0.45 => ~ ! [X: list_a,Xs2: list_list_a,Xss: list_list_list_a] :
% 0.27/0.45 ( X3
% 0.27/0.45 != ( cons_list_list_a @ ( cons_list_a @ X @ Xs2 ) @ Xss ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % transpose.cases
% 0.27/0.45 thf(fact_41_transpose_Ocases,axiom,
% 0.27/0.45 ! [X3: list_list_a] :
% 0.27/0.45 ( ( X3 != nil_list_a )
% 0.27/0.45 => ( ! [Xss: list_list_a] :
% 0.27/0.45 ( X3
% 0.27/0.45 != ( cons_list_a @ nil_a @ Xss ) )
% 0.27/0.45 => ~ ! [X: a,Xs2: list_a,Xss: list_list_a] :
% 0.27/0.45 ( X3
% 0.27/0.45 != ( cons_list_a @ ( cons_a @ X @ Xs2 ) @ Xss ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % transpose.cases
% 0.27/0.45 thf(fact_42_insert__Nil,axiom,
% 0.27/0.45 ! [X3: list_a] :
% 0.27/0.45 ( ( insert_list_a @ X3 @ nil_list_a )
% 0.27/0.45 = ( cons_list_a @ X3 @ nil_list_a ) ) ).
% 0.27/0.45
% 0.27/0.45 % insert_Nil
% 0.27/0.45 thf(fact_43_insert__Nil,axiom,
% 0.27/0.45 ! [X3: a] :
% 0.27/0.45 ( ( insert_a @ X3 @ nil_a )
% 0.27/0.45 = ( cons_a @ X3 @ nil_a ) ) ).
% 0.27/0.45
% 0.27/0.45 % insert_Nil
% 0.27/0.45 thf(fact_44_list__ex1__simps_I1_J,axiom,
% 0.27/0.45 ! [P: list_a > $o] :
% 0.27/0.45 ~ ( list_ex1_list_a @ P @ nil_list_a ) ).
% 0.27/0.45
% 0.27/0.45 % list_ex1_simps(1)
% 0.27/0.45 thf(fact_45_list__ex1__simps_I1_J,axiom,
% 0.27/0.45 ! [P: a > $o] :
% 0.27/0.45 ~ ( list_ex1_a @ P @ nil_a ) ).
% 0.27/0.45
% 0.27/0.45 % list_ex1_simps(1)
% 0.27/0.45 thf(fact_46_map__tailrec__rev_Oelims,axiom,
% 0.27/0.45 ! [X3: a > list_a,Xa: list_a,Xb: list_list_a,Y: list_list_a] :
% 0.27/0.45 ( ( ( map_ta41997947list_a @ X3 @ Xa @ Xb )
% 0.27/0.45 = Y )
% 0.27/0.45 => ( ( ( Xa = nil_a )
% 0.27/0.45 => ( Y != Xb ) )
% 0.27/0.45 => ~ ! [A: a,As: list_a] :
% 0.27/0.45 ( ( Xa
% 0.27/0.45 = ( cons_a @ A @ As ) )
% 0.27/0.45 => ( Y
% 0.27/0.45 != ( map_ta41997947list_a @ X3 @ As @ ( cons_list_a @ ( X3 @ A ) @ Xb ) ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % map_tailrec_rev.elims
% 0.27/0.45 thf(fact_47_map__tailrec__rev_Oelims,axiom,
% 0.27/0.45 ! [X3: list_a > a,Xa: list_list_a,Xb: list_a,Y: list_a] :
% 0.27/0.45 ( ( ( map_ta2002079599st_a_a @ X3 @ Xa @ Xb )
% 0.27/0.45 = Y )
% 0.27/0.45 => ( ( ( Xa = nil_list_a )
% 0.27/0.45 => ( Y != Xb ) )
% 0.27/0.45 => ~ ! [A: list_a,As: list_list_a] :
% 0.27/0.45 ( ( Xa
% 0.27/0.45 = ( cons_list_a @ A @ As ) )
% 0.27/0.45 => ( Y
% 0.27/0.45 != ( map_ta2002079599st_a_a @ X3 @ As @ ( cons_a @ ( X3 @ A ) @ Xb ) ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % map_tailrec_rev.elims
% 0.27/0.45 thf(fact_48_map__tailrec__rev_Oelims,axiom,
% 0.27/0.45 ! [X3: list_a > list_a,Xa: list_list_a,Xb: list_list_a,Y: list_list_a] :
% 0.27/0.45 ( ( ( map_ta982122357list_a @ X3 @ Xa @ Xb )
% 0.27/0.45 = Y )
% 0.27/0.45 => ( ( ( Xa = nil_list_a )
% 0.27/0.45 => ( Y != Xb ) )
% 0.27/0.45 => ~ ! [A: list_a,As: list_list_a] :
% 0.27/0.45 ( ( Xa
% 0.27/0.45 = ( cons_list_a @ A @ As ) )
% 0.27/0.45 => ( Y
% 0.27/0.45 != ( map_ta982122357list_a @ X3 @ As @ ( cons_list_a @ ( X3 @ A ) @ Xb ) ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % map_tailrec_rev.elims
% 0.27/0.45 thf(fact_49_map__tailrec__rev_Oelims,axiom,
% 0.27/0.45 ! [X3: a > a,Xa: list_a,Xb: list_a,Y: list_a] :
% 0.27/0.45 ( ( ( map_tailrec_rev_a_a @ X3 @ Xa @ Xb )
% 0.27/0.45 = Y )
% 0.27/0.45 => ( ( ( Xa = nil_a )
% 0.27/0.45 => ( Y != Xb ) )
% 0.27/0.45 => ~ ! [A: a,As: list_a] :
% 0.27/0.45 ( ( Xa
% 0.27/0.45 = ( cons_a @ A @ As ) )
% 0.27/0.45 => ( Y
% 0.27/0.45 != ( map_tailrec_rev_a_a @ X3 @ As @ ( cons_a @ ( X3 @ A ) @ Xb ) ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % map_tailrec_rev.elims
% 0.27/0.45 thf(fact_50_ord_Olexordp__eq__simps_I3_J,axiom,
% 0.27/0.45 ! [Less: list_a > list_a > $o,X3: list_a,Xs: list_list_a] :
% 0.27/0.45 ~ ( lexordp_eq_list_a @ Less @ ( cons_list_a @ X3 @ Xs ) @ nil_list_a ) ).
% 0.27/0.45
% 0.27/0.45 % ord.lexordp_eq_simps(3)
% 0.27/0.45 thf(fact_51_ord_Olexordp__eq__simps_I3_J,axiom,
% 0.27/0.45 ! [Less: a > a > $o,X3: a,Xs: list_a] :
% 0.27/0.45 ~ ( lexordp_eq_a @ Less @ ( cons_a @ X3 @ Xs ) @ nil_a ) ).
% 0.27/0.45
% 0.27/0.45 % ord.lexordp_eq_simps(3)
% 0.27/0.45 thf(fact_52_bind__simps_I1_J,axiom,
% 0.27/0.45 ! [F: a > list_list_a] :
% 0.27/0.45 ( ( bind_a_list_a @ nil_a @ F )
% 0.27/0.45 = nil_list_a ) ).
% 0.27/0.45
% 0.27/0.45 % bind_simps(1)
% 0.27/0.45 thf(fact_53_bind__simps_I1_J,axiom,
% 0.27/0.45 ! [F: list_a > list_a] :
% 0.27/0.45 ( ( bind_list_a_a @ nil_list_a @ F )
% 0.27/0.45 = nil_a ) ).
% 0.27/0.45
% 0.27/0.45 % bind_simps(1)
% 0.27/0.45 thf(fact_54_bind__simps_I1_J,axiom,
% 0.27/0.45 ! [F: list_a > list_list_a] :
% 0.27/0.45 ( ( bind_list_a_list_a @ nil_list_a @ F )
% 0.27/0.45 = nil_list_a ) ).
% 0.27/0.45
% 0.27/0.45 % bind_simps(1)
% 0.27/0.45 thf(fact_55_bind__simps_I1_J,axiom,
% 0.27/0.45 ! [F: a > list_a] :
% 0.27/0.45 ( ( bind_a_a @ nil_a @ F )
% 0.27/0.45 = nil_a ) ).
% 0.27/0.45
% 0.27/0.45 % bind_simps(1)
% 0.27/0.45 thf(fact_56_listrelp_Oinducts,axiom,
% 0.27/0.45 ! [R: a > list_a > $o,X12: list_a,X23: list_list_a,P: list_a > list_list_a > $o] :
% 0.27/0.45 ( ( listrelp_a_list_a @ R @ X12 @ X23 )
% 0.27/0.45 => ( ( P @ nil_a @ nil_list_a )
% 0.27/0.45 => ( ! [X: a,Y3: list_a,Xs2: list_a,Ys3: list_list_a] :
% 0.27/0.45 ( ( R @ X @ Y3 )
% 0.27/0.45 => ( ( listrelp_a_list_a @ R @ Xs2 @ Ys3 )
% 0.27/0.45 => ( ( P @ Xs2 @ Ys3 )
% 0.27/0.45 => ( P @ ( cons_a @ X @ Xs2 ) @ ( cons_list_a @ Y3 @ Ys3 ) ) ) ) )
% 0.27/0.45 => ( P @ X12 @ X23 ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % listrelp.inducts
% 0.27/0.45 thf(fact_57_listrelp_Oinducts,axiom,
% 0.27/0.45 ! [R: list_a > a > $o,X12: list_list_a,X23: list_a,P: list_list_a > list_a > $o] :
% 0.27/0.45 ( ( listrelp_list_a_a @ R @ X12 @ X23 )
% 0.27/0.45 => ( ( P @ nil_list_a @ nil_a )
% 0.27/0.45 => ( ! [X: list_a,Y3: a,Xs2: list_list_a,Ys3: list_a] :
% 0.27/0.45 ( ( R @ X @ Y3 )
% 0.27/0.45 => ( ( listrelp_list_a_a @ R @ Xs2 @ Ys3 )
% 0.27/0.45 => ( ( P @ Xs2 @ Ys3 )
% 0.27/0.45 => ( P @ ( cons_list_a @ X @ Xs2 ) @ ( cons_a @ Y3 @ Ys3 ) ) ) ) )
% 0.27/0.45 => ( P @ X12 @ X23 ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % listrelp.inducts
% 0.27/0.45 thf(fact_58_listrelp_Oinducts,axiom,
% 0.27/0.45 ! [R: list_a > list_a > $o,X12: list_list_a,X23: list_list_a,P: list_list_a > list_list_a > $o] :
% 0.27/0.45 ( ( listre1221556159list_a @ R @ X12 @ X23 )
% 0.27/0.45 => ( ( P @ nil_list_a @ nil_list_a )
% 0.27/0.45 => ( ! [X: list_a,Y3: list_a,Xs2: list_list_a,Ys3: list_list_a] :
% 0.27/0.45 ( ( R @ X @ Y3 )
% 0.27/0.45 => ( ( listre1221556159list_a @ R @ Xs2 @ Ys3 )
% 0.27/0.45 => ( ( P @ Xs2 @ Ys3 )
% 0.27/0.45 => ( P @ ( cons_list_a @ X @ Xs2 ) @ ( cons_list_a @ Y3 @ Ys3 ) ) ) ) )
% 0.27/0.45 => ( P @ X12 @ X23 ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % listrelp.inducts
% 0.27/0.45 thf(fact_59_listrelp_Oinducts,axiom,
% 0.27/0.45 ! [R: a > a > $o,X12: list_a,X23: list_a,P: list_a > list_a > $o] :
% 0.27/0.45 ( ( listrelp_a_a @ R @ X12 @ X23 )
% 0.27/0.45 => ( ( P @ nil_a @ nil_a )
% 0.27/0.45 => ( ! [X: a,Y3: a,Xs2: list_a,Ys3: list_a] :
% 0.27/0.45 ( ( R @ X @ Y3 )
% 0.27/0.45 => ( ( listrelp_a_a @ R @ Xs2 @ Ys3 )
% 0.27/0.45 => ( ( P @ Xs2 @ Ys3 )
% 0.27/0.45 => ( P @ ( cons_a @ X @ Xs2 ) @ ( cons_a @ Y3 @ Ys3 ) ) ) ) )
% 0.27/0.45 => ( P @ X12 @ X23 ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % listrelp.inducts
% 0.27/0.45 thf(fact_60_listrelp_Osimps,axiom,
% 0.27/0.45 ( listrelp_a_list_a
% 0.27/0.45 = ( ^ [R2: a > list_a > $o,A12: list_a,A22: list_list_a] :
% 0.27/0.45 ( ( ( A12 = nil_a )
% 0.27/0.45 & ( A22 = nil_list_a ) )
% 0.27/0.45 | ? [X4: a,Y2: list_a,Xs3: list_a,Ys: list_list_a] :
% 0.27/0.45 ( ( A12
% 0.27/0.45 = ( cons_a @ X4 @ Xs3 ) )
% 0.27/0.45 & ( A22
% 0.27/0.45 = ( cons_list_a @ Y2 @ Ys ) )
% 0.27/0.45 & ( R2 @ X4 @ Y2 )
% 0.27/0.45 & ( listrelp_a_list_a @ R2 @ Xs3 @ Ys ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % listrelp.simps
% 0.27/0.45 thf(fact_61_listrelp_Osimps,axiom,
% 0.27/0.45 ( listrelp_list_a_a
% 0.27/0.45 = ( ^ [R2: list_a > a > $o,A12: list_list_a,A22: list_a] :
% 0.27/0.45 ( ( ( A12 = nil_list_a )
% 0.27/0.45 & ( A22 = nil_a ) )
% 0.27/0.45 | ? [X4: list_a,Y2: a,Xs3: list_list_a,Ys: list_a] :
% 0.27/0.45 ( ( A12
% 0.27/0.45 = ( cons_list_a @ X4 @ Xs3 ) )
% 0.27/0.45 & ( A22
% 0.27/0.45 = ( cons_a @ Y2 @ Ys ) )
% 0.27/0.45 & ( R2 @ X4 @ Y2 )
% 0.27/0.45 & ( listrelp_list_a_a @ R2 @ Xs3 @ Ys ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % listrelp.simps
% 0.27/0.45 thf(fact_62_listrelp_Osimps,axiom,
% 0.27/0.45 ( listre1221556159list_a
% 0.27/0.45 = ( ^ [R2: list_a > list_a > $o,A12: list_list_a,A22: list_list_a] :
% 0.27/0.45 ( ( ( A12 = nil_list_a )
% 0.27/0.45 & ( A22 = nil_list_a ) )
% 0.27/0.45 | ? [X4: list_a,Y2: list_a,Xs3: list_list_a,Ys: list_list_a] :
% 0.27/0.45 ( ( A12
% 0.27/0.45 = ( cons_list_a @ X4 @ Xs3 ) )
% 0.27/0.45 & ( A22
% 0.27/0.45 = ( cons_list_a @ Y2 @ Ys ) )
% 0.27/0.45 & ( R2 @ X4 @ Y2 )
% 0.27/0.45 & ( listre1221556159list_a @ R2 @ Xs3 @ Ys ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % listrelp.simps
% 0.27/0.45 thf(fact_63_listrelp_Osimps,axiom,
% 0.27/0.45 ( listrelp_a_a
% 0.27/0.45 = ( ^ [R2: a > a > $o,A12: list_a,A22: list_a] :
% 0.27/0.45 ( ( ( A12 = nil_a )
% 0.27/0.45 & ( A22 = nil_a ) )
% 0.27/0.45 | ? [X4: a,Y2: a,Xs3: list_a,Ys: list_a] :
% 0.27/0.45 ( ( A12
% 0.27/0.45 = ( cons_a @ X4 @ Xs3 ) )
% 0.27/0.45 & ( A22
% 0.27/0.45 = ( cons_a @ Y2 @ Ys ) )
% 0.27/0.45 & ( R2 @ X4 @ Y2 )
% 0.27/0.45 & ( listrelp_a_a @ R2 @ Xs3 @ Ys ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % listrelp.simps
% 0.27/0.45 thf(fact_64_listrelp_Ocases,axiom,
% 0.27/0.45 ! [R: a > list_a > $o,A1: list_a,A2: list_list_a] :
% 0.27/0.45 ( ( listrelp_a_list_a @ R @ A1 @ A2 )
% 0.27/0.45 => ( ( ( A1 = nil_a )
% 0.27/0.45 => ( A2 != nil_list_a ) )
% 0.27/0.45 => ~ ! [X: a,Y3: list_a,Xs2: list_a] :
% 0.27/0.45 ( ( A1
% 0.27/0.45 = ( cons_a @ X @ Xs2 ) )
% 0.27/0.45 => ! [Ys3: list_list_a] :
% 0.27/0.45 ( ( A2
% 0.27/0.45 = ( cons_list_a @ Y3 @ Ys3 ) )
% 0.27/0.45 => ( ( R @ X @ Y3 )
% 0.27/0.45 => ~ ( listrelp_a_list_a @ R @ Xs2 @ Ys3 ) ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % listrelp.cases
% 0.27/0.45 thf(fact_65_listrelp_Ocases,axiom,
% 0.27/0.45 ! [R: list_a > a > $o,A1: list_list_a,A2: list_a] :
% 0.27/0.45 ( ( listrelp_list_a_a @ R @ A1 @ A2 )
% 0.27/0.45 => ( ( ( A1 = nil_list_a )
% 0.27/0.45 => ( A2 != nil_a ) )
% 0.27/0.45 => ~ ! [X: list_a,Y3: a,Xs2: list_list_a] :
% 0.27/0.45 ( ( A1
% 0.27/0.45 = ( cons_list_a @ X @ Xs2 ) )
% 0.27/0.45 => ! [Ys3: list_a] :
% 0.27/0.45 ( ( A2
% 0.27/0.45 = ( cons_a @ Y3 @ Ys3 ) )
% 0.27/0.45 => ( ( R @ X @ Y3 )
% 0.27/0.45 => ~ ( listrelp_list_a_a @ R @ Xs2 @ Ys3 ) ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % listrelp.cases
% 0.27/0.45 thf(fact_66_listrelp_Ocases,axiom,
% 0.27/0.45 ! [R: list_a > list_a > $o,A1: list_list_a,A2: list_list_a] :
% 0.27/0.45 ( ( listre1221556159list_a @ R @ A1 @ A2 )
% 0.27/0.45 => ( ( ( A1 = nil_list_a )
% 0.27/0.45 => ( A2 != nil_list_a ) )
% 0.27/0.45 => ~ ! [X: list_a,Y3: list_a,Xs2: list_list_a] :
% 0.27/0.45 ( ( A1
% 0.27/0.45 = ( cons_list_a @ X @ Xs2 ) )
% 0.27/0.45 => ! [Ys3: list_list_a] :
% 0.27/0.45 ( ( A2
% 0.27/0.45 = ( cons_list_a @ Y3 @ Ys3 ) )
% 0.27/0.45 => ( ( R @ X @ Y3 )
% 0.27/0.45 => ~ ( listre1221556159list_a @ R @ Xs2 @ Ys3 ) ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % listrelp.cases
% 0.27/0.45 thf(fact_67_listrelp_Ocases,axiom,
% 0.27/0.45 ! [R: a > a > $o,A1: list_a,A2: list_a] :
% 0.27/0.45 ( ( listrelp_a_a @ R @ A1 @ A2 )
% 0.27/0.45 => ( ( ( A1 = nil_a )
% 0.27/0.45 => ( A2 != nil_a ) )
% 0.27/0.45 => ~ ! [X: a,Y3: a,Xs2: list_a] :
% 0.27/0.45 ( ( A1
% 0.27/0.45 = ( cons_a @ X @ Xs2 ) )
% 0.27/0.45 => ! [Ys3: list_a] :
% 0.27/0.45 ( ( A2
% 0.27/0.45 = ( cons_a @ Y3 @ Ys3 ) )
% 0.27/0.45 => ( ( R @ X @ Y3 )
% 0.27/0.45 => ~ ( listrelp_a_a @ R @ Xs2 @ Ys3 ) ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % listrelp.cases
% 0.27/0.45 thf(fact_68_ord_Olexordp__eq__simps_I4_J,axiom,
% 0.27/0.45 ! [Less: list_a > list_a > $o,X3: list_a,Xs: list_list_a,Y: list_a,Ys2: list_list_a] :
% 0.27/0.45 ( ( lexordp_eq_list_a @ Less @ ( cons_list_a @ X3 @ Xs ) @ ( cons_list_a @ Y @ Ys2 ) )
% 0.27/0.45 = ( ( Less @ X3 @ Y )
% 0.27/0.45 | ( ~ ( Less @ Y @ X3 )
% 0.27/0.45 & ( lexordp_eq_list_a @ Less @ Xs @ Ys2 ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % ord.lexordp_eq_simps(4)
% 0.27/0.45 thf(fact_69_ord_Olexordp__eq__simps_I4_J,axiom,
% 0.27/0.45 ! [Less: a > a > $o,X3: a,Xs: list_a,Y: a,Ys2: list_a] :
% 0.27/0.45 ( ( lexordp_eq_a @ Less @ ( cons_a @ X3 @ Xs ) @ ( cons_a @ Y @ Ys2 ) )
% 0.27/0.45 = ( ( Less @ X3 @ Y )
% 0.27/0.45 | ( ~ ( Less @ Y @ X3 )
% 0.27/0.45 & ( lexordp_eq_a @ Less @ Xs @ Ys2 ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % ord.lexordp_eq_simps(4)
% 0.27/0.45 thf(fact_70_ord_Olexordp__eq__simps_I2_J,axiom,
% 0.27/0.45 ! [Less: list_a > list_a > $o,Xs: list_list_a] :
% 0.27/0.45 ( ( lexordp_eq_list_a @ Less @ Xs @ nil_list_a )
% 0.27/0.45 = ( Xs = nil_list_a ) ) ).
% 0.27/0.45
% 0.27/0.45 % ord.lexordp_eq_simps(2)
% 0.27/0.45 thf(fact_71_ord_Olexordp__eq__simps_I2_J,axiom,
% 0.27/0.45 ! [Less: a > a > $o,Xs: list_a] :
% 0.27/0.45 ( ( lexordp_eq_a @ Less @ Xs @ nil_a )
% 0.27/0.45 = ( Xs = nil_a ) ) ).
% 0.27/0.45
% 0.27/0.45 % ord.lexordp_eq_simps(2)
% 0.27/0.45 thf(fact_72_ord_Olexordp__eq__simps_I1_J,axiom,
% 0.27/0.45 ! [Less: list_a > list_a > $o,Ys2: list_list_a] : ( lexordp_eq_list_a @ Less @ nil_list_a @ Ys2 ) ).
% 0.27/0.45
% 0.27/0.45 % ord.lexordp_eq_simps(1)
% 0.27/0.45 thf(fact_73_ord_Olexordp__eq__simps_I1_J,axiom,
% 0.27/0.45 ! [Less: a > a > $o,Ys2: list_a] : ( lexordp_eq_a @ Less @ nil_a @ Ys2 ) ).
% 0.27/0.45
% 0.27/0.45 % ord.lexordp_eq_simps(1)
% 0.27/0.45 thf(fact_74_ord_Olexordp__eq_Ocong,axiom,
% 0.27/0.45 lexordp_eq_a = lexordp_eq_a ).
% 0.27/0.45
% 0.27/0.45 % ord.lexordp_eq.cong
% 0.27/0.45 thf(fact_75_ord_Olexordp__eq__refl,axiom,
% 0.27/0.45 ! [Less: a > a > $o,Xs: list_a] : ( lexordp_eq_a @ Less @ Xs @ Xs ) ).
% 0.27/0.45
% 0.27/0.45 % ord.lexordp_eq_refl
% 0.27/0.45 thf(fact_76_mem__Collect__eq,axiom,
% 0.27/0.45 ! [A3: list_a,P: list_a > $o] :
% 0.27/0.45 ( ( member_list_a2 @ A3 @ ( collect_list_a @ P ) )
% 0.27/0.45 = ( P @ A3 ) ) ).
% 0.27/0.45
% 0.27/0.45 % mem_Collect_eq
% 0.27/0.45 thf(fact_77_mem__Collect__eq,axiom,
% 0.27/0.45 ! [A3: a,P: a > $o] :
% 0.27/0.45 ( ( member_a2 @ A3 @ ( collect_a @ P ) )
% 0.27/0.45 = ( P @ A3 ) ) ).
% 0.27/0.45
% 0.27/0.45 % mem_Collect_eq
% 0.27/0.45 thf(fact_78_Collect__mem__eq,axiom,
% 0.27/0.45 ! [A4: set_list_a] :
% 0.27/0.45 ( ( collect_list_a
% 0.27/0.45 @ ^ [X4: list_a] : ( member_list_a2 @ X4 @ A4 ) )
% 0.27/0.45 = A4 ) ).
% 0.27/0.45
% 0.27/0.45 % Collect_mem_eq
% 0.27/0.45 thf(fact_79_Collect__mem__eq,axiom,
% 0.27/0.45 ! [A4: set_a] :
% 0.27/0.45 ( ( collect_a
% 0.27/0.45 @ ^ [X4: a] : ( member_a2 @ X4 @ A4 ) )
% 0.27/0.45 = A4 ) ).
% 0.27/0.45
% 0.27/0.45 % Collect_mem_eq
% 0.27/0.45 thf(fact_80_ord_Olexordp__eq_OCons,axiom,
% 0.27/0.45 ! [Less: list_a > list_a > $o,X3: list_a,Y: list_a,Xs: list_list_a,Ys2: list_list_a] :
% 0.27/0.45 ( ( Less @ X3 @ Y )
% 0.27/0.45 => ( lexordp_eq_list_a @ Less @ ( cons_list_a @ X3 @ Xs ) @ ( cons_list_a @ Y @ Ys2 ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % ord.lexordp_eq.Cons
% 0.27/0.45 thf(fact_81_ord_Olexordp__eq_OCons,axiom,
% 0.27/0.45 ! [Less: a > a > $o,X3: a,Y: a,Xs: list_a,Ys2: list_a] :
% 0.27/0.45 ( ( Less @ X3 @ Y )
% 0.27/0.45 => ( lexordp_eq_a @ Less @ ( cons_a @ X3 @ Xs ) @ ( cons_a @ Y @ Ys2 ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % ord.lexordp_eq.Cons
% 0.27/0.45 thf(fact_82_ord_Olexordp__eq_OCons__eq,axiom,
% 0.27/0.45 ! [Less: list_a > list_a > $o,X3: list_a,Y: list_a,Xs: list_list_a,Ys2: list_list_a] :
% 0.27/0.45 ( ~ ( Less @ X3 @ Y )
% 0.27/0.45 => ( ~ ( Less @ Y @ X3 )
% 0.27/0.45 => ( ( lexordp_eq_list_a @ Less @ Xs @ Ys2 )
% 0.27/0.45 => ( lexordp_eq_list_a @ Less @ ( cons_list_a @ X3 @ Xs ) @ ( cons_list_a @ Y @ Ys2 ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % ord.lexordp_eq.Cons_eq
% 0.27/0.45 thf(fact_83_ord_Olexordp__eq_OCons__eq,axiom,
% 0.27/0.45 ! [Less: a > a > $o,X3: a,Y: a,Xs: list_a,Ys2: list_a] :
% 0.27/0.45 ( ~ ( Less @ X3 @ Y )
% 0.27/0.45 => ( ~ ( Less @ Y @ X3 )
% 0.27/0.45 => ( ( lexordp_eq_a @ Less @ Xs @ Ys2 )
% 0.27/0.45 => ( lexordp_eq_a @ Less @ ( cons_a @ X3 @ Xs ) @ ( cons_a @ Y @ Ys2 ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % ord.lexordp_eq.Cons_eq
% 0.27/0.45 thf(fact_84_ord_Olexordp__eq_ONil,axiom,
% 0.27/0.45 ! [Less: list_a > list_a > $o,Ys2: list_list_a] : ( lexordp_eq_list_a @ Less @ nil_list_a @ Ys2 ) ).
% 0.27/0.45
% 0.27/0.45 % ord.lexordp_eq.Nil
% 0.27/0.45 thf(fact_85_ord_Olexordp__eq_ONil,axiom,
% 0.27/0.45 ! [Less: a > a > $o,Ys2: list_a] : ( lexordp_eq_a @ Less @ nil_a @ Ys2 ) ).
% 0.27/0.45
% 0.27/0.45 % ord.lexordp_eq.Nil
% 0.27/0.45 thf(fact_86_listrelp_OCons,axiom,
% 0.27/0.45 ! [R: a > list_a > $o,X3: a,Y: list_a,Xs: list_a,Ys2: list_list_a] :
% 0.27/0.45 ( ( R @ X3 @ Y )
% 0.27/0.45 => ( ( listrelp_a_list_a @ R @ Xs @ Ys2 )
% 0.27/0.45 => ( listrelp_a_list_a @ R @ ( cons_a @ X3 @ Xs ) @ ( cons_list_a @ Y @ Ys2 ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % listrelp.Cons
% 0.27/0.45 thf(fact_87_listrelp_OCons,axiom,
% 0.27/0.45 ! [R: list_a > a > $o,X3: list_a,Y: a,Xs: list_list_a,Ys2: list_a] :
% 0.27/0.45 ( ( R @ X3 @ Y )
% 0.27/0.45 => ( ( listrelp_list_a_a @ R @ Xs @ Ys2 )
% 0.27/0.45 => ( listrelp_list_a_a @ R @ ( cons_list_a @ X3 @ Xs ) @ ( cons_a @ Y @ Ys2 ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % listrelp.Cons
% 0.27/0.45 thf(fact_88_listrelp_OCons,axiom,
% 0.27/0.45 ! [R: list_a > list_a > $o,X3: list_a,Y: list_a,Xs: list_list_a,Ys2: list_list_a] :
% 0.27/0.45 ( ( R @ X3 @ Y )
% 0.27/0.45 => ( ( listre1221556159list_a @ R @ Xs @ Ys2 )
% 0.27/0.45 => ( listre1221556159list_a @ R @ ( cons_list_a @ X3 @ Xs ) @ ( cons_list_a @ Y @ Ys2 ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % listrelp.Cons
% 0.27/0.45 thf(fact_89_listrelp_OCons,axiom,
% 0.27/0.45 ! [R: a > a > $o,X3: a,Y: a,Xs: list_a,Ys2: list_a] :
% 0.27/0.45 ( ( R @ X3 @ Y )
% 0.27/0.45 => ( ( listrelp_a_a @ R @ Xs @ Ys2 )
% 0.27/0.45 => ( listrelp_a_a @ R @ ( cons_a @ X3 @ Xs ) @ ( cons_a @ Y @ Ys2 ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % listrelp.Cons
% 0.27/0.45 thf(fact_90_listrelp_ONil,axiom,
% 0.27/0.45 ! [R: a > list_a > $o] : ( listrelp_a_list_a @ R @ nil_a @ nil_list_a ) ).
% 0.27/0.45
% 0.27/0.45 % listrelp.Nil
% 0.27/0.45 thf(fact_91_listrelp_ONil,axiom,
% 0.27/0.45 ! [R: list_a > a > $o] : ( listrelp_list_a_a @ R @ nil_list_a @ nil_a ) ).
% 0.27/0.45
% 0.27/0.45 % listrelp.Nil
% 0.27/0.45 thf(fact_92_listrelp_ONil,axiom,
% 0.27/0.45 ! [R: list_a > list_a > $o] : ( listre1221556159list_a @ R @ nil_list_a @ nil_list_a ) ).
% 0.27/0.45
% 0.27/0.45 % listrelp.Nil
% 0.27/0.45 thf(fact_93_listrelp_ONil,axiom,
% 0.27/0.45 ! [R: a > a > $o] : ( listrelp_a_a @ R @ nil_a @ nil_a ) ).
% 0.27/0.45
% 0.27/0.45 % listrelp.Nil
% 0.27/0.45 thf(fact_94_map__tailrec__rev_Osimps_I2_J,axiom,
% 0.27/0.45 ! [F: a > list_a,A3: a,As2: list_a,Bs2: list_list_a] :
% 0.27/0.45 ( ( map_ta41997947list_a @ F @ ( cons_a @ A3 @ As2 ) @ Bs2 )
% 0.27/0.45 = ( map_ta41997947list_a @ F @ As2 @ ( cons_list_a @ ( F @ A3 ) @ Bs2 ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % map_tailrec_rev.simps(2)
% 0.27/0.45 thf(fact_95_map__tailrec__rev_Osimps_I2_J,axiom,
% 0.27/0.45 ! [F: list_a > a,A3: list_a,As2: list_list_a,Bs2: list_a] :
% 0.27/0.45 ( ( map_ta2002079599st_a_a @ F @ ( cons_list_a @ A3 @ As2 ) @ Bs2 )
% 0.27/0.45 = ( map_ta2002079599st_a_a @ F @ As2 @ ( cons_a @ ( F @ A3 ) @ Bs2 ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % map_tailrec_rev.simps(2)
% 0.27/0.45 thf(fact_96_map__tailrec__rev_Osimps_I2_J,axiom,
% 0.27/0.45 ! [F: list_a > list_a,A3: list_a,As2: list_list_a,Bs2: list_list_a] :
% 0.27/0.45 ( ( map_ta982122357list_a @ F @ ( cons_list_a @ A3 @ As2 ) @ Bs2 )
% 0.27/0.45 = ( map_ta982122357list_a @ F @ As2 @ ( cons_list_a @ ( F @ A3 ) @ Bs2 ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % map_tailrec_rev.simps(2)
% 0.27/0.45 thf(fact_97_map__tailrec__rev_Osimps_I2_J,axiom,
% 0.27/0.45 ! [F: a > a,A3: a,As2: list_a,Bs2: list_a] :
% 0.27/0.45 ( ( map_tailrec_rev_a_a @ F @ ( cons_a @ A3 @ As2 ) @ Bs2 )
% 0.27/0.45 = ( map_tailrec_rev_a_a @ F @ As2 @ ( cons_a @ ( F @ A3 ) @ Bs2 ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % map_tailrec_rev.simps(2)
% 0.27/0.45 thf(fact_98_map__tailrec__rev_Osimps_I1_J,axiom,
% 0.27/0.45 ! [F: a > a,Bs2: list_a] :
% 0.27/0.45 ( ( map_tailrec_rev_a_a @ F @ nil_a @ Bs2 )
% 0.27/0.45 = Bs2 ) ).
% 0.27/0.45
% 0.27/0.45 % map_tailrec_rev.simps(1)
% 0.27/0.45 thf(fact_99_ord_Olexordp__eq_Ocases,axiom,
% 0.27/0.45 ! [Less: list_a > list_a > $o,A1: list_list_a,A2: list_list_a] :
% 0.27/0.45 ( ( lexordp_eq_list_a @ Less @ A1 @ A2 )
% 0.27/0.45 => ( ( A1 != nil_list_a )
% 0.27/0.45 => ( ! [X: list_a] :
% 0.27/0.45 ( ? [Xs2: list_list_a] :
% 0.27/0.45 ( A1
% 0.27/0.45 = ( cons_list_a @ X @ Xs2 ) )
% 0.27/0.45 => ! [Y3: list_a] :
% 0.27/0.45 ( ? [Ys3: list_list_a] :
% 0.27/0.45 ( A2
% 0.27/0.45 = ( cons_list_a @ Y3 @ Ys3 ) )
% 0.27/0.45 => ~ ( Less @ X @ Y3 ) ) )
% 0.27/0.45 => ~ ! [X: list_a,Y3: list_a,Xs2: list_list_a] :
% 0.27/0.45 ( ( A1
% 0.27/0.45 = ( cons_list_a @ X @ Xs2 ) )
% 0.27/0.45 => ! [Ys3: list_list_a] :
% 0.27/0.45 ( ( A2
% 0.27/0.45 = ( cons_list_a @ Y3 @ Ys3 ) )
% 0.27/0.45 => ( ~ ( Less @ X @ Y3 )
% 0.27/0.45 => ( ~ ( Less @ Y3 @ X )
% 0.27/0.45 => ~ ( lexordp_eq_list_a @ Less @ Xs2 @ Ys3 ) ) ) ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % ord.lexordp_eq.cases
% 0.27/0.45 thf(fact_100_ord_Olexordp__eq_Ocases,axiom,
% 0.27/0.45 ! [Less: a > a > $o,A1: list_a,A2: list_a] :
% 0.27/0.45 ( ( lexordp_eq_a @ Less @ A1 @ A2 )
% 0.27/0.45 => ( ( A1 != nil_a )
% 0.27/0.45 => ( ! [X: a] :
% 0.27/0.45 ( ? [Xs2: list_a] :
% 0.27/0.45 ( A1
% 0.27/0.45 = ( cons_a @ X @ Xs2 ) )
% 0.27/0.45 => ! [Y3: a] :
% 0.27/0.45 ( ? [Ys3: list_a] :
% 0.27/0.45 ( A2
% 0.27/0.45 = ( cons_a @ Y3 @ Ys3 ) )
% 0.27/0.45 => ~ ( Less @ X @ Y3 ) ) )
% 0.27/0.45 => ~ ! [X: a,Y3: a,Xs2: list_a] :
% 0.27/0.45 ( ( A1
% 0.27/0.45 = ( cons_a @ X @ Xs2 ) )
% 0.27/0.45 => ! [Ys3: list_a] :
% 0.27/0.45 ( ( A2
% 0.27/0.45 = ( cons_a @ Y3 @ Ys3 ) )
% 0.27/0.45 => ( ~ ( Less @ X @ Y3 )
% 0.27/0.45 => ( ~ ( Less @ Y3 @ X )
% 0.27/0.45 => ~ ( lexordp_eq_a @ Less @ Xs2 @ Ys3 ) ) ) ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % ord.lexordp_eq.cases
% 0.27/0.45 thf(fact_101_ord_Olexordp__eq_Osimps,axiom,
% 0.27/0.45 ( lexordp_eq_list_a
% 0.27/0.45 = ( ^ [Less2: list_a > list_a > $o,A12: list_list_a,A22: list_list_a] :
% 0.27/0.45 ( ? [Ys: list_list_a] :
% 0.27/0.45 ( ( A12 = nil_list_a )
% 0.27/0.45 & ( A22 = Ys ) )
% 0.27/0.45 | ? [X4: list_a,Y2: list_a,Xs3: list_list_a,Ys: list_list_a] :
% 0.27/0.45 ( ( A12
% 0.27/0.45 = ( cons_list_a @ X4 @ Xs3 ) )
% 0.27/0.45 & ( A22
% 0.27/0.45 = ( cons_list_a @ Y2 @ Ys ) )
% 0.27/0.45 & ( Less2 @ X4 @ Y2 ) )
% 0.27/0.45 | ? [X4: list_a,Y2: list_a,Xs3: list_list_a,Ys: list_list_a] :
% 0.27/0.45 ( ( A12
% 0.27/0.45 = ( cons_list_a @ X4 @ Xs3 ) )
% 0.27/0.45 & ( A22
% 0.27/0.45 = ( cons_list_a @ Y2 @ Ys ) )
% 0.27/0.45 & ~ ( Less2 @ X4 @ Y2 )
% 0.27/0.45 & ~ ( Less2 @ Y2 @ X4 )
% 0.27/0.45 & ( lexordp_eq_list_a @ Less2 @ Xs3 @ Ys ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % ord.lexordp_eq.simps
% 0.27/0.45 thf(fact_102_ord_Olexordp__eq_Osimps,axiom,
% 0.27/0.45 ( lexordp_eq_a
% 0.27/0.45 = ( ^ [Less2: a > a > $o,A12: list_a,A22: list_a] :
% 0.27/0.45 ( ? [Ys: list_a] :
% 0.27/0.45 ( ( A12 = nil_a )
% 0.27/0.45 & ( A22 = Ys ) )
% 0.27/0.45 | ? [X4: a,Y2: a,Xs3: list_a,Ys: list_a] :
% 0.27/0.45 ( ( A12
% 0.27/0.45 = ( cons_a @ X4 @ Xs3 ) )
% 0.27/0.45 & ( A22
% 0.27/0.45 = ( cons_a @ Y2 @ Ys ) )
% 0.27/0.45 & ( Less2 @ X4 @ Y2 ) )
% 0.27/0.45 | ? [X4: a,Y2: a,Xs3: list_a,Ys: list_a] :
% 0.27/0.45 ( ( A12
% 0.27/0.45 = ( cons_a @ X4 @ Xs3 ) )
% 0.27/0.45 & ( A22
% 0.27/0.45 = ( cons_a @ Y2 @ Ys ) )
% 0.27/0.45 & ~ ( Less2 @ X4 @ Y2 )
% 0.27/0.45 & ~ ( Less2 @ Y2 @ X4 )
% 0.27/0.45 & ( lexordp_eq_a @ Less2 @ Xs3 @ Ys ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % ord.lexordp_eq.simps
% 0.27/0.45 thf(fact_103_ord_Olexordp__eq_Oinducts,axiom,
% 0.27/0.45 ! [Less: list_a > list_a > $o,X12: list_list_a,X23: list_list_a,P: list_list_a > list_list_a > $o] :
% 0.27/0.45 ( ( lexordp_eq_list_a @ Less @ X12 @ X23 )
% 0.27/0.45 => ( ! [X_1: list_list_a] : ( P @ nil_list_a @ X_1 )
% 0.27/0.45 => ( ! [X: list_a,Y3: list_a,Xs2: list_list_a,Ys3: list_list_a] :
% 0.27/0.45 ( ( Less @ X @ Y3 )
% 0.27/0.45 => ( P @ ( cons_list_a @ X @ Xs2 ) @ ( cons_list_a @ Y3 @ Ys3 ) ) )
% 0.27/0.45 => ( ! [X: list_a,Y3: list_a,Xs2: list_list_a,Ys3: list_list_a] :
% 0.27/0.45 ( ~ ( Less @ X @ Y3 )
% 0.27/0.45 => ( ~ ( Less @ Y3 @ X )
% 0.27/0.45 => ( ( lexordp_eq_list_a @ Less @ Xs2 @ Ys3 )
% 0.27/0.45 => ( ( P @ Xs2 @ Ys3 )
% 0.27/0.45 => ( P @ ( cons_list_a @ X @ Xs2 ) @ ( cons_list_a @ Y3 @ Ys3 ) ) ) ) ) )
% 0.27/0.45 => ( P @ X12 @ X23 ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % ord.lexordp_eq.inducts
% 0.27/0.45 thf(fact_104_ord_Olexordp__eq_Oinducts,axiom,
% 0.27/0.45 ! [Less: a > a > $o,X12: list_a,X23: list_a,P: list_a > list_a > $o] :
% 0.27/0.45 ( ( lexordp_eq_a @ Less @ X12 @ X23 )
% 0.27/0.45 => ( ! [X_1: list_a] : ( P @ nil_a @ X_1 )
% 0.27/0.45 => ( ! [X: a,Y3: a,Xs2: list_a,Ys3: list_a] :
% 0.27/0.45 ( ( Less @ X @ Y3 )
% 0.27/0.45 => ( P @ ( cons_a @ X @ Xs2 ) @ ( cons_a @ Y3 @ Ys3 ) ) )
% 0.27/0.45 => ( ! [X: a,Y3: a,Xs2: list_a,Ys3: list_a] :
% 0.27/0.45 ( ~ ( Less @ X @ Y3 )
% 0.27/0.45 => ( ~ ( Less @ Y3 @ X )
% 0.27/0.45 => ( ( lexordp_eq_a @ Less @ Xs2 @ Ys3 )
% 0.27/0.45 => ( ( P @ Xs2 @ Ys3 )
% 0.27/0.45 => ( P @ ( cons_a @ X @ Xs2 ) @ ( cons_a @ Y3 @ Ys3 ) ) ) ) ) )
% 0.27/0.45 => ( P @ X12 @ X23 ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % ord.lexordp_eq.inducts
% 0.27/0.45 thf(fact_105_product__lists_Osimps_I1_J,axiom,
% 0.27/0.45 ( ( product_lists_list_a @ nil_list_list_a )
% 0.27/0.45 = ( cons_list_list_a @ nil_list_a @ nil_list_list_a ) ) ).
% 0.27/0.45
% 0.27/0.45 % product_lists.simps(1)
% 0.27/0.45 thf(fact_106_product__lists_Osimps_I1_J,axiom,
% 0.27/0.45 ( ( product_lists_a @ nil_list_a )
% 0.27/0.45 = ( cons_list_a @ nil_a @ nil_list_a ) ) ).
% 0.27/0.45
% 0.27/0.45 % product_lists.simps(1)
% 0.27/0.45 thf(fact_107_subseqs_Osimps_I1_J,axiom,
% 0.27/0.45 ( ( subseqs_list_a @ nil_list_a )
% 0.27/0.45 = ( cons_list_list_a @ nil_list_a @ nil_list_list_a ) ) ).
% 0.27/0.45
% 0.27/0.45 % subseqs.simps(1)
% 0.27/0.45 thf(fact_108_subseqs_Osimps_I1_J,axiom,
% 0.27/0.45 ( ( subseqs_a @ nil_a )
% 0.27/0.45 = ( cons_list_a @ nil_a @ nil_list_a ) ) ).
% 0.27/0.45
% 0.27/0.45 % subseqs.simps(1)
% 0.27/0.45 thf(fact_109_lexordp__eq_Ocases,axiom,
% 0.27/0.45 ! [A1: list_nat,A2: list_nat] :
% 0.27/0.45 ( ( ord_lexordp_eq_nat @ A1 @ A2 )
% 0.27/0.45 => ( ( A1 != nil_nat )
% 0.27/0.45 => ( ! [X: nat] :
% 0.27/0.45 ( ? [Xs2: list_nat] :
% 0.27/0.45 ( A1
% 0.27/0.45 = ( cons_nat @ X @ Xs2 ) )
% 0.27/0.45 => ! [Y3: nat] :
% 0.27/0.45 ( ? [Ys3: list_nat] :
% 0.27/0.45 ( A2
% 0.27/0.45 = ( cons_nat @ Y3 @ Ys3 ) )
% 0.27/0.45 => ~ ( ord_less_nat @ X @ Y3 ) ) )
% 0.27/0.45 => ~ ! [X: nat,Y3: nat,Xs2: list_nat] :
% 0.27/0.45 ( ( A1
% 0.27/0.45 = ( cons_nat @ X @ Xs2 ) )
% 0.27/0.45 => ! [Ys3: list_nat] :
% 0.27/0.45 ( ( A2
% 0.27/0.45 = ( cons_nat @ Y3 @ Ys3 ) )
% 0.27/0.45 => ( ~ ( ord_less_nat @ X @ Y3 )
% 0.27/0.45 => ( ~ ( ord_less_nat @ Y3 @ X )
% 0.27/0.45 => ~ ( ord_lexordp_eq_nat @ Xs2 @ Ys3 ) ) ) ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % lexordp_eq.cases
% 0.27/0.45 thf(fact_110_lexordp__eq_Osimps,axiom,
% 0.27/0.45 ( ord_lexordp_eq_nat
% 0.27/0.45 = ( ^ [A12: list_nat,A22: list_nat] :
% 0.27/0.45 ( ? [Ys: list_nat] :
% 0.27/0.45 ( ( A12 = nil_nat )
% 0.27/0.45 & ( A22 = Ys ) )
% 0.27/0.45 | ? [X4: nat,Y2: nat,Xs3: list_nat,Ys: list_nat] :
% 0.27/0.45 ( ( A12
% 0.27/0.45 = ( cons_nat @ X4 @ Xs3 ) )
% 0.27/0.45 & ( A22
% 0.27/0.45 = ( cons_nat @ Y2 @ Ys ) )
% 0.27/0.45 & ( ord_less_nat @ X4 @ Y2 ) )
% 0.27/0.45 | ? [X4: nat,Y2: nat,Xs3: list_nat,Ys: list_nat] :
% 0.27/0.45 ( ( A12
% 0.27/0.45 = ( cons_nat @ X4 @ Xs3 ) )
% 0.27/0.45 & ( A22
% 0.27/0.45 = ( cons_nat @ Y2 @ Ys ) )
% 0.27/0.45 & ~ ( ord_less_nat @ X4 @ Y2 )
% 0.27/0.45 & ~ ( ord_less_nat @ Y2 @ X4 )
% 0.27/0.45 & ( ord_lexordp_eq_nat @ Xs3 @ Ys ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % lexordp_eq.simps
% 0.27/0.45 thf(fact_111_lexordp__eq_Oinducts,axiom,
% 0.27/0.45 ! [X12: list_nat,X23: list_nat,P: list_nat > list_nat > $o] :
% 0.27/0.45 ( ( ord_lexordp_eq_nat @ X12 @ X23 )
% 0.27/0.45 => ( ! [X_1: list_nat] : ( P @ nil_nat @ X_1 )
% 0.27/0.45 => ( ! [X: nat,Y3: nat,Xs2: list_nat,Ys3: list_nat] :
% 0.27/0.45 ( ( ord_less_nat @ X @ Y3 )
% 0.27/0.45 => ( P @ ( cons_nat @ X @ Xs2 ) @ ( cons_nat @ Y3 @ Ys3 ) ) )
% 0.27/0.45 => ( ! [X: nat,Y3: nat,Xs2: list_nat,Ys3: list_nat] :
% 0.27/0.45 ( ~ ( ord_less_nat @ X @ Y3 )
% 0.27/0.45 => ( ~ ( ord_less_nat @ Y3 @ X )
% 0.27/0.45 => ( ( ord_lexordp_eq_nat @ Xs2 @ Ys3 )
% 0.27/0.45 => ( ( P @ Xs2 @ Ys3 )
% 0.27/0.45 => ( P @ ( cons_nat @ X @ Xs2 ) @ ( cons_nat @ Y3 @ Ys3 ) ) ) ) ) )
% 0.27/0.45 => ( P @ X12 @ X23 ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % lexordp_eq.inducts
% 0.27/0.45 thf(fact_112_member__rec_I2_J,axiom,
% 0.27/0.45 ! [Y: list_a] :
% 0.27/0.45 ~ ( member_list_a @ nil_list_a @ Y ) ).
% 0.27/0.45
% 0.27/0.45 % member_rec(2)
% 0.27/0.45 thf(fact_113_member__rec_I2_J,axiom,
% 0.27/0.45 ! [Y: a] :
% 0.27/0.45 ~ ( member_a @ nil_a @ Y ) ).
% 0.27/0.45
% 0.27/0.45 % member_rec(2)
% 0.27/0.45 thf(fact_114_member__rec_I1_J,axiom,
% 0.27/0.45 ! [X3: list_a,Xs: list_list_a,Y: list_a] :
% 0.27/0.45 ( ( member_list_a @ ( cons_list_a @ X3 @ Xs ) @ Y )
% 0.27/0.45 = ( ( X3 = Y )
% 0.27/0.45 | ( member_list_a @ Xs @ Y ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % member_rec(1)
% 0.27/0.45 thf(fact_115_member__rec_I1_J,axiom,
% 0.27/0.45 ! [X3: a,Xs: list_a,Y: a] :
% 0.27/0.45 ( ( member_a @ ( cons_a @ X3 @ Xs ) @ Y )
% 0.27/0.45 = ( ( X3 = Y )
% 0.27/0.45 | ( member_a @ Xs @ Y ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % member_rec(1)
% 0.27/0.45 thf(fact_116_splice_Oelims,axiom,
% 0.27/0.45 ! [X3: list_list_a,Xa: list_list_a,Y: list_list_a] :
% 0.27/0.45 ( ( ( splice_list_a @ X3 @ Xa )
% 0.27/0.45 = Y )
% 0.27/0.45 => ( ( ( X3 = nil_list_a )
% 0.27/0.45 => ( Y != Xa ) )
% 0.27/0.45 => ~ ! [X: list_a,Xs2: list_list_a] :
% 0.27/0.45 ( ( X3
% 0.27/0.45 = ( cons_list_a @ X @ Xs2 ) )
% 0.27/0.45 => ( Y
% 0.27/0.45 != ( cons_list_a @ X @ ( splice_list_a @ Xa @ Xs2 ) ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % splice.elims
% 0.27/0.45 thf(fact_117_splice_Oelims,axiom,
% 0.27/0.45 ! [X3: list_a,Xa: list_a,Y: list_a] :
% 0.27/0.45 ( ( ( splice_a @ X3 @ Xa )
% 0.27/0.45 = Y )
% 0.27/0.45 => ( ( ( X3 = nil_a )
% 0.27/0.45 => ( Y != Xa ) )
% 0.27/0.45 => ~ ! [X: a,Xs2: list_a] :
% 0.27/0.45 ( ( X3
% 0.27/0.45 = ( cons_a @ X @ Xs2 ) )
% 0.27/0.45 => ( Y
% 0.27/0.45 != ( cons_a @ X @ ( splice_a @ Xa @ Xs2 ) ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % splice.elims
% 0.27/0.45 thf(fact_118_bind__simps_I2_J,axiom,
% 0.27/0.45 ! [X3: a,Xs: list_a,F: a > list_a] :
% 0.27/0.45 ( ( bind_a_a @ ( cons_a @ X3 @ Xs ) @ F )
% 0.27/0.45 = ( append_a @ ( F @ X3 ) @ ( bind_a_a @ Xs @ F ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % bind_simps(2)
% 0.27/0.45 thf(fact_119_bind__simps_I2_J,axiom,
% 0.27/0.45 ! [X3: a,Xs: list_a,F: a > list_list_a] :
% 0.27/0.45 ( ( bind_a_list_a @ ( cons_a @ X3 @ Xs ) @ F )
% 0.27/0.45 = ( append_list_a @ ( F @ X3 ) @ ( bind_a_list_a @ Xs @ F ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % bind_simps(2)
% 0.27/0.45 thf(fact_120_bind__simps_I2_J,axiom,
% 0.27/0.45 ! [X3: list_a,Xs: list_list_a,F: list_a > list_a] :
% 0.27/0.45 ( ( bind_list_a_a @ ( cons_list_a @ X3 @ Xs ) @ F )
% 0.27/0.45 = ( append_a @ ( F @ X3 ) @ ( bind_list_a_a @ Xs @ F ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % bind_simps(2)
% 0.27/0.45 thf(fact_121_bind__simps_I2_J,axiom,
% 0.27/0.45 ! [X3: list_a,Xs: list_list_a,F: list_a > list_list_a] :
% 0.27/0.45 ( ( bind_list_a_list_a @ ( cons_list_a @ X3 @ Xs ) @ F )
% 0.27/0.45 = ( append_list_a @ ( F @ X3 ) @ ( bind_list_a_list_a @ Xs @ F ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % bind_simps(2)
% 0.27/0.45 thf(fact_122_same__append__eq,axiom,
% 0.27/0.45 ! [Xs: list_a,Ys2: list_a,Zs2: list_a] :
% 0.27/0.45 ( ( ( append_a @ Xs @ Ys2 )
% 0.27/0.45 = ( append_a @ Xs @ Zs2 ) )
% 0.27/0.45 = ( Ys2 = Zs2 ) ) ).
% 0.27/0.45
% 0.27/0.45 % same_append_eq
% 0.27/0.45 thf(fact_123_same__append__eq,axiom,
% 0.27/0.45 ! [Xs: list_list_a,Ys2: list_list_a,Zs2: list_list_a] :
% 0.27/0.45 ( ( ( append_list_a @ Xs @ Ys2 )
% 0.27/0.45 = ( append_list_a @ Xs @ Zs2 ) )
% 0.27/0.45 = ( Ys2 = Zs2 ) ) ).
% 0.27/0.45
% 0.27/0.45 % same_append_eq
% 0.27/0.45 thf(fact_124_append__same__eq,axiom,
% 0.27/0.45 ! [Ys2: list_a,Xs: list_a,Zs2: list_a] :
% 0.27/0.45 ( ( ( append_a @ Ys2 @ Xs )
% 0.27/0.45 = ( append_a @ Zs2 @ Xs ) )
% 0.27/0.45 = ( Ys2 = Zs2 ) ) ).
% 0.27/0.45
% 0.27/0.45 % append_same_eq
% 0.27/0.45 thf(fact_125_append__same__eq,axiom,
% 0.27/0.45 ! [Ys2: list_list_a,Xs: list_list_a,Zs2: list_list_a] :
% 0.27/0.45 ( ( ( append_list_a @ Ys2 @ Xs )
% 0.27/0.45 = ( append_list_a @ Zs2 @ Xs ) )
% 0.27/0.45 = ( Ys2 = Zs2 ) ) ).
% 0.27/0.45
% 0.27/0.45 % append_same_eq
% 0.27/0.45 thf(fact_126_append__assoc,axiom,
% 0.27/0.45 ! [Xs: list_a,Ys2: list_a,Zs2: list_a] :
% 0.27/0.45 ( ( append_a @ ( append_a @ Xs @ Ys2 ) @ Zs2 )
% 0.27/0.45 = ( append_a @ Xs @ ( append_a @ Ys2 @ Zs2 ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % append_assoc
% 0.27/0.45 thf(fact_127_append__assoc,axiom,
% 0.27/0.45 ! [Xs: list_list_a,Ys2: list_list_a,Zs2: list_list_a] :
% 0.27/0.45 ( ( append_list_a @ ( append_list_a @ Xs @ Ys2 ) @ Zs2 )
% 0.27/0.45 = ( append_list_a @ Xs @ ( append_list_a @ Ys2 @ Zs2 ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % append_assoc
% 0.27/0.45 thf(fact_128_append_Oassoc,axiom,
% 0.27/0.45 ! [A3: list_a,B: list_a,C: list_a] :
% 0.27/0.45 ( ( append_a @ ( append_a @ A3 @ B ) @ C )
% 0.27/0.45 = ( append_a @ A3 @ ( append_a @ B @ C ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % append.assoc
% 0.27/0.45 thf(fact_129_append_Oassoc,axiom,
% 0.27/0.45 ! [A3: list_list_a,B: list_list_a,C: list_list_a] :
% 0.27/0.45 ( ( append_list_a @ ( append_list_a @ A3 @ B ) @ C )
% 0.27/0.45 = ( append_list_a @ A3 @ ( append_list_a @ B @ C ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % append.assoc
% 0.27/0.45 thf(fact_130_append_Oright__neutral,axiom,
% 0.27/0.45 ! [A3: list_list_a] :
% 0.27/0.45 ( ( append_list_a @ A3 @ nil_list_a )
% 0.27/0.45 = A3 ) ).
% 0.27/0.45
% 0.27/0.45 % append.right_neutral
% 0.27/0.45 thf(fact_131_append_Oright__neutral,axiom,
% 0.27/0.45 ! [A3: list_a] :
% 0.27/0.45 ( ( append_a @ A3 @ nil_a )
% 0.27/0.45 = A3 ) ).
% 0.27/0.45
% 0.27/0.45 % append.right_neutral
% 0.27/0.45 thf(fact_132_append__is__Nil__conv,axiom,
% 0.27/0.45 ! [Xs: list_list_a,Ys2: list_list_a] :
% 0.27/0.45 ( ( ( append_list_a @ Xs @ Ys2 )
% 0.27/0.45 = nil_list_a )
% 0.27/0.45 = ( ( Xs = nil_list_a )
% 0.27/0.45 & ( Ys2 = nil_list_a ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % append_is_Nil_conv
% 0.27/0.45 thf(fact_133_append__is__Nil__conv,axiom,
% 0.27/0.45 ! [Xs: list_a,Ys2: list_a] :
% 0.27/0.45 ( ( ( append_a @ Xs @ Ys2 )
% 0.27/0.45 = nil_a )
% 0.27/0.45 = ( ( Xs = nil_a )
% 0.27/0.45 & ( Ys2 = nil_a ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % append_is_Nil_conv
% 0.27/0.45 thf(fact_134_Nil__is__append__conv,axiom,
% 0.27/0.45 ! [Xs: list_list_a,Ys2: list_list_a] :
% 0.27/0.45 ( ( nil_list_a
% 0.27/0.45 = ( append_list_a @ Xs @ Ys2 ) )
% 0.27/0.45 = ( ( Xs = nil_list_a )
% 0.27/0.45 & ( Ys2 = nil_list_a ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % Nil_is_append_conv
% 0.27/0.45 thf(fact_135_Nil__is__append__conv,axiom,
% 0.27/0.45 ! [Xs: list_a,Ys2: list_a] :
% 0.27/0.45 ( ( nil_a
% 0.27/0.45 = ( append_a @ Xs @ Ys2 ) )
% 0.27/0.45 = ( ( Xs = nil_a )
% 0.27/0.45 & ( Ys2 = nil_a ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % Nil_is_append_conv
% 0.27/0.45 thf(fact_136_self__append__conv2,axiom,
% 0.27/0.45 ! [Ys2: list_list_a,Xs: list_list_a] :
% 0.27/0.45 ( ( Ys2
% 0.27/0.45 = ( append_list_a @ Xs @ Ys2 ) )
% 0.27/0.45 = ( Xs = nil_list_a ) ) ).
% 0.27/0.45
% 0.27/0.45 % self_append_conv2
% 0.27/0.45 thf(fact_137_self__append__conv2,axiom,
% 0.27/0.45 ! [Ys2: list_a,Xs: list_a] :
% 0.27/0.45 ( ( Ys2
% 0.27/0.45 = ( append_a @ Xs @ Ys2 ) )
% 0.27/0.45 = ( Xs = nil_a ) ) ).
% 0.27/0.45
% 0.27/0.45 % self_append_conv2
% 0.27/0.45 thf(fact_138_append__self__conv2,axiom,
% 0.27/0.45 ! [Xs: list_list_a,Ys2: list_list_a] :
% 0.27/0.45 ( ( ( append_list_a @ Xs @ Ys2 )
% 0.27/0.45 = Ys2 )
% 0.27/0.45 = ( Xs = nil_list_a ) ) ).
% 0.27/0.45
% 0.27/0.45 % append_self_conv2
% 0.27/0.45 thf(fact_139_append__self__conv2,axiom,
% 0.27/0.45 ! [Xs: list_a,Ys2: list_a] :
% 0.27/0.45 ( ( ( append_a @ Xs @ Ys2 )
% 0.27/0.45 = Ys2 )
% 0.27/0.45 = ( Xs = nil_a ) ) ).
% 0.27/0.45
% 0.27/0.45 % append_self_conv2
% 0.27/0.45 thf(fact_140_self__append__conv,axiom,
% 0.27/0.45 ! [Xs: list_list_a,Ys2: list_list_a] :
% 0.27/0.45 ( ( Xs
% 0.27/0.45 = ( append_list_a @ Xs @ Ys2 ) )
% 0.27/0.45 = ( Ys2 = nil_list_a ) ) ).
% 0.27/0.45
% 0.27/0.45 % self_append_conv
% 0.27/0.45 thf(fact_141_self__append__conv,axiom,
% 0.27/0.45 ! [Xs: list_a,Ys2: list_a] :
% 0.27/0.45 ( ( Xs
% 0.27/0.45 = ( append_a @ Xs @ Ys2 ) )
% 0.27/0.45 = ( Ys2 = nil_a ) ) ).
% 0.27/0.45
% 0.27/0.45 % self_append_conv
% 0.27/0.45 thf(fact_142_append__self__conv,axiom,
% 0.27/0.45 ! [Xs: list_list_a,Ys2: list_list_a] :
% 0.27/0.45 ( ( ( append_list_a @ Xs @ Ys2 )
% 0.27/0.45 = Xs )
% 0.27/0.45 = ( Ys2 = nil_list_a ) ) ).
% 0.27/0.45
% 0.27/0.45 % append_self_conv
% 0.27/0.45 thf(fact_143_append__self__conv,axiom,
% 0.27/0.45 ! [Xs: list_a,Ys2: list_a] :
% 0.27/0.45 ( ( ( append_a @ Xs @ Ys2 )
% 0.27/0.45 = Xs )
% 0.27/0.45 = ( Ys2 = nil_a ) ) ).
% 0.27/0.45
% 0.27/0.45 % append_self_conv
% 0.27/0.45 thf(fact_144_append__Nil2,axiom,
% 0.27/0.45 ! [Xs: list_list_a] :
% 0.27/0.45 ( ( append_list_a @ Xs @ nil_list_a )
% 0.27/0.45 = Xs ) ).
% 0.27/0.45
% 0.27/0.45 % append_Nil2
% 0.27/0.45 thf(fact_145_append__Nil2,axiom,
% 0.27/0.45 ! [Xs: list_a] :
% 0.27/0.45 ( ( append_a @ Xs @ nil_a )
% 0.27/0.45 = Xs ) ).
% 0.27/0.45
% 0.27/0.45 % append_Nil2
% 0.27/0.45 thf(fact_146_split__Nil__iff,axiom,
% 0.27/0.45 ! [Xs: list_list_a,Ys2: list_list_a] :
% 0.27/0.45 ( ( ( splice_list_a @ Xs @ Ys2 )
% 0.27/0.45 = nil_list_a )
% 0.27/0.45 = ( ( Xs = nil_list_a )
% 0.27/0.45 & ( Ys2 = nil_list_a ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % split_Nil_iff
% 0.27/0.45 thf(fact_147_split__Nil__iff,axiom,
% 0.27/0.45 ! [Xs: list_a,Ys2: list_a] :
% 0.27/0.45 ( ( ( splice_a @ Xs @ Ys2 )
% 0.27/0.45 = nil_a )
% 0.27/0.45 = ( ( Xs = nil_a )
% 0.27/0.45 & ( Ys2 = nil_a ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % split_Nil_iff
% 0.27/0.45 thf(fact_148_splice__Nil2,axiom,
% 0.27/0.45 ! [Xs: list_list_a] :
% 0.27/0.45 ( ( splice_list_a @ Xs @ nil_list_a )
% 0.27/0.45 = Xs ) ).
% 0.27/0.45
% 0.27/0.45 % splice_Nil2
% 0.27/0.45 thf(fact_149_splice__Nil2,axiom,
% 0.27/0.45 ! [Xs: list_a] :
% 0.27/0.45 ( ( splice_a @ Xs @ nil_a )
% 0.27/0.45 = Xs ) ).
% 0.27/0.45
% 0.27/0.45 % splice_Nil2
% 0.27/0.45 thf(fact_150_i__append__assoc,axiom,
% 0.27/0.45 ! [Xs: list_list_a,Ys2: list_list_a,F: nat > list_a] :
% 0.27/0.45 ( ( listIn1753026346list_a @ Xs @ ( listIn1753026346list_a @ Ys2 @ F ) )
% 0.27/0.45 = ( listIn1753026346list_a @ ( append_list_a @ Xs @ Ys2 ) @ F ) ) ).
% 0.27/0.45
% 0.27/0.45 % i_append_assoc
% 0.27/0.45 thf(fact_151_i__append__assoc,axiom,
% 0.27/0.45 ! [Xs: list_a,Ys2: list_a,F: nat > a] :
% 0.27/0.45 ( ( listIn1312259492pend_a @ Xs @ ( listIn1312259492pend_a @ Ys2 @ F ) )
% 0.27/0.45 = ( listIn1312259492pend_a @ ( append_a @ Xs @ Ys2 ) @ F ) ) ).
% 0.27/0.45
% 0.27/0.45 % i_append_assoc
% 0.27/0.45 thf(fact_152_append1__eq__conv,axiom,
% 0.27/0.45 ! [Xs: list_list_a,X3: list_a,Ys2: list_list_a,Y: list_a] :
% 0.27/0.45 ( ( ( append_list_a @ Xs @ ( cons_list_a @ X3 @ nil_list_a ) )
% 0.27/0.45 = ( append_list_a @ Ys2 @ ( cons_list_a @ Y @ nil_list_a ) ) )
% 0.27/0.45 = ( ( Xs = Ys2 )
% 0.27/0.45 & ( X3 = Y ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % append1_eq_conv
% 0.27/0.45 thf(fact_153_append1__eq__conv,axiom,
% 0.27/0.45 ! [Xs: list_a,X3: a,Ys2: list_a,Y: a] :
% 0.27/0.45 ( ( ( append_a @ Xs @ ( cons_a @ X3 @ nil_a ) )
% 0.27/0.45 = ( append_a @ Ys2 @ ( cons_a @ Y @ nil_a ) ) )
% 0.27/0.45 = ( ( Xs = Ys2 )
% 0.27/0.45 & ( X3 = Y ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % append1_eq_conv
% 0.27/0.45 thf(fact_154_lexordp__eq__simps_I4_J,axiom,
% 0.27/0.45 ! [X3: nat,Xs: list_nat,Y: nat,Ys2: list_nat] :
% 0.27/0.45 ( ( ord_lexordp_eq_nat @ ( cons_nat @ X3 @ Xs ) @ ( cons_nat @ Y @ Ys2 ) )
% 0.27/0.45 = ( ( ord_less_nat @ X3 @ Y )
% 0.27/0.45 | ( ~ ( ord_less_nat @ Y @ X3 )
% 0.27/0.45 & ( ord_lexordp_eq_nat @ Xs @ Ys2 ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % lexordp_eq_simps(4)
% 0.27/0.45 thf(fact_155_append__eq__append__conv2,axiom,
% 0.27/0.45 ! [Xs: list_a,Ys2: list_a,Zs2: list_a,Ts: list_a] :
% 0.27/0.45 ( ( ( append_a @ Xs @ Ys2 )
% 0.27/0.45 = ( append_a @ Zs2 @ Ts ) )
% 0.27/0.45 = ( ? [Us: list_a] :
% 0.27/0.45 ( ( ( Xs
% 0.27/0.45 = ( append_a @ Zs2 @ Us ) )
% 0.27/0.45 & ( ( append_a @ Us @ Ys2 )
% 0.27/0.45 = Ts ) )
% 0.27/0.45 | ( ( ( append_a @ Xs @ Us )
% 0.27/0.45 = Zs2 )
% 0.27/0.45 & ( Ys2
% 0.27/0.45 = ( append_a @ Us @ Ts ) ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % append_eq_append_conv2
% 0.27/0.45 thf(fact_156_append__eq__append__conv2,axiom,
% 0.27/0.45 ! [Xs: list_list_a,Ys2: list_list_a,Zs2: list_list_a,Ts: list_list_a] :
% 0.27/0.45 ( ( ( append_list_a @ Xs @ Ys2 )
% 0.27/0.45 = ( append_list_a @ Zs2 @ Ts ) )
% 0.27/0.45 = ( ? [Us: list_list_a] :
% 0.27/0.45 ( ( ( Xs
% 0.27/0.45 = ( append_list_a @ Zs2 @ Us ) )
% 0.27/0.45 & ( ( append_list_a @ Us @ Ys2 )
% 0.27/0.45 = Ts ) )
% 0.27/0.45 | ( ( ( append_list_a @ Xs @ Us )
% 0.27/0.45 = Zs2 )
% 0.27/0.45 & ( Ys2
% 0.27/0.45 = ( append_list_a @ Us @ Ts ) ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % append_eq_append_conv2
% 0.27/0.45 thf(fact_157_append__eq__appendI,axiom,
% 0.27/0.45 ! [Xs: list_a,Xs1: list_a,Zs2: list_a,Ys2: list_a,Us2: list_a] :
% 0.27/0.45 ( ( ( append_a @ Xs @ Xs1 )
% 0.27/0.45 = Zs2 )
% 0.27/0.45 => ( ( Ys2
% 0.27/0.45 = ( append_a @ Xs1 @ Us2 ) )
% 0.27/0.45 => ( ( append_a @ Xs @ Ys2 )
% 0.27/0.45 = ( append_a @ Zs2 @ Us2 ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % append_eq_appendI
% 0.27/0.45 thf(fact_158_append__eq__appendI,axiom,
% 0.27/0.45 ! [Xs: list_list_a,Xs1: list_list_a,Zs2: list_list_a,Ys2: list_list_a,Us2: list_list_a] :
% 0.27/0.45 ( ( ( append_list_a @ Xs @ Xs1 )
% 0.27/0.45 = Zs2 )
% 0.27/0.45 => ( ( Ys2
% 0.27/0.45 = ( append_list_a @ Xs1 @ Us2 ) )
% 0.27/0.45 => ( ( append_list_a @ Xs @ Ys2 )
% 0.27/0.45 = ( append_list_a @ Zs2 @ Us2 ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % append_eq_appendI
% 0.27/0.45 thf(fact_159_append__Cons,axiom,
% 0.27/0.45 ! [X3: list_a,Xs: list_list_a,Ys2: list_list_a] :
% 0.27/0.45 ( ( append_list_a @ ( cons_list_a @ X3 @ Xs ) @ Ys2 )
% 0.27/0.45 = ( cons_list_a @ X3 @ ( append_list_a @ Xs @ Ys2 ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % append_Cons
% 0.27/0.45 thf(fact_160_append__Cons,axiom,
% 0.27/0.45 ! [X3: a,Xs: list_a,Ys2: list_a] :
% 0.27/0.45 ( ( append_a @ ( cons_a @ X3 @ Xs ) @ Ys2 )
% 0.27/0.45 = ( cons_a @ X3 @ ( append_a @ Xs @ Ys2 ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % append_Cons
% 0.27/0.45 thf(fact_161_Cons__eq__appendI,axiom,
% 0.27/0.45 ! [X3: list_a,Xs1: list_list_a,Ys2: list_list_a,Xs: list_list_a,Zs2: list_list_a] :
% 0.27/0.45 ( ( ( cons_list_a @ X3 @ Xs1 )
% 0.27/0.45 = Ys2 )
% 0.27/0.45 => ( ( Xs
% 0.27/0.45 = ( append_list_a @ Xs1 @ Zs2 ) )
% 0.27/0.45 => ( ( cons_list_a @ X3 @ Xs )
% 0.27/0.45 = ( append_list_a @ Ys2 @ Zs2 ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % Cons_eq_appendI
% 0.27/0.45 thf(fact_162_Cons__eq__appendI,axiom,
% 0.27/0.45 ! [X3: a,Xs1: list_a,Ys2: list_a,Xs: list_a,Zs2: list_a] :
% 0.27/0.45 ( ( ( cons_a @ X3 @ Xs1 )
% 0.27/0.45 = Ys2 )
% 0.27/0.45 => ( ( Xs
% 0.27/0.45 = ( append_a @ Xs1 @ Zs2 ) )
% 0.27/0.45 => ( ( cons_a @ X3 @ Xs )
% 0.27/0.45 = ( append_a @ Ys2 @ Zs2 ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % Cons_eq_appendI
% 0.27/0.45 thf(fact_163_append_Oleft__neutral,axiom,
% 0.27/0.45 ! [A3: list_list_a] :
% 0.27/0.45 ( ( append_list_a @ nil_list_a @ A3 )
% 0.27/0.45 = A3 ) ).
% 0.27/0.45
% 0.27/0.45 % append.left_neutral
% 0.27/0.45 thf(fact_164_append_Oleft__neutral,axiom,
% 0.27/0.45 ! [A3: list_a] :
% 0.27/0.45 ( ( append_a @ nil_a @ A3 )
% 0.27/0.45 = A3 ) ).
% 0.27/0.45
% 0.27/0.45 % append.left_neutral
% 0.27/0.45 thf(fact_165_append__Nil,axiom,
% 0.27/0.45 ! [Ys2: list_list_a] :
% 0.27/0.45 ( ( append_list_a @ nil_list_a @ Ys2 )
% 0.27/0.45 = Ys2 ) ).
% 0.27/0.45
% 0.27/0.45 % append_Nil
% 0.27/0.45 thf(fact_166_append__Nil,axiom,
% 0.27/0.45 ! [Ys2: list_a] :
% 0.27/0.45 ( ( append_a @ nil_a @ Ys2 )
% 0.27/0.45 = Ys2 ) ).
% 0.27/0.45
% 0.27/0.45 % append_Nil
% 0.27/0.45 thf(fact_167_eq__Nil__appendI,axiom,
% 0.27/0.45 ! [Xs: list_list_a,Ys2: list_list_a] :
% 0.27/0.45 ( ( Xs = Ys2 )
% 0.27/0.45 => ( Xs
% 0.27/0.45 = ( append_list_a @ nil_list_a @ Ys2 ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % eq_Nil_appendI
% 0.27/0.45 thf(fact_168_eq__Nil__appendI,axiom,
% 0.27/0.45 ! [Xs: list_a,Ys2: list_a] :
% 0.27/0.45 ( ( Xs = Ys2 )
% 0.27/0.45 => ( Xs
% 0.27/0.45 = ( append_a @ nil_a @ Ys2 ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % eq_Nil_appendI
% 0.27/0.45 thf(fact_169_ord_Olexordp__eq__pref,axiom,
% 0.27/0.45 ! [Less: list_a > list_a > $o,U: list_list_a,V: list_list_a] : ( lexordp_eq_list_a @ Less @ U @ ( append_list_a @ U @ V ) ) ).
% 0.27/0.45
% 0.27/0.45 % ord.lexordp_eq_pref
% 0.27/0.45 thf(fact_170_ord_Olexordp__eq__pref,axiom,
% 0.27/0.45 ! [Less: a > a > $o,U: list_a,V: list_a] : ( lexordp_eq_a @ Less @ U @ ( append_a @ U @ V ) ) ).
% 0.27/0.45
% 0.27/0.45 % ord.lexordp_eq_pref
% 0.27/0.45 thf(fact_171_splice_Osimps_I2_J,axiom,
% 0.27/0.45 ! [X3: list_a,Xs: list_list_a,Ys2: list_list_a] :
% 0.27/0.45 ( ( splice_list_a @ ( cons_list_a @ X3 @ Xs ) @ Ys2 )
% 0.27/0.45 = ( cons_list_a @ X3 @ ( splice_list_a @ Ys2 @ Xs ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % splice.simps(2)
% 0.27/0.45 thf(fact_172_splice_Osimps_I2_J,axiom,
% 0.27/0.45 ! [X3: a,Xs: list_a,Ys2: list_a] :
% 0.27/0.45 ( ( splice_a @ ( cons_a @ X3 @ Xs ) @ Ys2 )
% 0.27/0.45 = ( cons_a @ X3 @ ( splice_a @ Ys2 @ Xs ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % splice.simps(2)
% 0.27/0.45 thf(fact_173_splice_Osimps_I1_J,axiom,
% 0.27/0.45 ! [Ys2: list_list_a] :
% 0.27/0.45 ( ( splice_list_a @ nil_list_a @ Ys2 )
% 0.27/0.45 = Ys2 ) ).
% 0.27/0.45
% 0.27/0.45 % splice.simps(1)
% 0.27/0.45 thf(fact_174_splice_Osimps_I1_J,axiom,
% 0.27/0.45 ! [Ys2: list_a] :
% 0.27/0.45 ( ( splice_a @ nil_a @ Ys2 )
% 0.27/0.45 = Ys2 ) ).
% 0.27/0.45
% 0.27/0.45 % splice.simps(1)
% 0.27/0.45 thf(fact_175_rev__nonempty__induct,axiom,
% 0.27/0.45 ! [Xs: list_list_a,P: list_list_a > $o] :
% 0.27/0.45 ( ( Xs != nil_list_a )
% 0.27/0.45 => ( ! [X: list_a] : ( P @ ( cons_list_a @ X @ nil_list_a ) )
% 0.27/0.45 => ( ! [X: list_a,Xs2: list_list_a] :
% 0.27/0.45 ( ( Xs2 != nil_list_a )
% 0.27/0.45 => ( ( P @ Xs2 )
% 0.27/0.45 => ( P @ ( append_list_a @ Xs2 @ ( cons_list_a @ X @ nil_list_a ) ) ) ) )
% 0.27/0.45 => ( P @ Xs ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % rev_nonempty_induct
% 0.27/0.45 thf(fact_176_rev__nonempty__induct,axiom,
% 0.27/0.45 ! [Xs: list_a,P: list_a > $o] :
% 0.27/0.45 ( ( Xs != nil_a )
% 0.27/0.45 => ( ! [X: a] : ( P @ ( cons_a @ X @ nil_a ) )
% 0.27/0.45 => ( ! [X: a,Xs2: list_a] :
% 0.27/0.45 ( ( Xs2 != nil_a )
% 0.27/0.45 => ( ( P @ Xs2 )
% 0.27/0.45 => ( P @ ( append_a @ Xs2 @ ( cons_a @ X @ nil_a ) ) ) ) )
% 0.27/0.45 => ( P @ Xs ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % rev_nonempty_induct
% 0.27/0.45 thf(fact_177_append__eq__Cons__conv,axiom,
% 0.27/0.45 ! [Ys2: list_list_a,Zs2: list_list_a,X3: list_a,Xs: list_list_a] :
% 0.27/0.45 ( ( ( append_list_a @ Ys2 @ Zs2 )
% 0.27/0.45 = ( cons_list_a @ X3 @ Xs ) )
% 0.27/0.45 = ( ( ( Ys2 = nil_list_a )
% 0.27/0.45 & ( Zs2
% 0.27/0.45 = ( cons_list_a @ X3 @ Xs ) ) )
% 0.27/0.45 | ? [Ys4: list_list_a] :
% 0.27/0.45 ( ( Ys2
% 0.27/0.45 = ( cons_list_a @ X3 @ Ys4 ) )
% 0.27/0.45 & ( ( append_list_a @ Ys4 @ Zs2 )
% 0.27/0.45 = Xs ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % append_eq_Cons_conv
% 0.27/0.45 thf(fact_178_append__eq__Cons__conv,axiom,
% 0.27/0.45 ! [Ys2: list_a,Zs2: list_a,X3: a,Xs: list_a] :
% 0.27/0.45 ( ( ( append_a @ Ys2 @ Zs2 )
% 0.27/0.45 = ( cons_a @ X3 @ Xs ) )
% 0.27/0.45 = ( ( ( Ys2 = nil_a )
% 0.27/0.45 & ( Zs2
% 0.27/0.45 = ( cons_a @ X3 @ Xs ) ) )
% 0.27/0.45 | ? [Ys4: list_a] :
% 0.27/0.45 ( ( Ys2
% 0.27/0.45 = ( cons_a @ X3 @ Ys4 ) )
% 0.27/0.45 & ( ( append_a @ Ys4 @ Zs2 )
% 0.27/0.45 = Xs ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % append_eq_Cons_conv
% 0.27/0.45 thf(fact_179_Cons__eq__append__conv,axiom,
% 0.27/0.45 ! [X3: list_a,Xs: list_list_a,Ys2: list_list_a,Zs2: list_list_a] :
% 0.27/0.45 ( ( ( cons_list_a @ X3 @ Xs )
% 0.27/0.45 = ( append_list_a @ Ys2 @ Zs2 ) )
% 0.27/0.45 = ( ( ( Ys2 = nil_list_a )
% 0.27/0.45 & ( ( cons_list_a @ X3 @ Xs )
% 0.27/0.45 = Zs2 ) )
% 0.27/0.45 | ? [Ys4: list_list_a] :
% 0.27/0.45 ( ( ( cons_list_a @ X3 @ Ys4 )
% 0.27/0.45 = Ys2 )
% 0.27/0.45 & ( Xs
% 0.27/0.45 = ( append_list_a @ Ys4 @ Zs2 ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % Cons_eq_append_conv
% 0.27/0.45 thf(fact_180_Cons__eq__append__conv,axiom,
% 0.27/0.45 ! [X3: a,Xs: list_a,Ys2: list_a,Zs2: list_a] :
% 0.27/0.45 ( ( ( cons_a @ X3 @ Xs )
% 0.27/0.45 = ( append_a @ Ys2 @ Zs2 ) )
% 0.27/0.45 = ( ( ( Ys2 = nil_a )
% 0.27/0.45 & ( ( cons_a @ X3 @ Xs )
% 0.27/0.45 = Zs2 ) )
% 0.27/0.45 | ? [Ys4: list_a] :
% 0.27/0.45 ( ( ( cons_a @ X3 @ Ys4 )
% 0.27/0.45 = Ys2 )
% 0.27/0.45 & ( Xs
% 0.27/0.45 = ( append_a @ Ys4 @ Zs2 ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % Cons_eq_append_conv
% 0.27/0.45 thf(fact_181_rev__exhaust,axiom,
% 0.27/0.45 ! [Xs: list_list_a] :
% 0.27/0.45 ( ( Xs != nil_list_a )
% 0.27/0.45 => ~ ! [Ys3: list_list_a,Y3: list_a] :
% 0.27/0.45 ( Xs
% 0.27/0.45 != ( append_list_a @ Ys3 @ ( cons_list_a @ Y3 @ nil_list_a ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % rev_exhaust
% 0.27/0.45 thf(fact_182_rev__exhaust,axiom,
% 0.27/0.45 ! [Xs: list_a] :
% 0.27/0.45 ( ( Xs != nil_a )
% 0.27/0.45 => ~ ! [Ys3: list_a,Y3: a] :
% 0.27/0.45 ( Xs
% 0.27/0.45 != ( append_a @ Ys3 @ ( cons_a @ Y3 @ nil_a ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % rev_exhaust
% 0.27/0.45 thf(fact_183_rev__induct,axiom,
% 0.27/0.45 ! [P: list_list_a > $o,Xs: list_list_a] :
% 0.27/0.45 ( ( P @ nil_list_a )
% 0.27/0.45 => ( ! [X: list_a,Xs2: list_list_a] :
% 0.27/0.45 ( ( P @ Xs2 )
% 0.27/0.45 => ( P @ ( append_list_a @ Xs2 @ ( cons_list_a @ X @ nil_list_a ) ) ) )
% 0.27/0.45 => ( P @ Xs ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % rev_induct
% 0.27/0.45 thf(fact_184_rev__induct,axiom,
% 0.27/0.45 ! [P: list_a > $o,Xs: list_a] :
% 0.27/0.45 ( ( P @ nil_a )
% 0.27/0.45 => ( ! [X: a,Xs2: list_a] :
% 0.27/0.45 ( ( P @ Xs2 )
% 0.27/0.45 => ( P @ ( append_a @ Xs2 @ ( cons_a @ X @ nil_a ) ) ) )
% 0.27/0.45 => ( P @ Xs ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % rev_induct
% 0.27/0.45 thf(fact_185_append__eq__Cons,axiom,
% 0.27/0.45 ! [X3: list_a,Xs: list_list_a] :
% 0.27/0.45 ( ( append_list_a @ ( cons_list_a @ X3 @ nil_list_a ) @ Xs )
% 0.27/0.45 = ( cons_list_a @ X3 @ Xs ) ) ).
% 0.27/0.45
% 0.27/0.45 % append_eq_Cons
% 0.27/0.45 thf(fact_186_append__eq__Cons,axiom,
% 0.27/0.45 ! [X3: a,Xs: list_a] :
% 0.27/0.45 ( ( append_a @ ( cons_a @ X3 @ nil_a ) @ Xs )
% 0.27/0.45 = ( cons_a @ X3 @ Xs ) ) ).
% 0.27/0.45
% 0.27/0.45 % append_eq_Cons
% 0.27/0.45 thf(fact_187_lexordp__eq_OCons,axiom,
% 0.27/0.45 ! [X3: nat,Y: nat,Xs: list_nat,Ys2: list_nat] :
% 0.27/0.45 ( ( ord_less_nat @ X3 @ Y )
% 0.27/0.45 => ( ord_lexordp_eq_nat @ ( cons_nat @ X3 @ Xs ) @ ( cons_nat @ Y @ Ys2 ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % lexordp_eq.Cons
% 0.27/0.45 thf(fact_188_lexordp__eq_OCons__eq,axiom,
% 0.27/0.45 ! [X3: nat,Y: nat,Xs: list_nat,Ys2: list_nat] :
% 0.27/0.45 ( ~ ( ord_less_nat @ X3 @ Y )
% 0.27/0.45 => ( ~ ( ord_less_nat @ Y @ X3 )
% 0.27/0.45 => ( ( ord_lexordp_eq_nat @ Xs @ Ys2 )
% 0.27/0.45 => ( ord_lexordp_eq_nat @ ( cons_nat @ X3 @ Xs ) @ ( cons_nat @ Y @ Ys2 ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % lexordp_eq.Cons_eq
% 0.27/0.45 thf(fact_189_maps__simps_I1_J,axiom,
% 0.27/0.45 ! [F: a > list_a,X3: a,Xs: list_a] :
% 0.27/0.45 ( ( maps_a_a @ F @ ( cons_a @ X3 @ Xs ) )
% 0.27/0.45 = ( append_a @ ( F @ X3 ) @ ( maps_a_a @ F @ Xs ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % maps_simps(1)
% 0.27/0.45 thf(fact_190_maps__simps_I1_J,axiom,
% 0.27/0.45 ! [F: a > list_list_a,X3: a,Xs: list_a] :
% 0.27/0.45 ( ( maps_a_list_a @ F @ ( cons_a @ X3 @ Xs ) )
% 0.27/0.45 = ( append_list_a @ ( F @ X3 ) @ ( maps_a_list_a @ F @ Xs ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % maps_simps(1)
% 0.27/0.45 thf(fact_191_maps__simps_I1_J,axiom,
% 0.27/0.45 ! [F: list_a > list_a,X3: list_a,Xs: list_list_a] :
% 0.27/0.45 ( ( maps_list_a_a @ F @ ( cons_list_a @ X3 @ Xs ) )
% 0.27/0.45 = ( append_a @ ( F @ X3 ) @ ( maps_list_a_a @ F @ Xs ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % maps_simps(1)
% 0.27/0.45 thf(fact_192_maps__simps_I1_J,axiom,
% 0.27/0.45 ! [F: list_a > list_list_a,X3: list_a,Xs: list_list_a] :
% 0.27/0.45 ( ( maps_list_a_list_a @ F @ ( cons_list_a @ X3 @ Xs ) )
% 0.27/0.45 = ( append_list_a @ ( F @ X3 ) @ ( maps_list_a_list_a @ F @ Xs ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % maps_simps(1)
% 0.27/0.45 thf(fact_193_concat__eq__append__conv,axiom,
% 0.27/0.45 ! [Xss2: list_list_list_a,Ys2: list_list_a,Zs2: list_list_a] :
% 0.27/0.45 ( ( ( concat_list_a @ Xss2 )
% 0.27/0.45 = ( append_list_a @ Ys2 @ Zs2 ) )
% 0.27/0.45 = ( ( ( Xss2 = nil_list_list_a )
% 0.27/0.45 => ( ( Ys2 = nil_list_a )
% 0.27/0.45 & ( Zs2 = nil_list_a ) ) )
% 0.27/0.45 & ( ( Xss2 != nil_list_list_a )
% 0.27/0.45 => ? [Xss1: list_list_list_a,Xs3: list_list_a,Xs4: list_list_a,Xss22: list_list_list_a] :
% 0.27/0.45 ( ( Xss2
% 0.27/0.45 = ( append_list_list_a @ Xss1 @ ( cons_list_list_a @ ( append_list_a @ Xs3 @ Xs4 ) @ Xss22 ) ) )
% 0.27/0.45 & ( Ys2
% 0.27/0.45 = ( append_list_a @ ( concat_list_a @ Xss1 ) @ Xs3 ) )
% 0.27/0.45 & ( Zs2
% 0.27/0.45 = ( append_list_a @ Xs4 @ ( concat_list_a @ Xss22 ) ) ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % concat_eq_append_conv
% 0.27/0.45 thf(fact_194_concat__eq__append__conv,axiom,
% 0.27/0.45 ! [Xss2: list_list_a,Ys2: list_a,Zs2: list_a] :
% 0.27/0.45 ( ( ( concat_a @ Xss2 )
% 0.27/0.45 = ( append_a @ Ys2 @ Zs2 ) )
% 0.27/0.45 = ( ( ( Xss2 = nil_list_a )
% 0.27/0.45 => ( ( Ys2 = nil_a )
% 0.27/0.45 & ( Zs2 = nil_a ) ) )
% 0.27/0.45 & ( ( Xss2 != nil_list_a )
% 0.27/0.45 => ? [Xss1: list_list_a,Xs3: list_a,Xs4: list_a,Xss22: list_list_a] :
% 0.27/0.45 ( ( Xss2
% 0.27/0.45 = ( append_list_a @ Xss1 @ ( cons_list_a @ ( append_a @ Xs3 @ Xs4 ) @ Xss22 ) ) )
% 0.27/0.45 & ( Ys2
% 0.27/0.45 = ( append_a @ ( concat_a @ Xss1 ) @ Xs3 ) )
% 0.27/0.45 & ( Zs2
% 0.27/0.45 = ( append_a @ Xs4 @ ( concat_a @ Xss22 ) ) ) ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % concat_eq_append_conv
% 0.27/0.45 thf(fact_195_rotate1_Osimps_I2_J,axiom,
% 0.27/0.45 ! [X3: list_a,Xs: list_list_a] :
% 0.27/0.45 ( ( rotate1_list_a @ ( cons_list_a @ X3 @ Xs ) )
% 0.27/0.45 = ( append_list_a @ Xs @ ( cons_list_a @ X3 @ nil_list_a ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % rotate1.simps(2)
% 0.27/0.45 thf(fact_196_rotate1_Osimps_I2_J,axiom,
% 0.27/0.45 ! [X3: a,Xs: list_a] :
% 0.27/0.45 ( ( rotate1_a @ ( cons_a @ X3 @ Xs ) )
% 0.27/0.45 = ( append_a @ Xs @ ( cons_a @ X3 @ nil_a ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % rotate1.simps(2)
% 0.27/0.45 thf(fact_197_butlast__snoc,axiom,
% 0.27/0.45 ! [Xs: list_list_a,X3: list_a] :
% 0.27/0.45 ( ( butlast_list_a @ ( append_list_a @ Xs @ ( cons_list_a @ X3 @ nil_list_a ) ) )
% 0.27/0.45 = Xs ) ).
% 0.27/0.45
% 0.27/0.45 % butlast_snoc
% 0.27/0.45 thf(fact_198_butlast__snoc,axiom,
% 0.27/0.45 ! [Xs: list_a,X3: a] :
% 0.27/0.45 ( ( butlast_a @ ( append_a @ Xs @ ( cons_a @ X3 @ nil_a ) ) )
% 0.27/0.45 = Xs ) ).
% 0.27/0.45
% 0.27/0.45 % butlast_snoc
% 0.27/0.45 thf(fact_199_last__snoc,axiom,
% 0.27/0.45 ! [Xs: list_list_a,X3: list_a] :
% 0.27/0.45 ( ( last_list_a @ ( append_list_a @ Xs @ ( cons_list_a @ X3 @ nil_list_a ) ) )
% 0.27/0.45 = X3 ) ).
% 0.27/0.45
% 0.27/0.45 % last_snoc
% 0.27/0.45 thf(fact_200_last__snoc,axiom,
% 0.27/0.45 ! [Xs: list_a,X3: a] :
% 0.27/0.45 ( ( last_a @ ( append_a @ Xs @ ( cons_a @ X3 @ nil_a ) ) )
% 0.27/0.45 = X3 ) ).
% 0.27/0.45
% 0.27/0.45 % last_snoc
% 0.27/0.45 thf(fact_201_SuccI,axiom,
% 0.27/0.45 ! [Kl: list_list_a,K: list_a,Kl2: set_list_list_a] :
% 0.27/0.45 ( ( member_list_list_a @ ( append_list_a @ Kl @ ( cons_list_a @ K @ nil_list_a ) ) @ Kl2 )
% 0.27/0.45 => ( member_list_a2 @ K @ ( bNF_Gr1046450207list_a @ Kl2 @ Kl ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % SuccI
% 0.27/0.45 thf(fact_202_SuccI,axiom,
% 0.27/0.45 ! [Kl: list_a,K: a,Kl2: set_list_a] :
% 0.27/0.45 ( ( member_list_a2 @ ( append_a @ Kl @ ( cons_a @ K @ nil_a ) ) @ Kl2 )
% 0.27/0.45 => ( member_a2 @ K @ ( bNF_Greatest_Succ_a @ Kl2 @ Kl ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % SuccI
% 0.27/0.45 thf(fact_203_SuccD,axiom,
% 0.27/0.45 ! [K: list_a,Kl2: set_list_list_a,Kl: list_list_a] :
% 0.27/0.45 ( ( member_list_a2 @ K @ ( bNF_Gr1046450207list_a @ Kl2 @ Kl ) )
% 0.27/0.45 => ( member_list_list_a @ ( append_list_a @ Kl @ ( cons_list_a @ K @ nil_list_a ) ) @ Kl2 ) ) ).
% 0.27/0.45
% 0.27/0.45 % SuccD
% 0.27/0.45 thf(fact_204_SuccD,axiom,
% 0.27/0.45 ! [K: a,Kl2: set_list_a,Kl: list_a] :
% 0.27/0.45 ( ( member_a2 @ K @ ( bNF_Greatest_Succ_a @ Kl2 @ Kl ) )
% 0.27/0.45 => ( member_list_a2 @ ( append_a @ Kl @ ( cons_a @ K @ nil_a ) ) @ Kl2 ) ) ).
% 0.27/0.45
% 0.27/0.45 % SuccD
% 0.27/0.45 thf(fact_205_rotate1__is__Nil__conv,axiom,
% 0.27/0.45 ! [Xs: list_list_a] :
% 0.27/0.45 ( ( ( rotate1_list_a @ Xs )
% 0.27/0.45 = nil_list_a )
% 0.27/0.45 = ( Xs = nil_list_a ) ) ).
% 0.27/0.45
% 0.27/0.45 % rotate1_is_Nil_conv
% 0.27/0.45 thf(fact_206_rotate1__is__Nil__conv,axiom,
% 0.27/0.45 ! [Xs: list_a] :
% 0.27/0.45 ( ( ( rotate1_a @ Xs )
% 0.27/0.45 = nil_a )
% 0.27/0.45 = ( Xs = nil_a ) ) ).
% 0.27/0.45
% 0.27/0.45 % rotate1_is_Nil_conv
% 0.27/0.45 thf(fact_207_last__appendL,axiom,
% 0.27/0.45 ! [Ys2: list_list_a,Xs: list_list_a] :
% 0.27/0.45 ( ( Ys2 = nil_list_a )
% 0.27/0.45 => ( ( last_list_a @ ( append_list_a @ Xs @ Ys2 ) )
% 0.27/0.45 = ( last_list_a @ Xs ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % last_appendL
% 0.27/0.45 thf(fact_208_last__appendL,axiom,
% 0.27/0.45 ! [Ys2: list_a,Xs: list_a] :
% 0.27/0.45 ( ( Ys2 = nil_a )
% 0.27/0.45 => ( ( last_a @ ( append_a @ Xs @ Ys2 ) )
% 0.27/0.45 = ( last_a @ Xs ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % last_appendL
% 0.27/0.45 thf(fact_209_last__appendR,axiom,
% 0.27/0.45 ! [Ys2: list_list_a,Xs: list_list_a] :
% 0.27/0.45 ( ( Ys2 != nil_list_a )
% 0.27/0.45 => ( ( last_list_a @ ( append_list_a @ Xs @ Ys2 ) )
% 0.27/0.45 = ( last_list_a @ Ys2 ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % last_appendR
% 0.27/0.45 thf(fact_210_last__appendR,axiom,
% 0.27/0.45 ! [Ys2: list_a,Xs: list_a] :
% 0.27/0.45 ( ( Ys2 != nil_a )
% 0.27/0.45 => ( ( last_a @ ( append_a @ Xs @ Ys2 ) )
% 0.27/0.45 = ( last_a @ Ys2 ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % last_appendR
% 0.27/0.45 thf(fact_211_concat__append,axiom,
% 0.27/0.45 ! [Xs: list_list_list_a,Ys2: list_list_list_a] :
% 0.27/0.45 ( ( concat_list_a @ ( append_list_list_a @ Xs @ Ys2 ) )
% 0.27/0.45 = ( append_list_a @ ( concat_list_a @ Xs ) @ ( concat_list_a @ Ys2 ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % concat_append
% 0.27/0.45 thf(fact_212_concat__append,axiom,
% 0.27/0.45 ! [Xs: list_list_a,Ys2: list_list_a] :
% 0.27/0.45 ( ( concat_a @ ( append_list_a @ Xs @ Ys2 ) )
% 0.27/0.45 = ( append_a @ ( concat_a @ Xs ) @ ( concat_a @ Ys2 ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % concat_append
% 0.27/0.45 thf(fact_213_append__butlast__last__id,axiom,
% 0.27/0.45 ! [Xs: list_list_a] :
% 0.27/0.45 ( ( Xs != nil_list_a )
% 0.27/0.45 => ( ( append_list_a @ ( butlast_list_a @ Xs ) @ ( cons_list_a @ ( last_list_a @ Xs ) @ nil_list_a ) )
% 0.27/0.45 = Xs ) ) ).
% 0.27/0.45
% 0.27/0.45 % append_butlast_last_id
% 0.27/0.45 thf(fact_214_append__butlast__last__id,axiom,
% 0.27/0.45 ! [Xs: list_a] :
% 0.27/0.45 ( ( Xs != nil_a )
% 0.27/0.45 => ( ( append_a @ ( butlast_a @ Xs ) @ ( cons_a @ ( last_a @ Xs ) @ nil_a ) )
% 0.27/0.45 = Xs ) ) ).
% 0.27/0.45
% 0.27/0.45 % append_butlast_last_id
% 0.27/0.45 thf(fact_215_butlast_Osimps_I1_J,axiom,
% 0.27/0.45 ( ( butlast_list_a @ nil_list_a )
% 0.27/0.45 = nil_list_a ) ).
% 0.27/0.45
% 0.27/0.45 % butlast.simps(1)
% 0.27/0.45 thf(fact_216_butlast_Osimps_I1_J,axiom,
% 0.27/0.45 ( ( butlast_a @ nil_a )
% 0.27/0.45 = nil_a ) ).
% 0.27/0.45
% 0.27/0.45 % butlast.simps(1)
% 0.27/0.45 thf(fact_217_snoc__eq__iff__butlast,axiom,
% 0.27/0.45 ! [Xs: list_list_a,X3: list_a,Ys2: list_list_a] :
% 0.27/0.45 ( ( ( append_list_a @ Xs @ ( cons_list_a @ X3 @ nil_list_a ) )
% 0.27/0.45 = Ys2 )
% 0.27/0.45 = ( ( Ys2 != nil_list_a )
% 0.27/0.45 & ( ( butlast_list_a @ Ys2 )
% 0.27/0.45 = Xs )
% 0.27/0.45 & ( ( last_list_a @ Ys2 )
% 0.27/0.45 = X3 ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % snoc_eq_iff_butlast
% 0.27/0.45 thf(fact_218_snoc__eq__iff__butlast,axiom,
% 0.27/0.45 ! [Xs: list_a,X3: a,Ys2: list_a] :
% 0.27/0.45 ( ( ( append_a @ Xs @ ( cons_a @ X3 @ nil_a ) )
% 0.27/0.45 = Ys2 )
% 0.27/0.45 = ( ( Ys2 != nil_a )
% 0.27/0.45 & ( ( butlast_a @ Ys2 )
% 0.27/0.45 = Xs )
% 0.27/0.45 & ( ( last_a @ Ys2 )
% 0.27/0.45 = X3 ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % snoc_eq_iff_butlast
% 0.27/0.45 thf(fact_219_rotate1_Osimps_I1_J,axiom,
% 0.27/0.45 ( ( rotate1_list_a @ nil_list_a )
% 0.27/0.45 = nil_list_a ) ).
% 0.27/0.45
% 0.27/0.45 % rotate1.simps(1)
% 0.27/0.45 thf(fact_220_rotate1_Osimps_I1_J,axiom,
% 0.27/0.45 ( ( rotate1_a @ nil_a )
% 0.27/0.45 = nil_a ) ).
% 0.27/0.45
% 0.27/0.45 % rotate1.simps(1)
% 0.27/0.45 thf(fact_221_last_Osimps,axiom,
% 0.27/0.45 ! [Xs: list_list_a,X3: list_a] :
% 0.27/0.45 ( ( ( Xs = nil_list_a )
% 0.27/0.45 => ( ( last_list_a @ ( cons_list_a @ X3 @ Xs ) )
% 0.27/0.45 = X3 ) )
% 0.27/0.45 & ( ( Xs != nil_list_a )
% 0.27/0.45 => ( ( last_list_a @ ( cons_list_a @ X3 @ Xs ) )
% 0.27/0.45 = ( last_list_a @ Xs ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % last.simps
% 0.27/0.45 thf(fact_222_last_Osimps,axiom,
% 0.27/0.45 ! [Xs: list_a,X3: a] :
% 0.27/0.45 ( ( ( Xs = nil_a )
% 0.27/0.45 => ( ( last_a @ ( cons_a @ X3 @ Xs ) )
% 0.27/0.45 = X3 ) )
% 0.27/0.45 & ( ( Xs != nil_a )
% 0.27/0.45 => ( ( last_a @ ( cons_a @ X3 @ Xs ) )
% 0.27/0.45 = ( last_a @ Xs ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % last.simps
% 0.27/0.45 thf(fact_223_last__ConsL,axiom,
% 0.27/0.45 ! [Xs: list_list_a,X3: list_a] :
% 0.27/0.45 ( ( Xs = nil_list_a )
% 0.27/0.45 => ( ( last_list_a @ ( cons_list_a @ X3 @ Xs ) )
% 0.27/0.45 = X3 ) ) ).
% 0.27/0.45
% 0.27/0.45 % last_ConsL
% 0.27/0.45 thf(fact_224_last__ConsL,axiom,
% 0.27/0.45 ! [Xs: list_a,X3: a] :
% 0.27/0.45 ( ( Xs = nil_a )
% 0.27/0.45 => ( ( last_a @ ( cons_a @ X3 @ Xs ) )
% 0.27/0.45 = X3 ) ) ).
% 0.27/0.45
% 0.27/0.45 % last_ConsL
% 0.27/0.45 thf(fact_225_last__ConsR,axiom,
% 0.27/0.45 ! [Xs: list_list_a,X3: list_a] :
% 0.27/0.45 ( ( Xs != nil_list_a )
% 0.27/0.45 => ( ( last_list_a @ ( cons_list_a @ X3 @ Xs ) )
% 0.27/0.45 = ( last_list_a @ Xs ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % last_ConsR
% 0.27/0.45 thf(fact_226_last__ConsR,axiom,
% 0.27/0.45 ! [Xs: list_a,X3: a] :
% 0.27/0.45 ( ( Xs != nil_a )
% 0.27/0.45 => ( ( last_a @ ( cons_a @ X3 @ Xs ) )
% 0.27/0.45 = ( last_a @ Xs ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % last_ConsR
% 0.27/0.45 thf(fact_227_last__append,axiom,
% 0.27/0.45 ! [Ys2: list_list_a,Xs: list_list_a] :
% 0.27/0.45 ( ( ( Ys2 = nil_list_a )
% 0.27/0.45 => ( ( last_list_a @ ( append_list_a @ Xs @ Ys2 ) )
% 0.27/0.45 = ( last_list_a @ Xs ) ) )
% 0.27/0.45 & ( ( Ys2 != nil_list_a )
% 0.27/0.45 => ( ( last_list_a @ ( append_list_a @ Xs @ Ys2 ) )
% 0.27/0.45 = ( last_list_a @ Ys2 ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % last_append
% 0.27/0.45 thf(fact_228_last__append,axiom,
% 0.27/0.45 ! [Ys2: list_a,Xs: list_a] :
% 0.27/0.45 ( ( ( Ys2 = nil_a )
% 0.27/0.45 => ( ( last_a @ ( append_a @ Xs @ Ys2 ) )
% 0.27/0.45 = ( last_a @ Xs ) ) )
% 0.27/0.45 & ( ( Ys2 != nil_a )
% 0.27/0.45 => ( ( last_a @ ( append_a @ Xs @ Ys2 ) )
% 0.27/0.45 = ( last_a @ Ys2 ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % last_append
% 0.27/0.45 thf(fact_229_longest__common__suffix,axiom,
% 0.27/0.45 ! [Xs: list_list_a,Ys2: list_list_a] :
% 0.27/0.45 ? [Ss: list_list_a,Xs5: list_list_a,Ys5: list_list_a] :
% 0.27/0.45 ( ( Xs
% 0.27/0.45 = ( append_list_a @ Xs5 @ Ss ) )
% 0.27/0.45 & ( Ys2
% 0.27/0.45 = ( append_list_a @ Ys5 @ Ss ) )
% 0.27/0.45 & ( ( Xs5 = nil_list_a )
% 0.27/0.45 | ( Ys5 = nil_list_a )
% 0.27/0.45 | ( ( last_list_a @ Xs5 )
% 0.27/0.45 != ( last_list_a @ Ys5 ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % longest_common_suffix
% 0.27/0.45 thf(fact_230_longest__common__suffix,axiom,
% 0.27/0.45 ! [Xs: list_a,Ys2: list_a] :
% 0.27/0.45 ? [Ss: list_a,Xs5: list_a,Ys5: list_a] :
% 0.27/0.45 ( ( Xs
% 0.27/0.45 = ( append_a @ Xs5 @ Ss ) )
% 0.27/0.45 & ( Ys2
% 0.27/0.45 = ( append_a @ Ys5 @ Ss ) )
% 0.27/0.45 & ( ( Xs5 = nil_a )
% 0.27/0.45 | ( Ys5 = nil_a )
% 0.27/0.45 | ( ( last_a @ Xs5 )
% 0.27/0.45 != ( last_a @ Ys5 ) ) ) ) ).
% 0.27/0.45
% 0.27/0.45 % longest_common_suffix
% 0.27/0.45 thf(fact_231_butlast_Osimps_I2_J,axiom,
% 0.27/0.45 ! [Xs: list_list_a,X3: list_a] :
% 0.27/0.45 ( ( ( Xs = nil_list_a )
% 0.27/0.45 => ( ( butlast_list_a @ ( cons_list_a @ X3 @ Xs ) )
% 0.27/0.46 = nil_list_a ) )
% 0.27/0.46 & ( ( Xs != nil_list_a )
% 0.27/0.46 => ( ( butlast_list_a @ ( cons_list_a @ X3 @ Xs ) )
% 0.27/0.46 = ( cons_list_a @ X3 @ ( butlast_list_a @ Xs ) ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % butlast.simps(2)
% 0.27/0.46 thf(fact_232_butlast_Osimps_I2_J,axiom,
% 0.27/0.46 ! [Xs: list_a,X3: a] :
% 0.27/0.46 ( ( ( Xs = nil_a )
% 0.27/0.46 => ( ( butlast_a @ ( cons_a @ X3 @ Xs ) )
% 0.27/0.46 = nil_a ) )
% 0.27/0.46 & ( ( Xs != nil_a )
% 0.27/0.46 => ( ( butlast_a @ ( cons_a @ X3 @ Xs ) )
% 0.27/0.46 = ( cons_a @ X3 @ ( butlast_a @ Xs ) ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % butlast.simps(2)
% 0.27/0.46 thf(fact_233_concat_Osimps_I1_J,axiom,
% 0.27/0.46 ( ( concat_list_a @ nil_list_list_a )
% 0.27/0.46 = nil_list_a ) ).
% 0.27/0.46
% 0.27/0.46 % concat.simps(1)
% 0.27/0.46 thf(fact_234_concat_Osimps_I1_J,axiom,
% 0.27/0.46 ( ( concat_a @ nil_list_a )
% 0.27/0.46 = nil_a ) ).
% 0.27/0.46
% 0.27/0.46 % concat.simps(1)
% 0.27/0.46 thf(fact_235_concat_Osimps_I2_J,axiom,
% 0.27/0.46 ! [X3: list_list_a,Xs: list_list_list_a] :
% 0.27/0.46 ( ( concat_list_a @ ( cons_list_list_a @ X3 @ Xs ) )
% 0.27/0.46 = ( append_list_a @ X3 @ ( concat_list_a @ Xs ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % concat.simps(2)
% 0.27/0.46 thf(fact_236_concat_Osimps_I2_J,axiom,
% 0.27/0.46 ! [X3: list_a,Xs: list_list_a] :
% 0.27/0.46 ( ( concat_a @ ( cons_list_a @ X3 @ Xs ) )
% 0.27/0.46 = ( append_a @ X3 @ ( concat_a @ Xs ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % concat.simps(2)
% 0.27/0.46 thf(fact_237_butlast__append,axiom,
% 0.27/0.46 ! [Ys2: list_list_a,Xs: list_list_a] :
% 0.27/0.46 ( ( ( Ys2 = nil_list_a )
% 0.27/0.46 => ( ( butlast_list_a @ ( append_list_a @ Xs @ Ys2 ) )
% 0.27/0.46 = ( butlast_list_a @ Xs ) ) )
% 0.27/0.46 & ( ( Ys2 != nil_list_a )
% 0.27/0.46 => ( ( butlast_list_a @ ( append_list_a @ Xs @ Ys2 ) )
% 0.27/0.46 = ( append_list_a @ Xs @ ( butlast_list_a @ Ys2 ) ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % butlast_append
% 0.27/0.46 thf(fact_238_butlast__append,axiom,
% 0.27/0.46 ! [Ys2: list_a,Xs: list_a] :
% 0.27/0.46 ( ( ( Ys2 = nil_a )
% 0.27/0.46 => ( ( butlast_a @ ( append_a @ Xs @ Ys2 ) )
% 0.27/0.46 = ( butlast_a @ Xs ) ) )
% 0.27/0.46 & ( ( Ys2 != nil_a )
% 0.27/0.46 => ( ( butlast_a @ ( append_a @ Xs @ Ys2 ) )
% 0.27/0.46 = ( append_a @ Xs @ ( butlast_a @ Ys2 ) ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % butlast_append
% 0.27/0.46 thf(fact_239_maps__simps_I2_J,axiom,
% 0.27/0.46 ! [F: a > list_list_a] :
% 0.27/0.46 ( ( maps_a_list_a @ F @ nil_a )
% 0.27/0.46 = nil_list_a ) ).
% 0.27/0.46
% 0.27/0.46 % maps_simps(2)
% 0.27/0.46 thf(fact_240_maps__simps_I2_J,axiom,
% 0.27/0.46 ! [F: list_a > list_a] :
% 0.27/0.46 ( ( maps_list_a_a @ F @ nil_list_a )
% 0.27/0.46 = nil_a ) ).
% 0.27/0.46
% 0.27/0.46 % maps_simps(2)
% 0.27/0.46 thf(fact_241_maps__simps_I2_J,axiom,
% 0.27/0.46 ! [F: list_a > list_list_a] :
% 0.27/0.46 ( ( maps_list_a_list_a @ F @ nil_list_a )
% 0.27/0.46 = nil_list_a ) ).
% 0.27/0.46
% 0.27/0.46 % maps_simps(2)
% 0.27/0.46 thf(fact_242_maps__simps_I2_J,axiom,
% 0.27/0.46 ! [F: a > list_a] :
% 0.27/0.46 ( ( maps_a_a @ F @ nil_a )
% 0.27/0.46 = nil_a ) ).
% 0.27/0.46
% 0.27/0.46 % maps_simps(2)
% 0.27/0.46 thf(fact_243_concat__eq__appendD,axiom,
% 0.27/0.46 ! [Xss2: list_list_list_a,Ys2: list_list_a,Zs2: list_list_a] :
% 0.27/0.46 ( ( ( concat_list_a @ Xss2 )
% 0.27/0.46 = ( append_list_a @ Ys2 @ Zs2 ) )
% 0.27/0.46 => ( ( Xss2 != nil_list_list_a )
% 0.27/0.46 => ? [Xss12: list_list_list_a,Xs2: list_list_a,Xs5: list_list_a,Xss23: list_list_list_a] :
% 0.27/0.46 ( ( Xss2
% 0.27/0.46 = ( append_list_list_a @ Xss12 @ ( cons_list_list_a @ ( append_list_a @ Xs2 @ Xs5 ) @ Xss23 ) ) )
% 0.27/0.46 & ( Ys2
% 0.27/0.46 = ( append_list_a @ ( concat_list_a @ Xss12 ) @ Xs2 ) )
% 0.27/0.46 & ( Zs2
% 0.27/0.46 = ( append_list_a @ Xs5 @ ( concat_list_a @ Xss23 ) ) ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % concat_eq_appendD
% 0.27/0.46 thf(fact_244_concat__eq__appendD,axiom,
% 0.27/0.46 ! [Xss2: list_list_a,Ys2: list_a,Zs2: list_a] :
% 0.27/0.46 ( ( ( concat_a @ Xss2 )
% 0.27/0.46 = ( append_a @ Ys2 @ Zs2 ) )
% 0.27/0.46 => ( ( Xss2 != nil_list_a )
% 0.27/0.46 => ? [Xss12: list_list_a,Xs2: list_a,Xs5: list_a,Xss23: list_list_a] :
% 0.27/0.46 ( ( Xss2
% 0.27/0.46 = ( append_list_a @ Xss12 @ ( cons_list_a @ ( append_a @ Xs2 @ Xs5 ) @ Xss23 ) ) )
% 0.27/0.46 & ( Ys2
% 0.27/0.46 = ( append_a @ ( concat_a @ Xss12 ) @ Xs2 ) )
% 0.27/0.46 & ( Zs2
% 0.27/0.46 = ( append_a @ Xs5 @ ( concat_a @ Xss23 ) ) ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % concat_eq_appendD
% 0.27/0.46 thf(fact_245_empty__Shift,axiom,
% 0.27/0.46 ! [Kl2: set_list_list_a,K: list_a] :
% 0.27/0.46 ( ( member_list_list_a @ nil_list_a @ Kl2 )
% 0.27/0.46 => ( ( member_list_a2 @ K @ ( bNF_Gr1046450207list_a @ Kl2 @ nil_list_a ) )
% 0.27/0.46 => ( member_list_list_a @ nil_list_a @ ( bNF_Gr1972240547list_a @ Kl2 @ K ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % empty_Shift
% 0.27/0.46 thf(fact_246_empty__Shift,axiom,
% 0.27/0.46 ! [Kl2: set_list_a,K: a] :
% 0.27/0.46 ( ( member_list_a2 @ nil_a @ Kl2 )
% 0.27/0.46 => ( ( member_a2 @ K @ ( bNF_Greatest_Succ_a @ Kl2 @ nil_a ) )
% 0.27/0.46 => ( member_list_a2 @ nil_a @ ( bNF_Greatest_Shift_a @ Kl2 @ K ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % empty_Shift
% 0.27/0.46 thf(fact_247_Succ__Shift,axiom,
% 0.27/0.46 ! [Kl2: set_list_list_a,K: list_a,Kl: list_list_a] :
% 0.27/0.46 ( ( bNF_Gr1046450207list_a @ ( bNF_Gr1972240547list_a @ Kl2 @ K ) @ Kl )
% 0.27/0.46 = ( bNF_Gr1046450207list_a @ Kl2 @ ( cons_list_a @ K @ Kl ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % Succ_Shift
% 0.27/0.46 thf(fact_248_Succ__Shift,axiom,
% 0.27/0.46 ! [Kl2: set_list_a,K: a,Kl: list_a] :
% 0.27/0.46 ( ( bNF_Greatest_Succ_a @ ( bNF_Greatest_Shift_a @ Kl2 @ K ) @ Kl )
% 0.27/0.46 = ( bNF_Greatest_Succ_a @ Kl2 @ ( cons_a @ K @ Kl ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % Succ_Shift
% 0.27/0.46 thf(fact_249_concat__conv__foldr,axiom,
% 0.27/0.46 ( concat_list_a
% 0.27/0.46 = ( ^ [Xss3: list_list_list_a] : ( foldr_769741863list_a @ append_list_a @ Xss3 @ nil_list_a ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % concat_conv_foldr
% 0.27/0.46 thf(fact_250_concat__conv__foldr,axiom,
% 0.27/0.46 ( concat_a
% 0.27/0.46 = ( ^ [Xss3: list_list_a] : ( foldr_list_a_list_a @ append_a @ Xss3 @ nil_a ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % concat_conv_foldr
% 0.27/0.46 thf(fact_251_foldr__append,axiom,
% 0.27/0.46 ! [F: list_a > list_a > list_a,Xs: list_list_a,Ys2: list_list_a,A3: list_a] :
% 0.27/0.46 ( ( foldr_list_a_list_a @ F @ ( append_list_a @ Xs @ Ys2 ) @ A3 )
% 0.27/0.46 = ( foldr_list_a_list_a @ F @ Xs @ ( foldr_list_a_list_a @ F @ Ys2 @ A3 ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % foldr_append
% 0.27/0.46 thf(fact_252_ShiftD,axiom,
% 0.27/0.46 ! [Kl: list_list_a,Kl2: set_list_list_a,K: list_a] :
% 0.27/0.46 ( ( member_list_list_a @ Kl @ ( bNF_Gr1972240547list_a @ Kl2 @ K ) )
% 0.27/0.46 => ( member_list_list_a @ ( cons_list_a @ K @ Kl ) @ Kl2 ) ) ).
% 0.27/0.46
% 0.27/0.46 % ShiftD
% 0.27/0.46 thf(fact_253_ShiftD,axiom,
% 0.27/0.46 ! [Kl: list_a,Kl2: set_list_a,K: a] :
% 0.27/0.46 ( ( member_list_a2 @ Kl @ ( bNF_Greatest_Shift_a @ Kl2 @ K ) )
% 0.27/0.46 => ( member_list_a2 @ ( cons_a @ K @ Kl ) @ Kl2 ) ) ).
% 0.27/0.46
% 0.27/0.46 % ShiftD
% 0.27/0.46 thf(fact_254_list__strict__asc__def,axiom,
% 0.27/0.46 ( list_strict_asc_nat
% 0.27/0.46 = ( list_ord_nat @ ord_less_nat ) ) ).
% 0.27/0.46
% 0.27/0.46 % list_strict_asc_def
% 0.27/0.46 thf(fact_255_lexordp__iff,axiom,
% 0.27/0.46 ( ord_lexordp_nat
% 0.27/0.46 = ( ^ [Xs3: list_nat,Ys: list_nat] :
% 0.27/0.46 ( ? [X4: nat,Vs: list_nat] :
% 0.27/0.46 ( Ys
% 0.27/0.46 = ( append_nat @ Xs3 @ ( cons_nat @ X4 @ Vs ) ) )
% 0.27/0.46 | ? [Us: list_nat,A5: nat,B2: nat,Vs: list_nat,Ws: list_nat] :
% 0.27/0.46 ( ( ord_less_nat @ A5 @ B2 )
% 0.27/0.46 & ( Xs3
% 0.27/0.46 = ( append_nat @ Us @ ( cons_nat @ A5 @ Vs ) ) )
% 0.27/0.46 & ( Ys
% 0.27/0.46 = ( append_nat @ Us @ ( cons_nat @ B2 @ Ws ) ) ) ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % lexordp_iff
% 0.27/0.46 thf(fact_256_lexordp__append__left__rightI,axiom,
% 0.27/0.46 ! [X3: nat,Y: nat,Us2: list_nat,Xs: list_nat,Ys2: list_nat] :
% 0.27/0.46 ( ( ord_less_nat @ X3 @ Y )
% 0.27/0.46 => ( ord_lexordp_nat @ ( append_nat @ Us2 @ ( cons_nat @ X3 @ Xs ) ) @ ( append_nat @ Us2 @ ( cons_nat @ Y @ Ys2 ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % lexordp_append_left_rightI
% 0.27/0.46 thf(fact_257_lexordp__simps_I3_J,axiom,
% 0.27/0.46 ! [X3: nat,Xs: list_nat,Y: nat,Ys2: list_nat] :
% 0.27/0.46 ( ( ord_lexordp_nat @ ( cons_nat @ X3 @ Xs ) @ ( cons_nat @ Y @ Ys2 ) )
% 0.27/0.46 = ( ( ord_less_nat @ X3 @ Y )
% 0.27/0.46 | ( ~ ( ord_less_nat @ Y @ X3 )
% 0.27/0.46 & ( ord_lexordp_nat @ Xs @ Ys2 ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % lexordp_simps(3)
% 0.27/0.46 thf(fact_258_hd__append2,axiom,
% 0.27/0.46 ! [Xs: list_list_a,Ys2: list_list_a] :
% 0.27/0.46 ( ( Xs != nil_list_a )
% 0.27/0.46 => ( ( hd_list_a @ ( append_list_a @ Xs @ Ys2 ) )
% 0.27/0.46 = ( hd_list_a @ Xs ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % hd_append2
% 0.27/0.46 thf(fact_259_hd__append2,axiom,
% 0.27/0.46 ! [Xs: list_a,Ys2: list_a] :
% 0.27/0.46 ( ( Xs != nil_a )
% 0.27/0.46 => ( ( hd_a @ ( append_a @ Xs @ Ys2 ) )
% 0.27/0.46 = ( hd_a @ Xs ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % hd_append2
% 0.27/0.46 thf(fact_260_lexordp__irreflexive,axiom,
% 0.27/0.46 ! [Xs: list_nat] :
% 0.27/0.46 ( ! [X: nat] :
% 0.27/0.46 ~ ( ord_less_nat @ X @ X )
% 0.27/0.46 => ~ ( ord_lexordp_nat @ Xs @ Xs ) ) ).
% 0.27/0.46
% 0.27/0.46 % lexordp_irreflexive
% 0.27/0.46 thf(fact_261_list_Osel_I1_J,axiom,
% 0.27/0.46 ! [X21: list_a,X22: list_list_a] :
% 0.27/0.46 ( ( hd_list_a @ ( cons_list_a @ X21 @ X22 ) )
% 0.27/0.46 = X21 ) ).
% 0.27/0.46
% 0.27/0.46 % list.sel(1)
% 0.27/0.46 thf(fact_262_list_Osel_I1_J,axiom,
% 0.27/0.46 ! [X21: a,X22: list_a] :
% 0.27/0.46 ( ( hd_a @ ( cons_a @ X21 @ X22 ) )
% 0.27/0.46 = X21 ) ).
% 0.27/0.46
% 0.27/0.46 % list.sel(1)
% 0.27/0.46 thf(fact_263_hd__concat,axiom,
% 0.27/0.46 ! [Xs: list_list_list_a] :
% 0.27/0.46 ( ( Xs != nil_list_list_a )
% 0.27/0.46 => ( ( ( hd_list_list_a @ Xs )
% 0.27/0.46 != nil_list_a )
% 0.27/0.46 => ( ( hd_list_a @ ( concat_list_a @ Xs ) )
% 0.27/0.46 = ( hd_list_a @ ( hd_list_list_a @ Xs ) ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % hd_concat
% 0.27/0.46 thf(fact_264_hd__concat,axiom,
% 0.27/0.46 ! [Xs: list_list_a] :
% 0.27/0.46 ( ( Xs != nil_list_a )
% 0.27/0.46 => ( ( ( hd_list_a @ Xs )
% 0.27/0.46 != nil_a )
% 0.27/0.46 => ( ( hd_a @ ( concat_a @ Xs ) )
% 0.27/0.46 = ( hd_a @ ( hd_list_a @ Xs ) ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % hd_concat
% 0.27/0.46 thf(fact_265_hd__append,axiom,
% 0.27/0.46 ! [Xs: list_list_a,Ys2: list_list_a] :
% 0.27/0.46 ( ( ( Xs = nil_list_a )
% 0.27/0.46 => ( ( hd_list_a @ ( append_list_a @ Xs @ Ys2 ) )
% 0.27/0.46 = ( hd_list_a @ Ys2 ) ) )
% 0.27/0.46 & ( ( Xs != nil_list_a )
% 0.27/0.46 => ( ( hd_list_a @ ( append_list_a @ Xs @ Ys2 ) )
% 0.27/0.46 = ( hd_list_a @ Xs ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % hd_append
% 0.27/0.46 thf(fact_266_hd__append,axiom,
% 0.27/0.46 ! [Xs: list_a,Ys2: list_a] :
% 0.27/0.46 ( ( ( Xs = nil_a )
% 0.27/0.46 => ( ( hd_a @ ( append_a @ Xs @ Ys2 ) )
% 0.27/0.46 = ( hd_a @ Ys2 ) ) )
% 0.27/0.46 & ( ( Xs != nil_a )
% 0.27/0.46 => ( ( hd_a @ ( append_a @ Xs @ Ys2 ) )
% 0.27/0.46 = ( hd_a @ Xs ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % hd_append
% 0.27/0.46 thf(fact_267_longest__common__prefix,axiom,
% 0.27/0.46 ! [Xs: list_list_a,Ys2: list_list_a] :
% 0.27/0.46 ? [Ps: list_list_a,Xs5: list_list_a,Ys5: list_list_a] :
% 0.27/0.46 ( ( Xs
% 0.27/0.46 = ( append_list_a @ Ps @ Xs5 ) )
% 0.27/0.46 & ( Ys2
% 0.27/0.46 = ( append_list_a @ Ps @ Ys5 ) )
% 0.27/0.46 & ( ( Xs5 = nil_list_a )
% 0.27/0.46 | ( Ys5 = nil_list_a )
% 0.27/0.46 | ( ( hd_list_a @ Xs5 )
% 0.27/0.46 != ( hd_list_a @ Ys5 ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % longest_common_prefix
% 0.27/0.46 thf(fact_268_longest__common__prefix,axiom,
% 0.27/0.46 ! [Xs: list_a,Ys2: list_a] :
% 0.27/0.46 ? [Ps: list_a,Xs5: list_a,Ys5: list_a] :
% 0.27/0.46 ( ( Xs
% 0.27/0.46 = ( append_a @ Ps @ Xs5 ) )
% 0.27/0.46 & ( Ys2
% 0.27/0.46 = ( append_a @ Ps @ Ys5 ) )
% 0.27/0.46 & ( ( Xs5 = nil_a )
% 0.27/0.46 | ( Ys5 = nil_a )
% 0.27/0.46 | ( ( hd_a @ Xs5 )
% 0.27/0.46 != ( hd_a @ Ys5 ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % longest_common_prefix
% 0.27/0.46 thf(fact_269_lexordp_OCons,axiom,
% 0.27/0.46 ! [X3: nat,Y: nat,Xs: list_nat,Ys2: list_nat] :
% 0.27/0.46 ( ( ord_less_nat @ X3 @ Y )
% 0.27/0.46 => ( ord_lexordp_nat @ ( cons_nat @ X3 @ Xs ) @ ( cons_nat @ Y @ Ys2 ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % lexordp.Cons
% 0.27/0.46 thf(fact_270_lexordp_OCons__eq,axiom,
% 0.27/0.46 ! [X3: nat,Y: nat,Xs: list_nat,Ys2: list_nat] :
% 0.27/0.46 ( ~ ( ord_less_nat @ X3 @ Y )
% 0.27/0.46 => ( ~ ( ord_less_nat @ Y @ X3 )
% 0.27/0.46 => ( ( ord_lexordp_nat @ Xs @ Ys2 )
% 0.27/0.46 => ( ord_lexordp_nat @ ( cons_nat @ X3 @ Xs ) @ ( cons_nat @ Y @ Ys2 ) ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % lexordp.Cons_eq
% 0.27/0.46 thf(fact_271_lexordp__append__leftD,axiom,
% 0.27/0.46 ! [Xs: list_nat,Us2: list_nat,Vs2: list_nat] :
% 0.27/0.46 ( ( ord_lexordp_nat @ ( append_nat @ Xs @ Us2 ) @ ( append_nat @ Xs @ Vs2 ) )
% 0.27/0.46 => ( ! [A: nat] :
% 0.27/0.46 ~ ( ord_less_nat @ A @ A )
% 0.27/0.46 => ( ord_lexordp_nat @ Us2 @ Vs2 ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % lexordp_append_leftD
% 0.27/0.46 thf(fact_272_lexordp_Ocases,axiom,
% 0.27/0.46 ! [A1: list_nat,A2: list_nat] :
% 0.27/0.46 ( ( ord_lexordp_nat @ A1 @ A2 )
% 0.27/0.46 => ( ( ( A1 = nil_nat )
% 0.27/0.46 => ! [Y3: nat,Ys3: list_nat] :
% 0.27/0.46 ( A2
% 0.27/0.46 != ( cons_nat @ Y3 @ Ys3 ) ) )
% 0.27/0.46 => ( ! [X: nat] :
% 0.27/0.46 ( ? [Xs2: list_nat] :
% 0.27/0.46 ( A1
% 0.27/0.46 = ( cons_nat @ X @ Xs2 ) )
% 0.27/0.46 => ! [Y3: nat] :
% 0.27/0.46 ( ? [Ys3: list_nat] :
% 0.27/0.46 ( A2
% 0.27/0.46 = ( cons_nat @ Y3 @ Ys3 ) )
% 0.27/0.46 => ~ ( ord_less_nat @ X @ Y3 ) ) )
% 0.27/0.46 => ~ ! [X: nat,Y3: nat,Xs2: list_nat] :
% 0.27/0.46 ( ( A1
% 0.27/0.46 = ( cons_nat @ X @ Xs2 ) )
% 0.27/0.46 => ! [Ys3: list_nat] :
% 0.27/0.46 ( ( A2
% 0.27/0.46 = ( cons_nat @ Y3 @ Ys3 ) )
% 0.27/0.46 => ( ~ ( ord_less_nat @ X @ Y3 )
% 0.27/0.46 => ( ~ ( ord_less_nat @ Y3 @ X )
% 0.27/0.46 => ~ ( ord_lexordp_nat @ Xs2 @ Ys3 ) ) ) ) ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % lexordp.cases
% 0.27/0.46 thf(fact_273_lexordp_Osimps,axiom,
% 0.27/0.46 ( ord_lexordp_nat
% 0.27/0.46 = ( ^ [A12: list_nat,A22: list_nat] :
% 0.27/0.46 ( ? [Y2: nat,Ys: list_nat] :
% 0.27/0.46 ( ( A12 = nil_nat )
% 0.27/0.46 & ( A22
% 0.27/0.46 = ( cons_nat @ Y2 @ Ys ) ) )
% 0.27/0.46 | ? [X4: nat,Y2: nat,Xs3: list_nat,Ys: list_nat] :
% 0.27/0.46 ( ( A12
% 0.27/0.46 = ( cons_nat @ X4 @ Xs3 ) )
% 0.27/0.46 & ( A22
% 0.27/0.46 = ( cons_nat @ Y2 @ Ys ) )
% 0.27/0.46 & ( ord_less_nat @ X4 @ Y2 ) )
% 0.27/0.46 | ? [X4: nat,Y2: nat,Xs3: list_nat,Ys: list_nat] :
% 0.27/0.46 ( ( A12
% 0.27/0.46 = ( cons_nat @ X4 @ Xs3 ) )
% 0.27/0.46 & ( A22
% 0.27/0.46 = ( cons_nat @ Y2 @ Ys ) )
% 0.27/0.46 & ~ ( ord_less_nat @ X4 @ Y2 )
% 0.27/0.46 & ~ ( ord_less_nat @ Y2 @ X4 )
% 0.27/0.46 & ( ord_lexordp_nat @ Xs3 @ Ys ) ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % lexordp.simps
% 0.27/0.46 thf(fact_274_lexordp_Oinducts,axiom,
% 0.27/0.46 ! [X12: list_nat,X23: list_nat,P: list_nat > list_nat > $o] :
% 0.27/0.46 ( ( ord_lexordp_nat @ X12 @ X23 )
% 0.27/0.46 => ( ! [Y3: nat,Ys3: list_nat] : ( P @ nil_nat @ ( cons_nat @ Y3 @ Ys3 ) )
% 0.27/0.46 => ( ! [X: nat,Y3: nat,Xs2: list_nat,Ys3: list_nat] :
% 0.27/0.46 ( ( ord_less_nat @ X @ Y3 )
% 0.27/0.46 => ( P @ ( cons_nat @ X @ Xs2 ) @ ( cons_nat @ Y3 @ Ys3 ) ) )
% 0.27/0.46 => ( ! [X: nat,Y3: nat,Xs2: list_nat,Ys3: list_nat] :
% 0.27/0.46 ( ~ ( ord_less_nat @ X @ Y3 )
% 0.27/0.46 => ( ~ ( ord_less_nat @ Y3 @ X )
% 0.27/0.46 => ( ( ord_lexordp_nat @ Xs2 @ Ys3 )
% 0.27/0.46 => ( ( P @ Xs2 @ Ys3 )
% 0.27/0.46 => ( P @ ( cons_nat @ X @ Xs2 ) @ ( cons_nat @ Y3 @ Ys3 ) ) ) ) ) )
% 0.27/0.46 => ( P @ X12 @ X23 ) ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % lexordp.inducts
% 0.27/0.46 thf(fact_275_lexordp__cases,axiom,
% 0.27/0.46 ! [Xs: list_nat,Ys2: list_nat] :
% 0.27/0.46 ( ( ord_lexordp_nat @ Xs @ Ys2 )
% 0.27/0.46 => ( ( ( Xs = nil_nat )
% 0.27/0.46 => ! [Y3: nat,Ys5: list_nat] :
% 0.27/0.46 ( Ys2
% 0.27/0.46 != ( cons_nat @ Y3 @ Ys5 ) ) )
% 0.27/0.46 => ( ! [X: nat] :
% 0.27/0.46 ( ? [Xs5: list_nat] :
% 0.27/0.46 ( Xs
% 0.27/0.46 = ( cons_nat @ X @ Xs5 ) )
% 0.27/0.46 => ! [Y3: nat] :
% 0.27/0.46 ( ? [Ys5: list_nat] :
% 0.27/0.46 ( Ys2
% 0.27/0.46 = ( cons_nat @ Y3 @ Ys5 ) )
% 0.27/0.46 => ~ ( ord_less_nat @ X @ Y3 ) ) )
% 0.27/0.46 => ~ ! [X: nat,Xs5: list_nat] :
% 0.27/0.46 ( ( Xs
% 0.27/0.46 = ( cons_nat @ X @ Xs5 ) )
% 0.27/0.46 => ! [Ys5: list_nat] :
% 0.27/0.46 ( ( Ys2
% 0.27/0.46 = ( cons_nat @ X @ Ys5 ) )
% 0.27/0.46 => ~ ( ord_lexordp_nat @ Xs5 @ Ys5 ) ) ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % lexordp_cases
% 0.27/0.46 thf(fact_276_lexordp__induct,axiom,
% 0.27/0.46 ! [Xs: list_nat,Ys2: list_nat,P: list_nat > list_nat > $o] :
% 0.27/0.46 ( ( ord_lexordp_nat @ Xs @ Ys2 )
% 0.27/0.46 => ( ! [Y3: nat,Ys3: list_nat] : ( P @ nil_nat @ ( cons_nat @ Y3 @ Ys3 ) )
% 0.27/0.46 => ( ! [X: nat,Xs2: list_nat,Y3: nat,Ys3: list_nat] :
% 0.27/0.46 ( ( ord_less_nat @ X @ Y3 )
% 0.27/0.46 => ( P @ ( cons_nat @ X @ Xs2 ) @ ( cons_nat @ Y3 @ Ys3 ) ) )
% 0.27/0.46 => ( ! [X: nat,Xs2: list_nat,Ys3: list_nat] :
% 0.27/0.46 ( ( ord_lexordp_nat @ Xs2 @ Ys3 )
% 0.27/0.46 => ( ( P @ Xs2 @ Ys3 )
% 0.27/0.46 => ( P @ ( cons_nat @ X @ Xs2 ) @ ( cons_nat @ X @ Ys3 ) ) ) )
% 0.27/0.46 => ( P @ Xs @ Ys2 ) ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % lexordp_induct
% 0.27/0.46 thf(fact_277_distinct__adj__append__iff,axiom,
% 0.27/0.46 ! [Xs: list_list_a,Ys2: list_list_a] :
% 0.27/0.46 ( ( distinct_adj_list_a @ ( append_list_a @ Xs @ Ys2 ) )
% 0.27/0.46 = ( ( distinct_adj_list_a @ Xs )
% 0.27/0.46 & ( distinct_adj_list_a @ Ys2 )
% 0.27/0.46 & ( ( Xs = nil_list_a )
% 0.27/0.46 | ( Ys2 = nil_list_a )
% 0.27/0.46 | ( ( last_list_a @ Xs )
% 0.27/0.46 != ( hd_list_a @ Ys2 ) ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % distinct_adj_append_iff
% 0.27/0.46 thf(fact_278_distinct__adj__append__iff,axiom,
% 0.27/0.46 ! [Xs: list_a,Ys2: list_a] :
% 0.27/0.46 ( ( distinct_adj_a @ ( append_a @ Xs @ Ys2 ) )
% 0.27/0.46 = ( ( distinct_adj_a @ Xs )
% 0.27/0.46 & ( distinct_adj_a @ Ys2 )
% 0.27/0.46 & ( ( Xs = nil_a )
% 0.27/0.46 | ( Ys2 = nil_a )
% 0.27/0.46 | ( ( last_a @ Xs )
% 0.27/0.46 != ( hd_a @ Ys2 ) ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % distinct_adj_append_iff
% 0.27/0.46 thf(fact_279_rotate1__hd__tl,axiom,
% 0.27/0.46 ! [Xs: list_list_a] :
% 0.27/0.46 ( ( Xs != nil_list_a )
% 0.27/0.46 => ( ( rotate1_list_a @ Xs )
% 0.27/0.46 = ( append_list_a @ ( tl_list_a @ Xs ) @ ( cons_list_a @ ( hd_list_a @ Xs ) @ nil_list_a ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % rotate1_hd_tl
% 0.27/0.46 thf(fact_280_rotate1__hd__tl,axiom,
% 0.27/0.46 ! [Xs: list_a] :
% 0.27/0.46 ( ( Xs != nil_a )
% 0.27/0.46 => ( ( rotate1_a @ Xs )
% 0.27/0.46 = ( append_a @ ( tl_a @ Xs ) @ ( cons_a @ ( hd_a @ Xs ) @ nil_a ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % rotate1_hd_tl
% 0.27/0.46 thf(fact_281_successively__append__iff,axiom,
% 0.27/0.46 ! [P: list_a > list_a > $o,Xs: list_list_a,Ys2: list_list_a] :
% 0.27/0.46 ( ( successively_list_a @ P @ ( append_list_a @ Xs @ Ys2 ) )
% 0.27/0.46 = ( ( successively_list_a @ P @ Xs )
% 0.27/0.46 & ( successively_list_a @ P @ Ys2 )
% 0.27/0.46 & ( ( Xs = nil_list_a )
% 0.27/0.46 | ( Ys2 = nil_list_a )
% 0.27/0.46 | ( P @ ( last_list_a @ Xs ) @ ( hd_list_a @ Ys2 ) ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % successively_append_iff
% 0.27/0.46 thf(fact_282_successively__append__iff,axiom,
% 0.27/0.46 ! [P: a > a > $o,Xs: list_a,Ys2: list_a] :
% 0.27/0.46 ( ( successively_a @ P @ ( append_a @ Xs @ Ys2 ) )
% 0.27/0.46 = ( ( successively_a @ P @ Xs )
% 0.27/0.46 & ( successively_a @ P @ Ys2 )
% 0.27/0.46 & ( ( Xs = nil_a )
% 0.27/0.46 | ( Ys2 = nil_a )
% 0.27/0.46 | ( P @ ( last_a @ Xs ) @ ( hd_a @ Ys2 ) ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % successively_append_iff
% 0.27/0.46 thf(fact_283_distinct__adj__Cons__Cons,axiom,
% 0.27/0.46 ! [X3: list_a,Y: list_a,Xs: list_list_a] :
% 0.27/0.46 ( ( distinct_adj_list_a @ ( cons_list_a @ X3 @ ( cons_list_a @ Y @ Xs ) ) )
% 0.27/0.46 = ( ( X3 != Y )
% 0.27/0.46 & ( distinct_adj_list_a @ ( cons_list_a @ Y @ Xs ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % distinct_adj_Cons_Cons
% 0.27/0.46 thf(fact_284_distinct__adj__Cons__Cons,axiom,
% 0.27/0.46 ! [X3: a,Y: a,Xs: list_a] :
% 0.27/0.46 ( ( distinct_adj_a @ ( cons_a @ X3 @ ( cons_a @ Y @ Xs ) ) )
% 0.27/0.46 = ( ( X3 != Y )
% 0.27/0.46 & ( distinct_adj_a @ ( cons_a @ Y @ Xs ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % distinct_adj_Cons_Cons
% 0.27/0.46 thf(fact_285_tl__append2,axiom,
% 0.27/0.46 ! [Xs: list_list_a,Ys2: list_list_a] :
% 0.27/0.46 ( ( Xs != nil_list_a )
% 0.27/0.46 => ( ( tl_list_a @ ( append_list_a @ Xs @ Ys2 ) )
% 0.27/0.46 = ( append_list_a @ ( tl_list_a @ Xs ) @ Ys2 ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % tl_append2
% 0.27/0.46 thf(fact_286_tl__append2,axiom,
% 0.27/0.46 ! [Xs: list_a,Ys2: list_a] :
% 0.27/0.46 ( ( Xs != nil_a )
% 0.27/0.46 => ( ( tl_a @ ( append_a @ Xs @ Ys2 ) )
% 0.27/0.46 = ( append_a @ ( tl_a @ Xs ) @ Ys2 ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % tl_append2
% 0.27/0.46 thf(fact_287_hd__Cons__tl,axiom,
% 0.27/0.46 ! [Xs: list_list_a] :
% 0.27/0.46 ( ( Xs != nil_list_a )
% 0.27/0.46 => ( ( cons_list_a @ ( hd_list_a @ Xs ) @ ( tl_list_a @ Xs ) )
% 0.27/0.46 = Xs ) ) ).
% 0.27/0.46
% 0.27/0.46 % hd_Cons_tl
% 0.27/0.46 thf(fact_288_hd__Cons__tl,axiom,
% 0.27/0.46 ! [Xs: list_a] :
% 0.27/0.46 ( ( Xs != nil_a )
% 0.27/0.46 => ( ( cons_a @ ( hd_a @ Xs ) @ ( tl_a @ Xs ) )
% 0.27/0.46 = Xs ) ) ).
% 0.27/0.46
% 0.27/0.46 % hd_Cons_tl
% 0.27/0.46 thf(fact_289_list_Ocollapse,axiom,
% 0.27/0.46 ! [List: list_list_a] :
% 0.27/0.46 ( ( List != nil_list_a )
% 0.27/0.46 => ( ( cons_list_a @ ( hd_list_a @ List ) @ ( tl_list_a @ List ) )
% 0.27/0.46 = List ) ) ).
% 0.27/0.46
% 0.27/0.46 % list.collapse
% 0.27/0.46 thf(fact_290_list_Ocollapse,axiom,
% 0.27/0.46 ! [List: list_a] :
% 0.27/0.46 ( ( List != nil_a )
% 0.27/0.46 => ( ( cons_a @ ( hd_a @ List ) @ ( tl_a @ List ) )
% 0.27/0.46 = List ) ) ).
% 0.27/0.46
% 0.27/0.46 % list.collapse
% 0.27/0.46 thf(fact_291_list_Osel_I3_J,axiom,
% 0.27/0.46 ! [X21: list_a,X22: list_list_a] :
% 0.27/0.46 ( ( tl_list_a @ ( cons_list_a @ X21 @ X22 ) )
% 0.27/0.46 = X22 ) ).
% 0.27/0.46
% 0.27/0.46 % list.sel(3)
% 0.27/0.46 thf(fact_292_list_Osel_I3_J,axiom,
% 0.27/0.46 ! [X21: a,X22: list_a] :
% 0.27/0.46 ( ( tl_a @ ( cons_a @ X21 @ X22 ) )
% 0.27/0.46 = X22 ) ).
% 0.27/0.46
% 0.27/0.46 % list.sel(3)
% 0.27/0.46 thf(fact_293_list_Osel_I2_J,axiom,
% 0.27/0.46 ( ( tl_list_a @ nil_list_a )
% 0.27/0.46 = nil_list_a ) ).
% 0.27/0.46
% 0.27/0.46 % list.sel(2)
% 0.27/0.46 thf(fact_294_list_Osel_I2_J,axiom,
% 0.27/0.46 ( ( tl_a @ nil_a )
% 0.27/0.46 = nil_a ) ).
% 0.27/0.46
% 0.27/0.46 % list.sel(2)
% 0.27/0.46 thf(fact_295_successively_Oelims_I3_J,axiom,
% 0.27/0.46 ! [X3: list_a > list_a > $o,Xa: list_list_a] :
% 0.27/0.46 ( ~ ( successively_list_a @ X3 @ Xa )
% 0.27/0.46 => ~ ! [X: list_a,Y3: list_a,Xs2: list_list_a] :
% 0.27/0.46 ( ( Xa
% 0.27/0.46 = ( cons_list_a @ X @ ( cons_list_a @ Y3 @ Xs2 ) ) )
% 0.27/0.46 => ( ( X3 @ X @ Y3 )
% 0.27/0.46 & ( successively_list_a @ X3 @ ( cons_list_a @ Y3 @ Xs2 ) ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % successively.elims(3)
% 0.27/0.46 thf(fact_296_successively_Oelims_I3_J,axiom,
% 0.27/0.46 ! [X3: a > a > $o,Xa: list_a] :
% 0.27/0.46 ( ~ ( successively_a @ X3 @ Xa )
% 0.27/0.46 => ~ ! [X: a,Y3: a,Xs2: list_a] :
% 0.27/0.46 ( ( Xa
% 0.27/0.46 = ( cons_a @ X @ ( cons_a @ Y3 @ Xs2 ) ) )
% 0.27/0.46 => ( ( X3 @ X @ Y3 )
% 0.27/0.46 & ( successively_a @ X3 @ ( cons_a @ Y3 @ Xs2 ) ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % successively.elims(3)
% 0.27/0.46 thf(fact_297_successively_Osimps_I3_J,axiom,
% 0.27/0.46 ! [P: list_a > list_a > $o,X3: list_a,Y: list_a,Xs: list_list_a] :
% 0.27/0.46 ( ( successively_list_a @ P @ ( cons_list_a @ X3 @ ( cons_list_a @ Y @ Xs ) ) )
% 0.27/0.46 = ( ( P @ X3 @ Y )
% 0.27/0.46 & ( successively_list_a @ P @ ( cons_list_a @ Y @ Xs ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % successively.simps(3)
% 0.27/0.46 thf(fact_298_successively_Osimps_I3_J,axiom,
% 0.27/0.46 ! [P: a > a > $o,X3: a,Y: a,Xs: list_a] :
% 0.27/0.46 ( ( successively_a @ P @ ( cons_a @ X3 @ ( cons_a @ Y @ Xs ) ) )
% 0.27/0.46 = ( ( P @ X3 @ Y )
% 0.27/0.46 & ( successively_a @ P @ ( cons_a @ Y @ Xs ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % successively.simps(3)
% 0.27/0.46 thf(fact_299_successively_Osimps_I1_J,axiom,
% 0.27/0.46 ! [P: list_a > list_a > $o] : ( successively_list_a @ P @ nil_list_a ) ).
% 0.27/0.46
% 0.27/0.46 % successively.simps(1)
% 0.27/0.46 thf(fact_300_successively_Osimps_I1_J,axiom,
% 0.27/0.46 ! [P: a > a > $o] : ( successively_a @ P @ nil_a ) ).
% 0.27/0.46
% 0.27/0.46 % successively.simps(1)
% 0.27/0.46 thf(fact_301_distinct__adj__appendD1,axiom,
% 0.27/0.46 ! [Xs: list_list_a,Ys2: list_list_a] :
% 0.27/0.46 ( ( distinct_adj_list_a @ ( append_list_a @ Xs @ Ys2 ) )
% 0.27/0.46 => ( distinct_adj_list_a @ Xs ) ) ).
% 0.27/0.46
% 0.27/0.46 % distinct_adj_appendD1
% 0.27/0.46 thf(fact_302_distinct__adj__appendD1,axiom,
% 0.27/0.46 ! [Xs: list_a,Ys2: list_a] :
% 0.27/0.46 ( ( distinct_adj_a @ ( append_a @ Xs @ Ys2 ) )
% 0.27/0.46 => ( distinct_adj_a @ Xs ) ) ).
% 0.27/0.46
% 0.27/0.46 % distinct_adj_appendD1
% 0.27/0.46 thf(fact_303_distinct__adj__appendD2,axiom,
% 0.27/0.46 ! [Xs: list_list_a,Ys2: list_list_a] :
% 0.27/0.46 ( ( distinct_adj_list_a @ ( append_list_a @ Xs @ Ys2 ) )
% 0.27/0.46 => ( distinct_adj_list_a @ Ys2 ) ) ).
% 0.27/0.46
% 0.27/0.46 % distinct_adj_appendD2
% 0.27/0.46 thf(fact_304_distinct__adj__appendD2,axiom,
% 0.27/0.46 ! [Xs: list_a,Ys2: list_a] :
% 0.27/0.46 ( ( distinct_adj_a @ ( append_a @ Xs @ Ys2 ) )
% 0.27/0.46 => ( distinct_adj_a @ Ys2 ) ) ).
% 0.27/0.46
% 0.27/0.46 % distinct_adj_appendD2
% 0.27/0.46 thf(fact_305_distinct__adj__Nil,axiom,
% 0.27/0.46 distinct_adj_list_a @ nil_list_a ).
% 0.27/0.46
% 0.27/0.46 % distinct_adj_Nil
% 0.27/0.46 thf(fact_306_distinct__adj__Nil,axiom,
% 0.27/0.46 distinct_adj_a @ nil_a ).
% 0.27/0.46
% 0.27/0.46 % distinct_adj_Nil
% 0.27/0.46 thf(fact_307_distinct__adj__ConsD,axiom,
% 0.27/0.46 ! [X3: list_a,Xs: list_list_a] :
% 0.27/0.46 ( ( distinct_adj_list_a @ ( cons_list_a @ X3 @ Xs ) )
% 0.27/0.46 => ( distinct_adj_list_a @ Xs ) ) ).
% 0.27/0.46
% 0.27/0.46 % distinct_adj_ConsD
% 0.27/0.46 thf(fact_308_distinct__adj__ConsD,axiom,
% 0.27/0.46 ! [X3: a,Xs: list_a] :
% 0.27/0.46 ( ( distinct_adj_a @ ( cons_a @ X3 @ Xs ) )
% 0.27/0.46 => ( distinct_adj_a @ Xs ) ) ).
% 0.27/0.46
% 0.27/0.46 % distinct_adj_ConsD
% 0.27/0.46 thf(fact_309_butlast__tl,axiom,
% 0.27/0.46 ! [Xs: list_a] :
% 0.27/0.46 ( ( butlast_a @ ( tl_a @ Xs ) )
% 0.27/0.46 = ( tl_a @ ( butlast_a @ Xs ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % butlast_tl
% 0.27/0.46 thf(fact_310_tl__Nil,axiom,
% 0.27/0.46 ! [Xs: list_list_a] :
% 0.27/0.46 ( ( ( tl_list_a @ Xs )
% 0.27/0.46 = nil_list_a )
% 0.27/0.46 = ( ( Xs = nil_list_a )
% 0.27/0.46 | ? [X4: list_a] :
% 0.27/0.46 ( Xs
% 0.27/0.46 = ( cons_list_a @ X4 @ nil_list_a ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % tl_Nil
% 0.27/0.46 thf(fact_311_tl__Nil,axiom,
% 0.27/0.46 ! [Xs: list_a] :
% 0.27/0.46 ( ( ( tl_a @ Xs )
% 0.27/0.46 = nil_a )
% 0.27/0.46 = ( ( Xs = nil_a )
% 0.27/0.46 | ? [X4: a] :
% 0.27/0.46 ( Xs
% 0.27/0.46 = ( cons_a @ X4 @ nil_a ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % tl_Nil
% 0.27/0.46 thf(fact_312_Nil__tl,axiom,
% 0.27/0.46 ! [Xs: list_list_a] :
% 0.27/0.46 ( ( nil_list_a
% 0.27/0.46 = ( tl_list_a @ Xs ) )
% 0.27/0.46 = ( ( Xs = nil_list_a )
% 0.27/0.46 | ? [X4: list_a] :
% 0.27/0.46 ( Xs
% 0.27/0.46 = ( cons_list_a @ X4 @ nil_list_a ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % Nil_tl
% 0.27/0.46 thf(fact_313_Nil__tl,axiom,
% 0.27/0.46 ! [Xs: list_a] :
% 0.27/0.46 ( ( nil_a
% 0.27/0.46 = ( tl_a @ Xs ) )
% 0.27/0.46 = ( ( Xs = nil_a )
% 0.27/0.46 | ? [X4: a] :
% 0.27/0.46 ( Xs
% 0.27/0.46 = ( cons_a @ X4 @ nil_a ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % Nil_tl
% 0.27/0.46 thf(fact_314_list_Oexpand,axiom,
% 0.27/0.46 ! [List: list_list_a,List2: list_list_a] :
% 0.27/0.46 ( ( ( List = nil_list_a )
% 0.27/0.46 = ( List2 = nil_list_a ) )
% 0.27/0.46 => ( ( ( List != nil_list_a )
% 0.27/0.46 => ( ( List2 != nil_list_a )
% 0.27/0.46 => ( ( ( hd_list_a @ List )
% 0.27/0.46 = ( hd_list_a @ List2 ) )
% 0.27/0.46 & ( ( tl_list_a @ List )
% 0.27/0.46 = ( tl_list_a @ List2 ) ) ) ) )
% 0.27/0.46 => ( List = List2 ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % list.expand
% 0.27/0.46 thf(fact_315_list_Oexpand,axiom,
% 0.27/0.46 ! [List: list_a,List2: list_a] :
% 0.27/0.46 ( ( ( List = nil_a )
% 0.27/0.46 = ( List2 = nil_a ) )
% 0.27/0.46 => ( ( ( List != nil_a )
% 0.27/0.46 => ( ( List2 != nil_a )
% 0.27/0.46 => ( ( ( hd_a @ List )
% 0.27/0.46 = ( hd_a @ List2 ) )
% 0.27/0.46 & ( ( tl_a @ List )
% 0.27/0.46 = ( tl_a @ List2 ) ) ) ) )
% 0.27/0.46 => ( List = List2 ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % list.expand
% 0.27/0.46 thf(fact_316_last__tl,axiom,
% 0.27/0.46 ! [Xs: list_list_a] :
% 0.27/0.46 ( ( ( Xs = nil_list_a )
% 0.27/0.46 | ( ( tl_list_a @ Xs )
% 0.27/0.46 != nil_list_a ) )
% 0.27/0.46 => ( ( last_list_a @ ( tl_list_a @ Xs ) )
% 0.27/0.46 = ( last_list_a @ Xs ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % last_tl
% 0.27/0.46 thf(fact_317_last__tl,axiom,
% 0.27/0.46 ! [Xs: list_a] :
% 0.27/0.46 ( ( ( Xs = nil_a )
% 0.27/0.46 | ( ( tl_a @ Xs )
% 0.27/0.46 != nil_a ) )
% 0.27/0.46 => ( ( last_a @ ( tl_a @ Xs ) )
% 0.27/0.46 = ( last_a @ Xs ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % last_tl
% 0.27/0.46 thf(fact_318_successively_Osimps_I2_J,axiom,
% 0.27/0.46 ! [P: list_a > list_a > $o,X3: list_a] : ( successively_list_a @ P @ ( cons_list_a @ X3 @ nil_list_a ) ) ).
% 0.27/0.46
% 0.27/0.46 % successively.simps(2)
% 0.27/0.46 thf(fact_319_successively_Osimps_I2_J,axiom,
% 0.27/0.46 ! [P: a > a > $o,X3: a] : ( successively_a @ P @ ( cons_a @ X3 @ nil_a ) ) ).
% 0.27/0.46
% 0.27/0.46 % successively.simps(2)
% 0.27/0.46 thf(fact_320_successively_Oelims_I1_J,axiom,
% 0.27/0.46 ! [X3: list_a > list_a > $o,Xa: list_list_a,Y: $o] :
% 0.27/0.46 ( ( ( successively_list_a @ X3 @ Xa )
% 0.27/0.46 = Y )
% 0.27/0.46 => ( ( ( Xa = nil_list_a )
% 0.27/0.46 => ~ Y )
% 0.27/0.46 => ( ( ? [X: list_a] :
% 0.27/0.46 ( Xa
% 0.27/0.46 = ( cons_list_a @ X @ nil_list_a ) )
% 0.27/0.46 => ~ Y )
% 0.27/0.46 => ~ ! [X: list_a,Y3: list_a,Xs2: list_list_a] :
% 0.27/0.46 ( ( Xa
% 0.27/0.46 = ( cons_list_a @ X @ ( cons_list_a @ Y3 @ Xs2 ) ) )
% 0.27/0.46 => ( Y
% 0.27/0.46 = ( ~ ( ( X3 @ X @ Y3 )
% 0.27/0.46 & ( successively_list_a @ X3 @ ( cons_list_a @ Y3 @ Xs2 ) ) ) ) ) ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % successively.elims(1)
% 0.27/0.46 thf(fact_321_successively_Oelims_I1_J,axiom,
% 0.27/0.46 ! [X3: a > a > $o,Xa: list_a,Y: $o] :
% 0.27/0.46 ( ( ( successively_a @ X3 @ Xa )
% 0.27/0.46 = Y )
% 0.27/0.46 => ( ( ( Xa = nil_a )
% 0.27/0.46 => ~ Y )
% 0.27/0.46 => ( ( ? [X: a] :
% 0.27/0.46 ( Xa
% 0.27/0.46 = ( cons_a @ X @ nil_a ) )
% 0.27/0.46 => ~ Y )
% 0.27/0.46 => ~ ! [X: a,Y3: a,Xs2: list_a] :
% 0.27/0.46 ( ( Xa
% 0.27/0.46 = ( cons_a @ X @ ( cons_a @ Y3 @ Xs2 ) ) )
% 0.27/0.46 => ( Y
% 0.27/0.46 = ( ~ ( ( X3 @ X @ Y3 )
% 0.27/0.46 & ( successively_a @ X3 @ ( cons_a @ Y3 @ Xs2 ) ) ) ) ) ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % successively.elims(1)
% 0.27/0.46 thf(fact_322_successively_Oelims_I2_J,axiom,
% 0.27/0.46 ! [X3: list_a > list_a > $o,Xa: list_list_a] :
% 0.27/0.46 ( ( successively_list_a @ X3 @ Xa )
% 0.27/0.46 => ( ( Xa != nil_list_a )
% 0.27/0.46 => ( ! [X: list_a] :
% 0.27/0.46 ( Xa
% 0.27/0.46 != ( cons_list_a @ X @ nil_list_a ) )
% 0.27/0.46 => ~ ! [X: list_a,Y3: list_a,Xs2: list_list_a] :
% 0.27/0.46 ( ( Xa
% 0.27/0.46 = ( cons_list_a @ X @ ( cons_list_a @ Y3 @ Xs2 ) ) )
% 0.27/0.46 => ~ ( ( X3 @ X @ Y3 )
% 0.27/0.46 & ( successively_list_a @ X3 @ ( cons_list_a @ Y3 @ Xs2 ) ) ) ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % successively.elims(2)
% 0.27/0.46 thf(fact_323_successively_Oelims_I2_J,axiom,
% 0.27/0.46 ! [X3: a > a > $o,Xa: list_a] :
% 0.27/0.46 ( ( successively_a @ X3 @ Xa )
% 0.27/0.46 => ( ( Xa != nil_a )
% 0.27/0.46 => ( ! [X: a] :
% 0.27/0.46 ( Xa
% 0.27/0.46 != ( cons_a @ X @ nil_a ) )
% 0.27/0.46 => ~ ! [X: a,Y3: a,Xs2: list_a] :
% 0.27/0.46 ( ( Xa
% 0.27/0.46 = ( cons_a @ X @ ( cons_a @ Y3 @ Xs2 ) ) )
% 0.27/0.46 => ~ ( ( X3 @ X @ Y3 )
% 0.27/0.46 & ( successively_a @ X3 @ ( cons_a @ Y3 @ Xs2 ) ) ) ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % successively.elims(2)
% 0.27/0.46 thf(fact_324_distinct__adj__singleton,axiom,
% 0.27/0.46 ! [X3: list_a] : ( distinct_adj_list_a @ ( cons_list_a @ X3 @ nil_list_a ) ) ).
% 0.27/0.46
% 0.27/0.46 % distinct_adj_singleton
% 0.27/0.46 thf(fact_325_distinct__adj__singleton,axiom,
% 0.27/0.46 ! [X3: a] : ( distinct_adj_a @ ( cons_a @ X3 @ nil_a ) ) ).
% 0.27/0.46
% 0.27/0.46 % distinct_adj_singleton
% 0.27/0.46 thf(fact_326_list_Oexhaust__sel,axiom,
% 0.27/0.46 ! [List: list_a] :
% 0.27/0.46 ( ( List != nil_a )
% 0.27/0.46 => ( List
% 0.27/0.46 = ( cons_a @ ( hd_a @ List ) @ ( tl_a @ List ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % list.exhaust_sel
% 0.27/0.46 thf(fact_327_successively__Cons,axiom,
% 0.27/0.46 ! [P: a > a > $o,X3: a,Xs: list_a] :
% 0.27/0.46 ( ( successively_a @ P @ ( cons_a @ X3 @ Xs ) )
% 0.27/0.46 = ( ( Xs = nil_a )
% 0.27/0.46 | ( ( P @ X3 @ ( hd_a @ Xs ) )
% 0.27/0.46 & ( successively_a @ P @ Xs ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % successively_Cons
% 0.27/0.46 thf(fact_328_distinct__adj__Cons,axiom,
% 0.27/0.46 ! [X3: a,Xs: list_a] :
% 0.27/0.46 ( ( distinct_adj_a @ ( cons_a @ X3 @ Xs ) )
% 0.27/0.46 = ( ( Xs = nil_a )
% 0.27/0.46 | ( ( X3
% 0.27/0.46 != ( hd_a @ Xs ) )
% 0.27/0.46 & ( distinct_adj_a @ Xs ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % distinct_adj_Cons
% 0.27/0.46 thf(fact_329_Cons__in__shuffles__iff,axiom,
% 0.27/0.46 ! [Z: a,Zs2: list_a,Xs: list_a,Ys2: list_a] :
% 0.27/0.46 ( ( member_list_a2 @ ( cons_a @ Z @ Zs2 ) @ ( shuffles_a @ Xs @ Ys2 ) )
% 0.27/0.46 = ( ( ( Xs != nil_a )
% 0.27/0.46 & ( ( hd_a @ Xs )
% 0.27/0.46 = Z )
% 0.27/0.46 & ( member_list_a2 @ Zs2 @ ( shuffles_a @ ( tl_a @ Xs ) @ Ys2 ) ) )
% 0.27/0.46 | ( ( Ys2 != nil_a )
% 0.27/0.46 & ( ( hd_a @ Ys2 )
% 0.27/0.46 = Z )
% 0.27/0.46 & ( member_list_a2 @ Zs2 @ ( shuffles_a @ Xs @ ( tl_a @ Ys2 ) ) ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % Cons_in_shuffles_iff
% 0.27/0.46 thf(fact_330_map2__Cons__not__empty,axiom,
% 0.27/0.46 ! [Xs: list_a,F: a > a > a,Y: a,Ys2: list_a] :
% 0.27/0.46 ( ( Xs != nil_a )
% 0.27/0.46 => ( ( map2_a_a_a @ F @ Xs @ ( cons_a @ Y @ Ys2 ) )
% 0.27/0.46 = ( cons_a @ ( F @ ( hd_a @ Xs ) @ Y ) @ ( map2_a_a_a @ F @ ( tl_a @ Xs ) @ Ys2 ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % map2_Cons_not_empty
% 0.27/0.46 thf(fact_331_Nil__in__shuffles,axiom,
% 0.27/0.46 ! [Xs: list_a,Ys2: list_a] :
% 0.27/0.46 ( ( member_list_a2 @ nil_a @ ( shuffles_a @ Xs @ Ys2 ) )
% 0.27/0.46 = ( ( Xs = nil_a )
% 0.27/0.46 & ( Ys2 = nil_a ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % Nil_in_shuffles
% 0.27/0.46 thf(fact_332_shufflesE,axiom,
% 0.27/0.46 ! [Zs2: list_a,Xs: list_a,Ys2: list_a] :
% 0.27/0.46 ( ( member_list_a2 @ Zs2 @ ( shuffles_a @ Xs @ Ys2 ) )
% 0.27/0.46 => ( ( ( Zs2 = Xs )
% 0.27/0.46 => ( Ys2 != nil_a ) )
% 0.27/0.46 => ( ( ( Zs2 = Ys2 )
% 0.27/0.46 => ( Xs != nil_a ) )
% 0.27/0.46 => ( ! [X: a,Xs5: list_a] :
% 0.27/0.46 ( ( Xs
% 0.27/0.46 = ( cons_a @ X @ Xs5 ) )
% 0.27/0.46 => ! [Z2: a,Zs3: list_a] :
% 0.27/0.46 ( ( Zs2
% 0.27/0.46 = ( cons_a @ Z2 @ Zs3 ) )
% 0.27/0.46 => ( ( X = Z2 )
% 0.27/0.46 => ~ ( member_list_a2 @ Zs3 @ ( shuffles_a @ Xs5 @ Ys2 ) ) ) ) )
% 0.27/0.46 => ~ ! [Y3: a,Ys5: list_a] :
% 0.27/0.46 ( ( Ys2
% 0.27/0.46 = ( cons_a @ Y3 @ Ys5 ) )
% 0.27/0.46 => ! [Z2: a,Zs3: list_a] :
% 0.27/0.46 ( ( Zs2
% 0.27/0.46 = ( cons_a @ Z2 @ Zs3 ) )
% 0.27/0.46 => ( ( Y3 = Z2 )
% 0.27/0.46 => ~ ( member_list_a2 @ Zs3 @ ( shuffles_a @ Xs @ Ys5 ) ) ) ) ) ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % shufflesE
% 0.27/0.46 thf(fact_333_map2__Cons__Cons,axiom,
% 0.27/0.46 ! [F: a > a > a,X3: a,Xs: list_a,Y: a,Ys2: list_a] :
% 0.27/0.46 ( ( map2_a_a_a @ F @ ( cons_a @ X3 @ Xs ) @ ( cons_a @ Y @ Ys2 ) )
% 0.27/0.46 = ( cons_a @ ( F @ X3 @ Y ) @ ( map2_a_a_a @ F @ Xs @ Ys2 ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % map2_Cons_Cons
% 0.27/0.46 thf(fact_334_Cons__in__shuffles__leftI,axiom,
% 0.27/0.46 ! [Zs2: list_a,Xs: list_a,Ys2: list_a,Z: a] :
% 0.27/0.46 ( ( member_list_a2 @ Zs2 @ ( shuffles_a @ Xs @ Ys2 ) )
% 0.27/0.46 => ( member_list_a2 @ ( cons_a @ Z @ Zs2 ) @ ( shuffles_a @ ( cons_a @ Z @ Xs ) @ Ys2 ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % Cons_in_shuffles_leftI
% 0.27/0.46 thf(fact_335_Cons__in__shuffles__rightI,axiom,
% 0.27/0.46 ! [Zs2: list_a,Xs: list_a,Ys2: list_a,Z: a] :
% 0.27/0.46 ( ( member_list_a2 @ Zs2 @ ( shuffles_a @ Xs @ Ys2 ) )
% 0.27/0.46 => ( member_list_a2 @ ( cons_a @ Z @ Zs2 ) @ ( shuffles_a @ Xs @ ( cons_a @ Z @ Ys2 ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % Cons_in_shuffles_rightI
% 0.27/0.46 thf(fact_336_Nil__in__shufflesI,axiom,
% 0.27/0.46 ! [Xs: list_a,Ys2: list_a] :
% 0.27/0.46 ( ( Xs = nil_a )
% 0.27/0.46 => ( ( Ys2 = nil_a )
% 0.27/0.46 => ( member_list_a2 @ nil_a @ ( shuffles_a @ Xs @ Ys2 ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % Nil_in_shufflesI
% 0.27/0.46 thf(fact_337_map2__Cons__if,axiom,
% 0.27/0.46 ! [Xs: list_a,F: a > a > a,Y: a,Ys2: list_a] :
% 0.27/0.46 ( ( ( Xs = nil_a )
% 0.27/0.46 => ( ( map2_a_a_a @ F @ Xs @ ( cons_a @ Y @ Ys2 ) )
% 0.27/0.46 = nil_a ) )
% 0.27/0.46 & ( ( Xs != nil_a )
% 0.27/0.46 => ( ( map2_a_a_a @ F @ Xs @ ( cons_a @ Y @ Ys2 ) )
% 0.27/0.46 = ( cons_a @ ( F @ ( hd_a @ Xs ) @ Y ) @ ( map2_a_a_a @ F @ ( tl_a @ Xs ) @ Ys2 ) ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % map2_Cons_if
% 0.27/0.46 thf(fact_338_remdups__adj__append_H,axiom,
% 0.27/0.46 ! [Xs: list_a,Ys2: list_a] :
% 0.27/0.46 ( ( ( Xs = nil_a )
% 0.27/0.46 | ( Ys2 = nil_a )
% 0.27/0.46 | ( ( last_a @ Xs )
% 0.27/0.46 != ( hd_a @ Ys2 ) ) )
% 0.27/0.46 => ( ( remdups_adj_a @ ( append_a @ Xs @ Ys2 ) )
% 0.27/0.46 = ( append_a @ ( remdups_adj_a @ Xs ) @ ( remdups_adj_a @ Ys2 ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % remdups_adj_append'
% 0.27/0.46 thf(fact_339_remdups__adj__append,axiom,
% 0.27/0.46 ! [Xs_1: list_a,X3: a,Xs_2: list_a] :
% 0.27/0.46 ( ( remdups_adj_a @ ( append_a @ Xs_1 @ ( cons_a @ X3 @ Xs_2 ) ) )
% 0.27/0.46 = ( append_a @ ( remdups_adj_a @ ( append_a @ Xs_1 @ ( cons_a @ X3 @ nil_a ) ) ) @ ( tl_a @ ( remdups_adj_a @ ( cons_a @ X3 @ Xs_2 ) ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % remdups_adj_append
% 0.27/0.46 thf(fact_340_remdups__adj__Nil__iff,axiom,
% 0.27/0.46 ! [Xs: list_a] :
% 0.27/0.46 ( ( ( remdups_adj_a @ Xs )
% 0.27/0.46 = nil_a )
% 0.27/0.46 = ( Xs = nil_a ) ) ).
% 0.27/0.46
% 0.27/0.46 % remdups_adj_Nil_iff
% 0.27/0.46 thf(fact_341_remdups__adj__Cons__alt,axiom,
% 0.27/0.46 ! [X3: a,Xs: list_a] :
% 0.27/0.46 ( ( cons_a @ X3 @ ( tl_a @ ( remdups_adj_a @ ( cons_a @ X3 @ Xs ) ) ) )
% 0.27/0.46 = ( remdups_adj_a @ ( cons_a @ X3 @ Xs ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % remdups_adj_Cons_alt
% 0.27/0.46 thf(fact_342_remdups__adj_Oelims,axiom,
% 0.27/0.46 ! [X3: list_a,Y: list_a] :
% 0.27/0.46 ( ( ( remdups_adj_a @ X3 )
% 0.27/0.46 = Y )
% 0.27/0.46 => ( ( ( X3 = nil_a )
% 0.27/0.46 => ( Y != nil_a ) )
% 0.27/0.46 => ( ! [X: a] :
% 0.27/0.46 ( ( X3
% 0.27/0.46 = ( cons_a @ X @ nil_a ) )
% 0.27/0.46 => ( Y
% 0.27/0.46 != ( cons_a @ X @ nil_a ) ) )
% 0.27/0.46 => ~ ! [X: a,Y3: a,Xs2: list_a] :
% 0.27/0.46 ( ( X3
% 0.27/0.46 = ( cons_a @ X @ ( cons_a @ Y3 @ Xs2 ) ) )
% 0.27/0.46 => ~ ( ( ( X = Y3 )
% 0.27/0.46 => ( Y
% 0.27/0.46 = ( remdups_adj_a @ ( cons_a @ X @ Xs2 ) ) ) )
% 0.27/0.46 & ( ( X != Y3 )
% 0.27/0.46 => ( Y
% 0.27/0.46 = ( cons_a @ X @ ( remdups_adj_a @ ( cons_a @ Y3 @ Xs2 ) ) ) ) ) ) ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % remdups_adj.elims
% 0.27/0.46 thf(fact_343_remdups__adj_Osimps_I2_J,axiom,
% 0.27/0.46 ! [X3: a] :
% 0.27/0.46 ( ( remdups_adj_a @ ( cons_a @ X3 @ nil_a ) )
% 0.27/0.46 = ( cons_a @ X3 @ nil_a ) ) ).
% 0.27/0.46
% 0.27/0.46 % remdups_adj.simps(2)
% 0.27/0.46 thf(fact_344_remdups__adj_Osimps_I1_J,axiom,
% 0.27/0.46 ( ( remdups_adj_a @ nil_a )
% 0.27/0.46 = nil_a ) ).
% 0.27/0.46
% 0.27/0.46 % remdups_adj.simps(1)
% 0.27/0.46 thf(fact_345_remdups__adj_Osimps_I3_J,axiom,
% 0.27/0.46 ! [X3: a,Y: a,Xs: list_a] :
% 0.27/0.46 ( ( ( X3 = Y )
% 0.27/0.46 => ( ( remdups_adj_a @ ( cons_a @ X3 @ ( cons_a @ Y @ Xs ) ) )
% 0.27/0.46 = ( remdups_adj_a @ ( cons_a @ X3 @ Xs ) ) ) )
% 0.27/0.46 & ( ( X3 != Y )
% 0.27/0.46 => ( ( remdups_adj_a @ ( cons_a @ X3 @ ( cons_a @ Y @ Xs ) ) )
% 0.27/0.46 = ( cons_a @ X3 @ ( remdups_adj_a @ ( cons_a @ Y @ Xs ) ) ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % remdups_adj.simps(3)
% 0.27/0.46 thf(fact_346_remdups__adj__append__two,axiom,
% 0.27/0.46 ! [Xs: list_a,X3: a,Y: a] :
% 0.27/0.46 ( ( remdups_adj_a @ ( append_a @ Xs @ ( cons_a @ X3 @ ( cons_a @ Y @ nil_a ) ) ) )
% 0.27/0.46 = ( append_a @ ( remdups_adj_a @ ( append_a @ Xs @ ( cons_a @ X3 @ nil_a ) ) ) @ ( if_list_a @ ( X3 = Y ) @ nil_a @ ( cons_a @ Y @ nil_a ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % remdups_adj_append_two
% 0.27/0.46 thf(fact_347_map2__snoc__snoc,axiom,
% 0.27/0.46 ! [Xs: list_a,Ys2: list_a,F: a > a > a,X3: a,Y: a] :
% 0.27/0.46 ( ( ( size_size_list_a @ Xs )
% 0.27/0.46 = ( size_size_list_a @ Ys2 ) )
% 0.27/0.46 => ( ( map2_a_a_a @ F @ ( append_a @ Xs @ ( cons_a @ X3 @ nil_a ) ) @ ( append_a @ Ys2 @ ( cons_a @ Y @ nil_a ) ) )
% 0.27/0.46 = ( append_a @ ( map2_a_a_a @ F @ Xs @ Ys2 ) @ ( cons_a @ ( F @ X3 @ Y ) @ nil_a ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % map2_snoc_snoc
% 0.27/0.46 thf(fact_348_length__greater__imp__not__empty,axiom,
% 0.27/0.46 ! [N: nat,Xs: list_a] :
% 0.27/0.46 ( ( ord_less_nat @ N @ ( size_size_list_a @ Xs ) )
% 0.27/0.46 => ( Xs != nil_a ) ) ).
% 0.27/0.46
% 0.27/0.46 % length_greater_imp_not_empty
% 0.27/0.46 thf(fact_349_list__induct2,axiom,
% 0.27/0.46 ! [Xs: list_a,Ys2: list_a,P: list_a > list_a > $o] :
% 0.27/0.46 ( ( ( size_size_list_a @ Xs )
% 0.27/0.46 = ( size_size_list_a @ Ys2 ) )
% 0.27/0.46 => ( ( P @ nil_a @ nil_a )
% 0.27/0.46 => ( ! [X: a,Xs2: list_a,Y3: a,Ys3: list_a] :
% 0.27/0.46 ( ( ( size_size_list_a @ Xs2 )
% 0.27/0.46 = ( size_size_list_a @ Ys3 ) )
% 0.27/0.46 => ( ( P @ Xs2 @ Ys3 )
% 0.27/0.46 => ( P @ ( cons_a @ X @ Xs2 ) @ ( cons_a @ Y3 @ Ys3 ) ) ) )
% 0.27/0.46 => ( P @ Xs @ Ys2 ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % list_induct2
% 0.27/0.46 thf(fact_350_list__induct3,axiom,
% 0.27/0.46 ! [Xs: list_a,Ys2: list_a,Zs2: list_a,P: list_a > list_a > list_a > $o] :
% 0.27/0.46 ( ( ( size_size_list_a @ Xs )
% 0.27/0.46 = ( size_size_list_a @ Ys2 ) )
% 0.27/0.46 => ( ( ( size_size_list_a @ Ys2 )
% 0.27/0.46 = ( size_size_list_a @ Zs2 ) )
% 0.27/0.46 => ( ( P @ nil_a @ nil_a @ nil_a )
% 0.27/0.46 => ( ! [X: a,Xs2: list_a,Y3: a,Ys3: list_a,Z2: a,Zs: list_a] :
% 0.27/0.46 ( ( ( size_size_list_a @ Xs2 )
% 0.27/0.46 = ( size_size_list_a @ Ys3 ) )
% 0.27/0.46 => ( ( ( size_size_list_a @ Ys3 )
% 0.27/0.46 = ( size_size_list_a @ Zs ) )
% 0.27/0.46 => ( ( P @ Xs2 @ Ys3 @ Zs )
% 0.27/0.46 => ( P @ ( cons_a @ X @ Xs2 ) @ ( cons_a @ Y3 @ Ys3 ) @ ( cons_a @ Z2 @ Zs ) ) ) ) )
% 0.27/0.46 => ( P @ Xs @ Ys2 @ Zs2 ) ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % list_induct3
% 0.27/0.46 thf(fact_351_list__induct4,axiom,
% 0.27/0.46 ! [Xs: list_a,Ys2: list_a,Zs2: list_a,Ws2: list_a,P: list_a > list_a > list_a > list_a > $o] :
% 0.27/0.46 ( ( ( size_size_list_a @ Xs )
% 0.27/0.46 = ( size_size_list_a @ Ys2 ) )
% 0.27/0.46 => ( ( ( size_size_list_a @ Ys2 )
% 0.27/0.46 = ( size_size_list_a @ Zs2 ) )
% 0.27/0.46 => ( ( ( size_size_list_a @ Zs2 )
% 0.27/0.46 = ( size_size_list_a @ Ws2 ) )
% 0.27/0.46 => ( ( P @ nil_a @ nil_a @ nil_a @ nil_a )
% 0.27/0.46 => ( ! [X: a,Xs2: list_a,Y3: a,Ys3: list_a,Z2: a,Zs: list_a,W: a,Ws3: list_a] :
% 0.27/0.46 ( ( ( size_size_list_a @ Xs2 )
% 0.27/0.46 = ( size_size_list_a @ Ys3 ) )
% 0.27/0.46 => ( ( ( size_size_list_a @ Ys3 )
% 0.27/0.46 = ( size_size_list_a @ Zs ) )
% 0.27/0.46 => ( ( ( size_size_list_a @ Zs )
% 0.27/0.46 = ( size_size_list_a @ Ws3 ) )
% 0.27/0.46 => ( ( P @ Xs2 @ Ys3 @ Zs @ Ws3 )
% 0.27/0.46 => ( P @ ( cons_a @ X @ Xs2 ) @ ( cons_a @ Y3 @ Ys3 ) @ ( cons_a @ Z2 @ Zs ) @ ( cons_a @ W @ Ws3 ) ) ) ) ) )
% 0.27/0.46 => ( P @ Xs @ Ys2 @ Zs2 @ Ws2 ) ) ) ) ) ) ).
% 0.27/0.46
% 0.27/0.46 % list_induct4
% 0.27/0.46
% 0.27/0.46 % Helper facts (3)
% 0.27/0.46 thf(help_If_3_1_If_001t__List__Olist_Itf__a_J_T,axiom,
% 0.27/0.46 ! [P: $o] :
% 0.27/0.46 ( ( P = $true )
% 0.27/0.46 | ( P = $false ) ) ).
% 0.27/0.46
% 0.27/0.46 thf(help_If_2_1_If_001t__List__Olist_Itf__a_J_T,axiom,
% 0.27/0.46 ! [X3: list_a,Y: list_a] :
% 0.27/0.46 ( ( if_list_a @ $false @ X3 @ Y )
% 0.27/0.46 = Y ) ).
% 0.27/0.46
% 0.27/0.46 thf(help_If_1_1_If_001t__List__Olist_Itf__a_J_T,axiom,
% 0.27/0.46 ! [X3: list_a,Y: list_a] :
% 0.27/0.46 ( ( if_list_a @ $true @ X3 @ Y )
% 0.27/0.46 = X3 ) ).
% 0.27/0.46
% 0.27/0.46 % Conjectures (1)
% 0.27/0.46 thf(conj_0,conjecture,
% 0.27/0.46 ( ( listIn1312259492pend_a @ ( cons_a @ x @ xs ) @ f )
% 0.27/0.46 = ( listIn1312259492pend_a @ ( cons_a @ x @ nil_a ) @ ( listIn1312259492pend_a @ xs @ f ) ) ) ).
% 0.27/0.46
% 0.27/0.46 %------------------------------------------------------------------------------
% 0.27/0.46 ------------------------
% 2.92/1.56 ---- Embedded in THF ---
% 2.92/1.56 %%% This output was generated by embedproblem, version 1.9.5 (library version 1.9).
% 2.92/1.56 %%% Generated on Tue Feb 24 08:26:38 EST 2026
% 2.92/1.56 %%% using '$$dhol' embedding, version 1.3.0.
% 2.92/1.56 %%% Logic specification used:
% 2.92/1.56 %%% thf(spec, logic, $$dhol).
% 2.92/1.56
% 2.92/1.56 % SZS output start ListOfTHF for /export/starexec/sandbox2/tmp/tmp.5LVVyH7wPu/DTF2DTF20820.p
% See solution above
% 2.92/1.56 ------------------------
% 3.05/1.62 ---- Cleaned THF ---
% 3.05/1.62 thf(ty_n_t__List__Olist_It__List__Olist_It__List__Olist_Itf__a_J_J_J,type,
% 3.05/1.62 list_list_list_a: $tType ).
% 3.05/1.62
% 3.05/1.62 thf(ty_n_t__Set__Oset_It__List__Olist_It__List__Olist_Itf__a_J_J_J,type,
% 3.05/1.62 set_list_list_a: $tType ).
% 3.05/1.62
% 3.05/1.62 thf(ty_n_t__List__Olist_It__List__Olist_Itf__a_J_J,type,
% 3.05/1.62 list_list_a: $tType ).
% 3.05/1.62
% 3.05/1.62 thf(ty_n_t__Set__Oset_It__List__Olist_Itf__a_J_J,type,
% 3.05/1.62 set_list_a: $tType ).
% 3.05/1.62
% 3.05/1.62 thf(ty_n_t__List__Olist_It__Nat__Onat_J,type,
% 3.05/1.62 list_nat: $tType ).
% 3.05/1.62
% 3.05/1.62 thf(ty_n_t__List__Olist_Itf__a_J,type,
% 3.05/1.62 list_a: $tType ).
% 3.05/1.62
% 3.05/1.62 thf(ty_n_t__Set__Oset_Itf__a_J,type,
% 3.05/1.62 set_a: $tType ).
% 3.05/1.62
% 3.05/1.62 thf(ty_n_t__Nat__Onat,type,
% 3.05/1.62 nat: $tType ).
% 3.05/1.62
% 3.05/1.62 thf(ty_n_tf__a,type,
% 3.05/1.62 a: $tType ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_BNF__Greatest__Fixpoint_OShift_001t__List__Olist_Itf__a_J,type,
% 3.05/1.62 bNF_Gr1972240547list_a: set_list_list_a > list_a > set_list_list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_BNF__Greatest__Fixpoint_OShift_001tf__a,type,
% 3.05/1.62 bNF_Greatest_Shift_a: set_list_a > a > set_list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_BNF__Greatest__Fixpoint_OSucc_001t__List__Olist_Itf__a_J,type,
% 3.05/1.62 bNF_Gr1046450207list_a: set_list_list_a > list_list_a > set_list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_BNF__Greatest__Fixpoint_OSucc_001tf__a,type,
% 3.05/1.62 bNF_Greatest_Succ_a: set_list_a > list_a > set_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_If_001t__List__Olist_Itf__a_J,type,
% 3.05/1.62 if_list_a: $o > list_a > list_a > list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List2_Olist__ord_001t__Nat__Onat,type,
% 3.05/1.62 list_ord_nat: ( nat > nat > $o ) > list_nat > $o ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List2_Olist__strict__asc_001t__Nat__Onat,type,
% 3.05/1.62 list_strict_asc_nat: list_nat > $o ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List2_Omap2_001tf__a_001tf__a_001tf__a,type,
% 3.05/1.62 map2_a_a_a: ( a > a > a ) > list_a > list_a > list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_ListInf__Mirabelle__akbajwqfbr_Oi__append_001t__List__Olist_Itf__a_J,type,
% 3.05/1.62 listIn1753026346list_a: list_list_a > ( nat > list_a ) > nat > list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_ListInf__Mirabelle__akbajwqfbr_Oi__append_001tf__a,type,
% 3.05/1.62 listIn1312259492pend_a: list_a > ( nat > a ) > nat > a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Oappend_001t__List__Olist_It__List__Olist_Itf__a_J_J,type,
% 3.05/1.62 append_list_list_a: list_list_list_a > list_list_list_a > list_list_list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Oappend_001t__List__Olist_Itf__a_J,type,
% 3.05/1.62 append_list_a: list_list_a > list_list_a > list_list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Oappend_001t__Nat__Onat,type,
% 3.05/1.62 append_nat: list_nat > list_nat > list_nat ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Oappend_001tf__a,type,
% 3.05/1.62 append_a: list_a > list_a > list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Obind_001t__List__Olist_Itf__a_J_001t__List__Olist_Itf__a_J,type,
% 3.05/1.62 bind_list_a_list_a: list_list_a > ( list_a > list_list_a ) > list_list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Obind_001t__List__Olist_Itf__a_J_001tf__a,type,
% 3.05/1.62 bind_list_a_a: list_list_a > ( list_a > list_a ) > list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Obind_001tf__a_001t__List__Olist_Itf__a_J,type,
% 3.05/1.62 bind_a_list_a: list_a > ( a > list_list_a ) > list_list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Obind_001tf__a_001tf__a,type,
% 3.05/1.62 bind_a_a: list_a > ( a > list_a ) > list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Obutlast_001t__List__Olist_Itf__a_J,type,
% 3.05/1.62 butlast_list_a: list_list_a > list_list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Obutlast_001tf__a,type,
% 3.05/1.62 butlast_a: list_a > list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Oconcat_001t__List__Olist_Itf__a_J,type,
% 3.05/1.62 concat_list_a: list_list_list_a > list_list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Oconcat_001tf__a,type,
% 3.05/1.62 concat_a: list_list_a > list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Odistinct__adj_001t__List__Olist_Itf__a_J,type,
% 3.05/1.62 distinct_adj_list_a: list_list_a > $o ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Odistinct__adj_001tf__a,type,
% 3.05/1.62 distinct_adj_a: list_a > $o ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Ofoldr_001t__List__Olist_It__List__Olist_Itf__a_J_J_001t__List__Olist_It__List__Olist_Itf__a_J_J,type,
% 3.05/1.62 foldr_769741863list_a: ( list_list_a > list_list_a > list_list_a ) > list_list_list_a > list_list_a > list_list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Ofoldr_001t__List__Olist_Itf__a_J_001t__List__Olist_Itf__a_J,type,
% 3.05/1.62 foldr_list_a_list_a: ( list_a > list_a > list_a ) > list_list_a > list_a > list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Oinsert_001t__List__Olist_Itf__a_J,type,
% 3.05/1.62 insert_list_a: list_a > list_list_a > list_list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Oinsert_001tf__a,type,
% 3.05/1.62 insert_a: a > list_a > list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Olast_001t__List__Olist_Itf__a_J,type,
% 3.05/1.62 last_list_a: list_list_a > list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Olast_001tf__a,type,
% 3.05/1.62 last_a: list_a > a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Olist_OCons_001t__List__Olist_It__List__Olist_Itf__a_J_J,type,
% 3.05/1.62 cons_list_list_a: list_list_a > list_list_list_a > list_list_list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Olist_OCons_001t__List__Olist_Itf__a_J,type,
% 3.05/1.62 cons_list_a: list_a > list_list_a > list_list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Olist_OCons_001t__Nat__Onat,type,
% 3.05/1.62 cons_nat: nat > list_nat > list_nat ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Olist_OCons_001tf__a,type,
% 3.05/1.62 cons_a: a > list_a > list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Olist_ONil_001t__List__Olist_It__List__Olist_Itf__a_J_J,type,
% 3.05/1.62 nil_list_list_a: list_list_list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Olist_ONil_001t__List__Olist_Itf__a_J,type,
% 3.05/1.62 nil_list_a: list_list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Olist_ONil_001t__Nat__Onat,type,
% 3.05/1.62 nil_nat: list_nat ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Olist_ONil_001tf__a,type,
% 3.05/1.62 nil_a: list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Olist_Ohd_001t__List__Olist_It__List__Olist_Itf__a_J_J,type,
% 3.05/1.62 hd_list_list_a: list_list_list_a > list_list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Olist_Ohd_001t__List__Olist_Itf__a_J,type,
% 3.05/1.62 hd_list_a: list_list_a > list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Olist_Ohd_001tf__a,type,
% 3.05/1.62 hd_a: list_a > a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Olist_Otl_001t__List__Olist_Itf__a_J,type,
% 3.05/1.62 tl_list_a: list_list_a > list_list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Olist_Otl_001tf__a,type,
% 3.05/1.62 tl_a: list_a > list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Olist__ex1_001t__List__Olist_Itf__a_J,type,
% 3.05/1.62 list_ex1_list_a: ( list_a > $o ) > list_list_a > $o ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Olist__ex1_001tf__a,type,
% 3.05/1.62 list_ex1_a: ( a > $o ) > list_a > $o ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Olistrelp_001t__List__Olist_Itf__a_J_001t__List__Olist_Itf__a_J,type,
% 3.05/1.62 listre1221556159list_a: ( list_a > list_a > $o ) > list_list_a > list_list_a > $o ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Olistrelp_001t__List__Olist_Itf__a_J_001tf__a,type,
% 3.05/1.62 listrelp_list_a_a: ( list_a > a > $o ) > list_list_a > list_a > $o ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Olistrelp_001tf__a_001t__List__Olist_Itf__a_J,type,
% 3.05/1.62 listrelp_a_list_a: ( a > list_a > $o ) > list_a > list_list_a > $o ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Olistrelp_001tf__a_001tf__a,type,
% 3.05/1.62 listrelp_a_a: ( a > a > $o ) > list_a > list_a > $o ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Omap__tailrec__rev_001t__List__Olist_Itf__a_J_001t__List__Olist_Itf__a_J,type,
% 3.05/1.62 map_ta982122357list_a: ( list_a > list_a ) > list_list_a > list_list_a > list_list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Omap__tailrec__rev_001t__List__Olist_Itf__a_J_001tf__a,type,
% 3.05/1.62 map_ta2002079599st_a_a: ( list_a > a ) > list_list_a > list_a > list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Omap__tailrec__rev_001tf__a_001t__List__Olist_Itf__a_J,type,
% 3.05/1.62 map_ta41997947list_a: ( a > list_a ) > list_a > list_list_a > list_list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Omap__tailrec__rev_001tf__a_001tf__a,type,
% 3.05/1.62 map_tailrec_rev_a_a: ( a > a ) > list_a > list_a > list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Omaps_001t__List__Olist_Itf__a_J_001t__List__Olist_Itf__a_J,type,
% 3.05/1.62 maps_list_a_list_a: ( list_a > list_list_a ) > list_list_a > list_list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Omaps_001t__List__Olist_Itf__a_J_001tf__a,type,
% 3.05/1.62 maps_list_a_a: ( list_a > list_a ) > list_list_a > list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Omaps_001tf__a_001t__List__Olist_Itf__a_J,type,
% 3.05/1.62 maps_a_list_a: ( a > list_list_a ) > list_a > list_list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Omaps_001tf__a_001tf__a,type,
% 3.05/1.62 maps_a_a: ( a > list_a ) > list_a > list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Omember_001t__List__Olist_Itf__a_J,type,
% 3.05/1.62 member_list_a: list_list_a > list_a > $o ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Omember_001tf__a,type,
% 3.05/1.62 member_a: list_a > a > $o ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Oord_Olexordp__eq_001t__List__Olist_Itf__a_J,type,
% 3.05/1.62 lexordp_eq_list_a: ( list_a > list_a > $o ) > list_list_a > list_list_a > $o ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Oord_Olexordp__eq_001tf__a,type,
% 3.05/1.62 lexordp_eq_a: ( a > a > $o ) > list_a > list_a > $o ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Oord__class_Olexordp_001t__Nat__Onat,type,
% 3.05/1.62 ord_lexordp_nat: list_nat > list_nat > $o ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Oord__class_Olexordp__eq_001t__Nat__Onat,type,
% 3.05/1.62 ord_lexordp_eq_nat: list_nat > list_nat > $o ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Oproduct__lists_001t__List__Olist_Itf__a_J,type,
% 3.05/1.62 product_lists_list_a: list_list_list_a > list_list_list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Oproduct__lists_001tf__a,type,
% 3.05/1.62 product_lists_a: list_list_a > list_list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Oremdups__adj_001tf__a,type,
% 3.05/1.62 remdups_adj_a: list_a > list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Orotate1_001t__List__Olist_Itf__a_J,type,
% 3.05/1.62 rotate1_list_a: list_list_a > list_list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Orotate1_001tf__a,type,
% 3.05/1.62 rotate1_a: list_a > list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Oshuffles_001tf__a,type,
% 3.05/1.62 shuffles_a: list_a > list_a > set_list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Osplice_001t__List__Olist_Itf__a_J,type,
% 3.05/1.62 splice_list_a: list_list_a > list_list_a > list_list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Osplice_001tf__a,type,
% 3.05/1.62 splice_a: list_a > list_a > list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Osubseqs_001t__List__Olist_Itf__a_J,type,
% 3.05/1.62 subseqs_list_a: list_list_a > list_list_list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Osubseqs_001tf__a,type,
% 3.05/1.62 subseqs_a: list_a > list_list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Osuccessively_001t__List__Olist_Itf__a_J,type,
% 3.05/1.62 successively_list_a: ( list_a > list_a > $o ) > list_list_a > $o ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_List_Osuccessively_001tf__a,type,
% 3.05/1.62 successively_a: ( a > a > $o ) > list_a > $o ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_Itf__a_J,type,
% 3.05/1.62 size_size_list_a: list_a > nat ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_Orderings_Oord__class_Oless_001t__Nat__Onat,type,
% 3.05/1.62 ord_less_nat: nat > nat > $o ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_Set_OCollect_001t__List__Olist_Itf__a_J,type,
% 3.05/1.62 collect_list_a: ( list_a > $o ) > set_list_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_Set_OCollect_001tf__a,type,
% 3.05/1.62 collect_a: ( a > $o ) > set_a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_member_001t__List__Olist_It__List__Olist_Itf__a_J_J,type,
% 3.05/1.62 member_list_list_a: list_list_a > set_list_list_a > $o ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_member_001t__List__Olist_Itf__a_J,type,
% 3.05/1.62 member_list_a2: list_a > set_list_a > $o ).
% 3.05/1.62
% 3.05/1.62 thf(sy_c_member_001tf__a,type,
% 3.05/1.62 member_a2: a > set_a > $o ).
% 3.05/1.62
% 3.05/1.62 thf(sy_v_f,type,
% 3.05/1.62 f: nat > a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_v_x,type,
% 3.05/1.62 x: a ).
% 3.05/1.62
% 3.05/1.62 thf(sy_v_xs,type,
% 3.05/1.62 xs: list_a ).
% 3.05/1.62
% 3.05/1.62 thf(fact_0_i__append__Nil,axiom,
% 3.05/1.62 ! [F: nat > list_a] :
% 3.05/1.62 ( ( listIn1753026346list_a @ nil_list_a @ F )
% 3.05/1.62 = F ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_1_i__append__Nil,axiom,
% 3.05/1.62 ! [F: nat > a] :
% 3.05/1.62 ( ( listIn1312259492pend_a @ nil_a @ F )
% 3.05/1.62 = F ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_2_list_Oinject,axiom,
% 3.05/1.62 ! [X21: list_a,X22: list_list_a,Y21: list_a,Y22: list_list_a] :
% 3.05/1.62 ( ( ( cons_list_a @ X21 @ X22 )
% 3.05/1.62 = ( cons_list_a @ Y21 @ Y22 ) )
% 3.05/1.62 = ( ( X21 = Y21 )
% 3.05/1.62 & ( X22 = Y22 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_3_list_Oinject,axiom,
% 3.05/1.62 ! [X21: a,X22: list_a,Y21: a,Y22: list_a] :
% 3.05/1.62 ( ( ( cons_a @ X21 @ X22 )
% 3.05/1.62 = ( cons_a @ Y21 @ Y22 ) )
% 3.05/1.62 = ( ( X21 = Y21 )
% 3.05/1.62 & ( X22 = Y22 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_4_list_Odistinct_I1_J,axiom,
% 3.05/1.62 ! [X21: list_a,X22: list_list_a] :
% 3.05/1.62 ( nil_list_a
% 3.05/1.62 != ( cons_list_a @ X21 @ X22 ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_5_list_Odistinct_I1_J,axiom,
% 3.05/1.62 ! [X21: a,X22: list_a] :
% 3.05/1.62 ( nil_a
% 3.05/1.62 != ( cons_a @ X21 @ X22 ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_6_list_OdiscI,axiom,
% 3.05/1.62 ! [List: list_list_a,X21: list_a,X22: list_list_a] :
% 3.05/1.62 ( ( List
% 3.05/1.62 = ( cons_list_a @ X21 @ X22 ) )
% 3.05/1.62 => ( List != nil_list_a ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_7_list_OdiscI,axiom,
% 3.05/1.62 ! [List: list_a,X21: a,X22: list_a] :
% 3.05/1.62 ( ( List
% 3.05/1.62 = ( cons_a @ X21 @ X22 ) )
% 3.05/1.62 => ( List != nil_a ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_8_list_Oexhaust,axiom,
% 3.05/1.62 ! [Y: list_list_a] :
% 3.05/1.62 ( ( Y != nil_list_a )
% 3.05/1.62 => ~ ! [X212: list_a,X222: list_list_a] :
% 3.05/1.62 ( Y
% 3.05/1.62 != ( cons_list_a @ X212 @ X222 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_9_list_Oexhaust,axiom,
% 3.05/1.62 ! [Y: list_a] :
% 3.05/1.62 ( ( Y != nil_a )
% 3.05/1.62 => ~ ! [X212: a,X222: list_a] :
% 3.05/1.62 ( Y
% 3.05/1.62 != ( cons_a @ X212 @ X222 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_10_list_Oinducts,axiom,
% 3.05/1.62 ! [P: list_list_a > $o,List: list_list_a] :
% 3.05/1.62 ( ( P @ nil_list_a )
% 3.05/1.62 => ( ! [X1: list_a,X2: list_list_a] :
% 3.05/1.62 ( ( P @ X2 )
% 3.05/1.62 => ( P @ ( cons_list_a @ X1 @ X2 ) ) )
% 3.05/1.62 => ( P @ List ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_11_list_Oinducts,axiom,
% 3.05/1.62 ! [P: list_a > $o,List: list_a] :
% 3.05/1.62 ( ( P @ nil_a )
% 3.05/1.62 => ( ! [X1: a,X2: list_a] :
% 3.05/1.62 ( ( P @ X2 )
% 3.05/1.62 => ( P @ ( cons_a @ X1 @ X2 ) ) )
% 3.05/1.62 => ( P @ List ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_12_neq__Nil__conv,axiom,
% 3.05/1.62 ! [Xs: list_list_a] :
% 3.05/1.62 ( ( Xs != nil_list_a )
% 3.05/1.62 = ( ? [Y2: list_a,Ys: list_list_a] :
% 3.05/1.62 ( Xs
% 3.05/1.62 = ( cons_list_a @ Y2 @ Ys ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_13_neq__Nil__conv,axiom,
% 3.05/1.62 ! [Xs: list_a] :
% 3.05/1.62 ( ( Xs != nil_a )
% 3.05/1.62 = ( ? [Y2: a,Ys: list_a] :
% 3.05/1.62 ( Xs
% 3.05/1.62 = ( cons_a @ Y2 @ Ys ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_14_list__induct2_H,axiom,
% 3.05/1.62 ! [P: list_a > list_list_a > $o,Xs: list_a,Ys2: list_list_a] :
% 3.05/1.62 ( ( P @ nil_a @ nil_list_a )
% 3.05/1.62 => ( ! [X: a,Xs2: list_a] : ( P @ ( cons_a @ X @ Xs2 ) @ nil_list_a )
% 3.05/1.62 => ( ! [Y3: list_a,Ys3: list_list_a] : ( P @ nil_a @ ( cons_list_a @ Y3 @ Ys3 ) )
% 3.05/1.62 => ( ! [X: a,Xs2: list_a,Y3: list_a,Ys3: list_list_a] :
% 3.05/1.62 ( ( P @ Xs2 @ Ys3 )
% 3.05/1.62 => ( P @ ( cons_a @ X @ Xs2 ) @ ( cons_list_a @ Y3 @ Ys3 ) ) )
% 3.05/1.62 => ( P @ Xs @ Ys2 ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_15_list__induct2_H,axiom,
% 3.05/1.62 ! [P: list_list_a > list_a > $o,Xs: list_list_a,Ys2: list_a] :
% 3.05/1.62 ( ( P @ nil_list_a @ nil_a )
% 3.05/1.62 => ( ! [X: list_a,Xs2: list_list_a] : ( P @ ( cons_list_a @ X @ Xs2 ) @ nil_a )
% 3.05/1.62 => ( ! [Y3: a,Ys3: list_a] : ( P @ nil_list_a @ ( cons_a @ Y3 @ Ys3 ) )
% 3.05/1.62 => ( ! [X: list_a,Xs2: list_list_a,Y3: a,Ys3: list_a] :
% 3.05/1.62 ( ( P @ Xs2 @ Ys3 )
% 3.05/1.62 => ( P @ ( cons_list_a @ X @ Xs2 ) @ ( cons_a @ Y3 @ Ys3 ) ) )
% 3.05/1.62 => ( P @ Xs @ Ys2 ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_16_list__induct2_H,axiom,
% 3.05/1.62 ! [P: list_list_a > list_list_a > $o,Xs: list_list_a,Ys2: list_list_a] :
% 3.05/1.62 ( ( P @ nil_list_a @ nil_list_a )
% 3.05/1.62 => ( ! [X: list_a,Xs2: list_list_a] : ( P @ ( cons_list_a @ X @ Xs2 ) @ nil_list_a )
% 3.05/1.62 => ( ! [Y3: list_a,Ys3: list_list_a] : ( P @ nil_list_a @ ( cons_list_a @ Y3 @ Ys3 ) )
% 3.05/1.62 => ( ! [X: list_a,Xs2: list_list_a,Y3: list_a,Ys3: list_list_a] :
% 3.05/1.62 ( ( P @ Xs2 @ Ys3 )
% 3.05/1.62 => ( P @ ( cons_list_a @ X @ Xs2 ) @ ( cons_list_a @ Y3 @ Ys3 ) ) )
% 3.05/1.62 => ( P @ Xs @ Ys2 ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_17_list__induct2_H,axiom,
% 3.05/1.62 ! [P: list_a > list_a > $o,Xs: list_a,Ys2: list_a] :
% 3.05/1.62 ( ( P @ nil_a @ nil_a )
% 3.05/1.62 => ( ! [X: a,Xs2: list_a] : ( P @ ( cons_a @ X @ Xs2 ) @ nil_a )
% 3.05/1.62 => ( ! [Y3: a,Ys3: list_a] : ( P @ nil_a @ ( cons_a @ Y3 @ Ys3 ) )
% 3.05/1.62 => ( ! [X: a,Xs2: list_a,Y3: a,Ys3: list_a] :
% 3.05/1.62 ( ( P @ Xs2 @ Ys3 )
% 3.05/1.62 => ( P @ ( cons_a @ X @ Xs2 ) @ ( cons_a @ Y3 @ Ys3 ) ) )
% 3.05/1.62 => ( P @ Xs @ Ys2 ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_18_splice_Oinduct,axiom,
% 3.05/1.62 ! [P: list_list_a > list_list_a > $o,A0: list_list_a,A1: list_list_a] :
% 3.05/1.62 ( ! [X_1: list_list_a] : ( P @ nil_list_a @ X_1 )
% 3.05/1.62 => ( ! [X: list_a,Xs2: list_list_a,Ys3: list_list_a] :
% 3.05/1.62 ( ( P @ Ys3 @ Xs2 )
% 3.05/1.62 => ( P @ ( cons_list_a @ X @ Xs2 ) @ Ys3 ) )
% 3.05/1.62 => ( P @ A0 @ A1 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_19_splice_Oinduct,axiom,
% 3.05/1.62 ! [P: list_a > list_a > $o,A0: list_a,A1: list_a] :
% 3.05/1.62 ( ! [X_1: list_a] : ( P @ nil_a @ X_1 )
% 3.05/1.62 => ( ! [X: a,Xs2: list_a,Ys3: list_a] :
% 3.05/1.62 ( ( P @ Ys3 @ Xs2 )
% 3.05/1.62 => ( P @ ( cons_a @ X @ Xs2 ) @ Ys3 ) )
% 3.05/1.62 => ( P @ A0 @ A1 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_20_induct__list012,axiom,
% 3.05/1.62 ! [P: list_list_a > $o,Xs: list_list_a] :
% 3.05/1.62 ( ( P @ nil_list_a )
% 3.05/1.62 => ( ! [X: list_a] : ( P @ ( cons_list_a @ X @ nil_list_a ) )
% 3.05/1.62 => ( ! [X: list_a,Y3: list_a,Zs: list_list_a] :
% 3.05/1.62 ( ( P @ Zs )
% 3.05/1.62 => ( ( P @ ( cons_list_a @ Y3 @ Zs ) )
% 3.05/1.62 => ( P @ ( cons_list_a @ X @ ( cons_list_a @ Y3 @ Zs ) ) ) ) )
% 3.05/1.62 => ( P @ Xs ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_21_induct__list012,axiom,
% 3.05/1.62 ! [P: list_a > $o,Xs: list_a] :
% 3.05/1.62 ( ( P @ nil_a )
% 3.05/1.62 => ( ! [X: a] : ( P @ ( cons_a @ X @ nil_a ) )
% 3.05/1.62 => ( ! [X: a,Y3: a,Zs: list_a] :
% 3.05/1.62 ( ( P @ Zs )
% 3.05/1.62 => ( ( P @ ( cons_a @ Y3 @ Zs ) )
% 3.05/1.62 => ( P @ ( cons_a @ X @ ( cons_a @ Y3 @ Zs ) ) ) ) )
% 3.05/1.62 => ( P @ Xs ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_22_shuffles_Oinduct,axiom,
% 3.05/1.62 ! [P: list_list_a > list_list_a > $o,A0: list_list_a,A1: list_list_a] :
% 3.05/1.62 ( ! [X_1: list_list_a] : ( P @ nil_list_a @ X_1 )
% 3.05/1.62 => ( ! [Xs2: list_list_a] : ( P @ Xs2 @ nil_list_a )
% 3.05/1.62 => ( ! [X: list_a,Xs2: list_list_a,Y3: list_a,Ys3: list_list_a] :
% 3.05/1.62 ( ( P @ Xs2 @ ( cons_list_a @ Y3 @ Ys3 ) )
% 3.05/1.62 => ( ( P @ ( cons_list_a @ X @ Xs2 ) @ Ys3 )
% 3.05/1.62 => ( P @ ( cons_list_a @ X @ Xs2 ) @ ( cons_list_a @ Y3 @ Ys3 ) ) ) )
% 3.05/1.62 => ( P @ A0 @ A1 ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_23_shuffles_Oinduct,axiom,
% 3.05/1.62 ! [P: list_a > list_a > $o,A0: list_a,A1: list_a] :
% 3.05/1.62 ( ! [X_1: list_a] : ( P @ nil_a @ X_1 )
% 3.05/1.62 => ( ! [Xs2: list_a] : ( P @ Xs2 @ nil_a )
% 3.05/1.62 => ( ! [X: a,Xs2: list_a,Y3: a,Ys3: list_a] :
% 3.05/1.62 ( ( P @ Xs2 @ ( cons_a @ Y3 @ Ys3 ) )
% 3.05/1.62 => ( ( P @ ( cons_a @ X @ Xs2 ) @ Ys3 )
% 3.05/1.62 => ( P @ ( cons_a @ X @ Xs2 ) @ ( cons_a @ Y3 @ Ys3 ) ) ) )
% 3.05/1.62 => ( P @ A0 @ A1 ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_24_not__Cons__self2,axiom,
% 3.05/1.62 ! [X3: list_a,Xs: list_list_a] :
% 3.05/1.62 ( ( cons_list_a @ X3 @ Xs )
% 3.05/1.62 != Xs ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_25_not__Cons__self2,axiom,
% 3.05/1.62 ! [X3: a,Xs: list_a] :
% 3.05/1.62 ( ( cons_a @ X3 @ Xs )
% 3.05/1.62 != Xs ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_26_map__tailrec__rev_Oinduct,axiom,
% 3.05/1.62 ! [P: ( list_a > a ) > list_list_a > list_a > $o,A0: list_a > a,A1: list_list_a,A2: list_a] :
% 3.05/1.62 ( ! [F2: list_a > a,X_1: list_a] : ( P @ F2 @ nil_list_a @ X_1 )
% 3.05/1.62 => ( ! [F2: list_a > a,A: list_a,As: list_list_a,Bs: list_a] :
% 3.05/1.62 ( ( P @ F2 @ As @ ( cons_a @ ( F2 @ A ) @ Bs ) )
% 3.05/1.62 => ( P @ F2 @ ( cons_list_a @ A @ As ) @ Bs ) )
% 3.05/1.62 => ( P @ A0 @ A1 @ A2 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_27_map__tailrec__rev_Oinduct,axiom,
% 3.05/1.62 ! [P: ( a > list_a ) > list_a > list_list_a > $o,A0: a > list_a,A1: list_a,A2: list_list_a] :
% 3.05/1.62 ( ! [F2: a > list_a,X_1: list_list_a] : ( P @ F2 @ nil_a @ X_1 )
% 3.05/1.62 => ( ! [F2: a > list_a,A: a,As: list_a,Bs: list_list_a] :
% 3.05/1.62 ( ( P @ F2 @ As @ ( cons_list_a @ ( F2 @ A ) @ Bs ) )
% 3.05/1.62 => ( P @ F2 @ ( cons_a @ A @ As ) @ Bs ) )
% 3.05/1.62 => ( P @ A0 @ A1 @ A2 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_28_map__tailrec__rev_Oinduct,axiom,
% 3.05/1.62 ! [P: ( list_a > list_a ) > list_list_a > list_list_a > $o,A0: list_a > list_a,A1: list_list_a,A2: list_list_a] :
% 3.05/1.62 ( ! [F2: list_a > list_a,X_1: list_list_a] : ( P @ F2 @ nil_list_a @ X_1 )
% 3.05/1.62 => ( ! [F2: list_a > list_a,A: list_a,As: list_list_a,Bs: list_list_a] :
% 3.05/1.62 ( ( P @ F2 @ As @ ( cons_list_a @ ( F2 @ A ) @ Bs ) )
% 3.05/1.62 => ( P @ F2 @ ( cons_list_a @ A @ As ) @ Bs ) )
% 3.05/1.62 => ( P @ A0 @ A1 @ A2 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_29_map__tailrec__rev_Oinduct,axiom,
% 3.05/1.62 ! [P: ( a > a ) > list_a > list_a > $o,A0: a > a,A1: list_a,A2: list_a] :
% 3.05/1.62 ( ! [F2: a > a,X_1: list_a] : ( P @ F2 @ nil_a @ X_1 )
% 3.05/1.62 => ( ! [F2: a > a,A: a,As: list_a,Bs: list_a] :
% 3.05/1.62 ( ( P @ F2 @ As @ ( cons_a @ ( F2 @ A ) @ Bs ) )
% 3.05/1.62 => ( P @ F2 @ ( cons_a @ A @ As ) @ Bs ) )
% 3.05/1.62 => ( P @ A0 @ A1 @ A2 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_30_list__nonempty__induct,axiom,
% 3.05/1.62 ! [Xs: list_list_a,P: list_list_a > $o] :
% 3.05/1.62 ( ( Xs != nil_list_a )
% 3.05/1.62 => ( ! [X: list_a] : ( P @ ( cons_list_a @ X @ nil_list_a ) )
% 3.05/1.62 => ( ! [X: list_a,Xs2: list_list_a] :
% 3.05/1.62 ( ( Xs2 != nil_list_a )
% 3.05/1.62 => ( ( P @ Xs2 )
% 3.05/1.62 => ( P @ ( cons_list_a @ X @ Xs2 ) ) ) )
% 3.05/1.62 => ( P @ Xs ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_31_list__nonempty__induct,axiom,
% 3.05/1.62 ! [Xs: list_a,P: list_a > $o] :
% 3.05/1.62 ( ( Xs != nil_a )
% 3.05/1.62 => ( ! [X: a] : ( P @ ( cons_a @ X @ nil_a ) )
% 3.05/1.62 => ( ! [X: a,Xs2: list_a] :
% 3.05/1.62 ( ( Xs2 != nil_a )
% 3.05/1.62 => ( ( P @ Xs2 )
% 3.05/1.62 => ( P @ ( cons_a @ X @ Xs2 ) ) ) )
% 3.05/1.62 => ( P @ Xs ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_32_successively_Oinduct,axiom,
% 3.05/1.62 ! [P: ( list_a > list_a > $o ) > list_list_a > $o,A0: list_a > list_a > $o,A1: list_list_a] :
% 3.05/1.62 ( ! [P2: list_a > list_a > $o] : ( P @ P2 @ nil_list_a )
% 3.05/1.62 => ( ! [P2: list_a > list_a > $o,X: list_a] : ( P @ P2 @ ( cons_list_a @ X @ nil_list_a ) )
% 3.05/1.62 => ( ! [P2: list_a > list_a > $o,X: list_a,Y3: list_a,Xs2: list_list_a] :
% 3.05/1.62 ( ( P @ P2 @ ( cons_list_a @ Y3 @ Xs2 ) )
% 3.05/1.62 => ( P @ P2 @ ( cons_list_a @ X @ ( cons_list_a @ Y3 @ Xs2 ) ) ) )
% 3.05/1.62 => ( P @ A0 @ A1 ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_33_successively_Oinduct,axiom,
% 3.05/1.62 ! [P: ( a > a > $o ) > list_a > $o,A0: a > a > $o,A1: list_a] :
% 3.05/1.62 ( ! [P2: a > a > $o] : ( P @ P2 @ nil_a )
% 3.05/1.62 => ( ! [P2: a > a > $o,X: a] : ( P @ P2 @ ( cons_a @ X @ nil_a ) )
% 3.05/1.62 => ( ! [P2: a > a > $o,X: a,Y3: a,Xs2: list_a] :
% 3.05/1.62 ( ( P @ P2 @ ( cons_a @ Y3 @ Xs2 ) )
% 3.05/1.62 => ( P @ P2 @ ( cons_a @ X @ ( cons_a @ Y3 @ Xs2 ) ) ) )
% 3.05/1.62 => ( P @ A0 @ A1 ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_34_remdups__adj_Oinduct,axiom,
% 3.05/1.62 ! [P: list_list_a > $o,A0: list_list_a] :
% 3.05/1.62 ( ( P @ nil_list_a )
% 3.05/1.62 => ( ! [X: list_a] : ( P @ ( cons_list_a @ X @ nil_list_a ) )
% 3.05/1.62 => ( ! [X: list_a,Y3: list_a,Xs2: list_list_a] :
% 3.05/1.62 ( ( ( X = Y3 )
% 3.05/1.62 => ( P @ ( cons_list_a @ X @ Xs2 ) ) )
% 3.05/1.62 => ( ( ( X != Y3 )
% 3.05/1.62 => ( P @ ( cons_list_a @ Y3 @ Xs2 ) ) )
% 3.05/1.62 => ( P @ ( cons_list_a @ X @ ( cons_list_a @ Y3 @ Xs2 ) ) ) ) )
% 3.05/1.62 => ( P @ A0 ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_35_remdups__adj_Oinduct,axiom,
% 3.05/1.62 ! [P: list_a > $o,A0: list_a] :
% 3.05/1.62 ( ( P @ nil_a )
% 3.05/1.62 => ( ! [X: a] : ( P @ ( cons_a @ X @ nil_a ) )
% 3.05/1.62 => ( ! [X: a,Y3: a,Xs2: list_a] :
% 3.05/1.62 ( ( ( X = Y3 )
% 3.05/1.62 => ( P @ ( cons_a @ X @ Xs2 ) ) )
% 3.05/1.62 => ( ( ( X != Y3 )
% 3.05/1.62 => ( P @ ( cons_a @ Y3 @ Xs2 ) ) )
% 3.05/1.62 => ( P @ ( cons_a @ X @ ( cons_a @ Y3 @ Xs2 ) ) ) ) )
% 3.05/1.62 => ( P @ A0 ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_36_sorted__wrt_Oinduct,axiom,
% 3.05/1.62 ! [P: ( list_a > list_a > $o ) > list_list_a > $o,A0: list_a > list_a > $o,A1: list_list_a] :
% 3.05/1.62 ( ! [P2: list_a > list_a > $o] : ( P @ P2 @ nil_list_a )
% 3.05/1.62 => ( ! [P2: list_a > list_a > $o,X: list_a,Ys3: list_list_a] :
% 3.05/1.62 ( ( P @ P2 @ Ys3 )
% 3.05/1.62 => ( P @ P2 @ ( cons_list_a @ X @ Ys3 ) ) )
% 3.05/1.62 => ( P @ A0 @ A1 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_37_sorted__wrt_Oinduct,axiom,
% 3.05/1.62 ! [P: ( a > a > $o ) > list_a > $o,A0: a > a > $o,A1: list_a] :
% 3.05/1.62 ( ! [P2: a > a > $o] : ( P @ P2 @ nil_a )
% 3.05/1.62 => ( ! [P2: a > a > $o,X: a,Ys3: list_a] :
% 3.05/1.62 ( ( P @ P2 @ Ys3 )
% 3.05/1.62 => ( P @ P2 @ ( cons_a @ X @ Ys3 ) ) )
% 3.05/1.62 => ( P @ A0 @ A1 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_38_remdups__adj_Ocases,axiom,
% 3.05/1.62 ! [X3: list_list_a] :
% 3.05/1.62 ( ( X3 != nil_list_a )
% 3.05/1.62 => ( ! [X: list_a] :
% 3.05/1.62 ( X3
% 3.05/1.62 != ( cons_list_a @ X @ nil_list_a ) )
% 3.05/1.62 => ~ ! [X: list_a,Y3: list_a,Xs2: list_list_a] :
% 3.05/1.62 ( X3
% 3.05/1.62 != ( cons_list_a @ X @ ( cons_list_a @ Y3 @ Xs2 ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_39_remdups__adj_Ocases,axiom,
% 3.05/1.62 ! [X3: list_a] :
% 3.05/1.62 ( ( X3 != nil_a )
% 3.05/1.62 => ( ! [X: a] :
% 3.05/1.62 ( X3
% 3.05/1.62 != ( cons_a @ X @ nil_a ) )
% 3.05/1.62 => ~ ! [X: a,Y3: a,Xs2: list_a] :
% 3.05/1.62 ( X3
% 3.05/1.62 != ( cons_a @ X @ ( cons_a @ Y3 @ Xs2 ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_40_transpose_Ocases,axiom,
% 3.05/1.62 ! [X3: list_list_list_a] :
% 3.05/1.62 ( ( X3 != nil_list_list_a )
% 3.05/1.62 => ( ! [Xss: list_list_list_a] :
% 3.05/1.62 ( X3
% 3.05/1.62 != ( cons_list_list_a @ nil_list_a @ Xss ) )
% 3.05/1.62 => ~ ! [X: list_a,Xs2: list_list_a,Xss: list_list_list_a] :
% 3.05/1.62 ( X3
% 3.05/1.62 != ( cons_list_list_a @ ( cons_list_a @ X @ Xs2 ) @ Xss ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_41_transpose_Ocases,axiom,
% 3.05/1.62 ! [X3: list_list_a] :
% 3.05/1.62 ( ( X3 != nil_list_a )
% 3.05/1.62 => ( ! [Xss: list_list_a] :
% 3.05/1.62 ( X3
% 3.05/1.62 != ( cons_list_a @ nil_a @ Xss ) )
% 3.05/1.62 => ~ ! [X: a,Xs2: list_a,Xss: list_list_a] :
% 3.05/1.62 ( X3
% 3.05/1.62 != ( cons_list_a @ ( cons_a @ X @ Xs2 ) @ Xss ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_42_insert__Nil,axiom,
% 3.05/1.62 ! [X3: list_a] :
% 3.05/1.62 ( ( insert_list_a @ X3 @ nil_list_a )
% 3.05/1.62 = ( cons_list_a @ X3 @ nil_list_a ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_43_insert__Nil,axiom,
% 3.05/1.62 ! [X3: a] :
% 3.05/1.62 ( ( insert_a @ X3 @ nil_a )
% 3.05/1.62 = ( cons_a @ X3 @ nil_a ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_44_list__ex1__simps_I1_J,axiom,
% 3.05/1.62 ! [P: list_a > $o] :
% 3.05/1.62 ~ ( list_ex1_list_a @ P @ nil_list_a ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_45_list__ex1__simps_I1_J,axiom,
% 3.05/1.62 ! [P: a > $o] :
% 3.05/1.62 ~ ( list_ex1_a @ P @ nil_a ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_46_map__tailrec__rev_Oelims,axiom,
% 3.05/1.62 ! [X3: a > list_a,Xa: list_a,Xb: list_list_a,Y: list_list_a] :
% 3.05/1.62 ( ( ( map_ta41997947list_a @ X3 @ Xa @ Xb )
% 3.05/1.62 = Y )
% 3.05/1.62 => ( ( ( Xa = nil_a )
% 3.05/1.62 => ( Y != Xb ) )
% 3.05/1.62 => ~ ! [A: a,As: list_a] :
% 3.05/1.62 ( ( Xa
% 3.05/1.62 = ( cons_a @ A @ As ) )
% 3.05/1.62 => ( Y
% 3.05/1.62 != ( map_ta41997947list_a @ X3 @ As @ ( cons_list_a @ ( X3 @ A ) @ Xb ) ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_47_map__tailrec__rev_Oelims,axiom,
% 3.05/1.62 ! [X3: list_a > a,Xa: list_list_a,Xb: list_a,Y: list_a] :
% 3.05/1.62 ( ( ( map_ta2002079599st_a_a @ X3 @ Xa @ Xb )
% 3.05/1.62 = Y )
% 3.05/1.62 => ( ( ( Xa = nil_list_a )
% 3.05/1.62 => ( Y != Xb ) )
% 3.05/1.62 => ~ ! [A: list_a,As: list_list_a] :
% 3.05/1.62 ( ( Xa
% 3.05/1.62 = ( cons_list_a @ A @ As ) )
% 3.05/1.62 => ( Y
% 3.05/1.62 != ( map_ta2002079599st_a_a @ X3 @ As @ ( cons_a @ ( X3 @ A ) @ Xb ) ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_48_map__tailrec__rev_Oelims,axiom,
% 3.05/1.62 ! [X3: list_a > list_a,Xa: list_list_a,Xb: list_list_a,Y: list_list_a] :
% 3.05/1.62 ( ( ( map_ta982122357list_a @ X3 @ Xa @ Xb )
% 3.05/1.62 = Y )
% 3.05/1.62 => ( ( ( Xa = nil_list_a )
% 3.05/1.62 => ( Y != Xb ) )
% 3.05/1.62 => ~ ! [A: list_a,As: list_list_a] :
% 3.05/1.62 ( ( Xa
% 3.05/1.62 = ( cons_list_a @ A @ As ) )
% 3.05/1.62 => ( Y
% 3.05/1.62 != ( map_ta982122357list_a @ X3 @ As @ ( cons_list_a @ ( X3 @ A ) @ Xb ) ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_49_map__tailrec__rev_Oelims,axiom,
% 3.05/1.62 ! [X3: a > a,Xa: list_a,Xb: list_a,Y: list_a] :
% 3.05/1.62 ( ( ( map_tailrec_rev_a_a @ X3 @ Xa @ Xb )
% 3.05/1.62 = Y )
% 3.05/1.62 => ( ( ( Xa = nil_a )
% 3.05/1.62 => ( Y != Xb ) )
% 3.05/1.62 => ~ ! [A: a,As: list_a] :
% 3.05/1.62 ( ( Xa
% 3.05/1.62 = ( cons_a @ A @ As ) )
% 3.05/1.62 => ( Y
% 3.05/1.62 != ( map_tailrec_rev_a_a @ X3 @ As @ ( cons_a @ ( X3 @ A ) @ Xb ) ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_50_ord_Olexordp__eq__simps_I3_J,axiom,
% 3.05/1.62 ! [Less: list_a > list_a > $o,X3: list_a,Xs: list_list_a] :
% 3.05/1.62 ~ ( lexordp_eq_list_a @ Less @ ( cons_list_a @ X3 @ Xs ) @ nil_list_a ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_51_ord_Olexordp__eq__simps_I3_J,axiom,
% 3.05/1.62 ! [Less: a > a > $o,X3: a,Xs: list_a] :
% 3.05/1.62 ~ ( lexordp_eq_a @ Less @ ( cons_a @ X3 @ Xs ) @ nil_a ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_52_bind__simps_I1_J,axiom,
% 3.05/1.62 ! [F: a > list_list_a] :
% 3.05/1.62 ( ( bind_a_list_a @ nil_a @ F )
% 3.05/1.62 = nil_list_a ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_53_bind__simps_I1_J,axiom,
% 3.05/1.62 ! [F: list_a > list_a] :
% 3.05/1.62 ( ( bind_list_a_a @ nil_list_a @ F )
% 3.05/1.62 = nil_a ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_54_bind__simps_I1_J,axiom,
% 3.05/1.62 ! [F: list_a > list_list_a] :
% 3.05/1.62 ( ( bind_list_a_list_a @ nil_list_a @ F )
% 3.05/1.62 = nil_list_a ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_55_bind__simps_I1_J,axiom,
% 3.05/1.62 ! [F: a > list_a] :
% 3.05/1.62 ( ( bind_a_a @ nil_a @ F )
% 3.05/1.62 = nil_a ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_56_listrelp_Oinducts,axiom,
% 3.05/1.62 ! [R: a > list_a > $o,X12: list_a,X23: list_list_a,P: list_a > list_list_a > $o] :
% 3.05/1.62 ( ( listrelp_a_list_a @ R @ X12 @ X23 )
% 3.05/1.62 => ( ( P @ nil_a @ nil_list_a )
% 3.05/1.62 => ( ! [X: a,Y3: list_a,Xs2: list_a,Ys3: list_list_a] :
% 3.05/1.62 ( ( R @ X @ Y3 )
% 3.05/1.62 => ( ( listrelp_a_list_a @ R @ Xs2 @ Ys3 )
% 3.05/1.62 => ( ( P @ Xs2 @ Ys3 )
% 3.05/1.62 => ( P @ ( cons_a @ X @ Xs2 ) @ ( cons_list_a @ Y3 @ Ys3 ) ) ) ) )
% 3.05/1.62 => ( P @ X12 @ X23 ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_57_listrelp_Oinducts,axiom,
% 3.05/1.62 ! [R: list_a > a > $o,X12: list_list_a,X23: list_a,P: list_list_a > list_a > $o] :
% 3.05/1.62 ( ( listrelp_list_a_a @ R @ X12 @ X23 )
% 3.05/1.62 => ( ( P @ nil_list_a @ nil_a )
% 3.05/1.62 => ( ! [X: list_a,Y3: a,Xs2: list_list_a,Ys3: list_a] :
% 3.05/1.62 ( ( R @ X @ Y3 )
% 3.05/1.62 => ( ( listrelp_list_a_a @ R @ Xs2 @ Ys3 )
% 3.05/1.62 => ( ( P @ Xs2 @ Ys3 )
% 3.05/1.62 => ( P @ ( cons_list_a @ X @ Xs2 ) @ ( cons_a @ Y3 @ Ys3 ) ) ) ) )
% 3.05/1.62 => ( P @ X12 @ X23 ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_58_listrelp_Oinducts,axiom,
% 3.05/1.62 ! [R: list_a > list_a > $o,X12: list_list_a,X23: list_list_a,P: list_list_a > list_list_a > $o] :
% 3.05/1.62 ( ( listre1221556159list_a @ R @ X12 @ X23 )
% 3.05/1.62 => ( ( P @ nil_list_a @ nil_list_a )
% 3.05/1.62 => ( ! [X: list_a,Y3: list_a,Xs2: list_list_a,Ys3: list_list_a] :
% 3.05/1.62 ( ( R @ X @ Y3 )
% 3.05/1.62 => ( ( listre1221556159list_a @ R @ Xs2 @ Ys3 )
% 3.05/1.62 => ( ( P @ Xs2 @ Ys3 )
% 3.05/1.62 => ( P @ ( cons_list_a @ X @ Xs2 ) @ ( cons_list_a @ Y3 @ Ys3 ) ) ) ) )
% 3.05/1.62 => ( P @ X12 @ X23 ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_59_listrelp_Oinducts,axiom,
% 3.05/1.62 ! [R: a > a > $o,X12: list_a,X23: list_a,P: list_a > list_a > $o] :
% 3.05/1.62 ( ( listrelp_a_a @ R @ X12 @ X23 )
% 3.05/1.62 => ( ( P @ nil_a @ nil_a )
% 3.05/1.62 => ( ! [X: a,Y3: a,Xs2: list_a,Ys3: list_a] :
% 3.05/1.62 ( ( R @ X @ Y3 )
% 3.05/1.62 => ( ( listrelp_a_a @ R @ Xs2 @ Ys3 )
% 3.05/1.62 => ( ( P @ Xs2 @ Ys3 )
% 3.05/1.62 => ( P @ ( cons_a @ X @ Xs2 ) @ ( cons_a @ Y3 @ Ys3 ) ) ) ) )
% 3.05/1.62 => ( P @ X12 @ X23 ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_60_listrelp_Osimps,axiom,
% 3.05/1.62 ( listrelp_a_list_a
% 3.05/1.62 = ( ^ [R2: a > list_a > $o,A12: list_a,A22: list_list_a] :
% 3.05/1.62 ( ( ( A12 = nil_a )
% 3.05/1.62 & ( A22 = nil_list_a ) )
% 3.05/1.62 | ? [X4: a,Y2: list_a,Xs3: list_a,Ys: list_list_a] :
% 3.05/1.62 ( ( A12
% 3.05/1.62 = ( cons_a @ X4 @ Xs3 ) )
% 3.05/1.62 & ( A22
% 3.05/1.62 = ( cons_list_a @ Y2 @ Ys ) )
% 3.05/1.62 & ( R2 @ X4 @ Y2 )
% 3.05/1.62 & ( listrelp_a_list_a @ R2 @ Xs3 @ Ys ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_61_listrelp_Osimps,axiom,
% 3.05/1.62 ( listrelp_list_a_a
% 3.05/1.62 = ( ^ [R2: list_a > a > $o,A12: list_list_a,A22: list_a] :
% 3.05/1.62 ( ( ( A12 = nil_list_a )
% 3.05/1.62 & ( A22 = nil_a ) )
% 3.05/1.62 | ? [X4: list_a,Y2: a,Xs3: list_list_a,Ys: list_a] :
% 3.05/1.62 ( ( A12
% 3.05/1.62 = ( cons_list_a @ X4 @ Xs3 ) )
% 3.05/1.62 & ( A22
% 3.05/1.62 = ( cons_a @ Y2 @ Ys ) )
% 3.05/1.62 & ( R2 @ X4 @ Y2 )
% 3.05/1.62 & ( listrelp_list_a_a @ R2 @ Xs3 @ Ys ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_62_listrelp_Osimps,axiom,
% 3.05/1.62 ( listre1221556159list_a
% 3.05/1.62 = ( ^ [R2: list_a > list_a > $o,A12: list_list_a,A22: list_list_a] :
% 3.05/1.62 ( ( ( A12 = nil_list_a )
% 3.05/1.62 & ( A22 = nil_list_a ) )
% 3.05/1.62 | ? [X4: list_a,Y2: list_a,Xs3: list_list_a,Ys: list_list_a] :
% 3.05/1.62 ( ( A12
% 3.05/1.62 = ( cons_list_a @ X4 @ Xs3 ) )
% 3.05/1.62 & ( A22
% 3.05/1.62 = ( cons_list_a @ Y2 @ Ys ) )
% 3.05/1.62 & ( R2 @ X4 @ Y2 )
% 3.05/1.62 & ( listre1221556159list_a @ R2 @ Xs3 @ Ys ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_63_listrelp_Osimps,axiom,
% 3.05/1.62 ( listrelp_a_a
% 3.05/1.62 = ( ^ [R2: a > a > $o,A12: list_a,A22: list_a] :
% 3.05/1.62 ( ( ( A12 = nil_a )
% 3.05/1.62 & ( A22 = nil_a ) )
% 3.05/1.62 | ? [X4: a,Y2: a,Xs3: list_a,Ys: list_a] :
% 3.05/1.62 ( ( A12
% 3.05/1.62 = ( cons_a @ X4 @ Xs3 ) )
% 3.05/1.62 & ( A22
% 3.05/1.62 = ( cons_a @ Y2 @ Ys ) )
% 3.05/1.62 & ( R2 @ X4 @ Y2 )
% 3.05/1.62 & ( listrelp_a_a @ R2 @ Xs3 @ Ys ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_64_listrelp_Ocases,axiom,
% 3.05/1.62 ! [R: a > list_a > $o,A1: list_a,A2: list_list_a] :
% 3.05/1.62 ( ( listrelp_a_list_a @ R @ A1 @ A2 )
% 3.05/1.62 => ( ( ( A1 = nil_a )
% 3.05/1.62 => ( A2 != nil_list_a ) )
% 3.05/1.62 => ~ ! [X: a,Y3: list_a,Xs2: list_a] :
% 3.05/1.62 ( ( A1
% 3.05/1.62 = ( cons_a @ X @ Xs2 ) )
% 3.05/1.62 => ! [Ys3: list_list_a] :
% 3.05/1.62 ( ( A2
% 3.05/1.62 = ( cons_list_a @ Y3 @ Ys3 ) )
% 3.05/1.62 => ( ( R @ X @ Y3 )
% 3.05/1.62 => ~ ( listrelp_a_list_a @ R @ Xs2 @ Ys3 ) ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_65_listrelp_Ocases,axiom,
% 3.05/1.62 ! [R: list_a > a > $o,A1: list_list_a,A2: list_a] :
% 3.05/1.62 ( ( listrelp_list_a_a @ R @ A1 @ A2 )
% 3.05/1.62 => ( ( ( A1 = nil_list_a )
% 3.05/1.62 => ( A2 != nil_a ) )
% 3.05/1.62 => ~ ! [X: list_a,Y3: a,Xs2: list_list_a] :
% 3.05/1.62 ( ( A1
% 3.05/1.62 = ( cons_list_a @ X @ Xs2 ) )
% 3.05/1.62 => ! [Ys3: list_a] :
% 3.05/1.62 ( ( A2
% 3.05/1.62 = ( cons_a @ Y3 @ Ys3 ) )
% 3.05/1.62 => ( ( R @ X @ Y3 )
% 3.05/1.62 => ~ ( listrelp_list_a_a @ R @ Xs2 @ Ys3 ) ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_66_listrelp_Ocases,axiom,
% 3.05/1.62 ! [R: list_a > list_a > $o,A1: list_list_a,A2: list_list_a] :
% 3.05/1.62 ( ( listre1221556159list_a @ R @ A1 @ A2 )
% 3.05/1.62 => ( ( ( A1 = nil_list_a )
% 3.05/1.62 => ( A2 != nil_list_a ) )
% 3.05/1.62 => ~ ! [X: list_a,Y3: list_a,Xs2: list_list_a] :
% 3.05/1.62 ( ( A1
% 3.05/1.62 = ( cons_list_a @ X @ Xs2 ) )
% 3.05/1.62 => ! [Ys3: list_list_a] :
% 3.05/1.62 ( ( A2
% 3.05/1.62 = ( cons_list_a @ Y3 @ Ys3 ) )
% 3.05/1.62 => ( ( R @ X @ Y3 )
% 3.05/1.62 => ~ ( listre1221556159list_a @ R @ Xs2 @ Ys3 ) ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_67_listrelp_Ocases,axiom,
% 3.05/1.62 ! [R: a > a > $o,A1: list_a,A2: list_a] :
% 3.05/1.62 ( ( listrelp_a_a @ R @ A1 @ A2 )
% 3.05/1.62 => ( ( ( A1 = nil_a )
% 3.05/1.62 => ( A2 != nil_a ) )
% 3.05/1.62 => ~ ! [X: a,Y3: a,Xs2: list_a] :
% 3.05/1.62 ( ( A1
% 3.05/1.62 = ( cons_a @ X @ Xs2 ) )
% 3.05/1.62 => ! [Ys3: list_a] :
% 3.05/1.62 ( ( A2
% 3.05/1.62 = ( cons_a @ Y3 @ Ys3 ) )
% 3.05/1.62 => ( ( R @ X @ Y3 )
% 3.05/1.62 => ~ ( listrelp_a_a @ R @ Xs2 @ Ys3 ) ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_68_ord_Olexordp__eq__simps_I4_J,axiom,
% 3.05/1.62 ! [Less: list_a > list_a > $o,X3: list_a,Xs: list_list_a,Y: list_a,Ys2: list_list_a] :
% 3.05/1.62 ( ( lexordp_eq_list_a @ Less @ ( cons_list_a @ X3 @ Xs ) @ ( cons_list_a @ Y @ Ys2 ) )
% 3.05/1.62 = ( ( Less @ X3 @ Y )
% 3.05/1.62 | ( ~ ( Less @ Y @ X3 )
% 3.05/1.62 & ( lexordp_eq_list_a @ Less @ Xs @ Ys2 ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_69_ord_Olexordp__eq__simps_I4_J,axiom,
% 3.05/1.62 ! [Less: a > a > $o,X3: a,Xs: list_a,Y: a,Ys2: list_a] :
% 3.05/1.62 ( ( lexordp_eq_a @ Less @ ( cons_a @ X3 @ Xs ) @ ( cons_a @ Y @ Ys2 ) )
% 3.05/1.62 = ( ( Less @ X3 @ Y )
% 3.05/1.62 | ( ~ ( Less @ Y @ X3 )
% 3.05/1.62 & ( lexordp_eq_a @ Less @ Xs @ Ys2 ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_70_ord_Olexordp__eq__simps_I2_J,axiom,
% 3.05/1.62 ! [Less: list_a > list_a > $o,Xs: list_list_a] :
% 3.05/1.62 ( ( lexordp_eq_list_a @ Less @ Xs @ nil_list_a )
% 3.05/1.62 = ( Xs = nil_list_a ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_71_ord_Olexordp__eq__simps_I2_J,axiom,
% 3.05/1.62 ! [Less: a > a > $o,Xs: list_a] :
% 3.05/1.62 ( ( lexordp_eq_a @ Less @ Xs @ nil_a )
% 3.05/1.62 = ( Xs = nil_a ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_72_ord_Olexordp__eq__simps_I1_J,axiom,
% 3.05/1.62 ! [Less: list_a > list_a > $o,Ys2: list_list_a] : ( lexordp_eq_list_a @ Less @ nil_list_a @ Ys2 ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_73_ord_Olexordp__eq__simps_I1_J,axiom,
% 3.05/1.62 ! [Less: a > a > $o,Ys2: list_a] : ( lexordp_eq_a @ Less @ nil_a @ Ys2 ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_74_ord_Olexordp__eq_Ocong,axiom,
% 3.05/1.62 lexordp_eq_a = lexordp_eq_a ).
% 3.05/1.62
% 3.05/1.62 thf(fact_75_ord_Olexordp__eq__refl,axiom,
% 3.05/1.62 ! [Less: a > a > $o,Xs: list_a] : ( lexordp_eq_a @ Less @ Xs @ Xs ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_76_mem__Collect__eq,axiom,
% 3.05/1.62 ! [A3: list_a,P: list_a > $o] :
% 3.05/1.62 ( ( member_list_a2 @ A3 @ ( collect_list_a @ P ) )
% 3.05/1.62 = ( P @ A3 ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_77_mem__Collect__eq,axiom,
% 3.05/1.62 ! [A3: a,P: a > $o] :
% 3.05/1.62 ( ( member_a2 @ A3 @ ( collect_a @ P ) )
% 3.05/1.62 = ( P @ A3 ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_78_Collect__mem__eq,axiom,
% 3.05/1.62 ! [A4: set_list_a] :
% 3.05/1.62 ( ( collect_list_a
% 3.05/1.62 @ ^ [X4: list_a] : ( member_list_a2 @ X4 @ A4 ) )
% 3.05/1.62 = A4 ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_79_Collect__mem__eq,axiom,
% 3.05/1.62 ! [A4: set_a] :
% 3.05/1.62 ( ( collect_a
% 3.05/1.62 @ ^ [X4: a] : ( member_a2 @ X4 @ A4 ) )
% 3.05/1.62 = A4 ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_80_ord_Olexordp__eq_OCons,axiom,
% 3.05/1.62 ! [Less: list_a > list_a > $o,X3: list_a,Y: list_a,Xs: list_list_a,Ys2: list_list_a] :
% 3.05/1.62 ( ( Less @ X3 @ Y )
% 3.05/1.62 => ( lexordp_eq_list_a @ Less @ ( cons_list_a @ X3 @ Xs ) @ ( cons_list_a @ Y @ Ys2 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_81_ord_Olexordp__eq_OCons,axiom,
% 3.05/1.62 ! [Less: a > a > $o,X3: a,Y: a,Xs: list_a,Ys2: list_a] :
% 3.05/1.62 ( ( Less @ X3 @ Y )
% 3.05/1.62 => ( lexordp_eq_a @ Less @ ( cons_a @ X3 @ Xs ) @ ( cons_a @ Y @ Ys2 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_82_ord_Olexordp__eq_OCons__eq,axiom,
% 3.05/1.62 ! [Less: list_a > list_a > $o,X3: list_a,Y: list_a,Xs: list_list_a,Ys2: list_list_a] :
% 3.05/1.62 ( ~ ( Less @ X3 @ Y )
% 3.05/1.62 => ( ~ ( Less @ Y @ X3 )
% 3.05/1.62 => ( ( lexordp_eq_list_a @ Less @ Xs @ Ys2 )
% 3.05/1.62 => ( lexordp_eq_list_a @ Less @ ( cons_list_a @ X3 @ Xs ) @ ( cons_list_a @ Y @ Ys2 ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_83_ord_Olexordp__eq_OCons__eq,axiom,
% 3.05/1.62 ! [Less: a > a > $o,X3: a,Y: a,Xs: list_a,Ys2: list_a] :
% 3.05/1.62 ( ~ ( Less @ X3 @ Y )
% 3.05/1.62 => ( ~ ( Less @ Y @ X3 )
% 3.05/1.62 => ( ( lexordp_eq_a @ Less @ Xs @ Ys2 )
% 3.05/1.62 => ( lexordp_eq_a @ Less @ ( cons_a @ X3 @ Xs ) @ ( cons_a @ Y @ Ys2 ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_84_ord_Olexordp__eq_ONil,axiom,
% 3.05/1.62 ! [Less: list_a > list_a > $o,Ys2: list_list_a] : ( lexordp_eq_list_a @ Less @ nil_list_a @ Ys2 ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_85_ord_Olexordp__eq_ONil,axiom,
% 3.05/1.62 ! [Less: a > a > $o,Ys2: list_a] : ( lexordp_eq_a @ Less @ nil_a @ Ys2 ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_86_listrelp_OCons,axiom,
% 3.05/1.62 ! [R: a > list_a > $o,X3: a,Y: list_a,Xs: list_a,Ys2: list_list_a] :
% 3.05/1.62 ( ( R @ X3 @ Y )
% 3.05/1.62 => ( ( listrelp_a_list_a @ R @ Xs @ Ys2 )
% 3.05/1.62 => ( listrelp_a_list_a @ R @ ( cons_a @ X3 @ Xs ) @ ( cons_list_a @ Y @ Ys2 ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_87_listrelp_OCons,axiom,
% 3.05/1.62 ! [R: list_a > a > $o,X3: list_a,Y: a,Xs: list_list_a,Ys2: list_a] :
% 3.05/1.62 ( ( R @ X3 @ Y )
% 3.05/1.62 => ( ( listrelp_list_a_a @ R @ Xs @ Ys2 )
% 3.05/1.62 => ( listrelp_list_a_a @ R @ ( cons_list_a @ X3 @ Xs ) @ ( cons_a @ Y @ Ys2 ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_88_listrelp_OCons,axiom,
% 3.05/1.62 ! [R: list_a > list_a > $o,X3: list_a,Y: list_a,Xs: list_list_a,Ys2: list_list_a] :
% 3.05/1.62 ( ( R @ X3 @ Y )
% 3.05/1.62 => ( ( listre1221556159list_a @ R @ Xs @ Ys2 )
% 3.05/1.62 => ( listre1221556159list_a @ R @ ( cons_list_a @ X3 @ Xs ) @ ( cons_list_a @ Y @ Ys2 ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_89_listrelp_OCons,axiom,
% 3.05/1.62 ! [R: a > a > $o,X3: a,Y: a,Xs: list_a,Ys2: list_a] :
% 3.05/1.62 ( ( R @ X3 @ Y )
% 3.05/1.62 => ( ( listrelp_a_a @ R @ Xs @ Ys2 )
% 3.05/1.62 => ( listrelp_a_a @ R @ ( cons_a @ X3 @ Xs ) @ ( cons_a @ Y @ Ys2 ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_90_listrelp_ONil,axiom,
% 3.05/1.62 ! [R: a > list_a > $o] : ( listrelp_a_list_a @ R @ nil_a @ nil_list_a ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_91_listrelp_ONil,axiom,
% 3.05/1.62 ! [R: list_a > a > $o] : ( listrelp_list_a_a @ R @ nil_list_a @ nil_a ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_92_listrelp_ONil,axiom,
% 3.05/1.62 ! [R: list_a > list_a > $o] : ( listre1221556159list_a @ R @ nil_list_a @ nil_list_a ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_93_listrelp_ONil,axiom,
% 3.05/1.62 ! [R: a > a > $o] : ( listrelp_a_a @ R @ nil_a @ nil_a ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_94_map__tailrec__rev_Osimps_I2_J,axiom,
% 3.05/1.62 ! [F: a > list_a,A3: a,As2: list_a,Bs2: list_list_a] :
% 3.05/1.62 ( ( map_ta41997947list_a @ F @ ( cons_a @ A3 @ As2 ) @ Bs2 )
% 3.05/1.62 = ( map_ta41997947list_a @ F @ As2 @ ( cons_list_a @ ( F @ A3 ) @ Bs2 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_95_map__tailrec__rev_Osimps_I2_J,axiom,
% 3.05/1.62 ! [F: list_a > a,A3: list_a,As2: list_list_a,Bs2: list_a] :
% 3.05/1.62 ( ( map_ta2002079599st_a_a @ F @ ( cons_list_a @ A3 @ As2 ) @ Bs2 )
% 3.05/1.62 = ( map_ta2002079599st_a_a @ F @ As2 @ ( cons_a @ ( F @ A3 ) @ Bs2 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_96_map__tailrec__rev_Osimps_I2_J,axiom,
% 3.05/1.62 ! [F: list_a > list_a,A3: list_a,As2: list_list_a,Bs2: list_list_a] :
% 3.05/1.62 ( ( map_ta982122357list_a @ F @ ( cons_list_a @ A3 @ As2 ) @ Bs2 )
% 3.05/1.62 = ( map_ta982122357list_a @ F @ As2 @ ( cons_list_a @ ( F @ A3 ) @ Bs2 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_97_map__tailrec__rev_Osimps_I2_J,axiom,
% 3.05/1.62 ! [F: a > a,A3: a,As2: list_a,Bs2: list_a] :
% 3.05/1.62 ( ( map_tailrec_rev_a_a @ F @ ( cons_a @ A3 @ As2 ) @ Bs2 )
% 3.05/1.62 = ( map_tailrec_rev_a_a @ F @ As2 @ ( cons_a @ ( F @ A3 ) @ Bs2 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_98_map__tailrec__rev_Osimps_I1_J,axiom,
% 3.05/1.62 ! [F: a > a,Bs2: list_a] :
% 3.05/1.62 ( ( map_tailrec_rev_a_a @ F @ nil_a @ Bs2 )
% 3.05/1.62 = Bs2 ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_99_ord_Olexordp__eq_Ocases,axiom,
% 3.05/1.62 ! [Less: list_a > list_a > $o,A1: list_list_a,A2: list_list_a] :
% 3.05/1.62 ( ( lexordp_eq_list_a @ Less @ A1 @ A2 )
% 3.05/1.62 => ( ( A1 != nil_list_a )
% 3.05/1.62 => ( ! [X: list_a] :
% 3.05/1.62 ( ? [Xs2: list_list_a] :
% 3.05/1.62 ( A1
% 3.05/1.62 = ( cons_list_a @ X @ Xs2 ) )
% 3.05/1.62 => ! [Y3: list_a] :
% 3.05/1.62 ( ? [Ys3: list_list_a] :
% 3.05/1.62 ( A2
% 3.05/1.62 = ( cons_list_a @ Y3 @ Ys3 ) )
% 3.05/1.62 => ~ ( Less @ X @ Y3 ) ) )
% 3.05/1.62 => ~ ! [X: list_a,Y3: list_a,Xs2: list_list_a] :
% 3.05/1.62 ( ( A1
% 3.05/1.62 = ( cons_list_a @ X @ Xs2 ) )
% 3.05/1.62 => ! [Ys3: list_list_a] :
% 3.05/1.62 ( ( A2
% 3.05/1.62 = ( cons_list_a @ Y3 @ Ys3 ) )
% 3.05/1.62 => ( ~ ( Less @ X @ Y3 )
% 3.05/1.62 => ( ~ ( Less @ Y3 @ X )
% 3.05/1.62 => ~ ( lexordp_eq_list_a @ Less @ Xs2 @ Ys3 ) ) ) ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_100_ord_Olexordp__eq_Ocases,axiom,
% 3.05/1.62 ! [Less: a > a > $o,A1: list_a,A2: list_a] :
% 3.05/1.62 ( ( lexordp_eq_a @ Less @ A1 @ A2 )
% 3.05/1.62 => ( ( A1 != nil_a )
% 3.05/1.62 => ( ! [X: a] :
% 3.05/1.62 ( ? [Xs2: list_a] :
% 3.05/1.62 ( A1
% 3.05/1.62 = ( cons_a @ X @ Xs2 ) )
% 3.05/1.62 => ! [Y3: a] :
% 3.05/1.62 ( ? [Ys3: list_a] :
% 3.05/1.62 ( A2
% 3.05/1.62 = ( cons_a @ Y3 @ Ys3 ) )
% 3.05/1.62 => ~ ( Less @ X @ Y3 ) ) )
% 3.05/1.62 => ~ ! [X: a,Y3: a,Xs2: list_a] :
% 3.05/1.62 ( ( A1
% 3.05/1.62 = ( cons_a @ X @ Xs2 ) )
% 3.05/1.62 => ! [Ys3: list_a] :
% 3.05/1.62 ( ( A2
% 3.05/1.62 = ( cons_a @ Y3 @ Ys3 ) )
% 3.05/1.62 => ( ~ ( Less @ X @ Y3 )
% 3.05/1.62 => ( ~ ( Less @ Y3 @ X )
% 3.05/1.62 => ~ ( lexordp_eq_a @ Less @ Xs2 @ Ys3 ) ) ) ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_101_ord_Olexordp__eq_Osimps,axiom,
% 3.05/1.62 ( lexordp_eq_list_a
% 3.05/1.62 = ( ^ [Less2: list_a > list_a > $o,A12: list_list_a,A22: list_list_a] :
% 3.05/1.62 ( ? [Ys: list_list_a] :
% 3.05/1.62 ( ( A12 = nil_list_a )
% 3.05/1.62 & ( A22 = Ys ) )
% 3.05/1.62 | ? [X4: list_a,Y2: list_a,Xs3: list_list_a,Ys: list_list_a] :
% 3.05/1.62 ( ( A12
% 3.05/1.62 = ( cons_list_a @ X4 @ Xs3 ) )
% 3.05/1.62 & ( A22
% 3.05/1.62 = ( cons_list_a @ Y2 @ Ys ) )
% 3.05/1.62 & ( Less2 @ X4 @ Y2 ) )
% 3.05/1.62 | ? [X4: list_a,Y2: list_a,Xs3: list_list_a,Ys: list_list_a] :
% 3.05/1.62 ( ( A12
% 3.05/1.62 = ( cons_list_a @ X4 @ Xs3 ) )
% 3.05/1.62 & ( A22
% 3.05/1.62 = ( cons_list_a @ Y2 @ Ys ) )
% 3.05/1.62 & ~ ( Less2 @ X4 @ Y2 )
% 3.05/1.62 & ~ ( Less2 @ Y2 @ X4 )
% 3.05/1.62 & ( lexordp_eq_list_a @ Less2 @ Xs3 @ Ys ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_102_ord_Olexordp__eq_Osimps,axiom,
% 3.05/1.62 ( lexordp_eq_a
% 3.05/1.62 = ( ^ [Less2: a > a > $o,A12: list_a,A22: list_a] :
% 3.05/1.62 ( ? [Ys: list_a] :
% 3.05/1.62 ( ( A12 = nil_a )
% 3.05/1.62 & ( A22 = Ys ) )
% 3.05/1.62 | ? [X4: a,Y2: a,Xs3: list_a,Ys: list_a] :
% 3.05/1.62 ( ( A12
% 3.05/1.62 = ( cons_a @ X4 @ Xs3 ) )
% 3.05/1.62 & ( A22
% 3.05/1.62 = ( cons_a @ Y2 @ Ys ) )
% 3.05/1.62 & ( Less2 @ X4 @ Y2 ) )
% 3.05/1.62 | ? [X4: a,Y2: a,Xs3: list_a,Ys: list_a] :
% 3.05/1.62 ( ( A12
% 3.05/1.62 = ( cons_a @ X4 @ Xs3 ) )
% 3.05/1.62 & ( A22
% 3.05/1.62 = ( cons_a @ Y2 @ Ys ) )
% 3.05/1.62 & ~ ( Less2 @ X4 @ Y2 )
% 3.05/1.62 & ~ ( Less2 @ Y2 @ X4 )
% 3.05/1.62 & ( lexordp_eq_a @ Less2 @ Xs3 @ Ys ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_103_ord_Olexordp__eq_Oinducts,axiom,
% 3.05/1.62 ! [Less: list_a > list_a > $o,X12: list_list_a,X23: list_list_a,P: list_list_a > list_list_a > $o] :
% 3.05/1.62 ( ( lexordp_eq_list_a @ Less @ X12 @ X23 )
% 3.05/1.62 => ( ! [X_1: list_list_a] : ( P @ nil_list_a @ X_1 )
% 3.05/1.62 => ( ! [X: list_a,Y3: list_a,Xs2: list_list_a,Ys3: list_list_a] :
% 3.05/1.62 ( ( Less @ X @ Y3 )
% 3.05/1.62 => ( P @ ( cons_list_a @ X @ Xs2 ) @ ( cons_list_a @ Y3 @ Ys3 ) ) )
% 3.05/1.62 => ( ! [X: list_a,Y3: list_a,Xs2: list_list_a,Ys3: list_list_a] :
% 3.05/1.62 ( ~ ( Less @ X @ Y3 )
% 3.05/1.62 => ( ~ ( Less @ Y3 @ X )
% 3.05/1.62 => ( ( lexordp_eq_list_a @ Less @ Xs2 @ Ys3 )
% 3.05/1.62 => ( ( P @ Xs2 @ Ys3 )
% 3.05/1.62 => ( P @ ( cons_list_a @ X @ Xs2 ) @ ( cons_list_a @ Y3 @ Ys3 ) ) ) ) ) )
% 3.05/1.62 => ( P @ X12 @ X23 ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_104_ord_Olexordp__eq_Oinducts,axiom,
% 3.05/1.62 ! [Less: a > a > $o,X12: list_a,X23: list_a,P: list_a > list_a > $o] :
% 3.05/1.62 ( ( lexordp_eq_a @ Less @ X12 @ X23 )
% 3.05/1.62 => ( ! [X_1: list_a] : ( P @ nil_a @ X_1 )
% 3.05/1.62 => ( ! [X: a,Y3: a,Xs2: list_a,Ys3: list_a] :
% 3.05/1.62 ( ( Less @ X @ Y3 )
% 3.05/1.62 => ( P @ ( cons_a @ X @ Xs2 ) @ ( cons_a @ Y3 @ Ys3 ) ) )
% 3.05/1.62 => ( ! [X: a,Y3: a,Xs2: list_a,Ys3: list_a] :
% 3.05/1.62 ( ~ ( Less @ X @ Y3 )
% 3.05/1.62 => ( ~ ( Less @ Y3 @ X )
% 3.05/1.62 => ( ( lexordp_eq_a @ Less @ Xs2 @ Ys3 )
% 3.05/1.62 => ( ( P @ Xs2 @ Ys3 )
% 3.05/1.62 => ( P @ ( cons_a @ X @ Xs2 ) @ ( cons_a @ Y3 @ Ys3 ) ) ) ) ) )
% 3.05/1.62 => ( P @ X12 @ X23 ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_105_product__lists_Osimps_I1_J,axiom,
% 3.05/1.62 ( ( product_lists_list_a @ nil_list_list_a )
% 3.05/1.62 = ( cons_list_list_a @ nil_list_a @ nil_list_list_a ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_106_product__lists_Osimps_I1_J,axiom,
% 3.05/1.62 ( ( product_lists_a @ nil_list_a )
% 3.05/1.62 = ( cons_list_a @ nil_a @ nil_list_a ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_107_subseqs_Osimps_I1_J,axiom,
% 3.05/1.62 ( ( subseqs_list_a @ nil_list_a )
% 3.05/1.62 = ( cons_list_list_a @ nil_list_a @ nil_list_list_a ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_108_subseqs_Osimps_I1_J,axiom,
% 3.05/1.62 ( ( subseqs_a @ nil_a )
% 3.05/1.62 = ( cons_list_a @ nil_a @ nil_list_a ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_109_lexordp__eq_Ocases,axiom,
% 3.05/1.62 ! [A1: list_nat,A2: list_nat] :
% 3.05/1.62 ( ( ord_lexordp_eq_nat @ A1 @ A2 )
% 3.05/1.62 => ( ( A1 != nil_nat )
% 3.05/1.62 => ( ! [X: nat] :
% 3.05/1.62 ( ? [Xs2: list_nat] :
% 3.05/1.62 ( A1
% 3.05/1.62 = ( cons_nat @ X @ Xs2 ) )
% 3.05/1.62 => ! [Y3: nat] :
% 3.05/1.62 ( ? [Ys3: list_nat] :
% 3.05/1.62 ( A2
% 3.05/1.62 = ( cons_nat @ Y3 @ Ys3 ) )
% 3.05/1.62 => ~ ( ord_less_nat @ X @ Y3 ) ) )
% 3.05/1.62 => ~ ! [X: nat,Y3: nat,Xs2: list_nat] :
% 3.05/1.62 ( ( A1
% 3.05/1.62 = ( cons_nat @ X @ Xs2 ) )
% 3.05/1.62 => ! [Ys3: list_nat] :
% 3.05/1.62 ( ( A2
% 3.05/1.62 = ( cons_nat @ Y3 @ Ys3 ) )
% 3.05/1.62 => ( ~ ( ord_less_nat @ X @ Y3 )
% 3.05/1.62 => ( ~ ( ord_less_nat @ Y3 @ X )
% 3.05/1.62 => ~ ( ord_lexordp_eq_nat @ Xs2 @ Ys3 ) ) ) ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_110_lexordp__eq_Osimps,axiom,
% 3.05/1.62 ( ord_lexordp_eq_nat
% 3.05/1.62 = ( ^ [A12: list_nat,A22: list_nat] :
% 3.05/1.62 ( ? [Ys: list_nat] :
% 3.05/1.62 ( ( A12 = nil_nat )
% 3.05/1.62 & ( A22 = Ys ) )
% 3.05/1.62 | ? [X4: nat,Y2: nat,Xs3: list_nat,Ys: list_nat] :
% 3.05/1.62 ( ( A12
% 3.05/1.62 = ( cons_nat @ X4 @ Xs3 ) )
% 3.05/1.62 & ( A22
% 3.05/1.62 = ( cons_nat @ Y2 @ Ys ) )
% 3.05/1.62 & ( ord_less_nat @ X4 @ Y2 ) )
% 3.05/1.62 | ? [X4: nat,Y2: nat,Xs3: list_nat,Ys: list_nat] :
% 3.05/1.62 ( ( A12
% 3.05/1.62 = ( cons_nat @ X4 @ Xs3 ) )
% 3.05/1.62 & ( A22
% 3.05/1.62 = ( cons_nat @ Y2 @ Ys ) )
% 3.05/1.62 & ~ ( ord_less_nat @ X4 @ Y2 )
% 3.05/1.62 & ~ ( ord_less_nat @ Y2 @ X4 )
% 3.05/1.62 & ( ord_lexordp_eq_nat @ Xs3 @ Ys ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_111_lexordp__eq_Oinducts,axiom,
% 3.05/1.62 ! [X12: list_nat,X23: list_nat,P: list_nat > list_nat > $o] :
% 3.05/1.62 ( ( ord_lexordp_eq_nat @ X12 @ X23 )
% 3.05/1.62 => ( ! [X_1: list_nat] : ( P @ nil_nat @ X_1 )
% 3.05/1.62 => ( ! [X: nat,Y3: nat,Xs2: list_nat,Ys3: list_nat] :
% 3.05/1.62 ( ( ord_less_nat @ X @ Y3 )
% 3.05/1.62 => ( P @ ( cons_nat @ X @ Xs2 ) @ ( cons_nat @ Y3 @ Ys3 ) ) )
% 3.05/1.62 => ( ! [X: nat,Y3: nat,Xs2: list_nat,Ys3: list_nat] :
% 3.05/1.62 ( ~ ( ord_less_nat @ X @ Y3 )
% 3.05/1.62 => ( ~ ( ord_less_nat @ Y3 @ X )
% 3.05/1.62 => ( ( ord_lexordp_eq_nat @ Xs2 @ Ys3 )
% 3.05/1.62 => ( ( P @ Xs2 @ Ys3 )
% 3.05/1.62 => ( P @ ( cons_nat @ X @ Xs2 ) @ ( cons_nat @ Y3 @ Ys3 ) ) ) ) ) )
% 3.05/1.62 => ( P @ X12 @ X23 ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_112_member__rec_I2_J,axiom,
% 3.05/1.62 ! [Y: list_a] :
% 3.05/1.62 ~ ( member_list_a @ nil_list_a @ Y ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_113_member__rec_I2_J,axiom,
% 3.05/1.62 ! [Y: a] :
% 3.05/1.62 ~ ( member_a @ nil_a @ Y ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_114_member__rec_I1_J,axiom,
% 3.05/1.62 ! [X3: list_a,Xs: list_list_a,Y: list_a] :
% 3.05/1.62 ( ( member_list_a @ ( cons_list_a @ X3 @ Xs ) @ Y )
% 3.05/1.62 = ( ( X3 = Y )
% 3.05/1.62 | ( member_list_a @ Xs @ Y ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_115_member__rec_I1_J,axiom,
% 3.05/1.62 ! [X3: a,Xs: list_a,Y: a] :
% 3.05/1.62 ( ( member_a @ ( cons_a @ X3 @ Xs ) @ Y )
% 3.05/1.62 = ( ( X3 = Y )
% 3.05/1.62 | ( member_a @ Xs @ Y ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_116_splice_Oelims,axiom,
% 3.05/1.62 ! [X3: list_list_a,Xa: list_list_a,Y: list_list_a] :
% 3.05/1.62 ( ( ( splice_list_a @ X3 @ Xa )
% 3.05/1.62 = Y )
% 3.05/1.62 => ( ( ( X3 = nil_list_a )
% 3.05/1.62 => ( Y != Xa ) )
% 3.05/1.62 => ~ ! [X: list_a,Xs2: list_list_a] :
% 3.05/1.62 ( ( X3
% 3.05/1.62 = ( cons_list_a @ X @ Xs2 ) )
% 3.05/1.62 => ( Y
% 3.05/1.62 != ( cons_list_a @ X @ ( splice_list_a @ Xa @ Xs2 ) ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_117_splice_Oelims,axiom,
% 3.05/1.62 ! [X3: list_a,Xa: list_a,Y: list_a] :
% 3.05/1.62 ( ( ( splice_a @ X3 @ Xa )
% 3.05/1.62 = Y )
% 3.05/1.62 => ( ( ( X3 = nil_a )
% 3.05/1.62 => ( Y != Xa ) )
% 3.05/1.62 => ~ ! [X: a,Xs2: list_a] :
% 3.05/1.62 ( ( X3
% 3.05/1.62 = ( cons_a @ X @ Xs2 ) )
% 3.05/1.62 => ( Y
% 3.05/1.62 != ( cons_a @ X @ ( splice_a @ Xa @ Xs2 ) ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_118_bind__simps_I2_J,axiom,
% 3.05/1.62 ! [X3: a,Xs: list_a,F: a > list_a] :
% 3.05/1.62 ( ( bind_a_a @ ( cons_a @ X3 @ Xs ) @ F )
% 3.05/1.62 = ( append_a @ ( F @ X3 ) @ ( bind_a_a @ Xs @ F ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_119_bind__simps_I2_J,axiom,
% 3.05/1.62 ! [X3: a,Xs: list_a,F: a > list_list_a] :
% 3.05/1.62 ( ( bind_a_list_a @ ( cons_a @ X3 @ Xs ) @ F )
% 3.05/1.62 = ( append_list_a @ ( F @ X3 ) @ ( bind_a_list_a @ Xs @ F ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_120_bind__simps_I2_J,axiom,
% 3.05/1.62 ! [X3: list_a,Xs: list_list_a,F: list_a > list_a] :
% 3.05/1.62 ( ( bind_list_a_a @ ( cons_list_a @ X3 @ Xs ) @ F )
% 3.05/1.62 = ( append_a @ ( F @ X3 ) @ ( bind_list_a_a @ Xs @ F ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_121_bind__simps_I2_J,axiom,
% 3.05/1.62 ! [X3: list_a,Xs: list_list_a,F: list_a > list_list_a] :
% 3.05/1.62 ( ( bind_list_a_list_a @ ( cons_list_a @ X3 @ Xs ) @ F )
% 3.05/1.62 = ( append_list_a @ ( F @ X3 ) @ ( bind_list_a_list_a @ Xs @ F ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_122_same__append__eq,axiom,
% 3.05/1.62 ! [Xs: list_a,Ys2: list_a,Zs2: list_a] :
% 3.05/1.62 ( ( ( append_a @ Xs @ Ys2 )
% 3.05/1.62 = ( append_a @ Xs @ Zs2 ) )
% 3.05/1.62 = ( Ys2 = Zs2 ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_123_same__append__eq,axiom,
% 3.05/1.62 ! [Xs: list_list_a,Ys2: list_list_a,Zs2: list_list_a] :
% 3.05/1.62 ( ( ( append_list_a @ Xs @ Ys2 )
% 3.05/1.62 = ( append_list_a @ Xs @ Zs2 ) )
% 3.05/1.62 = ( Ys2 = Zs2 ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_124_append__same__eq,axiom,
% 3.05/1.62 ! [Ys2: list_a,Xs: list_a,Zs2: list_a] :
% 3.05/1.62 ( ( ( append_a @ Ys2 @ Xs )
% 3.05/1.62 = ( append_a @ Zs2 @ Xs ) )
% 3.05/1.62 = ( Ys2 = Zs2 ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_125_append__same__eq,axiom,
% 3.05/1.62 ! [Ys2: list_list_a,Xs: list_list_a,Zs2: list_list_a] :
% 3.05/1.62 ( ( ( append_list_a @ Ys2 @ Xs )
% 3.05/1.62 = ( append_list_a @ Zs2 @ Xs ) )
% 3.05/1.62 = ( Ys2 = Zs2 ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_126_append__assoc,axiom,
% 3.05/1.62 ! [Xs: list_a,Ys2: list_a,Zs2: list_a] :
% 3.05/1.62 ( ( append_a @ ( append_a @ Xs @ Ys2 ) @ Zs2 )
% 3.05/1.62 = ( append_a @ Xs @ ( append_a @ Ys2 @ Zs2 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_127_append__assoc,axiom,
% 3.05/1.62 ! [Xs: list_list_a,Ys2: list_list_a,Zs2: list_list_a] :
% 3.05/1.62 ( ( append_list_a @ ( append_list_a @ Xs @ Ys2 ) @ Zs2 )
% 3.05/1.62 = ( append_list_a @ Xs @ ( append_list_a @ Ys2 @ Zs2 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_128_append_Oassoc,axiom,
% 3.05/1.62 ! [A3: list_a,B: list_a,C: list_a] :
% 3.05/1.62 ( ( append_a @ ( append_a @ A3 @ B ) @ C )
% 3.05/1.62 = ( append_a @ A3 @ ( append_a @ B @ C ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_129_append_Oassoc,axiom,
% 3.05/1.62 ! [A3: list_list_a,B: list_list_a,C: list_list_a] :
% 3.05/1.62 ( ( append_list_a @ ( append_list_a @ A3 @ B ) @ C )
% 3.05/1.62 = ( append_list_a @ A3 @ ( append_list_a @ B @ C ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_130_append_Oright__neutral,axiom,
% 3.05/1.62 ! [A3: list_list_a] :
% 3.05/1.62 ( ( append_list_a @ A3 @ nil_list_a )
% 3.05/1.62 = A3 ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_131_append_Oright__neutral,axiom,
% 3.05/1.62 ! [A3: list_a] :
% 3.05/1.62 ( ( append_a @ A3 @ nil_a )
% 3.05/1.62 = A3 ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_132_append__is__Nil__conv,axiom,
% 3.05/1.62 ! [Xs: list_list_a,Ys2: list_list_a] :
% 3.05/1.62 ( ( ( append_list_a @ Xs @ Ys2 )
% 3.05/1.62 = nil_list_a )
% 3.05/1.62 = ( ( Xs = nil_list_a )
% 3.05/1.62 & ( Ys2 = nil_list_a ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_133_append__is__Nil__conv,axiom,
% 3.05/1.62 ! [Xs: list_a,Ys2: list_a] :
% 3.05/1.62 ( ( ( append_a @ Xs @ Ys2 )
% 3.05/1.62 = nil_a )
% 3.05/1.62 = ( ( Xs = nil_a )
% 3.05/1.62 & ( Ys2 = nil_a ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_134_Nil__is__append__conv,axiom,
% 3.05/1.62 ! [Xs: list_list_a,Ys2: list_list_a] :
% 3.05/1.62 ( ( nil_list_a
% 3.05/1.62 = ( append_list_a @ Xs @ Ys2 ) )
% 3.05/1.62 = ( ( Xs = nil_list_a )
% 3.05/1.62 & ( Ys2 = nil_list_a ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_135_Nil__is__append__conv,axiom,
% 3.05/1.62 ! [Xs: list_a,Ys2: list_a] :
% 3.05/1.62 ( ( nil_a
% 3.05/1.62 = ( append_a @ Xs @ Ys2 ) )
% 3.05/1.62 = ( ( Xs = nil_a )
% 3.05/1.62 & ( Ys2 = nil_a ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_136_self__append__conv2,axiom,
% 3.05/1.62 ! [Ys2: list_list_a,Xs: list_list_a] :
% 3.05/1.62 ( ( Ys2
% 3.05/1.62 = ( append_list_a @ Xs @ Ys2 ) )
% 3.05/1.62 = ( Xs = nil_list_a ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_137_self__append__conv2,axiom,
% 3.05/1.62 ! [Ys2: list_a,Xs: list_a] :
% 3.05/1.62 ( ( Ys2
% 3.05/1.62 = ( append_a @ Xs @ Ys2 ) )
% 3.05/1.62 = ( Xs = nil_a ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_138_append__self__conv2,axiom,
% 3.05/1.62 ! [Xs: list_list_a,Ys2: list_list_a] :
% 3.05/1.62 ( ( ( append_list_a @ Xs @ Ys2 )
% 3.05/1.62 = Ys2 )
% 3.05/1.62 = ( Xs = nil_list_a ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_139_append__self__conv2,axiom,
% 3.05/1.62 ! [Xs: list_a,Ys2: list_a] :
% 3.05/1.62 ( ( ( append_a @ Xs @ Ys2 )
% 3.05/1.62 = Ys2 )
% 3.05/1.62 = ( Xs = nil_a ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_140_self__append__conv,axiom,
% 3.05/1.62 ! [Xs: list_list_a,Ys2: list_list_a] :
% 3.05/1.62 ( ( Xs
% 3.05/1.62 = ( append_list_a @ Xs @ Ys2 ) )
% 3.05/1.62 = ( Ys2 = nil_list_a ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_141_self__append__conv,axiom,
% 3.05/1.62 ! [Xs: list_a,Ys2: list_a] :
% 3.05/1.62 ( ( Xs
% 3.05/1.62 = ( append_a @ Xs @ Ys2 ) )
% 3.05/1.62 = ( Ys2 = nil_a ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_142_append__self__conv,axiom,
% 3.05/1.62 ! [Xs: list_list_a,Ys2: list_list_a] :
% 3.05/1.62 ( ( ( append_list_a @ Xs @ Ys2 )
% 3.05/1.62 = Xs )
% 3.05/1.62 = ( Ys2 = nil_list_a ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_143_append__self__conv,axiom,
% 3.05/1.62 ! [Xs: list_a,Ys2: list_a] :
% 3.05/1.62 ( ( ( append_a @ Xs @ Ys2 )
% 3.05/1.62 = Xs )
% 3.05/1.62 = ( Ys2 = nil_a ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_144_append__Nil2,axiom,
% 3.05/1.62 ! [Xs: list_list_a] :
% 3.05/1.62 ( ( append_list_a @ Xs @ nil_list_a )
% 3.05/1.62 = Xs ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_145_append__Nil2,axiom,
% 3.05/1.62 ! [Xs: list_a] :
% 3.05/1.62 ( ( append_a @ Xs @ nil_a )
% 3.05/1.62 = Xs ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_146_split__Nil__iff,axiom,
% 3.05/1.62 ! [Xs: list_list_a,Ys2: list_list_a] :
% 3.05/1.62 ( ( ( splice_list_a @ Xs @ Ys2 )
% 3.05/1.62 = nil_list_a )
% 3.05/1.62 = ( ( Xs = nil_list_a )
% 3.05/1.62 & ( Ys2 = nil_list_a ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_147_split__Nil__iff,axiom,
% 3.05/1.62 ! [Xs: list_a,Ys2: list_a] :
% 3.05/1.62 ( ( ( splice_a @ Xs @ Ys2 )
% 3.05/1.62 = nil_a )
% 3.05/1.62 = ( ( Xs = nil_a )
% 3.05/1.62 & ( Ys2 = nil_a ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_148_splice__Nil2,axiom,
% 3.05/1.62 ! [Xs: list_list_a] :
% 3.05/1.62 ( ( splice_list_a @ Xs @ nil_list_a )
% 3.05/1.62 = Xs ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_149_splice__Nil2,axiom,
% 3.05/1.62 ! [Xs: list_a] :
% 3.05/1.62 ( ( splice_a @ Xs @ nil_a )
% 3.05/1.62 = Xs ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_150_i__append__assoc,axiom,
% 3.05/1.62 ! [Xs: list_list_a,Ys2: list_list_a,F: nat > list_a] :
% 3.05/1.62 ( ( listIn1753026346list_a @ Xs @ ( listIn1753026346list_a @ Ys2 @ F ) )
% 3.05/1.62 = ( listIn1753026346list_a @ ( append_list_a @ Xs @ Ys2 ) @ F ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_151_i__append__assoc,axiom,
% 3.05/1.62 ! [Xs: list_a,Ys2: list_a,F: nat > a] :
% 3.05/1.62 ( ( listIn1312259492pend_a @ Xs @ ( listIn1312259492pend_a @ Ys2 @ F ) )
% 3.05/1.62 = ( listIn1312259492pend_a @ ( append_a @ Xs @ Ys2 ) @ F ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_152_append1__eq__conv,axiom,
% 3.05/1.62 ! [Xs: list_list_a,X3: list_a,Ys2: list_list_a,Y: list_a] :
% 3.05/1.62 ( ( ( append_list_a @ Xs @ ( cons_list_a @ X3 @ nil_list_a ) )
% 3.05/1.62 = ( append_list_a @ Ys2 @ ( cons_list_a @ Y @ nil_list_a ) ) )
% 3.05/1.62 = ( ( Xs = Ys2 )
% 3.05/1.62 & ( X3 = Y ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_153_append1__eq__conv,axiom,
% 3.05/1.62 ! [Xs: list_a,X3: a,Ys2: list_a,Y: a] :
% 3.05/1.62 ( ( ( append_a @ Xs @ ( cons_a @ X3 @ nil_a ) )
% 3.05/1.62 = ( append_a @ Ys2 @ ( cons_a @ Y @ nil_a ) ) )
% 3.05/1.62 = ( ( Xs = Ys2 )
% 3.05/1.62 & ( X3 = Y ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_154_lexordp__eq__simps_I4_J,axiom,
% 3.05/1.62 ! [X3: nat,Xs: list_nat,Y: nat,Ys2: list_nat] :
% 3.05/1.62 ( ( ord_lexordp_eq_nat @ ( cons_nat @ X3 @ Xs ) @ ( cons_nat @ Y @ Ys2 ) )
% 3.05/1.62 = ( ( ord_less_nat @ X3 @ Y )
% 3.05/1.62 | ( ~ ( ord_less_nat @ Y @ X3 )
% 3.05/1.62 & ( ord_lexordp_eq_nat @ Xs @ Ys2 ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_155_append__eq__append__conv2,axiom,
% 3.05/1.62 ! [Xs: list_a,Ys2: list_a,Zs2: list_a,Ts: list_a] :
% 3.05/1.62 ( ( ( append_a @ Xs @ Ys2 )
% 3.05/1.62 = ( append_a @ Zs2 @ Ts ) )
% 3.05/1.62 = ( ? [Us: list_a] :
% 3.05/1.62 ( ( ( Xs
% 3.05/1.62 = ( append_a @ Zs2 @ Us ) )
% 3.05/1.62 & ( ( append_a @ Us @ Ys2 )
% 3.05/1.62 = Ts ) )
% 3.05/1.62 | ( ( ( append_a @ Xs @ Us )
% 3.05/1.62 = Zs2 )
% 3.05/1.62 & ( Ys2
% 3.05/1.62 = ( append_a @ Us @ Ts ) ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_156_append__eq__append__conv2,axiom,
% 3.05/1.62 ! [Xs: list_list_a,Ys2: list_list_a,Zs2: list_list_a,Ts: list_list_a] :
% 3.05/1.62 ( ( ( append_list_a @ Xs @ Ys2 )
% 3.05/1.62 = ( append_list_a @ Zs2 @ Ts ) )
% 3.05/1.62 = ( ? [Us: list_list_a] :
% 3.05/1.62 ( ( ( Xs
% 3.05/1.62 = ( append_list_a @ Zs2 @ Us ) )
% 3.05/1.62 & ( ( append_list_a @ Us @ Ys2 )
% 3.05/1.62 = Ts ) )
% 3.05/1.62 | ( ( ( append_list_a @ Xs @ Us )
% 3.05/1.62 = Zs2 )
% 3.05/1.62 & ( Ys2
% 3.05/1.62 = ( append_list_a @ Us @ Ts ) ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_157_append__eq__appendI,axiom,
% 3.05/1.62 ! [Xs: list_a,Xs1: list_a,Zs2: list_a,Ys2: list_a,Us2: list_a] :
% 3.05/1.62 ( ( ( append_a @ Xs @ Xs1 )
% 3.05/1.62 = Zs2 )
% 3.05/1.62 => ( ( Ys2
% 3.05/1.62 = ( append_a @ Xs1 @ Us2 ) )
% 3.05/1.62 => ( ( append_a @ Xs @ Ys2 )
% 3.05/1.62 = ( append_a @ Zs2 @ Us2 ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_158_append__eq__appendI,axiom,
% 3.05/1.62 ! [Xs: list_list_a,Xs1: list_list_a,Zs2: list_list_a,Ys2: list_list_a,Us2: list_list_a] :
% 3.05/1.62 ( ( ( append_list_a @ Xs @ Xs1 )
% 3.05/1.62 = Zs2 )
% 3.05/1.62 => ( ( Ys2
% 3.05/1.62 = ( append_list_a @ Xs1 @ Us2 ) )
% 3.05/1.62 => ( ( append_list_a @ Xs @ Ys2 )
% 3.05/1.62 = ( append_list_a @ Zs2 @ Us2 ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_159_append__Cons,axiom,
% 3.05/1.62 ! [X3: list_a,Xs: list_list_a,Ys2: list_list_a] :
% 3.05/1.62 ( ( append_list_a @ ( cons_list_a @ X3 @ Xs ) @ Ys2 )
% 3.05/1.62 = ( cons_list_a @ X3 @ ( append_list_a @ Xs @ Ys2 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_160_append__Cons,axiom,
% 3.05/1.62 ! [X3: a,Xs: list_a,Ys2: list_a] :
% 3.05/1.62 ( ( append_a @ ( cons_a @ X3 @ Xs ) @ Ys2 )
% 3.05/1.62 = ( cons_a @ X3 @ ( append_a @ Xs @ Ys2 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_161_Cons__eq__appendI,axiom,
% 3.05/1.62 ! [X3: list_a,Xs1: list_list_a,Ys2: list_list_a,Xs: list_list_a,Zs2: list_list_a] :
% 3.05/1.62 ( ( ( cons_list_a @ X3 @ Xs1 )
% 3.05/1.62 = Ys2 )
% 3.05/1.62 => ( ( Xs
% 3.05/1.62 = ( append_list_a @ Xs1 @ Zs2 ) )
% 3.05/1.62 => ( ( cons_list_a @ X3 @ Xs )
% 3.05/1.62 = ( append_list_a @ Ys2 @ Zs2 ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_162_Cons__eq__appendI,axiom,
% 3.05/1.62 ! [X3: a,Xs1: list_a,Ys2: list_a,Xs: list_a,Zs2: list_a] :
% 3.05/1.62 ( ( ( cons_a @ X3 @ Xs1 )
% 3.05/1.62 = Ys2 )
% 3.05/1.62 => ( ( Xs
% 3.05/1.62 = ( append_a @ Xs1 @ Zs2 ) )
% 3.05/1.62 => ( ( cons_a @ X3 @ Xs )
% 3.05/1.62 = ( append_a @ Ys2 @ Zs2 ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_163_append_Oleft__neutral,axiom,
% 3.05/1.62 ! [A3: list_list_a] :
% 3.05/1.62 ( ( append_list_a @ nil_list_a @ A3 )
% 3.05/1.62 = A3 ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_164_append_Oleft__neutral,axiom,
% 3.05/1.62 ! [A3: list_a] :
% 3.05/1.62 ( ( append_a @ nil_a @ A3 )
% 3.05/1.62 = A3 ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_165_append__Nil,axiom,
% 3.05/1.62 ! [Ys2: list_list_a] :
% 3.05/1.62 ( ( append_list_a @ nil_list_a @ Ys2 )
% 3.05/1.62 = Ys2 ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_166_append__Nil,axiom,
% 3.05/1.62 ! [Ys2: list_a] :
% 3.05/1.62 ( ( append_a @ nil_a @ Ys2 )
% 3.05/1.62 = Ys2 ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_167_eq__Nil__appendI,axiom,
% 3.05/1.62 ! [Xs: list_list_a,Ys2: list_list_a] :
% 3.05/1.62 ( ( Xs = Ys2 )
% 3.05/1.62 => ( Xs
% 3.05/1.62 = ( append_list_a @ nil_list_a @ Ys2 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_168_eq__Nil__appendI,axiom,
% 3.05/1.62 ! [Xs: list_a,Ys2: list_a] :
% 3.05/1.62 ( ( Xs = Ys2 )
% 3.05/1.62 => ( Xs
% 3.05/1.62 = ( append_a @ nil_a @ Ys2 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_169_ord_Olexordp__eq__pref,axiom,
% 3.05/1.62 ! [Less: list_a > list_a > $o,U: list_list_a,V: list_list_a] : ( lexordp_eq_list_a @ Less @ U @ ( append_list_a @ U @ V ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_170_ord_Olexordp__eq__pref,axiom,
% 3.05/1.62 ! [Less: a > a > $o,U: list_a,V: list_a] : ( lexordp_eq_a @ Less @ U @ ( append_a @ U @ V ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_171_splice_Osimps_I2_J,axiom,
% 3.05/1.62 ! [X3: list_a,Xs: list_list_a,Ys2: list_list_a] :
% 3.05/1.62 ( ( splice_list_a @ ( cons_list_a @ X3 @ Xs ) @ Ys2 )
% 3.05/1.62 = ( cons_list_a @ X3 @ ( splice_list_a @ Ys2 @ Xs ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_172_splice_Osimps_I2_J,axiom,
% 3.05/1.62 ! [X3: a,Xs: list_a,Ys2: list_a] :
% 3.05/1.62 ( ( splice_a @ ( cons_a @ X3 @ Xs ) @ Ys2 )
% 3.05/1.62 = ( cons_a @ X3 @ ( splice_a @ Ys2 @ Xs ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_173_splice_Osimps_I1_J,axiom,
% 3.05/1.62 ! [Ys2: list_list_a] :
% 3.05/1.62 ( ( splice_list_a @ nil_list_a @ Ys2 )
% 3.05/1.62 = Ys2 ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_174_splice_Osimps_I1_J,axiom,
% 3.05/1.62 ! [Ys2: list_a] :
% 3.05/1.62 ( ( splice_a @ nil_a @ Ys2 )
% 3.05/1.62 = Ys2 ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_175_rev__nonempty__induct,axiom,
% 3.05/1.62 ! [Xs: list_list_a,P: list_list_a > $o] :
% 3.05/1.62 ( ( Xs != nil_list_a )
% 3.05/1.62 => ( ! [X: list_a] : ( P @ ( cons_list_a @ X @ nil_list_a ) )
% 3.05/1.62 => ( ! [X: list_a,Xs2: list_list_a] :
% 3.05/1.62 ( ( Xs2 != nil_list_a )
% 3.05/1.62 => ( ( P @ Xs2 )
% 3.05/1.62 => ( P @ ( append_list_a @ Xs2 @ ( cons_list_a @ X @ nil_list_a ) ) ) ) )
% 3.05/1.62 => ( P @ Xs ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_176_rev__nonempty__induct,axiom,
% 3.05/1.62 ! [Xs: list_a,P: list_a > $o] :
% 3.05/1.62 ( ( Xs != nil_a )
% 3.05/1.62 => ( ! [X: a] : ( P @ ( cons_a @ X @ nil_a ) )
% 3.05/1.62 => ( ! [X: a,Xs2: list_a] :
% 3.05/1.62 ( ( Xs2 != nil_a )
% 3.05/1.62 => ( ( P @ Xs2 )
% 3.05/1.62 => ( P @ ( append_a @ Xs2 @ ( cons_a @ X @ nil_a ) ) ) ) )
% 3.05/1.62 => ( P @ Xs ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_177_append__eq__Cons__conv,axiom,
% 3.05/1.62 ! [Ys2: list_list_a,Zs2: list_list_a,X3: list_a,Xs: list_list_a] :
% 3.05/1.62 ( ( ( append_list_a @ Ys2 @ Zs2 )
% 3.05/1.62 = ( cons_list_a @ X3 @ Xs ) )
% 3.05/1.62 = ( ( ( Ys2 = nil_list_a )
% 3.05/1.62 & ( Zs2
% 3.05/1.62 = ( cons_list_a @ X3 @ Xs ) ) )
% 3.05/1.62 | ? [Ys4: list_list_a] :
% 3.05/1.62 ( ( Ys2
% 3.05/1.62 = ( cons_list_a @ X3 @ Ys4 ) )
% 3.05/1.62 & ( ( append_list_a @ Ys4 @ Zs2 )
% 3.05/1.62 = Xs ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_178_append__eq__Cons__conv,axiom,
% 3.05/1.62 ! [Ys2: list_a,Zs2: list_a,X3: a,Xs: list_a] :
% 3.05/1.62 ( ( ( append_a @ Ys2 @ Zs2 )
% 3.05/1.62 = ( cons_a @ X3 @ Xs ) )
% 3.05/1.62 = ( ( ( Ys2 = nil_a )
% 3.05/1.62 & ( Zs2
% 3.05/1.62 = ( cons_a @ X3 @ Xs ) ) )
% 3.05/1.62 | ? [Ys4: list_a] :
% 3.05/1.62 ( ( Ys2
% 3.05/1.62 = ( cons_a @ X3 @ Ys4 ) )
% 3.05/1.62 & ( ( append_a @ Ys4 @ Zs2 )
% 3.05/1.62 = Xs ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_179_Cons__eq__append__conv,axiom,
% 3.05/1.62 ! [X3: list_a,Xs: list_list_a,Ys2: list_list_a,Zs2: list_list_a] :
% 3.05/1.62 ( ( ( cons_list_a @ X3 @ Xs )
% 3.05/1.62 = ( append_list_a @ Ys2 @ Zs2 ) )
% 3.05/1.62 = ( ( ( Ys2 = nil_list_a )
% 3.05/1.62 & ( ( cons_list_a @ X3 @ Xs )
% 3.05/1.62 = Zs2 ) )
% 3.05/1.62 | ? [Ys4: list_list_a] :
% 3.05/1.62 ( ( ( cons_list_a @ X3 @ Ys4 )
% 3.05/1.62 = Ys2 )
% 3.05/1.62 & ( Xs
% 3.05/1.62 = ( append_list_a @ Ys4 @ Zs2 ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_180_Cons__eq__append__conv,axiom,
% 3.05/1.62 ! [X3: a,Xs: list_a,Ys2: list_a,Zs2: list_a] :
% 3.05/1.62 ( ( ( cons_a @ X3 @ Xs )
% 3.05/1.62 = ( append_a @ Ys2 @ Zs2 ) )
% 3.05/1.62 = ( ( ( Ys2 = nil_a )
% 3.05/1.62 & ( ( cons_a @ X3 @ Xs )
% 3.05/1.62 = Zs2 ) )
% 3.05/1.62 | ? [Ys4: list_a] :
% 3.05/1.62 ( ( ( cons_a @ X3 @ Ys4 )
% 3.05/1.62 = Ys2 )
% 3.05/1.62 & ( Xs
% 3.05/1.62 = ( append_a @ Ys4 @ Zs2 ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_181_rev__exhaust,axiom,
% 3.05/1.62 ! [Xs: list_list_a] :
% 3.05/1.62 ( ( Xs != nil_list_a )
% 3.05/1.62 => ~ ! [Ys3: list_list_a,Y3: list_a] :
% 3.05/1.62 ( Xs
% 3.05/1.62 != ( append_list_a @ Ys3 @ ( cons_list_a @ Y3 @ nil_list_a ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_182_rev__exhaust,axiom,
% 3.05/1.62 ! [Xs: list_a] :
% 3.05/1.62 ( ( Xs != nil_a )
% 3.05/1.62 => ~ ! [Ys3: list_a,Y3: a] :
% 3.05/1.62 ( Xs
% 3.05/1.62 != ( append_a @ Ys3 @ ( cons_a @ Y3 @ nil_a ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_183_rev__induct,axiom,
% 3.05/1.62 ! [P: list_list_a > $o,Xs: list_list_a] :
% 3.05/1.62 ( ( P @ nil_list_a )
% 3.05/1.62 => ( ! [X: list_a,Xs2: list_list_a] :
% 3.05/1.62 ( ( P @ Xs2 )
% 3.05/1.62 => ( P @ ( append_list_a @ Xs2 @ ( cons_list_a @ X @ nil_list_a ) ) ) )
% 3.05/1.62 => ( P @ Xs ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_184_rev__induct,axiom,
% 3.05/1.62 ! [P: list_a > $o,Xs: list_a] :
% 3.05/1.62 ( ( P @ nil_a )
% 3.05/1.62 => ( ! [X: a,Xs2: list_a] :
% 3.05/1.62 ( ( P @ Xs2 )
% 3.05/1.62 => ( P @ ( append_a @ Xs2 @ ( cons_a @ X @ nil_a ) ) ) )
% 3.05/1.62 => ( P @ Xs ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_185_append__eq__Cons,axiom,
% 3.05/1.62 ! [X3: list_a,Xs: list_list_a] :
% 3.05/1.62 ( ( append_list_a @ ( cons_list_a @ X3 @ nil_list_a ) @ Xs )
% 3.05/1.62 = ( cons_list_a @ X3 @ Xs ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_186_append__eq__Cons,axiom,
% 3.05/1.62 ! [X3: a,Xs: list_a] :
% 3.05/1.62 ( ( append_a @ ( cons_a @ X3 @ nil_a ) @ Xs )
% 3.05/1.62 = ( cons_a @ X3 @ Xs ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_187_lexordp__eq_OCons,axiom,
% 3.05/1.62 ! [X3: nat,Y: nat,Xs: list_nat,Ys2: list_nat] :
% 3.05/1.62 ( ( ord_less_nat @ X3 @ Y )
% 3.05/1.62 => ( ord_lexordp_eq_nat @ ( cons_nat @ X3 @ Xs ) @ ( cons_nat @ Y @ Ys2 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_188_lexordp__eq_OCons__eq,axiom,
% 3.05/1.62 ! [X3: nat,Y: nat,Xs: list_nat,Ys2: list_nat] :
% 3.05/1.62 ( ~ ( ord_less_nat @ X3 @ Y )
% 3.05/1.62 => ( ~ ( ord_less_nat @ Y @ X3 )
% 3.05/1.62 => ( ( ord_lexordp_eq_nat @ Xs @ Ys2 )
% 3.05/1.62 => ( ord_lexordp_eq_nat @ ( cons_nat @ X3 @ Xs ) @ ( cons_nat @ Y @ Ys2 ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_189_maps__simps_I1_J,axiom,
% 3.05/1.62 ! [F: a > list_a,X3: a,Xs: list_a] :
% 3.05/1.62 ( ( maps_a_a @ F @ ( cons_a @ X3 @ Xs ) )
% 3.05/1.62 = ( append_a @ ( F @ X3 ) @ ( maps_a_a @ F @ Xs ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_190_maps__simps_I1_J,axiom,
% 3.05/1.62 ! [F: a > list_list_a,X3: a,Xs: list_a] :
% 3.05/1.62 ( ( maps_a_list_a @ F @ ( cons_a @ X3 @ Xs ) )
% 3.05/1.62 = ( append_list_a @ ( F @ X3 ) @ ( maps_a_list_a @ F @ Xs ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_191_maps__simps_I1_J,axiom,
% 3.05/1.62 ! [F: list_a > list_a,X3: list_a,Xs: list_list_a] :
% 3.05/1.62 ( ( maps_list_a_a @ F @ ( cons_list_a @ X3 @ Xs ) )
% 3.05/1.62 = ( append_a @ ( F @ X3 ) @ ( maps_list_a_a @ F @ Xs ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_192_maps__simps_I1_J,axiom,
% 3.05/1.62 ! [F: list_a > list_list_a,X3: list_a,Xs: list_list_a] :
% 3.05/1.62 ( ( maps_list_a_list_a @ F @ ( cons_list_a @ X3 @ Xs ) )
% 3.05/1.62 = ( append_list_a @ ( F @ X3 ) @ ( maps_list_a_list_a @ F @ Xs ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_193_concat__eq__append__conv,axiom,
% 3.05/1.62 ! [Xss2: list_list_list_a,Ys2: list_list_a,Zs2: list_list_a] :
% 3.05/1.62 ( ( ( concat_list_a @ Xss2 )
% 3.05/1.62 = ( append_list_a @ Ys2 @ Zs2 ) )
% 3.05/1.62 = ( ( ( Xss2 = nil_list_list_a )
% 3.05/1.62 => ( ( Ys2 = nil_list_a )
% 3.05/1.62 & ( Zs2 = nil_list_a ) ) )
% 3.05/1.62 & ( ( Xss2 != nil_list_list_a )
% 3.05/1.62 => ? [Xss1: list_list_list_a,Xs3: list_list_a,Xs4: list_list_a,Xss22: list_list_list_a] :
% 3.05/1.62 ( ( Xss2
% 3.05/1.62 = ( append_list_list_a @ Xss1 @ ( cons_list_list_a @ ( append_list_a @ Xs3 @ Xs4 ) @ Xss22 ) ) )
% 3.05/1.62 & ( Ys2
% 3.05/1.62 = ( append_list_a @ ( concat_list_a @ Xss1 ) @ Xs3 ) )
% 3.05/1.62 & ( Zs2
% 3.05/1.62 = ( append_list_a @ Xs4 @ ( concat_list_a @ Xss22 ) ) ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_194_concat__eq__append__conv,axiom,
% 3.05/1.62 ! [Xss2: list_list_a,Ys2: list_a,Zs2: list_a] :
% 3.05/1.62 ( ( ( concat_a @ Xss2 )
% 3.05/1.62 = ( append_a @ Ys2 @ Zs2 ) )
% 3.05/1.62 = ( ( ( Xss2 = nil_list_a )
% 3.05/1.62 => ( ( Ys2 = nil_a )
% 3.05/1.62 & ( Zs2 = nil_a ) ) )
% 3.05/1.62 & ( ( Xss2 != nil_list_a )
% 3.05/1.62 => ? [Xss1: list_list_a,Xs3: list_a,Xs4: list_a,Xss22: list_list_a] :
% 3.05/1.62 ( ( Xss2
% 3.05/1.62 = ( append_list_a @ Xss1 @ ( cons_list_a @ ( append_a @ Xs3 @ Xs4 ) @ Xss22 ) ) )
% 3.05/1.62 & ( Ys2
% 3.05/1.62 = ( append_a @ ( concat_a @ Xss1 ) @ Xs3 ) )
% 3.05/1.62 & ( Zs2
% 3.05/1.62 = ( append_a @ Xs4 @ ( concat_a @ Xss22 ) ) ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_195_rotate1_Osimps_I2_J,axiom,
% 3.05/1.62 ! [X3: list_a,Xs: list_list_a] :
% 3.05/1.62 ( ( rotate1_list_a @ ( cons_list_a @ X3 @ Xs ) )
% 3.05/1.62 = ( append_list_a @ Xs @ ( cons_list_a @ X3 @ nil_list_a ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_196_rotate1_Osimps_I2_J,axiom,
% 3.05/1.62 ! [X3: a,Xs: list_a] :
% 3.05/1.62 ( ( rotate1_a @ ( cons_a @ X3 @ Xs ) )
% 3.05/1.62 = ( append_a @ Xs @ ( cons_a @ X3 @ nil_a ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_197_butlast__snoc,axiom,
% 3.05/1.62 ! [Xs: list_list_a,X3: list_a] :
% 3.05/1.62 ( ( butlast_list_a @ ( append_list_a @ Xs @ ( cons_list_a @ X3 @ nil_list_a ) ) )
% 3.05/1.62 = Xs ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_198_butlast__snoc,axiom,
% 3.05/1.62 ! [Xs: list_a,X3: a] :
% 3.05/1.62 ( ( butlast_a @ ( append_a @ Xs @ ( cons_a @ X3 @ nil_a ) ) )
% 3.05/1.62 = Xs ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_199_last__snoc,axiom,
% 3.05/1.62 ! [Xs: list_list_a,X3: list_a] :
% 3.05/1.62 ( ( last_list_a @ ( append_list_a @ Xs @ ( cons_list_a @ X3 @ nil_list_a ) ) )
% 3.05/1.62 = X3 ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_200_last__snoc,axiom,
% 3.05/1.62 ! [Xs: list_a,X3: a] :
% 3.05/1.62 ( ( last_a @ ( append_a @ Xs @ ( cons_a @ X3 @ nil_a ) ) )
% 3.05/1.62 = X3 ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_201_SuccI,axiom,
% 3.05/1.62 ! [Kl: list_list_a,K: list_a,Kl2: set_list_list_a] :
% 3.05/1.62 ( ( member_list_list_a @ ( append_list_a @ Kl @ ( cons_list_a @ K @ nil_list_a ) ) @ Kl2 )
% 3.05/1.62 => ( member_list_a2 @ K @ ( bNF_Gr1046450207list_a @ Kl2 @ Kl ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_202_SuccI,axiom,
% 3.05/1.62 ! [Kl: list_a,K: a,Kl2: set_list_a] :
% 3.05/1.62 ( ( member_list_a2 @ ( append_a @ Kl @ ( cons_a @ K @ nil_a ) ) @ Kl2 )
% 3.05/1.62 => ( member_a2 @ K @ ( bNF_Greatest_Succ_a @ Kl2 @ Kl ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_203_SuccD,axiom,
% 3.05/1.62 ! [K: list_a,Kl2: set_list_list_a,Kl: list_list_a] :
% 3.05/1.62 ( ( member_list_a2 @ K @ ( bNF_Gr1046450207list_a @ Kl2 @ Kl ) )
% 3.05/1.62 => ( member_list_list_a @ ( append_list_a @ Kl @ ( cons_list_a @ K @ nil_list_a ) ) @ Kl2 ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_204_SuccD,axiom,
% 3.05/1.62 ! [K: a,Kl2: set_list_a,Kl: list_a] :
% 3.05/1.62 ( ( member_a2 @ K @ ( bNF_Greatest_Succ_a @ Kl2 @ Kl ) )
% 3.05/1.62 => ( member_list_a2 @ ( append_a @ Kl @ ( cons_a @ K @ nil_a ) ) @ Kl2 ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_205_rotate1__is__Nil__conv,axiom,
% 3.05/1.62 ! [Xs: list_list_a] :
% 3.05/1.62 ( ( ( rotate1_list_a @ Xs )
% 3.05/1.62 = nil_list_a )
% 3.05/1.62 = ( Xs = nil_list_a ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_206_rotate1__is__Nil__conv,axiom,
% 3.05/1.62 ! [Xs: list_a] :
% 3.05/1.62 ( ( ( rotate1_a @ Xs )
% 3.05/1.62 = nil_a )
% 3.05/1.62 = ( Xs = nil_a ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_207_last__appendL,axiom,
% 3.05/1.62 ! [Ys2: list_list_a,Xs: list_list_a] :
% 3.05/1.62 ( ( Ys2 = nil_list_a )
% 3.05/1.62 => ( ( last_list_a @ ( append_list_a @ Xs @ Ys2 ) )
% 3.05/1.62 = ( last_list_a @ Xs ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_208_last__appendL,axiom,
% 3.05/1.62 ! [Ys2: list_a,Xs: list_a] :
% 3.05/1.62 ( ( Ys2 = nil_a )
% 3.05/1.62 => ( ( last_a @ ( append_a @ Xs @ Ys2 ) )
% 3.05/1.62 = ( last_a @ Xs ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_209_last__appendR,axiom,
% 3.05/1.62 ! [Ys2: list_list_a,Xs: list_list_a] :
% 3.05/1.62 ( ( Ys2 != nil_list_a )
% 3.05/1.62 => ( ( last_list_a @ ( append_list_a @ Xs @ Ys2 ) )
% 3.05/1.62 = ( last_list_a @ Ys2 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_210_last__appendR,axiom,
% 3.05/1.62 ! [Ys2: list_a,Xs: list_a] :
% 3.05/1.62 ( ( Ys2 != nil_a )
% 3.05/1.62 => ( ( last_a @ ( append_a @ Xs @ Ys2 ) )
% 3.05/1.62 = ( last_a @ Ys2 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_211_concat__append,axiom,
% 3.05/1.62 ! [Xs: list_list_list_a,Ys2: list_list_list_a] :
% 3.05/1.62 ( ( concat_list_a @ ( append_list_list_a @ Xs @ Ys2 ) )
% 3.05/1.62 = ( append_list_a @ ( concat_list_a @ Xs ) @ ( concat_list_a @ Ys2 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_212_concat__append,axiom,
% 3.05/1.62 ! [Xs: list_list_a,Ys2: list_list_a] :
% 3.05/1.62 ( ( concat_a @ ( append_list_a @ Xs @ Ys2 ) )
% 3.05/1.62 = ( append_a @ ( concat_a @ Xs ) @ ( concat_a @ Ys2 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_213_append__butlast__last__id,axiom,
% 3.05/1.62 ! [Xs: list_list_a] :
% 3.05/1.62 ( ( Xs != nil_list_a )
% 3.05/1.62 => ( ( append_list_a @ ( butlast_list_a @ Xs ) @ ( cons_list_a @ ( last_list_a @ Xs ) @ nil_list_a ) )
% 3.05/1.62 = Xs ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_214_append__butlast__last__id,axiom,
% 3.05/1.62 ! [Xs: list_a] :
% 3.05/1.62 ( ( Xs != nil_a )
% 3.05/1.62 => ( ( append_a @ ( butlast_a @ Xs ) @ ( cons_a @ ( last_a @ Xs ) @ nil_a ) )
% 3.05/1.62 = Xs ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_215_butlast_Osimps_I1_J,axiom,
% 3.05/1.62 ( ( butlast_list_a @ nil_list_a )
% 3.05/1.62 = nil_list_a ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_216_butlast_Osimps_I1_J,axiom,
% 3.05/1.62 ( ( butlast_a @ nil_a )
% 3.05/1.62 = nil_a ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_217_snoc__eq__iff__butlast,axiom,
% 3.05/1.62 ! [Xs: list_list_a,X3: list_a,Ys2: list_list_a] :
% 3.05/1.62 ( ( ( append_list_a @ Xs @ ( cons_list_a @ X3 @ nil_list_a ) )
% 3.05/1.62 = Ys2 )
% 3.05/1.62 = ( ( Ys2 != nil_list_a )
% 3.05/1.62 & ( ( butlast_list_a @ Ys2 )
% 3.05/1.62 = Xs )
% 3.05/1.62 & ( ( last_list_a @ Ys2 )
% 3.05/1.62 = X3 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_218_snoc__eq__iff__butlast,axiom,
% 3.05/1.62 ! [Xs: list_a,X3: a,Ys2: list_a] :
% 3.05/1.62 ( ( ( append_a @ Xs @ ( cons_a @ X3 @ nil_a ) )
% 3.05/1.62 = Ys2 )
% 3.05/1.62 = ( ( Ys2 != nil_a )
% 3.05/1.62 & ( ( butlast_a @ Ys2 )
% 3.05/1.62 = Xs )
% 3.05/1.62 & ( ( last_a @ Ys2 )
% 3.05/1.62 = X3 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_219_rotate1_Osimps_I1_J,axiom,
% 3.05/1.62 ( ( rotate1_list_a @ nil_list_a )
% 3.05/1.62 = nil_list_a ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_220_rotate1_Osimps_I1_J,axiom,
% 3.05/1.62 ( ( rotate1_a @ nil_a )
% 3.05/1.62 = nil_a ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_221_last_Osimps,axiom,
% 3.05/1.62 ! [Xs: list_list_a,X3: list_a] :
% 3.05/1.62 ( ( ( Xs = nil_list_a )
% 3.05/1.62 => ( ( last_list_a @ ( cons_list_a @ X3 @ Xs ) )
% 3.05/1.62 = X3 ) )
% 3.05/1.62 & ( ( Xs != nil_list_a )
% 3.05/1.62 => ( ( last_list_a @ ( cons_list_a @ X3 @ Xs ) )
% 3.05/1.62 = ( last_list_a @ Xs ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_222_last_Osimps,axiom,
% 3.05/1.62 ! [Xs: list_a,X3: a] :
% 3.05/1.62 ( ( ( Xs = nil_a )
% 3.05/1.62 => ( ( last_a @ ( cons_a @ X3 @ Xs ) )
% 3.05/1.62 = X3 ) )
% 3.05/1.62 & ( ( Xs != nil_a )
% 3.05/1.62 => ( ( last_a @ ( cons_a @ X3 @ Xs ) )
% 3.05/1.62 = ( last_a @ Xs ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_223_last__ConsL,axiom,
% 3.05/1.62 ! [Xs: list_list_a,X3: list_a] :
% 3.05/1.62 ( ( Xs = nil_list_a )
% 3.05/1.62 => ( ( last_list_a @ ( cons_list_a @ X3 @ Xs ) )
% 3.05/1.62 = X3 ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_224_last__ConsL,axiom,
% 3.05/1.62 ! [Xs: list_a,X3: a] :
% 3.05/1.62 ( ( Xs = nil_a )
% 3.05/1.62 => ( ( last_a @ ( cons_a @ X3 @ Xs ) )
% 3.05/1.62 = X3 ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_225_last__ConsR,axiom,
% 3.05/1.62 ! [Xs: list_list_a,X3: list_a] :
% 3.05/1.62 ( ( Xs != nil_list_a )
% 3.05/1.62 => ( ( last_list_a @ ( cons_list_a @ X3 @ Xs ) )
% 3.05/1.62 = ( last_list_a @ Xs ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_226_last__ConsR,axiom,
% 3.05/1.62 ! [Xs: list_a,X3: a] :
% 3.05/1.62 ( ( Xs != nil_a )
% 3.05/1.62 => ( ( last_a @ ( cons_a @ X3 @ Xs ) )
% 3.05/1.62 = ( last_a @ Xs ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_227_last__append,axiom,
% 3.05/1.62 ! [Ys2: list_list_a,Xs: list_list_a] :
% 3.05/1.62 ( ( ( Ys2 = nil_list_a )
% 3.05/1.62 => ( ( last_list_a @ ( append_list_a @ Xs @ Ys2 ) )
% 3.05/1.62 = ( last_list_a @ Xs ) ) )
% 3.05/1.62 & ( ( Ys2 != nil_list_a )
% 3.05/1.62 => ( ( last_list_a @ ( append_list_a @ Xs @ Ys2 ) )
% 3.05/1.62 = ( last_list_a @ Ys2 ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_228_last__append,axiom,
% 3.05/1.62 ! [Ys2: list_a,Xs: list_a] :
% 3.05/1.62 ( ( ( Ys2 = nil_a )
% 3.05/1.62 => ( ( last_a @ ( append_a @ Xs @ Ys2 ) )
% 3.05/1.62 = ( last_a @ Xs ) ) )
% 3.05/1.62 & ( ( Ys2 != nil_a )
% 3.05/1.62 => ( ( last_a @ ( append_a @ Xs @ Ys2 ) )
% 3.05/1.62 = ( last_a @ Ys2 ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_229_longest__common__suffix,axiom,
% 3.05/1.62 ! [Xs: list_list_a,Ys2: list_list_a] :
% 3.05/1.62 ? [Ss: list_list_a,Xs5: list_list_a,Ys5: list_list_a] :
% 3.05/1.62 ( ( Xs
% 3.05/1.62 = ( append_list_a @ Xs5 @ Ss ) )
% 3.05/1.62 & ( Ys2
% 3.05/1.62 = ( append_list_a @ Ys5 @ Ss ) )
% 3.05/1.62 & ( ( Xs5 = nil_list_a )
% 3.05/1.62 | ( Ys5 = nil_list_a )
% 3.05/1.62 | ( ( last_list_a @ Xs5 )
% 3.05/1.62 != ( last_list_a @ Ys5 ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_230_longest__common__suffix,axiom,
% 3.05/1.62 ! [Xs: list_a,Ys2: list_a] :
% 3.05/1.62 ? [Ss: list_a,Xs5: list_a,Ys5: list_a] :
% 3.05/1.62 ( ( Xs
% 3.05/1.62 = ( append_a @ Xs5 @ Ss ) )
% 3.05/1.62 & ( Ys2
% 3.05/1.62 = ( append_a @ Ys5 @ Ss ) )
% 3.05/1.62 & ( ( Xs5 = nil_a )
% 3.05/1.62 | ( Ys5 = nil_a )
% 3.05/1.62 | ( ( last_a @ Xs5 )
% 3.05/1.62 != ( last_a @ Ys5 ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_231_butlast_Osimps_I2_J,axiom,
% 3.05/1.62 ! [Xs: list_list_a,X3: list_a] :
% 3.05/1.62 ( ( ( Xs = nil_list_a )
% 3.05/1.62 => ( ( butlast_list_a @ ( cons_list_a @ X3 @ Xs ) )
% 3.05/1.62 = nil_list_a ) )
% 3.05/1.62 & ( ( Xs != nil_list_a )
% 3.05/1.62 => ( ( butlast_list_a @ ( cons_list_a @ X3 @ Xs ) )
% 3.05/1.62 = ( cons_list_a @ X3 @ ( butlast_list_a @ Xs ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_232_butlast_Osimps_I2_J,axiom,
% 3.05/1.62 ! [Xs: list_a,X3: a] :
% 3.05/1.62 ( ( ( Xs = nil_a )
% 3.05/1.62 => ( ( butlast_a @ ( cons_a @ X3 @ Xs ) )
% 3.05/1.62 = nil_a ) )
% 3.05/1.62 & ( ( Xs != nil_a )
% 3.05/1.62 => ( ( butlast_a @ ( cons_a @ X3 @ Xs ) )
% 3.05/1.62 = ( cons_a @ X3 @ ( butlast_a @ Xs ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_233_concat_Osimps_I1_J,axiom,
% 3.05/1.62 ( ( concat_list_a @ nil_list_list_a )
% 3.05/1.62 = nil_list_a ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_234_concat_Osimps_I1_J,axiom,
% 3.05/1.62 ( ( concat_a @ nil_list_a )
% 3.05/1.62 = nil_a ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_235_concat_Osimps_I2_J,axiom,
% 3.05/1.62 ! [X3: list_list_a,Xs: list_list_list_a] :
% 3.05/1.62 ( ( concat_list_a @ ( cons_list_list_a @ X3 @ Xs ) )
% 3.05/1.62 = ( append_list_a @ X3 @ ( concat_list_a @ Xs ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_236_concat_Osimps_I2_J,axiom,
% 3.05/1.62 ! [X3: list_a,Xs: list_list_a] :
% 3.05/1.62 ( ( concat_a @ ( cons_list_a @ X3 @ Xs ) )
% 3.05/1.62 = ( append_a @ X3 @ ( concat_a @ Xs ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_237_butlast__append,axiom,
% 3.05/1.62 ! [Ys2: list_list_a,Xs: list_list_a] :
% 3.05/1.62 ( ( ( Ys2 = nil_list_a )
% 3.05/1.62 => ( ( butlast_list_a @ ( append_list_a @ Xs @ Ys2 ) )
% 3.05/1.62 = ( butlast_list_a @ Xs ) ) )
% 3.05/1.62 & ( ( Ys2 != nil_list_a )
% 3.05/1.62 => ( ( butlast_list_a @ ( append_list_a @ Xs @ Ys2 ) )
% 3.05/1.62 = ( append_list_a @ Xs @ ( butlast_list_a @ Ys2 ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_238_butlast__append,axiom,
% 3.05/1.62 ! [Ys2: list_a,Xs: list_a] :
% 3.05/1.62 ( ( ( Ys2 = nil_a )
% 3.05/1.62 => ( ( butlast_a @ ( append_a @ Xs @ Ys2 ) )
% 3.05/1.62 = ( butlast_a @ Xs ) ) )
% 3.05/1.62 & ( ( Ys2 != nil_a )
% 3.05/1.62 => ( ( butlast_a @ ( append_a @ Xs @ Ys2 ) )
% 3.05/1.62 = ( append_a @ Xs @ ( butlast_a @ Ys2 ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_239_maps__simps_I2_J,axiom,
% 3.05/1.62 ! [F: a > list_list_a] :
% 3.05/1.62 ( ( maps_a_list_a @ F @ nil_a )
% 3.05/1.62 = nil_list_a ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_240_maps__simps_I2_J,axiom,
% 3.05/1.62 ! [F: list_a > list_a] :
% 3.05/1.62 ( ( maps_list_a_a @ F @ nil_list_a )
% 3.05/1.62 = nil_a ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_241_maps__simps_I2_J,axiom,
% 3.05/1.62 ! [F: list_a > list_list_a] :
% 3.05/1.62 ( ( maps_list_a_list_a @ F @ nil_list_a )
% 3.05/1.62 = nil_list_a ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_242_maps__simps_I2_J,axiom,
% 3.05/1.62 ! [F: a > list_a] :
% 3.05/1.62 ( ( maps_a_a @ F @ nil_a )
% 3.05/1.62 = nil_a ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_243_concat__eq__appendD,axiom,
% 3.05/1.62 ! [Xss2: list_list_list_a,Ys2: list_list_a,Zs2: list_list_a] :
% 3.05/1.62 ( ( ( concat_list_a @ Xss2 )
% 3.05/1.62 = ( append_list_a @ Ys2 @ Zs2 ) )
% 3.05/1.62 => ( ( Xss2 != nil_list_list_a )
% 3.05/1.62 => ? [Xss12: list_list_list_a,Xs2: list_list_a,Xs5: list_list_a,Xss23: list_list_list_a] :
% 3.05/1.62 ( ( Xss2
% 3.05/1.62 = ( append_list_list_a @ Xss12 @ ( cons_list_list_a @ ( append_list_a @ Xs2 @ Xs5 ) @ Xss23 ) ) )
% 3.05/1.62 & ( Ys2
% 3.05/1.62 = ( append_list_a @ ( concat_list_a @ Xss12 ) @ Xs2 ) )
% 3.05/1.62 & ( Zs2
% 3.05/1.62 = ( append_list_a @ Xs5 @ ( concat_list_a @ Xss23 ) ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_244_concat__eq__appendD,axiom,
% 3.05/1.62 ! [Xss2: list_list_a,Ys2: list_a,Zs2: list_a] :
% 3.05/1.62 ( ( ( concat_a @ Xss2 )
% 3.05/1.62 = ( append_a @ Ys2 @ Zs2 ) )
% 3.05/1.62 => ( ( Xss2 != nil_list_a )
% 3.05/1.62 => ? [Xss12: list_list_a,Xs2: list_a,Xs5: list_a,Xss23: list_list_a] :
% 3.05/1.62 ( ( Xss2
% 3.05/1.62 = ( append_list_a @ Xss12 @ ( cons_list_a @ ( append_a @ Xs2 @ Xs5 ) @ Xss23 ) ) )
% 3.05/1.62 & ( Ys2
% 3.05/1.62 = ( append_a @ ( concat_a @ Xss12 ) @ Xs2 ) )
% 3.05/1.62 & ( Zs2
% 3.05/1.62 = ( append_a @ Xs5 @ ( concat_a @ Xss23 ) ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_245_empty__Shift,axiom,
% 3.05/1.62 ! [Kl2: set_list_list_a,K: list_a] :
% 3.05/1.62 ( ( member_list_list_a @ nil_list_a @ Kl2 )
% 3.05/1.62 => ( ( member_list_a2 @ K @ ( bNF_Gr1046450207list_a @ Kl2 @ nil_list_a ) )
% 3.05/1.62 => ( member_list_list_a @ nil_list_a @ ( bNF_Gr1972240547list_a @ Kl2 @ K ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_246_empty__Shift,axiom,
% 3.05/1.62 ! [Kl2: set_list_a,K: a] :
% 3.05/1.62 ( ( member_list_a2 @ nil_a @ Kl2 )
% 3.05/1.62 => ( ( member_a2 @ K @ ( bNF_Greatest_Succ_a @ Kl2 @ nil_a ) )
% 3.05/1.62 => ( member_list_a2 @ nil_a @ ( bNF_Greatest_Shift_a @ Kl2 @ K ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_247_Succ__Shift,axiom,
% 3.05/1.62 ! [Kl2: set_list_list_a,K: list_a,Kl: list_list_a] :
% 3.05/1.62 ( ( bNF_Gr1046450207list_a @ ( bNF_Gr1972240547list_a @ Kl2 @ K ) @ Kl )
% 3.05/1.62 = ( bNF_Gr1046450207list_a @ Kl2 @ ( cons_list_a @ K @ Kl ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_248_Succ__Shift,axiom,
% 3.05/1.62 ! [Kl2: set_list_a,K: a,Kl: list_a] :
% 3.05/1.62 ( ( bNF_Greatest_Succ_a @ ( bNF_Greatest_Shift_a @ Kl2 @ K ) @ Kl )
% 3.05/1.62 = ( bNF_Greatest_Succ_a @ Kl2 @ ( cons_a @ K @ Kl ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_249_concat__conv__foldr,axiom,
% 3.05/1.62 ( concat_list_a
% 3.05/1.62 = ( ^ [Xss3: list_list_list_a] : ( foldr_769741863list_a @ append_list_a @ Xss3 @ nil_list_a ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_250_concat__conv__foldr,axiom,
% 3.05/1.62 ( concat_a
% 3.05/1.62 = ( ^ [Xss3: list_list_a] : ( foldr_list_a_list_a @ append_a @ Xss3 @ nil_a ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_251_foldr__append,axiom,
% 3.05/1.62 ! [F: list_a > list_a > list_a,Xs: list_list_a,Ys2: list_list_a,A3: list_a] :
% 3.05/1.62 ( ( foldr_list_a_list_a @ F @ ( append_list_a @ Xs @ Ys2 ) @ A3 )
% 3.05/1.62 = ( foldr_list_a_list_a @ F @ Xs @ ( foldr_list_a_list_a @ F @ Ys2 @ A3 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_252_ShiftD,axiom,
% 3.05/1.62 ! [Kl: list_list_a,Kl2: set_list_list_a,K: list_a] :
% 3.05/1.62 ( ( member_list_list_a @ Kl @ ( bNF_Gr1972240547list_a @ Kl2 @ K ) )
% 3.05/1.62 => ( member_list_list_a @ ( cons_list_a @ K @ Kl ) @ Kl2 ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_253_ShiftD,axiom,
% 3.05/1.62 ! [Kl: list_a,Kl2: set_list_a,K: a] :
% 3.05/1.62 ( ( member_list_a2 @ Kl @ ( bNF_Greatest_Shift_a @ Kl2 @ K ) )
% 3.05/1.62 => ( member_list_a2 @ ( cons_a @ K @ Kl ) @ Kl2 ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_254_list__strict__asc__def,axiom,
% 3.05/1.62 ( list_strict_asc_nat
% 3.05/1.62 = ( list_ord_nat @ ord_less_nat ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_255_lexordp__iff,axiom,
% 3.05/1.62 ( ord_lexordp_nat
% 3.05/1.62 = ( ^ [Xs3: list_nat,Ys: list_nat] :
% 3.05/1.62 ( ? [X4: nat,Vs: list_nat] :
% 3.05/1.62 ( Ys
% 3.05/1.62 = ( append_nat @ Xs3 @ ( cons_nat @ X4 @ Vs ) ) )
% 3.05/1.62 | ? [Us: list_nat,A5: nat,B2: nat,Vs: list_nat,Ws: list_nat] :
% 3.05/1.62 ( ( ord_less_nat @ A5 @ B2 )
% 3.05/1.62 & ( Xs3
% 3.05/1.62 = ( append_nat @ Us @ ( cons_nat @ A5 @ Vs ) ) )
% 3.05/1.62 & ( Ys
% 3.05/1.62 = ( append_nat @ Us @ ( cons_nat @ B2 @ Ws ) ) ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_256_lexordp__append__left__rightI,axiom,
% 3.05/1.62 ! [X3: nat,Y: nat,Us2: list_nat,Xs: list_nat,Ys2: list_nat] :
% 3.05/1.62 ( ( ord_less_nat @ X3 @ Y )
% 3.05/1.62 => ( ord_lexordp_nat @ ( append_nat @ Us2 @ ( cons_nat @ X3 @ Xs ) ) @ ( append_nat @ Us2 @ ( cons_nat @ Y @ Ys2 ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_257_lexordp__simps_I3_J,axiom,
% 3.05/1.62 ! [X3: nat,Xs: list_nat,Y: nat,Ys2: list_nat] :
% 3.05/1.62 ( ( ord_lexordp_nat @ ( cons_nat @ X3 @ Xs ) @ ( cons_nat @ Y @ Ys2 ) )
% 3.05/1.62 = ( ( ord_less_nat @ X3 @ Y )
% 3.05/1.62 | ( ~ ( ord_less_nat @ Y @ X3 )
% 3.05/1.62 & ( ord_lexordp_nat @ Xs @ Ys2 ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_258_hd__append2,axiom,
% 3.05/1.62 ! [Xs: list_list_a,Ys2: list_list_a] :
% 3.05/1.62 ( ( Xs != nil_list_a )
% 3.05/1.62 => ( ( hd_list_a @ ( append_list_a @ Xs @ Ys2 ) )
% 3.05/1.62 = ( hd_list_a @ Xs ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_259_hd__append2,axiom,
% 3.05/1.62 ! [Xs: list_a,Ys2: list_a] :
% 3.05/1.62 ( ( Xs != nil_a )
% 3.05/1.62 => ( ( hd_a @ ( append_a @ Xs @ Ys2 ) )
% 3.05/1.62 = ( hd_a @ Xs ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_260_lexordp__irreflexive,axiom,
% 3.05/1.62 ! [Xs: list_nat] :
% 3.05/1.62 ( ! [X: nat] :
% 3.05/1.62 ~ ( ord_less_nat @ X @ X )
% 3.05/1.62 => ~ ( ord_lexordp_nat @ Xs @ Xs ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_261_list_Osel_I1_J,axiom,
% 3.05/1.62 ! [X21: list_a,X22: list_list_a] :
% 3.05/1.62 ( ( hd_list_a @ ( cons_list_a @ X21 @ X22 ) )
% 3.05/1.62 = X21 ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_262_list_Osel_I1_J,axiom,
% 3.05/1.62 ! [X21: a,X22: list_a] :
% 3.05/1.62 ( ( hd_a @ ( cons_a @ X21 @ X22 ) )
% 3.05/1.62 = X21 ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_263_hd__concat,axiom,
% 3.05/1.62 ! [Xs: list_list_list_a] :
% 3.05/1.62 ( ( Xs != nil_list_list_a )
% 3.05/1.62 => ( ( ( hd_list_list_a @ Xs )
% 3.05/1.62 != nil_list_a )
% 3.05/1.62 => ( ( hd_list_a @ ( concat_list_a @ Xs ) )
% 3.05/1.62 = ( hd_list_a @ ( hd_list_list_a @ Xs ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_264_hd__concat,axiom,
% 3.05/1.62 ! [Xs: list_list_a] :
% 3.05/1.62 ( ( Xs != nil_list_a )
% 3.05/1.62 => ( ( ( hd_list_a @ Xs )
% 3.05/1.62 != nil_a )
% 3.05/1.62 => ( ( hd_a @ ( concat_a @ Xs ) )
% 3.05/1.62 = ( hd_a @ ( hd_list_a @ Xs ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_265_hd__append,axiom,
% 3.05/1.62 ! [Xs: list_list_a,Ys2: list_list_a] :
% 3.05/1.62 ( ( ( Xs = nil_list_a )
% 3.05/1.62 => ( ( hd_list_a @ ( append_list_a @ Xs @ Ys2 ) )
% 3.05/1.62 = ( hd_list_a @ Ys2 ) ) )
% 3.05/1.62 & ( ( Xs != nil_list_a )
% 3.05/1.62 => ( ( hd_list_a @ ( append_list_a @ Xs @ Ys2 ) )
% 3.05/1.62 = ( hd_list_a @ Xs ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_266_hd__append,axiom,
% 3.05/1.62 ! [Xs: list_a,Ys2: list_a] :
% 3.05/1.62 ( ( ( Xs = nil_a )
% 3.05/1.62 => ( ( hd_a @ ( append_a @ Xs @ Ys2 ) )
% 3.05/1.62 = ( hd_a @ Ys2 ) ) )
% 3.05/1.62 & ( ( Xs != nil_a )
% 3.05/1.62 => ( ( hd_a @ ( append_a @ Xs @ Ys2 ) )
% 3.05/1.62 = ( hd_a @ Xs ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_267_longest__common__prefix,axiom,
% 3.05/1.62 ! [Xs: list_list_a,Ys2: list_list_a] :
% 3.05/1.62 ? [Ps: list_list_a,Xs5: list_list_a,Ys5: list_list_a] :
% 3.05/1.62 ( ( Xs
% 3.05/1.62 = ( append_list_a @ Ps @ Xs5 ) )
% 3.05/1.62 & ( Ys2
% 3.05/1.62 = ( append_list_a @ Ps @ Ys5 ) )
% 3.05/1.62 & ( ( Xs5 = nil_list_a )
% 3.05/1.62 | ( Ys5 = nil_list_a )
% 3.05/1.62 | ( ( hd_list_a @ Xs5 )
% 3.05/1.62 != ( hd_list_a @ Ys5 ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_268_longest__common__prefix,axiom,
% 3.05/1.62 ! [Xs: list_a,Ys2: list_a] :
% 3.05/1.62 ? [Ps: list_a,Xs5: list_a,Ys5: list_a] :
% 3.05/1.62 ( ( Xs
% 3.05/1.62 = ( append_a @ Ps @ Xs5 ) )
% 3.05/1.62 & ( Ys2
% 3.05/1.62 = ( append_a @ Ps @ Ys5 ) )
% 3.05/1.62 & ( ( Xs5 = nil_a )
% 3.05/1.62 | ( Ys5 = nil_a )
% 3.05/1.62 | ( ( hd_a @ Xs5 )
% 3.05/1.62 != ( hd_a @ Ys5 ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_269_lexordp_OCons,axiom,
% 3.05/1.62 ! [X3: nat,Y: nat,Xs: list_nat,Ys2: list_nat] :
% 3.05/1.62 ( ( ord_less_nat @ X3 @ Y )
% 3.05/1.62 => ( ord_lexordp_nat @ ( cons_nat @ X3 @ Xs ) @ ( cons_nat @ Y @ Ys2 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_270_lexordp_OCons__eq,axiom,
% 3.05/1.62 ! [X3: nat,Y: nat,Xs: list_nat,Ys2: list_nat] :
% 3.05/1.62 ( ~ ( ord_less_nat @ X3 @ Y )
% 3.05/1.62 => ( ~ ( ord_less_nat @ Y @ X3 )
% 3.05/1.62 => ( ( ord_lexordp_nat @ Xs @ Ys2 )
% 3.05/1.62 => ( ord_lexordp_nat @ ( cons_nat @ X3 @ Xs ) @ ( cons_nat @ Y @ Ys2 ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_271_lexordp__append__leftD,axiom,
% 3.05/1.62 ! [Xs: list_nat,Us2: list_nat,Vs2: list_nat] :
% 3.05/1.62 ( ( ord_lexordp_nat @ ( append_nat @ Xs @ Us2 ) @ ( append_nat @ Xs @ Vs2 ) )
% 3.05/1.62 => ( ! [A: nat] :
% 3.05/1.62 ~ ( ord_less_nat @ A @ A )
% 3.05/1.62 => ( ord_lexordp_nat @ Us2 @ Vs2 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_272_lexordp_Ocases,axiom,
% 3.05/1.62 ! [A1: list_nat,A2: list_nat] :
% 3.05/1.62 ( ( ord_lexordp_nat @ A1 @ A2 )
% 3.05/1.62 => ( ( ( A1 = nil_nat )
% 3.05/1.62 => ! [Y3: nat,Ys3: list_nat] :
% 3.05/1.62 ( A2
% 3.05/1.62 != ( cons_nat @ Y3 @ Ys3 ) ) )
% 3.05/1.62 => ( ! [X: nat] :
% 3.05/1.62 ( ? [Xs2: list_nat] :
% 3.05/1.62 ( A1
% 3.05/1.62 = ( cons_nat @ X @ Xs2 ) )
% 3.05/1.62 => ! [Y3: nat] :
% 3.05/1.62 ( ? [Ys3: list_nat] :
% 3.05/1.62 ( A2
% 3.05/1.62 = ( cons_nat @ Y3 @ Ys3 ) )
% 3.05/1.62 => ~ ( ord_less_nat @ X @ Y3 ) ) )
% 3.05/1.62 => ~ ! [X: nat,Y3: nat,Xs2: list_nat] :
% 3.05/1.62 ( ( A1
% 3.05/1.62 = ( cons_nat @ X @ Xs2 ) )
% 3.05/1.62 => ! [Ys3: list_nat] :
% 3.05/1.62 ( ( A2
% 3.05/1.62 = ( cons_nat @ Y3 @ Ys3 ) )
% 3.05/1.62 => ( ~ ( ord_less_nat @ X @ Y3 )
% 3.05/1.62 => ( ~ ( ord_less_nat @ Y3 @ X )
% 3.05/1.62 => ~ ( ord_lexordp_nat @ Xs2 @ Ys3 ) ) ) ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_273_lexordp_Osimps,axiom,
% 3.05/1.62 ( ord_lexordp_nat
% 3.05/1.62 = ( ^ [A12: list_nat,A22: list_nat] :
% 3.05/1.62 ( ? [Y2: nat,Ys: list_nat] :
% 3.05/1.62 ( ( A12 = nil_nat )
% 3.05/1.62 & ( A22
% 3.05/1.62 = ( cons_nat @ Y2 @ Ys ) ) )
% 3.05/1.62 | ? [X4: nat,Y2: nat,Xs3: list_nat,Ys: list_nat] :
% 3.05/1.62 ( ( A12
% 3.05/1.62 = ( cons_nat @ X4 @ Xs3 ) )
% 3.05/1.62 & ( A22
% 3.05/1.62 = ( cons_nat @ Y2 @ Ys ) )
% 3.05/1.62 & ( ord_less_nat @ X4 @ Y2 ) )
% 3.05/1.62 | ? [X4: nat,Y2: nat,Xs3: list_nat,Ys: list_nat] :
% 3.05/1.62 ( ( A12
% 3.05/1.62 = ( cons_nat @ X4 @ Xs3 ) )
% 3.05/1.62 & ( A22
% 3.05/1.62 = ( cons_nat @ Y2 @ Ys ) )
% 3.05/1.62 & ~ ( ord_less_nat @ X4 @ Y2 )
% 3.05/1.62 & ~ ( ord_less_nat @ Y2 @ X4 )
% 3.05/1.62 & ( ord_lexordp_nat @ Xs3 @ Ys ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_274_lexordp_Oinducts,axiom,
% 3.05/1.62 ! [X12: list_nat,X23: list_nat,P: list_nat > list_nat > $o] :
% 3.05/1.62 ( ( ord_lexordp_nat @ X12 @ X23 )
% 3.05/1.62 => ( ! [Y3: nat,Ys3: list_nat] : ( P @ nil_nat @ ( cons_nat @ Y3 @ Ys3 ) )
% 3.05/1.62 => ( ! [X: nat,Y3: nat,Xs2: list_nat,Ys3: list_nat] :
% 3.05/1.62 ( ( ord_less_nat @ X @ Y3 )
% 3.05/1.62 => ( P @ ( cons_nat @ X @ Xs2 ) @ ( cons_nat @ Y3 @ Ys3 ) ) )
% 3.05/1.62 => ( ! [X: nat,Y3: nat,Xs2: list_nat,Ys3: list_nat] :
% 3.05/1.62 ( ~ ( ord_less_nat @ X @ Y3 )
% 3.05/1.62 => ( ~ ( ord_less_nat @ Y3 @ X )
% 3.05/1.62 => ( ( ord_lexordp_nat @ Xs2 @ Ys3 )
% 3.05/1.62 => ( ( P @ Xs2 @ Ys3 )
% 3.05/1.62 => ( P @ ( cons_nat @ X @ Xs2 ) @ ( cons_nat @ Y3 @ Ys3 ) ) ) ) ) )
% 3.05/1.62 => ( P @ X12 @ X23 ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_275_lexordp__cases,axiom,
% 3.05/1.62 ! [Xs: list_nat,Ys2: list_nat] :
% 3.05/1.62 ( ( ord_lexordp_nat @ Xs @ Ys2 )
% 3.05/1.62 => ( ( ( Xs = nil_nat )
% 3.05/1.62 => ! [Y3: nat,Ys5: list_nat] :
% 3.05/1.62 ( Ys2
% 3.05/1.62 != ( cons_nat @ Y3 @ Ys5 ) ) )
% 3.05/1.62 => ( ! [X: nat] :
% 3.05/1.62 ( ? [Xs5: list_nat] :
% 3.05/1.62 ( Xs
% 3.05/1.62 = ( cons_nat @ X @ Xs5 ) )
% 3.05/1.62 => ! [Y3: nat] :
% 3.05/1.62 ( ? [Ys5: list_nat] :
% 3.05/1.62 ( Ys2
% 3.05/1.62 = ( cons_nat @ Y3 @ Ys5 ) )
% 3.05/1.62 => ~ ( ord_less_nat @ X @ Y3 ) ) )
% 3.05/1.62 => ~ ! [X: nat,Xs5: list_nat] :
% 3.05/1.62 ( ( Xs
% 3.05/1.62 = ( cons_nat @ X @ Xs5 ) )
% 3.05/1.62 => ! [Ys5: list_nat] :
% 3.05/1.62 ( ( Ys2
% 3.05/1.62 = ( cons_nat @ X @ Ys5 ) )
% 3.05/1.62 => ~ ( ord_lexordp_nat @ Xs5 @ Ys5 ) ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_276_lexordp__induct,axiom,
% 3.05/1.62 ! [Xs: list_nat,Ys2: list_nat,P: list_nat > list_nat > $o] :
% 3.05/1.62 ( ( ord_lexordp_nat @ Xs @ Ys2 )
% 3.05/1.62 => ( ! [Y3: nat,Ys3: list_nat] : ( P @ nil_nat @ ( cons_nat @ Y3 @ Ys3 ) )
% 3.05/1.62 => ( ! [X: nat,Xs2: list_nat,Y3: nat,Ys3: list_nat] :
% 3.05/1.62 ( ( ord_less_nat @ X @ Y3 )
% 3.05/1.62 => ( P @ ( cons_nat @ X @ Xs2 ) @ ( cons_nat @ Y3 @ Ys3 ) ) )
% 3.05/1.62 => ( ! [X: nat,Xs2: list_nat,Ys3: list_nat] :
% 3.05/1.62 ( ( ord_lexordp_nat @ Xs2 @ Ys3 )
% 3.05/1.62 => ( ( P @ Xs2 @ Ys3 )
% 3.05/1.62 => ( P @ ( cons_nat @ X @ Xs2 ) @ ( cons_nat @ X @ Ys3 ) ) ) )
% 3.05/1.62 => ( P @ Xs @ Ys2 ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_277_distinct__adj__append__iff,axiom,
% 3.05/1.62 ! [Xs: list_list_a,Ys2: list_list_a] :
% 3.05/1.62 ( ( distinct_adj_list_a @ ( append_list_a @ Xs @ Ys2 ) )
% 3.05/1.62 = ( ( distinct_adj_list_a @ Xs )
% 3.05/1.62 & ( distinct_adj_list_a @ Ys2 )
% 3.05/1.62 & ( ( Xs = nil_list_a )
% 3.05/1.62 | ( Ys2 = nil_list_a )
% 3.05/1.62 | ( ( last_list_a @ Xs )
% 3.05/1.62 != ( hd_list_a @ Ys2 ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_278_distinct__adj__append__iff,axiom,
% 3.05/1.62 ! [Xs: list_a,Ys2: list_a] :
% 3.05/1.62 ( ( distinct_adj_a @ ( append_a @ Xs @ Ys2 ) )
% 3.05/1.62 = ( ( distinct_adj_a @ Xs )
% 3.05/1.62 & ( distinct_adj_a @ Ys2 )
% 3.05/1.62 & ( ( Xs = nil_a )
% 3.05/1.62 | ( Ys2 = nil_a )
% 3.05/1.62 | ( ( last_a @ Xs )
% 3.05/1.62 != ( hd_a @ Ys2 ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_279_rotate1__hd__tl,axiom,
% 3.05/1.62 ! [Xs: list_list_a] :
% 3.05/1.62 ( ( Xs != nil_list_a )
% 3.05/1.62 => ( ( rotate1_list_a @ Xs )
% 3.05/1.62 = ( append_list_a @ ( tl_list_a @ Xs ) @ ( cons_list_a @ ( hd_list_a @ Xs ) @ nil_list_a ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_280_rotate1__hd__tl,axiom,
% 3.05/1.62 ! [Xs: list_a] :
% 3.05/1.62 ( ( Xs != nil_a )
% 3.05/1.62 => ( ( rotate1_a @ Xs )
% 3.05/1.62 = ( append_a @ ( tl_a @ Xs ) @ ( cons_a @ ( hd_a @ Xs ) @ nil_a ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_281_successively__append__iff,axiom,
% 3.05/1.62 ! [P: list_a > list_a > $o,Xs: list_list_a,Ys2: list_list_a] :
% 3.05/1.62 ( ( successively_list_a @ P @ ( append_list_a @ Xs @ Ys2 ) )
% 3.05/1.62 = ( ( successively_list_a @ P @ Xs )
% 3.05/1.62 & ( successively_list_a @ P @ Ys2 )
% 3.05/1.62 & ( ( Xs = nil_list_a )
% 3.05/1.62 | ( Ys2 = nil_list_a )
% 3.05/1.62 | ( P @ ( last_list_a @ Xs ) @ ( hd_list_a @ Ys2 ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_282_successively__append__iff,axiom,
% 3.05/1.62 ! [P: a > a > $o,Xs: list_a,Ys2: list_a] :
% 3.05/1.62 ( ( successively_a @ P @ ( append_a @ Xs @ Ys2 ) )
% 3.05/1.62 = ( ( successively_a @ P @ Xs )
% 3.05/1.62 & ( successively_a @ P @ Ys2 )
% 3.05/1.62 & ( ( Xs = nil_a )
% 3.05/1.62 | ( Ys2 = nil_a )
% 3.05/1.62 | ( P @ ( last_a @ Xs ) @ ( hd_a @ Ys2 ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_283_distinct__adj__Cons__Cons,axiom,
% 3.05/1.62 ! [X3: list_a,Y: list_a,Xs: list_list_a] :
% 3.05/1.62 ( ( distinct_adj_list_a @ ( cons_list_a @ X3 @ ( cons_list_a @ Y @ Xs ) ) )
% 3.05/1.62 = ( ( X3 != Y )
% 3.05/1.62 & ( distinct_adj_list_a @ ( cons_list_a @ Y @ Xs ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_284_distinct__adj__Cons__Cons,axiom,
% 3.05/1.62 ! [X3: a,Y: a,Xs: list_a] :
% 3.05/1.62 ( ( distinct_adj_a @ ( cons_a @ X3 @ ( cons_a @ Y @ Xs ) ) )
% 3.05/1.62 = ( ( X3 != Y )
% 3.05/1.62 & ( distinct_adj_a @ ( cons_a @ Y @ Xs ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_285_tl__append2,axiom,
% 3.05/1.62 ! [Xs: list_list_a,Ys2: list_list_a] :
% 3.05/1.62 ( ( Xs != nil_list_a )
% 3.05/1.62 => ( ( tl_list_a @ ( append_list_a @ Xs @ Ys2 ) )
% 3.05/1.62 = ( append_list_a @ ( tl_list_a @ Xs ) @ Ys2 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_286_tl__append2,axiom,
% 3.05/1.62 ! [Xs: list_a,Ys2: list_a] :
% 3.05/1.62 ( ( Xs != nil_a )
% 3.05/1.62 => ( ( tl_a @ ( append_a @ Xs @ Ys2 ) )
% 3.05/1.62 = ( append_a @ ( tl_a @ Xs ) @ Ys2 ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_287_hd__Cons__tl,axiom,
% 3.05/1.62 ! [Xs: list_list_a] :
% 3.05/1.62 ( ( Xs != nil_list_a )
% 3.05/1.62 => ( ( cons_list_a @ ( hd_list_a @ Xs ) @ ( tl_list_a @ Xs ) )
% 3.05/1.62 = Xs ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_288_hd__Cons__tl,axiom,
% 3.05/1.62 ! [Xs: list_a] :
% 3.05/1.62 ( ( Xs != nil_a )
% 3.05/1.62 => ( ( cons_a @ ( hd_a @ Xs ) @ ( tl_a @ Xs ) )
% 3.05/1.62 = Xs ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_289_list_Ocollapse,axiom,
% 3.05/1.62 ! [List: list_list_a] :
% 3.05/1.62 ( ( List != nil_list_a )
% 3.05/1.62 => ( ( cons_list_a @ ( hd_list_a @ List ) @ ( tl_list_a @ List ) )
% 3.05/1.62 = List ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_290_list_Ocollapse,axiom,
% 3.05/1.62 ! [List: list_a] :
% 3.05/1.62 ( ( List != nil_a )
% 3.05/1.62 => ( ( cons_a @ ( hd_a @ List ) @ ( tl_a @ List ) )
% 3.05/1.62 = List ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_291_list_Osel_I3_J,axiom,
% 3.05/1.62 ! [X21: list_a,X22: list_list_a] :
% 3.05/1.62 ( ( tl_list_a @ ( cons_list_a @ X21 @ X22 ) )
% 3.05/1.62 = X22 ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_292_list_Osel_I3_J,axiom,
% 3.05/1.62 ! [X21: a,X22: list_a] :
% 3.05/1.62 ( ( tl_a @ ( cons_a @ X21 @ X22 ) )
% 3.05/1.62 = X22 ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_293_list_Osel_I2_J,axiom,
% 3.05/1.62 ( ( tl_list_a @ nil_list_a )
% 3.05/1.62 = nil_list_a ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_294_list_Osel_I2_J,axiom,
% 3.05/1.62 ( ( tl_a @ nil_a )
% 3.05/1.62 = nil_a ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_295_successively_Oelims_I3_J,axiom,
% 3.05/1.62 ! [X3: list_a > list_a > $o,Xa: list_list_a] :
% 3.05/1.62 ( ~ ( successively_list_a @ X3 @ Xa )
% 3.05/1.62 => ~ ! [X: list_a,Y3: list_a,Xs2: list_list_a] :
% 3.05/1.62 ( ( Xa
% 3.05/1.62 = ( cons_list_a @ X @ ( cons_list_a @ Y3 @ Xs2 ) ) )
% 3.05/1.62 => ( ( X3 @ X @ Y3 )
% 3.05/1.62 & ( successively_list_a @ X3 @ ( cons_list_a @ Y3 @ Xs2 ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_296_successively_Oelims_I3_J,axiom,
% 3.05/1.62 ! [X3: a > a > $o,Xa: list_a] :
% 3.05/1.62 ( ~ ( successively_a @ X3 @ Xa )
% 3.05/1.62 => ~ ! [X: a,Y3: a,Xs2: list_a] :
% 3.05/1.62 ( ( Xa
% 3.05/1.62 = ( cons_a @ X @ ( cons_a @ Y3 @ Xs2 ) ) )
% 3.05/1.62 => ( ( X3 @ X @ Y3 )
% 3.05/1.62 & ( successively_a @ X3 @ ( cons_a @ Y3 @ Xs2 ) ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_297_successively_Osimps_I3_J,axiom,
% 3.05/1.62 ! [P: list_a > list_a > $o,X3: list_a,Y: list_a,Xs: list_list_a] :
% 3.05/1.62 ( ( successively_list_a @ P @ ( cons_list_a @ X3 @ ( cons_list_a @ Y @ Xs ) ) )
% 3.05/1.62 = ( ( P @ X3 @ Y )
% 3.05/1.62 & ( successively_list_a @ P @ ( cons_list_a @ Y @ Xs ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_298_successively_Osimps_I3_J,axiom,
% 3.05/1.62 ! [P: a > a > $o,X3: a,Y: a,Xs: list_a] :
% 3.05/1.62 ( ( successively_a @ P @ ( cons_a @ X3 @ ( cons_a @ Y @ Xs ) ) )
% 3.05/1.62 = ( ( P @ X3 @ Y )
% 3.05/1.62 & ( successively_a @ P @ ( cons_a @ Y @ Xs ) ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_299_successively_Osimps_I1_J,axiom,
% 3.05/1.62 ! [P: list_a > list_a > $o] : ( successively_list_a @ P @ nil_list_a ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_300_successively_Osimps_I1_J,axiom,
% 3.05/1.62 ! [P: a > a > $o] : ( successively_a @ P @ nil_a ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_301_distinct__adj__appendD1,axiom,
% 3.05/1.62 ! [Xs: list_list_a,Ys2: list_list_a] :
% 3.05/1.62 ( ( distinct_adj_list_a @ ( append_list_a @ Xs @ Ys2 ) )
% 3.05/1.62 => ( distinct_adj_list_a @ Xs ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_302_distinct__adj__appendD1,axiom,
% 3.05/1.62 ! [Xs: list_a,Ys2: list_a] :
% 3.05/1.62 ( ( distinct_adj_a @ ( append_a @ Xs @ Ys2 ) )
% 3.05/1.62 => ( distinct_adj_a @ Xs ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_303_distinct__adj__appendD2,axiom,
% 3.05/1.62 ! [Xs: list_list_a,Ys2: list_list_a] :
% 3.05/1.62 ( ( distinct_adj_list_a @ ( append_list_a @ Xs @ Ys2 ) )
% 3.05/1.62 => ( distinct_adj_list_a @ Ys2 ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_304_distinct__adj__appendD2,axiom,
% 3.05/1.62 ! [Xs: list_a,Ys2: list_a] :
% 3.05/1.62 ( ( distinct_adj_a @ ( append_a @ Xs @ Ys2 ) )
% 3.05/1.62 => ( distinct_adj_a @ Ys2 ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_305_distinct__adj__Nil,axiom,
% 3.05/1.62 distinct_adj_list_a @ nil_list_a ).
% 3.05/1.62
% 3.05/1.62 thf(fact_306_distinct__adj__Nil,axiom,
% 3.05/1.62 distinct_adj_a @ nil_a ).
% 3.05/1.62
% 3.05/1.62 thf(fact_307_distinct__adj__ConsD,axiom,
% 3.05/1.62 ! [X3: list_a,Xs: list_list_a] :
% 3.05/1.62 ( ( distinct_adj_list_a @ ( cons_list_a @ X3 @ Xs ) )
% 3.05/1.62 => ( distinct_adj_list_a @ Xs ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_308_distinct__adj__ConsD,axiom,
% 3.05/1.62 ! [X3: a,Xs: list_a] :
% 3.05/1.62 ( ( distinct_adj_a @ ( cons_a @ X3 @ Xs ) )
% 3.05/1.62 => ( distinct_adj_a @ Xs ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_309_butlast__tl,axiom,
% 3.05/1.62 ! [Xs: list_a] :
% 3.05/1.62 ( ( butlast_a @ ( tl_a @ Xs ) )
% 3.05/1.62 = ( tl_a @ ( butlast_a @ Xs ) ) ) ).
% 3.05/1.62
% 3.05/1.62 thf(fact_310_tl__Nil,axiom,
% 3.05/1.62 ! [Xs: list_list_a] :
% 3.05/1.62 ( ( ( tl_list_a @ Xs )
% 3.05/1.62 = nil_list_a )
% 3.05/1.62 = ( ( Xs = nil_list_a )
% 3.05/1.63 | ? [X4: list_a] :
% 3.05/1.63 ( Xs
% 3.05/1.63 = ( cons_list_a @ X4 @ nil_list_a ) ) ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_311_tl__Nil,axiom,
% 3.05/1.63 ! [Xs: list_a] :
% 3.05/1.63 ( ( ( tl_a @ Xs )
% 3.05/1.63 = nil_a )
% 3.05/1.63 = ( ( Xs = nil_a )
% 3.05/1.63 | ? [X4: a] :
% 3.05/1.63 ( Xs
% 3.05/1.63 = ( cons_a @ X4 @ nil_a ) ) ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_312_Nil__tl,axiom,
% 3.05/1.63 ! [Xs: list_list_a] :
% 3.05/1.63 ( ( nil_list_a
% 3.05/1.63 = ( tl_list_a @ Xs ) )
% 3.05/1.63 = ( ( Xs = nil_list_a )
% 3.05/1.63 | ? [X4: list_a] :
% 3.05/1.63 ( Xs
% 3.05/1.63 = ( cons_list_a @ X4 @ nil_list_a ) ) ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_313_Nil__tl,axiom,
% 3.05/1.63 ! [Xs: list_a] :
% 3.05/1.63 ( ( nil_a
% 3.05/1.63 = ( tl_a @ Xs ) )
% 3.05/1.63 = ( ( Xs = nil_a )
% 3.05/1.63 | ? [X4: a] :
% 3.05/1.63 ( Xs
% 3.05/1.63 = ( cons_a @ X4 @ nil_a ) ) ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_314_list_Oexpand,axiom,
% 3.05/1.63 ! [List: list_list_a,List2: list_list_a] :
% 3.05/1.63 ( ( ( List = nil_list_a )
% 3.05/1.63 = ( List2 = nil_list_a ) )
% 3.05/1.63 => ( ( ( List != nil_list_a )
% 3.05/1.63 => ( ( List2 != nil_list_a )
% 3.05/1.63 => ( ( ( hd_list_a @ List )
% 3.05/1.63 = ( hd_list_a @ List2 ) )
% 3.05/1.63 & ( ( tl_list_a @ List )
% 3.05/1.63 = ( tl_list_a @ List2 ) ) ) ) )
% 3.05/1.63 => ( List = List2 ) ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_315_list_Oexpand,axiom,
% 3.05/1.63 ! [List: list_a,List2: list_a] :
% 3.05/1.63 ( ( ( List = nil_a )
% 3.05/1.63 = ( List2 = nil_a ) )
% 3.05/1.63 => ( ( ( List != nil_a )
% 3.05/1.63 => ( ( List2 != nil_a )
% 3.05/1.63 => ( ( ( hd_a @ List )
% 3.05/1.63 = ( hd_a @ List2 ) )
% 3.05/1.63 & ( ( tl_a @ List )
% 3.05/1.63 = ( tl_a @ List2 ) ) ) ) )
% 3.05/1.63 => ( List = List2 ) ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_316_last__tl,axiom,
% 3.05/1.63 ! [Xs: list_list_a] :
% 3.05/1.63 ( ( ( Xs = nil_list_a )
% 3.05/1.63 | ( ( tl_list_a @ Xs )
% 3.05/1.63 != nil_list_a ) )
% 3.05/1.63 => ( ( last_list_a @ ( tl_list_a @ Xs ) )
% 3.05/1.63 = ( last_list_a @ Xs ) ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_317_last__tl,axiom,
% 3.05/1.63 ! [Xs: list_a] :
% 3.05/1.63 ( ( ( Xs = nil_a )
% 3.05/1.63 | ( ( tl_a @ Xs )
% 3.05/1.63 != nil_a ) )
% 3.05/1.63 => ( ( last_a @ ( tl_a @ Xs ) )
% 3.05/1.63 = ( last_a @ Xs ) ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_318_successively_Osimps_I2_J,axiom,
% 3.05/1.63 ! [P: list_a > list_a > $o,X3: list_a] : ( successively_list_a @ P @ ( cons_list_a @ X3 @ nil_list_a ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_319_successively_Osimps_I2_J,axiom,
% 3.05/1.63 ! [P: a > a > $o,X3: a] : ( successively_a @ P @ ( cons_a @ X3 @ nil_a ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_320_successively_Oelims_I1_J,axiom,
% 3.05/1.63 ! [X3: list_a > list_a > $o,Xa: list_list_a,Y: $o] :
% 3.05/1.63 ( ( ( successively_list_a @ X3 @ Xa )
% 3.05/1.63 = Y )
% 3.05/1.63 => ( ( ( Xa = nil_list_a )
% 3.05/1.63 => ~ Y )
% 3.05/1.63 => ( ( ? [X: list_a] :
% 3.05/1.63 ( Xa
% 3.05/1.63 = ( cons_list_a @ X @ nil_list_a ) )
% 3.05/1.63 => ~ Y )
% 3.05/1.63 => ~ ! [X: list_a,Y3: list_a,Xs2: list_list_a] :
% 3.05/1.63 ( ( Xa
% 3.05/1.63 = ( cons_list_a @ X @ ( cons_list_a @ Y3 @ Xs2 ) ) )
% 3.05/1.63 => ( Y
% 3.05/1.63 = ( ~ ( ( X3 @ X @ Y3 )
% 3.05/1.63 & ( successively_list_a @ X3 @ ( cons_list_a @ Y3 @ Xs2 ) ) ) ) ) ) ) ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_321_successively_Oelims_I1_J,axiom,
% 3.05/1.63 ! [X3: a > a > $o,Xa: list_a,Y: $o] :
% 3.05/1.63 ( ( ( successively_a @ X3 @ Xa )
% 3.05/1.63 = Y )
% 3.05/1.63 => ( ( ( Xa = nil_a )
% 3.05/1.63 => ~ Y )
% 3.05/1.63 => ( ( ? [X: a] :
% 3.05/1.63 ( Xa
% 3.05/1.63 = ( cons_a @ X @ nil_a ) )
% 3.05/1.63 => ~ Y )
% 3.05/1.63 => ~ ! [X: a,Y3: a,Xs2: list_a] :
% 3.05/1.63 ( ( Xa
% 3.05/1.63 = ( cons_a @ X @ ( cons_a @ Y3 @ Xs2 ) ) )
% 3.05/1.63 => ( Y
% 3.05/1.63 = ( ~ ( ( X3 @ X @ Y3 )
% 3.05/1.63 & ( successively_a @ X3 @ ( cons_a @ Y3 @ Xs2 ) ) ) ) ) ) ) ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_322_successively_Oelims_I2_J,axiom,
% 3.05/1.63 ! [X3: list_a > list_a > $o,Xa: list_list_a] :
% 3.05/1.63 ( ( successively_list_a @ X3 @ Xa )
% 3.05/1.63 => ( ( Xa != nil_list_a )
% 3.05/1.63 => ( ! [X: list_a] :
% 3.05/1.63 ( Xa
% 3.05/1.63 != ( cons_list_a @ X @ nil_list_a ) )
% 3.05/1.63 => ~ ! [X: list_a,Y3: list_a,Xs2: list_list_a] :
% 3.05/1.63 ( ( Xa
% 3.05/1.63 = ( cons_list_a @ X @ ( cons_list_a @ Y3 @ Xs2 ) ) )
% 3.05/1.63 => ~ ( ( X3 @ X @ Y3 )
% 3.05/1.63 & ( successively_list_a @ X3 @ ( cons_list_a @ Y3 @ Xs2 ) ) ) ) ) ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_323_successively_Oelims_I2_J,axiom,
% 3.05/1.63 ! [X3: a > a > $o,Xa: list_a] :
% 3.05/1.63 ( ( successively_a @ X3 @ Xa )
% 3.05/1.63 => ( ( Xa != nil_a )
% 3.05/1.63 => ( ! [X: a] :
% 3.05/1.63 ( Xa
% 3.05/1.63 != ( cons_a @ X @ nil_a ) )
% 3.05/1.63 => ~ ! [X: a,Y3: a,Xs2: list_a] :
% 3.05/1.63 ( ( Xa
% 3.05/1.63 = ( cons_a @ X @ ( cons_a @ Y3 @ Xs2 ) ) )
% 3.05/1.63 => ~ ( ( X3 @ X @ Y3 )
% 3.05/1.63 & ( successively_a @ X3 @ ( cons_a @ Y3 @ Xs2 ) ) ) ) ) ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_324_distinct__adj__singleton,axiom,
% 3.05/1.63 ! [X3: list_a] : ( distinct_adj_list_a @ ( cons_list_a @ X3 @ nil_list_a ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_325_distinct__adj__singleton,axiom,
% 3.05/1.63 ! [X3: a] : ( distinct_adj_a @ ( cons_a @ X3 @ nil_a ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_326_list_Oexhaust__sel,axiom,
% 3.05/1.63 ! [List: list_a] :
% 3.05/1.63 ( ( List != nil_a )
% 3.05/1.63 => ( List
% 3.05/1.63 = ( cons_a @ ( hd_a @ List ) @ ( tl_a @ List ) ) ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_327_successively__Cons,axiom,
% 3.05/1.63 ! [P: a > a > $o,X3: a,Xs: list_a] :
% 3.05/1.63 ( ( successively_a @ P @ ( cons_a @ X3 @ Xs ) )
% 3.05/1.63 = ( ( Xs = nil_a )
% 3.05/1.63 | ( ( P @ X3 @ ( hd_a @ Xs ) )
% 3.05/1.63 & ( successively_a @ P @ Xs ) ) ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_328_distinct__adj__Cons,axiom,
% 3.05/1.63 ! [X3: a,Xs: list_a] :
% 3.05/1.63 ( ( distinct_adj_a @ ( cons_a @ X3 @ Xs ) )
% 3.05/1.63 = ( ( Xs = nil_a )
% 3.05/1.63 | ( ( X3
% 3.05/1.63 != ( hd_a @ Xs ) )
% 3.05/1.63 & ( distinct_adj_a @ Xs ) ) ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_329_Cons__in__shuffles__iff,axiom,
% 3.05/1.63 ! [Z: a,Zs2: list_a,Xs: list_a,Ys2: list_a] :
% 3.05/1.63 ( ( member_list_a2 @ ( cons_a @ Z @ Zs2 ) @ ( shuffles_a @ Xs @ Ys2 ) )
% 3.05/1.63 = ( ( ( Xs != nil_a )
% 3.05/1.63 & ( ( hd_a @ Xs )
% 3.05/1.63 = Z )
% 3.05/1.63 & ( member_list_a2 @ Zs2 @ ( shuffles_a @ ( tl_a @ Xs ) @ Ys2 ) ) )
% 3.05/1.63 | ( ( Ys2 != nil_a )
% 3.05/1.63 & ( ( hd_a @ Ys2 )
% 3.05/1.63 = Z )
% 3.05/1.63 & ( member_list_a2 @ Zs2 @ ( shuffles_a @ Xs @ ( tl_a @ Ys2 ) ) ) ) ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_330_map2__Cons__not__empty,axiom,
% 3.05/1.63 ! [Xs: list_a,F: a > a > a,Y: a,Ys2: list_a] :
% 3.05/1.63 ( ( Xs != nil_a )
% 3.05/1.63 => ( ( map2_a_a_a @ F @ Xs @ ( cons_a @ Y @ Ys2 ) )
% 3.05/1.63 = ( cons_a @ ( F @ ( hd_a @ Xs ) @ Y ) @ ( map2_a_a_a @ F @ ( tl_a @ Xs ) @ Ys2 ) ) ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_331_Nil__in__shuffles,axiom,
% 3.05/1.63 ! [Xs: list_a,Ys2: list_a] :
% 3.05/1.63 ( ( member_list_a2 @ nil_a @ ( shuffles_a @ Xs @ Ys2 ) )
% 3.05/1.63 = ( ( Xs = nil_a )
% 3.05/1.63 & ( Ys2 = nil_a ) ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_332_shufflesE,axiom,
% 3.05/1.63 ! [Zs2: list_a,Xs: list_a,Ys2: list_a] :
% 3.05/1.63 ( ( member_list_a2 @ Zs2 @ ( shuffles_a @ Xs @ Ys2 ) )
% 3.05/1.63 => ( ( ( Zs2 = Xs )
% 3.05/1.63 => ( Ys2 != nil_a ) )
% 3.05/1.63 => ( ( ( Zs2 = Ys2 )
% 3.05/1.63 => ( Xs != nil_a ) )
% 3.05/1.63 => ( ! [X: a,Xs5: list_a] :
% 3.05/1.63 ( ( Xs
% 3.05/1.63 = ( cons_a @ X @ Xs5 ) )
% 3.05/1.63 => ! [Z2: a,Zs3: list_a] :
% 3.05/1.63 ( ( Zs2
% 3.05/1.63 = ( cons_a @ Z2 @ Zs3 ) )
% 3.05/1.63 => ( ( X = Z2 )
% 3.05/1.63 => ~ ( member_list_a2 @ Zs3 @ ( shuffles_a @ Xs5 @ Ys2 ) ) ) ) )
% 3.05/1.63 => ~ ! [Y3: a,Ys5: list_a] :
% 3.05/1.63 ( ( Ys2
% 3.05/1.63 = ( cons_a @ Y3 @ Ys5 ) )
% 3.05/1.63 => ! [Z2: a,Zs3: list_a] :
% 3.05/1.63 ( ( Zs2
% 3.05/1.63 = ( cons_a @ Z2 @ Zs3 ) )
% 3.05/1.63 => ( ( Y3 = Z2 )
% 3.05/1.63 => ~ ( member_list_a2 @ Zs3 @ ( shuffles_a @ Xs @ Ys5 ) ) ) ) ) ) ) ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_333_map2__Cons__Cons,axiom,
% 3.05/1.63 ! [F: a > a > a,X3: a,Xs: list_a,Y: a,Ys2: list_a] :
% 3.05/1.63 ( ( map2_a_a_a @ F @ ( cons_a @ X3 @ Xs ) @ ( cons_a @ Y @ Ys2 ) )
% 3.05/1.63 = ( cons_a @ ( F @ X3 @ Y ) @ ( map2_a_a_a @ F @ Xs @ Ys2 ) ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_334_Cons__in__shuffles__leftI,axiom,
% 3.05/1.63 ! [Zs2: list_a,Xs: list_a,Ys2: list_a,Z: a] :
% 3.05/1.63 ( ( member_list_a2 @ Zs2 @ ( shuffles_a @ Xs @ Ys2 ) )
% 3.05/1.63 => ( member_list_a2 @ ( cons_a @ Z @ Zs2 ) @ ( shuffles_a @ ( cons_a @ Z @ Xs ) @ Ys2 ) ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_335_Cons__in__shuffles__rightI,axiom,
% 3.05/1.63 ! [Zs2: list_a,Xs: list_a,Ys2: list_a,Z: a] :
% 3.05/1.63 ( ( member_list_a2 @ Zs2 @ ( shuffles_a @ Xs @ Ys2 ) )
% 3.05/1.63 => ( member_list_a2 @ ( cons_a @ Z @ Zs2 ) @ ( shuffles_a @ Xs @ ( cons_a @ Z @ Ys2 ) ) ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_336_Nil__in__shufflesI,axiom,
% 3.05/1.63 ! [Xs: list_a,Ys2: list_a] :
% 3.05/1.63 ( ( Xs = nil_a )
% 3.05/1.63 => ( ( Ys2 = nil_a )
% 3.05/1.63 => ( member_list_a2 @ nil_a @ ( shuffles_a @ Xs @ Ys2 ) ) ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_337_map2__Cons__if,axiom,
% 3.05/1.63 ! [Xs: list_a,F: a > a > a,Y: a,Ys2: list_a] :
% 3.05/1.63 ( ( ( Xs = nil_a )
% 3.05/1.63 => ( ( map2_a_a_a @ F @ Xs @ ( cons_a @ Y @ Ys2 ) )
% 3.05/1.63 = nil_a ) )
% 3.05/1.63 & ( ( Xs != nil_a )
% 3.05/1.63 => ( ( map2_a_a_a @ F @ Xs @ ( cons_a @ Y @ Ys2 ) )
% 3.05/1.63 = ( cons_a @ ( F @ ( hd_a @ Xs ) @ Y ) @ ( map2_a_a_a @ F @ ( tl_a @ Xs ) @ Ys2 ) ) ) ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_338_remdups__adj__append_H,axiom,
% 3.05/1.63 ! [Xs: list_a,Ys2: list_a] :
% 3.05/1.63 ( ( ( Xs = nil_a )
% 3.05/1.63 | ( Ys2 = nil_a )
% 3.05/1.63 | ( ( last_a @ Xs )
% 3.05/1.63 != ( hd_a @ Ys2 ) ) )
% 3.05/1.63 => ( ( remdups_adj_a @ ( append_a @ Xs @ Ys2 ) )
% 3.05/1.63 = ( append_a @ ( remdups_adj_a @ Xs ) @ ( remdups_adj_a @ Ys2 ) ) ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_339_remdups__adj__append,axiom,
% 3.05/1.63 ! [Xs_1: list_a,X3: a,Xs_2: list_a] :
% 3.05/1.63 ( ( remdups_adj_a @ ( append_a @ Xs_1 @ ( cons_a @ X3 @ Xs_2 ) ) )
% 3.05/1.63 = ( append_a @ ( remdups_adj_a @ ( append_a @ Xs_1 @ ( cons_a @ X3 @ nil_a ) ) ) @ ( tl_a @ ( remdups_adj_a @ ( cons_a @ X3 @ Xs_2 ) ) ) ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_340_remdups__adj__Nil__iff,axiom,
% 3.05/1.63 ! [Xs: list_a] :
% 3.05/1.63 ( ( ( remdups_adj_a @ Xs )
% 3.05/1.63 = nil_a )
% 3.05/1.63 = ( Xs = nil_a ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_341_remdups__adj__Cons__alt,axiom,
% 3.05/1.63 ! [X3: a,Xs: list_a] :
% 3.05/1.63 ( ( cons_a @ X3 @ ( tl_a @ ( remdups_adj_a @ ( cons_a @ X3 @ Xs ) ) ) )
% 3.05/1.63 = ( remdups_adj_a @ ( cons_a @ X3 @ Xs ) ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_342_remdups__adj_Oelims,axiom,
% 3.05/1.63 ! [X3: list_a,Y: list_a] :
% 3.05/1.63 ( ( ( remdups_adj_a @ X3 )
% 3.05/1.63 = Y )
% 3.05/1.63 => ( ( ( X3 = nil_a )
% 3.05/1.63 => ( Y != nil_a ) )
% 3.05/1.63 => ( ! [X: a] :
% 3.05/1.63 ( ( X3
% 3.05/1.63 = ( cons_a @ X @ nil_a ) )
% 3.05/1.63 => ( Y
% 3.05/1.63 != ( cons_a @ X @ nil_a ) ) )
% 3.05/1.63 => ~ ! [X: a,Y3: a,Xs2: list_a] :
% 3.05/1.63 ( ( X3
% 3.05/1.63 = ( cons_a @ X @ ( cons_a @ Y3 @ Xs2 ) ) )
% 3.05/1.63 => ~ ( ( ( X = Y3 )
% 3.05/1.63 => ( Y
% 3.05/1.63 = ( remdups_adj_a @ ( cons_a @ X @ Xs2 ) ) ) )
% 3.05/1.63 & ( ( X != Y3 )
% 3.05/1.63 => ( Y
% 3.05/1.63 = ( cons_a @ X @ ( remdups_adj_a @ ( cons_a @ Y3 @ Xs2 ) ) ) ) ) ) ) ) ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_343_remdups__adj_Osimps_I2_J,axiom,
% 3.05/1.63 ! [X3: a] :
% 3.05/1.63 ( ( remdups_adj_a @ ( cons_a @ X3 @ nil_a ) )
% 3.05/1.63 = ( cons_a @ X3 @ nil_a ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_344_remdups__adj_Osimps_I1_J,axiom,
% 3.05/1.63 ( ( remdups_adj_a @ nil_a )
% 3.05/1.63 = nil_a ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_345_remdups__adj_Osimps_I3_J,axiom,
% 3.05/1.63 ! [X3: a,Y: a,Xs: list_a] :
% 3.05/1.63 ( ( ( X3 = Y )
% 3.05/1.63 => ( ( remdups_adj_a @ ( cons_a @ X3 @ ( cons_a @ Y @ Xs ) ) )
% 3.05/1.63 = ( remdups_adj_a @ ( cons_a @ X3 @ Xs ) ) ) )
% 3.05/1.63 & ( ( X3 != Y )
% 3.05/1.63 => ( ( remdups_adj_a @ ( cons_a @ X3 @ ( cons_a @ Y @ Xs ) ) )
% 3.05/1.63 = ( cons_a @ X3 @ ( remdups_adj_a @ ( cons_a @ Y @ Xs ) ) ) ) ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_346_remdups__adj__append__two,axiom,
% 3.05/1.63 ! [Xs: list_a,X3: a,Y: a] :
% 3.05/1.63 ( ( remdups_adj_a @ ( append_a @ Xs @ ( cons_a @ X3 @ ( cons_a @ Y @ nil_a ) ) ) )
% 3.05/1.63 = ( append_a @ ( remdups_adj_a @ ( append_a @ Xs @ ( cons_a @ X3 @ nil_a ) ) ) @ ( if_list_a @ ( X3 = Y ) @ nil_a @ ( cons_a @ Y @ nil_a ) ) ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_347_map2__snoc__snoc,axiom,
% 3.05/1.63 ! [Xs: list_a,Ys2: list_a,F: a > a > a,X3: a,Y: a] :
% 3.05/1.63 ( ( ( size_size_list_a @ Xs )
% 3.05/1.63 = ( size_size_list_a @ Ys2 ) )
% 3.05/1.63 => ( ( map2_a_a_a @ F @ ( append_a @ Xs @ ( cons_a @ X3 @ nil_a ) ) @ ( append_a @ Ys2 @ ( cons_a @ Y @ nil_a ) ) )
% 3.05/1.63 = ( append_a @ ( map2_a_a_a @ F @ Xs @ Ys2 ) @ ( cons_a @ ( F @ X3 @ Y ) @ nil_a ) ) ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_348_length__greater__imp__not__empty,axiom,
% 3.05/1.63 ! [N: nat,Xs: list_a] :
% 3.05/1.63 ( ( ord_less_nat @ N @ ( size_size_list_a @ Xs ) )
% 3.05/1.63 => ( Xs != nil_a ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_349_list__induct2,axiom,
% 3.05/1.63 ! [Xs: list_a,Ys2: list_a,P: list_a > list_a > $o] :
% 3.05/1.63 ( ( ( size_size_list_a @ Xs )
% 3.05/1.63 = ( size_size_list_a @ Ys2 ) )
% 3.05/1.63 => ( ( P @ nil_a @ nil_a )
% 3.05/1.63 => ( ! [X: a,Xs2: list_a,Y3: a,Ys3: list_a] :
% 3.05/1.63 ( ( ( size_size_list_a @ Xs2 )
% 3.05/1.63 = ( size_size_list_a @ Ys3 ) )
% 3.05/1.63 => ( ( P @ Xs2 @ Ys3 )
% 3.05/1.63 => ( P @ ( cons_a @ X @ Xs2 ) @ ( cons_a @ Y3 @ Ys3 ) ) ) )
% 3.05/1.63 => ( P @ Xs @ Ys2 ) ) ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_350_list__induct3,axiom,
% 3.05/1.63 ! [Xs: list_a,Ys2: list_a,Zs2: list_a,P: list_a > list_a > list_a > $o] :
% 3.05/1.63 ( ( ( size_size_list_a @ Xs )
% 3.05/1.63 = ( size_size_list_a @ Ys2 ) )
% 3.05/1.63 => ( ( ( size_size_list_a @ Ys2 )
% 3.05/1.63 = ( size_size_list_a @ Zs2 ) )
% 3.05/1.63 => ( ( P @ nil_a @ nil_a @ nil_a )
% 3.05/1.63 => ( ! [X: a,Xs2: list_a,Y3: a,Ys3: list_a,Z2: a,Zs: list_a] :
% 3.05/1.63 ( ( ( size_size_list_a @ Xs2 )
% 3.05/1.63 = ( size_size_list_a @ Ys3 ) )
% 3.05/1.63 => ( ( ( size_size_list_a @ Ys3 )
% 3.05/1.63 = ( size_size_list_a @ Zs ) )
% 3.05/1.63 => ( ( P @ Xs2 @ Ys3 @ Zs )
% 3.05/1.63 => ( P @ ( cons_a @ X @ Xs2 ) @ ( cons_a @ Y3 @ Ys3 ) @ ( cons_a @ Z2 @ Zs ) ) ) ) )
% 3.05/1.63 => ( P @ Xs @ Ys2 @ Zs2 ) ) ) ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(fact_351_list__induct4,axiom,
% 3.05/1.63 ! [Xs: list_a,Ys2: list_a,Zs2: list_a,Ws2: list_a,P: list_a > list_a > list_a > list_a > $o] :
% 3.05/1.63 ( ( ( size_size_list_a @ Xs )
% 3.05/1.63 = ( size_size_list_a @ Ys2 ) )
% 3.05/1.63 => ( ( ( size_size_list_a @ Ys2 )
% 3.05/1.63 = ( size_size_list_a @ Zs2 ) )
% 3.05/1.63 => ( ( ( size_size_list_a @ Zs2 )
% 3.05/1.63 = ( size_size_list_a @ Ws2 ) )
% 3.05/1.63 => ( ( P @ nil_a @ nil_a @ nil_a @ nil_a )
% 3.05/1.63 => ( ! [X: a,Xs2: list_a,Y3: a,Ys3: list_a,Z2: a,Zs: list_a,W: a,Ws3: list_a] :
% 3.05/1.63 ( ( ( size_size_list_a @ Xs2 )
% 3.05/1.63 = ( size_size_list_a @ Ys3 ) )
% 3.05/1.63 => ( ( ( size_size_list_a @ Ys3 )
% 3.05/1.63 = ( size_size_list_a @ Zs ) )
% 3.05/1.63 => ( ( ( size_size_list_a @ Zs )
% 3.05/1.63 = ( size_size_list_a @ Ws3 ) )
% 3.05/1.63 => ( ( P @ Xs2 @ Ys3 @ Zs @ Ws3 )
% 3.05/1.63 => ( P @ ( cons_a @ X @ Xs2 ) @ ( cons_a @ Y3 @ Ys3 ) @ ( cons_a @ Z2 @ Zs ) @ ( cons_a @ W @ Ws3 ) ) ) ) ) )
% 3.05/1.63 => ( P @ Xs @ Ys2 @ Zs2 @ Ws2 ) ) ) ) ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(help_If_3_1_If_001t__List__Olist_Itf__a_J_T,axiom,
% 3.05/1.63 ! [P: $o] :
% 3.05/1.63 ( ( P = $true )
% 3.05/1.63 | ( P = $false ) ) ).
% 3.05/1.63
% 3.05/1.63 thf(help_If_2_1_If_001t__List__Olist_Itf__a_J_T,axiom,
% 3.05/1.63 ! [X3: list_a,Y: list_a] :
% 3.05/1.63 ( ( if_list_a @ $false @ X3 @ Y )
% 3.05/1.63 = Y ) ).
% 3.05/1.63
% 3.05/1.63 thf(help_If_1_1_If_001t__List__Olist_Itf__a_J_T,axiom,
% 3.05/1.63 ! [X3: list_a,Y: list_a] :
% 3.05/1.63 ( ( if_list_a @ $true @ X3 @ Y )
% 3.05/1.63 = X3 ) ).
% 3.05/1.63
% 3.05/1.63 thf(conj_0,conjecture,
% 3.05/1.63 ( ( listIn1312259492pend_a @ ( cons_a @ x @ xs ) @ f )
% 3.05/1.63 = ( listIn1312259492pend_a @ ( cons_a @ x @ nil_a ) @ ( listIn1312259492pend_a @ xs @ f ) ) ) ).
% 3.05/1.63 ------------------------
% 3.05/1.66 % (21083)lrs+1002_1:8_bd=off:fd=off:hud=10:tnu=1:i=183:si=on:rtra=on_0 on DTF2THF_20820 for (2999ds/183Mi)
% 3.05/1.67 % (21084)lrs+10_1:1_c=on:cnfonf=conj_eager:fd=off:fe=off:kws=frequency:spb=intro:i=4:si=on:rtra=on_0 on DTF2THF_20820 for (2999ds/4Mi)
% 3.05/1.67 % (21085)dis+1010_1:1_au=on:cbe=off:chr=on:fsr=off:hfsq=on:nm=64:sos=theory:sp=weighted_frequency:i=27:si=on:rtra=on_0 on DTF2THF_20820 for (2999ds/27Mi)
% 3.05/1.67 % (21086)lrs+10_1:1_au=on:inj=on:i=2:si=on:rtra=on_0 on DTF2THF_20820 for (2999ds/2Mi)
% 3.05/1.67 % (21087)lrs+1002_1:128_aac=none:au=on:cnfonf=lazy_not_gen_be_off:sos=all:i=2:si=on:rtra=on_0 on DTF2THF_20820 for (2999ds/2Mi)
% 3.05/1.67 % (21088)lrs+1002_1:1_au=on:bd=off:e2e=on:sd=2:sos=on:ss=axioms:i=275:si=on:rtra=on_0 on DTF2THF_20820 for (2999ds/275Mi)
% 3.05/1.67 % (21089)lrs+1004_1:128_cond=on:e2e=on:sp=weighted_frequency:i=18:si=on:rtra=on_0 on DTF2THF_20820 for (2999ds/18Mi)
% 3.05/1.67 % (21086)Instruction limit reached!
% 3.05/1.67 % (21086)------------------------------
% 3.05/1.67 % (21086)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 3.05/1.67 % (21086)Termination reason: Unknown
% 3.05/1.67 % (21086)Termination phase: shuffling
% 3.05/1.67
% 3.05/1.67 % (21086)Memory used [KB]: 1535
% 3.05/1.67 % (21086)Time elapsed: 0.004 s
% 3.05/1.67 % (21086)Instructions burned: 2 (million)
% 3.05/1.67 % (21086)------------------------------
% 3.05/1.67 % (21086)------------------------------
% 3.05/1.67 % (21087)Instruction limit reached!
% 3.05/1.67 % (21087)------------------------------
% 3.05/1.67 % (21087)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 3.05/1.67 % (21087)Termination reason: Unknown
% 3.05/1.67 % (21087)Termination phase: shuffling
% 3.05/1.67
% 3.05/1.67 % (21087)Memory used [KB]: 1535
% 3.05/1.67 % (21087)Time elapsed: 0.004 s
% 3.05/1.67 % (21087)Instructions burned: 2 (million)
% 3.05/1.67 % (21087)------------------------------
% 3.05/1.67 % (21087)------------------------------
% 3.05/1.67 % (21084)Instruction limit reached!
% 3.05/1.67 % (21084)------------------------------
% 3.05/1.67 % (21084)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 3.05/1.67 % (21084)Termination reason: Unknown
% 3.05/1.67 % (21084)Termination phase: shuffling
% 3.05/1.67
% 3.05/1.67 % (21084)Memory used [KB]: 1535
% 3.05/1.67 % (21084)Time elapsed: 0.005 s
% 3.05/1.67 % (21084)Instructions burned: 4 (million)
% 3.05/1.67 % (21084)------------------------------
% 3.05/1.67 % (21084)------------------------------
% 3.05/1.68 % (21089)Instruction limit reached!
% 3.05/1.68 % (21089)------------------------------
% 3.05/1.68 % (21089)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 3.05/1.68 % (21089)Termination reason: Unknown
% 3.05/1.68 % (21089)Termination phase: shuffling
% 3.05/1.68
% 3.05/1.68 % (21089)Memory used [KB]: 1918
% 3.05/1.68 % (21089)Time elapsed: 0.014 s
% 3.05/1.68 % (21089)Instructions burned: 19 (million)
% 3.05/1.68 % (21089)------------------------------
% 3.05/1.68 % (21089)------------------------------
% 3.05/1.69 % (21085)Instruction limit reached!
% 3.05/1.69 % (21085)------------------------------
% 3.05/1.69 % (21085)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 3.05/1.69 % (21085)Termination reason: Unknown
% 3.05/1.69 % (21085)Termination phase: shuffling
% 3.05/1.69
% 3.05/1.69 % (21085)Memory used [KB]: 2046
% 3.05/1.69 % (21085)Time elapsed: 0.019 s
% 3.05/1.69 % (21085)Instructions burned: 28 (million)
% 3.05/1.69 % (21085)------------------------------
% 3.05/1.69 % (21085)------------------------------
% 3.05/1.69 % (21090)lrs+10_1:1_bet=on:cnfonf=off:fd=off:hud=5:inj=on:i=3:si=on:rtra=on_0 on DTF2THF_20820 for (2999ds/3Mi)
% 3.05/1.69 % (21091)lrs+1002_1:1_cnfonf=lazy_not_be_gen:hud=14:prag=on:sp=weighted_frequency:tnu=1:i=37:si=on:rtra=on_0 on DTF2THF_20820 for (2999ds/37Mi)
% 3.05/1.69 % (21092)lrs+2_16:1_acc=model:au=on:bd=off:c=on:e2e=on:nm=2:sos=all:i=15:si=on:rtra=on_0 on DTF2THF_20820 for (2999ds/15Mi)
% 3.05/1.69 % (21090)Instruction limit reached!
% 3.05/1.69 % (21090)------------------------------
% 3.05/1.69 % (21090)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 3.05/1.69 % (21090)Termination reason: Unknown
% 3.05/1.69 % (21090)Termination phase: shuffling
% 3.05/1.69
% 3.05/1.69 % (21090)Memory used [KB]: 1535
% 3.05/1.69 % (21090)Time elapsed: 0.004 s
% 3.05/1.69 % (21090)Instructions burned: 3 (million)
% 3.05/1.69 % (21090)------------------------------
% 3.05/1.69 % (21090)------------------------------
% 3.10/1.70 % (21093)dis+21_1:1_cbe=off:cnfonf=off:fs=off:fsr=off:hud=1:inj=on:i=3:si=on:rtra=on_0 on DTF2THF_20820 for (2999ds/3Mi)
% 3.10/1.70 % (21092)Instruction limit reached!
% 3.10/1.70 % (21092)------------------------------
% 3.10/1.70 % (21092)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 3.10/1.70 % (21092)Termination reason: Unknown
% 3.10/1.70 % (21092)Termination phase: shuffling
% 3.10/1.70
% 3.10/1.70 % (21092)Memory used [KB]: 1791
% 3.10/1.70 % (21092)Time elapsed: 0.011 s
% 3.10/1.70 % (21092)Instructions burned: 15 (million)
% 3.10/1.70 % (21092)------------------------------
% 3.10/1.70 % (21092)------------------------------
% 3.10/1.70 % (21094)lrs+1002_1:1_aac=none:au=on:cnfonf=lazy_gen:plsq=on:plsqc=1:plsqr=4203469,65536:i=1041:si=on:rtra=on_0 on DTF2THF_20820 for (2999ds/1041Mi)
% 3.10/1.70 % (21093)Instruction limit reached!
% 3.10/1.70 % (21093)------------------------------
% 3.10/1.70 % (21093)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 3.10/1.70 % (21093)Termination reason: Unknown
% 3.10/1.70 % (21093)Termination phase: shuffling
% 3.10/1.70
% 3.10/1.70 % (21093)Memory used [KB]: 1535
% 3.10/1.70 % (21093)Time elapsed: 0.004 s
% 3.10/1.70 % (21093)Instructions burned: 5 (million)
% 3.10/1.70 % (21093)------------------------------
% 3.10/1.70 % (21093)------------------------------
% 3.10/1.70 % (21091)Instruction limit reached!
% 3.10/1.70 % (21091)------------------------------
% 3.10/1.70 % (21091)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 3.10/1.70 % (21091)Termination reason: Unknown
% 3.10/1.70 % (21091)Termination phase: shuffling
% 3.10/1.70
% 3.10/1.70 % (21091)Memory used [KB]: 2302
% 3.10/1.70 % (21091)Time elapsed: 0.018 s
% 3.10/1.70 % (21091)Instructions burned: 39 (million)
% 3.10/1.70 % (21091)------------------------------
% 3.10/1.70 % (21091)------------------------------
% 3.10/1.71 % (21095)lrs+10_1:1_av=off:chr=on:plsq=on:slsq=on:i=7:si=on:rtra=on_0 on DTF2THF_20820 for (2999ds/7Mi)
% 3.10/1.71 % (21095)Instruction limit reached!
% 3.10/1.71 % (21095)------------------------------
% 3.10/1.71 % (21095)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 3.10/1.71 % (21095)Termination reason: Unknown
% 3.10/1.71 % (21095)Termination phase: shuffling
% 3.10/1.71
% 3.10/1.71 % (21095)Memory used [KB]: 1663
% 3.10/1.71 % (21095)Time elapsed: 0.004 s
% 3.10/1.71 % (21095)Instructions burned: 8 (million)
% 3.10/1.71 % (21095)------------------------------
% 3.10/1.71 % (21095)------------------------------
% 3.10/1.71 % (21097)lrs+21_1:1_au=on:cnfonf=off:fd=preordered:fe=off:fsr=off:hud=11:inj=on:kws=precedence:s2pl=no:sp=weighted_frequency:tgt=full:i=3:si=on:rtra=on_0 on DTF2THF_20820 for (2999ds/3Mi)
% 3.10/1.71 % (21088)First to succeed.
% 3.10/1.71 % (21097)Instruction limit reached!
% 3.10/1.71 % (21097)------------------------------
% 3.10/1.71 % (21097)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 3.10/1.71 % (21097)Termination reason: Unknown
% 3.10/1.71 % (21097)Termination phase: shuffling
% 3.10/1.71
% 3.10/1.71 % (21097)Memory used [KB]: 1535
% 3.10/1.71 % (21097)Time elapsed: 0.003 s
% 3.10/1.71 % (21097)Instructions burned: 4 (million)
% 3.10/1.71 % (21097)------------------------------
% 3.10/1.71 % (21097)------------------------------
% 3.10/1.71 % (21088)Refutation found. Thanks to Tanya!
% 3.10/1.71 % SZS status Theorem for DTF2THF_20820
% 3.10/1.71 % SZS output start Proof for DTF2THF_20820
% 3.10/1.71 thf(type_def_5, type, set_list_list_a: $tType).
% 3.10/1.71 thf(type_def_6, type, list_a: $tType).
% 3.10/1.71 thf(type_def_8, type, set_list_a: $tType).
% 3.10/1.71 thf(type_def_9, type, a: $tType).
% 3.10/1.71 thf(type_def_10, type, list_list_a: $tType).
% 3.10/1.71 thf(type_def_11, type, set_a: $tType).
% 3.10/1.71 thf(type_def_12, type, nat: $tType).
% 3.10/1.71 thf(type_def_13, type, list_nat: $tType).
% 3.10/1.71 thf(type_def_14, type, list_list_list_a: $tType).
% 3.10/1.71 thf(func_def_0, type, list_list_list_a: $tType).
% 3.10/1.71 thf(func_def_1, type, set_list_list_a: $tType).
% 3.10/1.71 thf(func_def_2, type, list_list_a: $tType).
% 3.10/1.71 thf(func_def_3, type, set_list_a: $tType).
% 3.10/1.71 thf(func_def_4, type, list_nat: $tType).
% 3.10/1.71 thf(func_def_5, type, list_a: $tType).
% 3.10/1.71 thf(func_def_6, type, set_a: $tType).
% 3.10/1.71 thf(func_def_7, type, nat: $tType).
% 3.10/1.71 thf(func_def_8, type, a: $tType).
% 3.10/1.71 thf(func_def_9, type, bNF_Gr1972240547list_a: set_list_list_a > list_a > set_list_list_a).
% 3.10/1.71 thf(func_def_10, type, bNF_Greatest_Shift_a: set_list_a > a > set_list_a).
% 3.10/1.71 thf(func_def_11, type, bNF_Gr1046450207list_a: set_list_list_a > list_list_a > set_list_a).
% 3.10/1.71 thf(func_def_12, type, bNF_Greatest_Succ_a: set_list_a > list_a > set_a).
% 3.10/1.71 thf(func_def_13, type, if_list_a: $o > list_a > list_a > list_a).
% 3.10/1.71 thf(func_def_14, type, list_ord_nat: (nat > nat > $o) > list_nat > $o).
% 3.10/1.71 thf(func_def_15, type, list_strict_asc_nat: list_nat > $o).
% 3.10/1.71 thf(func_def_16, type, map2_a_a_a: (a > a > a) > list_a > list_a > list_a).
% 3.10/1.71 thf(func_def_17, type, listIn1753026346list_a: list_list_a > (nat > list_a) > nat > list_a).
% 3.10/1.71 thf(func_def_18, type, listIn1312259492pend_a: list_a > (nat > a) > nat > a).
% 3.10/1.71 thf(func_def_19, type, append_list_list_a: list_list_list_a > list_list_list_a > list_list_list_a).
% 3.10/1.71 thf(func_def_20, type, append_list_a: list_list_a > list_list_a > list_list_a).
% 3.10/1.71 thf(func_def_21, type, append_nat: list_nat > list_nat > list_nat).
% 3.10/1.71 thf(func_def_22, type, append_a: list_a > list_a > list_a).
% 3.10/1.71 thf(func_def_23, type, bind_list_a_list_a: list_list_a > (list_a > list_list_a) > list_list_a).
% 3.10/1.72 thf(func_def_24, type, bind_list_a_a: list_list_a > (list_a > list_a) > list_a).
% 3.10/1.72 thf(func_def_25, type, bind_a_list_a: list_a > (a > list_list_a) > list_list_a).
% 3.10/1.72 thf(func_def_26, type, bind_a_a: list_a > (a > list_a) > list_a).
% 3.10/1.72 thf(func_def_27, type, butlast_list_a: list_list_a > list_list_a).
% 3.10/1.72 thf(func_def_28, type, butlast_a: list_a > list_a).
% 3.10/1.72 thf(func_def_29, type, concat_list_a: list_list_list_a > list_list_a).
% 3.10/1.72 thf(func_def_30, type, concat_a: list_list_a > list_a).
% 3.10/1.72 thf(func_def_31, type, distinct_adj_list_a: list_list_a > $o).
% 3.10/1.72 thf(func_def_32, type, distinct_adj_a: list_a > $o).
% 3.10/1.72 thf(func_def_33, type, foldr_769741863list_a: (list_list_a > list_list_a > list_list_a) > list_list_list_a > list_list_a > list_list_a).
% 3.10/1.72 thf(func_def_34, type, foldr_list_a_list_a: (list_a > list_a > list_a) > list_list_a > list_a > list_a).
% 3.10/1.72 thf(func_def_35, type, insert_list_a: list_a > list_list_a > list_list_a).
% 3.10/1.72 thf(func_def_36, type, insert_a: a > list_a > list_a).
% 3.10/1.72 thf(func_def_37, type, last_list_a: list_list_a > list_a).
% 3.10/1.72 thf(func_def_38, type, last_a: list_a > a).
% 3.10/1.72 thf(func_def_39, type, cons_list_list_a: list_list_a > list_list_list_a > list_list_list_a).
% 3.10/1.72 thf(func_def_40, type, cons_list_a: list_a > list_list_a > list_list_a).
% 3.10/1.72 thf(func_def_41, type, cons_nat: nat > list_nat > list_nat).
% 3.10/1.72 thf(func_def_42, type, cons_a: a > list_a > list_a).
% 3.10/1.72 thf(func_def_43, type, nil_list_list_a: list_list_list_a).
% 3.10/1.72 thf(func_def_44, type, nil_list_a: list_list_a).
% 3.10/1.72 thf(func_def_45, type, nil_nat: list_nat).
% 3.10/1.72 thf(func_def_46, type, nil_a: list_a).
% 3.10/1.72 thf(func_def_47, type, hd_list_list_a: list_list_list_a > list_list_a).
% 3.10/1.72 thf(func_def_48, type, hd_list_a: list_list_a > list_a).
% 3.10/1.72 thf(func_def_49, type, hd_a: list_a > a).
% 3.10/1.72 thf(func_def_50, type, tl_list_a: list_list_a > list_list_a).
% 3.10/1.72 thf(func_def_51, type, tl_a: list_a > list_a).
% 3.10/1.72 thf(func_def_52, type, list_ex1_list_a: (list_a > $o) > list_list_a > $o).
% 3.10/1.72 thf(func_def_53, type, list_ex1_a: (a > $o) > list_a > $o).
% 3.10/1.72 thf(func_def_54, type, listre1221556159list_a: (list_a > list_a > $o) > list_list_a > list_list_a > $o).
% 3.10/1.72 thf(func_def_55, type, listrelp_list_a_a: (list_a > a > $o) > list_list_a > list_a > $o).
% 3.10/1.72 thf(func_def_56, type, listrelp_a_list_a: (a > list_a > $o) > list_a > list_list_a > $o).
% 3.10/1.72 thf(func_def_57, type, listrelp_a_a: (a > a > $o) > list_a > list_a > $o).
% 3.10/1.72 thf(func_def_58, type, map_ta982122357list_a: (list_a > list_a) > list_list_a > list_list_a > list_list_a).
% 3.10/1.72 thf(func_def_59, type, map_ta2002079599st_a_a: (list_a > a) > list_list_a > list_a > list_a).
% 3.10/1.72 thf(func_def_60, type, map_ta41997947list_a: (a > list_a) > list_a > list_list_a > list_list_a).
% 3.10/1.72 thf(func_def_61, type, map_tailrec_rev_a_a: (a > a) > list_a > list_a > list_a).
% 3.10/1.72 thf(func_def_62, type, maps_list_a_list_a: (list_a > list_list_a) > list_list_a > list_list_a).
% 3.10/1.72 thf(func_def_63, type, maps_list_a_a: (list_a > list_a) > list_list_a > list_a).
% 3.10/1.72 thf(func_def_64, type, maps_a_list_a: (a > list_list_a) > list_a > list_list_a).
% 3.10/1.72 thf(func_def_65, type, maps_a_a: (a > list_a) > list_a > list_a).
% 3.10/1.72 thf(func_def_66, type, member_list_a: list_list_a > list_a > $o).
% 3.10/1.72 thf(func_def_67, type, member_a: list_a > a > $o).
% 3.10/1.72 thf(func_def_68, type, lexordp_eq_list_a: (list_a > list_a > $o) > list_list_a > list_list_a > $o).
% 3.10/1.72 thf(func_def_69, type, lexordp_eq_a: (a > a > $o) > list_a > list_a > $o).
% 3.10/1.72 thf(func_def_70, type, ord_lexordp_nat: list_nat > list_nat > $o).
% 3.10/1.72 thf(func_def_71, type, ord_lexordp_eq_nat: list_nat > list_nat > $o).
% 3.10/1.72 thf(func_def_72, type, product_lists_list_a: list_list_list_a > list_list_list_a).
% 3.10/1.72 thf(func_def_73, type, product_lists_a: list_list_a > list_list_a).
% 3.10/1.72 thf(func_def_74, type, remdups_adj_a: list_a > list_a).
% 3.10/1.72 thf(func_def_75, type, rotate1_list_a: list_list_a > list_list_a).
% 3.10/1.72 thf(func_def_76, type, rotate1_a: list_a > list_a).
% 3.10/1.72 thf(func_def_77, type, shuffles_a: list_a > list_a > set_list_a).
% 3.10/1.72 thf(func_def_78, type, splice_list_a: list_list_a > list_list_a > list_list_a).
% 3.10/1.72 thf(func_def_79, type, splice_a: list_a > list_a > list_a).
% 3.10/1.72 thf(func_def_80, type, subseqs_list_a: list_list_a > list_list_list_a).
% 3.10/1.72 thf(func_def_81, type, subseqs_a: list_a > list_list_a).
% 3.10/1.72 thf(func_def_82, type, successively_list_a: (list_a > list_a > $o) > list_list_a > $o).
% 3.10/1.72 thf(func_def_83, type, successively_a: (a > a > $o) > list_a > $o).
% 3.10/1.72 thf(func_def_84, type, size_size_list_a: list_a > nat).
% 3.10/1.72 thf(func_def_85, type, ord_less_nat: nat > nat > $o).
% 3.10/1.72 thf(func_def_86, type, collect_list_a: (list_a > $o) > set_list_a).
% 3.10/1.72 thf(func_def_87, type, collect_a: (a > $o) > set_a).
% 3.10/1.72 thf(func_def_88, type, member_list_list_a: list_list_a > set_list_list_a > $o).
% 3.10/1.72 thf(func_def_89, type, member_list_a2: list_a > set_list_a > $o).
% 3.10/1.72 thf(func_def_90, type, member_a2: a > set_a > $o).
% 3.10/1.72 thf(func_def_91, type, f: nat > a).
% 3.10/1.72 thf(func_def_92, type, x: a).
% 3.10/1.72 thf(func_def_93, type, xs: list_a).
% 3.10/1.72 thf(func_def_110, type, sK0: (list_a > $o) > a).
% 3.10/1.72 thf(func_def_111, type, sK1: (list_a > $o) > a).
% 3.10/1.72 thf(func_def_112, type, sK2: (list_a > $o) > list_a).
% 3.10/1.72 thf(func_def_113, type, sK3: (list_a > $o) > a).
% 3.10/1.72 thf(func_def_114, type, sK4: ((a > a) > list_a > list_a > $o) > a > a).
% 3.10/1.72 thf(func_def_115, type, sK5: ((a > a) > list_a > list_a > $o) > a).
% 3.10/1.72 thf(func_def_116, type, sK6: ((a > a) > list_a > list_a > $o) > list_a).
% 3.10/1.72 thf(func_def_117, type, sK7: ((a > a) > list_a > list_a > $o) > list_a).
% 3.10/1.72 thf(func_def_118, type, sK8: ((a > a) > list_a > list_a > $o) > list_a).
% 3.10/1.72 thf(func_def_119, type, sK9: ((a > a) > list_a > list_a > $o) > a > a).
% 3.10/1.72 thf(func_def_120, type, sK10: list_a > list_a > list_a > list_a > list_a).
% 3.10/1.72 thf(func_def_121, type, sK11: list_a > a).
% 3.10/1.72 thf(func_def_122, type, sK12: list_a > list_a).
% 3.10/1.72 thf(func_def_123, type, sK13: (list_a > $o) > a).
% 3.10/1.72 thf(func_def_124, type, sK14: (list_a > $o) > list_a).
% 3.10/1.72 thf(func_def_125, type, sK15: (list_a > $o) > a).
% 3.10/1.72 thf(func_def_126, type, sK16: (list_a > $o) > a).
% 3.10/1.72 thf(func_def_127, type, sK17: (list_a > $o) > a).
% 3.10/1.72 thf(func_def_128, type, sK18: (list_a > $o) > list_a).
% 3.10/1.72 thf(func_def_129, type, sK19: (list_a > $o) > a).
% 3.10/1.72 thf(func_def_130, type, sK20: (list_a > $o) > list_a).
% 3.10/1.72 thf(func_def_131, type, sK21: (list_a > $o) > a).
% 3.10/1.72 thf(func_def_132, type, sK22: (list_a > $o) > list_a).
% 3.10/1.72 thf(func_def_133, type, sK23: (list_a > $o) > a).
% 3.10/1.72 thf(func_def_134, type, sK24: list_a > list_a).
% 3.10/1.72 thf(func_def_135, type, sK25: list_a > a).
% 3.10/1.72 thf(func_def_136, type, sK26: list_a > a).
% 3.10/1.72 thf(func_def_137, type, sK27: list_a > a).
% 3.10/1.72 thf(func_def_138, type, sK28: (list_a > list_a > $o) > list_a).
% 3.10/1.72 thf(func_def_139, type, sK29: (list_a > list_a > $o) > list_a).
% 3.10/1.72 thf(func_def_140, type, sK30: (list_a > list_a > $o) > list_a).
% 3.10/1.72 thf(func_def_141, type, sK31: (list_a > list_a > $o) > a).
% 3.10/1.72 thf(func_def_142, type, sK32: (list_a > list_a > $o) > list_a).
% 3.10/1.72 thf(func_def_143, type, sK33: (list_a > list_a > $o) > a).
% 3.10/1.72 thf(func_def_144, type, sK34: list_a > list_a).
% 3.10/1.72 thf(func_def_145, type, sK35: list_a > a).
% 3.10/1.72 thf(func_def_146, type, sK36: (list_a > $o) > a).
% 3.10/1.72 thf(func_def_147, type, sK37: (list_a > $o) > a).
% 3.10/1.72 thf(func_def_148, type, sK38: (list_a > $o) > list_a).
% 3.10/1.72 thf(func_def_149, type, sK39: (list_a > list_a > $o) > list_a).
% 3.10/1.72 thf(func_def_150, type, sK40: (list_a > list_a > $o) > a).
% 3.10/1.72 thf(func_def_151, type, sK41: (list_a > list_a > $o) > list_a).
% 3.10/1.72 thf(func_def_152, type, sK42: (list_a > list_a > $o) > a).
% 3.10/1.72 thf(func_def_153, type, sK43: (list_a > list_a > $o) > list_a).
% 3.10/1.72 thf(func_def_154, type, sK44: (list_a > list_a > $o) > a).
% 3.10/1.72 thf(func_def_155, type, sK45: (list_a > list_a > $o) > list_a).
% 3.10/1.72 thf(func_def_156, type, sK46: (list_a > list_a > $o) > a).
% 3.10/1.72 thf(func_def_157, type, sK47: ((a > a > $o) > list_a > $o) > a > a > $o).
% 3.10/1.72 thf(func_def_158, type, sK48: ((a > a > $o) > list_a > $o) > a).
% 3.10/1.72 thf(func_def_159, type, sK49: ((a > a > $o) > list_a > $o) > a > a > $o).
% 3.10/1.72 thf(func_def_160, type, sK50: ((a > a > $o) > list_a > $o) > list_a).
% 3.10/1.72 thf(func_def_161, type, sK51: ((a > a > $o) > list_a > $o) > a).
% 3.10/1.72 thf(func_def_162, type, sK52: ((a > a > $o) > list_a > $o) > a > a > $o).
% 3.10/1.72 thf(func_def_163, type, sK53: ((a > a > $o) > list_a > $o) > a).
% 3.10/1.72 thf(func_def_164, type, sK54: (list_a > list_a > $o) > a).
% 3.10/1.72 thf(func_def_165, type, sK55: (list_a > list_a > $o) > list_a).
% 3.10/1.72 thf(func_def_166, type, sK56: (list_a > list_a > $o) > list_a).
% 3.10/1.72 thf(func_def_167, type, sK57: (list_a > list_a > $o) > list_a).
% 3.10/1.72 thf(func_def_168, type, sK58: list_a > list_a > list_a > a > list_a).
% 3.10/1.72 thf(func_def_169, type, sK59: ((a > a > $o) > list_a > $o) > a > a > $o).
% 3.10/1.72 thf(func_def_170, type, sK60: ((a > a > $o) > list_a > $o) > list_a).
% 3.10/1.72 thf(func_def_171, type, sK61: ((a > a > $o) > list_a > $o) > a > a > $o).
% 3.10/1.72 thf(func_def_172, type, sK62: ((a > a > $o) > list_a > $o) > a).
% 3.10/1.72 thf(func_def_173, type, sK63: list_a > a).
% 3.10/1.72 thf(func_def_174, type, sK64: list_a > list_a).
% 3.10/1.72 thf(func_def_175, type, sK65: a > list_a > list_a > list_a > list_a).
% 3.10/1.72 thf(func_def_177, type, ph67: !>[X0: $tType]:(X0)).
% 3.10/1.72 thf(func_def_178, type, sK68: nat).
% 3.10/1.72 thf(f1016,plain,(
% 3.10/1.72 $false),
% 3.10/1.72 inference(trivial_inequality_removal,[status(thm)],[f1015])).
% 3.10/1.72 thf(f1015,plain,(
% 3.10/1.72 ((listIn1312259492pend_a @ (cons_a @ x @ xs) @ f) != (listIn1312259492pend_a @ (cons_a @ x @ xs) @ f))),
% 3.10/1.72 inference(forward_demodulation,[status(thm)],[f1014,f979])).
% 3.10/1.72 thf(f979,plain,(
% 3.10/1.72 ( ! [X1 : list_a] : (((append_a @ nil_a @ X1) = X1)) )),
% 3.10/1.72 inference(equality_resolution,[status(thm)],[f885])).
% 3.10/1.72 thf(f885,plain,(
% 3.10/1.72 ( ! [X0 : list_a,X1 : list_a] : (((append_a @ nil_a @ X0) = X1) | (X0 != X1)) )),
% 3.10/1.72 inference(cnf_transformation,[status(thm)],[f775])).
% 3.10/1.72 thf(f775,plain,(
% 3.10/1.72 ! [X0 : list_a,X1 : list_a] : (((append_a @ nil_a @ X0) = X1) | (X0 != X1))),
% 3.10/1.72 inference(ennf_transformation,[status(thm)],[f755])).
% 3.10/1.72 thf(f755,plain,(
% 3.10/1.72 ! [X0 : list_a,X1 : list_a] : ((X0 = X1) => ((append_a @ nil_a @ X0) = X1))),
% 3.10/1.72 inference(rectify,[status(thm)],[f169])).
% 3.10/1.72 thf(f169,axiom,(
% 3.10/1.72 ! [X15 : list_a,X12 : list_a] : ((X12 = X15) => ((append_a @ nil_a @ X15) = X12))),
% 3.10/1.72 file('/export/starexec/sandbox2/tmp/tmp.5LVVyH7wPu/DTF2THF_20820.p',fact_168_eq__Nil__appendI)).
% 3.10/1.72 thf(f1014,plain,(
% 3.10/1.72 ((listIn1312259492pend_a @ (cons_a @ x @ xs) @ f) != (listIn1312259492pend_a @ (cons_a @ x @ (append_a @ nil_a @ xs)) @ f))),
% 3.10/1.72 inference(forward_demodulation,[status(thm)],[f1013,f1009])).
% 3.10/1.72 thf(f1009,plain,(
% 3.10/1.72 ( ! [X3 : a,X1 : list_a,X5 : list_a] : (((cons_a @ X3 @ (append_a @ X5 @ X1)) = (append_a @ (cons_a @ X3 @ X5) @ X1))) )),
% 3.10/1.72 inference(equality_resolution,[status(thm)],[f1008])).
% 3.10/1.72 thf(f1008,plain,(
% 3.10/1.72 ( ! [X3 : a,X0 : list_a,X1 : list_a,X5 : list_a] : (((cons_a @ X3 @ X0) = (append_a @ (cons_a @ X3 @ X5) @ X1)) | ((append_a @ X5 @ X1) != X0)) )),
% 3.10/1.72 inference(equality_resolution,[status(thm)],[f973])).
% 3.10/1.72 thf(f973,plain,(
% 3.10/1.72 ( ! [X2 : list_a,X3 : a,X0 : list_a,X1 : list_a,X5 : list_a] : (((cons_a @ X3 @ X0) = (append_a @ X2 @ X1)) | ((cons_a @ X3 @ X5) != X2) | ((append_a @ X5 @ X1) != X0)) )),
% 3.10/1.72 inference(cnf_transformation,[status(thm)],[f883])).
% 3.10/1.72 thf(f883,plain,(
% 3.10/1.72 ! [X0 : list_a,X1 : list_a,X2 : list_a,X3 : a] : (((((cons_a @ X3 @ (sK65 @ X3 @ X2 @ X1 @ X0)) = X2) & ((append_a @ (sK65 @ X3 @ X2 @ X1 @ X0) @ X1) = X0)) | ((nil_a = X2) & ((cons_a @ X3 @ X0) = X1)) | ((cons_a @ X3 @ X0) != (append_a @ X2 @ X1))) & (((cons_a @ X3 @ X0) = (append_a @ X2 @ X1)) | (! [X5 : list_a] : (((cons_a @ X3 @ X5) != X2) | ((append_a @ X5 @ X1) != X0)) & ((nil_a != X2) | ((cons_a @ X3 @ X0) != X1)))))),
% 3.10/1.72 inference(skolemisation,[status(esa),new_symbols(skolem,[sK65])],[f881,f882])).
% 3.10/1.72 thf(f882,plain,(
% 3.10/1.72 ! [X0 : list_a,X1 : list_a,X2 : list_a,X3 : a] : (? [X4 : list_a] : (((cons_a @ X3 @ X4) = X2) & ((append_a @ X4 @ X1) = X0)) => (((cons_a @ X3 @ (sK65 @ X3 @ X2 @ X1 @ X0)) = X2) & ((append_a @ (sK65 @ X3 @ X2 @ X1 @ X0) @ X1) = X0)))),
% 3.10/1.72 introduced(definition,[],[choice_axiom])).
% 3.10/1.72 thf(f881,plain,(
% 3.10/1.72 ! [X0 : list_a,X1 : list_a,X2 : list_a,X3 : a] : ((? [X4 : list_a] : (((cons_a @ X3 @ X4) = X2) & ((append_a @ X4 @ X1) = X0)) | ((nil_a = X2) & ((cons_a @ X3 @ X0) = X1)) | ((cons_a @ X3 @ X0) != (append_a @ X2 @ X1))) & (((cons_a @ X3 @ X0) = (append_a @ X2 @ X1)) | (! [X5 : list_a] : (((cons_a @ X3 @ X5) != X2) | ((append_a @ X5 @ X1) != X0)) & ((nil_a != X2) | ((cons_a @ X3 @ X0) != X1)))))),
% 3.10/1.72 inference(rectify,[status(thm)],[f880])).
% 3.10/1.72 thf(f880,plain,(
% 3.10/1.72 ! [X0 : list_a,X1 : list_a,X2 : list_a,X3 : a] : ((? [X4 : list_a] : (((cons_a @ X3 @ X4) = X2) & ((append_a @ X4 @ X1) = X0)) | ((nil_a = X2) & ((cons_a @ X3 @ X0) = X1)) | ((cons_a @ X3 @ X0) != (append_a @ X2 @ X1))) & (((cons_a @ X3 @ X0) = (append_a @ X2 @ X1)) | (! [X4 : list_a] : (((cons_a @ X3 @ X4) != X2) | ((append_a @ X4 @ X1) != X0)) & ((nil_a != X2) | ((cons_a @ X3 @ X0) != X1)))))),
% 3.10/1.72 inference(flattening,[status(thm)],[f879])).
% 3.10/1.72 thf(f879,plain,(
% 3.10/1.72 ! [X0 : list_a,X1 : list_a,X2 : list_a,X3 : a] : (((? [X4 : list_a] : (((cons_a @ X3 @ X4) = X2) & ((append_a @ X4 @ X1) = X0)) | ((nil_a = X2) & ((cons_a @ X3 @ X0) = X1))) | ((cons_a @ X3 @ X0) != (append_a @ X2 @ X1))) & (((cons_a @ X3 @ X0) = (append_a @ X2 @ X1)) | (! [X4 : list_a] : (((cons_a @ X3 @ X4) != X2) | ((append_a @ X4 @ X1) != X0)) & ((nil_a != X2) | ((cons_a @ X3 @ X0) != X1)))))),
% 3.10/1.72 inference(nnf_transformation,[status(thm)],[f442])).
% 3.10/1.72 thf(f442,plain,(
% 3.10/1.72 ! [X0 : list_a,X1 : list_a,X2 : list_a,X3 : a] : ((? [X4 : list_a] : (((cons_a @ X3 @ X4) = X2) & ((append_a @ X4 @ X1) = X0)) | ((nil_a = X2) & ((cons_a @ X3 @ X0) = X1))) <=> ((cons_a @ X3 @ X0) = (append_a @ X2 @ X1)))),
% 3.10/1.72 inference(fool_elimination,[status(thm)],[f441])).
% 3.10/1.72 thf(f441,plain,(
% 3.10/1.72 ! [X0 : list_a,X1 : list_a,X2 : list_a,X3 : a] : (((cons_a @ X3 @ X0) = (append_a @ X2 @ X1)) = ? [X4 : list_a] : (((cons_a @ X3 @ X4) = X2) & ((append_a @ X4 @ X1) = X0)) | (((cons_a @ X3 @ X0) = X1) & (nil_a = X2)))),
% 3.10/1.72 inference(rectify,[status(thm)],[f181])).
% 3.10/1.72 thf(f181,axiom,(
% 3.10/1.72 ! [X12 : list_a,X48 : list_a,X15 : list_a,X24 : a] : (((cons_a @ X24 @ X12) = (append_a @ X15 @ X48)) = ? [X57 : list_a] : (((cons_a @ X24 @ X57) = X15) & ((append_a @ X57 @ X48) = X12)) | (((cons_a @ X24 @ X12) = X48) & (nil_a = X15)))),
% 3.10/1.72 file('/export/starexec/sandbox2/tmp/tmp.5LVVyH7wPu/DTF2THF_20820.p',fact_180_Cons__eq__append__conv)).
% 3.10/1.72 thf(f1013,plain,(
% 3.10/1.72 ((listIn1312259492pend_a @ (cons_a @ x @ xs) @ f) != (listIn1312259492pend_a @ (append_a @ (cons_a @ x @ nil_a) @ xs) @ f))),
% 3.10/1.72 inference(superposition,[status(thm)],[f911,f943])).
% 3.10/1.72 thf(f943,plain,(
% 3.10/1.72 ( ! [X2 : list_a,X0 : nat > a,X1 : list_a] : (((listIn1312259492pend_a @ X2 @ (listIn1312259492pend_a @ X1 @ X0)) = (listIn1312259492pend_a @ (append_a @ X2 @ X1) @ X0))) )),
% 3.10/1.72 inference(cnf_transformation,[status(thm)],[f748])).
% 3.10/1.72 thf(f748,plain,(
% 3.10/1.72 ! [X0 : nat > a,X1 : list_a,X2 : list_a] : ((listIn1312259492pend_a @ X2 @ (listIn1312259492pend_a @ X1 @ X0)) = (listIn1312259492pend_a @ (append_a @ X2 @ X1) @ X0))),
% 3.10/1.72 inference(rectify,[status(thm)],[f152])).
% 3.10/1.72 thf(f152,axiom,(
% 3.10/1.72 ! [X0 : nat > a,X15 : list_a,X12 : list_a] : ((listIn1312259492pend_a @ X12 @ (listIn1312259492pend_a @ X15 @ X0)) = (listIn1312259492pend_a @ (append_a @ X12 @ X15) @ X0))),
% 3.10/1.72 file('/export/starexec/sandbox2/tmp/tmp.5LVVyH7wPu/DTF2THF_20820.p',fact_151_i__append__assoc)).
% 3.10/1.72 thf(f911,plain,(
% 3.10/1.72 ((listIn1312259492pend_a @ (cons_a @ x @ xs) @ f) != (listIn1312259492pend_a @ (cons_a @ x @ nil_a) @ (listIn1312259492pend_a @ xs @ f)))),
% 3.10/1.72 inference(cnf_transformation,[status(thm)],[f747])).
% 3.10/1.72 thf(f747,plain,(
% 3.10/1.72 ((listIn1312259492pend_a @ (cons_a @ x @ xs) @ f) != (listIn1312259492pend_a @ (cons_a @ x @ nil_a) @ (listIn1312259492pend_a @ xs @ f)))),
% 3.10/1.72 inference(flattening,[status(thm)],[f357])).
% 3.10/1.72 thf(f357,negated_conjecture,(
% 3.10/1.72 ~((listIn1312259492pend_a @ (cons_a @ x @ xs) @ f) = (listIn1312259492pend_a @ (cons_a @ x @ nil_a) @ (listIn1312259492pend_a @ xs @ f)))),
% 3.10/1.72 inference(negated_conjecture,[status(cth)],[f356])).
% 3.10/1.72 thf(f356,conjecture,(
% 3.10/1.72 ((listIn1312259492pend_a @ (cons_a @ x @ xs) @ f) = (listIn1312259492pend_a @ (cons_a @ x @ nil_a) @ (listIn1312259492pend_a @ xs @ f)))),
% 3.10/1.72 file('/export/starexec/sandbox2/tmp/tmp.5LVVyH7wPu/DTF2THF_20820.p',conj_0)).
% 3.10/1.72 % SZS output end Proof for DTF2THF_20820
% 3.10/1.72 % (21088)------------------------------
% 3.10/1.72 % (21088)Version: Vampire 4.8 (commit 7b44b1c2f on 2025-07-15 09:50:17 +0100)
% 3.10/1.72 % (21088)Termination reason: Refutation
% 3.10/1.72
% 3.10/1.72 % (21088)Memory used [KB]: 6908
% 3.10/1.72 % (21088)Time elapsed: 0.046 s
% 3.10/1.72 % (21088)Instructions burned: 73 (million)
% 3.10/1.72 % (21088)------------------------------
% 3.10/1.72 % (21088)------------------------------
% 3.10/1.72 % (21082)Success in time 0.084 s
%------------------------------------------------------------------------------