% 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_227__5336650_1 ) ; }
% This file was generated by Isabelle (most likely Sledgehammer)
% 2020-12-16 14:20:05.320

% Could-be-implicit typings (45)
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_Mt__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_J_Mt__List__Olist_It__Product____Type__Oprod_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_Mt__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_J_J_J, type,
    set_Pr601606919on_val : $tType).
thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_Mt__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_J_Mt__List__Olist_It__Product____Type__Oprod_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_Mt__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_J_J, type,
    produc1433960743on_val : $tType).
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_Mt__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_Mt__Product____Type__Oprod_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_Mt__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_J_J, type,
    set_Pr1189492743on_val : $tType).
thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_Mt__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_Mt__Product____Type__Oprod_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_Mt__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_J, type,
    produc1172664615on_val : $tType).
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__List__Olist_It__Product____Type__Oprod_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_Mt__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_J, type,
    list_P1873028426on_val : $tType).
thf(ty_n_t__Product____Type__Oprod_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_Mt__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,
    produc1097884484on_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__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, type,
    produc1259892823t_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__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, type,
    produc1451990293t_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__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, type,
    produc266837688on_val : $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__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, type,
    produc1490933927t_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__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__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__List__Olist_It__List__Olist_It__String__Ochar_J_J_Mt__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J, type,
    produc1294284815t_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__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__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__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 (122)
thf(sy_c_BigStep_Ofinal_001t__List__Olist_It__String__Ochar_J, type,
    final_list_char : exp_list_char > $o).
thf(sy_c_Conform_Ohconf_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,
    hconf_1244167010t_char : list_P1234162913t_char > (nat > option2118145160on_val) > $o).
thf(sy_c_Conform_Olconf_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,
    lconf_485928294t_char : list_P1234162913t_char > (nat > option2118145160on_val) > (list_char > option_val) > (list_char > option_ty) > $o).
thf(sy_c_Expr_Oexp_OCall_001t__List__Olist_It__String__Ochar_J, type,
    call_list_char : exp_list_char > list_char > list_exp_list_char > exp_list_char).
thf(sy_c_Expr_Oexp_OFAcc_001t__List__Olist_It__String__Ochar_J, type,
    fAcc_list_char : exp_list_char > list_char > list_char > exp_list_char).
thf(sy_c_Expr_Oexp_OVal_001t__List__Olist_It__String__Ochar_J, type,
    val_list_char : val > exp_list_char).
thf(sy_c_JWellForm_Owf__J__mdecl, type,
    wf_J_mdecl : list_P1234162913t_char > list_char > produc1259892823t_char > $o).
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__Product____Type__Oprod_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_Mt__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,
    lex_Pr1119043758on_val : set_Pr1189492743on_val > set_Pr601606919on_val).
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_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__Product____Type__Oprod_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_Mt__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,
    cons_P766091258on_val : produc1097884484on_val > list_P1873028426on_val > list_P1873028426on_val).
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_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__List__Olist_It__String__Ochar_J, type,
    list_a2051666507t_char : (list_char > list_char > $o) > list_list_char > list_list_char > $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__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__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__Value__Oval, type,
    map_ex815323271ar_val : (exp_list_char > val) > list_exp_list_char > list_val).
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__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_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_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__Product____Type__Oprod_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_Mt__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_J, type,
    size_s2061184438on_val : list_P1873028426on_val > 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_ONone_001t__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, type,
    none_P1535574167on_val : option2118145160on_val).
thf(sy_c_Option_Ooption_ONone_001t__Type__Oty, type,
    none_ty : option_ty).
thf(sy_c_Option_Ooption_ONone_001t__Value__Oval, type,
    none_val : option_val).
thf(sy_c_Option_Ooption_OSome_001t__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, type,
    some_P1299442195on_val : produc266837688on_val > option2118145160on_val).
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__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_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,
    produc2023458740on_val : exp_list_char > produc515445032on_val > produc1097884484on_val).
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__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J, type,
    produc713467969t_char : list_list_char > exp_list_char > produc1294284815t_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__Product____Type__Oprod_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_Mt__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_J_001t__List__Olist_It__Product____Type__Oprod_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_Mt__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_J, type,
    produc2055752471on_val : list_P1873028426on_val > list_P1873028426on_val > produc1433960743on_val).
thf(sy_c_Product__Type_OPair_001t__List__Olist_It__String__Ochar_J_001_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, type,
    produc904988266on_val : list_char > (produc1257910179t_char > option_val) > produc266837688on_val).
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__String__Ochar_J_001t__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, type,
    produc1238538255t_char : list_char > produc1451990293t_char > produc1259892823t_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__Type__Oty_J_001t__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, type,
    produc1730359111t_char : list_ty > produc1490933927t_char > produc1451990293t_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__Product____Type__Oprod_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_Mt__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_001t__Product____Type__Oprod_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_Mt__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,
    produc1069526295on_val : produc1097884484on_val > produc1097884484on_val > produc1172664615on_val).
thf(sy_c_Product__Type_OPair_001t__Type__Oty_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,
    produc248075743t_char : ty > produc1294284815t_char > produc1490933927t_char).
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_Set_OCollect_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_Mt__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_Mt__Product____Type__Oprod_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_Mt__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_J, type,
    collec2055896722on_val : (produc1172664615on_val > $o) > set_Pr1189492743on_val).
thf(sy_c_SmallStep_Oblocks, type,
    blocks : produc81045532t_char > exp_list_char).
thf(sy_c_SmallStep_Ored, type,
    red : list_P1234162913t_char > set_Pr1189492743on_val).
thf(sy_c_SmallStep_Oredp, type,
    redp : list_P1234162913t_char > exp_list_char > produc515445032on_val > exp_list_char > produc515445032on_val > $o).
thf(sy_c_State_Ohp, type,
    hp : produc515445032on_val > nat > option2118145160on_val).
thf(sy_c_Transitive__Closure_Ortrancl_001t__Product____Type__Oprod_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_Mt__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,
    transi111096263on_val : set_Pr1189492743on_val > set_Pr1189492743on_val).
thf(sy_c_TypeRel_OMethod_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,
    method297381284t_char : list_P1234162913t_char > list_char > list_char > list_ty > ty > produc1294284815t_char > list_char > $o).
thf(sy_c_TypeRel_Ohas__method_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,
    has_me170134744t_char : list_P1234162913t_char > list_char > list_char > $o).
thf(sy_c_TypeRel_Omethod_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,
    method667690372t_char : list_P1234162913t_char > list_char > list_char > produc1259892823t_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_TypeSafe__Mirabelle__osrwgqrerx_Osconf, type,
    typeSa1777264139_sconf : list_P1234162913t_char > (list_char > option_ty) > produc515445032on_val > $o).
thf(sy_c_Type_Othis, type,
    this : list_char).
thf(sy_c_Type_Oty_OClass, type,
    class : list_char > ty).
thf(sy_c_Value_Oval_OAddr, type,
    addr : nat > val).
thf(sy_c_WellForm_Owf__mdecl_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,
    wf_mde297024346t_char : (list_P1234162913t_char > list_char > produc1259892823t_char > $o) > list_P1234162913t_char > list_char > produc1259892823t_char > $o).
thf(sy_c_WellForm_Owf__prog_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,
    wf_pro1229751607t_char : (list_P1234162913t_char > list_char > produc1259892823t_char > $o) > list_P1234162913t_char > $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_WellType_OWT, type,
    wt : list_P1234162913t_char > (list_char > option_ty) > exp_list_char > ty > $o).
thf(sy_c_WellType_OWTs, type,
    wTs : list_P1234162913t_char > (list_char > option_ty) > list_exp_list_char > list_ty > $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__Product____Type__Oprod_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_Mt__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_J_Mt__List__Olist_It__Product____Type__Oprod_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_Mt__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_J_J, type,
    member321179984on_val : produc1433960743on_val > set_Pr601606919on_val > $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__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__Product____Type__Oprod_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_Mt__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_Mt__Product____Type__Oprod_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_Mt__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_J, type,
    member354538064on_val : produc1172664615on_val > set_Pr1189492743on_val > $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_C____, type,
    c : list_char).
thf(sy_v_D____, type,
    d : list_char).
thf(sy_v_E____, type,
    e : list_char > option_ty).
thf(sy_v_M____, type,
    m : list_char).
thf(sy_v_P, type,
    p : list_P1234162913t_char).
thf(sy_v_T_H_H____, type,
    t : ty).
thf(sy_v_T_H____, type,
    t2 : ty).
thf(sy_v_T____, type,
    t3 : ty).
thf(sy_v_Ts_H____, type,
    ts : list_ty).
thf(sy_v_Ts____, type,
    ts2 : list_ty).
thf(sy_v_a____, type,
    a : nat).
thf(sy_v_body____, type,
    body : exp_list_char).
thf(sy_v_fs____, type,
    fs : produc1257910179t_char > option_val).
thf(sy_v_ha____, type,
    ha : nat > option2118145160on_val).
thf(sy_v_la____, type,
    la : list_char > option_val).
thf(sy_v_pns____, type,
    pns : list_list_char).
thf(sy_v_vs____, type,
    vs : list_val).

% Relevant facts (247)
thf(fact_0_wtabody, axiom,
    ((wt @ p @ (map_up703499792har_ty @ (^[X : list_char]: none_ty) @ (cons_list_char @ this @ pns) @ (cons_ty @ (class @ d) @ ts2)) @ body @ t))). % wtabody
thf(fact_1_ty_Oinject, axiom,
    ((![X5 : list_char, Y5 : list_char]: (((class @ X5) = (class @ Y5)) = (X5 = Y5))))). % ty.inject
thf(fact_2_T_H_HsubT, axiom,
    ((widen_917054840t_char @ p @ t @ t3))). % T''subT
thf(fact_3_list_Oinject, axiom,
    ((![X21 : list_char, X22 : list_list_char, Y21 : list_char, Y22 : list_list_char]: (((cons_list_char @ X21 @ X22) = (cons_list_char @ Y21 @ Y22)) = (((X21 = Y21)) & ((X22 = Y22))))))). % list.inject
thf(fact_4_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_5_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_6_list_Oinject, axiom,
    ((![X21 : val, X22 : list_val, Y21 : val, Y22 : list_val]: (((cons_val @ X21 @ X22) = (cons_val @ Y21 @ Y22)) = (((X21 = Y21)) & ((X22 = Y22))))))). % list.inject
thf(fact_7_local_Owf, axiom,
    ((wf_pro1229751607t_char @ wf_J_mdecl @ p))). % local.wf
thf(fact_8_T_HisT, axiom,
    ((t2 = t3))). % T'isT
thf(fact_9__092_060open_062_092_060And_062thesis_O_A_I_092_060And_062T_H_H_O_A_092_060lbrakk_062P_M_091this_A_D_Apns_A_091_092_060mapsto_062_093_AClass_AD_A_D_ATs_093_A_092_060turnstile_062_Abody_A_058_058_AT_H_H_059_AP_A_092_060turnstile_062_AT_H_H_A_092_060le_062_AT_059_Alength_Apns_A_061_Alength_ATs_092_060rbrakk_062_A_092_060Longrightarrow_062_Athesis_J_A_092_060Longrightarrow_062_Athesis_092_060close_062, axiom,
    ((~ ((![T : ty]: ((wt @ p @ (map_up703499792har_ty @ (^[X : list_char]: none_ty) @ (cons_list_char @ this @ pns) @ (cons_ty @ (class @ d) @ ts2)) @ body @ T) => ((widen_917054840t_char @ p @ T @ t3) => (~ (((size_s2008079621t_char @ pns) = (size_size_list_ty @ ts2))))))))))). % \<open>\<And>thesis. (\<And>T''. \<lbrakk>P,[this # pns [\<mapsto>] Class D # Ts] \<turnstile> body :: T''; P \<turnstile> T'' \<le> T; length pns = length Ts\<rbrakk> \<Longrightarrow> thesis) \<Longrightarrow> thesis\<close>
thf(fact_10_length__pns, axiom,
    (((size_s2008079621t_char @ pns) = (size_size_list_ty @ ts2)))). % length_pns
thf(fact_11_method, axiom,
    ((method297381284t_char @ p @ c @ m @ ts2 @ t3 @ (produc713467969t_char @ pns @ body) @ d))). % method
thf(fact_12_RedCall_Oprems_I1_J, axiom,
    ((typeSa1777264139_sconf @ p @ e @ (produc52622304on_val @ ha @ la)))). % RedCall.prems(1)
thf(fact_13_not__Cons__self2, axiom,
    ((![X2 : list_char, Xs : list_list_char]: (~ (((cons_list_char @ X2 @ Xs) = Xs)))))). % not_Cons_self2
thf(fact_14_not__Cons__self2, axiom,
    ((![X2 : ty, Xs : list_ty]: (~ (((cons_ty @ X2 @ Xs) = Xs)))))). % not_Cons_self2
thf(fact_15_not__Cons__self2, axiom,
    ((![X2 : exp_list_char, Xs : list_exp_list_char]: (~ (((cons_exp_list_char @ X2 @ Xs) = Xs)))))). % not_Cons_self2
thf(fact_16_not__Cons__self2, axiom,
    ((![X2 : val, Xs : list_val]: (~ (((cons_val @ X2 @ Xs) = Xs)))))). % not_Cons_self2
thf(fact_17_subs, axiom,
    ((list_all2_ty_ty @ (widen_917054840t_char @ p) @ ts @ ts2))). % subs
thf(fact_18_list__all2__eq, axiom,
    (((^[Y : list_ty]: (^[Z : list_ty]: (Y = Z))) = (list_all2_ty_ty @ (^[Y : ty]: (^[Z : ty]: (Y = Z))))))). % list_all2_eq
thf(fact_19_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_20_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_21_list__all2__trans, axiom,
    ((![P1 : ty > ty > $o, P2 : 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) => ((P2 @ B @ C) => (P3 @ A @ C)))) => ((list_all2_ty_ty @ P1 @ As @ Bs) => ((list_all2_ty_ty @ P2 @ Bs @ Cs) => (list_all2_ty_ty @ P3 @ As @ Cs))))))). % list_all2_trans
thf(fact_22_list_Orel__eq, axiom,
    (((list_all2_ty_ty @ (^[Y : ty]: (^[Z : ty]: (Y = Z)))) = (^[Y : list_ty]: (^[Z : list_ty]: (Y = Z)))))). % list.rel_eq
thf(fact_23_Ex__list__of__length, axiom,
    ((![N : nat]: (?[Xs2 : list_list_char]: ((size_s2008079621t_char @ Xs2) = N))))). % Ex_list_of_length
thf(fact_24_Ex__list__of__length, axiom,
    ((![N : nat]: (?[Xs2 : list_ty]: ((size_size_list_ty @ Xs2) = N))))). % Ex_list_of_length
thf(fact_25_Ex__list__of__length, axiom,
    ((![N : nat]: (?[Xs2 : list_val]: ((size_size_list_val @ Xs2) = N))))). % Ex_list_of_length
thf(fact_26_Ex__list__of__length, axiom,
    ((![N : nat]: (?[Xs2 : list_exp_list_char]: ((size_s329991613t_char @ Xs2) = N))))). % Ex_list_of_length
thf(fact_27_list__all2__antisym, axiom,
    ((![P : ty > ty > $o, Q : ty > ty > $o, Xs : list_ty, Ys : list_ty]: ((![X3 : ty, Y2 : ty]: ((P @ X3 @ Y2) => ((Q @ Y2 @ X3) => (X3 = Y2)))) => ((list_all2_ty_ty @ P @ Xs @ Ys) => ((list_all2_ty_ty @ Q @ Ys @ Xs) => (Xs = Ys))))))). % list_all2_antisym
thf(fact_28_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_29_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_30_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_31_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_32_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_33_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_34_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_35_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_36_list__all2__lengthD, axiom,
    ((![P : list_char > list_char > $o, Xs : list_list_char, Ys : list_list_char]: ((list_a2051666507t_char @ P @ Xs @ Ys) => ((size_s2008079621t_char @ Xs) = (size_s2008079621t_char @ Ys)))))). % list_all2_lengthD
thf(fact_37_list__all2__lengthD, axiom,
    ((![P : ty > exp_list_char > $o, Xs : list_ty, Ys : list_exp_list_char]: ((list_a212154379t_char @ P @ Xs @ Ys) => ((size_size_list_ty @ Xs) = (size_s329991613t_char @ Ys)))))). % list_all2_lengthD
thf(fact_38_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_39_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_40_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_41_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_42_list_Orel__refl, axiom,
    ((![Ra : ty > ty > $o, X2 : list_ty]: ((![X3 : ty]: (Ra @ X3 @ X3)) => (list_all2_ty_ty @ Ra @ X2 @ X2))))). % list.rel_refl
thf(fact_43_list__all2__Cons2, axiom,
    ((![P : val > ty > $o, Xs : list_val, Y3 : ty, Ys : list_ty]: ((list_all2_val_ty @ P @ Xs @ (cons_ty @ Y3 @ Ys)) = (?[Z2 : val]: (?[Zs : list_val]: (((Xs = (cons_val @ Z2 @ Zs))) & ((((P @ Z2 @ Y3)) & ((list_all2_val_ty @ P @ Zs @ Ys))))))))))). % list_all2_Cons2
thf(fact_44_list__all2__Cons2, axiom,
    ((![P : ty > val > $o, Xs : list_ty, Y3 : val, Ys : list_val]: ((list_all2_ty_val @ P @ Xs @ (cons_val @ Y3 @ Ys)) = (?[Z2 : ty]: (?[Zs : list_ty]: (((Xs = (cons_ty @ Z2 @ Zs))) & ((((P @ Z2 @ Y3)) & ((list_all2_ty_val @ P @ Zs @ Ys))))))))))). % list_all2_Cons2
thf(fact_45_list__all2__Cons2, axiom,
    ((![P : val > val > $o, Xs : list_val, Y3 : val, Ys : list_val]: ((list_all2_val_val @ P @ Xs @ (cons_val @ Y3 @ Ys)) = (?[Z2 : val]: (?[Zs : list_val]: (((Xs = (cons_val @ Z2 @ Zs))) & ((((P @ Z2 @ Y3)) & ((list_all2_val_val @ P @ Zs @ Ys))))))))))). % list_all2_Cons2
thf(fact_46_list__all2__Cons2, axiom,
    ((![P : ty > ty > $o, Xs : list_ty, Y3 : ty, Ys : list_ty]: ((list_all2_ty_ty @ P @ Xs @ (cons_ty @ Y3 @ Ys)) = (?[Z2 : ty]: (?[Zs : list_ty]: (((Xs = (cons_ty @ Z2 @ Zs))) & ((((P @ Z2 @ Y3)) & ((list_all2_ty_ty @ P @ Zs @ Ys))))))))))). % list_all2_Cons2
thf(fact_47_list__all2__Cons2, axiom,
    ((![P : ty > list_char > $o, Xs : list_ty, Y3 : list_char, Ys : list_list_char]: ((list_a1504214817t_char @ P @ Xs @ (cons_list_char @ Y3 @ Ys)) = (?[Z2 : ty]: (?[Zs : list_ty]: (((Xs = (cons_ty @ Z2 @ Zs))) & ((((P @ Z2 @ Y3)) & ((list_a1504214817t_char @ P @ Zs @ Ys))))))))))). % list_all2_Cons2
thf(fact_48_list__all2__Cons2, axiom,
    ((![P : val > list_char > $o, Xs : list_val, Y3 : list_char, Ys : list_list_char]: ((list_a1248766058t_char @ P @ Xs @ (cons_list_char @ Y3 @ Ys)) = (?[Z2 : val]: (?[Zs : list_val]: (((Xs = (cons_val @ Z2 @ Zs))) & ((((P @ Z2 @ Y3)) & ((list_a1248766058t_char @ P @ Zs @ Ys))))))))))). % list_all2_Cons2
thf(fact_49_list__all2__Cons2, axiom,
    ((![P : list_char > ty > $o, Xs : list_list_char, Y3 : ty, Ys : list_ty]: ((list_a1770748705har_ty @ P @ Xs @ (cons_ty @ Y3 @ Ys)) = (?[Z2 : list_char]: (?[Zs : list_list_char]: (((Xs = (cons_list_char @ Z2 @ Zs))) & ((((P @ Z2 @ Y3)) & ((list_a1770748705har_ty @ P @ Zs @ Ys))))))))))). % list_all2_Cons2
thf(fact_50_list__all2__Cons2, axiom,
    ((![P : list_char > val > $o, Xs : list_list_char, Y3 : val, Ys : list_val]: ((list_a280217834ar_val @ P @ Xs @ (cons_val @ Y3 @ Ys)) = (?[Z2 : list_char]: (?[Zs : list_list_char]: (((Xs = (cons_list_char @ Z2 @ Zs))) & ((((P @ Z2 @ Y3)) & ((list_a280217834ar_val @ P @ Zs @ Ys))))))))))). % list_all2_Cons2
thf(fact_51_list__all2__Cons2, axiom,
    ((![P : list_char > list_char > $o, Xs : list_list_char, Y3 : list_char, Ys : list_list_char]: ((list_a2051666507t_char @ P @ Xs @ (cons_list_char @ Y3 @ Ys)) = (?[Z2 : list_char]: (?[Zs : list_list_char]: (((Xs = (cons_list_char @ Z2 @ Zs))) & ((((P @ Z2 @ Y3)) & ((list_a2051666507t_char @ P @ Zs @ Ys))))))))))). % list_all2_Cons2
thf(fact_52_list__all2__Cons2, axiom,
    ((![P : exp_list_char > ty > $o, Xs : list_exp_list_char, Y3 : ty, Ys : list_ty]: ((list_a295513531har_ty @ P @ Xs @ (cons_ty @ Y3 @ Ys)) = (?[Z2 : exp_list_char]: (?[Zs : list_exp_list_char]: (((Xs = (cons_exp_list_char @ Z2 @ Zs))) & ((((P @ Z2 @ Y3)) & ((list_a295513531har_ty @ P @ Zs @ Ys))))))))))). % list_all2_Cons2
thf(fact_53_list__all2__Cons1, axiom,
    ((![P : ty > val > $o, X2 : ty, Xs : list_ty, Ys : list_val]: ((list_all2_ty_val @ P @ (cons_ty @ X2 @ Xs) @ Ys) = (?[Z2 : val]: (?[Zs : list_val]: (((Ys = (cons_val @ Z2 @ Zs))) & ((((P @ X2 @ Z2)) & ((list_all2_ty_val @ P @ Xs @ Zs))))))))))). % list_all2_Cons1
thf(fact_54_list__all2__Cons1, axiom,
    ((![P : val > ty > $o, X2 : val, Xs : list_val, Ys : list_ty]: ((list_all2_val_ty @ P @ (cons_val @ X2 @ Xs) @ Ys) = (?[Z2 : ty]: (?[Zs : list_ty]: (((Ys = (cons_ty @ Z2 @ Zs))) & ((((P @ X2 @ Z2)) & ((list_all2_val_ty @ P @ Xs @ Zs))))))))))). % list_all2_Cons1
thf(fact_55_list__all2__Cons1, axiom,
    ((![P : val > val > $o, X2 : val, Xs : list_val, Ys : list_val]: ((list_all2_val_val @ P @ (cons_val @ X2 @ Xs) @ Ys) = (?[Z2 : val]: (?[Zs : list_val]: (((Ys = (cons_val @ Z2 @ Zs))) & ((((P @ X2 @ Z2)) & ((list_all2_val_val @ P @ Xs @ Zs))))))))))). % list_all2_Cons1
thf(fact_56_list__all2__Cons1, axiom,
    ((![P : ty > ty > $o, X2 : ty, Xs : list_ty, Ys : list_ty]: ((list_all2_ty_ty @ P @ (cons_ty @ X2 @ Xs) @ Ys) = (?[Z2 : ty]: (?[Zs : list_ty]: (((Ys = (cons_ty @ Z2 @ Zs))) & ((((P @ X2 @ Z2)) & ((list_all2_ty_ty @ P @ Xs @ Zs))))))))))). % list_all2_Cons1
thf(fact_57_list__all2__Cons1, axiom,
    ((![P : list_char > ty > $o, X2 : list_char, Xs : list_list_char, Ys : list_ty]: ((list_a1770748705har_ty @ P @ (cons_list_char @ X2 @ Xs) @ Ys) = (?[Z2 : ty]: (?[Zs : list_ty]: (((Ys = (cons_ty @ Z2 @ Zs))) & ((((P @ X2 @ Z2)) & ((list_a1770748705har_ty @ P @ Xs @ Zs))))))))))). % list_all2_Cons1
thf(fact_58_list__all2__Cons1, axiom,
    ((![P : list_char > val > $o, X2 : list_char, Xs : list_list_char, Ys : list_val]: ((list_a280217834ar_val @ P @ (cons_list_char @ X2 @ Xs) @ Ys) = (?[Z2 : val]: (?[Zs : list_val]: (((Ys = (cons_val @ Z2 @ Zs))) & ((((P @ X2 @ Z2)) & ((list_a280217834ar_val @ P @ Xs @ Zs))))))))))). % list_all2_Cons1
thf(fact_59_list__all2__Cons1, axiom,
    ((![P : ty > list_char > $o, X2 : ty, Xs : list_ty, Ys : list_list_char]: ((list_a1504214817t_char @ P @ (cons_ty @ X2 @ Xs) @ Ys) = (?[Z2 : list_char]: (?[Zs : list_list_char]: (((Ys = (cons_list_char @ Z2 @ Zs))) & ((((P @ X2 @ Z2)) & ((list_a1504214817t_char @ P @ Xs @ Zs))))))))))). % list_all2_Cons1
thf(fact_60_list__all2__Cons1, axiom,
    ((![P : val > list_char > $o, X2 : val, Xs : list_val, Ys : list_list_char]: ((list_a1248766058t_char @ P @ (cons_val @ X2 @ Xs) @ Ys) = (?[Z2 : list_char]: (?[Zs : list_list_char]: (((Ys = (cons_list_char @ Z2 @ Zs))) & ((((P @ X2 @ Z2)) & ((list_a1248766058t_char @ P @ Xs @ Zs))))))))))). % list_all2_Cons1
thf(fact_61_list__all2__Cons1, axiom,
    ((![P : list_char > list_char > $o, X2 : list_char, Xs : list_list_char, Ys : list_list_char]: ((list_a2051666507t_char @ P @ (cons_list_char @ X2 @ Xs) @ Ys) = (?[Z2 : list_char]: (?[Zs : list_list_char]: (((Ys = (cons_list_char @ Z2 @ Zs))) & ((((P @ X2 @ Z2)) & ((list_a2051666507t_char @ P @ Xs @ Zs))))))))))). % list_all2_Cons1
thf(fact_62_list__all2__Cons1, axiom,
    ((![P : ty > exp_list_char > $o, X2 : ty, Xs : list_ty, Ys : list_exp_list_char]: ((list_a212154379t_char @ P @ (cons_ty @ X2 @ Xs) @ Ys) = (?[Z2 : exp_list_char]: (?[Zs : list_exp_list_char]: (((Ys = (cons_exp_list_char @ Z2 @ Zs))) & ((((P @ X2 @ Z2)) & ((list_a212154379t_char @ P @ Xs @ Zs))))))))))). % list_all2_Cons1
thf(fact_63_list__all2__Cons, axiom,
    ((![P : ty > val > $o, X2 : ty, Xs : list_ty, Y3 : val, Ys : list_val]: ((list_all2_ty_val @ P @ (cons_ty @ X2 @ Xs) @ (cons_val @ Y3 @ Ys)) = (((P @ X2 @ Y3)) & ((list_all2_ty_val @ P @ Xs @ Ys))))))). % list_all2_Cons
thf(fact_64_list__all2__Cons, axiom,
    ((![P : val > ty > $o, X2 : val, Xs : list_val, Y3 : ty, Ys : list_ty]: ((list_all2_val_ty @ P @ (cons_val @ X2 @ Xs) @ (cons_ty @ Y3 @ Ys)) = (((P @ X2 @ Y3)) & ((list_all2_val_ty @ P @ Xs @ Ys))))))). % list_all2_Cons
thf(fact_65_list__all2__Cons, axiom,
    ((![P : val > val > $o, X2 : val, Xs : list_val, Y3 : val, Ys : list_val]: ((list_all2_val_val @ P @ (cons_val @ X2 @ Xs) @ (cons_val @ Y3 @ Ys)) = (((P @ X2 @ Y3)) & ((list_all2_val_val @ P @ Xs @ Ys))))))). % list_all2_Cons
thf(fact_66_list__all2__Cons, axiom,
    ((![P : ty > ty > $o, X2 : ty, Xs : list_ty, Y3 : ty, Ys : list_ty]: ((list_all2_ty_ty @ P @ (cons_ty @ X2 @ Xs) @ (cons_ty @ Y3 @ Ys)) = (((P @ X2 @ Y3)) & ((list_all2_ty_ty @ P @ Xs @ Ys))))))). % list_all2_Cons
thf(fact_67_list__all2__Cons, axiom,
    ((![P : list_char > ty > $o, X2 : list_char, Xs : list_list_char, Y3 : ty, Ys : list_ty]: ((list_a1770748705har_ty @ P @ (cons_list_char @ X2 @ Xs) @ (cons_ty @ Y3 @ Ys)) = (((P @ X2 @ Y3)) & ((list_a1770748705har_ty @ P @ Xs @ Ys))))))). % list_all2_Cons
thf(fact_68_list__all2__Cons, axiom,
    ((![P : list_char > val > $o, X2 : list_char, Xs : list_list_char, Y3 : val, Ys : list_val]: ((list_a280217834ar_val @ P @ (cons_list_char @ X2 @ Xs) @ (cons_val @ Y3 @ Ys)) = (((P @ X2 @ Y3)) & ((list_a280217834ar_val @ P @ Xs @ Ys))))))). % list_all2_Cons
thf(fact_69_list__all2__Cons, axiom,
    ((![P : ty > list_char > $o, X2 : ty, Xs : list_ty, Y3 : list_char, Ys : list_list_char]: ((list_a1504214817t_char @ P @ (cons_ty @ X2 @ Xs) @ (cons_list_char @ Y3 @ Ys)) = (((P @ X2 @ Y3)) & ((list_a1504214817t_char @ P @ Xs @ Ys))))))). % list_all2_Cons
thf(fact_70_list__all2__Cons, axiom,
    ((![P : val > list_char > $o, X2 : val, Xs : list_val, Y3 : list_char, Ys : list_list_char]: ((list_a1248766058t_char @ P @ (cons_val @ X2 @ Xs) @ (cons_list_char @ Y3 @ Ys)) = (((P @ X2 @ Y3)) & ((list_a1248766058t_char @ P @ Xs @ Ys))))))). % list_all2_Cons
thf(fact_71_list__all2__Cons, axiom,
    ((![P : list_char > list_char > $o, X2 : list_char, Xs : list_list_char, Y3 : list_char, Ys : list_list_char]: ((list_a2051666507t_char @ P @ (cons_list_char @ X2 @ Xs) @ (cons_list_char @ Y3 @ Ys)) = (((P @ X2 @ Y3)) & ((list_a2051666507t_char @ P @ Xs @ Ys))))))). % list_all2_Cons
thf(fact_72_list__all2__Cons, axiom,
    ((![P : ty > exp_list_char > $o, X2 : ty, Xs : list_ty, Y3 : exp_list_char, Ys : list_exp_list_char]: ((list_a212154379t_char @ P @ (cons_ty @ X2 @ Xs) @ (cons_exp_list_char @ Y3 @ Ys)) = (((P @ X2 @ Y3)) & ((list_a212154379t_char @ P @ Xs @ Ys))))))). % list_all2_Cons
thf(fact_73_list_Orel__intros_I2_J, axiom,
    ((![R : ty > val > $o, X21 : ty, Y21 : val, X22 : list_ty, Y22 : list_val]: ((R @ X21 @ Y21) => ((list_all2_ty_val @ R @ X22 @ Y22) => (list_all2_ty_val @ R @ (cons_ty @ X21 @ X22) @ (cons_val @ Y21 @ Y22))))))). % list.rel_intros(2)
thf(fact_74_list_Orel__intros_I2_J, axiom,
    ((![R : val > ty > $o, X21 : val, Y21 : ty, X22 : list_val, Y22 : list_ty]: ((R @ X21 @ Y21) => ((list_all2_val_ty @ R @ X22 @ Y22) => (list_all2_val_ty @ R @ (cons_val @ X21 @ X22) @ (cons_ty @ Y21 @ Y22))))))). % list.rel_intros(2)
thf(fact_75_list_Orel__intros_I2_J, axiom,
    ((![R : val > val > $o, X21 : val, Y21 : val, X22 : list_val, Y22 : list_val]: ((R @ X21 @ Y21) => ((list_all2_val_val @ R @ X22 @ Y22) => (list_all2_val_val @ R @ (cons_val @ X21 @ X22) @ (cons_val @ Y21 @ Y22))))))). % list.rel_intros(2)
thf(fact_76_list_Orel__intros_I2_J, axiom,
    ((![R : ty > ty > $o, X21 : ty, Y21 : ty, X22 : list_ty, Y22 : list_ty]: ((R @ X21 @ Y21) => ((list_all2_ty_ty @ R @ X22 @ Y22) => (list_all2_ty_ty @ R @ (cons_ty @ X21 @ X22) @ (cons_ty @ Y21 @ Y22))))))). % list.rel_intros(2)
thf(fact_77_list_Orel__intros_I2_J, axiom,
    ((![R : list_char > ty > $o, X21 : list_char, Y21 : ty, X22 : list_list_char, Y22 : list_ty]: ((R @ X21 @ Y21) => ((list_a1770748705har_ty @ R @ X22 @ Y22) => (list_a1770748705har_ty @ R @ (cons_list_char @ X21 @ X22) @ (cons_ty @ Y21 @ Y22))))))). % list.rel_intros(2)
thf(fact_78_list_Orel__intros_I2_J, axiom,
    ((![R : list_char > val > $o, X21 : list_char, Y21 : val, X22 : list_list_char, Y22 : list_val]: ((R @ X21 @ Y21) => ((list_a280217834ar_val @ R @ X22 @ Y22) => (list_a280217834ar_val @ R @ (cons_list_char @ X21 @ X22) @ (cons_val @ Y21 @ Y22))))))). % list.rel_intros(2)
thf(fact_79_list_Orel__intros_I2_J, axiom,
    ((![R : ty > list_char > $o, X21 : ty, Y21 : list_char, X22 : list_ty, Y22 : list_list_char]: ((R @ X21 @ Y21) => ((list_a1504214817t_char @ R @ X22 @ Y22) => (list_a1504214817t_char @ R @ (cons_ty @ X21 @ X22) @ (cons_list_char @ Y21 @ Y22))))))). % list.rel_intros(2)
thf(fact_80_list_Orel__intros_I2_J, axiom,
    ((![R : val > list_char > $o, X21 : val, Y21 : list_char, X22 : list_val, Y22 : list_list_char]: ((R @ X21 @ Y21) => ((list_a1248766058t_char @ R @ X22 @ Y22) => (list_a1248766058t_char @ R @ (cons_val @ X21 @ X22) @ (cons_list_char @ Y21 @ Y22))))))). % list.rel_intros(2)
thf(fact_81_list_Orel__intros_I2_J, axiom,
    ((![R : list_char > list_char > $o, X21 : list_char, Y21 : list_char, X22 : list_list_char, Y22 : list_list_char]: ((R @ X21 @ Y21) => ((list_a2051666507t_char @ R @ X22 @ Y22) => (list_a2051666507t_char @ R @ (cons_list_char @ X21 @ X22) @ (cons_list_char @ Y21 @ Y22))))))). % list.rel_intros(2)
thf(fact_82_list_Orel__intros_I2_J, axiom,
    ((![R : ty > exp_list_char > $o, X21 : ty, Y21 : exp_list_char, X22 : list_ty, Y22 : list_exp_list_char]: ((R @ X21 @ Y21) => ((list_a212154379t_char @ R @ X22 @ Y22) => (list_a212154379t_char @ R @ (cons_ty @ X21 @ X22) @ (cons_exp_list_char @ Y21 @ Y22))))))). % list.rel_intros(2)
thf(fact_83_list_Orel__inject_I2_J, axiom,
    ((![R : ty > val > $o, X21 : ty, X22 : list_ty, Y21 : val, Y22 : list_val]: ((list_all2_ty_val @ R @ (cons_ty @ X21 @ X22) @ (cons_val @ Y21 @ Y22)) = (((R @ X21 @ Y21)) & ((list_all2_ty_val @ R @ X22 @ Y22))))))). % list.rel_inject(2)
thf(fact_84_list_Orel__inject_I2_J, axiom,
    ((![R : val > ty > $o, X21 : val, X22 : list_val, Y21 : ty, Y22 : list_ty]: ((list_all2_val_ty @ R @ (cons_val @ X21 @ X22) @ (cons_ty @ Y21 @ Y22)) = (((R @ X21 @ Y21)) & ((list_all2_val_ty @ R @ X22 @ Y22))))))). % list.rel_inject(2)
thf(fact_85_list_Orel__inject_I2_J, axiom,
    ((![R : val > val > $o, X21 : val, X22 : list_val, Y21 : val, Y22 : list_val]: ((list_all2_val_val @ R @ (cons_val @ X21 @ X22) @ (cons_val @ Y21 @ Y22)) = (((R @ X21 @ Y21)) & ((list_all2_val_val @ R @ X22 @ Y22))))))). % list.rel_inject(2)
thf(fact_86_list_Orel__inject_I2_J, axiom,
    ((![R : ty > ty > $o, X21 : ty, X22 : list_ty, Y21 : ty, Y22 : list_ty]: ((list_all2_ty_ty @ R @ (cons_ty @ X21 @ X22) @ (cons_ty @ Y21 @ Y22)) = (((R @ X21 @ Y21)) & ((list_all2_ty_ty @ R @ X22 @ Y22))))))). % list.rel_inject(2)
thf(fact_87_list_Orel__inject_I2_J, axiom,
    ((![R : list_char > ty > $o, X21 : list_char, X22 : list_list_char, Y21 : ty, Y22 : list_ty]: ((list_a1770748705har_ty @ R @ (cons_list_char @ X21 @ X22) @ (cons_ty @ Y21 @ Y22)) = (((R @ X21 @ Y21)) & ((list_a1770748705har_ty @ R @ X22 @ Y22))))))). % list.rel_inject(2)
thf(fact_88_list_Orel__inject_I2_J, axiom,
    ((![R : list_char > val > $o, X21 : list_char, X22 : list_list_char, Y21 : val, Y22 : list_val]: ((list_a280217834ar_val @ R @ (cons_list_char @ X21 @ X22) @ (cons_val @ Y21 @ Y22)) = (((R @ X21 @ Y21)) & ((list_a280217834ar_val @ R @ X22 @ Y22))))))). % list.rel_inject(2)
thf(fact_89_list_Orel__inject_I2_J, axiom,
    ((![R : ty > list_char > $o, X21 : ty, X22 : list_ty, Y21 : list_char, Y22 : list_list_char]: ((list_a1504214817t_char @ R @ (cons_ty @ X21 @ X22) @ (cons_list_char @ Y21 @ Y22)) = (((R @ X21 @ Y21)) & ((list_a1504214817t_char @ R @ X22 @ Y22))))))). % list.rel_inject(2)
thf(fact_90_list_Orel__inject_I2_J, axiom,
    ((![R : val > list_char > $o, X21 : val, X22 : list_val, Y21 : list_char, Y22 : list_list_char]: ((list_a1248766058t_char @ R @ (cons_val @ X21 @ X22) @ (cons_list_char @ Y21 @ Y22)) = (((R @ X21 @ Y21)) & ((list_a1248766058t_char @ R @ X22 @ Y22))))))). % list.rel_inject(2)
thf(fact_91_list_Orel__inject_I2_J, axiom,
    ((![R : list_char > list_char > $o, X21 : list_char, X22 : list_list_char, Y21 : list_char, Y22 : list_list_char]: ((list_a2051666507t_char @ R @ (cons_list_char @ X21 @ X22) @ (cons_list_char @ Y21 @ Y22)) = (((R @ X21 @ Y21)) & ((list_a2051666507t_char @ R @ X22 @ Y22))))))). % list.rel_inject(2)
thf(fact_92_list_Orel__inject_I2_J, axiom,
    ((![R : ty > exp_list_char > $o, X21 : ty, X22 : list_ty, Y21 : exp_list_char, Y22 : list_exp_list_char]: ((list_a212154379t_char @ R @ (cons_ty @ X21 @ X22) @ (cons_exp_list_char @ Y21 @ Y22)) = (((R @ X21 @ Y21)) & ((list_a212154379t_char @ R @ X22 @ Y22))))))). % list.rel_inject(2)
thf(fact_93_widens__Cons, axiom,
    ((![P : list_P1234162913t_char, X2 : ty, Xs : list_ty, Ys : list_ty]: ((list_all2_ty_ty @ (widen_917054840t_char @ P) @ (cons_ty @ X2 @ Xs) @ Ys) = (?[Z2 : ty]: (?[Zs : list_ty]: (((Ys = (cons_ty @ Z2 @ Zs))) & ((((widen_917054840t_char @ P @ X2 @ Z2)) & ((list_all2_ty_ty @ (widen_917054840t_char @ P) @ Xs @ Zs))))))))))). % widens_Cons
thf(fact_94_widens__refl, axiom,
    ((![P : list_P1234162913t_char, Xs : list_ty]: (list_all2_ty_ty @ (widen_917054840t_char @ P) @ Xs @ Xs)))). % widens_refl
thf(fact_95_prod_Oinject, axiom,
    ((![X1 : list_ty, X23 : produc1109669680t_char, Y1 : list_ty, Y23 : produc1109669680t_char]: (((produc1806338192t_char @ X1 @ X23) = (produc1806338192t_char @ Y1 @ Y23)) = (((X1 = Y1)) & ((X23 = Y23))))))). % prod.inject
thf(fact_96_prod_Oinject, axiom,
    ((![X1 : list_ty, X23 : produc1490933927t_char, Y1 : list_ty, Y23 : produc1490933927t_char]: (((produc1730359111t_char @ X1 @ X23) = (produc1730359111t_char @ Y1 @ Y23)) = (((X1 = Y1)) & ((X23 = Y23))))))). % prod.inject
thf(fact_97_prod_Oinject, axiom,
    ((![X1 : exp_list_char, X23 : produc515445032on_val, Y1 : exp_list_char, Y23 : produc515445032on_val]: (((produc2023458740on_val @ X1 @ X23) = (produc2023458740on_val @ Y1 @ Y23)) = (((X1 = Y1)) & ((X23 = Y23))))))). % prod.inject
thf(fact_98_prod_Oinject, axiom,
    ((![X1 : ty, X23 : produc1294284815t_char, Y1 : ty, Y23 : produc1294284815t_char]: (((produc248075743t_char @ X1 @ X23) = (produc248075743t_char @ Y1 @ Y23)) = (((X1 = Y1)) & ((X23 = Y23))))))). % prod.inject
thf(fact_99_prod_Oinject, axiom,
    ((![X1 : nat > option2118145160on_val, X23 : list_char > option_val, Y1 : nat > option2118145160on_val, Y23 : list_char > option_val]: (((produc52622304on_val @ X1 @ X23) = (produc52622304on_val @ Y1 @ Y23)) = (((X1 = Y1)) & ((X23 = Y23))))))). % prod.inject
thf(fact_100_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_101_old_Oprod_Oinject, axiom,
    ((![A2 : list_ty, B2 : produc1490933927t_char, A3 : list_ty, B3 : produc1490933927t_char]: (((produc1730359111t_char @ A2 @ B2) = (produc1730359111t_char @ A3 @ B3)) = (((A2 = A3)) & ((B2 = B3))))))). % old.prod.inject
thf(fact_102_old_Oprod_Oinject, axiom,
    ((![A2 : exp_list_char, B2 : produc515445032on_val, A3 : exp_list_char, B3 : produc515445032on_val]: (((produc2023458740on_val @ A2 @ B2) = (produc2023458740on_val @ A3 @ B3)) = (((A2 = A3)) & ((B2 = B3))))))). % old.prod.inject
thf(fact_103_old_Oprod_Oinject, axiom,
    ((![A2 : ty, B2 : produc1294284815t_char, A3 : ty, B3 : produc1294284815t_char]: (((produc248075743t_char @ A2 @ B2) = (produc248075743t_char @ A3 @ B3)) = (((A2 = A3)) & ((B2 = B3))))))). % old.prod.inject
thf(fact_104_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_105_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_106_Class__widen, axiom,
    ((![P : list_P1234162913t_char, C2 : list_char, T2 : ty]: ((widen_917054840t_char @ P @ (class @ C2) @ T2) => (?[D : list_char]: (T2 = (class @ D))))))). % Class_widen
thf(fact_107_WT__implies__WTrt, axiom,
    ((![P : list_P1234162913t_char, E : list_char > option_ty, E2 : exp_list_char, T2 : ty, H : nat > option2118145160on_val]: ((wt @ P @ E @ E2 @ T2) => (wTrt @ P @ H @ E @ E2 @ T2))))). % WT_implies_WTrt
thf(fact_108_RedCall_Ohyps_I3_J, axiom,
    (((size_size_list_val @ vs) = (size_s2008079621t_char @ pns)))). % RedCall.hyps(3)
thf(fact_109__092_060open_062wf__mdecl_Awf__J__mdecl_AP_AD_A_IM_M_ATs_M_AT_M_Apns_M_Abody_J_092_060close_062, axiom,
    ((wf_mde297024346t_char @ wf_J_mdecl @ p @ d @ (produc1238538255t_char @ m @ (produc1730359111t_char @ ts2 @ (produc248075743t_char @ t3 @ (produc713467969t_char @ pns @ body))))))). % \<open>wf_mdecl wf_J_mdecl P D (M, Ts, T, pns, body)\<close>
thf(fact_110_Cons__in__lex, axiom,
    ((![X2 : produc1097884484on_val, Xs : list_P1873028426on_val, Y3 : produc1097884484on_val, Ys : list_P1873028426on_val, R2 : set_Pr1189492743on_val]: ((member321179984on_val @ (produc2055752471on_val @ (cons_P766091258on_val @ X2 @ Xs) @ (cons_P766091258on_val @ Y3 @ Ys)) @ (lex_Pr1119043758on_val @ R2)) = (((((member354538064on_val @ (produc1069526295on_val @ X2 @ Y3) @ R2)) & (((size_s2061184438on_val @ Xs) = (size_s2061184438on_val @ Ys))))) | ((((X2 = Y3)) & ((member321179984on_val @ (produc2055752471on_val @ Xs @ Ys) @ (lex_Pr1119043758on_val @ R2)))))))))). % Cons_in_lex
thf(fact_111_Cons__in__lex, axiom,
    ((![X2 : list_char, Xs : list_list_char, Y3 : list_char, Ys : list_list_char, R2 : set_Pr164112643t_char]: ((member725442668t_char @ (produc1181934459t_char @ (cons_list_char @ X2 @ Xs) @ (cons_list_char @ Y3 @ Ys)) @ (lex_list_char @ R2)) = (((((member89690956t_char @ (produc1304532571t_char @ X2 @ Y3) @ R2)) & (((size_s2008079621t_char @ Xs) = (size_s2008079621t_char @ Ys))))) | ((((X2 = Y3)) & ((member725442668t_char @ (produc1181934459t_char @ Xs @ Ys) @ (lex_list_char @ R2)))))))))). % Cons_in_lex
thf(fact_112_Cons__in__lex, axiom,
    ((![X2 : ty, Xs : list_ty, Y3 : ty, Ys : list_ty, R2 : set_Pr1194734255_ty_ty]: ((member1942114840ist_ty @ (produc1089615911ist_ty @ (cons_ty @ X2 @ Xs) @ (cons_ty @ Y3 @ Ys)) @ (lex_ty @ R2)) = (((((member2070851320_ty_ty @ (product_Pair_ty_ty @ X2 @ Y3) @ R2)) & (((size_size_list_ty @ Xs) = (size_size_list_ty @ Ys))))) | ((((X2 = Y3)) & ((member1942114840ist_ty @ (produc1089615911ist_ty @ Xs @ Ys) @ (lex_ty @ R2)))))))))). % Cons_in_lex
thf(fact_113_Cons__in__lex, axiom,
    ((![X2 : val, Xs : list_val, Y3 : val, Ys : list_val, R2 : set_Pr1870322241al_val]: ((member1382006826st_val @ (produc180957881st_val @ (cons_val @ X2 @ Xs) @ (cons_val @ Y3 @ Ys)) @ (lex_val @ R2)) = (((((member1494223754al_val @ (product_Pair_val_val @ X2 @ Y3) @ R2)) & (((size_size_list_val @ Xs) = (size_size_list_val @ Ys))))) | ((((X2 = Y3)) & ((member1382006826st_val @ (produc180957881st_val @ Xs @ Ys) @ (lex_val @ R2)))))))))). % Cons_in_lex
thf(fact_114_Cons__in__lex, axiom,
    ((![X2 : exp_list_char, Xs : list_exp_list_char, Y3 : exp_list_char, Ys : list_exp_list_char, R2 : set_Pr224372167t_char]: ((member462435472t_char @ (produc1721801175t_char @ (cons_exp_list_char @ X2 @ Xs) @ (cons_exp_list_char @ Y3 @ Ys)) @ (lex_exp_list_char @ R2)) = (((((member1699993616t_char @ (produc240508503t_char @ X2 @ Y3) @ R2)) & (((size_s329991613t_char @ Xs) = (size_s329991613t_char @ Ys))))) | ((((X2 = Y3)) & ((member462435472t_char @ (produc1721801175t_char @ Xs @ Ys) @ (lex_exp_list_char @ R2)))))))))). % Cons_in_lex
thf(fact_115_length__vs, axiom,
    (((size_size_list_val @ vs) = (size_size_list_ty @ ts2)))). % length_vs
thf(fact_116_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_117_old_Oprod_Oinducts, axiom,
    ((![P : produc1451990293t_char > $o, Prod : produc1451990293t_char]: ((![A : list_ty, B : produc1490933927t_char]: (P @ (produc1730359111t_char @ A @ B))) => (P @ Prod))))). % old.prod.inducts
thf(fact_118_old_Oprod_Oinducts, axiom,
    ((![P : produc1097884484on_val > $o, Prod : produc1097884484on_val]: ((![A : exp_list_char, B : produc515445032on_val]: (P @ (produc2023458740on_val @ A @ B))) => (P @ Prod))))). % old.prod.inducts
thf(fact_119_old_Oprod_Oinducts, axiom,
    ((![P : produc1490933927t_char > $o, Prod : produc1490933927t_char]: ((![A : ty, B : produc1294284815t_char]: (P @ (produc248075743t_char @ A @ B))) => (P @ Prod))))). % old.prod.inducts
thf(fact_120_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_121_old_Oprod_Oexhaust, axiom,
    ((![Y3 : produc111478616t_char]: (~ ((![A : list_ty, B : produc1109669680t_char]: (~ ((Y3 = (produc1806338192t_char @ A @ B)))))))))). % old.prod.exhaust
thf(fact_122_old_Oprod_Oexhaust, axiom,
    ((![Y3 : produc1451990293t_char]: (~ ((![A : list_ty, B : produc1490933927t_char]: (~ ((Y3 = (produc1730359111t_char @ A @ B)))))))))). % old.prod.exhaust
thf(fact_123_old_Oprod_Oexhaust, axiom,
    ((![Y3 : produc1097884484on_val]: (~ ((![A : exp_list_char, B : produc515445032on_val]: (~ ((Y3 = (produc2023458740on_val @ A @ B)))))))))). % old.prod.exhaust
thf(fact_124_old_Oprod_Oexhaust, axiom,
    ((![Y3 : produc1490933927t_char]: (~ ((![A : ty, B : produc1294284815t_char]: (~ ((Y3 = (produc248075743t_char @ A @ B)))))))))). % old.prod.exhaust
thf(fact_125_old_Oprod_Oexhaust, axiom,
    ((![Y3 : produc515445032on_val]: (~ ((![A : nat > option2118145160on_val, B : list_char > option_val]: (~ ((Y3 = (produc52622304on_val @ A @ B)))))))))). % old.prod.exhaust
thf(fact_126_prod__induct4, axiom,
    ((![P : produc1451990293t_char > $o, X2 : produc1451990293t_char]: ((![A : list_ty, B : ty, C : list_list_char, D2 : exp_list_char]: (P @ (produc1730359111t_char @ A @ (produc248075743t_char @ B @ (produc713467969t_char @ C @ D2))))) => (P @ X2))))). % prod_induct4
thf(fact_127_mem__Collect__eq, axiom,
    ((![A2 : produc1172664615on_val, P : produc1172664615on_val > $o]: ((member354538064on_val @ A2 @ (collec2055896722on_val @ P)) = (P @ A2))))). % mem_Collect_eq
thf(fact_128_Collect__mem__eq, axiom,
    ((![A4 : set_Pr1189492743on_val]: ((collec2055896722on_val @ (^[X : produc1172664615on_val]: (member354538064on_val @ X @ A4))) = A4)))). % Collect_mem_eq
thf(fact_129_prod__induct3, axiom,
    ((![P : produc111478616t_char > $o, X2 : produc111478616t_char]: ((![A : list_ty, B : list_val, C : exp_list_char]: (P @ (produc1806338192t_char @ A @ (produc823987298t_char @ B @ C)))) => (P @ X2))))). % prod_induct3
thf(fact_130_prod__induct3, axiom,
    ((![P : produc1451990293t_char > $o, X2 : produc1451990293t_char]: ((![A : list_ty, B : ty, C : produc1294284815t_char]: (P @ (produc1730359111t_char @ A @ (produc248075743t_char @ B @ C)))) => (P @ X2))))). % prod_induct3
thf(fact_131_prod__induct3, axiom,
    ((![P : produc1097884484on_val > $o, X2 : produc1097884484on_val]: ((![A : exp_list_char, B : nat > option2118145160on_val, C : list_char > option_val]: (P @ (produc2023458740on_val @ A @ (produc52622304on_val @ B @ C)))) => (P @ X2))))). % prod_induct3
thf(fact_132_prod__induct3, axiom,
    ((![P : produc1490933927t_char > $o, X2 : produc1490933927t_char]: ((![A : ty, B : list_list_char, C : exp_list_char]: (P @ (produc248075743t_char @ A @ (produc713467969t_char @ B @ C)))) => (P @ X2))))). % prod_induct3
thf(fact_133_prod__cases4, axiom,
    ((![Y3 : produc1451990293t_char]: (~ ((![A : list_ty, B : ty, C : list_list_char, D2 : exp_list_char]: (~ ((Y3 = (produc1730359111t_char @ A @ (produc248075743t_char @ B @ (produc713467969t_char @ C @ D2)))))))))))). % prod_cases4
thf(fact_134_prod__cases3, axiom,
    ((![Y3 : produc111478616t_char]: (~ ((![A : list_ty, B : list_val, C : exp_list_char]: (~ ((Y3 = (produc1806338192t_char @ A @ (produc823987298t_char @ B @ C))))))))))). % prod_cases3
thf(fact_135_prod__cases3, axiom,
    ((![Y3 : produc1451990293t_char]: (~ ((![A : list_ty, B : ty, C : produc1294284815t_char]: (~ ((Y3 = (produc1730359111t_char @ A @ (produc248075743t_char @ B @ C))))))))))). % prod_cases3
thf(fact_136_prod__cases3, axiom,
    ((![Y3 : produc1097884484on_val]: (~ ((![A : exp_list_char, B : nat > option2118145160on_val, C : list_char > option_val]: (~ ((Y3 = (produc2023458740on_val @ A @ (produc52622304on_val @ B @ C))))))))))). % prod_cases3
thf(fact_137_prod__cases3, axiom,
    ((![Y3 : produc1490933927t_char]: (~ ((![A : ty, B : list_list_char, C : exp_list_char]: (~ ((Y3 = (produc248075743t_char @ A @ (produc713467969t_char @ B @ C))))))))))). % prod_cases3
thf(fact_138_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_139_Pair__inject, axiom,
    ((![A2 : list_ty, B2 : produc1490933927t_char, A3 : list_ty, B3 : produc1490933927t_char]: (((produc1730359111t_char @ A2 @ B2) = (produc1730359111t_char @ A3 @ B3)) => (~ (((A2 = A3) => (~ ((B2 = B3)))))))))). % Pair_inject
thf(fact_140_Pair__inject, axiom,
    ((![A2 : exp_list_char, B2 : produc515445032on_val, A3 : exp_list_char, B3 : produc515445032on_val]: (((produc2023458740on_val @ A2 @ B2) = (produc2023458740on_val @ A3 @ B3)) => (~ (((A2 = A3) => (~ ((B2 = B3)))))))))). % Pair_inject
thf(fact_141_Pair__inject, axiom,
    ((![A2 : ty, B2 : produc1294284815t_char, A3 : ty, B3 : produc1294284815t_char]: (((produc248075743t_char @ A2 @ B2) = (produc248075743t_char @ A3 @ B3)) => (~ (((A2 = A3) => (~ ((B2 = B3)))))))))). % Pair_inject
thf(fact_142_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_143_prod__cases, axiom,
    ((![P : produc111478616t_char > $o, P4 : produc111478616t_char]: ((![A : list_ty, B : produc1109669680t_char]: (P @ (produc1806338192t_char @ A @ B))) => (P @ P4))))). % prod_cases
thf(fact_144_prod__cases, axiom,
    ((![P : produc1451990293t_char > $o, P4 : produc1451990293t_char]: ((![A : list_ty, B : produc1490933927t_char]: (P @ (produc1730359111t_char @ A @ B))) => (P @ P4))))). % prod_cases
thf(fact_145_prod__cases, axiom,
    ((![P : produc1097884484on_val > $o, P4 : produc1097884484on_val]: ((![A : exp_list_char, B : produc515445032on_val]: (P @ (produc2023458740on_val @ A @ B))) => (P @ P4))))). % prod_cases
thf(fact_146_prod__cases, axiom,
    ((![P : produc1490933927t_char > $o, P4 : produc1490933927t_char]: ((![A : ty, B : produc1294284815t_char]: (P @ (produc248075743t_char @ A @ B))) => (P @ P4))))). % prod_cases
thf(fact_147_prod__cases, axiom,
    ((![P : produc515445032on_val > $o, P4 : produc515445032on_val]: ((![A : nat > option2118145160on_val, B : list_char > option_val]: (P @ (produc52622304on_val @ A @ B))) => (P @ P4))))). % prod_cases
thf(fact_148_surj__pair, axiom,
    ((![P4 : produc111478616t_char]: (?[X3 : list_ty, Y2 : produc1109669680t_char]: (P4 = (produc1806338192t_char @ X3 @ Y2)))))). % surj_pair
thf(fact_149_surj__pair, axiom,
    ((![P4 : produc1451990293t_char]: (?[X3 : list_ty, Y2 : produc1490933927t_char]: (P4 = (produc1730359111t_char @ X3 @ Y2)))))). % surj_pair
thf(fact_150_surj__pair, axiom,
    ((![P4 : produc1097884484on_val]: (?[X3 : exp_list_char, Y2 : produc515445032on_val]: (P4 = (produc2023458740on_val @ X3 @ Y2)))))). % surj_pair
thf(fact_151_surj__pair, axiom,
    ((![P4 : produc1490933927t_char]: (?[X3 : ty, Y2 : produc1294284815t_char]: (P4 = (produc248075743t_char @ X3 @ Y2)))))). % surj_pair
thf(fact_152_surj__pair, axiom,
    ((![P4 : produc515445032on_val]: (?[X3 : nat > option2118145160on_val, Y2 : list_char > option_val]: (P4 = (produc52622304on_val @ X3 @ Y2)))))). % surj_pair
thf(fact_153_widen__refl, axiom,
    ((![P : list_P1234162913t_char, T2 : ty]: (widen_917054840t_char @ P @ T2 @ T2)))). % widen_refl
thf(fact_154_widen__trans, axiom,
    ((![P : list_P1234162913t_char, S : ty, U : ty, T2 : ty]: ((widen_917054840t_char @ P @ S @ U) => ((widen_917054840t_char @ P @ U @ T2) => (widen_917054840t_char @ P @ S @ T2)))))). % widen_trans
thf(fact_155_sees__method__idemp, axiom,
    ((![P : list_P1234162913t_char, C2 : list_char, M : list_char, Ts : list_ty, T2 : ty, M2 : produc1294284815t_char, D3 : list_char]: ((method297381284t_char @ P @ C2 @ M @ Ts @ T2 @ M2 @ D3) => (method297381284t_char @ P @ D3 @ M @ Ts @ T2 @ M2 @ D3))))). % sees_method_idemp
thf(fact_156_sees__method__fun, axiom,
    ((![P : list_P1234162913t_char, C2 : list_char, M : list_char, TS : list_ty, T2 : ty, M2 : produc1294284815t_char, D3 : list_char, TS2 : list_ty, T3 : ty, M3 : produc1294284815t_char, D4 : list_char]: ((method297381284t_char @ P @ C2 @ M @ TS @ T2 @ M2 @ D3) => ((method297381284t_char @ P @ C2 @ M @ TS2 @ T3 @ M3 @ D4) => ((TS2 = TS) & ((T3 = T2) & ((M3 = M2) & (D4 = D3))))))))). % sees_method_fun
thf(fact_157_method__def2, axiom,
    ((![P : list_P1234162913t_char, C2 : list_char, M : list_char, Ts : list_ty, T2 : ty, M2 : produc1294284815t_char, D3 : list_char]: ((method297381284t_char @ P @ C2 @ M @ Ts @ T2 @ M2 @ D3) => ((method667690372t_char @ P @ C2 @ M) = (produc1238538255t_char @ D3 @ (produc1730359111t_char @ Ts @ (produc248075743t_char @ T2 @ M2)))))))). % method_def2
thf(fact_158_sees__wf__mdecl, axiom,
    ((![Wf_md : list_P1234162913t_char > list_char > produc1259892823t_char > $o, P : list_P1234162913t_char, C2 : list_char, M : list_char, Ts : list_ty, T2 : ty, M2 : produc1294284815t_char, D3 : list_char]: ((wf_pro1229751607t_char @ Wf_md @ P) => ((method297381284t_char @ P @ C2 @ M @ Ts @ T2 @ M2 @ D3) => (wf_mde297024346t_char @ Wf_md @ P @ D3 @ (produc1238538255t_char @ M @ (produc1730359111t_char @ Ts @ (produc248075743t_char @ T2 @ M2))))))))). % sees_wf_mdecl
thf(fact_159_has__method__def, axiom,
    ((has_me170134744t_char = (^[P5 : list_P1234162913t_char]: (^[C3 : list_char]: (^[M4 : list_char]: (?[Ts2 : list_ty]: (?[T4 : ty]: (?[M5 : produc1294284815t_char]: (?[X4 : list_char]: (method297381284t_char @ P5 @ C3 @ M4 @ Ts2 @ T4 @ M5 @ X4))))))))))). % has_method_def
thf(fact_160__092_060open_062_092_060And_062thesis_O_A_I_092_060And_062Ts_H_O_A_092_060lbrakk_062P_ME_Mh_A_092_060turnstile_062_Amap_AVal_Avs_A_091_058_093_ATs_H_059_AP_A_092_060turnstile_062_ATs_H_A_091_092_060le_062_093_ATs_059_AT_H_A_061_AT_092_060rbrakk_062_A_092_060Longrightarrow_062_Athesis_J_A_092_060Longrightarrow_062_Athesis_092_060close_062, axiom,
    ((~ ((![Ts3 : list_ty]: ((wTrts @ p @ ha @ e @ (map_va1515327237t_char @ val_list_char @ vs) @ Ts3) => ((list_all2_ty_ty @ (widen_917054840t_char @ p) @ Ts3 @ ts2) => (~ ((t2 = t3)))))))))). % \<open>\<And>thesis. (\<And>Ts'. \<lbrakk>P,E,h \<turnstile> map Val vs [:] Ts'; P \<turnstile> Ts' [\<le>] Ts; T' = T\<rbrakk> \<Longrightarrow> thesis) \<Longrightarrow> thesis\<close>
thf(fact_161_hp, axiom,
    (((hp @ (produc52622304on_val @ ha @ la) @ a) = (some_P1299442195on_val @ (produc904988266on_val @ c @ fs))))). % hp
thf(fact_162_wtes, axiom,
    ((wTrts @ p @ ha @ e @ (map_va1515327237t_char @ val_list_char @ vs) @ ts))). % wtes
thf(fact_163_option_Oinject, axiom,
    ((![X23 : produc266837688on_val, Y23 : produc266837688on_val]: (((some_P1299442195on_val @ X23) = (some_P1299442195on_val @ Y23)) = (X23 = Y23))))). % option.inject
thf(fact_164_option_Oinject, axiom,
    ((![X23 : ty, Y23 : ty]: (((some_ty @ X23) = (some_ty @ Y23)) = (X23 = Y23))))). % option.inject
thf(fact_165_option_Oinject, axiom,
    ((![X23 : val, Y23 : val]: (((some_val @ X23) = (some_val @ Y23)) = (X23 = Y23))))). % option.inject
thf(fact_166_Cons__eq__map__conv, axiom,
    ((![X2 : ty, Xs : list_ty, F : ty > ty, Ys : list_ty]: (((cons_ty @ X2 @ Xs) = (map_ty_ty @ F @ Ys)) = (?[Z2 : ty]: (?[Zs : list_ty]: (((Ys = (cons_ty @ Z2 @ Zs))) & ((((X2 = (F @ Z2))) & ((Xs = (map_ty_ty @ F @ Zs)))))))))))). % Cons_eq_map_conv
thf(fact_167_Cons__eq__map__conv, axiom,
    ((![X2 : ty, Xs : list_ty, F : val > ty, Ys : list_val]: (((cons_ty @ X2 @ Xs) = (map_val_ty @ F @ Ys)) = (?[Z2 : val]: (?[Zs : list_val]: (((Ys = (cons_val @ Z2 @ Zs))) & ((((X2 = (F @ Z2))) & ((Xs = (map_val_ty @ F @ Zs)))))))))))). % Cons_eq_map_conv
thf(fact_168_Cons__eq__map__conv, axiom,
    ((![X2 : val, Xs : list_val, F : ty > val, Ys : list_ty]: (((cons_val @ X2 @ Xs) = (map_ty_val @ F @ Ys)) = (?[Z2 : ty]: (?[Zs : list_ty]: (((Ys = (cons_ty @ Z2 @ Zs))) & ((((X2 = (F @ Z2))) & ((Xs = (map_ty_val @ F @ Zs)))))))))))). % Cons_eq_map_conv
thf(fact_169_Cons__eq__map__conv, axiom,
    ((![X2 : val, Xs : list_val, F : val > val, Ys : list_val]: (((cons_val @ X2 @ Xs) = (map_val_val @ F @ Ys)) = (?[Z2 : val]: (?[Zs : list_val]: (((Ys = (cons_val @ Z2 @ Zs))) & ((((X2 = (F @ Z2))) & ((Xs = (map_val_val @ F @ Zs)))))))))))). % Cons_eq_map_conv
thf(fact_170_Cons__eq__map__conv, axiom,
    ((![X2 : option_ty, Xs : list_option_ty, F : ty > option_ty, Ys : list_ty]: (((cons_option_ty @ X2 @ Xs) = (map_ty_option_ty @ F @ Ys)) = (?[Z2 : ty]: (?[Zs : list_ty]: (((Ys = (cons_ty @ Z2 @ Zs))) & ((((X2 = (F @ Z2))) & ((Xs = (map_ty_option_ty @ F @ Zs)))))))))))). % Cons_eq_map_conv
thf(fact_171_Cons__eq__map__conv, axiom,
    ((![X2 : option_ty, Xs : list_option_ty, F : val > option_ty, Ys : list_val]: (((cons_option_ty @ X2 @ Xs) = (map_val_option_ty @ F @ Ys)) = (?[Z2 : val]: (?[Zs : list_val]: (((Ys = (cons_val @ Z2 @ Zs))) & ((((X2 = (F @ Z2))) & ((Xs = (map_val_option_ty @ F @ Zs)))))))))))). % Cons_eq_map_conv
thf(fact_172_Cons__eq__map__conv, axiom,
    ((![X2 : list_char, Xs : list_list_char, F : ty > list_char, Ys : list_ty]: (((cons_list_char @ X2 @ Xs) = (map_ty_list_char @ F @ Ys)) = (?[Z2 : ty]: (?[Zs : list_ty]: (((Ys = (cons_ty @ Z2 @ Zs))) & ((((X2 = (F @ Z2))) & ((Xs = (map_ty_list_char @ F @ Zs)))))))))))). % Cons_eq_map_conv
thf(fact_173_Cons__eq__map__conv, axiom,
    ((![X2 : list_char, Xs : list_list_char, F : val > list_char, Ys : list_val]: (((cons_list_char @ X2 @ Xs) = (map_val_list_char @ F @ Ys)) = (?[Z2 : val]: (?[Zs : list_val]: (((Ys = (cons_val @ Z2 @ Zs))) & ((((X2 = (F @ Z2))) & ((Xs = (map_val_list_char @ F @ Zs)))))))))))). % Cons_eq_map_conv
thf(fact_174_Cons__eq__map__conv, axiom,
    ((![X2 : ty, Xs : list_ty, F : list_char > ty, Ys : list_list_char]: (((cons_ty @ X2 @ Xs) = (map_list_char_ty @ F @ Ys)) = (?[Z2 : list_char]: (?[Zs : list_list_char]: (((Ys = (cons_list_char @ Z2 @ Zs))) & ((((X2 = (F @ Z2))) & ((Xs = (map_list_char_ty @ F @ Zs)))))))))))). % Cons_eq_map_conv
thf(fact_175_Cons__eq__map__conv, axiom,
    ((![X2 : val, Xs : list_val, F : list_char > val, Ys : list_list_char]: (((cons_val @ X2 @ Xs) = (map_list_char_val @ F @ Ys)) = (?[Z2 : list_char]: (?[Zs : list_list_char]: (((Ys = (cons_list_char @ Z2 @ Zs))) & ((((X2 = (F @ Z2))) & ((Xs = (map_list_char_val @ F @ Zs)))))))))))). % Cons_eq_map_conv
thf(fact_176_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_177_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_178_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_179_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_180_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_181_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_182_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_183_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_184_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_185_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_186_not__Some__eq, axiom,
    ((![X2 : option2118145160on_val]: ((![Y4 : produc266837688on_val]: (~ ((X2 = (some_P1299442195on_val @ Y4))))) = (X2 = none_P1535574167on_val))))). % not_Some_eq
thf(fact_187_not__Some__eq, axiom,
    ((![X2 : option_ty]: ((![Y4 : ty]: (~ ((X2 = (some_ty @ Y4))))) = (X2 = none_ty))))). % not_Some_eq
thf(fact_188_not__Some__eq, axiom,
    ((![X2 : option_val]: ((![Y4 : val]: (~ ((X2 = (some_val @ Y4))))) = (X2 = none_val))))). % not_Some_eq
thf(fact_189_not__None__eq, axiom,
    ((![X2 : option2118145160on_val]: ((~ ((X2 = none_P1535574167on_val))) = (?[Y4 : produc266837688on_val]: (X2 = (some_P1299442195on_val @ Y4))))))). % not_None_eq
thf(fact_190_not__None__eq, axiom,
    ((![X2 : option_ty]: ((~ ((X2 = none_ty))) = (?[Y4 : ty]: (X2 = (some_ty @ Y4))))))). % not_None_eq
thf(fact_191_not__None__eq, axiom,
    ((![X2 : option_val]: ((~ ((X2 = none_val))) = (?[Y4 : val]: (X2 = (some_val @ Y4))))))). % not_None_eq
thf(fact_192_map__eq__Cons__conv, axiom,
    ((![F : ty > ty, Xs : list_ty, Y3 : ty, Ys : list_ty]: (((map_ty_ty @ F @ Xs) = (cons_ty @ Y3 @ Ys)) = (?[Z2 : ty]: (?[Zs : list_ty]: (((Xs = (cons_ty @ Z2 @ Zs))) & (((((F @ Z2) = Y3)) & (((map_ty_ty @ F @ Zs) = Ys))))))))))). % map_eq_Cons_conv
thf(fact_193_map__eq__Cons__conv, axiom,
    ((![F : val > ty, Xs : list_val, Y3 : ty, Ys : list_ty]: (((map_val_ty @ F @ Xs) = (cons_ty @ Y3 @ Ys)) = (?[Z2 : val]: (?[Zs : list_val]: (((Xs = (cons_val @ Z2 @ Zs))) & (((((F @ Z2) = Y3)) & (((map_val_ty @ F @ Zs) = Ys))))))))))). % map_eq_Cons_conv
thf(fact_194_map__eq__Cons__conv, axiom,
    ((![F : ty > val, Xs : list_ty, Y3 : val, Ys : list_val]: (((map_ty_val @ F @ Xs) = (cons_val @ Y3 @ Ys)) = (?[Z2 : ty]: (?[Zs : list_ty]: (((Xs = (cons_ty @ Z2 @ Zs))) & (((((F @ Z2) = Y3)) & (((map_ty_val @ F @ Zs) = Ys))))))))))). % map_eq_Cons_conv
thf(fact_195_map__eq__Cons__conv, axiom,
    ((![F : val > val, Xs : list_val, Y3 : val, Ys : list_val]: (((map_val_val @ F @ Xs) = (cons_val @ Y3 @ Ys)) = (?[Z2 : val]: (?[Zs : list_val]: (((Xs = (cons_val @ Z2 @ Zs))) & (((((F @ Z2) = Y3)) & (((map_val_val @ F @ Zs) = Ys))))))))))). % map_eq_Cons_conv
thf(fact_196_map__eq__Cons__conv, axiom,
    ((![F : ty > option_ty, Xs : list_ty, Y3 : option_ty, Ys : list_option_ty]: (((map_ty_option_ty @ F @ Xs) = (cons_option_ty @ Y3 @ Ys)) = (?[Z2 : ty]: (?[Zs : list_ty]: (((Xs = (cons_ty @ Z2 @ Zs))) & (((((F @ Z2) = Y3)) & (((map_ty_option_ty @ F @ Zs) = Ys))))))))))). % map_eq_Cons_conv
thf(fact_197_map__eq__Cons__conv, axiom,
    ((![F : val > option_ty, Xs : list_val, Y3 : option_ty, Ys : list_option_ty]: (((map_val_option_ty @ F @ Xs) = (cons_option_ty @ Y3 @ Ys)) = (?[Z2 : val]: (?[Zs : list_val]: (((Xs = (cons_val @ Z2 @ Zs))) & (((((F @ Z2) = Y3)) & (((map_val_option_ty @ F @ Zs) = Ys))))))))))). % map_eq_Cons_conv
thf(fact_198_map__eq__Cons__conv, axiom,
    ((![F : ty > list_char, Xs : list_ty, Y3 : list_char, Ys : list_list_char]: (((map_ty_list_char @ F @ Xs) = (cons_list_char @ Y3 @ Ys)) = (?[Z2 : ty]: (?[Zs : list_ty]: (((Xs = (cons_ty @ Z2 @ Zs))) & (((((F @ Z2) = Y3)) & (((map_ty_list_char @ F @ Zs) = Ys))))))))))). % map_eq_Cons_conv
thf(fact_199_map__eq__Cons__conv, axiom,
    ((![F : val > list_char, Xs : list_val, Y3 : list_char, Ys : list_list_char]: (((map_val_list_char @ F @ Xs) = (cons_list_char @ Y3 @ Ys)) = (?[Z2 : val]: (?[Zs : list_val]: (((Xs = (cons_val @ Z2 @ Zs))) & (((((F @ Z2) = Y3)) & (((map_val_list_char @ F @ Zs) = Ys))))))))))). % map_eq_Cons_conv
thf(fact_200_map__eq__Cons__conv, axiom,
    ((![F : list_char > ty, Xs : list_list_char, Y3 : ty, Ys : list_ty]: (((map_list_char_ty @ F @ Xs) = (cons_ty @ Y3 @ Ys)) = (?[Z2 : list_char]: (?[Zs : list_list_char]: (((Xs = (cons_list_char @ Z2 @ Zs))) & (((((F @ Z2) = Y3)) & (((map_list_char_ty @ F @ Zs) = Ys))))))))))). % map_eq_Cons_conv
thf(fact_201_map__eq__Cons__conv, axiom,
    ((![F : list_char > val, Xs : list_list_char, Y3 : val, Ys : list_val]: (((map_list_char_val @ F @ Xs) = (cons_val @ Y3 @ Ys)) = (?[Z2 : list_char]: (?[Zs : list_list_char]: (((Xs = (cons_list_char @ Z2 @ Zs))) & (((((F @ Z2) = Y3)) & (((map_list_char_val @ F @ Zs) = Ys))))))))))). % map_eq_Cons_conv
thf(fact_202_map__eq__Cons__D, axiom,
    ((![F : ty > ty, Xs : list_ty, Y3 : ty, Ys : list_ty]: (((map_ty_ty @ F @ Xs) = (cons_ty @ Y3 @ Ys)) => (?[Z3 : ty, Zs2 : list_ty]: ((Xs = (cons_ty @ Z3 @ Zs2)) & (((F @ Z3) = Y3) & ((map_ty_ty @ F @ Zs2) = Ys)))))))). % map_eq_Cons_D
thf(fact_203_map__eq__Cons__D, axiom,
    ((![F : val > ty, Xs : list_val, Y3 : ty, Ys : list_ty]: (((map_val_ty @ F @ Xs) = (cons_ty @ Y3 @ Ys)) => (?[Z3 : val, Zs2 : list_val]: ((Xs = (cons_val @ Z3 @ Zs2)) & (((F @ Z3) = Y3) & ((map_val_ty @ F @ Zs2) = Ys)))))))). % map_eq_Cons_D
thf(fact_204_map__eq__Cons__D, axiom,
    ((![F : ty > val, Xs : list_ty, Y3 : val, Ys : list_val]: (((map_ty_val @ F @ Xs) = (cons_val @ Y3 @ Ys)) => (?[Z3 : ty, Zs2 : list_ty]: ((Xs = (cons_ty @ Z3 @ Zs2)) & (((F @ Z3) = Y3) & ((map_ty_val @ F @ Zs2) = Ys)))))))). % map_eq_Cons_D
thf(fact_205_map__eq__Cons__D, axiom,
    ((![F : val > val, Xs : list_val, Y3 : val, Ys : list_val]: (((map_val_val @ F @ Xs) = (cons_val @ Y3 @ Ys)) => (?[Z3 : val, Zs2 : list_val]: ((Xs = (cons_val @ Z3 @ Zs2)) & (((F @ Z3) = Y3) & ((map_val_val @ F @ Zs2) = Ys)))))))). % map_eq_Cons_D
thf(fact_206_map__eq__Cons__D, axiom,
    ((![F : ty > option_ty, Xs : list_ty, Y3 : option_ty, Ys : list_option_ty]: (((map_ty_option_ty @ F @ Xs) = (cons_option_ty @ Y3 @ Ys)) => (?[Z3 : ty, Zs2 : list_ty]: ((Xs = (cons_ty @ Z3 @ Zs2)) & (((F @ Z3) = Y3) & ((map_ty_option_ty @ F @ Zs2) = Ys)))))))). % map_eq_Cons_D
thf(fact_207_map__eq__Cons__D, axiom,
    ((![F : val > option_ty, Xs : list_val, Y3 : option_ty, Ys : list_option_ty]: (((map_val_option_ty @ F @ Xs) = (cons_option_ty @ Y3 @ Ys)) => (?[Z3 : val, Zs2 : list_val]: ((Xs = (cons_val @ Z3 @ Zs2)) & (((F @ Z3) = Y3) & ((map_val_option_ty @ F @ Zs2) = Ys)))))))). % map_eq_Cons_D
thf(fact_208_map__eq__Cons__D, axiom,
    ((![F : ty > list_char, Xs : list_ty, Y3 : list_char, Ys : list_list_char]: (((map_ty_list_char @ F @ Xs) = (cons_list_char @ Y3 @ Ys)) => (?[Z3 : ty, Zs2 : list_ty]: ((Xs = (cons_ty @ Z3 @ Zs2)) & (((F @ Z3) = Y3) & ((map_ty_list_char @ F @ Zs2) = Ys)))))))). % map_eq_Cons_D
thf(fact_209_map__eq__Cons__D, axiom,
    ((![F : val > list_char, Xs : list_val, Y3 : list_char, Ys : list_list_char]: (((map_val_list_char @ F @ Xs) = (cons_list_char @ Y3 @ Ys)) => (?[Z3 : val, Zs2 : list_val]: ((Xs = (cons_val @ Z3 @ Zs2)) & (((F @ Z3) = Y3) & ((map_val_list_char @ F @ Zs2) = Ys)))))))). % map_eq_Cons_D
thf(fact_210_map__eq__Cons__D, axiom,
    ((![F : list_char > ty, Xs : list_list_char, Y3 : ty, Ys : list_ty]: (((map_list_char_ty @ F @ Xs) = (cons_ty @ Y3 @ Ys)) => (?[Z3 : list_char, Zs2 : list_list_char]: ((Xs = (cons_list_char @ Z3 @ Zs2)) & (((F @ Z3) = Y3) & ((map_list_char_ty @ F @ Zs2) = Ys)))))))). % map_eq_Cons_D
thf(fact_211_map__eq__Cons__D, axiom,
    ((![F : list_char > val, Xs : list_list_char, Y3 : val, Ys : list_val]: (((map_list_char_val @ F @ Xs) = (cons_val @ Y3 @ Ys)) => (?[Z3 : list_char, Zs2 : list_list_char]: ((Xs = (cons_list_char @ Z3 @ Zs2)) & (((F @ Z3) = Y3) & ((map_list_char_val @ F @ Zs2) = Ys)))))))). % map_eq_Cons_D
thf(fact_212_Cons__eq__map__D, axiom,
    ((![X2 : val, Xs : list_val, F : ty > val, Ys : list_ty]: (((cons_val @ X2 @ Xs) = (map_ty_val @ F @ Ys)) => (?[Z3 : ty, Zs2 : list_ty]: ((Ys = (cons_ty @ Z3 @ Zs2)) & ((X2 = (F @ Z3)) & (Xs = (map_ty_val @ F @ Zs2))))))))). % Cons_eq_map_D
thf(fact_213_Cons__eq__map__D, axiom,
    ((![X2 : val, Xs : list_val, F : exp_list_char > val, Ys : list_exp_list_char]: (((cons_val @ X2 @ Xs) = (map_ex815323271ar_val @ F @ Ys)) => (?[Z3 : exp_list_char, Zs2 : list_exp_list_char]: ((Ys = (cons_exp_list_char @ Z3 @ Zs2)) & ((X2 = (F @ Z3)) & (Xs = (map_ex815323271ar_val @ F @ Zs2))))))))). % Cons_eq_map_D
thf(fact_214_Cons__eq__map__D, axiom,
    ((![X2 : val, Xs : list_val, F : val > val, Ys : list_val]: (((cons_val @ X2 @ Xs) = (map_val_val @ F @ Ys)) => (?[Z3 : val, Zs2 : list_val]: ((Ys = (cons_val @ Z3 @ Zs2)) & ((X2 = (F @ Z3)) & (Xs = (map_val_val @ F @ Zs2))))))))). % Cons_eq_map_D
thf(fact_215_WTrts__same__length, axiom,
    ((![P : list_P1234162913t_char, H : nat > option2118145160on_val, E : list_char > option_ty, Es : list_exp_list_char, Ts : list_ty]: ((wTrts @ P @ H @ E @ Es @ Ts) => ((size_s329991613t_char @ Es) = (size_size_list_ty @ Ts)))))). % WTrts_same_length
thf(fact_216_WTrtCons, axiom,
    ((![P : list_P1234162913t_char, H : nat > option2118145160on_val, E : list_char > option_ty, E2 : exp_list_char, T2 : ty, Es : list_exp_list_char, Ts : list_ty]: ((wTrt @ P @ H @ E @ E2 @ T2) => ((wTrts @ P @ H @ E @ Es @ Ts) => (wTrts @ P @ H @ E @ (cons_exp_list_char @ E2 @ Es) @ (cons_ty @ T2 @ Ts))))))). % WTrtCons
thf(fact_217_RedCall_Oprems_I2_J, axiom,
    ((wTrt @ p @ ha @ e @ (call_list_char @ (val_list_char @ (addr @ a)) @ m @ (map_va1515327237t_char @ val_list_char @ vs)) @ t2))). % RedCall.prems(2)
thf(fact_218_wt, axiom,
    ((wTrt @ p @ ha @ e @ (call_list_char @ (val_list_char @ (addr @ a)) @ m @ (map_va1515327237t_char @ val_list_char @ vs)) @ t2))). % wt
thf(fact_219_WTrtCall, axiom,
    ((![P : list_P1234162913t_char, H : nat > option2118145160on_val, E : list_char > option_ty, E2 : exp_list_char, C2 : list_char, M : list_char, Ts : list_ty, T2 : ty, Pns : list_list_char, Body : exp_list_char, D3 : list_char, Es : list_exp_list_char, Ts4 : list_ty]: ((wTrt @ P @ H @ E @ E2 @ (class @ C2)) => ((method297381284t_char @ P @ C2 @ M @ Ts @ T2 @ (produc713467969t_char @ Pns @ Body) @ D3) => ((wTrts @ P @ H @ E @ Es @ Ts4) => ((list_all2_ty_ty @ (widen_917054840t_char @ P) @ Ts4 @ Ts) => (wTrt @ P @ H @ E @ (call_list_char @ E2 @ M @ Es) @ T2)))))))). % WTrtCall
thf(fact_220_red__reds_ORedCall, axiom,
    ((![S2 : produc515445032on_val, A2 : nat, C2 : list_char, Fs : produc1257910179t_char > option_val, P : list_P1234162913t_char, M : list_char, Ts : list_ty, T2 : ty, Pns : list_list_char, Body : exp_list_char, D3 : list_char, Vs : list_val]: (((hp @ S2 @ A2) = (some_P1299442195on_val @ (produc904988266on_val @ C2 @ Fs))) => ((method297381284t_char @ P @ C2 @ M @ Ts @ T2 @ (produc713467969t_char @ Pns @ Body) @ D3) => (((size_size_list_val @ Vs) = (size_s2008079621t_char @ Pns)) => (((size_size_list_ty @ Ts) = (size_s2008079621t_char @ Pns)) => (member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ (call_list_char @ (val_list_char @ (addr @ A2)) @ M @ (map_va1515327237t_char @ val_list_char @ Vs)) @ S2) @ (produc2023458740on_val @ (blocks @ (produc1808722894t_char @ (cons_list_char @ this @ Pns) @ (produc1806338192t_char @ (cons_ty @ (class @ D3) @ Ts) @ (produc823987298t_char @ (cons_val @ (addr @ A2) @ Vs) @ Body)))) @ S2)) @ (red @ P))))))))). % red_reds.RedCall
thf(fact_221_redp__redsp_ORedCall, axiom,
    ((![S2 : produc515445032on_val, A2 : nat, C2 : list_char, Fs : produc1257910179t_char > option_val, P : list_P1234162913t_char, M : list_char, Ts : list_ty, T2 : ty, Pns : list_list_char, Body : exp_list_char, D3 : list_char, Vs : list_val]: (((hp @ S2 @ A2) = (some_P1299442195on_val @ (produc904988266on_val @ C2 @ Fs))) => ((method297381284t_char @ P @ C2 @ M @ Ts @ T2 @ (produc713467969t_char @ Pns @ Body) @ D3) => (((size_size_list_val @ Vs) = (size_s2008079621t_char @ Pns)) => (((size_size_list_ty @ Ts) = (size_s2008079621t_char @ Pns)) => (redp @ P @ (call_list_char @ (val_list_char @ (addr @ A2)) @ M @ (map_va1515327237t_char @ val_list_char @ Vs)) @ S2 @ (blocks @ (produc1808722894t_char @ (cons_list_char @ this @ Pns) @ (produc1806338192t_char @ (cons_ty @ (class @ D3) @ Ts) @ (produc823987298t_char @ (cons_val @ (addr @ A2) @ Vs) @ Body)))) @ S2)))))))). % redp_redsp.RedCall
thf(fact_222_val_Oinject_I3_J, axiom,
    ((![X5 : nat, Y5 : nat]: (((addr @ X5) = (addr @ Y5)) = (X5 = Y5))))). % val.inject(3)
thf(fact_223_red__reds_OCallObj, axiom,
    ((![E2 : exp_list_char, S2 : produc515445032on_val, E3 : exp_list_char, S3 : produc515445032on_val, P : list_P1234162913t_char, M : list_char, Es : list_exp_list_char]: ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ E2 @ S2) @ (produc2023458740on_val @ E3 @ S3)) @ (red @ P)) => (member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ (call_list_char @ E2 @ M @ Es) @ S2) @ (produc2023458740on_val @ (call_list_char @ E3 @ M @ Es) @ S3)) @ (red @ P)))))). % red_reds.CallObj
thf(fact_224_redp__redsp_OCallObj, axiom,
    ((![P : list_P1234162913t_char, E2 : exp_list_char, S2 : produc515445032on_val, E3 : exp_list_char, S3 : produc515445032on_val, M : list_char, Es : list_exp_list_char]: ((redp @ P @ E2 @ S2 @ E3 @ S3) => (redp @ P @ (call_list_char @ E2 @ M @ Es) @ S2 @ (call_list_char @ E3 @ M @ Es) @ S3))))). % redp_redsp.CallObj
thf(fact_225_redp__red__eq, axiom,
    ((redp = (^[P5 : list_P1234162913t_char]: (^[X : exp_list_char]: (^[Y4 : produc515445032on_val]: (^[Z2 : exp_list_char]: (^[Aa : produc515445032on_val]: (member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ X @ Y4) @ (produc2023458740on_val @ Z2 @ Aa)) @ (red @ P5)))))))))). % redp_red_eq
thf(fact_226_red__preserves__sconf, axiom,
    ((![E2 : exp_list_char, S2 : produc515445032on_val, E3 : exp_list_char, S3 : produc515445032on_val, P : list_P1234162913t_char, E : list_char > option_ty, T2 : ty]: ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ E2 @ S2) @ (produc2023458740on_val @ E3 @ S3)) @ (red @ P)) => ((wTrt @ P @ (hp @ S2) @ E @ E2 @ T2) => ((typeSa1777264139_sconf @ P @ E @ S2) => (typeSa1777264139_sconf @ P @ E @ S3))))))). % red_preserves_sconf
thf(fact_227_wt__blocks, axiom,
    ((![Vs2 : list_list_char, Ts : list_ty, Vs : list_val, P : list_P1234162913t_char, H : nat > option2118145160on_val, E : list_char > option_ty, E2 : exp_list_char, T2 : ty]: (((size_s2008079621t_char @ Vs2) = (size_size_list_ty @ Ts)) => (((size_size_list_val @ Vs) = (size_size_list_ty @ Ts)) => ((wTrt @ P @ H @ E @ (blocks @ (produc1808722894t_char @ Vs2 @ (produc1806338192t_char @ Ts @ (produc823987298t_char @ Vs @ E2)))) @ T2) = (((wTrt @ P @ H @ (map_up703499792har_ty @ E @ Vs2 @ Ts) @ E2 @ T2)) & ((?[Ts5 : list_ty]: ((((map_val_option_ty @ (typeof_h @ H) @ Vs) = (map_ty_option_ty @ some_ty @ Ts5))) & ((list_all2_ty_ty @ (widen_917054840t_char @ P) @ Ts5 @ Ts)))))))))))). % wt_blocks
thf(fact_228_WT__elim__cases_I11_J, axiom,
    ((![P : list_P1234162913t_char, E : list_char > option_ty, E2 : exp_list_char, M : list_char, Ps : list_exp_list_char, T2 : ty]: ((wt @ P @ E @ (call_list_char @ E2 @ M @ Ps) @ T2) => (~ ((![C4 : list_char]: ((wt @ P @ E @ E2 @ (class @ C4)) => (![Ts6 : list_ty]: ((?[Pns2 : list_list_char, Body2 : exp_list_char, X_1 : list_char]: (method297381284t_char @ P @ C4 @ M @ Ts6 @ T2 @ (produc713467969t_char @ Pns2 @ Body2) @ X_1)) => (![Ts3 : list_ty]: ((wTs @ P @ E @ Ps @ Ts3) => (~ ((list_all2_ty_ty @ (widen_917054840t_char @ P) @ Ts3 @ Ts6))))))))))))))). % WT_elim_cases(11)
thf(fact_229_WTCall, axiom,
    ((![P : list_P1234162913t_char, E : list_char > option_ty, E2 : exp_list_char, C2 : list_char, M : list_char, Ts : list_ty, T2 : ty, Pns : list_list_char, Body : exp_list_char, D3 : list_char, Es : list_exp_list_char, Ts4 : list_ty]: ((wt @ P @ E @ E2 @ (class @ C2)) => ((method297381284t_char @ P @ C2 @ M @ Ts @ T2 @ (produc713467969t_char @ Pns @ Body) @ D3) => ((wTs @ P @ E @ Es @ Ts4) => ((list_all2_ty_ty @ (widen_917054840t_char @ P) @ Ts4 @ Ts) => (wt @ P @ E @ (call_list_char @ E2 @ M @ Es) @ T2)))))))). % WTCall
thf(fact_230_WTrts__Val, axiom,
    ((![P : list_P1234162913t_char, H : nat > option2118145160on_val, E : list_char > option_ty, Vs : list_val, Ts : list_ty]: ((wTrts @ P @ H @ E @ (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_231_WTVal, axiom,
    ((![V : val, T2 : ty, P : list_P1234162913t_char, E : list_char > option_ty]: (((typeof_h @ (^[X : nat]: none_P1535574167on_val) @ V) = (some_ty @ T2)) => (wt @ P @ E @ (val_list_char @ V) @ T2))))). % WTVal
thf(fact_232_WTs__implies__WTrts, axiom,
    ((![P : list_P1234162913t_char, E : list_char > option_ty, Es : list_exp_list_char, Ts : list_ty, H : nat > option2118145160on_val]: ((wTs @ P @ E @ Es @ Ts) => (wTrts @ P @ H @ E @ Es @ Ts))))). % WTs_implies_WTrts
thf(fact_233_WTrtVal, axiom,
    ((![H : nat > option2118145160on_val, V : val, T2 : ty, P : list_P1234162913t_char, E : list_char > option_ty]: (((typeof_h @ H @ V) = (some_ty @ T2)) => (wTrt @ P @ H @ E @ (val_list_char @ V) @ T2))))). % WTrtVal
thf(fact_234_WTCons, axiom,
    ((![P : list_P1234162913t_char, E : list_char > option_ty, E2 : exp_list_char, T2 : ty, Es : list_exp_list_char, Ts : list_ty]: ((wt @ P @ E @ E2 @ T2) => ((wTs @ P @ E @ Es @ Ts) => (wTs @ P @ E @ (cons_exp_list_char @ E2 @ Es) @ (cons_ty @ T2 @ Ts))))))). % WTCons
thf(fact_235_typeof__lit__typeof, axiom,
    ((![V : val, T2 : ty, H : nat > option2118145160on_val]: (((typeof_h @ (^[X : nat]: none_P1535574167on_val) @ V) = (some_ty @ T2)) => ((typeof_h @ H @ V) = (some_ty @ T2)))))). % typeof_lit_typeof
thf(fact_236_red__preserves__hconf, axiom,
    ((![E2 : exp_list_char, H : nat > option2118145160on_val, L : list_char > option_val, E3 : exp_list_char, H2 : nat > option2118145160on_val, L2 : list_char > option_val, P : list_P1234162913t_char, E : list_char > option_ty, T2 : ty]: ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ E2 @ (produc52622304on_val @ H @ L)) @ (produc2023458740on_val @ E3 @ (produc52622304on_val @ H2 @ L2))) @ (red @ P)) => ((wTrt @ P @ H @ E @ E2 @ T2) => ((hconf_1244167010t_char @ P @ H) => (hconf_1244167010t_char @ P @ H2))))))). % red_preserves_hconf
thf(fact_237_red__preserves__lconf, axiom,
    ((![E2 : exp_list_char, H : nat > option2118145160on_val, L : list_char > option_val, E3 : exp_list_char, H2 : nat > option2118145160on_val, L2 : list_char > option_val, P : list_P1234162913t_char, E : list_char > option_ty, T2 : ty]: ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ E2 @ (produc52622304on_val @ H @ L)) @ (produc2023458740on_val @ E3 @ (produc52622304on_val @ H2 @ L2))) @ (red @ P)) => ((wTrt @ P @ H @ E @ E2 @ T2) => ((lconf_485928294t_char @ P @ H @ L @ E) => (lconf_485928294t_char @ P @ H2 @ L2 @ E))))))). % red_preserves_lconf
thf(fact_238_red__reds_ORedFAcc, axiom,
    ((![S2 : produc515445032on_val, A2 : nat, C2 : list_char, Fs : produc1257910179t_char > option_val, F2 : list_char, D3 : list_char, V : val, P : list_P1234162913t_char]: (((hp @ S2 @ A2) = (some_P1299442195on_val @ (produc904988266on_val @ C2 @ Fs))) => (((Fs @ (produc1304532571t_char @ F2 @ D3)) = (some_val @ V)) => (member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ (fAcc_list_char @ (val_list_char @ (addr @ A2)) @ F2 @ D3) @ S2) @ (produc2023458740on_val @ (val_list_char @ V) @ S2)) @ (red @ P))))))). % red_reds.RedFAcc
thf(fact_239_redp__redsp_OFAccRed, axiom,
    ((![P : list_P1234162913t_char, E2 : exp_list_char, S2 : produc515445032on_val, E3 : exp_list_char, S3 : produc515445032on_val, F2 : list_char, D3 : list_char]: ((redp @ P @ E2 @ S2 @ E3 @ S3) => (redp @ P @ (fAcc_list_char @ E2 @ F2 @ D3) @ S2 @ (fAcc_list_char @ E3 @ F2 @ D3) @ S3))))). % redp_redsp.FAccRed
thf(fact_240_red__reds_OFAccRed, axiom,
    ((![E2 : exp_list_char, S2 : produc515445032on_val, E3 : exp_list_char, S3 : produc515445032on_val, P : list_P1234162913t_char, F2 : list_char, D3 : list_char]: ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ E2 @ S2) @ (produc2023458740on_val @ E3 @ S3)) @ (red @ P)) => (member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ (fAcc_list_char @ E2 @ F2 @ D3) @ S2) @ (produc2023458740on_val @ (fAcc_list_char @ E3 @ F2 @ D3) @ S3)) @ (red @ P)))))). % red_reds.FAccRed
thf(fact_241_redp__redsp_ORedFAcc, axiom,
    ((![S2 : produc515445032on_val, A2 : nat, C2 : list_char, Fs : produc1257910179t_char > option_val, F2 : list_char, D3 : list_char, V : val, P : list_P1234162913t_char]: (((hp @ S2 @ A2) = (some_P1299442195on_val @ (produc904988266on_val @ C2 @ Fs))) => (((Fs @ (produc1304532571t_char @ F2 @ D3)) = (some_val @ V)) => (redp @ P @ (fAcc_list_char @ (val_list_char @ (addr @ A2)) @ F2 @ D3) @ S2 @ (val_list_char @ V) @ S2)))))). % redp_redsp.RedFAcc
thf(fact_242_FAccRedsVal, axiom,
    ((![E2 : exp_list_char, S2 : produc515445032on_val, A2 : nat, S3 : produc515445032on_val, P : list_P1234162913t_char, C2 : list_char, Fs : produc1257910179t_char > option_val, F2 : list_char, D3 : list_char, V : val]: ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ E2 @ S2) @ (produc2023458740on_val @ (val_list_char @ (addr @ A2)) @ S3)) @ (transi111096263on_val @ (red @ P))) => (((hp @ S3 @ A2) = (some_P1299442195on_val @ (produc904988266on_val @ C2 @ Fs))) => (((Fs @ (produc1304532571t_char @ F2 @ D3)) = (some_val @ V)) => (member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ (fAcc_list_char @ E2 @ F2 @ D3) @ S2) @ (produc2023458740on_val @ (val_list_char @ V) @ S3)) @ (transi111096263on_val @ (red @ P))))))))). % FAccRedsVal
thf(fact_243_CallRedsObj, axiom,
    ((![E2 : exp_list_char, S2 : produc515445032on_val, E3 : exp_list_char, S3 : produc515445032on_val, P : list_P1234162913t_char, M : list_char, Es : list_exp_list_char]: ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ E2 @ S2) @ (produc2023458740on_val @ E3 @ S3)) @ (transi111096263on_val @ (red @ P))) => (member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ (call_list_char @ E2 @ M @ Es) @ S2) @ (produc2023458740on_val @ (call_list_char @ E3 @ M @ Es) @ S3)) @ (transi111096263on_val @ (red @ P))))))). % CallRedsObj
thf(fact_244_FAccReds, axiom,
    ((![E2 : exp_list_char, S2 : produc515445032on_val, E3 : exp_list_char, S3 : produc515445032on_val, P : list_P1234162913t_char, F2 : list_char, D3 : list_char]: ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ E2 @ S2) @ (produc2023458740on_val @ E3 @ S3)) @ (transi111096263on_val @ (red @ P))) => (member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ (fAcc_list_char @ E2 @ F2 @ D3) @ S2) @ (produc2023458740on_val @ (fAcc_list_char @ E3 @ F2 @ D3) @ S3)) @ (transi111096263on_val @ (red @ P))))))). % FAccReds
thf(fact_245_converse__rtrancl__induct__red, axiom,
    ((![E2 : exp_list_char, H : nat > option2118145160on_val, L : list_char > option_val, E3 : exp_list_char, H2 : nat > option2118145160on_val, L2 : list_char > option_val, P : list_P1234162913t_char, R : exp_list_char > (nat > option2118145160on_val) > (list_char > option_val) > exp_list_char > (nat > option2118145160on_val) > (list_char > option_val) > $o]: ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ E2 @ (produc52622304on_val @ H @ L)) @ (produc2023458740on_val @ E3 @ (produc52622304on_val @ H2 @ L2))) @ (transi111096263on_val @ (red @ P))) => ((![E4 : exp_list_char, H3 : nat > option2118145160on_val, L3 : list_char > option_val]: (R @ E4 @ H3 @ L3 @ E4 @ H3 @ L3)) => ((![E_0 : exp_list_char, H_0 : nat > option2118145160on_val, L_0 : list_char > option_val, E_1 : exp_list_char, H_1 : nat > option2118145160on_val, L_1 : list_char > option_val, E5 : exp_list_char, H4 : nat > option2118145160on_val, L4 : list_char > option_val]: ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ E_0 @ (produc52622304on_val @ H_0 @ L_0)) @ (produc2023458740on_val @ E_1 @ (produc52622304on_val @ H_1 @ L_1))) @ (red @ P)) => ((R @ E_1 @ H_1 @ L_1 @ E5 @ H4 @ L4) => (R @ E_0 @ H_0 @ L_0 @ E5 @ H4 @ L4)))) => (R @ E2 @ H @ L @ E3 @ H2 @ L2))))))). % converse_rtrancl_induct_red
thf(fact_246_blocksFinal, axiom,
    ((![Vs2 : list_list_char, Ts : list_ty, Vs : list_val, E2 : exp_list_char, H : nat > option2118145160on_val, L : list_char > option_val, P : list_P1234162913t_char]: (((size_s2008079621t_char @ Vs2) = (size_size_list_ty @ Ts)) => (((size_size_list_val @ Vs) = (size_size_list_ty @ Ts)) => ((final_list_char @ E2) => (member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ (blocks @ (produc1808722894t_char @ Vs2 @ (produc1806338192t_char @ Ts @ (produc823987298t_char @ Vs @ E2)))) @ (produc52622304on_val @ H @ L)) @ (produc2023458740on_val @ E2 @ (produc52622304on_val @ H @ L))) @ (transi111096263on_val @ (red @ P))))))))). % blocksFinal

% Conjectures (1)
thf(conj_0, conjecture,
    ((wTrt @ p @ ha @ (map_up703499792har_ty @ (^[X : list_char]: none_ty) @ (cons_list_char @ this @ pns) @ (cons_ty @ (class @ d) @ ts2)) @ body @ t))).
