% TIMEFORMAT='%3R'; { time (exec 2>&1; /home/martin/bin/satallax -E /home/martin/.isabelle/contrib/e-2.5-1/x86_64-linux/eprover -p tstp -t 5 /home/martin/judgement-day/tptp-thf/tptp/Arrow_Order/prob_32__5184226_1 ) ; }
% This file was generated by Isabelle (most likely Sledgehammer)
% 2020-12-16 14:15:45.009

% Could-be-implicit typings (3)
thf(ty_n_t__List__Olist_It__List__Olist_It__Arrow____Order____Mirabelle____riepwfubkl__Oalt_J_J, type,
    list_l1515872562le_alt : $tType).
thf(ty_n_t__List__Olist_It__Arrow____Order____Mirabelle____riepwfubkl__Oalt_J, type,
    list_A2130511660le_alt : $tType).
thf(ty_n_t__Arrow____Order____Mirabelle____riepwfubkl__Oalt, type,
    arrow_1857593510le_alt : $tType).

% Explicit typings (26)
thf(sy_c_List_Oappend_001t__Arrow____Order____Mirabelle____riepwfubkl__Oalt, type,
    append714424641le_alt : list_A2130511660le_alt > list_A2130511660le_alt > list_A2130511660le_alt).
thf(sy_c_List_Oappend_001t__List__Olist_It__Arrow____Order____Mirabelle____riepwfubkl__Oalt_J, type,
    append606805575le_alt : list_l1515872562le_alt > list_l1515872562le_alt > list_l1515872562le_alt).
thf(sy_c_List_Obind_001t__Arrow____Order____Mirabelle____riepwfubkl__Oalt_001t__Arrow____Order____Mirabelle____riepwfubkl__Oalt, type,
    bind_A956715303le_alt : list_A2130511660le_alt > (arrow_1857593510le_alt > list_A2130511660le_alt) > list_A2130511660le_alt).
thf(sy_c_List_Obutlast_001t__Arrow____Order____Mirabelle____riepwfubkl__Oalt, type,
    butlas1522788856le_alt : list_A2130511660le_alt > list_A2130511660le_alt).
thf(sy_c_List_Oconcat_001t__Arrow____Order____Mirabelle____riepwfubkl__Oalt, type,
    concat2066114535le_alt : list_l1515872562le_alt > list_A2130511660le_alt).
thf(sy_c_List_Odistinct_001t__Arrow____Order____Mirabelle____riepwfubkl__Oalt, type,
    distin2037765919le_alt : list_A2130511660le_alt > $o).
thf(sy_c_List_Ofold_001t__Arrow____Order____Mirabelle____riepwfubkl__Oalt_001t__List__Olist_It__Arrow____Order____Mirabelle____riepwfubkl__Oalt_J, type,
    fold_A700976819le_alt : (arrow_1857593510le_alt > list_A2130511660le_alt > list_A2130511660le_alt) > list_A2130511660le_alt > list_A2130511660le_alt > list_A2130511660le_alt).
thf(sy_c_List_Oinsert_001t__Arrow____Order____Mirabelle____riepwfubkl__Oalt, type,
    insert1859930562le_alt : arrow_1857593510le_alt > list_A2130511660le_alt > list_A2130511660le_alt).
thf(sy_c_List_Olast_001t__Arrow____Order____Mirabelle____riepwfubkl__Oalt, type,
    last_A1259750469le_alt : list_A2130511660le_alt > arrow_1857593510le_alt).
thf(sy_c_List_Olist_OCons_001t__Arrow____Order____Mirabelle____riepwfubkl__Oalt, type,
    cons_A1864255580le_alt : arrow_1857593510le_alt > list_A2130511660le_alt > list_A2130511660le_alt).
thf(sy_c_List_Olist_OCons_001t__List__Olist_It__Arrow____Order____Mirabelle____riepwfubkl__Oalt_J, type,
    cons_l157309922le_alt : list_A2130511660le_alt > list_l1515872562le_alt > list_l1515872562le_alt).
thf(sy_c_List_Olist_ONil_001t__Arrow____Order____Mirabelle____riepwfubkl__Oalt, type,
    nil_Ar277507244le_alt : list_A2130511660le_alt).
thf(sy_c_List_Olist_ONil_001t__List__Olist_It__Arrow____Order____Mirabelle____riepwfubkl__Oalt_J, type,
    nil_li2110134322le_alt : list_l1515872562le_alt).
thf(sy_c_List_Olist__ex1_001t__Arrow____Order____Mirabelle____riepwfubkl__Oalt, type,
    list_e746053615le_alt : (arrow_1857593510le_alt > $o) > list_A2130511660le_alt > $o).
thf(sy_c_List_Olistrelp_001t__Arrow____Order____Mirabelle____riepwfubkl__Oalt_001t__Arrow____Order____Mirabelle____riepwfubkl__Oalt, type,
    listre1372300399le_alt : (arrow_1857593510le_alt > arrow_1857593510le_alt > $o) > list_A2130511660le_alt > list_A2130511660le_alt > $o).
thf(sy_c_List_Omap__tailrec__rev_001t__Arrow____Order____Mirabelle____riepwfubkl__Oalt_001t__Arrow____Order____Mirabelle____riepwfubkl__Oalt, type,
    map_ta1047575097le_alt : (arrow_1857593510le_alt > arrow_1857593510le_alt) > list_A2130511660le_alt > list_A2130511660le_alt > list_A2130511660le_alt).
thf(sy_c_List_Omaps_001t__Arrow____Order____Mirabelle____riepwfubkl__Oalt_001t__Arrow____Order____Mirabelle____riepwfubkl__Oalt, type,
    maps_A1380942317le_alt : (arrow_1857593510le_alt > list_A2130511660le_alt) > list_A2130511660le_alt > list_A2130511660le_alt).
thf(sy_c_List_Omember_001t__Arrow____Order____Mirabelle____riepwfubkl__Oalt, type,
    member1957571137le_alt : list_A2130511660le_alt > arrow_1857593510le_alt > $o).
thf(sy_c_List_Oord_Olexordp__eq_001t__Arrow____Order____Mirabelle____riepwfubkl__Oalt, type,
    lexord115420914le_alt : (arrow_1857593510le_alt > arrow_1857593510le_alt > $o) > list_A2130511660le_alt > list_A2130511660le_alt > $o).
thf(sy_c_List_Oproduct__lists_001t__Arrow____Order____Mirabelle____riepwfubkl__Oalt, type,
    produc608939669le_alt : list_l1515872562le_alt > list_l1515872562le_alt).
thf(sy_c_List_Orev_001t__Arrow____Order____Mirabelle____riepwfubkl__Oalt, type,
    rev_Ar197797644le_alt : list_A2130511660le_alt > list_A2130511660le_alt).
thf(sy_c_List_Orotate1_001t__Arrow____Order____Mirabelle____riepwfubkl__Oalt, type,
    rotate241821305le_alt : list_A2130511660le_alt > list_A2130511660le_alt).
thf(sy_c_List_Osplice_001t__Arrow____Order____Mirabelle____riepwfubkl__Oalt, type,
    splice1892561663le_alt : list_A2130511660le_alt > list_A2130511660le_alt > list_A2130511660le_alt).
thf(sy_c_List_Osubseqs_001t__Arrow____Order____Mirabelle____riepwfubkl__Oalt, type,
    subseq1380156923le_alt : list_A2130511660le_alt > list_l1515872562le_alt).
thf(sy_c_List_Ounion_001t__Arrow____Order____Mirabelle____riepwfubkl__Oalt, type,
    union_420169888le_alt : list_A2130511660le_alt > list_A2130511660le_alt > list_A2130511660le_alt).
thf(sy_v_a, type,
    a : arrow_1857593510le_alt).

% Relevant facts (105)
thf(fact_0_third__alt, axiom,
    ((![A : arrow_1857593510le_alt, B : arrow_1857593510le_alt]: ((~ ((A = B))) => (?[C : arrow_1857593510le_alt]: (distin2037765919le_alt @ (cons_A1864255580le_alt @ A @ (cons_A1864255580le_alt @ B @ (cons_A1864255580le_alt @ C @ nil_Ar277507244le_alt))))))))). % third_alt
thf(fact_1_alt3, axiom,
    ((?[A2 : arrow_1857593510le_alt, B2 : arrow_1857593510le_alt, C : arrow_1857593510le_alt]: (distin2037765919le_alt @ (cons_A1864255580le_alt @ A2 @ (cons_A1864255580le_alt @ B2 @ (cons_A1864255580le_alt @ C @ nil_Ar277507244le_alt))))))). % alt3
thf(fact_2_distinct__singleton, axiom,
    ((![X : arrow_1857593510le_alt]: (distin2037765919le_alt @ (cons_A1864255580le_alt @ X @ nil_Ar277507244le_alt))))). % distinct_singleton
thf(fact_3_list_Oinject, axiom,
    ((![X21 : arrow_1857593510le_alt, X22 : list_A2130511660le_alt, Y21 : arrow_1857593510le_alt, Y22 : list_A2130511660le_alt]: (((cons_A1864255580le_alt @ X21 @ X22) = (cons_A1864255580le_alt @ Y21 @ Y22)) = (((X21 = Y21)) & ((X22 = Y22))))))). % list.inject
thf(fact_4_distinct_Osimps_I1_J, axiom,
    ((distin2037765919le_alt @ nil_Ar277507244le_alt))). % distinct.simps(1)
thf(fact_5_distinct__length__2__or__more, axiom,
    ((![A : arrow_1857593510le_alt, B : arrow_1857593510le_alt, Xs : list_A2130511660le_alt]: ((distin2037765919le_alt @ (cons_A1864255580le_alt @ A @ (cons_A1864255580le_alt @ B @ Xs))) = (((~ ((A = B)))) & ((((distin2037765919le_alt @ (cons_A1864255580le_alt @ A @ Xs))) & ((distin2037765919le_alt @ (cons_A1864255580le_alt @ B @ Xs)))))))))). % distinct_length_2_or_more
thf(fact_6_list_Odistinct_I1_J, axiom,
    ((![X21 : arrow_1857593510le_alt, X22 : list_A2130511660le_alt]: (~ ((nil_Ar277507244le_alt = (cons_A1864255580le_alt @ X21 @ X22))))))). % list.distinct(1)
thf(fact_7_list_OdiscI, axiom,
    ((![List : list_A2130511660le_alt, X21 : arrow_1857593510le_alt, X22 : list_A2130511660le_alt]: ((List = (cons_A1864255580le_alt @ X21 @ X22)) => (~ ((List = nil_Ar277507244le_alt))))))). % list.discI
thf(fact_8_list_Oexhaust, axiom,
    ((![Y : list_A2130511660le_alt]: ((~ ((Y = nil_Ar277507244le_alt))) => (~ ((![X212 : arrow_1857593510le_alt, X222 : list_A2130511660le_alt]: (~ ((Y = (cons_A1864255580le_alt @ X212 @ X222))))))))))). % list.exhaust
thf(fact_9_list_Oinducts, axiom,
    ((![P : list_A2130511660le_alt > $o, List : list_A2130511660le_alt]: ((P @ nil_Ar277507244le_alt) => ((![X1 : arrow_1857593510le_alt, X2 : list_A2130511660le_alt]: ((P @ X2) => (P @ (cons_A1864255580le_alt @ X1 @ X2)))) => (P @ List)))))). % list.inducts
thf(fact_10_neq__Nil__conv, axiom,
    ((![Xs : list_A2130511660le_alt]: ((~ ((Xs = nil_Ar277507244le_alt))) = (?[Y2 : arrow_1857593510le_alt]: (?[Ys : list_A2130511660le_alt]: (Xs = (cons_A1864255580le_alt @ Y2 @ Ys)))))))). % neq_Nil_conv
thf(fact_11_list__induct2_H, axiom,
    ((![P : list_A2130511660le_alt > list_A2130511660le_alt > $o, Xs : list_A2130511660le_alt, Ys2 : list_A2130511660le_alt]: ((P @ nil_Ar277507244le_alt @ nil_Ar277507244le_alt) => ((![X3 : arrow_1857593510le_alt, Xs2 : list_A2130511660le_alt]: (P @ (cons_A1864255580le_alt @ X3 @ Xs2) @ nil_Ar277507244le_alt)) => ((![Y3 : arrow_1857593510le_alt, Ys3 : list_A2130511660le_alt]: (P @ nil_Ar277507244le_alt @ (cons_A1864255580le_alt @ Y3 @ Ys3))) => ((![X3 : arrow_1857593510le_alt, Xs2 : list_A2130511660le_alt, Y3 : arrow_1857593510le_alt, Ys3 : list_A2130511660le_alt]: ((P @ Xs2 @ Ys3) => (P @ (cons_A1864255580le_alt @ X3 @ Xs2) @ (cons_A1864255580le_alt @ Y3 @ Ys3)))) => (P @ Xs @ Ys2)))))))). % list_induct2'
thf(fact_12_splice_Oinduct, axiom,
    ((![P : list_A2130511660le_alt > list_A2130511660le_alt > $o, A0 : list_A2130511660le_alt, A1 : list_A2130511660le_alt]: ((![X_1 : list_A2130511660le_alt]: (P @ nil_Ar277507244le_alt @ X_1)) => ((![X3 : arrow_1857593510le_alt, Xs2 : list_A2130511660le_alt, Ys3 : list_A2130511660le_alt]: ((P @ Ys3 @ Xs2) => (P @ (cons_A1864255580le_alt @ X3 @ Xs2) @ Ys3))) => (P @ A0 @ A1)))))). % splice.induct
thf(fact_13_induct__list012, axiom,
    ((![P : list_A2130511660le_alt > $o, Xs : list_A2130511660le_alt]: ((P @ nil_Ar277507244le_alt) => ((![X3 : arrow_1857593510le_alt]: (P @ (cons_A1864255580le_alt @ X3 @ nil_Ar277507244le_alt))) => ((![X3 : arrow_1857593510le_alt, Y3 : arrow_1857593510le_alt, Zs : list_A2130511660le_alt]: ((P @ Zs) => ((P @ (cons_A1864255580le_alt @ Y3 @ Zs)) => (P @ (cons_A1864255580le_alt @ X3 @ (cons_A1864255580le_alt @ Y3 @ Zs)))))) => (P @ Xs))))))). % induct_list012
thf(fact_14_not__Cons__self2, axiom,
    ((![X : arrow_1857593510le_alt, Xs : list_A2130511660le_alt]: (~ (((cons_A1864255580le_alt @ X @ Xs) = Xs)))))). % not_Cons_self2
thf(fact_15_map__tailrec__rev_Oinduct, axiom,
    ((![P : (arrow_1857593510le_alt > arrow_1857593510le_alt) > list_A2130511660le_alt > list_A2130511660le_alt > $o, A0 : arrow_1857593510le_alt > arrow_1857593510le_alt, A1 : list_A2130511660le_alt, A22 : list_A2130511660le_alt]: ((![F : arrow_1857593510le_alt > arrow_1857593510le_alt, X_1 : list_A2130511660le_alt]: (P @ F @ nil_Ar277507244le_alt @ X_1)) => ((![F : arrow_1857593510le_alt > arrow_1857593510le_alt, A2 : arrow_1857593510le_alt, As : list_A2130511660le_alt, Bs : list_A2130511660le_alt]: ((P @ F @ As @ (cons_A1864255580le_alt @ (F @ A2) @ Bs)) => (P @ F @ (cons_A1864255580le_alt @ A2 @ As) @ Bs))) => (P @ A0 @ A1 @ A22)))))). % map_tailrec_rev.induct
thf(fact_16_list__nonempty__induct, axiom,
    ((![Xs : list_A2130511660le_alt, P : list_A2130511660le_alt > $o]: ((~ ((Xs = nil_Ar277507244le_alt))) => ((![X3 : arrow_1857593510le_alt]: (P @ (cons_A1864255580le_alt @ X3 @ nil_Ar277507244le_alt))) => ((![X3 : arrow_1857593510le_alt, Xs2 : list_A2130511660le_alt]: ((~ ((Xs2 = nil_Ar277507244le_alt))) => ((P @ Xs2) => (P @ (cons_A1864255580le_alt @ X3 @ Xs2))))) => (P @ Xs))))))). % list_nonempty_induct
thf(fact_17_successively_Oinduct, axiom,
    ((![P : (arrow_1857593510le_alt > arrow_1857593510le_alt > $o) > list_A2130511660le_alt > $o, A0 : arrow_1857593510le_alt > arrow_1857593510le_alt > $o, A1 : list_A2130511660le_alt]: ((![P2 : arrow_1857593510le_alt > arrow_1857593510le_alt > $o]: (P @ P2 @ nil_Ar277507244le_alt)) => ((![P2 : arrow_1857593510le_alt > arrow_1857593510le_alt > $o, X3 : arrow_1857593510le_alt]: (P @ P2 @ (cons_A1864255580le_alt @ X3 @ nil_Ar277507244le_alt))) => ((![P2 : arrow_1857593510le_alt > arrow_1857593510le_alt > $o, X3 : arrow_1857593510le_alt, Y3 : arrow_1857593510le_alt, Xs2 : list_A2130511660le_alt]: ((P @ P2 @ (cons_A1864255580le_alt @ Y3 @ Xs2)) => (P @ P2 @ (cons_A1864255580le_alt @ X3 @ (cons_A1864255580le_alt @ Y3 @ Xs2))))) => (P @ A0 @ A1))))))). % successively.induct
thf(fact_18_remdups__adj_Oinduct, axiom,
    ((![P : list_A2130511660le_alt > $o, A0 : list_A2130511660le_alt]: ((P @ nil_Ar277507244le_alt) => ((![X3 : arrow_1857593510le_alt]: (P @ (cons_A1864255580le_alt @ X3 @ nil_Ar277507244le_alt))) => ((![X3 : arrow_1857593510le_alt, Y3 : arrow_1857593510le_alt, Xs2 : list_A2130511660le_alt]: (((X3 = Y3) => (P @ (cons_A1864255580le_alt @ X3 @ Xs2))) => (((~ ((X3 = Y3))) => (P @ (cons_A1864255580le_alt @ Y3 @ Xs2))) => (P @ (cons_A1864255580le_alt @ X3 @ (cons_A1864255580le_alt @ Y3 @ Xs2)))))) => (P @ A0))))))). % remdups_adj.induct
thf(fact_19_sorted__wrt_Oinduct, axiom,
    ((![P : (arrow_1857593510le_alt > arrow_1857593510le_alt > $o) > list_A2130511660le_alt > $o, A0 : arrow_1857593510le_alt > arrow_1857593510le_alt > $o, A1 : list_A2130511660le_alt]: ((![P2 : arrow_1857593510le_alt > arrow_1857593510le_alt > $o]: (P @ P2 @ nil_Ar277507244le_alt)) => ((![P2 : arrow_1857593510le_alt > arrow_1857593510le_alt > $o, X3 : arrow_1857593510le_alt, Ys3 : list_A2130511660le_alt]: ((P @ P2 @ Ys3) => (P @ P2 @ (cons_A1864255580le_alt @ X3 @ Ys3)))) => (P @ A0 @ A1)))))). % sorted_wrt.induct
thf(fact_20_remdups__adj_Ocases, axiom,
    ((![X : list_A2130511660le_alt]: ((~ ((X = nil_Ar277507244le_alt))) => ((![X3 : arrow_1857593510le_alt]: (~ ((X = (cons_A1864255580le_alt @ X3 @ nil_Ar277507244le_alt))))) => (~ ((![X3 : arrow_1857593510le_alt, Y3 : arrow_1857593510le_alt, Xs2 : list_A2130511660le_alt]: (~ ((X = (cons_A1864255580le_alt @ X3 @ (cons_A1864255580le_alt @ Y3 @ Xs2))))))))))))). % remdups_adj.cases
thf(fact_21_transpose_Ocases, axiom,
    ((![X : list_l1515872562le_alt]: ((~ ((X = nil_li2110134322le_alt))) => ((![Xss : list_l1515872562le_alt]: (~ ((X = (cons_l157309922le_alt @ nil_Ar277507244le_alt @ Xss))))) => (~ ((![X3 : arrow_1857593510le_alt, Xs2 : list_A2130511660le_alt, Xss : list_l1515872562le_alt]: (~ ((X = (cons_l157309922le_alt @ (cons_A1864255580le_alt @ X3 @ Xs2) @ Xss)))))))))))). % transpose.cases
thf(fact_22_shuffles_Oinduct, axiom,
    ((![P : list_A2130511660le_alt > list_A2130511660le_alt > $o, A0 : list_A2130511660le_alt, A1 : list_A2130511660le_alt]: ((![X_1 : list_A2130511660le_alt]: (P @ nil_Ar277507244le_alt @ X_1)) => ((![Xs2 : list_A2130511660le_alt]: (P @ Xs2 @ nil_Ar277507244le_alt)) => ((![X3 : arrow_1857593510le_alt, Xs2 : list_A2130511660le_alt, Y3 : arrow_1857593510le_alt, Ys3 : list_A2130511660le_alt]: ((P @ Xs2 @ (cons_A1864255580le_alt @ Y3 @ Ys3)) => ((P @ (cons_A1864255580le_alt @ X3 @ Xs2) @ Ys3) => (P @ (cons_A1864255580le_alt @ X3 @ Xs2) @ (cons_A1864255580le_alt @ Y3 @ Ys3))))) => (P @ A0 @ A1))))))). % shuffles.induct
thf(fact_23_distinct__union, axiom,
    ((![Xs : list_A2130511660le_alt, Ys2 : list_A2130511660le_alt]: ((distin2037765919le_alt @ (union_420169888le_alt @ Xs @ Ys2)) = (distin2037765919le_alt @ Ys2))))). % distinct_union
thf(fact_24_insert__Nil, axiom,
    ((![X : arrow_1857593510le_alt]: ((insert1859930562le_alt @ X @ nil_Ar277507244le_alt) = (cons_A1864255580le_alt @ X @ nil_Ar277507244le_alt))))). % insert_Nil
thf(fact_25_list__ex1__simps_I1_J, axiom,
    ((![P : arrow_1857593510le_alt > $o]: (~ ((list_e746053615le_alt @ P @ nil_Ar277507244le_alt)))))). % list_ex1_simps(1)
thf(fact_26_map__tailrec__rev_Oelims, axiom,
    ((![X : arrow_1857593510le_alt > arrow_1857593510le_alt, Xa : list_A2130511660le_alt, Xb : list_A2130511660le_alt, Y : list_A2130511660le_alt]: (((map_ta1047575097le_alt @ X @ Xa @ Xb) = Y) => (((Xa = nil_Ar277507244le_alt) => (~ ((Y = Xb)))) => (~ ((![A2 : arrow_1857593510le_alt, As : list_A2130511660le_alt]: ((Xa = (cons_A1864255580le_alt @ A2 @ As)) => (~ ((Y = (map_ta1047575097le_alt @ X @ As @ (cons_A1864255580le_alt @ (X @ A2) @ Xb)))))))))))))). % map_tailrec_rev.elims
thf(fact_27_ord_Olexordp__eq__simps_I3_J, axiom,
    ((![Less : arrow_1857593510le_alt > arrow_1857593510le_alt > $o, X : arrow_1857593510le_alt, Xs : list_A2130511660le_alt]: (~ ((lexord115420914le_alt @ Less @ (cons_A1864255580le_alt @ X @ Xs) @ nil_Ar277507244le_alt)))))). % ord.lexordp_eq_simps(3)
thf(fact_28_bind__simps_I1_J, axiom,
    ((![F2 : arrow_1857593510le_alt > list_A2130511660le_alt]: ((bind_A956715303le_alt @ nil_Ar277507244le_alt @ F2) = nil_Ar277507244le_alt)))). % bind_simps(1)
thf(fact_29_listrelp_Oinducts, axiom,
    ((![R : arrow_1857593510le_alt > arrow_1857593510le_alt > $o, X12 : list_A2130511660le_alt, X23 : list_A2130511660le_alt, P : list_A2130511660le_alt > list_A2130511660le_alt > $o]: ((listre1372300399le_alt @ R @ X12 @ X23) => ((P @ nil_Ar277507244le_alt @ nil_Ar277507244le_alt) => ((![X3 : arrow_1857593510le_alt, Y3 : arrow_1857593510le_alt, Xs2 : list_A2130511660le_alt, Ys3 : list_A2130511660le_alt]: ((R @ X3 @ Y3) => ((listre1372300399le_alt @ R @ Xs2 @ Ys3) => ((P @ Xs2 @ Ys3) => (P @ (cons_A1864255580le_alt @ X3 @ Xs2) @ (cons_A1864255580le_alt @ Y3 @ Ys3)))))) => (P @ X12 @ X23))))))). % listrelp.inducts
thf(fact_30_listrelp_Osimps, axiom,
    ((listre1372300399le_alt = (^[R2 : arrow_1857593510le_alt > arrow_1857593510le_alt > $o]: (^[A12 : list_A2130511660le_alt]: (^[A23 : list_A2130511660le_alt]: (((((A12 = nil_Ar277507244le_alt)) & ((A23 = nil_Ar277507244le_alt)))) | ((?[X4 : arrow_1857593510le_alt]: (?[Y2 : arrow_1857593510le_alt]: (?[Xs3 : list_A2130511660le_alt]: (?[Ys : list_A2130511660le_alt]: (((A12 = (cons_A1864255580le_alt @ X4 @ Xs3))) & ((((A23 = (cons_A1864255580le_alt @ Y2 @ Ys))) & ((((R2 @ X4 @ Y2)) & ((listre1372300399le_alt @ R2 @ Xs3 @ Ys))))))))))))))))))). % listrelp.simps
thf(fact_31_listrelp_Ocases, axiom,
    ((![R : arrow_1857593510le_alt > arrow_1857593510le_alt > $o, A1 : list_A2130511660le_alt, A22 : list_A2130511660le_alt]: ((listre1372300399le_alt @ R @ A1 @ A22) => (((A1 = nil_Ar277507244le_alt) => (~ ((A22 = nil_Ar277507244le_alt)))) => (~ ((![X3 : arrow_1857593510le_alt, Y3 : arrow_1857593510le_alt, Xs2 : list_A2130511660le_alt]: ((A1 = (cons_A1864255580le_alt @ X3 @ Xs2)) => (![Ys3 : list_A2130511660le_alt]: ((A22 = (cons_A1864255580le_alt @ Y3 @ Ys3)) => ((R @ X3 @ Y3) => (~ ((listre1372300399le_alt @ R @ Xs2 @ Ys3))))))))))))))). % listrelp.cases
thf(fact_32_ord_Olexordp__eq__simps_I4_J, axiom,
    ((![Less : arrow_1857593510le_alt > arrow_1857593510le_alt > $o, X : arrow_1857593510le_alt, Xs : list_A2130511660le_alt, Y : arrow_1857593510le_alt, Ys2 : list_A2130511660le_alt]: ((lexord115420914le_alt @ Less @ (cons_A1864255580le_alt @ X @ Xs) @ (cons_A1864255580le_alt @ Y @ Ys2)) = (((Less @ X @ Y)) | ((((~ ((Less @ Y @ X)))) & ((lexord115420914le_alt @ Less @ Xs @ Ys2))))))))). % ord.lexordp_eq_simps(4)
thf(fact_33_ord_Olexordp__eq__simps_I2_J, axiom,
    ((![Less : arrow_1857593510le_alt > arrow_1857593510le_alt > $o, Xs : list_A2130511660le_alt]: ((lexord115420914le_alt @ Less @ Xs @ nil_Ar277507244le_alt) = (Xs = nil_Ar277507244le_alt))))). % ord.lexordp_eq_simps(2)
thf(fact_34_ord_Olexordp__eq__simps_I1_J, axiom,
    ((![Less : arrow_1857593510le_alt > arrow_1857593510le_alt > $o, Ys2 : list_A2130511660le_alt]: (lexord115420914le_alt @ Less @ nil_Ar277507244le_alt @ Ys2)))). % ord.lexordp_eq_simps(1)
thf(fact_35_distinct__insert, axiom,
    ((![X : arrow_1857593510le_alt, Xs : list_A2130511660le_alt]: ((distin2037765919le_alt @ (insert1859930562le_alt @ X @ Xs)) = (distin2037765919le_alt @ Xs))))). % distinct_insert
thf(fact_36_ord_Olexordp__eq_OCons, axiom,
    ((![Less : arrow_1857593510le_alt > arrow_1857593510le_alt > $o, X : arrow_1857593510le_alt, Y : arrow_1857593510le_alt, Xs : list_A2130511660le_alt, Ys2 : list_A2130511660le_alt]: ((Less @ X @ Y) => (lexord115420914le_alt @ Less @ (cons_A1864255580le_alt @ X @ Xs) @ (cons_A1864255580le_alt @ Y @ Ys2)))))). % ord.lexordp_eq.Cons
thf(fact_37_ord_Olexordp__eq_OCons__eq, axiom,
    ((![Less : arrow_1857593510le_alt > arrow_1857593510le_alt > $o, X : arrow_1857593510le_alt, Y : arrow_1857593510le_alt, Xs : list_A2130511660le_alt, Ys2 : list_A2130511660le_alt]: ((~ ((Less @ X @ Y))) => ((~ ((Less @ Y @ X))) => ((lexord115420914le_alt @ Less @ Xs @ Ys2) => (lexord115420914le_alt @ Less @ (cons_A1864255580le_alt @ X @ Xs) @ (cons_A1864255580le_alt @ Y @ Ys2)))))))). % ord.lexordp_eq.Cons_eq
thf(fact_38_ord_Olexordp__eq_ONil, axiom,
    ((![Less : arrow_1857593510le_alt > arrow_1857593510le_alt > $o, Ys2 : list_A2130511660le_alt]: (lexord115420914le_alt @ Less @ nil_Ar277507244le_alt @ Ys2)))). % ord.lexordp_eq.Nil
thf(fact_39_listrelp_OCons, axiom,
    ((![R : arrow_1857593510le_alt > arrow_1857593510le_alt > $o, X : arrow_1857593510le_alt, Y : arrow_1857593510le_alt, Xs : list_A2130511660le_alt, Ys2 : list_A2130511660le_alt]: ((R @ X @ Y) => ((listre1372300399le_alt @ R @ Xs @ Ys2) => (listre1372300399le_alt @ R @ (cons_A1864255580le_alt @ X @ Xs) @ (cons_A1864255580le_alt @ Y @ Ys2))))))). % listrelp.Cons
thf(fact_40_listrelp_ONil, axiom,
    ((![R : arrow_1857593510le_alt > arrow_1857593510le_alt > $o]: (listre1372300399le_alt @ R @ nil_Ar277507244le_alt @ nil_Ar277507244le_alt)))). % listrelp.Nil
thf(fact_41_map__tailrec__rev_Osimps_I2_J, axiom,
    ((![F2 : arrow_1857593510le_alt > arrow_1857593510le_alt, A : arrow_1857593510le_alt, As2 : list_A2130511660le_alt, Bs2 : list_A2130511660le_alt]: ((map_ta1047575097le_alt @ F2 @ (cons_A1864255580le_alt @ A @ As2) @ Bs2) = (map_ta1047575097le_alt @ F2 @ As2 @ (cons_A1864255580le_alt @ (F2 @ A) @ Bs2)))))). % map_tailrec_rev.simps(2)
thf(fact_42_ord_Olexordp__eq_Ocases, axiom,
    ((![Less : arrow_1857593510le_alt > arrow_1857593510le_alt > $o, A1 : list_A2130511660le_alt, A22 : list_A2130511660le_alt]: ((lexord115420914le_alt @ Less @ A1 @ A22) => ((~ ((A1 = nil_Ar277507244le_alt))) => ((![X3 : arrow_1857593510le_alt]: ((?[Xs2 : list_A2130511660le_alt]: (A1 = (cons_A1864255580le_alt @ X3 @ Xs2))) => (![Y3 : arrow_1857593510le_alt]: ((?[Ys3 : list_A2130511660le_alt]: (A22 = (cons_A1864255580le_alt @ Y3 @ Ys3))) => (~ ((Less @ X3 @ Y3))))))) => (~ ((![X3 : arrow_1857593510le_alt, Y3 : arrow_1857593510le_alt, Xs2 : list_A2130511660le_alt]: ((A1 = (cons_A1864255580le_alt @ X3 @ Xs2)) => (![Ys3 : list_A2130511660le_alt]: ((A22 = (cons_A1864255580le_alt @ Y3 @ Ys3)) => ((~ ((Less @ X3 @ Y3))) => ((~ ((Less @ Y3 @ X3))) => (~ ((lexord115420914le_alt @ Less @ Xs2 @ Ys3))))))))))))))))). % ord.lexordp_eq.cases
thf(fact_43_ord_Olexordp__eq_Osimps, axiom,
    ((lexord115420914le_alt = (^[Less2 : arrow_1857593510le_alt > arrow_1857593510le_alt > $o]: (^[A12 : list_A2130511660le_alt]: (^[A23 : list_A2130511660le_alt]: (((?[Ys : list_A2130511660le_alt]: (((A12 = nil_Ar277507244le_alt)) & ((A23 = Ys))))) | ((((?[X4 : arrow_1857593510le_alt]: (?[Y2 : arrow_1857593510le_alt]: (?[Xs3 : list_A2130511660le_alt]: (?[Ys : list_A2130511660le_alt]: (((A12 = (cons_A1864255580le_alt @ X4 @ Xs3))) & ((((A23 = (cons_A1864255580le_alt @ Y2 @ Ys))) & ((Less2 @ X4 @ Y2)))))))))) | ((?[X4 : arrow_1857593510le_alt]: (?[Y2 : arrow_1857593510le_alt]: (?[Xs3 : list_A2130511660le_alt]: (?[Ys : list_A2130511660le_alt]: (((A12 = (cons_A1864255580le_alt @ X4 @ Xs3))) & ((((A23 = (cons_A1864255580le_alt @ Y2 @ Ys))) & ((((~ ((Less2 @ X4 @ Y2)))) & ((((~ ((Less2 @ Y2 @ X4)))) & ((lexord115420914le_alt @ Less2 @ Xs3 @ Ys))))))))))))))))))))))). % ord.lexordp_eq.simps
thf(fact_44_ord_Olexordp__eq_Oinducts, axiom,
    ((![Less : arrow_1857593510le_alt > arrow_1857593510le_alt > $o, X12 : list_A2130511660le_alt, X23 : list_A2130511660le_alt, P : list_A2130511660le_alt > list_A2130511660le_alt > $o]: ((lexord115420914le_alt @ Less @ X12 @ X23) => ((![X_1 : list_A2130511660le_alt]: (P @ nil_Ar277507244le_alt @ X_1)) => ((![X3 : arrow_1857593510le_alt, Y3 : arrow_1857593510le_alt, Xs2 : list_A2130511660le_alt, Ys3 : list_A2130511660le_alt]: ((Less @ X3 @ Y3) => (P @ (cons_A1864255580le_alt @ X3 @ Xs2) @ (cons_A1864255580le_alt @ Y3 @ Ys3)))) => ((![X3 : arrow_1857593510le_alt, Y3 : arrow_1857593510le_alt, Xs2 : list_A2130511660le_alt, Ys3 : list_A2130511660le_alt]: ((~ ((Less @ X3 @ Y3))) => ((~ ((Less @ Y3 @ X3))) => ((lexord115420914le_alt @ Less @ Xs2 @ Ys3) => ((P @ Xs2 @ Ys3) => (P @ (cons_A1864255580le_alt @ X3 @ Xs2) @ (cons_A1864255580le_alt @ Y3 @ Ys3))))))) => (P @ X12 @ X23)))))))). % ord.lexordp_eq.inducts
thf(fact_45_product__lists_Osimps_I1_J, axiom,
    (((produc608939669le_alt @ nil_li2110134322le_alt) = (cons_l157309922le_alt @ nil_Ar277507244le_alt @ nil_li2110134322le_alt)))). % product_lists.simps(1)
thf(fact_46_subseqs_Osimps_I1_J, axiom,
    (((subseq1380156923le_alt @ nil_Ar277507244le_alt) = (cons_l157309922le_alt @ nil_Ar277507244le_alt @ nil_li2110134322le_alt)))). % subseqs.simps(1)
thf(fact_47_member__rec_I2_J, axiom,
    ((![Y : arrow_1857593510le_alt]: (~ ((member1957571137le_alt @ nil_Ar277507244le_alt @ Y)))))). % member_rec(2)
thf(fact_48_member__rec_I1_J, axiom,
    ((![X : arrow_1857593510le_alt, Xs : list_A2130511660le_alt, Y : arrow_1857593510le_alt]: ((member1957571137le_alt @ (cons_A1864255580le_alt @ X @ Xs) @ Y) = (((X = Y)) | ((member1957571137le_alt @ Xs @ Y))))))). % member_rec(1)
thf(fact_49_splice_Oelims, axiom,
    ((![X : list_A2130511660le_alt, Xa : list_A2130511660le_alt, Y : list_A2130511660le_alt]: (((splice1892561663le_alt @ X @ Xa) = Y) => (((X = nil_Ar277507244le_alt) => (~ ((Y = Xa)))) => (~ ((![X3 : arrow_1857593510le_alt, Xs2 : list_A2130511660le_alt]: ((X = (cons_A1864255580le_alt @ X3 @ Xs2)) => (~ ((Y = (cons_A1864255580le_alt @ X3 @ (splice1892561663le_alt @ Xa @ Xs2)))))))))))))). % splice.elims
thf(fact_50_split__Nil__iff, axiom,
    ((![Xs : list_A2130511660le_alt, Ys2 : list_A2130511660le_alt]: (((splice1892561663le_alt @ Xs @ Ys2) = nil_Ar277507244le_alt) = (((Xs = nil_Ar277507244le_alt)) & ((Ys2 = nil_Ar277507244le_alt))))))). % split_Nil_iff
thf(fact_51_splice__Nil2, axiom,
    ((![Xs : list_A2130511660le_alt]: ((splice1892561663le_alt @ Xs @ nil_Ar277507244le_alt) = Xs)))). % splice_Nil2
thf(fact_52_splice_Osimps_I2_J, axiom,
    ((![X : arrow_1857593510le_alt, Xs : list_A2130511660le_alt, Ys2 : list_A2130511660le_alt]: ((splice1892561663le_alt @ (cons_A1864255580le_alt @ X @ Xs) @ Ys2) = (cons_A1864255580le_alt @ X @ (splice1892561663le_alt @ Ys2 @ Xs)))))). % splice.simps(2)
thf(fact_53_splice_Osimps_I1_J, axiom,
    ((![Ys2 : list_A2130511660le_alt]: ((splice1892561663le_alt @ nil_Ar277507244le_alt @ Ys2) = Ys2)))). % splice.simps(1)
thf(fact_54_rev__conv__fold, axiom,
    ((rev_Ar197797644le_alt = (^[Xs3 : list_A2130511660le_alt]: (fold_A700976819le_alt @ cons_A1864255580le_alt @ Xs3 @ nil_Ar277507244le_alt))))). % rev_conv_fold
thf(fact_55_not__distinct__decomp, axiom,
    ((![Ws : list_A2130511660le_alt]: ((~ ((distin2037765919le_alt @ Ws))) => (?[Xs2 : list_A2130511660le_alt, Ys3 : list_A2130511660le_alt, Zs : list_A2130511660le_alt, Y3 : arrow_1857593510le_alt]: (Ws = (append714424641le_alt @ Xs2 @ (append714424641le_alt @ (cons_A1864255580le_alt @ Y3 @ nil_Ar277507244le_alt) @ (append714424641le_alt @ Ys3 @ (append714424641le_alt @ (cons_A1864255580le_alt @ Y3 @ nil_Ar277507244le_alt) @ Zs)))))))))). % not_distinct_decomp
thf(fact_56_append__Nil2, axiom,
    ((![Xs : list_A2130511660le_alt]: ((append714424641le_alt @ Xs @ nil_Ar277507244le_alt) = Xs)))). % append_Nil2
thf(fact_57_append__self__conv, axiom,
    ((![Xs : list_A2130511660le_alt, Ys2 : list_A2130511660le_alt]: (((append714424641le_alt @ Xs @ Ys2) = Xs) = (Ys2 = nil_Ar277507244le_alt))))). % append_self_conv
thf(fact_58_self__append__conv, axiom,
    ((![Xs : list_A2130511660le_alt, Ys2 : list_A2130511660le_alt]: ((Xs = (append714424641le_alt @ Xs @ Ys2)) = (Ys2 = nil_Ar277507244le_alt))))). % self_append_conv
thf(fact_59_append__self__conv2, axiom,
    ((![Xs : list_A2130511660le_alt, Ys2 : list_A2130511660le_alt]: (((append714424641le_alt @ Xs @ Ys2) = Ys2) = (Xs = nil_Ar277507244le_alt))))). % append_self_conv2
thf(fact_60_self__append__conv2, axiom,
    ((![Ys2 : list_A2130511660le_alt, Xs : list_A2130511660le_alt]: ((Ys2 = (append714424641le_alt @ Xs @ Ys2)) = (Xs = nil_Ar277507244le_alt))))). % self_append_conv2
thf(fact_61_Nil__is__append__conv, axiom,
    ((![Xs : list_A2130511660le_alt, Ys2 : list_A2130511660le_alt]: ((nil_Ar277507244le_alt = (append714424641le_alt @ Xs @ Ys2)) = (((Xs = nil_Ar277507244le_alt)) & ((Ys2 = nil_Ar277507244le_alt))))))). % Nil_is_append_conv
thf(fact_62_append__is__Nil__conv, axiom,
    ((![Xs : list_A2130511660le_alt, Ys2 : list_A2130511660le_alt]: (((append714424641le_alt @ Xs @ Ys2) = nil_Ar277507244le_alt) = (((Xs = nil_Ar277507244le_alt)) & ((Ys2 = nil_Ar277507244le_alt))))))). % append_is_Nil_conv
thf(fact_63_append_Oright__neutral, axiom,
    ((![A : list_A2130511660le_alt]: ((append714424641le_alt @ A @ nil_Ar277507244le_alt) = A)))). % append.right_neutral
thf(fact_64_Nil__is__rev__conv, axiom,
    ((![Xs : list_A2130511660le_alt]: ((nil_Ar277507244le_alt = (rev_Ar197797644le_alt @ Xs)) = (Xs = nil_Ar277507244le_alt))))). % Nil_is_rev_conv
thf(fact_65_rev__is__Nil__conv, axiom,
    ((![Xs : list_A2130511660le_alt]: (((rev_Ar197797644le_alt @ Xs) = nil_Ar277507244le_alt) = (Xs = nil_Ar277507244le_alt))))). % rev_is_Nil_conv
thf(fact_66_distinct__rev, axiom,
    ((![Xs : list_A2130511660le_alt]: ((distin2037765919le_alt @ (rev_Ar197797644le_alt @ Xs)) = (distin2037765919le_alt @ Xs))))). % distinct_rev
thf(fact_67_append1__eq__conv, axiom,
    ((![Xs : list_A2130511660le_alt, X : arrow_1857593510le_alt, Ys2 : list_A2130511660le_alt, Y : arrow_1857593510le_alt]: (((append714424641le_alt @ Xs @ (cons_A1864255580le_alt @ X @ nil_Ar277507244le_alt)) = (append714424641le_alt @ Ys2 @ (cons_A1864255580le_alt @ Y @ nil_Ar277507244le_alt))) = (((Xs = Ys2)) & ((X = Y))))))). % append1_eq_conv
thf(fact_68_rev__singleton__conv, axiom,
    ((![Xs : list_A2130511660le_alt, X : arrow_1857593510le_alt]: (((rev_Ar197797644le_alt @ Xs) = (cons_A1864255580le_alt @ X @ nil_Ar277507244le_alt)) = (Xs = (cons_A1864255580le_alt @ X @ nil_Ar277507244le_alt)))))). % rev_singleton_conv
thf(fact_69_singleton__rev__conv, axiom,
    ((![X : arrow_1857593510le_alt, Xs : list_A2130511660le_alt]: (((cons_A1864255580le_alt @ X @ nil_Ar277507244le_alt) = (rev_Ar197797644le_alt @ Xs)) = (Xs = (cons_A1864255580le_alt @ X @ nil_Ar277507244le_alt)))))). % singleton_rev_conv
thf(fact_70_rev__eq__Cons__iff, axiom,
    ((![Xs : list_A2130511660le_alt, Y : arrow_1857593510le_alt, Ys2 : list_A2130511660le_alt]: (((rev_Ar197797644le_alt @ Xs) = (cons_A1864255580le_alt @ Y @ Ys2)) = (Xs = (append714424641le_alt @ (rev_Ar197797644le_alt @ Ys2) @ (cons_A1864255580le_alt @ Y @ nil_Ar277507244le_alt))))))). % rev_eq_Cons_iff
thf(fact_71_rev_Osimps_I2_J, axiom,
    ((![X : arrow_1857593510le_alt, Xs : list_A2130511660le_alt]: ((rev_Ar197797644le_alt @ (cons_A1864255580le_alt @ X @ Xs)) = (append714424641le_alt @ (rev_Ar197797644le_alt @ Xs) @ (cons_A1864255580le_alt @ X @ nil_Ar277507244le_alt)))))). % rev.simps(2)
thf(fact_72_rev_Osimps_I1_J, axiom,
    (((rev_Ar197797644le_alt @ nil_Ar277507244le_alt) = nil_Ar277507244le_alt))). % rev.simps(1)
thf(fact_73_Cons__eq__appendI, axiom,
    ((![X : arrow_1857593510le_alt, Xs1 : list_A2130511660le_alt, Ys2 : list_A2130511660le_alt, Xs : list_A2130511660le_alt, Zs2 : list_A2130511660le_alt]: (((cons_A1864255580le_alt @ X @ Xs1) = Ys2) => ((Xs = (append714424641le_alt @ Xs1 @ Zs2)) => ((cons_A1864255580le_alt @ X @ Xs) = (append714424641le_alt @ Ys2 @ Zs2))))))). % Cons_eq_appendI
thf(fact_74_append__Cons, axiom,
    ((![X : arrow_1857593510le_alt, Xs : list_A2130511660le_alt, Ys2 : list_A2130511660le_alt]: ((append714424641le_alt @ (cons_A1864255580le_alt @ X @ Xs) @ Ys2) = (cons_A1864255580le_alt @ X @ (append714424641le_alt @ Xs @ Ys2)))))). % append_Cons
thf(fact_75_eq__Nil__appendI, axiom,
    ((![Xs : list_A2130511660le_alt, Ys2 : list_A2130511660le_alt]: ((Xs = Ys2) => (Xs = (append714424641le_alt @ nil_Ar277507244le_alt @ Ys2)))))). % eq_Nil_appendI
thf(fact_76_append__Nil, axiom,
    ((![Ys2 : list_A2130511660le_alt]: ((append714424641le_alt @ nil_Ar277507244le_alt @ Ys2) = Ys2)))). % append_Nil
thf(fact_77_append_Oleft__neutral, axiom,
    ((![A : list_A2130511660le_alt]: ((append714424641le_alt @ nil_Ar277507244le_alt @ A) = A)))). % append.left_neutral
thf(fact_78_fold__Cons__rev, axiom,
    ((![Xs : list_A2130511660le_alt]: ((fold_A700976819le_alt @ cons_A1864255580le_alt @ Xs) = (append714424641le_alt @ (rev_Ar197797644le_alt @ Xs)))))). % fold_Cons_rev
thf(fact_79_rev__induct, axiom,
    ((![P : list_A2130511660le_alt > $o, Xs : list_A2130511660le_alt]: ((P @ nil_Ar277507244le_alt) => ((![X3 : arrow_1857593510le_alt, Xs2 : list_A2130511660le_alt]: ((P @ Xs2) => (P @ (append714424641le_alt @ Xs2 @ (cons_A1864255580le_alt @ X3 @ nil_Ar277507244le_alt))))) => (P @ Xs)))))). % rev_induct
thf(fact_80_rev__exhaust, axiom,
    ((![Xs : list_A2130511660le_alt]: ((~ ((Xs = nil_Ar277507244le_alt))) => (~ ((![Ys3 : list_A2130511660le_alt, Y3 : arrow_1857593510le_alt]: (~ ((Xs = (append714424641le_alt @ Ys3 @ (cons_A1864255580le_alt @ Y3 @ nil_Ar277507244le_alt)))))))))))). % rev_exhaust
thf(fact_81_Cons__eq__append__conv, axiom,
    ((![X : arrow_1857593510le_alt, Xs : list_A2130511660le_alt, Ys2 : list_A2130511660le_alt, Zs2 : list_A2130511660le_alt]: (((cons_A1864255580le_alt @ X @ Xs) = (append714424641le_alt @ Ys2 @ Zs2)) = (((((Ys2 = nil_Ar277507244le_alt)) & (((cons_A1864255580le_alt @ X @ Xs) = Zs2)))) | ((?[Ys4 : list_A2130511660le_alt]: ((((cons_A1864255580le_alt @ X @ Ys4) = Ys2)) & ((Xs = (append714424641le_alt @ Ys4 @ Zs2))))))))))). % Cons_eq_append_conv
thf(fact_82_append__eq__Cons__conv, axiom,
    ((![Ys2 : list_A2130511660le_alt, Zs2 : list_A2130511660le_alt, X : arrow_1857593510le_alt, Xs : list_A2130511660le_alt]: (((append714424641le_alt @ Ys2 @ Zs2) = (cons_A1864255580le_alt @ X @ Xs)) = (((((Ys2 = nil_Ar277507244le_alt)) & ((Zs2 = (cons_A1864255580le_alt @ X @ Xs))))) | ((?[Ys4 : list_A2130511660le_alt]: (((Ys2 = (cons_A1864255580le_alt @ X @ Ys4))) & (((append714424641le_alt @ Ys4 @ Zs2) = Xs)))))))))). % append_eq_Cons_conv
thf(fact_83_rev__nonempty__induct, axiom,
    ((![Xs : list_A2130511660le_alt, P : list_A2130511660le_alt > $o]: ((~ ((Xs = nil_Ar277507244le_alt))) => ((![X3 : arrow_1857593510le_alt]: (P @ (cons_A1864255580le_alt @ X3 @ nil_Ar277507244le_alt))) => ((![X3 : arrow_1857593510le_alt, Xs2 : list_A2130511660le_alt]: ((~ ((Xs2 = nil_Ar277507244le_alt))) => ((P @ Xs2) => (P @ (append714424641le_alt @ Xs2 @ (cons_A1864255580le_alt @ X3 @ nil_Ar277507244le_alt)))))) => (P @ Xs))))))). % rev_nonempty_induct
thf(fact_84_concat__eq__append__conv, axiom,
    ((![Xss2 : list_l1515872562le_alt, Ys2 : list_A2130511660le_alt, Zs2 : list_A2130511660le_alt]: (((concat2066114535le_alt @ Xss2) = (append714424641le_alt @ Ys2 @ Zs2)) = (((((Xss2 = nil_li2110134322le_alt)) => ((((Ys2 = nil_Ar277507244le_alt)) & ((Zs2 = nil_Ar277507244le_alt)))))) & ((((~ ((Xss2 = nil_li2110134322le_alt)))) => ((?[Xss1 : list_l1515872562le_alt]: (?[Xs3 : list_A2130511660le_alt]: (?[Xs4 : list_A2130511660le_alt]: (?[Xss22 : list_l1515872562le_alt]: (((Xss2 = (append606805575le_alt @ Xss1 @ (cons_l157309922le_alt @ (append714424641le_alt @ Xs3 @ Xs4) @ Xss22)))) & ((((Ys2 = (append714424641le_alt @ (concat2066114535le_alt @ Xss1) @ Xs3))) & ((Zs2 = (append714424641le_alt @ Xs4 @ (concat2066114535le_alt @ Xss22))))))))))))))))))). % concat_eq_append_conv
thf(fact_85_rotate1_Osimps_I2_J, axiom,
    ((![X : arrow_1857593510le_alt, Xs : list_A2130511660le_alt]: ((rotate241821305le_alt @ (cons_A1864255580le_alt @ X @ Xs)) = (append714424641le_alt @ Xs @ (cons_A1864255580le_alt @ X @ nil_Ar277507244le_alt)))))). % rotate1.simps(2)
thf(fact_86_rotate1__is__Nil__conv, axiom,
    ((![Xs : list_A2130511660le_alt]: (((rotate241821305le_alt @ Xs) = nil_Ar277507244le_alt) = (Xs = nil_Ar277507244le_alt))))). % rotate1_is_Nil_conv
thf(fact_87_distinct1__rotate, axiom,
    ((![Xs : list_A2130511660le_alt]: ((distin2037765919le_alt @ (rotate241821305le_alt @ Xs)) = (distin2037765919le_alt @ Xs))))). % distinct1_rotate
thf(fact_88_rotate1_Osimps_I1_J, axiom,
    (((rotate241821305le_alt @ nil_Ar277507244le_alt) = nil_Ar277507244le_alt))). % rotate1.simps(1)
thf(fact_89_concat_Osimps_I1_J, axiom,
    (((concat2066114535le_alt @ nil_li2110134322le_alt) = nil_Ar277507244le_alt))). % concat.simps(1)
thf(fact_90_maps__simps_I2_J, axiom,
    ((![F2 : arrow_1857593510le_alt > list_A2130511660le_alt]: ((maps_A1380942317le_alt @ F2 @ nil_Ar277507244le_alt) = nil_Ar277507244le_alt)))). % maps_simps(2)
thf(fact_91_butlast__snoc, axiom,
    ((![Xs : list_A2130511660le_alt, X : arrow_1857593510le_alt]: ((butlas1522788856le_alt @ (append714424641le_alt @ Xs @ (cons_A1864255580le_alt @ X @ nil_Ar277507244le_alt))) = Xs)))). % butlast_snoc
thf(fact_92_last__snoc, axiom,
    ((![Xs : list_A2130511660le_alt, X : arrow_1857593510le_alt]: ((last_A1259750469le_alt @ (append714424641le_alt @ Xs @ (cons_A1864255580le_alt @ X @ nil_Ar277507244le_alt))) = X)))). % last_snoc
thf(fact_93_last__appendR, axiom,
    ((![Ys2 : list_A2130511660le_alt, Xs : list_A2130511660le_alt]: ((~ ((Ys2 = nil_Ar277507244le_alt))) => ((last_A1259750469le_alt @ (append714424641le_alt @ Xs @ Ys2)) = (last_A1259750469le_alt @ Ys2)))))). % last_appendR
thf(fact_94_last__appendL, axiom,
    ((![Ys2 : list_A2130511660le_alt, Xs : list_A2130511660le_alt]: ((Ys2 = nil_Ar277507244le_alt) => ((last_A1259750469le_alt @ (append714424641le_alt @ Xs @ Ys2)) = (last_A1259750469le_alt @ Xs)))))). % last_appendL
thf(fact_95_append__butlast__last__id, axiom,
    ((![Xs : list_A2130511660le_alt]: ((~ ((Xs = nil_Ar277507244le_alt))) => ((append714424641le_alt @ (butlas1522788856le_alt @ Xs) @ (cons_A1864255580le_alt @ (last_A1259750469le_alt @ Xs) @ nil_Ar277507244le_alt)) = Xs))))). % append_butlast_last_id
thf(fact_96_butlast_Osimps_I1_J, axiom,
    (((butlas1522788856le_alt @ nil_Ar277507244le_alt) = nil_Ar277507244le_alt))). % butlast.simps(1)
thf(fact_97_distinct__butlast, axiom,
    ((![Xs : list_A2130511660le_alt]: ((distin2037765919le_alt @ Xs) => (distin2037765919le_alt @ (butlas1522788856le_alt @ Xs)))))). % distinct_butlast
thf(fact_98_snoc__eq__iff__butlast, axiom,
    ((![Xs : list_A2130511660le_alt, X : arrow_1857593510le_alt, Ys2 : list_A2130511660le_alt]: (((append714424641le_alt @ Xs @ (cons_A1864255580le_alt @ X @ nil_Ar277507244le_alt)) = Ys2) = (((~ ((Ys2 = nil_Ar277507244le_alt)))) & (((((butlas1522788856le_alt @ Ys2) = Xs)) & (((last_A1259750469le_alt @ Ys2) = X))))))))). % snoc_eq_iff_butlast
thf(fact_99_last_Osimps, axiom,
    ((![Xs : list_A2130511660le_alt, X : arrow_1857593510le_alt]: (((Xs = nil_Ar277507244le_alt) => ((last_A1259750469le_alt @ (cons_A1864255580le_alt @ X @ Xs)) = X)) & ((~ ((Xs = nil_Ar277507244le_alt))) => ((last_A1259750469le_alt @ (cons_A1864255580le_alt @ X @ Xs)) = (last_A1259750469le_alt @ Xs))))))). % last.simps
thf(fact_100_last__ConsL, axiom,
    ((![Xs : list_A2130511660le_alt, X : arrow_1857593510le_alt]: ((Xs = nil_Ar277507244le_alt) => ((last_A1259750469le_alt @ (cons_A1864255580le_alt @ X @ Xs)) = X))))). % last_ConsL
thf(fact_101_last__ConsR, axiom,
    ((![Xs : list_A2130511660le_alt, X : arrow_1857593510le_alt]: ((~ ((Xs = nil_Ar277507244le_alt))) => ((last_A1259750469le_alt @ (cons_A1864255580le_alt @ X @ Xs)) = (last_A1259750469le_alt @ Xs)))))). % last_ConsR
thf(fact_102_longest__common__suffix, axiom,
    ((![Xs : list_A2130511660le_alt, Ys2 : list_A2130511660le_alt]: (?[Ss : list_A2130511660le_alt, Xs5 : list_A2130511660le_alt, Ys5 : list_A2130511660le_alt]: ((Xs = (append714424641le_alt @ Xs5 @ Ss)) & ((Ys2 = (append714424641le_alt @ Ys5 @ Ss)) & ((Xs5 = nil_Ar277507244le_alt) | ((Ys5 = nil_Ar277507244le_alt) | (~ (((last_A1259750469le_alt @ Xs5) = (last_A1259750469le_alt @ Ys5)))))))))))). % longest_common_suffix
thf(fact_103_last__append, axiom,
    ((![Ys2 : list_A2130511660le_alt, Xs : list_A2130511660le_alt]: (((Ys2 = nil_Ar277507244le_alt) => ((last_A1259750469le_alt @ (append714424641le_alt @ Xs @ Ys2)) = (last_A1259750469le_alt @ Xs))) & ((~ ((Ys2 = nil_Ar277507244le_alt))) => ((last_A1259750469le_alt @ (append714424641le_alt @ Xs @ Ys2)) = (last_A1259750469le_alt @ Ys2))))))). % last_append
thf(fact_104_butlast_Osimps_I2_J, axiom,
    ((![Xs : list_A2130511660le_alt, X : arrow_1857593510le_alt]: (((Xs = nil_Ar277507244le_alt) => ((butlas1522788856le_alt @ (cons_A1864255580le_alt @ X @ Xs)) = nil_Ar277507244le_alt)) & ((~ ((Xs = nil_Ar277507244le_alt))) => ((butlas1522788856le_alt @ (cons_A1864255580le_alt @ X @ Xs)) = (cons_A1864255580le_alt @ X @ (butlas1522788856le_alt @ Xs)))))))). % butlast.simps(2)

% Conjectures (1)
thf(conj_0, conjecture,
    ((?[B3 : arrow_1857593510le_alt]: (~ ((B3 = a)))))).
