% 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/TypeSafe/prob_197__5336078_1 ) ; }
% This file was generated by Isabelle (most likely Sledgehammer)
% 2020-12-16 14:19:53.824

% Could-be-implicit typings (43)
thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_Mt__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_Mt__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_Mt__Type__Oty_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_Mt__Product____Type__Oprod_It__List__Olist_It__Type__Oty_J_Mt__Product____Type__Oprod_It__Type__Oty_Mt__Product____Type__Oprod_It__List__Olist_It__List__Olist_It__String__Ochar_J_J_Mt__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J_J_J_J_J_J_J_J_J, type,
    list_P1234162913t_char : $tType).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_I_062_It__Nat__Onat_Mt__Option__Ooption_It__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_M_062_It__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Value__Oval_J_J_J_J_J_M_062_It__List__Olist_It__String__Ochar_J_Mt__Option__Ooption_It__Value__Oval_J_J_J_J, type,
    set_Pr723149704on_val : $tType).
thf(ty_n_t__Product____Type__Oprod_I_062_It__Nat__Onat_Mt__Option__Ooption_It__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_M_062_It__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Value__Oval_J_J_J_J_J_M_062_It__List__Olist_It__String__Ochar_J_Mt__Option__Ooption_It__Value__Oval_J_J_J, type,
    produc515445032on_val : $tType).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__List__Olist_It__String__Ochar_J_J_Mt__Product____Type__Oprod_It__List__Olist_It__Type__Oty_J_Mt__Product____Type__Oprod_It__List__Olist_It__Value__Oval_J_Mt__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J_J_J_J, type,
    set_Pr685054290t_char : $tType).
thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__List__Olist_It__String__Ochar_J_J_Mt__Product____Type__Oprod_It__List__Olist_It__Type__Oty_J_Mt__Product____Type__Oprod_It__List__Olist_It__Value__Oval_J_Mt__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J_J_J, type,
    produc81045532t_char : $tType).
thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_M_062_It__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Value__Oval_J_J_J_J, type,
    option2118145160on_val : $tType).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__Type__Oty_J_Mt__Product____Type__Oprod_It__List__Olist_It__Value__Oval_J_Mt__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J_J_J, type,
    set_Pr925902648t_char : $tType).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J_Mt__List__Olist_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J_J_J, type,
    set_Pr1932514887t_char : $tType).
thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Type__Oty_J_Mt__Product____Type__Oprod_It__List__Olist_It__Value__Oval_J_Mt__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J_J, type,
    produc111478616t_char : $tType).
thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J_Mt__List__Olist_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J_J, type,
    produc1813212775t_char : $tType).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__Option__Ooption_It__Type__Oty_J_J_Mt__List__Olist_It__Option__Ooption_It__Type__Oty_J_J_J_J, type,
    set_Pr962897519ion_ty : $tType).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__List__Olist_It__String__Ochar_J_J_Mt__List__Olist_It__List__Olist_It__String__Ochar_J_J_J_J, type,
    set_Pr2117892643t_char : $tType).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_Mt__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J_J, type,
    set_Pr224372167t_char : $tType).
thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Option__Ooption_It__Type__Oty_J_J_Mt__List__Olist_It__Option__Ooption_It__Type__Oty_J_J_J, type,
    produc922361871ion_ty : $tType).
thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__List__Olist_It__String__Ochar_J_J_Mt__List__Olist_It__List__Olist_It__String__Ochar_J_J_J, type,
    produc1410698691t_char : $tType).
thf(ty_n_t__Product____Type__Oprod_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_Mt__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J, type,
    produc677445863t_char : $tType).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__Value__Oval_J_Mt__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J_J, type,
    set_Pr82799206t_char : $tType).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Option__Ooption_It__Type__Oty_J_Mt__Option__Ooption_It__Type__Oty_J_J_J, type,
    set_Pr616941135ion_ty : $tType).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_J, type,
    set_Pr164112643t_char : $tType).
thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Value__Oval_J_Mt__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J, type,
    produc1109669680t_char : $tType).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__Value__Oval_J_Mt__List__Olist_It__Value__Oval_J_J_J, type,
    set_Pr723931873st_val : $tType).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__Type__Oty_J_Mt__List__Olist_It__Type__Oty_J_J_J, type,
    set_Pr1785354703ist_ty : $tType).
thf(ty_n_t__Product____Type__Oprod_It__Option__Ooption_It__Type__Oty_J_Mt__Option__Ooption_It__Type__Oty_J_J, type,
    produc1872540399ion_ty : $tType).
thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J, type,
    produc1257910179t_char : $tType).
thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Value__Oval_J_Mt__List__Olist_It__Value__Oval_J_J, type,
    produc1608520577st_val : $tType).
thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Type__Oty_J_Mt__List__Olist_It__Type__Oty_J_J, type,
    produc1714969711ist_ty : $tType).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Value__Oval_Mt__Value__Oval_J_J, type,
    set_Pr1870322241al_val : $tType).
thf(ty_n_t__Option__Ooption_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J, type,
    option_exp_list_char : $tType).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Type__Oty_Mt__Type__Oty_J_J, type,
    set_Pr1194734255_ty_ty : $tType).
thf(ty_n_t__List__Olist_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J, type,
    list_exp_list_char : $tType).
thf(ty_n_t__Product____Type__Oprod_It__Value__Oval_Mt__Value__Oval_J, type,
    product_prod_val_val : $tType).
thf(ty_n_t__Product____Type__Oprod_It__Type__Oty_Mt__Type__Oty_J, type,
    product_prod_ty_ty : $tType).
thf(ty_n_t__List__Olist_It__Option__Ooption_It__Type__Oty_J_J, type,
    list_option_ty : $tType).
thf(ty_n_t__List__Olist_It__List__Olist_It__String__Ochar_J_J, type,
    list_list_char : $tType).
thf(ty_n_t__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J, type,
    exp_list_char : $tType).
thf(ty_n_t__Option__Ooption_It__Value__Oval_J, type,
    option_val : $tType).
thf(ty_n_t__Option__Ooption_It__Type__Oty_J, type,
    option_ty : $tType).
thf(ty_n_t__List__Olist_It__String__Ochar_J, type,
    list_char : $tType).
thf(ty_n_t__List__Olist_It__Value__Oval_J, type,
    list_val : $tType).
thf(ty_n_t__List__Olist_It__Type__Oty_J, type,
    list_ty : $tType).
thf(ty_n_t__Value__Oval, type,
    val : $tType).
thf(ty_n_t__Type__Oty, type,
    ty : $tType).
thf(ty_n_t__Nat__Onat, type,
    nat : $tType).

% Explicit typings (136)
thf(sy_c_BigStep_Oeval, type,
    eval : list_P1234162913t_char > exp_list_char > produc515445032on_val > exp_list_char > produc515445032on_val > $o).
thf(sy_c_BigStep_Oevals, type,
    evals : list_P1234162913t_char > list_exp_list_char > produc515445032on_val > list_exp_list_char > produc515445032on_val > $o).
thf(sy_c_Conform_Oconf_001t__Product____Type__Oprod_It__List__Olist_It__List__Olist_It__String__Ochar_J_J_Mt__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J, type,
    conf_P93989998t_char : list_P1234162913t_char > (nat > option2118145160on_val) > val > ty > $o).
thf(sy_c_Expr_Oexp_OVal_001t__List__Olist_It__String__Ochar_J, type,
    val_list_char : val > exp_list_char).
thf(sy_c_Expr_Oexp_OVar_001t__List__Olist_It__String__Ochar_J, type,
    var_list_char : list_char > exp_list_char).
thf(sy_c_Fun_Ofun__upd_001t__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_001t__Option__Ooption_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J, type,
    fun_up33439619t_char : (exp_list_char > option_exp_list_char) > exp_list_char > option_exp_list_char > exp_list_char > option_exp_list_char).
thf(sy_c_Fun_Ofun__upd_001t__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_001t__Option__Ooption_It__Type__Oty_J, type,
    fun_up902355221ion_ty : (exp_list_char > option_ty) > exp_list_char > option_ty > exp_list_char > option_ty).
thf(sy_c_Fun_Ofun__upd_001t__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_001t__Option__Ooption_It__Value__Oval_J, type,
    fun_up1410072030on_val : (exp_list_char > option_val) > exp_list_char > option_val > exp_list_char > option_val).
thf(sy_c_Fun_Ofun__upd_001t__List__Olist_It__String__Ochar_J_001t__Option__Ooption_It__Type__Oty_J, type,
    fun_up9191ion_ty : (list_char > option_ty) > list_char > option_ty > list_char > option_ty).
thf(sy_c_Fun_Ofun__upd_001t__List__Olist_It__String__Ochar_J_001t__Option__Ooption_It__Value__Oval_J, type,
    fun_up1252458416on_val : (list_char > option_val) > list_char > option_val > list_char > option_val).
thf(sy_c_Fun_Ofun__upd_001t__Type__Oty_001t__Option__Ooption_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J, type,
    fun_up472491227t_char : (ty > option_exp_list_char) > ty > option_exp_list_char > ty > option_exp_list_char).
thf(sy_c_Fun_Ofun__upd_001t__Type__Oty_001t__Option__Ooption_It__Type__Oty_J, type,
    fun_upd_ty_option_ty : (ty > option_ty) > ty > option_ty > ty > option_ty).
thf(sy_c_Fun_Ofun__upd_001t__Type__Oty_001t__Option__Ooption_It__Value__Oval_J, type,
    fun_up399813254on_val : (ty > option_val) > ty > option_val > ty > option_val).
thf(sy_c_List_Olex_001t__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J, type,
    lex_exp_list_char : set_Pr224372167t_char > set_Pr1932514887t_char).
thf(sy_c_List_Olex_001t__List__Olist_It__String__Ochar_J, type,
    lex_list_char : set_Pr164112643t_char > set_Pr2117892643t_char).
thf(sy_c_List_Olex_001t__Option__Ooption_It__Type__Oty_J, type,
    lex_option_ty : set_Pr616941135ion_ty > set_Pr962897519ion_ty).
thf(sy_c_List_Olex_001t__Type__Oty, type,
    lex_ty : set_Pr1194734255_ty_ty > set_Pr1785354703ist_ty).
thf(sy_c_List_Olex_001t__Value__Oval, type,
    lex_val : set_Pr1870322241al_val > set_Pr723931873st_val).
thf(sy_c_List_Olexn_001t__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J, type,
    lexn_exp_list_char : set_Pr224372167t_char > nat > set_Pr1932514887t_char).
thf(sy_c_List_Olexn_001t__List__Olist_It__String__Ochar_J, type,
    lexn_list_char : set_Pr164112643t_char > nat > set_Pr2117892643t_char).
thf(sy_c_List_Olexn_001t__Option__Ooption_It__Type__Oty_J, type,
    lexn_option_ty : set_Pr616941135ion_ty > nat > set_Pr962897519ion_ty).
thf(sy_c_List_Olexn_001t__Type__Oty, type,
    lexn_ty : set_Pr1194734255_ty_ty > nat > set_Pr1785354703ist_ty).
thf(sy_c_List_Olexn_001t__Value__Oval, type,
    lexn_val : set_Pr1870322241al_val > nat > set_Pr723931873st_val).
thf(sy_c_List_Olexord_001t__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J, type,
    lexord_exp_list_char : set_Pr224372167t_char > set_Pr1932514887t_char).
thf(sy_c_List_Olexord_001t__List__Olist_It__String__Ochar_J, type,
    lexord_list_char : set_Pr164112643t_char > set_Pr2117892643t_char).
thf(sy_c_List_Olexord_001t__Option__Ooption_It__Type__Oty_J, type,
    lexord_option_ty : set_Pr616941135ion_ty > set_Pr962897519ion_ty).
thf(sy_c_List_Olexord_001t__Type__Oty, type,
    lexord_ty : set_Pr1194734255_ty_ty > set_Pr1785354703ist_ty).
thf(sy_c_List_Olexord_001t__Value__Oval, type,
    lexord_val : set_Pr1870322241al_val > set_Pr723931873st_val).
thf(sy_c_List_Olist_OCons_001t__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J, type,
    cons_exp_list_char : exp_list_char > list_exp_list_char > list_exp_list_char).
thf(sy_c_List_Olist_OCons_001t__List__Olist_It__String__Ochar_J, type,
    cons_list_char : list_char > list_list_char > list_list_char).
thf(sy_c_List_Olist_OCons_001t__Option__Ooption_It__Type__Oty_J, type,
    cons_option_ty : option_ty > list_option_ty > list_option_ty).
thf(sy_c_List_Olist_OCons_001t__Type__Oty, type,
    cons_ty : ty > list_ty > list_ty).
thf(sy_c_List_Olist_OCons_001t__Value__Oval, type,
    cons_val : val > list_val > list_val).
thf(sy_c_List_Olist_ONil_001t__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J, type,
    nil_exp_list_char : list_exp_list_char).
thf(sy_c_List_Olist_ONil_001t__List__Olist_It__String__Ochar_J, type,
    nil_list_char : list_list_char).
thf(sy_c_List_Olist_ONil_001t__Option__Ooption_It__Type__Oty_J, type,
    nil_option_ty : list_option_ty).
thf(sy_c_List_Olist_ONil_001t__Type__Oty, type,
    nil_ty : list_ty).
thf(sy_c_List_Olist_ONil_001t__Value__Oval, type,
    nil_val : list_val).
thf(sy_c_List_Olist_Olist__all2_001t__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_001t__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J, type,
    list_a1702871623t_char : (exp_list_char > exp_list_char > $o) > list_exp_list_char > list_exp_list_char > $o).
thf(sy_c_List_Olist_Olist__all2_001t__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_001t__Type__Oty, type,
    list_a295513531har_ty : (exp_list_char > ty > $o) > list_exp_list_char > list_ty > $o).
thf(sy_c_List_Olist_Olist__all2_001t__List__Olist_It__String__Ochar_J_001t__Type__Oty, type,
    list_a1770748705har_ty : (list_char > ty > $o) > list_list_char > list_ty > $o).
thf(sy_c_List_Olist_Olist__all2_001t__List__Olist_It__String__Ochar_J_001t__Value__Oval, type,
    list_a280217834ar_val : (list_char > val > $o) > list_list_char > list_val > $o).
thf(sy_c_List_Olist_Olist__all2_001t__Type__Oty_001t__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J, type,
    list_a212154379t_char : (ty > exp_list_char > $o) > list_ty > list_exp_list_char > $o).
thf(sy_c_List_Olist_Olist__all2_001t__Type__Oty_001t__List__Olist_It__String__Ochar_J, type,
    list_a1504214817t_char : (ty > list_char > $o) > list_ty > list_list_char > $o).
thf(sy_c_List_Olist_Olist__all2_001t__Type__Oty_001t__Option__Ooption_It__Type__Oty_J, type,
    list_a765198023ion_ty : (ty > option_ty > $o) > list_ty > list_option_ty > $o).
thf(sy_c_List_Olist_Olist__all2_001t__Type__Oty_001t__Type__Oty, type,
    list_all2_ty_ty : (ty > ty > $o) > list_ty > list_ty > $o).
thf(sy_c_List_Olist_Olist__all2_001t__Type__Oty_001t__Value__Oval, type,
    list_all2_ty_val : (ty > val > $o) > list_ty > list_val > $o).
thf(sy_c_List_Olist_Olist__all2_001t__Value__Oval_001t__List__Olist_It__String__Ochar_J, type,
    list_a1248766058t_char : (val > list_char > $o) > list_val > list_list_char > $o).
thf(sy_c_List_Olist_Olist__all2_001t__Value__Oval_001t__Option__Ooption_It__Type__Oty_J, type,
    list_a509749264ion_ty : (val > option_ty > $o) > list_val > list_option_ty > $o).
thf(sy_c_List_Olist_Olist__all2_001t__Value__Oval_001t__Type__Oty, type,
    list_all2_val_ty : (val > ty > $o) > list_val > list_ty > $o).
thf(sy_c_List_Olist_Olist__all2_001t__Value__Oval_001t__Value__Oval, type,
    list_all2_val_val : (val > val > $o) > list_val > list_val > $o).
thf(sy_c_List_Olist_Omap_001t__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_001t__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J, type,
    map_ex886010884t_char : (exp_list_char > exp_list_char) > list_exp_list_char > list_exp_list_char).
thf(sy_c_List_Olist_Omap_001t__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_001t__Type__Oty, type,
    map_exp_list_char_ty : (exp_list_char > ty) > list_exp_list_char > list_ty).
thf(sy_c_List_Olist_Omap_001t__List__Olist_It__String__Ochar_J_001t__Type__Oty, type,
    map_list_char_ty : (list_char > ty) > list_list_char > list_ty).
thf(sy_c_List_Olist_Omap_001t__List__Olist_It__String__Ochar_J_001t__Value__Oval, type,
    map_list_char_val : (list_char > val) > list_list_char > list_val).
thf(sy_c_List_Olist_Omap_001t__Type__Oty_001t__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J, type,
    map_ty_exp_list_char : (ty > exp_list_char) > list_ty > list_exp_list_char).
thf(sy_c_List_Olist_Omap_001t__Type__Oty_001t__List__Olist_It__String__Ochar_J, type,
    map_ty_list_char : (ty > list_char) > list_ty > list_list_char).
thf(sy_c_List_Olist_Omap_001t__Type__Oty_001t__Option__Ooption_It__Type__Oty_J, type,
    map_ty_option_ty : (ty > option_ty) > list_ty > list_option_ty).
thf(sy_c_List_Olist_Omap_001t__Type__Oty_001t__Type__Oty, type,
    map_ty_ty : (ty > ty) > list_ty > list_ty).
thf(sy_c_List_Olist_Omap_001t__Type__Oty_001t__Value__Oval, type,
    map_ty_val : (ty > val) > list_ty > list_val).
thf(sy_c_List_Olist_Omap_001t__Value__Oval_001t__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J, type,
    map_va1515327237t_char : (val > exp_list_char) > list_val > list_exp_list_char).
thf(sy_c_List_Olist_Omap_001t__Value__Oval_001t__List__Olist_It__String__Ochar_J, type,
    map_val_list_char : (val > list_char) > list_val > list_list_char).
thf(sy_c_List_Olist_Omap_001t__Value__Oval_001t__Option__Ooption_It__Type__Oty_J, type,
    map_val_option_ty : (val > option_ty) > list_val > list_option_ty).
thf(sy_c_List_Olist_Omap_001t__Value__Oval_001t__Type__Oty, type,
    map_val_ty : (val > ty) > list_val > list_ty).
thf(sy_c_List_Olist_Omap_001t__Value__Oval_001t__Value__Oval, type,
    map_val_val : (val > val) > list_val > list_val).
thf(sy_c_List_Olistrel1_001t__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J, type,
    listre237302058t_char : set_Pr224372167t_char > set_Pr1932514887t_char).
thf(sy_c_List_Olistrel1_001t__Type__Oty, type,
    listrel1_ty : set_Pr1194734255_ty_ty > set_Pr1785354703ist_ty).
thf(sy_c_List_Omap__tailrec_001t__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_001t__Type__Oty, type,
    map_ta650207092har_ty : (exp_list_char > ty) > list_exp_list_char > list_ty).
thf(sy_c_List_Omap__tailrec_001t__Type__Oty_001t__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J, type,
    map_ta566847940t_char : (ty > exp_list_char) > list_ty > list_exp_list_char).
thf(sy_c_List_Omap__tailrec_001t__Type__Oty_001t__List__Olist_It__String__Ochar_J, type,
    map_ta795536168t_char : (ty > list_char) > list_ty > list_list_char).
thf(sy_c_List_Omap__tailrec_001t__Type__Oty_001t__Option__Ooption_It__Type__Oty_J, type,
    map_ta56519374ion_ty : (ty > option_ty) > list_ty > list_option_ty).
thf(sy_c_List_Omap__tailrec_001t__Type__Oty_001t__Type__Oty, type,
    map_tailrec_ty_ty : (ty > ty) > list_ty > list_ty).
thf(sy_c_List_Omap__tailrec_001t__Type__Oty_001t__Value__Oval, type,
    map_tailrec_ty_val : (ty > val) > list_ty > list_val).
thf(sy_c_List_Omap__tailrec_001t__Value__Oval_001t__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J, type,
    map_ta466610747t_char : (val > exp_list_char) > list_val > list_exp_list_char).
thf(sy_c_List_Omap__tailrec_001t__Value__Oval_001t__Option__Ooption_It__Type__Oty_J, type,
    map_ta1696661655ion_ty : (val > option_ty) > list_val > list_option_ty).
thf(sy_c_Map_Omap__upds_001t__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_001t__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J, type,
    map_up1544389430t_char : (exp_list_char > option_exp_list_char) > list_exp_list_char > list_exp_list_char > exp_list_char > option_exp_list_char).
thf(sy_c_Map_Omap__upds_001t__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_001t__Type__Oty, type,
    map_up1385829004har_ty : (exp_list_char > option_ty) > list_exp_list_char > list_ty > exp_list_char > option_ty).
thf(sy_c_Map_Omap__upds_001t__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_001t__Value__Oval, type,
    map_up1654086357ar_val : (exp_list_char > option_val) > list_exp_list_char > list_val > exp_list_char > option_val).
thf(sy_c_Map_Omap__upds_001t__List__Olist_It__String__Ochar_J_001t__Type__Oty, type,
    map_up703499792har_ty : (list_char > option_ty) > list_list_char > list_ty > list_char > option_ty).
thf(sy_c_Map_Omap__upds_001t__List__Olist_It__String__Ochar_J_001t__Value__Oval, type,
    map_up576607321ar_val : (list_char > option_val) > list_list_char > list_val > list_char > option_val).
thf(sy_c_Map_Omap__upds_001t__Type__Oty_001t__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J, type,
    map_up1302469852t_char : (ty > option_exp_list_char) > list_ty > list_exp_list_char > ty > option_exp_list_char).
thf(sy_c_Map_Omap__upds_001t__Type__Oty_001t__Type__Oty, type,
    map_upds_ty_ty : (ty > option_ty) > list_ty > list_ty > ty > option_ty).
thf(sy_c_Map_Omap__upds_001t__Type__Oty_001t__Value__Oval, type,
    map_upds_ty_val : (ty > option_val) > list_ty > list_val > ty > option_val).
thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J, type,
    size_s329991613t_char : list_exp_list_char > nat).
thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__List__Olist_It__String__Ochar_J_J, type,
    size_s2008079621t_char : list_list_char > nat).
thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Option__Ooption_It__Type__Oty_J_J, type,
    size_s1569909163ion_ty : list_option_ty > nat).
thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Type__Oty_J, type,
    size_size_list_ty : list_ty > nat).
thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Value__Oval_J, type,
    size_size_list_val : list_val > nat).
thf(sy_c_Objects_Otypeof__h, type,
    typeof_h : (nat > option2118145160on_val) > val > option_ty).
thf(sy_c_Option_Ooption_OSome_001t__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J, type,
    some_exp_list_char : exp_list_char > option_exp_list_char).
thf(sy_c_Option_Ooption_OSome_001t__Type__Oty, type,
    some_ty : ty > option_ty).
thf(sy_c_Option_Ooption_OSome_001t__Value__Oval, type,
    some_val : val > option_val).
thf(sy_c_Product__Type_OPair_001_062_It__Nat__Onat_Mt__Option__Ooption_It__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_M_062_It__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Value__Oval_J_J_J_J_J_001_062_It__List__Olist_It__String__Ochar_J_Mt__Option__Ooption_It__Value__Oval_J_J, type,
    produc52622304on_val : (nat > option2118145160on_val) > (list_char > option_val) > produc515445032on_val).
thf(sy_c_Product__Type_OPair_001t__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_001t__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J, type,
    produc240508503t_char : exp_list_char > exp_list_char > produc677445863t_char).
thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J_001t__List__Olist_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J, type,
    produc1721801175t_char : list_exp_list_char > list_exp_list_char > produc1813212775t_char).
thf(sy_c_Product__Type_OPair_001t__List__Olist_It__List__Olist_It__String__Ochar_J_J_001t__List__Olist_It__List__Olist_It__String__Ochar_J_J, type,
    produc1181934459t_char : list_list_char > list_list_char > produc1410698691t_char).
thf(sy_c_Product__Type_OPair_001t__List__Olist_It__List__Olist_It__String__Ochar_J_J_001t__Product____Type__Oprod_It__List__Olist_It__Type__Oty_J_Mt__Product____Type__Oprod_It__List__Olist_It__Value__Oval_J_Mt__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J_J, type,
    produc1808722894t_char : list_list_char > produc111478616t_char > produc81045532t_char).
thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Option__Ooption_It__Type__Oty_J_J_001t__List__Olist_It__Option__Ooption_It__Type__Oty_J_J, type,
    produc1071605959ion_ty : list_option_ty > list_option_ty > produc922361871ion_ty).
thf(sy_c_Product__Type_OPair_001t__List__Olist_It__String__Ochar_J_001t__List__Olist_It__String__Ochar_J, type,
    produc1304532571t_char : list_char > list_char > produc1257910179t_char).
thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Type__Oty_J_001t__List__Olist_It__Type__Oty_J, type,
    produc1089615911ist_ty : list_ty > list_ty > produc1714969711ist_ty).
thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Type__Oty_J_001t__Product____Type__Oprod_It__List__Olist_It__Value__Oval_J_Mt__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J, type,
    produc1806338192t_char : list_ty > produc1109669680t_char > produc111478616t_char).
thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Value__Oval_J_001t__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J, type,
    produc823987298t_char : list_val > exp_list_char > produc1109669680t_char).
thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Value__Oval_J_001t__List__Olist_It__Value__Oval_J, type,
    produc180957881st_val : list_val > list_val > produc1608520577st_val).
thf(sy_c_Product__Type_OPair_001t__Option__Ooption_It__Type__Oty_J_001t__Option__Ooption_It__Type__Oty_J, type,
    produc1618316455ion_ty : option_ty > option_ty > produc1872540399ion_ty).
thf(sy_c_Product__Type_OPair_001t__Type__Oty_001t__Type__Oty, type,
    product_Pair_ty_ty : ty > ty > product_prod_ty_ty).
thf(sy_c_Product__Type_OPair_001t__Value__Oval_001t__Value__Oval, type,
    product_Pair_val_val : val > val > product_prod_val_val).
thf(sy_c_Product__Type_Ocurry_001_062_It__Nat__Onat_Mt__Option__Ooption_It__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_M_062_It__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Value__Oval_J_J_J_J_J_001_062_It__List__Olist_It__String__Ochar_J_Mt__Option__Ooption_It__Value__Oval_J_J_001_Eo, type,
    produc761261956_val_o : (produc515445032on_val > $o) > (nat > option2118145160on_val) > (list_char > option_val) > $o).
thf(sy_c_Product__Type_Ocurry_001t__List__Olist_It__List__Olist_It__String__Ochar_J_J_001t__Product____Type__Oprod_It__List__Olist_It__Type__Oty_J_Mt__Product____Type__Oprod_It__List__Olist_It__Value__Oval_J_Mt__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J_J_001_Eo, type,
    produc309442300char_o : (produc81045532t_char > $o) > list_list_char > produc111478616t_char > $o).
thf(sy_c_Product__Type_Ocurry_001t__List__Olist_It__Type__Oty_J_001t__Product____Type__Oprod_It__List__Olist_It__Value__Oval_J_Mt__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J_001_Eo, type,
    produc1133082708char_o : (produc111478616t_char > $o) > list_ty > produc1109669680t_char > $o).
thf(sy_c_Product__Type_Ocurry_001t__List__Olist_It__Value__Oval_J_001t__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_001_Eo, type,
    produc1660716392char_o : (produc1109669680t_char > $o) > list_val > exp_list_char > $o).
thf(sy_c_SmallStep_Oblocks, type,
    blocks : produc81045532t_char > exp_list_char).
thf(sy_c_TypeRel_Owiden_001t__Product____Type__Oprod_It__List__Olist_It__List__Olist_It__String__Ochar_J_J_Mt__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J, type,
    widen_917054840t_char : list_P1234162913t_char > ty > ty > $o).
thf(sy_c_WellTypeRT_OWTrt, type,
    wTrt : list_P1234162913t_char > (nat > option2118145160on_val) > (list_char > option_ty) > exp_list_char > ty > $o).
thf(sy_c_WellTypeRT_OWTrts, type,
    wTrts : list_P1234162913t_char > (nat > option2118145160on_val) > (list_char > option_ty) > list_exp_list_char > list_ty > $o).
thf(sy_c_member_001t__Product____Type__Oprod_I_062_It__Nat__Onat_Mt__Option__Ooption_It__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_M_062_It__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Value__Oval_J_J_J_J_J_M_062_It__List__Olist_It__String__Ochar_J_Mt__Option__Ooption_It__Value__Oval_J_J_J, type,
    member652041809on_val : produc515445032on_val > set_Pr723149704on_val > $o).
thf(sy_c_member_001t__Product____Type__Oprod_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_Mt__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J, type,
    member1699993616t_char : produc677445863t_char > set_Pr224372167t_char > $o).
thf(sy_c_member_001t__Product____Type__Oprod_It__List__Olist_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J_Mt__List__Olist_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J_J, type,
    member462435472t_char : produc1813212775t_char > set_Pr1932514887t_char > $o).
thf(sy_c_member_001t__Product____Type__Oprod_It__List__Olist_It__List__Olist_It__String__Ochar_J_J_Mt__List__Olist_It__List__Olist_It__String__Ochar_J_J_J, type,
    member725442668t_char : produc1410698691t_char > set_Pr2117892643t_char > $o).
thf(sy_c_member_001t__Product____Type__Oprod_It__List__Olist_It__List__Olist_It__String__Ochar_J_J_Mt__Product____Type__Oprod_It__List__Olist_It__Type__Oty_J_Mt__Product____Type__Oprod_It__List__Olist_It__Value__Oval_J_Mt__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J_J_J, type,
    member772747827t_char : produc81045532t_char > set_Pr685054290t_char > $o).
thf(sy_c_member_001t__Product____Type__Oprod_It__List__Olist_It__Option__Ooption_It__Type__Oty_J_J_Mt__List__Olist_It__Option__Ooption_It__Type__Oty_J_J_J, type,
    member237105848ion_ty : produc922361871ion_ty > set_Pr962897519ion_ty > $o).
thf(sy_c_member_001t__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J, type,
    member89690956t_char : produc1257910179t_char > set_Pr164112643t_char > $o).
thf(sy_c_member_001t__Product____Type__Oprod_It__List__Olist_It__Type__Oty_J_Mt__List__Olist_It__Type__Oty_J_J, type,
    member1942114840ist_ty : produc1714969711ist_ty > set_Pr1785354703ist_ty > $o).
thf(sy_c_member_001t__Product____Type__Oprod_It__List__Olist_It__Type__Oty_J_Mt__Product____Type__Oprod_It__List__Olist_It__Value__Oval_J_Mt__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J_J, type,
    member1031340033t_char : produc111478616t_char > set_Pr925902648t_char > $o).
thf(sy_c_member_001t__Product____Type__Oprod_It__List__Olist_It__Value__Oval_J_Mt__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J, type,
    member580484423t_char : produc1109669680t_char > set_Pr82799206t_char > $o).
thf(sy_c_member_001t__Product____Type__Oprod_It__List__Olist_It__Value__Oval_J_Mt__List__Olist_It__Value__Oval_J_J, type,
    member1382006826st_val : produc1608520577st_val > set_Pr723931873st_val > $o).
thf(sy_c_member_001t__Product____Type__Oprod_It__Option__Ooption_It__Type__Oty_J_Mt__Option__Ooption_It__Type__Oty_J_J, type,
    member704321176ion_ty : produc1872540399ion_ty > set_Pr616941135ion_ty > $o).
thf(sy_c_member_001t__Product____Type__Oprod_It__Type__Oty_Mt__Type__Oty_J, type,
    member2070851320_ty_ty : product_prod_ty_ty > set_Pr1194734255_ty_ty > $o).
thf(sy_c_member_001t__Product____Type__Oprod_It__Value__Oval_Mt__Value__Oval_J, type,
    member1494223754al_val : product_prod_val_val > set_Pr1870322241al_val > $o).
thf(sy_v_E, type,
    e : list_char > option_ty).
thf(sy_v_P, type,
    p : list_P1234162913t_char).
thf(sy_v_T, type,
    t : ty).
thf(sy_v_Ts, type,
    ts : list_ty).
thf(sy_v_Vs, type,
    vs : list_list_char).
thf(sy_v_e, type,
    e2 : exp_list_char).
thf(sy_v_h, type,
    h : nat > option2118145160on_val).
thf(sy_v_vs, type,
    vs2 : list_val).

% Relevant facts (248)
thf(fact_0_widens__refl, axiom,
    ((![P : list_P1234162913t_char, Xs : list_ty]: (list_all2_ty_ty @ (widen_917054840t_char @ P) @ Xs @ Xs)))). % widens_refl
thf(fact_1_length__map, axiom,
    ((![F : ty > ty, Xs : list_ty]: ((size_size_list_ty @ (map_ty_ty @ F @ Xs)) = (size_size_list_ty @ Xs))))). % length_map
thf(fact_2_length__map, axiom,
    ((![F : val > ty, Xs : list_val]: ((size_size_list_ty @ (map_val_ty @ F @ Xs)) = (size_size_list_val @ Xs))))). % length_map
thf(fact_3_length__map, axiom,
    ((![F : ty > val, Xs : list_ty]: ((size_size_list_val @ (map_ty_val @ F @ Xs)) = (size_size_list_ty @ Xs))))). % length_map
thf(fact_4_length__map, axiom,
    ((![F : val > val, Xs : list_val]: ((size_size_list_val @ (map_val_val @ F @ Xs)) = (size_size_list_val @ Xs))))). % length_map
thf(fact_5_length__map, axiom,
    ((![F : ty > option_ty, Xs : list_ty]: ((size_s1569909163ion_ty @ (map_ty_option_ty @ F @ Xs)) = (size_size_list_ty @ Xs))))). % length_map
thf(fact_6_length__map, axiom,
    ((![F : val > option_ty, Xs : list_val]: ((size_s1569909163ion_ty @ (map_val_option_ty @ F @ Xs)) = (size_size_list_val @ Xs))))). % length_map
thf(fact_7_length__map, axiom,
    ((![F : ty > list_char, Xs : list_ty]: ((size_s2008079621t_char @ (map_ty_list_char @ F @ Xs)) = (size_size_list_ty @ Xs))))). % length_map
thf(fact_8_length__map, axiom,
    ((![F : val > list_char, Xs : list_val]: ((size_s2008079621t_char @ (map_val_list_char @ F @ Xs)) = (size_size_list_val @ Xs))))). % length_map
thf(fact_9_length__map, axiom,
    ((![F : list_char > ty, Xs : list_list_char]: ((size_size_list_ty @ (map_list_char_ty @ F @ Xs)) = (size_s2008079621t_char @ Xs))))). % length_map
thf(fact_10_length__map, axiom,
    ((![F : list_char > val, Xs : list_list_char]: ((size_size_list_val @ (map_list_char_val @ F @ Xs)) = (size_s2008079621t_char @ Xs))))). % length_map
thf(fact_11_prod__cases4, axiom,
    ((![Y : produc81045532t_char]: (~ ((![A : list_list_char, B : list_ty, C : list_val, D : exp_list_char]: (~ ((Y = (produc1808722894t_char @ A @ (produc1806338192t_char @ B @ (produc823987298t_char @ C @ D)))))))))))). % prod_cases4
thf(fact_12_prod__induct4, axiom,
    ((![P : produc81045532t_char > $o, X : produc81045532t_char]: ((![A : list_list_char, B : list_ty, C : list_val, D : exp_list_char]: (P @ (produc1808722894t_char @ A @ (produc1806338192t_char @ B @ (produc823987298t_char @ C @ D))))) => (P @ X))))). % prod_induct4
thf(fact_13_option_Oinject, axiom,
    ((![X2 : ty, Y2 : ty]: (((some_ty @ X2) = (some_ty @ Y2)) = (X2 = Y2))))). % option.inject
thf(fact_14_option_Oinject, axiom,
    ((![X2 : val, Y2 : val]: (((some_val @ X2) = (some_val @ Y2)) = (X2 = Y2))))). % option.inject
thf(fact_15_widens__trans, axiom,
    ((![P : list_P1234162913t_char, Ss : list_ty, Ts : list_ty, Us : list_ty]: ((list_all2_ty_ty @ (widen_917054840t_char @ P) @ Ss @ Ts) => ((list_all2_ty_ty @ (widen_917054840t_char @ P) @ Ts @ Us) => (list_all2_ty_ty @ (widen_917054840t_char @ P) @ Ss @ Us)))))). % widens_trans
thf(fact_16_old_Oprod_Oinject, axiom,
    ((![A2 : list_list_char, B2 : produc111478616t_char, A3 : list_list_char, B3 : produc111478616t_char]: (((produc1808722894t_char @ A2 @ B2) = (produc1808722894t_char @ A3 @ B3)) = (((A2 = A3)) & ((B2 = B3))))))). % old.prod.inject
thf(fact_17_old_Oprod_Oinject, axiom,
    ((![A2 : list_ty, B2 : produc1109669680t_char, A3 : list_ty, B3 : produc1109669680t_char]: (((produc1806338192t_char @ A2 @ B2) = (produc1806338192t_char @ A3 @ B3)) = (((A2 = A3)) & ((B2 = B3))))))). % old.prod.inject
thf(fact_18_old_Oprod_Oinject, axiom,
    ((![A2 : list_val, B2 : exp_list_char, A3 : list_val, B3 : exp_list_char]: (((produc823987298t_char @ A2 @ B2) = (produc823987298t_char @ A3 @ B3)) = (((A2 = A3)) & ((B2 = B3))))))). % old.prod.inject
thf(fact_19_old_Oprod_Oinject, axiom,
    ((![A2 : nat > option2118145160on_val, B2 : list_char > option_val, A3 : nat > option2118145160on_val, B3 : list_char > option_val]: (((produc52622304on_val @ A2 @ B2) = (produc52622304on_val @ A3 @ B3)) = (((A2 = A3)) & ((B2 = B3))))))). % old.prod.inject
thf(fact_20_prod_Oinject, axiom,
    ((![X1 : list_list_char, X2 : produc111478616t_char, Y1 : list_list_char, Y2 : produc111478616t_char]: (((produc1808722894t_char @ X1 @ X2) = (produc1808722894t_char @ Y1 @ Y2)) = (((X1 = Y1)) & ((X2 = Y2))))))). % prod.inject
thf(fact_21_prod_Oinject, axiom,
    ((![X1 : list_ty, X2 : produc1109669680t_char, Y1 : list_ty, Y2 : produc1109669680t_char]: (((produc1806338192t_char @ X1 @ X2) = (produc1806338192t_char @ Y1 @ Y2)) = (((X1 = Y1)) & ((X2 = Y2))))))). % prod.inject
thf(fact_22_prod_Oinject, axiom,
    ((![X1 : list_val, X2 : exp_list_char, Y1 : list_val, Y2 : exp_list_char]: (((produc823987298t_char @ X1 @ X2) = (produc823987298t_char @ Y1 @ Y2)) = (((X1 = Y1)) & ((X2 = Y2))))))). % prod.inject
thf(fact_23_prod_Oinject, axiom,
    ((![X1 : nat > option2118145160on_val, X2 : list_char > option_val, Y1 : nat > option2118145160on_val, Y2 : list_char > option_val]: (((produc52622304on_val @ X1 @ X2) = (produc52622304on_val @ Y1 @ Y2)) = (((X1 = Y1)) & ((X2 = Y2))))))). % prod.inject
thf(fact_24_old_Oprod_Oinducts, axiom,
    ((![P : produc81045532t_char > $o, Prod : produc81045532t_char]: ((![A : list_list_char, B : produc111478616t_char]: (P @ (produc1808722894t_char @ A @ B))) => (P @ Prod))))). % old.prod.inducts
thf(fact_25_old_Oprod_Oinducts, axiom,
    ((![P : produc111478616t_char > $o, Prod : produc111478616t_char]: ((![A : list_ty, B : produc1109669680t_char]: (P @ (produc1806338192t_char @ A @ B))) => (P @ Prod))))). % old.prod.inducts
thf(fact_26_old_Oprod_Oinducts, axiom,
    ((![P : produc1109669680t_char > $o, Prod : produc1109669680t_char]: ((![A : list_val, B : exp_list_char]: (P @ (produc823987298t_char @ A @ B))) => (P @ Prod))))). % old.prod.inducts
thf(fact_27_old_Oprod_Oinducts, axiom,
    ((![P : produc515445032on_val > $o, Prod : produc515445032on_val]: ((![A : nat > option2118145160on_val, B : list_char > option_val]: (P @ (produc52622304on_val @ A @ B))) => (P @ Prod))))). % old.prod.inducts
thf(fact_28_old_Oprod_Oexhaust, axiom,
    ((![Y : produc81045532t_char]: (~ ((![A : list_list_char, B : produc111478616t_char]: (~ ((Y = (produc1808722894t_char @ A @ B)))))))))). % old.prod.exhaust
thf(fact_29_old_Oprod_Oexhaust, axiom,
    ((![Y : produc111478616t_char]: (~ ((![A : list_ty, B : produc1109669680t_char]: (~ ((Y = (produc1806338192t_char @ A @ B)))))))))). % old.prod.exhaust
thf(fact_30_old_Oprod_Oexhaust, axiom,
    ((![Y : produc1109669680t_char]: (~ ((![A : list_val, B : exp_list_char]: (~ ((Y = (produc823987298t_char @ A @ B)))))))))). % old.prod.exhaust
thf(fact_31_old_Oprod_Oexhaust, axiom,
    ((![Y : produc515445032on_val]: (~ ((![A : nat > option2118145160on_val, B : list_char > option_val]: (~ ((Y = (produc52622304on_val @ A @ B)))))))))). % old.prod.exhaust
thf(fact_32_Pair__inject, axiom,
    ((![A2 : list_list_char, B2 : produc111478616t_char, A3 : list_list_char, B3 : produc111478616t_char]: (((produc1808722894t_char @ A2 @ B2) = (produc1808722894t_char @ A3 @ B3)) => (~ (((A2 = A3) => (~ ((B2 = B3)))))))))). % Pair_inject
thf(fact_33_Pair__inject, axiom,
    ((![A2 : list_ty, B2 : produc1109669680t_char, A3 : list_ty, B3 : produc1109669680t_char]: (((produc1806338192t_char @ A2 @ B2) = (produc1806338192t_char @ A3 @ B3)) => (~ (((A2 = A3) => (~ ((B2 = B3)))))))))). % Pair_inject
thf(fact_34_Pair__inject, axiom,
    ((![A2 : list_val, B2 : exp_list_char, A3 : list_val, B3 : exp_list_char]: (((produc823987298t_char @ A2 @ B2) = (produc823987298t_char @ A3 @ B3)) => (~ (((A2 = A3) => (~ ((B2 = B3)))))))))). % Pair_inject
thf(fact_35_Pair__inject, axiom,
    ((![A2 : nat > option2118145160on_val, B2 : list_char > option_val, A3 : nat > option2118145160on_val, B3 : list_char > option_val]: (((produc52622304on_val @ A2 @ B2) = (produc52622304on_val @ A3 @ B3)) => (~ (((A2 = A3) => (~ ((B2 = B3)))))))))). % Pair_inject
thf(fact_36_prod__cases, axiom,
    ((![P : produc81045532t_char > $o, P2 : produc81045532t_char]: ((![A : list_list_char, B : produc111478616t_char]: (P @ (produc1808722894t_char @ A @ B))) => (P @ P2))))). % prod_cases
thf(fact_37_prod__cases, axiom,
    ((![P : produc111478616t_char > $o, P2 : produc111478616t_char]: ((![A : list_ty, B : produc1109669680t_char]: (P @ (produc1806338192t_char @ A @ B))) => (P @ P2))))). % prod_cases
thf(fact_38_prod__cases, axiom,
    ((![P : produc1109669680t_char > $o, P2 : produc1109669680t_char]: ((![A : list_val, B : exp_list_char]: (P @ (produc823987298t_char @ A @ B))) => (P @ P2))))). % prod_cases
thf(fact_39_prod__cases, axiom,
    ((![P : produc515445032on_val > $o, P2 : produc515445032on_val]: ((![A : nat > option2118145160on_val, B : list_char > option_val]: (P @ (produc52622304on_val @ A @ B))) => (P @ P2))))). % prod_cases
thf(fact_40_surj__pair, axiom,
    ((![P2 : produc81045532t_char]: (?[X3 : list_list_char, Y3 : produc111478616t_char]: (P2 = (produc1808722894t_char @ X3 @ Y3)))))). % surj_pair
thf(fact_41_surj__pair, axiom,
    ((![P2 : produc111478616t_char]: (?[X3 : list_ty, Y3 : produc1109669680t_char]: (P2 = (produc1806338192t_char @ X3 @ Y3)))))). % surj_pair
thf(fact_42_surj__pair, axiom,
    ((![P2 : produc1109669680t_char]: (?[X3 : list_val, Y3 : exp_list_char]: (P2 = (produc823987298t_char @ X3 @ Y3)))))). % surj_pair
thf(fact_43_surj__pair, axiom,
    ((![P2 : produc515445032on_val]: (?[X3 : nat > option2118145160on_val, Y3 : list_char > option_val]: (P2 = (produc52622304on_val @ X3 @ Y3)))))). % surj_pair
thf(fact_44_neq__if__length__neq, axiom,
    ((![Xs : list_list_char, Ys : list_list_char]: ((~ (((size_s2008079621t_char @ Xs) = (size_s2008079621t_char @ Ys)))) => (~ ((Xs = Ys))))))). % neq_if_length_neq
thf(fact_45_neq__if__length__neq, axiom,
    ((![Xs : list_ty, Ys : list_ty]: ((~ (((size_size_list_ty @ Xs) = (size_size_list_ty @ Ys)))) => (~ ((Xs = Ys))))))). % neq_if_length_neq
thf(fact_46_neq__if__length__neq, axiom,
    ((![Xs : list_val, Ys : list_val]: ((~ (((size_size_list_val @ Xs) = (size_size_list_val @ Ys)))) => (~ ((Xs = Ys))))))). % neq_if_length_neq
thf(fact_47_neq__if__length__neq, axiom,
    ((![Xs : list_exp_list_char, Ys : list_exp_list_char]: ((~ (((size_s329991613t_char @ Xs) = (size_s329991613t_char @ Ys)))) => (~ ((Xs = Ys))))))). % neq_if_length_neq
thf(fact_48_neq__if__length__neq, axiom,
    ((![Xs : list_option_ty, Ys : list_option_ty]: ((~ (((size_s1569909163ion_ty @ Xs) = (size_s1569909163ion_ty @ Ys)))) => (~ ((Xs = Ys))))))). % neq_if_length_neq
thf(fact_49_Ex__list__of__length, axiom,
    ((![N : nat]: (?[Xs2 : list_list_char]: ((size_s2008079621t_char @ Xs2) = N))))). % Ex_list_of_length
thf(fact_50_Ex__list__of__length, axiom,
    ((![N : nat]: (?[Xs2 : list_ty]: ((size_size_list_ty @ Xs2) = N))))). % Ex_list_of_length
thf(fact_51_Ex__list__of__length, axiom,
    ((![N : nat]: (?[Xs2 : list_val]: ((size_size_list_val @ Xs2) = N))))). % Ex_list_of_length
thf(fact_52_Ex__list__of__length, axiom,
    ((![N : nat]: (?[Xs2 : list_exp_list_char]: ((size_s329991613t_char @ Xs2) = N))))). % Ex_list_of_length
thf(fact_53_Ex__list__of__length, axiom,
    ((![N : nat]: (?[Xs2 : list_option_ty]: ((size_s1569909163ion_ty @ Xs2) = N))))). % Ex_list_of_length
thf(fact_54_list_Orel__refl, axiom,
    ((![Ra : ty > ty > $o, X : list_ty]: ((![X3 : ty]: (Ra @ X3 @ X3)) => (list_all2_ty_ty @ Ra @ X @ X))))). % list.rel_refl
thf(fact_55_list__all2__antisym, axiom,
    ((![P : ty > ty > $o, Q : ty > ty > $o, Xs : list_ty, Ys : list_ty]: ((![X3 : ty, Y3 : ty]: ((P @ X3 @ Y3) => ((Q @ Y3 @ X3) => (X3 = Y3)))) => ((list_all2_ty_ty @ P @ Xs @ Ys) => ((list_all2_ty_ty @ Q @ Ys @ Xs) => (Xs = Ys))))))). % list_all2_antisym
thf(fact_56_list_Orel__eq, axiom,
    (((list_all2_ty_ty @ (^[Y4 : ty]: (^[Z : ty]: (Y4 = Z)))) = (^[Y4 : list_ty]: (^[Z : list_ty]: (Y4 = Z)))))). % list.rel_eq
thf(fact_57_list__all2__trans, axiom,
    ((![P1 : ty > ty > $o, P22 : ty > ty > $o, P3 : ty > ty > $o, As : list_ty, Bs : list_ty, Cs : list_ty]: ((![A : ty, B : ty, C : ty]: ((P1 @ A @ B) => ((P22 @ B @ C) => (P3 @ A @ C)))) => ((list_all2_ty_ty @ P1 @ As @ Bs) => ((list_all2_ty_ty @ P22 @ Bs @ Cs) => (list_all2_ty_ty @ P3 @ As @ Cs))))))). % list_all2_trans
thf(fact_58_list__all2__refl, axiom,
    ((![P : ty > ty > $o, Xs : list_ty]: ((![X3 : ty]: (P @ X3 @ X3)) => (list_all2_ty_ty @ P @ Xs @ Xs))))). % list_all2_refl
thf(fact_59_list__all2__mono, axiom,
    ((![P : ty > ty > $o, Xs : list_ty, Ys : list_ty, Q : ty > ty > $o]: ((list_all2_ty_ty @ P @ Xs @ Ys) => ((![Xs2 : ty, Ys2 : ty]: ((P @ Xs2 @ Ys2) => (Q @ Xs2 @ Ys2))) => (list_all2_ty_ty @ Q @ Xs @ Ys)))))). % list_all2_mono
thf(fact_60_list__all2__eq, axiom,
    (((^[Y4 : list_ty]: (^[Z : list_ty]: (Y4 = Z))) = (list_all2_ty_ty @ (^[Y4 : ty]: (^[Z : ty]: (Y4 = Z))))))). % list_all2_eq
thf(fact_61_widen__refl, axiom,
    ((![P : list_P1234162913t_char, T : ty]: (widen_917054840t_char @ P @ T @ T)))). % widen_refl
thf(fact_62_widen__trans, axiom,
    ((![P : list_P1234162913t_char, S : ty, U : ty, T : ty]: ((widen_917054840t_char @ P @ S @ U) => ((widen_917054840t_char @ P @ U @ T) => (widen_917054840t_char @ P @ S @ T)))))). % widen_trans
thf(fact_63_prod__induct3, axiom,
    ((![P : produc81045532t_char > $o, X : produc81045532t_char]: ((![A : list_list_char, B : list_ty, C : produc1109669680t_char]: (P @ (produc1808722894t_char @ A @ (produc1806338192t_char @ B @ C)))) => (P @ X))))). % prod_induct3
thf(fact_64_prod__induct3, axiom,
    ((![P : produc111478616t_char > $o, X : produc111478616t_char]: ((![A : list_ty, B : list_val, C : exp_list_char]: (P @ (produc1806338192t_char @ A @ (produc823987298t_char @ B @ C)))) => (P @ X))))). % prod_induct3
thf(fact_65_prod__cases3, axiom,
    ((![Y : produc81045532t_char]: (~ ((![A : list_list_char, B : list_ty, C : produc1109669680t_char]: (~ ((Y = (produc1808722894t_char @ A @ (produc1806338192t_char @ B @ C))))))))))). % prod_cases3
thf(fact_66_prod__cases3, axiom,
    ((![Y : produc111478616t_char]: (~ ((![A : list_ty, B : list_val, C : exp_list_char]: (~ ((Y = (produc1806338192t_char @ A @ (produc823987298t_char @ B @ C))))))))))). % prod_cases3
thf(fact_67_map__eq__imp__length__eq, axiom,
    ((![F : ty > val, Xs : list_ty, G : ty > val, Ys : list_ty]: (((map_ty_val @ F @ Xs) = (map_ty_val @ G @ Ys)) => ((size_size_list_ty @ Xs) = (size_size_list_ty @ Ys)))))). % map_eq_imp_length_eq
thf(fact_68_map__eq__imp__length__eq, axiom,
    ((![F : ty > ty, Xs : list_ty, G : ty > ty, Ys : list_ty]: (((map_ty_ty @ F @ Xs) = (map_ty_ty @ G @ Ys)) => ((size_size_list_ty @ Xs) = (size_size_list_ty @ Ys)))))). % map_eq_imp_length_eq
thf(fact_69_map__eq__imp__length__eq, axiom,
    ((![F : ty > val, Xs : list_ty, G : val > val, Ys : list_val]: (((map_ty_val @ F @ Xs) = (map_val_val @ G @ Ys)) => ((size_size_list_ty @ Xs) = (size_size_list_val @ Ys)))))). % map_eq_imp_length_eq
thf(fact_70_map__eq__imp__length__eq, axiom,
    ((![F : ty > ty, Xs : list_ty, G : val > ty, Ys : list_val]: (((map_ty_ty @ F @ Xs) = (map_val_ty @ G @ Ys)) => ((size_size_list_ty @ Xs) = (size_size_list_val @ Ys)))))). % map_eq_imp_length_eq
thf(fact_71_map__eq__imp__length__eq, axiom,
    ((![F : val > val, Xs : list_val, G : ty > val, Ys : list_ty]: (((map_val_val @ F @ Xs) = (map_ty_val @ G @ Ys)) => ((size_size_list_val @ Xs) = (size_size_list_ty @ Ys)))))). % map_eq_imp_length_eq
thf(fact_72_map__eq__imp__length__eq, axiom,
    ((![F : val > ty, Xs : list_val, G : ty > ty, Ys : list_ty]: (((map_val_ty @ F @ Xs) = (map_ty_ty @ G @ Ys)) => ((size_size_list_val @ Xs) = (size_size_list_ty @ Ys)))))). % map_eq_imp_length_eq
thf(fact_73_map__eq__imp__length__eq, axiom,
    ((![F : list_char > val, Xs : list_list_char, G : ty > val, Ys : list_ty]: (((map_list_char_val @ F @ Xs) = (map_ty_val @ G @ Ys)) => ((size_s2008079621t_char @ Xs) = (size_size_list_ty @ Ys)))))). % map_eq_imp_length_eq
thf(fact_74_map__eq__imp__length__eq, axiom,
    ((![F : list_char > ty, Xs : list_list_char, G : ty > ty, Ys : list_ty]: (((map_list_char_ty @ F @ Xs) = (map_ty_ty @ G @ Ys)) => ((size_s2008079621t_char @ Xs) = (size_size_list_ty @ Ys)))))). % map_eq_imp_length_eq
thf(fact_75_map__eq__imp__length__eq, axiom,
    ((![F : ty > val, Xs : list_ty, G : list_char > val, Ys : list_list_char]: (((map_ty_val @ F @ Xs) = (map_list_char_val @ G @ Ys)) => ((size_size_list_ty @ Xs) = (size_s2008079621t_char @ Ys)))))). % map_eq_imp_length_eq
thf(fact_76_map__eq__imp__length__eq, axiom,
    ((![F : ty > ty, Xs : list_ty, G : list_char > ty, Ys : list_list_char]: (((map_ty_ty @ F @ Xs) = (map_list_char_ty @ G @ Ys)) => ((size_size_list_ty @ Xs) = (size_s2008079621t_char @ Ys)))))). % map_eq_imp_length_eq
thf(fact_77_list__all2__lengthD, axiom,
    ((![P : ty > ty > $o, Xs : list_ty, Ys : list_ty]: ((list_all2_ty_ty @ P @ Xs @ Ys) => ((size_size_list_ty @ Xs) = (size_size_list_ty @ Ys)))))). % list_all2_lengthD
thf(fact_78_list__all2__lengthD, axiom,
    ((![P : ty > val > $o, Xs : list_ty, Ys : list_val]: ((list_all2_ty_val @ P @ Xs @ Ys) => ((size_size_list_ty @ Xs) = (size_size_list_val @ Ys)))))). % list_all2_lengthD
thf(fact_79_list__all2__lengthD, axiom,
    ((![P : val > ty > $o, Xs : list_val, Ys : list_ty]: ((list_all2_val_ty @ P @ Xs @ Ys) => ((size_size_list_val @ Xs) = (size_size_list_ty @ Ys)))))). % list_all2_lengthD
thf(fact_80_list__all2__lengthD, axiom,
    ((![P : val > val > $o, Xs : list_val, Ys : list_val]: ((list_all2_val_val @ P @ Xs @ Ys) => ((size_size_list_val @ Xs) = (size_size_list_val @ Ys)))))). % list_all2_lengthD
thf(fact_81_list__all2__lengthD, axiom,
    ((![P : list_char > ty > $o, Xs : list_list_char, Ys : list_ty]: ((list_a1770748705har_ty @ P @ Xs @ Ys) => ((size_s2008079621t_char @ Xs) = (size_size_list_ty @ Ys)))))). % list_all2_lengthD
thf(fact_82_list__all2__lengthD, axiom,
    ((![P : list_char > val > $o, Xs : list_list_char, Ys : list_val]: ((list_a280217834ar_val @ P @ Xs @ Ys) => ((size_s2008079621t_char @ Xs) = (size_size_list_val @ Ys)))))). % list_all2_lengthD
thf(fact_83_list__all2__lengthD, axiom,
    ((![P : ty > list_char > $o, Xs : list_ty, Ys : list_list_char]: ((list_a1504214817t_char @ P @ Xs @ Ys) => ((size_size_list_ty @ Xs) = (size_s2008079621t_char @ Ys)))))). % list_all2_lengthD
thf(fact_84_list__all2__lengthD, axiom,
    ((![P : ty > option_ty > $o, Xs : list_ty, Ys : list_option_ty]: ((list_a765198023ion_ty @ P @ Xs @ Ys) => ((size_size_list_ty @ Xs) = (size_s1569909163ion_ty @ Ys)))))). % list_all2_lengthD
thf(fact_85_list__all2__lengthD, axiom,
    ((![P : val > list_char > $o, Xs : list_val, Ys : list_list_char]: ((list_a1248766058t_char @ P @ Xs @ Ys) => ((size_size_list_val @ Xs) = (size_s2008079621t_char @ Ys)))))). % list_all2_lengthD
thf(fact_86_list__all2__lengthD, axiom,
    ((![P : val > option_ty > $o, Xs : list_val, Ys : list_option_ty]: ((list_a509749264ion_ty @ P @ Xs @ Ys) => ((size_size_list_val @ Xs) = (size_s1569909163ion_ty @ Ys)))))). % list_all2_lengthD
thf(fact_87_map__eq__map__tailrec, axiom,
    ((map_val_option_ty = map_ta1696661655ion_ty))). % map_eq_map_tailrec
thf(fact_88_map__eq__map__tailrec, axiom,
    ((map_ty_option_ty = map_ta56519374ion_ty))). % map_eq_map_tailrec
thf(fact_89_map__eq__map__tailrec, axiom,
    ((map_va1515327237t_char = map_ta466610747t_char))). % map_eq_map_tailrec
thf(fact_90_map__eq__map__tailrec, axiom,
    ((map_exp_list_char_ty = map_ta650207092har_ty))). % map_eq_map_tailrec
thf(fact_91_map__eq__map__tailrec, axiom,
    ((map_ty_val = map_tailrec_ty_val))). % map_eq_map_tailrec
thf(fact_92_map__eq__map__tailrec, axiom,
    ((map_ty_list_char = map_ta795536168t_char))). % map_eq_map_tailrec
thf(fact_93_map__eq__map__tailrec, axiom,
    ((map_ty_exp_list_char = map_ta566847940t_char))). % map_eq_map_tailrec
thf(fact_94_map__eq__map__tailrec, axiom,
    ((map_ty_ty = map_tailrec_ty_ty))). % map_eq_map_tailrec
thf(fact_95_confs__conv__map, axiom,
    ((![P : list_P1234162913t_char, H : nat > option2118145160on_val, Vs : list_val, Ts2 : list_ty]: ((list_all2_val_ty @ (conf_P93989998t_char @ P @ H) @ Vs @ Ts2) = (?[Ts3 : list_ty]: ((((map_val_option_ty @ (typeof_h @ H) @ Vs) = (map_ty_option_ty @ some_ty @ Ts3))) & ((list_all2_ty_ty @ (widen_917054840t_char @ P) @ Ts3 @ Ts2)))))))). % confs_conv_map
thf(fact_96_blocksEval, axiom,
    ((![Ps : list_list_char, Ts : list_ty, Vs : list_val, P : list_P1234162913t_char, E : exp_list_char, H : nat > option2118145160on_val, L : list_char > option_val, E2 : exp_list_char, H2 : nat > option2118145160on_val, L2 : list_char > option_val]: (((size_s2008079621t_char @ Ps) = (size_size_list_ty @ Ts)) => (((size_s2008079621t_char @ Ps) = (size_size_list_val @ Vs)) => ((eval @ P @ (blocks @ (produc1808722894t_char @ Ps @ (produc1806338192t_char @ Ts @ (produc823987298t_char @ Vs @ E)))) @ (produc52622304on_val @ H @ L) @ E2 @ (produc52622304on_val @ H2 @ L2)) => (?[L3 : list_char > option_val]: (eval @ P @ E @ (produc52622304on_val @ H @ (map_up576607321ar_val @ L @ Ps @ Vs)) @ E2 @ (produc52622304on_val @ H2 @ L3))))))))). % blocksEval
thf(fact_97_size__neq__size__imp__neq, axiom,
    ((![X : list_list_char, Y : list_list_char]: ((~ (((size_s2008079621t_char @ X) = (size_s2008079621t_char @ Y)))) => (~ ((X = Y))))))). % size_neq_size_imp_neq
thf(fact_98_size__neq__size__imp__neq, axiom,
    ((![X : list_ty, Y : list_ty]: ((~ (((size_size_list_ty @ X) = (size_size_list_ty @ Y)))) => (~ ((X = Y))))))). % size_neq_size_imp_neq
thf(fact_99_size__neq__size__imp__neq, axiom,
    ((![X : list_val, Y : list_val]: ((~ (((size_size_list_val @ X) = (size_size_list_val @ Y)))) => (~ ((X = Y))))))). % size_neq_size_imp_neq
thf(fact_100_size__neq__size__imp__neq, axiom,
    ((![X : list_exp_list_char, Y : list_exp_list_char]: ((~ (((size_s329991613t_char @ X) = (size_s329991613t_char @ Y)))) => (~ ((X = Y))))))). % size_neq_size_imp_neq
thf(fact_101_size__neq__size__imp__neq, axiom,
    ((![X : list_option_ty, Y : list_option_ty]: ((~ (((size_s1569909163ion_ty @ X) = (size_s1569909163ion_ty @ Y)))) => (~ ((X = Y))))))). % size_neq_size_imp_neq
thf(fact_102_WTrts__Val, axiom,
    ((![P : list_P1234162913t_char, H : nat > option2118145160on_val, E3 : list_char > option_ty, Vs : list_val, Ts : list_ty]: ((wTrts @ P @ H @ E3 @ (map_va1515327237t_char @ val_list_char @ Vs) @ Ts) = ((map_val_option_ty @ (typeof_h @ H) @ Vs) = (map_ty_option_ty @ some_ty @ Ts)))))). % WTrts_Val
thf(fact_103_ssubst__Pair__rhs, axiom,
    ((![R : list_list_char, S2 : produc111478616t_char, R2 : set_Pr685054290t_char, S3 : produc111478616t_char]: ((member772747827t_char @ (produc1808722894t_char @ R @ S2) @ R2) => ((S3 = S2) => (member772747827t_char @ (produc1808722894t_char @ R @ S3) @ R2)))))). % ssubst_Pair_rhs
thf(fact_104_ssubst__Pair__rhs, axiom,
    ((![R : list_ty, S2 : produc1109669680t_char, R2 : set_Pr925902648t_char, S3 : produc1109669680t_char]: ((member1031340033t_char @ (produc1806338192t_char @ R @ S2) @ R2) => ((S3 = S2) => (member1031340033t_char @ (produc1806338192t_char @ R @ S3) @ R2)))))). % ssubst_Pair_rhs
thf(fact_105_ssubst__Pair__rhs, axiom,
    ((![R : list_val, S2 : exp_list_char, R2 : set_Pr82799206t_char, S3 : exp_list_char]: ((member580484423t_char @ (produc823987298t_char @ R @ S2) @ R2) => ((S3 = S2) => (member580484423t_char @ (produc823987298t_char @ R @ S3) @ R2)))))). % ssubst_Pair_rhs
thf(fact_106_ssubst__Pair__rhs, axiom,
    ((![R : nat > option2118145160on_val, S2 : list_char > option_val, R2 : set_Pr723149704on_val, S3 : list_char > option_val]: ((member652041809on_val @ (produc52622304on_val @ R @ S2) @ R2) => ((S3 = S2) => (member652041809on_val @ (produc52622304on_val @ R @ S3) @ R2)))))). % ssubst_Pair_rhs
thf(fact_107_widens__Cons, axiom,
    ((![P : list_P1234162913t_char, X : ty, Xs : list_ty, Ys : list_ty]: ((list_all2_ty_ty @ (widen_917054840t_char @ P) @ (cons_ty @ X @ Xs) @ Ys) = (?[Z2 : ty]: (?[Zs : list_ty]: (((Ys = (cons_ty @ Z2 @ Zs))) & ((((widen_917054840t_char @ P @ X @ Z2)) & ((list_all2_ty_ty @ (widen_917054840t_char @ P) @ Xs @ Zs))))))))))). % widens_Cons
thf(fact_108_curryI, axiom,
    ((![F : produc81045532t_char > $o, A2 : list_list_char, B2 : produc111478616t_char]: ((F @ (produc1808722894t_char @ A2 @ B2)) => (produc309442300char_o @ F @ A2 @ B2))))). % curryI
thf(fact_109_curryI, axiom,
    ((![F : produc111478616t_char > $o, A2 : list_ty, B2 : produc1109669680t_char]: ((F @ (produc1806338192t_char @ A2 @ B2)) => (produc1133082708char_o @ F @ A2 @ B2))))). % curryI
thf(fact_110_curryI, axiom,
    ((![F : produc1109669680t_char > $o, A2 : list_val, B2 : exp_list_char]: ((F @ (produc823987298t_char @ A2 @ B2)) => (produc1660716392char_o @ F @ A2 @ B2))))). % curryI
thf(fact_111_curryI, axiom,
    ((![F : produc515445032on_val > $o, A2 : nat > option2118145160on_val, B2 : list_char > option_val]: ((F @ (produc52622304on_val @ A2 @ B2)) => (produc761261956_val_o @ F @ A2 @ B2))))). % curryI
thf(fact_112_list_Oinject, axiom,
    ((![X21 : exp_list_char, X22 : list_exp_list_char, Y21 : exp_list_char, Y22 : list_exp_list_char]: (((cons_exp_list_char @ X21 @ X22) = (cons_exp_list_char @ Y21 @ Y22)) = (((X21 = Y21)) & ((X22 = Y22))))))). % list.inject
thf(fact_113_list_Oinject, axiom,
    ((![X21 : ty, X22 : list_ty, Y21 : ty, Y22 : list_ty]: (((cons_ty @ X21 @ X22) = (cons_ty @ Y21 @ Y22)) = (((X21 = Y21)) & ((X22 = Y22))))))). % list.inject
thf(fact_114_Cons__eq__map__conv, axiom,
    ((![X : option_ty, Xs : list_option_ty, F : val > option_ty, Ys : list_val]: (((cons_option_ty @ X @ Xs) = (map_val_option_ty @ F @ Ys)) = (?[Z2 : val]: (?[Zs : list_val]: (((Ys = (cons_val @ Z2 @ Zs))) & ((((X = (F @ Z2))) & ((Xs = (map_val_option_ty @ F @ Zs)))))))))))). % Cons_eq_map_conv
thf(fact_115_Cons__eq__map__conv, axiom,
    ((![X : option_ty, Xs : list_option_ty, F : ty > option_ty, Ys : list_ty]: (((cons_option_ty @ X @ Xs) = (map_ty_option_ty @ F @ Ys)) = (?[Z2 : ty]: (?[Zs : list_ty]: (((Ys = (cons_ty @ Z2 @ Zs))) & ((((X = (F @ Z2))) & ((Xs = (map_ty_option_ty @ F @ Zs)))))))))))). % Cons_eq_map_conv
thf(fact_116_Cons__eq__map__conv, axiom,
    ((![X : val, Xs : list_val, F : ty > val, Ys : list_ty]: (((cons_val @ X @ Xs) = (map_ty_val @ F @ Ys)) = (?[Z2 : ty]: (?[Zs : list_ty]: (((Ys = (cons_ty @ Z2 @ Zs))) & ((((X = (F @ Z2))) & ((Xs = (map_ty_val @ F @ Zs)))))))))))). % Cons_eq_map_conv
thf(fact_117_Cons__eq__map__conv, axiom,
    ((![X : list_char, Xs : list_list_char, F : ty > list_char, Ys : list_ty]: (((cons_list_char @ X @ Xs) = (map_ty_list_char @ F @ Ys)) = (?[Z2 : ty]: (?[Zs : list_ty]: (((Ys = (cons_ty @ Z2 @ Zs))) & ((((X = (F @ Z2))) & ((Xs = (map_ty_list_char @ F @ Zs)))))))))))). % Cons_eq_map_conv
thf(fact_118_Cons__eq__map__conv, axiom,
    ((![X : exp_list_char, Xs : list_exp_list_char, F : val > exp_list_char, Ys : list_val]: (((cons_exp_list_char @ X @ Xs) = (map_va1515327237t_char @ F @ Ys)) = (?[Z2 : val]: (?[Zs : list_val]: (((Ys = (cons_val @ Z2 @ Zs))) & ((((X = (F @ Z2))) & ((Xs = (map_va1515327237t_char @ F @ Zs)))))))))))). % Cons_eq_map_conv
thf(fact_119_Cons__eq__map__conv, axiom,
    ((![X : exp_list_char, Xs : list_exp_list_char, F : exp_list_char > exp_list_char, Ys : list_exp_list_char]: (((cons_exp_list_char @ X @ Xs) = (map_ex886010884t_char @ F @ Ys)) = (?[Z2 : exp_list_char]: (?[Zs : list_exp_list_char]: (((Ys = (cons_exp_list_char @ Z2 @ Zs))) & ((((X = (F @ Z2))) & ((Xs = (map_ex886010884t_char @ F @ Zs)))))))))))). % Cons_eq_map_conv
thf(fact_120_Cons__eq__map__conv, axiom,
    ((![X : exp_list_char, Xs : list_exp_list_char, F : ty > exp_list_char, Ys : list_ty]: (((cons_exp_list_char @ X @ Xs) = (map_ty_exp_list_char @ F @ Ys)) = (?[Z2 : ty]: (?[Zs : list_ty]: (((Ys = (cons_ty @ Z2 @ Zs))) & ((((X = (F @ Z2))) & ((Xs = (map_ty_exp_list_char @ F @ Zs)))))))))))). % Cons_eq_map_conv
thf(fact_121_Cons__eq__map__conv, axiom,
    ((![X : ty, Xs : list_ty, F : exp_list_char > ty, Ys : list_exp_list_char]: (((cons_ty @ X @ Xs) = (map_exp_list_char_ty @ F @ Ys)) = (?[Z2 : exp_list_char]: (?[Zs : list_exp_list_char]: (((Ys = (cons_exp_list_char @ Z2 @ Zs))) & ((((X = (F @ Z2))) & ((Xs = (map_exp_list_char_ty @ F @ Zs)))))))))))). % Cons_eq_map_conv
thf(fact_122_Cons__eq__map__conv, axiom,
    ((![X : ty, Xs : list_ty, F : ty > ty, Ys : list_ty]: (((cons_ty @ X @ Xs) = (map_ty_ty @ F @ Ys)) = (?[Z2 : ty]: (?[Zs : list_ty]: (((Ys = (cons_ty @ Z2 @ Zs))) & ((((X = (F @ Z2))) & ((Xs = (map_ty_ty @ F @ Zs)))))))))))). % Cons_eq_map_conv
thf(fact_123_not__Cons__self2, axiom,
    ((![X : exp_list_char, Xs : list_exp_list_char]: (~ (((cons_exp_list_char @ X @ Xs) = Xs)))))). % not_Cons_self2
thf(fact_124_not__Cons__self2, axiom,
    ((![X : ty, Xs : list_ty]: (~ (((cons_ty @ X @ Xs) = Xs)))))). % not_Cons_self2
thf(fact_125_conf__widen, axiom,
    ((![P : list_P1234162913t_char, H : nat > option2118145160on_val, V : val, T : ty, T2 : ty]: ((conf_P93989998t_char @ P @ H @ V @ T) => ((widen_917054840t_char @ P @ T @ T2) => (conf_P93989998t_char @ P @ H @ V @ T2)))))). % conf_widen
thf(fact_126_confs__widens, axiom,
    ((![P : list_P1234162913t_char, H : nat > option2118145160on_val, Vs : list_val, Ts : list_ty, Ts2 : list_ty]: ((list_all2_val_ty @ (conf_P93989998t_char @ P @ H) @ Vs @ Ts) => ((list_all2_ty_ty @ (widen_917054840t_char @ P) @ Ts @ Ts2) => (list_all2_val_ty @ (conf_P93989998t_char @ P @ H) @ Vs @ Ts2)))))). % confs_widens
thf(fact_127_WTrts__same__length, axiom,
    ((![P : list_P1234162913t_char, H : nat > option2118145160on_val, E3 : list_char > option_ty, Es : list_exp_list_char, Ts : list_ty]: ((wTrts @ P @ H @ E3 @ Es @ Ts) => ((size_s329991613t_char @ Es) = (size_size_list_ty @ Ts)))))). % WTrts_same_length
thf(fact_128_list_Osimps_I9_J, axiom,
    ((![F : val > option_ty, X21 : val, X22 : list_val]: ((map_val_option_ty @ F @ (cons_val @ X21 @ X22)) = (cons_option_ty @ (F @ X21) @ (map_val_option_ty @ F @ X22)))))). % list.simps(9)
thf(fact_129_list_Osimps_I9_J, axiom,
    ((![F : val > exp_list_char, X21 : val, X22 : list_val]: ((map_va1515327237t_char @ F @ (cons_val @ X21 @ X22)) = (cons_exp_list_char @ (F @ X21) @ (map_va1515327237t_char @ F @ X22)))))). % list.simps(9)
thf(fact_130_list_Osimps_I9_J, axiom,
    ((![F : exp_list_char > exp_list_char, X21 : exp_list_char, X22 : list_exp_list_char]: ((map_ex886010884t_char @ F @ (cons_exp_list_char @ X21 @ X22)) = (cons_exp_list_char @ (F @ X21) @ (map_ex886010884t_char @ F @ X22)))))). % list.simps(9)
thf(fact_131_list_Osimps_I9_J, axiom,
    ((![F : exp_list_char > ty, X21 : exp_list_char, X22 : list_exp_list_char]: ((map_exp_list_char_ty @ F @ (cons_exp_list_char @ X21 @ X22)) = (cons_ty @ (F @ X21) @ (map_exp_list_char_ty @ F @ X22)))))). % list.simps(9)
thf(fact_132_list_Osimps_I9_J, axiom,
    ((![F : ty > option_ty, X21 : ty, X22 : list_ty]: ((map_ty_option_ty @ F @ (cons_ty @ X21 @ X22)) = (cons_option_ty @ (F @ X21) @ (map_ty_option_ty @ F @ X22)))))). % list.simps(9)
thf(fact_133_list_Osimps_I9_J, axiom,
    ((![F : ty > val, X21 : ty, X22 : list_ty]: ((map_ty_val @ F @ (cons_ty @ X21 @ X22)) = (cons_val @ (F @ X21) @ (map_ty_val @ F @ X22)))))). % list.simps(9)
thf(fact_134_list_Osimps_I9_J, axiom,
    ((![F : ty > list_char, X21 : ty, X22 : list_ty]: ((map_ty_list_char @ F @ (cons_ty @ X21 @ X22)) = (cons_list_char @ (F @ X21) @ (map_ty_list_char @ F @ X22)))))). % list.simps(9)
thf(fact_135_list_Osimps_I9_J, axiom,
    ((![F : ty > exp_list_char, X21 : ty, X22 : list_ty]: ((map_ty_exp_list_char @ F @ (cons_ty @ X21 @ X22)) = (cons_exp_list_char @ (F @ X21) @ (map_ty_exp_list_char @ F @ X22)))))). % list.simps(9)
thf(fact_136_list_Osimps_I9_J, axiom,
    ((![F : ty > ty, X21 : ty, X22 : list_ty]: ((map_ty_ty @ F @ (cons_ty @ X21 @ X22)) = (cons_ty @ (F @ X21) @ (map_ty_ty @ F @ X22)))))). % list.simps(9)
thf(fact_137_Cons__eq__map__D, axiom,
    ((![X : option_ty, Xs : list_option_ty, F : val > option_ty, Ys : list_val]: (((cons_option_ty @ X @ Xs) = (map_val_option_ty @ F @ Ys)) => (?[Z3 : val, Zs2 : list_val]: ((Ys = (cons_val @ Z3 @ Zs2)) & ((X = (F @ Z3)) & (Xs = (map_val_option_ty @ F @ Zs2))))))))). % Cons_eq_map_D
thf(fact_138_Cons__eq__map__D, axiom,
    ((![X : option_ty, Xs : list_option_ty, F : ty > option_ty, Ys : list_ty]: (((cons_option_ty @ X @ Xs) = (map_ty_option_ty @ F @ Ys)) => (?[Z3 : ty, Zs2 : list_ty]: ((Ys = (cons_ty @ Z3 @ Zs2)) & ((X = (F @ Z3)) & (Xs = (map_ty_option_ty @ F @ Zs2))))))))). % Cons_eq_map_D
thf(fact_139_Cons__eq__map__D, axiom,
    ((![X : val, Xs : list_val, F : ty > val, Ys : list_ty]: (((cons_val @ X @ Xs) = (map_ty_val @ F @ Ys)) => (?[Z3 : ty, Zs2 : list_ty]: ((Ys = (cons_ty @ Z3 @ Zs2)) & ((X = (F @ Z3)) & (Xs = (map_ty_val @ F @ Zs2))))))))). % Cons_eq_map_D
thf(fact_140_Cons__eq__map__D, axiom,
    ((![X : list_char, Xs : list_list_char, F : ty > list_char, Ys : list_ty]: (((cons_list_char @ X @ Xs) = (map_ty_list_char @ F @ Ys)) => (?[Z3 : ty, Zs2 : list_ty]: ((Ys = (cons_ty @ Z3 @ Zs2)) & ((X = (F @ Z3)) & (Xs = (map_ty_list_char @ F @ Zs2))))))))). % Cons_eq_map_D
thf(fact_141_Cons__eq__map__D, axiom,
    ((![X : exp_list_char, Xs : list_exp_list_char, F : val > exp_list_char, Ys : list_val]: (((cons_exp_list_char @ X @ Xs) = (map_va1515327237t_char @ F @ Ys)) => (?[Z3 : val, Zs2 : list_val]: ((Ys = (cons_val @ Z3 @ Zs2)) & ((X = (F @ Z3)) & (Xs = (map_va1515327237t_char @ F @ Zs2))))))))). % Cons_eq_map_D
thf(fact_142_Cons__eq__map__D, axiom,
    ((![X : exp_list_char, Xs : list_exp_list_char, F : exp_list_char > exp_list_char, Ys : list_exp_list_char]: (((cons_exp_list_char @ X @ Xs) = (map_ex886010884t_char @ F @ Ys)) => (?[Z3 : exp_list_char, Zs2 : list_exp_list_char]: ((Ys = (cons_exp_list_char @ Z3 @ Zs2)) & ((X = (F @ Z3)) & (Xs = (map_ex886010884t_char @ F @ Zs2))))))))). % Cons_eq_map_D
thf(fact_143_Cons__eq__map__D, axiom,
    ((![X : exp_list_char, Xs : list_exp_list_char, F : ty > exp_list_char, Ys : list_ty]: (((cons_exp_list_char @ X @ Xs) = (map_ty_exp_list_char @ F @ Ys)) => (?[Z3 : ty, Zs2 : list_ty]: ((Ys = (cons_ty @ Z3 @ Zs2)) & ((X = (F @ Z3)) & (Xs = (map_ty_exp_list_char @ F @ Zs2))))))))). % Cons_eq_map_D
thf(fact_144_Cons__eq__map__D, axiom,
    ((![X : ty, Xs : list_ty, F : exp_list_char > ty, Ys : list_exp_list_char]: (((cons_ty @ X @ Xs) = (map_exp_list_char_ty @ F @ Ys)) => (?[Z3 : exp_list_char, Zs2 : list_exp_list_char]: ((Ys = (cons_exp_list_char @ Z3 @ Zs2)) & ((X = (F @ Z3)) & (Xs = (map_exp_list_char_ty @ F @ Zs2))))))))). % Cons_eq_map_D
thf(fact_145_Cons__eq__map__D, axiom,
    ((![X : ty, Xs : list_ty, F : ty > ty, Ys : list_ty]: (((cons_ty @ X @ Xs) = (map_ty_ty @ F @ Ys)) => (?[Z3 : ty, Zs2 : list_ty]: ((Ys = (cons_ty @ Z3 @ Zs2)) & ((X = (F @ Z3)) & (Xs = (map_ty_ty @ F @ Zs2))))))))). % Cons_eq_map_D
thf(fact_146_map__eq__Cons__D, axiom,
    ((![F : val > option_ty, Xs : list_val, Y : option_ty, Ys : list_option_ty]: (((map_val_option_ty @ F @ Xs) = (cons_option_ty @ Y @ Ys)) => (?[Z3 : val, Zs2 : list_val]: ((Xs = (cons_val @ Z3 @ Zs2)) & (((F @ Z3) = Y) & ((map_val_option_ty @ F @ Zs2) = Ys)))))))). % map_eq_Cons_D
thf(fact_147_map__eq__Cons__D, axiom,
    ((![F : ty > option_ty, Xs : list_ty, Y : option_ty, Ys : list_option_ty]: (((map_ty_option_ty @ F @ Xs) = (cons_option_ty @ Y @ Ys)) => (?[Z3 : ty, Zs2 : list_ty]: ((Xs = (cons_ty @ Z3 @ Zs2)) & (((F @ Z3) = Y) & ((map_ty_option_ty @ F @ Zs2) = Ys)))))))). % map_eq_Cons_D
thf(fact_148_map__eq__Cons__D, axiom,
    ((![F : ty > val, Xs : list_ty, Y : val, Ys : list_val]: (((map_ty_val @ F @ Xs) = (cons_val @ Y @ Ys)) => (?[Z3 : ty, Zs2 : list_ty]: ((Xs = (cons_ty @ Z3 @ Zs2)) & (((F @ Z3) = Y) & ((map_ty_val @ F @ Zs2) = Ys)))))))). % map_eq_Cons_D
thf(fact_149_map__eq__Cons__D, axiom,
    ((![F : ty > list_char, Xs : list_ty, Y : list_char, Ys : list_list_char]: (((map_ty_list_char @ F @ Xs) = (cons_list_char @ Y @ Ys)) => (?[Z3 : ty, Zs2 : list_ty]: ((Xs = (cons_ty @ Z3 @ Zs2)) & (((F @ Z3) = Y) & ((map_ty_list_char @ F @ Zs2) = Ys)))))))). % map_eq_Cons_D
thf(fact_150_map__eq__Cons__D, axiom,
    ((![F : val > exp_list_char, Xs : list_val, Y : exp_list_char, Ys : list_exp_list_char]: (((map_va1515327237t_char @ F @ Xs) = (cons_exp_list_char @ Y @ Ys)) => (?[Z3 : val, Zs2 : list_val]: ((Xs = (cons_val @ Z3 @ Zs2)) & (((F @ Z3) = Y) & ((map_va1515327237t_char @ F @ Zs2) = Ys)))))))). % map_eq_Cons_D
thf(fact_151_map__eq__Cons__D, axiom,
    ((![F : exp_list_char > exp_list_char, Xs : list_exp_list_char, Y : exp_list_char, Ys : list_exp_list_char]: (((map_ex886010884t_char @ F @ Xs) = (cons_exp_list_char @ Y @ Ys)) => (?[Z3 : exp_list_char, Zs2 : list_exp_list_char]: ((Xs = (cons_exp_list_char @ Z3 @ Zs2)) & (((F @ Z3) = Y) & ((map_ex886010884t_char @ F @ Zs2) = Ys)))))))). % map_eq_Cons_D
thf(fact_152_map__eq__Cons__D, axiom,
    ((![F : ty > exp_list_char, Xs : list_ty, Y : exp_list_char, Ys : list_exp_list_char]: (((map_ty_exp_list_char @ F @ Xs) = (cons_exp_list_char @ Y @ Ys)) => (?[Z3 : ty, Zs2 : list_ty]: ((Xs = (cons_ty @ Z3 @ Zs2)) & (((F @ Z3) = Y) & ((map_ty_exp_list_char @ F @ Zs2) = Ys)))))))). % map_eq_Cons_D
thf(fact_153_map__eq__Cons__D, axiom,
    ((![F : exp_list_char > ty, Xs : list_exp_list_char, Y : ty, Ys : list_ty]: (((map_exp_list_char_ty @ F @ Xs) = (cons_ty @ Y @ Ys)) => (?[Z3 : exp_list_char, Zs2 : list_exp_list_char]: ((Xs = (cons_exp_list_char @ Z3 @ Zs2)) & (((F @ Z3) = Y) & ((map_exp_list_char_ty @ F @ Zs2) = Ys)))))))). % map_eq_Cons_D
thf(fact_154_map__eq__Cons__D, axiom,
    ((![F : ty > ty, Xs : list_ty, Y : ty, Ys : list_ty]: (((map_ty_ty @ F @ Xs) = (cons_ty @ Y @ Ys)) => (?[Z3 : ty, Zs2 : list_ty]: ((Xs = (cons_ty @ Z3 @ Zs2)) & (((F @ Z3) = Y) & ((map_ty_ty @ F @ Zs2) = Ys)))))))). % map_eq_Cons_D
thf(fact_155_map__eq__Cons__conv, axiom,
    ((![F : val > option_ty, Xs : list_val, Y : option_ty, Ys : list_option_ty]: (((map_val_option_ty @ F @ Xs) = (cons_option_ty @ Y @ Ys)) = (?[Z2 : val]: (?[Zs : list_val]: (((Xs = (cons_val @ Z2 @ Zs))) & (((((F @ Z2) = Y)) & (((map_val_option_ty @ F @ Zs) = Ys))))))))))). % map_eq_Cons_conv
thf(fact_156_map__eq__Cons__conv, axiom,
    ((![F : ty > option_ty, Xs : list_ty, Y : option_ty, Ys : list_option_ty]: (((map_ty_option_ty @ F @ Xs) = (cons_option_ty @ Y @ Ys)) = (?[Z2 : ty]: (?[Zs : list_ty]: (((Xs = (cons_ty @ Z2 @ Zs))) & (((((F @ Z2) = Y)) & (((map_ty_option_ty @ F @ Zs) = Ys))))))))))). % map_eq_Cons_conv
thf(fact_157_map__eq__Cons__conv, axiom,
    ((![F : ty > val, Xs : list_ty, Y : val, Ys : list_val]: (((map_ty_val @ F @ Xs) = (cons_val @ Y @ Ys)) = (?[Z2 : ty]: (?[Zs : list_ty]: (((Xs = (cons_ty @ Z2 @ Zs))) & (((((F @ Z2) = Y)) & (((map_ty_val @ F @ Zs) = Ys))))))))))). % map_eq_Cons_conv
thf(fact_158_map__eq__Cons__conv, axiom,
    ((![F : ty > list_char, Xs : list_ty, Y : list_char, Ys : list_list_char]: (((map_ty_list_char @ F @ Xs) = (cons_list_char @ Y @ Ys)) = (?[Z2 : ty]: (?[Zs : list_ty]: (((Xs = (cons_ty @ Z2 @ Zs))) & (((((F @ Z2) = Y)) & (((map_ty_list_char @ F @ Zs) = Ys))))))))))). % map_eq_Cons_conv
thf(fact_159_map__eq__Cons__conv, axiom,
    ((![F : val > exp_list_char, Xs : list_val, Y : exp_list_char, Ys : list_exp_list_char]: (((map_va1515327237t_char @ F @ Xs) = (cons_exp_list_char @ Y @ Ys)) = (?[Z2 : val]: (?[Zs : list_val]: (((Xs = (cons_val @ Z2 @ Zs))) & (((((F @ Z2) = Y)) & (((map_va1515327237t_char @ F @ Zs) = Ys))))))))))). % map_eq_Cons_conv
thf(fact_160_map__eq__Cons__conv, axiom,
    ((![F : exp_list_char > exp_list_char, Xs : list_exp_list_char, Y : exp_list_char, Ys : list_exp_list_char]: (((map_ex886010884t_char @ F @ Xs) = (cons_exp_list_char @ Y @ Ys)) = (?[Z2 : exp_list_char]: (?[Zs : list_exp_list_char]: (((Xs = (cons_exp_list_char @ Z2 @ Zs))) & (((((F @ Z2) = Y)) & (((map_ex886010884t_char @ F @ Zs) = Ys))))))))))). % map_eq_Cons_conv
thf(fact_161_map__eq__Cons__conv, axiom,
    ((![F : ty > exp_list_char, Xs : list_ty, Y : exp_list_char, Ys : list_exp_list_char]: (((map_ty_exp_list_char @ F @ Xs) = (cons_exp_list_char @ Y @ Ys)) = (?[Z2 : ty]: (?[Zs : list_ty]: (((Xs = (cons_ty @ Z2 @ Zs))) & (((((F @ Z2) = Y)) & (((map_ty_exp_list_char @ F @ Zs) = Ys))))))))))). % map_eq_Cons_conv
thf(fact_162_map__eq__Cons__conv, axiom,
    ((![F : exp_list_char > ty, Xs : list_exp_list_char, Y : ty, Ys : list_ty]: (((map_exp_list_char_ty @ F @ Xs) = (cons_ty @ Y @ Ys)) = (?[Z2 : exp_list_char]: (?[Zs : list_exp_list_char]: (((Xs = (cons_exp_list_char @ Z2 @ Zs))) & (((((F @ Z2) = Y)) & (((map_exp_list_char_ty @ F @ Zs) = Ys))))))))))). % map_eq_Cons_conv
thf(fact_163_map__eq__Cons__conv, axiom,
    ((![F : ty > ty, Xs : list_ty, Y : ty, Ys : list_ty]: (((map_ty_ty @ F @ Xs) = (cons_ty @ Y @ Ys)) = (?[Z2 : ty]: (?[Zs : list_ty]: (((Xs = (cons_ty @ Z2 @ Zs))) & (((((F @ Z2) = Y)) & (((map_ty_ty @ F @ Zs) = Ys))))))))))). % map_eq_Cons_conv
thf(fact_164_list_Orel__inject_I2_J, axiom,
    ((![R2 : exp_list_char > exp_list_char > $o, X21 : exp_list_char, X22 : list_exp_list_char, Y21 : exp_list_char, Y22 : list_exp_list_char]: ((list_a1702871623t_char @ R2 @ (cons_exp_list_char @ X21 @ X22) @ (cons_exp_list_char @ Y21 @ Y22)) = (((R2 @ X21 @ Y21)) & ((list_a1702871623t_char @ R2 @ X22 @ Y22))))))). % list.rel_inject(2)
thf(fact_165_list_Orel__inject_I2_J, axiom,
    ((![R2 : exp_list_char > ty > $o, X21 : exp_list_char, X22 : list_exp_list_char, Y21 : ty, Y22 : list_ty]: ((list_a295513531har_ty @ R2 @ (cons_exp_list_char @ X21 @ X22) @ (cons_ty @ Y21 @ Y22)) = (((R2 @ X21 @ Y21)) & ((list_a295513531har_ty @ R2 @ X22 @ Y22))))))). % list.rel_inject(2)
thf(fact_166_list_Orel__inject_I2_J, axiom,
    ((![R2 : ty > exp_list_char > $o, X21 : ty, X22 : list_ty, Y21 : exp_list_char, Y22 : list_exp_list_char]: ((list_a212154379t_char @ R2 @ (cons_ty @ X21 @ X22) @ (cons_exp_list_char @ Y21 @ Y22)) = (((R2 @ X21 @ Y21)) & ((list_a212154379t_char @ R2 @ X22 @ Y22))))))). % list.rel_inject(2)
thf(fact_167_list_Orel__inject_I2_J, axiom,
    ((![R2 : ty > ty > $o, X21 : ty, X22 : list_ty, Y21 : ty, Y22 : list_ty]: ((list_all2_ty_ty @ R2 @ (cons_ty @ X21 @ X22) @ (cons_ty @ Y21 @ Y22)) = (((R2 @ X21 @ Y21)) & ((list_all2_ty_ty @ R2 @ X22 @ Y22))))))). % list.rel_inject(2)
thf(fact_168_list_Orel__intros_I2_J, axiom,
    ((![R2 : exp_list_char > exp_list_char > $o, X21 : exp_list_char, Y21 : exp_list_char, X22 : list_exp_list_char, Y22 : list_exp_list_char]: ((R2 @ X21 @ Y21) => ((list_a1702871623t_char @ R2 @ X22 @ Y22) => (list_a1702871623t_char @ R2 @ (cons_exp_list_char @ X21 @ X22) @ (cons_exp_list_char @ Y21 @ Y22))))))). % list.rel_intros(2)
thf(fact_169_list_Orel__intros_I2_J, axiom,
    ((![R2 : exp_list_char > ty > $o, X21 : exp_list_char, Y21 : ty, X22 : list_exp_list_char, Y22 : list_ty]: ((R2 @ X21 @ Y21) => ((list_a295513531har_ty @ R2 @ X22 @ Y22) => (list_a295513531har_ty @ R2 @ (cons_exp_list_char @ X21 @ X22) @ (cons_ty @ Y21 @ Y22))))))). % list.rel_intros(2)
thf(fact_170_list_Orel__intros_I2_J, axiom,
    ((![R2 : ty > exp_list_char > $o, X21 : ty, Y21 : exp_list_char, X22 : list_ty, Y22 : list_exp_list_char]: ((R2 @ X21 @ Y21) => ((list_a212154379t_char @ R2 @ X22 @ Y22) => (list_a212154379t_char @ R2 @ (cons_ty @ X21 @ X22) @ (cons_exp_list_char @ Y21 @ Y22))))))). % list.rel_intros(2)
thf(fact_171_list_Orel__intros_I2_J, axiom,
    ((![R2 : ty > ty > $o, X21 : ty, Y21 : ty, X22 : list_ty, Y22 : list_ty]: ((R2 @ X21 @ Y21) => ((list_all2_ty_ty @ R2 @ X22 @ Y22) => (list_all2_ty_ty @ R2 @ (cons_ty @ X21 @ X22) @ (cons_ty @ Y21 @ Y22))))))). % list.rel_intros(2)
thf(fact_172_list__all2__Cons, axiom,
    ((![P : exp_list_char > exp_list_char > $o, X : exp_list_char, Xs : list_exp_list_char, Y : exp_list_char, Ys : list_exp_list_char]: ((list_a1702871623t_char @ P @ (cons_exp_list_char @ X @ Xs) @ (cons_exp_list_char @ Y @ Ys)) = (((P @ X @ Y)) & ((list_a1702871623t_char @ P @ Xs @ Ys))))))). % list_all2_Cons
thf(fact_173_list__all2__Cons, axiom,
    ((![P : exp_list_char > ty > $o, X : exp_list_char, Xs : list_exp_list_char, Y : ty, Ys : list_ty]: ((list_a295513531har_ty @ P @ (cons_exp_list_char @ X @ Xs) @ (cons_ty @ Y @ Ys)) = (((P @ X @ Y)) & ((list_a295513531har_ty @ P @ Xs @ Ys))))))). % list_all2_Cons
thf(fact_174_list__all2__Cons, axiom,
    ((![P : ty > exp_list_char > $o, X : ty, Xs : list_ty, Y : exp_list_char, Ys : list_exp_list_char]: ((list_a212154379t_char @ P @ (cons_ty @ X @ Xs) @ (cons_exp_list_char @ Y @ Ys)) = (((P @ X @ Y)) & ((list_a212154379t_char @ P @ Xs @ Ys))))))). % list_all2_Cons
thf(fact_175_list__all2__Cons, axiom,
    ((![P : ty > ty > $o, X : ty, Xs : list_ty, Y : ty, Ys : list_ty]: ((list_all2_ty_ty @ P @ (cons_ty @ X @ Xs) @ (cons_ty @ Y @ Ys)) = (((P @ X @ Y)) & ((list_all2_ty_ty @ P @ Xs @ Ys))))))). % list_all2_Cons
thf(fact_176_list__all2__Cons1, axiom,
    ((![P : exp_list_char > exp_list_char > $o, X : exp_list_char, Xs : list_exp_list_char, Ys : list_exp_list_char]: ((list_a1702871623t_char @ P @ (cons_exp_list_char @ X @ Xs) @ Ys) = (?[Z2 : exp_list_char]: (?[Zs : list_exp_list_char]: (((Ys = (cons_exp_list_char @ Z2 @ Zs))) & ((((P @ X @ Z2)) & ((list_a1702871623t_char @ P @ Xs @ Zs))))))))))). % list_all2_Cons1
thf(fact_177_list__all2__Cons1, axiom,
    ((![P : exp_list_char > ty > $o, X : exp_list_char, Xs : list_exp_list_char, Ys : list_ty]: ((list_a295513531har_ty @ P @ (cons_exp_list_char @ X @ Xs) @ Ys) = (?[Z2 : ty]: (?[Zs : list_ty]: (((Ys = (cons_ty @ Z2 @ Zs))) & ((((P @ X @ Z2)) & ((list_a295513531har_ty @ P @ Xs @ Zs))))))))))). % list_all2_Cons1
thf(fact_178_list__all2__Cons1, axiom,
    ((![P : ty > exp_list_char > $o, X : ty, Xs : list_ty, Ys : list_exp_list_char]: ((list_a212154379t_char @ P @ (cons_ty @ X @ Xs) @ Ys) = (?[Z2 : exp_list_char]: (?[Zs : list_exp_list_char]: (((Ys = (cons_exp_list_char @ Z2 @ Zs))) & ((((P @ X @ Z2)) & ((list_a212154379t_char @ P @ Xs @ Zs))))))))))). % list_all2_Cons1
thf(fact_179_list__all2__Cons1, axiom,
    ((![P : ty > ty > $o, X : ty, Xs : list_ty, Ys : list_ty]: ((list_all2_ty_ty @ P @ (cons_ty @ X @ Xs) @ Ys) = (?[Z2 : ty]: (?[Zs : list_ty]: (((Ys = (cons_ty @ Z2 @ Zs))) & ((((P @ X @ Z2)) & ((list_all2_ty_ty @ P @ Xs @ Zs))))))))))). % list_all2_Cons1
thf(fact_180_list__all2__Cons2, axiom,
    ((![P : exp_list_char > exp_list_char > $o, Xs : list_exp_list_char, Y : exp_list_char, Ys : list_exp_list_char]: ((list_a1702871623t_char @ P @ Xs @ (cons_exp_list_char @ Y @ Ys)) = (?[Z2 : exp_list_char]: (?[Zs : list_exp_list_char]: (((Xs = (cons_exp_list_char @ Z2 @ Zs))) & ((((P @ Z2 @ Y)) & ((list_a1702871623t_char @ P @ Zs @ Ys))))))))))). % list_all2_Cons2
thf(fact_181_list__all2__Cons2, axiom,
    ((![P : ty > exp_list_char > $o, Xs : list_ty, Y : exp_list_char, Ys : list_exp_list_char]: ((list_a212154379t_char @ P @ Xs @ (cons_exp_list_char @ Y @ Ys)) = (?[Z2 : ty]: (?[Zs : list_ty]: (((Xs = (cons_ty @ Z2 @ Zs))) & ((((P @ Z2 @ Y)) & ((list_a212154379t_char @ P @ Zs @ Ys))))))))))). % list_all2_Cons2
thf(fact_182_list__all2__Cons2, axiom,
    ((![P : exp_list_char > ty > $o, Xs : list_exp_list_char, Y : ty, Ys : list_ty]: ((list_a295513531har_ty @ P @ Xs @ (cons_ty @ Y @ Ys)) = (?[Z2 : exp_list_char]: (?[Zs : list_exp_list_char]: (((Xs = (cons_exp_list_char @ Z2 @ Zs))) & ((((P @ Z2 @ Y)) & ((list_a295513531har_ty @ P @ Zs @ Ys))))))))))). % list_all2_Cons2
thf(fact_183_list__all2__Cons2, axiom,
    ((![P : ty > ty > $o, Xs : list_ty, Y : ty, Ys : list_ty]: ((list_all2_ty_ty @ P @ Xs @ (cons_ty @ Y @ Ys)) = (?[Z2 : ty]: (?[Zs : list_ty]: (((Xs = (cons_ty @ Z2 @ Zs))) & ((((P @ Z2 @ Y)) & ((list_all2_ty_ty @ P @ Zs @ Ys))))))))))). % list_all2_Cons2
thf(fact_184_curryD, axiom,
    ((![F : produc81045532t_char > $o, A2 : list_list_char, B2 : produc111478616t_char]: ((produc309442300char_o @ F @ A2 @ B2) => (F @ (produc1808722894t_char @ A2 @ B2)))))). % curryD
thf(fact_185_curryD, axiom,
    ((![F : produc111478616t_char > $o, A2 : list_ty, B2 : produc1109669680t_char]: ((produc1133082708char_o @ F @ A2 @ B2) => (F @ (produc1806338192t_char @ A2 @ B2)))))). % curryD
thf(fact_186_curryD, axiom,
    ((![F : produc1109669680t_char > $o, A2 : list_val, B2 : exp_list_char]: ((produc1660716392char_o @ F @ A2 @ B2) => (F @ (produc823987298t_char @ A2 @ B2)))))). % curryD
thf(fact_187_curryD, axiom,
    ((![F : produc515445032on_val > $o, A2 : nat > option2118145160on_val, B2 : list_char > option_val]: ((produc761261956_val_o @ F @ A2 @ B2) => (F @ (produc52622304on_val @ A2 @ B2)))))). % curryD
thf(fact_188_curryE, axiom,
    ((![F : produc81045532t_char > $o, A2 : list_list_char, B2 : produc111478616t_char]: ((produc309442300char_o @ F @ A2 @ B2) => (F @ (produc1808722894t_char @ A2 @ B2)))))). % curryE
thf(fact_189_curryE, axiom,
    ((![F : produc111478616t_char > $o, A2 : list_ty, B2 : produc1109669680t_char]: ((produc1133082708char_o @ F @ A2 @ B2) => (F @ (produc1806338192t_char @ A2 @ B2)))))). % curryE
thf(fact_190_curryE, axiom,
    ((![F : produc1109669680t_char > $o, A2 : list_val, B2 : exp_list_char]: ((produc1660716392char_o @ F @ A2 @ B2) => (F @ (produc823987298t_char @ A2 @ B2)))))). % curryE
thf(fact_191_curryE, axiom,
    ((![F : produc515445032on_val > $o, A2 : nat > option2118145160on_val, B2 : list_char > option_val]: ((produc761261956_val_o @ F @ A2 @ B2) => (F @ (produc52622304on_val @ A2 @ B2)))))). % curryE
thf(fact_192_WTrtVal, axiom,
    ((![H : nat > option2118145160on_val, V : val, T : ty, P : list_P1234162913t_char, E3 : list_char > option_ty]: (((typeof_h @ H @ V) = (some_ty @ T)) => (wTrt @ P @ H @ E3 @ (val_list_char @ V) @ T))))). % WTrtVal
thf(fact_193_conf__def, axiom,
    ((conf_P93989998t_char = (^[P4 : list_P1234162913t_char]: (^[H3 : nat > option2118145160on_val]: (^[V2 : val]: (^[T3 : ty]: (?[T4 : ty]: ((((typeof_h @ H3 @ V2) = (some_ty @ T4))) & ((widen_917054840t_char @ P4 @ T4 @ T3))))))))))). % conf_def
thf(fact_194_exp_Oinject_I3_J, axiom,
    ((![X32 : val, Y32 : val]: (((val_list_char @ X32) = (val_list_char @ Y32)) = (X32 = Y32))))). % exp.inject(3)
thf(fact_195_Val, axiom,
    ((![P : list_P1234162913t_char, V : val, S2 : produc515445032on_val]: (eval @ P @ (val_list_char @ V) @ S2 @ (val_list_char @ V) @ S2)))). % Val
thf(fact_196_eval__cases_I2_J, axiom,
    ((![P : list_P1234162913t_char, V : val, S2 : produc515445032on_val, E2 : exp_list_char, S3 : produc515445032on_val]: ((eval @ P @ (val_list_char @ V) @ S2 @ E2 @ S3) => (~ (((E2 = (val_list_char @ V)) => (~ ((S3 = S2)))))))))). % eval_cases(2)
thf(fact_197_Cons__in__lex, axiom,
    ((![X : list_char, Xs : list_list_char, Y : list_char, Ys : list_list_char, R : set_Pr164112643t_char]: ((member725442668t_char @ (produc1181934459t_char @ (cons_list_char @ X @ Xs) @ (cons_list_char @ Y @ Ys)) @ (lex_list_char @ R)) = (((((member89690956t_char @ (produc1304532571t_char @ X @ Y) @ R)) & (((size_s2008079621t_char @ Xs) = (size_s2008079621t_char @ Ys))))) | ((((X = Y)) & ((member725442668t_char @ (produc1181934459t_char @ Xs @ Ys) @ (lex_list_char @ R)))))))))). % Cons_in_lex
thf(fact_198_Cons__in__lex, axiom,
    ((![X : ty, Xs : list_ty, Y : ty, Ys : list_ty, R : set_Pr1194734255_ty_ty]: ((member1942114840ist_ty @ (produc1089615911ist_ty @ (cons_ty @ X @ Xs) @ (cons_ty @ Y @ Ys)) @ (lex_ty @ R)) = (((((member2070851320_ty_ty @ (product_Pair_ty_ty @ X @ Y) @ R)) & (((size_size_list_ty @ Xs) = (size_size_list_ty @ Ys))))) | ((((X = Y)) & ((member1942114840ist_ty @ (produc1089615911ist_ty @ Xs @ Ys) @ (lex_ty @ R)))))))))). % Cons_in_lex
thf(fact_199_Cons__in__lex, axiom,
    ((![X : val, Xs : list_val, Y : val, Ys : list_val, R : set_Pr1870322241al_val]: ((member1382006826st_val @ (produc180957881st_val @ (cons_val @ X @ Xs) @ (cons_val @ Y @ Ys)) @ (lex_val @ R)) = (((((member1494223754al_val @ (product_Pair_val_val @ X @ Y) @ R)) & (((size_size_list_val @ Xs) = (size_size_list_val @ Ys))))) | ((((X = Y)) & ((member1382006826st_val @ (produc180957881st_val @ Xs @ Ys) @ (lex_val @ R)))))))))). % Cons_in_lex
thf(fact_200_Cons__in__lex, axiom,
    ((![X : exp_list_char, Xs : list_exp_list_char, Y : exp_list_char, Ys : list_exp_list_char, R : set_Pr224372167t_char]: ((member462435472t_char @ (produc1721801175t_char @ (cons_exp_list_char @ X @ Xs) @ (cons_exp_list_char @ Y @ Ys)) @ (lex_exp_list_char @ R)) = (((((member1699993616t_char @ (produc240508503t_char @ X @ Y) @ R)) & (((size_s329991613t_char @ Xs) = (size_s329991613t_char @ Ys))))) | ((((X = Y)) & ((member462435472t_char @ (produc1721801175t_char @ Xs @ Ys) @ (lex_exp_list_char @ R)))))))))). % Cons_in_lex
thf(fact_201_Cons__in__lex, axiom,
    ((![X : option_ty, Xs : list_option_ty, Y : option_ty, Ys : list_option_ty, R : set_Pr616941135ion_ty]: ((member237105848ion_ty @ (produc1071605959ion_ty @ (cons_option_ty @ X @ Xs) @ (cons_option_ty @ Y @ Ys)) @ (lex_option_ty @ R)) = (((((member704321176ion_ty @ (produc1618316455ion_ty @ X @ Y) @ R)) & (((size_s1569909163ion_ty @ Xs) = (size_s1569909163ion_ty @ Ys))))) | ((((X = Y)) & ((member237105848ion_ty @ (produc1071605959ion_ty @ Xs @ Ys) @ (lex_option_ty @ R)))))))))). % Cons_in_lex
thf(fact_202_WTrtCons, axiom,
    ((![P : list_P1234162913t_char, H : nat > option2118145160on_val, E3 : list_char > option_ty, E : exp_list_char, T : ty, Es : list_exp_list_char, Ts : list_ty]: ((wTrt @ P @ H @ E3 @ E @ T) => ((wTrts @ P @ H @ E3 @ Es @ Ts) => (wTrts @ P @ H @ E3 @ (cons_exp_list_char @ E @ Es) @ (cons_ty @ T @ Ts))))))). % WTrtCons
thf(fact_203_lexord__cons__cons, axiom,
    ((![A2 : exp_list_char, X : list_exp_list_char, B2 : exp_list_char, Y : list_exp_list_char, R : set_Pr224372167t_char]: ((member462435472t_char @ (produc1721801175t_char @ (cons_exp_list_char @ A2 @ X) @ (cons_exp_list_char @ B2 @ Y)) @ (lexord_exp_list_char @ R)) = (((member1699993616t_char @ (produc240508503t_char @ A2 @ B2) @ R)) | ((((A2 = B2)) & ((member462435472t_char @ (produc1721801175t_char @ X @ Y) @ (lexord_exp_list_char @ R)))))))))). % lexord_cons_cons
thf(fact_204_lexord__cons__cons, axiom,
    ((![A2 : ty, X : list_ty, B2 : ty, Y : list_ty, R : set_Pr1194734255_ty_ty]: ((member1942114840ist_ty @ (produc1089615911ist_ty @ (cons_ty @ A2 @ X) @ (cons_ty @ B2 @ Y)) @ (lexord_ty @ R)) = (((member2070851320_ty_ty @ (product_Pair_ty_ty @ A2 @ B2) @ R)) | ((((A2 = B2)) & ((member1942114840ist_ty @ (produc1089615911ist_ty @ X @ Y) @ (lexord_ty @ R)))))))))). % lexord_cons_cons
thf(fact_205_lexn__length, axiom,
    ((![Xs : list_list_char, Ys : list_list_char, R : set_Pr164112643t_char, N : nat]: ((member725442668t_char @ (produc1181934459t_char @ Xs @ Ys) @ (lexn_list_char @ R @ N)) => (((size_s2008079621t_char @ Xs) = N) & ((size_s2008079621t_char @ Ys) = N)))))). % lexn_length
thf(fact_206_lexn__length, axiom,
    ((![Xs : list_ty, Ys : list_ty, R : set_Pr1194734255_ty_ty, N : nat]: ((member1942114840ist_ty @ (produc1089615911ist_ty @ Xs @ Ys) @ (lexn_ty @ R @ N)) => (((size_size_list_ty @ Xs) = N) & ((size_size_list_ty @ Ys) = N)))))). % lexn_length
thf(fact_207_lexn__length, axiom,
    ((![Xs : list_val, Ys : list_val, R : set_Pr1870322241al_val, N : nat]: ((member1382006826st_val @ (produc180957881st_val @ Xs @ Ys) @ (lexn_val @ R @ N)) => (((size_size_list_val @ Xs) = N) & ((size_size_list_val @ Ys) = N)))))). % lexn_length
thf(fact_208_lexn__length, axiom,
    ((![Xs : list_exp_list_char, Ys : list_exp_list_char, R : set_Pr224372167t_char, N : nat]: ((member462435472t_char @ (produc1721801175t_char @ Xs @ Ys) @ (lexn_exp_list_char @ R @ N)) => (((size_s329991613t_char @ Xs) = N) & ((size_s329991613t_char @ Ys) = N)))))). % lexn_length
thf(fact_209_lexn__length, axiom,
    ((![Xs : list_option_ty, Ys : list_option_ty, R : set_Pr616941135ion_ty, N : nat]: ((member237105848ion_ty @ (produc1071605959ion_ty @ Xs @ Ys) @ (lexn_option_ty @ R @ N)) => (((size_s1569909163ion_ty @ Xs) = N) & ((size_s1569909163ion_ty @ Ys) = N)))))). % lexn_length
thf(fact_210_Var, axiom,
    ((![L : list_char > option_val, V3 : list_char, V : val, P : list_P1234162913t_char, H : nat > option2118145160on_val]: (((L @ V3) = (some_val @ V)) => (eval @ P @ (var_list_char @ V3) @ (produc52622304on_val @ H @ L) @ (val_list_char @ V) @ (produc52622304on_val @ H @ L)))))). % Var
thf(fact_211_exp_Oinject_I5_J, axiom,
    ((![X5 : list_char, Y5 : list_char]: (((var_list_char @ X5) = (var_list_char @ Y5)) = (X5 = Y5))))). % exp.inject(5)
thf(fact_212_exp_Odistinct_I57_J, axiom,
    ((![X32 : val, X5 : list_char]: (~ (((val_list_char @ X32) = (var_list_char @ X5))))))). % exp.distinct(57)
thf(fact_213_WTrtVar, axiom,
    ((![E3 : list_char > option_ty, V3 : list_char, T : ty, P : list_P1234162913t_char, H : nat > option2118145160on_val]: (((E3 @ V3) = (some_ty @ T)) => (wTrt @ P @ H @ E3 @ (var_list_char @ V3) @ T))))). % WTrtVar
thf(fact_214_lexord__lex, axiom,
    ((![X : list_list_char, Y : list_list_char, R : set_Pr164112643t_char]: ((member725442668t_char @ (produc1181934459t_char @ X @ Y) @ (lex_list_char @ R)) = (((member725442668t_char @ (produc1181934459t_char @ X @ Y) @ (lexord_list_char @ R))) & (((size_s2008079621t_char @ X) = (size_s2008079621t_char @ Y)))))))). % lexord_lex
thf(fact_215_lexord__lex, axiom,
    ((![X : list_ty, Y : list_ty, R : set_Pr1194734255_ty_ty]: ((member1942114840ist_ty @ (produc1089615911ist_ty @ X @ Y) @ (lex_ty @ R)) = (((member1942114840ist_ty @ (produc1089615911ist_ty @ X @ Y) @ (lexord_ty @ R))) & (((size_size_list_ty @ X) = (size_size_list_ty @ Y)))))))). % lexord_lex
thf(fact_216_lexord__lex, axiom,
    ((![X : list_val, Y : list_val, R : set_Pr1870322241al_val]: ((member1382006826st_val @ (produc180957881st_val @ X @ Y) @ (lex_val @ R)) = (((member1382006826st_val @ (produc180957881st_val @ X @ Y) @ (lexord_val @ R))) & (((size_size_list_val @ X) = (size_size_list_val @ Y)))))))). % lexord_lex
thf(fact_217_lexord__lex, axiom,
    ((![X : list_exp_list_char, Y : list_exp_list_char, R : set_Pr224372167t_char]: ((member462435472t_char @ (produc1721801175t_char @ X @ Y) @ (lex_exp_list_char @ R)) = (((member462435472t_char @ (produc1721801175t_char @ X @ Y) @ (lexord_exp_list_char @ R))) & (((size_s329991613t_char @ X) = (size_s329991613t_char @ Y)))))))). % lexord_lex
thf(fact_218_lexord__lex, axiom,
    ((![X : list_option_ty, Y : list_option_ty, R : set_Pr616941135ion_ty]: ((member237105848ion_ty @ (produc1071605959ion_ty @ X @ Y) @ (lex_option_ty @ R)) = (((member237105848ion_ty @ (produc1071605959ion_ty @ X @ Y) @ (lexord_option_ty @ R))) & (((size_s1569909163ion_ty @ X) = (size_s1569909163ion_ty @ Y)))))))). % lexord_lex
thf(fact_219_map__upds__Cons, axiom,
    ((![M : exp_list_char > option_exp_list_char, A2 : exp_list_char, As : list_exp_list_char, B2 : exp_list_char, Bs : list_exp_list_char]: ((map_up1544389430t_char @ M @ (cons_exp_list_char @ A2 @ As) @ (cons_exp_list_char @ B2 @ Bs)) = (map_up1544389430t_char @ (fun_up33439619t_char @ M @ A2 @ (some_exp_list_char @ B2)) @ As @ Bs))))). % map_upds_Cons
thf(fact_220_map__upds__Cons, axiom,
    ((![M : ty > option_exp_list_char, A2 : ty, As : list_ty, B2 : exp_list_char, Bs : list_exp_list_char]: ((map_up1302469852t_char @ M @ (cons_ty @ A2 @ As) @ (cons_exp_list_char @ B2 @ Bs)) = (map_up1302469852t_char @ (fun_up472491227t_char @ M @ A2 @ (some_exp_list_char @ B2)) @ As @ Bs))))). % map_upds_Cons
thf(fact_221_map__upds__Cons, axiom,
    ((![M : list_char > option_ty, A2 : list_char, As : list_list_char, B2 : ty, Bs : list_ty]: ((map_up703499792har_ty @ M @ (cons_list_char @ A2 @ As) @ (cons_ty @ B2 @ Bs)) = (map_up703499792har_ty @ (fun_up9191ion_ty @ M @ A2 @ (some_ty @ B2)) @ As @ Bs))))). % map_upds_Cons
thf(fact_222_map__upds__Cons, axiom,
    ((![M : exp_list_char > option_ty, A2 : exp_list_char, As : list_exp_list_char, B2 : ty, Bs : list_ty]: ((map_up1385829004har_ty @ M @ (cons_exp_list_char @ A2 @ As) @ (cons_ty @ B2 @ Bs)) = (map_up1385829004har_ty @ (fun_up902355221ion_ty @ M @ A2 @ (some_ty @ B2)) @ As @ Bs))))). % map_upds_Cons
thf(fact_223_map__upds__Cons, axiom,
    ((![M : ty > option_ty, A2 : ty, As : list_ty, B2 : ty, Bs : list_ty]: ((map_upds_ty_ty @ M @ (cons_ty @ A2 @ As) @ (cons_ty @ B2 @ Bs)) = (map_upds_ty_ty @ (fun_upd_ty_option_ty @ M @ A2 @ (some_ty @ B2)) @ As @ Bs))))). % map_upds_Cons
thf(fact_224_map__upds__Cons, axiom,
    ((![M : list_char > option_val, A2 : list_char, As : list_list_char, B2 : val, Bs : list_val]: ((map_up576607321ar_val @ M @ (cons_list_char @ A2 @ As) @ (cons_val @ B2 @ Bs)) = (map_up576607321ar_val @ (fun_up1252458416on_val @ M @ A2 @ (some_val @ B2)) @ As @ Bs))))). % map_upds_Cons
thf(fact_225_map__upds__Cons, axiom,
    ((![M : exp_list_char > option_val, A2 : exp_list_char, As : list_exp_list_char, B2 : val, Bs : list_val]: ((map_up1654086357ar_val @ M @ (cons_exp_list_char @ A2 @ As) @ (cons_val @ B2 @ Bs)) = (map_up1654086357ar_val @ (fun_up1410072030on_val @ M @ A2 @ (some_val @ B2)) @ As @ Bs))))). % map_upds_Cons
thf(fact_226_map__upds__Cons, axiom,
    ((![M : ty > option_val, A2 : ty, As : list_ty, B2 : val, Bs : list_val]: ((map_upds_ty_val @ M @ (cons_ty @ A2 @ As) @ (cons_val @ B2 @ Bs)) = (map_upds_ty_val @ (fun_up399813254on_val @ M @ A2 @ (some_val @ B2)) @ As @ Bs))))). % map_upds_Cons
thf(fact_227_lexord__Nil__left, axiom,
    ((![Y : list_exp_list_char, R : set_Pr224372167t_char]: ((member462435472t_char @ (produc1721801175t_char @ nil_exp_list_char @ Y) @ (lexord_exp_list_char @ R)) = (?[A4 : exp_list_char]: (?[X4 : list_exp_list_char]: (Y = (cons_exp_list_char @ A4 @ X4)))))))). % lexord_Nil_left
thf(fact_228_lexord__Nil__left, axiom,
    ((![Y : list_ty, R : set_Pr1194734255_ty_ty]: ((member1942114840ist_ty @ (produc1089615911ist_ty @ nil_ty @ Y) @ (lexord_ty @ R)) = (?[A4 : ty]: (?[X4 : list_ty]: (Y = (cons_ty @ A4 @ X4)))))))). % lexord_Nil_left
thf(fact_229_Cons__listrel1__Cons, axiom,
    ((![X : exp_list_char, Xs : list_exp_list_char, Y : exp_list_char, Ys : list_exp_list_char, R : set_Pr224372167t_char]: ((member462435472t_char @ (produc1721801175t_char @ (cons_exp_list_char @ X @ Xs) @ (cons_exp_list_char @ Y @ Ys)) @ (listre237302058t_char @ R)) = (((((member1699993616t_char @ (produc240508503t_char @ X @ Y) @ R)) & ((Xs = Ys)))) | ((((X = Y)) & ((member462435472t_char @ (produc1721801175t_char @ Xs @ Ys) @ (listre237302058t_char @ R)))))))))). % Cons_listrel1_Cons
thf(fact_230_Cons__listrel1__Cons, axiom,
    ((![X : ty, Xs : list_ty, Y : ty, Ys : list_ty, R : set_Pr1194734255_ty_ty]: ((member1942114840ist_ty @ (produc1089615911ist_ty @ (cons_ty @ X @ Xs) @ (cons_ty @ Y @ Ys)) @ (listrel1_ty @ R)) = (((((member2070851320_ty_ty @ (product_Pair_ty_ty @ X @ Y) @ R)) & ((Xs = Ys)))) | ((((X = Y)) & ((member1942114840ist_ty @ (produc1089615911ist_ty @ Xs @ Ys) @ (listrel1_ty @ R)))))))))). % Cons_listrel1_Cons
thf(fact_231_eval__evals_OCons, axiom,
    ((![P : list_P1234162913t_char, E : exp_list_char, S_0 : produc515445032on_val, V : val, S_1 : produc515445032on_val, Es : list_exp_list_char, Es2 : list_exp_list_char, S_2 : produc515445032on_val]: ((eval @ P @ E @ S_0 @ (val_list_char @ V) @ S_1) => ((evals @ P @ Es @ S_1 @ Es2 @ S_2) => (evals @ P @ (cons_exp_list_char @ E @ Es) @ S_0 @ (cons_exp_list_char @ (val_list_char @ V) @ Es2) @ S_2)))))). % eval_evals.Cons
thf(fact_232_list_Omap__disc__iff, axiom,
    ((![F : exp_list_char > exp_list_char, A2 : list_exp_list_char]: (((map_ex886010884t_char @ F @ A2) = nil_exp_list_char) = (A2 = nil_exp_list_char))))). % list.map_disc_iff
thf(fact_233_list_Omap__disc__iff, axiom,
    ((![F : val > option_ty, A2 : list_val]: (((map_val_option_ty @ F @ A2) = nil_option_ty) = (A2 = nil_val))))). % list.map_disc_iff
thf(fact_234_list_Omap__disc__iff, axiom,
    ((![F : ty > option_ty, A2 : list_ty]: (((map_ty_option_ty @ F @ A2) = nil_option_ty) = (A2 = nil_ty))))). % list.map_disc_iff
thf(fact_235_list_Omap__disc__iff, axiom,
    ((![F : val > exp_list_char, A2 : list_val]: (((map_va1515327237t_char @ F @ A2) = nil_exp_list_char) = (A2 = nil_val))))). % list.map_disc_iff
thf(fact_236_list_Omap__disc__iff, axiom,
    ((![F : exp_list_char > ty, A2 : list_exp_list_char]: (((map_exp_list_char_ty @ F @ A2) = nil_ty) = (A2 = nil_exp_list_char))))). % list.map_disc_iff
thf(fact_237_list_Omap__disc__iff, axiom,
    ((![F : ty > val, A2 : list_ty]: (((map_ty_val @ F @ A2) = nil_val) = (A2 = nil_ty))))). % list.map_disc_iff
thf(fact_238_list_Omap__disc__iff, axiom,
    ((![F : ty > list_char, A2 : list_ty]: (((map_ty_list_char @ F @ A2) = nil_list_char) = (A2 = nil_ty))))). % list.map_disc_iff
thf(fact_239_list_Omap__disc__iff, axiom,
    ((![F : ty > exp_list_char, A2 : list_ty]: (((map_ty_exp_list_char @ F @ A2) = nil_exp_list_char) = (A2 = nil_ty))))). % list.map_disc_iff
thf(fact_240_list_Omap__disc__iff, axiom,
    ((![F : ty > ty, A2 : list_ty]: (((map_ty_ty @ F @ A2) = nil_ty) = (A2 = nil_ty))))). % list.map_disc_iff
thf(fact_241_map__is__Nil__conv, axiom,
    ((![F : ty > val, Xs : list_ty]: (((map_ty_val @ F @ Xs) = nil_val) = (Xs = nil_ty))))). % map_is_Nil_conv
thf(fact_242_map__is__Nil__conv, axiom,
    ((![F : ty > list_char, Xs : list_ty]: (((map_ty_list_char @ F @ Xs) = nil_list_char) = (Xs = nil_ty))))). % map_is_Nil_conv
thf(fact_243_map__is__Nil__conv, axiom,
    ((![F : ty > exp_list_char, Xs : list_ty]: (((map_ty_exp_list_char @ F @ Xs) = nil_exp_list_char) = (Xs = nil_ty))))). % map_is_Nil_conv
thf(fact_244_map__is__Nil__conv, axiom,
    ((![F : ty > ty, Xs : list_ty]: (((map_ty_ty @ F @ Xs) = nil_ty) = (Xs = nil_ty))))). % map_is_Nil_conv
thf(fact_245_evals__cases_I1_J, axiom,
    ((![P : list_P1234162913t_char, S2 : produc515445032on_val, E2 : list_exp_list_char, S3 : produc515445032on_val]: ((evals @ P @ nil_exp_list_char @ S2 @ E2 @ S3) => (~ (((E2 = nil_exp_list_char) => (~ ((S3 = S2)))))))))). % evals_cases(1)
thf(fact_246_eval__evals_ONil, axiom,
    ((![P : list_P1234162913t_char, S2 : produc515445032on_val]: (evals @ P @ nil_exp_list_char @ S2 @ nil_exp_list_char @ S2)))). % eval_evals.Nil
thf(fact_247_WTrtNil, axiom,
    ((![P : list_P1234162913t_char, H : nat > option2118145160on_val, E3 : list_char > option_ty]: (wTrts @ P @ H @ E3 @ nil_exp_list_char @ nil_ty)))). % WTrtNil

% Conjectures (3)
thf(conj_0, hypothesis,
    (((size_s2008079621t_char @ vs) = (size_size_list_ty @ ts)))).
thf(conj_1, hypothesis,
    (((size_size_list_val @ vs2) = (size_size_list_ty @ ts)))).
thf(conj_2, conjecture,
    (((wTrt @ p @ h @ e @ (blocks @ (produc1808722894t_char @ vs @ (produc1806338192t_char @ ts @ (produc823987298t_char @ vs2 @ e2)))) @ t) = (((wTrt @ p @ h @ (map_up703499792har_ty @ e @ vs @ ts) @ e2 @ t)) & ((?[Ts4 : list_ty]: ((((map_val_option_ty @ (typeof_h @ h) @ vs2) = (map_ty_option_ty @ some_ty @ Ts4))) & ((list_all2_ty_ty @ (widen_917054840t_char @ p) @ Ts4 @ ts))))))))).
