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

% Could-be-implicit typings (24)
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_It__List__Olist_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_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__List__Olist_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_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_Pr208351751on_val : $tType).
thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__List__Olist_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_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__List__Olist_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_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,
    produc655058983on_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__Set__Oset_It__Product____Type__Oprod_It__List__Olist_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_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,
    set_Pr1511552798on_val : $tType).
thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_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,
    produc335961278on_val : $tType).
thf(ty_n_t__Set__Oset_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,
    set_Pr556513572on_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__Set__Oset_It__Product____Type__Oprod_I_062_It__Nat__Onat_Mt__Option__Ooption_It__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_M_062_It__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Value__Oval_J_J_J_J_J_M_062_It__List__Olist_It__String__Ochar_J_Mt__Option__Ooption_It__Value__Oval_J_J_J_J, type,
    set_Pr723149704on_val : $tType).
thf(ty_n_t__Product____Type__Oprod_I_062_It__Nat__Onat_Mt__Option__Ooption_It__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_M_062_It__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Value__Oval_J_J_J_J_J_M_062_It__List__Olist_It__String__Ochar_J_Mt__Option__Ooption_It__Value__Oval_J_J_J, type,
    produc515445032on_val : $tType).
thf(ty_n_t__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__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__List__Olist_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J, type,
    list_exp_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).
thf(ty_n_t__Int__Oint, type,
    int : $tType).

% Explicit typings (66)
thf(sy_c_Conform_Oconf_001t__Product____Type__Oprod_It__List__Olist_It__List__Olist_It__String__Ochar_J_J_Mt__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J, type,
    conf_P93989998t_char : list_P1234162913t_char > (nat > option2118145160on_val) > val > ty > $o).
thf(sy_c_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_OCast_001t__List__Olist_It__String__Ochar_J, type,
    cast_list_char : list_char > exp_list_char > exp_list_char).
thf(sy_c_Expr_Oexp_OCond_001t__List__Olist_It__String__Ochar_J, type,
    cond_list_char : exp_list_char > exp_list_char > exp_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_Groups_Ozero__class_Ozero_001t__Nat__Onat, type,
    zero_zero_nat : nat).
thf(sy_c_JWellForm_Owf__J__mdecl, type,
    wf_J_mdecl : list_P1234162913t_char > list_char > produc1259892823t_char > $o).
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__Type__Oty, type,
    cons_ty : ty > list_ty > list_ty).
thf(sy_c_List_Olist_Olist__all2_001t__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_001t__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J, type,
    list_a1702871623t_char : (exp_list_char > exp_list_char > $o) > list_exp_list_char > list_exp_list_char > $o).
thf(sy_c_List_Olist_Olist__all2_001t__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_001t__Type__Oty, type,
    list_a295513531har_ty : (exp_list_char > ty > $o) > list_exp_list_char > list_ty > $o).
thf(sy_c_List_Olist_Olist__all2_001t__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__Type__Oty, type,
    list_all2_ty_ty : (ty > ty > $o) > list_ty > list_ty > $o).
thf(sy_c_List_Olist_Olist__all2_001t__Value__Oval_001t__Type__Oty, type,
    list_all2_val_ty : (val > ty > $o) > list_val > list_ty > $o).
thf(sy_c_Map_Omap__add_001t__List__Olist_It__String__Ochar_J_001t__Value__Oval, type,
    map_ad1615113112ar_val : (list_char > option_val) > (list_char > option_val) > list_char > option_val).
thf(sy_c_Nat_Osize__class_Osize_001t__Type__Oty, type,
    size_size_ty : ty > nat).
thf(sy_c_Nat_Osize__class_Osize_001t__Value__Oval, type,
    size_size_val : val > nat).
thf(sy_c_Objects_Ohext, type,
    hext : (nat > option2118145160on_val) > (nat > option2118145160on_val) > $o).
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__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__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,
    produc1725134254on_val : list_exp_list_char > produc515445032on_val > produc335961278on_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__Product____Type__Oprod_It__List__Olist_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_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__List__Olist_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_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,
    produc245869591on_val : produc335961278on_val > produc335961278on_val > produc655058983on_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_Set_OCollect_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__List__Olist_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_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__List__Olist_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_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,
    collec105960082on_val : (produc655058983on_val > $o) > set_Pr208351751on_val).
thf(sy_c_SmallStep_Ored, type,
    red : list_P1234162913t_char > set_Pr1189492743on_val).
thf(sy_c_SmallStep_Oreds, type,
    reds : list_P1234162913t_char > set_Pr208351751on_val).
thf(sy_c_SmallStep_Oredsp, type,
    redsp : list_P1234162913t_char > list_exp_list_char > produc515445032on_val > list_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_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_Oty_OBoolean, type,
    boolean : ty).
thf(sy_c_Type_Oty_ONT, type,
    nt : ty).
thf(sy_c_Type_Oty_Osize__ty, type,
    size_ty : ty > nat).
thf(sy_c_Value_Odefault__val, type,
    default_val : ty > val).
thf(sy_c_Value_Othe__Addr, type,
    the_Addr : val > nat).
thf(sy_c_Value_Othe__Intg, type,
    the_Intg : val > int).
thf(sy_c_Value_Oval_OAddr, type,
    addr : nat > val).
thf(sy_c_Value_Oval_OBool, type,
    bool : $o > val).
thf(sy_c_Value_Oval_OIntg, type,
    intg : int > val).
thf(sy_c_Value_Oval_ONull, type,
    null : val).
thf(sy_c_Value_Oval_OUnit, type,
    unit : val).
thf(sy_c_Value_Oval_Osize__val, type,
    size_val : val > nat).
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_member_001t__Product____Type__Oprod_I_062_It__Nat__Onat_Mt__Option__Ooption_It__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_M_062_It__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_Mt__Option__Ooption_It__Value__Oval_J_J_J_J_J_M_062_It__List__Olist_It__String__Ochar_J_Mt__Option__Ooption_It__Value__Oval_J_J_J, type,
    member652041809on_val : produc515445032on_val > set_Pr723149704on_val > $o).
thf(sy_c_member_001t__Product____Type__Oprod_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_Mt__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,
    member1888679917on_val : produc1097884484on_val > set_Pr556513572on_val > $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__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,
    member184158439on_val : produc335961278on_val > set_Pr1511552798on_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__Product____Type__Oprod_It__List__Olist_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_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__List__Olist_It__Expr__Oexp_It__List__Olist_It__String__Ochar_J_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,
    member1689761872on_val : produc655058983on_val > set_Pr208351751on_val > $o).
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____, type,
    t : ty).
thf(sy_v_Us____, type,
    us : list_ty).
thf(sy_v_es_Ha____, type,
    es_a : list_exp_list_char).
thf(sy_v_esa____, type,
    esa : list_exp_list_char).
thf(sy_v_h_Ha____, type,
    h_a : nat > option2118145160on_val).
thf(sy_v_ha____, type,
    ha : nat > option2118145160on_val).
thf(sy_v_l_Ha____, type,
    l_a : list_char > option_val).
thf(sy_v_la____, type,
    la : list_char > option_val).
thf(sy_v_v____, type,
    v : val).

% Relevant facts (179)
thf(fact_0_null, axiom,
    ((wTrt @ p @ ha @ e @ (val_list_char @ v) @ nt))). % null
thf(fact_1_default__val_Osimps_I4_J, axiom,
    (((default_val @ nt) = null))). % default_val.simps(4)
thf(fact_2_val_Odistinct_I11_J, axiom,
    ((![X4 : int]: (~ ((null = (intg @ X4))))))). % val.distinct(11)
thf(fact_3_val_Odistinct_I1_J, axiom,
    ((~ ((unit = null))))). % val.distinct(1)
thf(fact_4_wt, axiom,
    ((wTrt @ p @ ha @ e @ (call_list_char @ (val_list_char @ v) @ m @ esa) @ t))). % wt
thf(fact_5_val_Odistinct_I9_J, axiom,
    ((![X3 : $o]: (~ ((null = (bool @ X3))))))). % val.distinct(9)
thf(fact_6_val_Odistinct_I13_J, axiom,
    ((![X5 : nat]: (~ ((null = (addr @ X5))))))). % val.distinct(13)
thf(fact_7_val_Osize__gen_I2_J, axiom,
    (((size_val @ null) = zero_zero_nat))). % val.size_gen(2)
thf(fact_8_local_Owf, axiom,
    ((wf_pro1229751607t_char @ wf_J_mdecl @ p))). % local.wf
thf(fact_9_CallParams_Oprems_I2_J, axiom,
    ((wTrt @ p @ ha @ e @ (call_list_char @ (val_list_char @ v) @ m @ esa) @ t))). % CallParams.prems(2)
thf(fact_10_val_Oinject_I3_J, axiom,
    ((![X5 : nat, Y5 : nat]: (((addr @ X5) = (addr @ Y5)) = (X5 = Y5))))). % val.inject(3)
thf(fact_11_val_Oinject_I1_J, axiom,
    ((![X3 : $o, Y3 : $o]: (((bool @ X3) = (bool @ Y3)) = (X3 = Y3))))). % val.inject(1)
thf(fact_12_val_Oinject_I2_J, axiom,
    ((![X4 : int, Y4 : int]: (((intg @ X4) = (intg @ Y4)) = (X4 = Y4))))). % val.inject(2)
thf(fact_13_wtes, axiom,
    ((wTrts @ p @ ha @ e @ esa @ us))). % wtes
thf(fact_14_val_Odistinct_I19_J, axiom,
    ((![X4 : int, X5 : nat]: (~ (((intg @ X4) = (addr @ X5))))))). % val.distinct(19)
thf(fact_15_val_Odistinct_I17_J, axiom,
    ((![X3 : $o, X5 : nat]: (~ (((bool @ X3) = (addr @ X5))))))). % val.distinct(17)
thf(fact_16_val_Odistinct_I15_J, axiom,
    ((![X3 : $o, X4 : int]: (~ (((bool @ X3) = (intg @ X4))))))). % val.distinct(15)
thf(fact_17_val_Odistinct_I7_J, axiom,
    ((![X5 : nat]: (~ ((unit = (addr @ X5))))))). % val.distinct(7)
thf(fact_18_val_Odistinct_I5_J, axiom,
    ((![X4 : int]: (~ ((unit = (intg @ X4))))))). % val.distinct(5)
thf(fact_19_val_Odistinct_I3_J, axiom,
    ((![X3 : $o]: (~ ((unit = (bool @ X3))))))). % val.distinct(3)
thf(fact_20_val_Osize__gen_I5_J, axiom,
    ((![X5 : nat]: ((size_val @ (addr @ X5)) = zero_zero_nat)))). % val.size_gen(5)
thf(fact_21_val_Osize__gen_I4_J, axiom,
    ((![X4 : int]: ((size_val @ (intg @ X4)) = zero_zero_nat)))). % val.size_gen(4)
thf(fact_22_val_Osize__gen_I3_J, axiom,
    ((![X3 : $o]: ((size_val @ (bool @ X3)) = zero_zero_nat)))). % val.size_gen(3)
thf(fact_23_val_Osize__gen_I1_J, axiom,
    (((size_val @ unit) = zero_zero_nat))). % val.size_gen(1)
thf(fact_24_val_Oinduct, axiom,
    ((![P : val > $o, Val : val]: ((P @ unit) => ((P @ null) => ((![X : $o]: (P @ (bool @ X))) => ((![X : int]: (P @ (intg @ X))) => ((![X : nat]: (P @ (addr @ X))) => (P @ Val))))))))). % val.induct
thf(fact_25_val_Oexhaust, axiom,
    ((![Y : val]: ((~ ((Y = unit))) => ((~ ((Y = null))) => ((![X32 : $o]: (~ ((Y = (bool @ X32))))) => ((![X42 : int]: (~ ((Y = (intg @ X42))))) => (~ ((![X52 : nat]: (~ ((Y = (addr @ X52)))))))))))))). % val.exhaust
thf(fact_26_exp_Oinject_I9_J, axiom,
    ((![X91 : exp_list_char, X92 : list_char, X93 : list_exp_list_char, Y91 : exp_list_char, Y92 : list_char, Y93 : list_exp_list_char]: (((call_list_char @ X91 @ X92 @ X93) = (call_list_char @ Y91 @ Y92 @ Y93)) = (((X91 = Y91)) & ((((X92 = Y92)) & ((X93 = Y93))))))))). % exp.inject(9)
thf(fact_27_the__Intg_Osimps, axiom,
    ((![I : int]: ((the_Intg @ (intg @ I)) = I)))). % the_Intg.simps
thf(fact_28_exp_Oinject_I3_J, axiom,
    ((![X3 : val, Y3 : val]: (((val_list_char @ X3) = (val_list_char @ Y3)) = (X3 = Y3))))). % exp.inject(3)
thf(fact_29_exp_Odistinct_I65_J, axiom,
    ((![X3 : val, X91 : exp_list_char, X92 : list_char, X93 : list_exp_list_char]: (~ (((val_list_char @ X3) = (call_list_char @ X91 @ X92 @ X93))))))). % exp.distinct(65)
thf(fact_30_CallParams_Oprems_I1_J, axiom,
    ((typeSa1777264139_sconf @ p @ e @ (produc52622304on_val @ ha @ la)))). % CallParams.prems(1)
thf(fact_31_mem__Collect__eq, axiom,
    ((![A : produc655058983on_val, P : produc655058983on_val > $o]: ((member1689761872on_val @ A @ (collec105960082on_val @ P)) = (P @ A))))). % mem_Collect_eq
thf(fact_32_mem__Collect__eq, axiom,
    ((![A : produc1172664615on_val, P : produc1172664615on_val > $o]: ((member354538064on_val @ A @ (collec2055896722on_val @ P)) = (P @ A))))). % mem_Collect_eq
thf(fact_33_Collect__mem__eq, axiom,
    ((![A2 : set_Pr208351751on_val]: ((collec105960082on_val @ (^[X2 : produc655058983on_val]: (member1689761872on_val @ X2 @ A2))) = A2)))). % Collect_mem_eq
thf(fact_34_Collect__mem__eq, axiom,
    ((![A2 : set_Pr1189492743on_val]: ((collec2055896722on_val @ (^[X2 : produc1172664615on_val]: (member354538064on_val @ X2 @ A2))) = A2)))). % Collect_mem_eq
thf(fact_35_conf__Null, axiom,
    ((![P : list_P1234162913t_char, H : nat > option2118145160on_val, T : ty]: ((conf_P93989998t_char @ P @ H @ null @ T) = (widen_917054840t_char @ P @ nt @ T))))). % conf_Null
thf(fact_36_the__Addr_Osimps, axiom,
    ((![A : nat]: ((the_Addr @ (addr @ A)) = A)))). % the_Addr.simps
thf(fact_37_val_Osize_I9_J, axiom,
    ((![X4 : int]: ((size_size_val @ (intg @ X4)) = zero_zero_nat)))). % val.size(9)
thf(fact_38_val_Osize_I6_J, axiom,
    (((size_size_val @ unit) = zero_zero_nat))). % val.size(6)
thf(fact_39_conf, axiom,
    ((typeSa1777264139_sconf @ p @ e @ (produc52622304on_val @ ha @ la)))). % conf
thf(fact_40_conf__widen, axiom,
    ((![P : list_P1234162913t_char, H : nat > option2118145160on_val, V : val, T : ty, T2 : ty]: ((conf_P93989998t_char @ P @ H @ V @ T) => ((widen_917054840t_char @ P @ T @ T2) => (conf_P93989998t_char @ P @ H @ V @ T2)))))). % conf_widen
thf(fact_41_zero__reorient, axiom,
    ((![X6 : nat]: ((zero_zero_nat = X6) = (X6 = zero_zero_nat))))). % zero_reorient
thf(fact_42_val_Osize_I10_J, axiom,
    ((![X5 : nat]: ((size_size_val @ (addr @ X5)) = zero_zero_nat)))). % val.size(10)
thf(fact_43_val_Osize_I7_J, axiom,
    (((size_size_val @ null) = zero_zero_nat))). % val.size(7)
thf(fact_44_val_Osize_I8_J, axiom,
    ((![X3 : $o]: ((size_size_val @ (bool @ X3)) = zero_zero_nat)))). % val.size(8)
thf(fact_45_WTrtCallNT, axiom,
    ((![P : list_P1234162913t_char, H : nat > option2118145160on_val, E : list_char > option_ty, E2 : exp_list_char, Es : list_exp_list_char, Ts : list_ty, M : list_char, T : ty]: ((wTrt @ P @ H @ E @ E2 @ nt) => ((wTrts @ P @ H @ E @ Es @ Ts) => (wTrt @ P @ H @ E @ (call_list_char @ E2 @ M @ Es) @ T)))))). % WTrtCallNT
thf(fact_46_CallParams_Ohyps_I2_J, axiom,
    ((![E : list_char > option_ty, Ts : list_ty]: ((typeSa1777264139_sconf @ p @ E @ (produc52622304on_val @ ha @ la)) => ((wTrts @ p @ ha @ E @ esa @ Ts) => (?[Ts2 : list_ty]: ((wTrts @ p @ h_a @ E @ es_a @ Ts2) & (list_all2_ty_ty @ (widen_917054840t_char @ p) @ Ts2 @ Ts)))))))). % CallParams.hyps(2)
thf(fact_47_IH, axiom,
    ((![E : list_char > option_ty, Ts : list_ty]: ((typeSa1777264139_sconf @ p @ E @ (produc52622304on_val @ ha @ la)) => ((wTrts @ p @ ha @ E @ esa @ Ts) => (?[Us : list_ty]: ((wTrts @ p @ h_a @ E @ es_a @ Us) & (list_all2_ty_ty @ (widen_917054840t_char @ p) @ Us @ Ts)))))))). % IH
thf(fact_48_old_Oprod_Oinject, axiom,
    ((![A : nat > option2118145160on_val, B : list_char > option_val, A3 : nat > option2118145160on_val, B2 : list_char > option_val]: (((produc52622304on_val @ A @ B) = (produc52622304on_val @ A3 @ B2)) = (((A = A3)) & ((B = B2))))))). % old.prod.inject
thf(fact_49_old_Oprod_Oinject, axiom,
    ((![A : produc335961278on_val, B : produc335961278on_val, A3 : produc335961278on_val, B2 : produc335961278on_val]: (((produc245869591on_val @ A @ B) = (produc245869591on_val @ A3 @ B2)) = (((A = A3)) & ((B = B2))))))). % old.prod.inject
thf(fact_50_old_Oprod_Oinject, axiom,
    ((![A : list_exp_list_char, B : produc515445032on_val, A3 : list_exp_list_char, B2 : produc515445032on_val]: (((produc1725134254on_val @ A @ B) = (produc1725134254on_val @ A3 @ B2)) = (((A = A3)) & ((B = B2))))))). % old.prod.inject
thf(fact_51_old_Oprod_Oinject, axiom,
    ((![A : produc1097884484on_val, B : produc1097884484on_val, A3 : produc1097884484on_val, B2 : produc1097884484on_val]: (((produc1069526295on_val @ A @ B) = (produc1069526295on_val @ A3 @ B2)) = (((A = A3)) & ((B = B2))))))). % old.prod.inject
thf(fact_52_old_Oprod_Oinject, axiom,
    ((![A : exp_list_char, B : produc515445032on_val, A3 : exp_list_char, B2 : produc515445032on_val]: (((produc2023458740on_val @ A @ B) = (produc2023458740on_val @ A3 @ B2)) = (((A = A3)) & ((B = B2))))))). % old.prod.inject
thf(fact_53_prod_Oinject, axiom,
    ((![X1 : nat > option2118145160on_val, X22 : list_char > option_val, Y1 : nat > option2118145160on_val, Y2 : list_char > option_val]: (((produc52622304on_val @ X1 @ X22) = (produc52622304on_val @ Y1 @ Y2)) = (((X1 = Y1)) & ((X22 = Y2))))))). % prod.inject
thf(fact_54_prod_Oinject, axiom,
    ((![X1 : produc335961278on_val, X22 : produc335961278on_val, Y1 : produc335961278on_val, Y2 : produc335961278on_val]: (((produc245869591on_val @ X1 @ X22) = (produc245869591on_val @ Y1 @ Y2)) = (((X1 = Y1)) & ((X22 = Y2))))))). % prod.inject
thf(fact_55_prod_Oinject, axiom,
    ((![X1 : list_exp_list_char, X22 : produc515445032on_val, Y1 : list_exp_list_char, Y2 : produc515445032on_val]: (((produc1725134254on_val @ X1 @ X22) = (produc1725134254on_val @ Y1 @ Y2)) = (((X1 = Y1)) & ((X22 = Y2))))))). % prod.inject
thf(fact_56_prod_Oinject, axiom,
    ((![X1 : produc1097884484on_val, X22 : produc1097884484on_val, Y1 : produc1097884484on_val, Y2 : produc1097884484on_val]: (((produc1069526295on_val @ X1 @ X22) = (produc1069526295on_val @ Y1 @ Y2)) = (((X1 = Y1)) & ((X22 = Y2))))))). % prod.inject
thf(fact_57_prod_Oinject, axiom,
    ((![X1 : exp_list_char, X22 : produc515445032on_val, Y1 : exp_list_char, Y2 : produc515445032on_val]: (((produc2023458740on_val @ X1 @ X22) = (produc2023458740on_val @ Y1 @ Y2)) = (((X1 = Y1)) & ((X22 = Y2))))))). % prod.inject
thf(fact_58_reds, axiom,
    ((member1689761872on_val @ (produc245869591on_val @ (produc1725134254on_val @ esa @ (produc52622304on_val @ ha @ la)) @ (produc1725134254on_val @ es_a @ (produc52622304on_val @ h_a @ l_a))) @ (reds @ p)))). % reds
thf(fact_59_surj__pair, axiom,
    ((![P2 : produc515445032on_val]: (?[X : nat > option2118145160on_val, Y6 : list_char > option_val]: (P2 = (produc52622304on_val @ X @ Y6)))))). % surj_pair
thf(fact_60_surj__pair, axiom,
    ((![P2 : produc655058983on_val]: (?[X : produc335961278on_val, Y6 : produc335961278on_val]: (P2 = (produc245869591on_val @ X @ Y6)))))). % surj_pair
thf(fact_61_surj__pair, axiom,
    ((![P2 : produc335961278on_val]: (?[X : list_exp_list_char, Y6 : produc515445032on_val]: (P2 = (produc1725134254on_val @ X @ Y6)))))). % surj_pair
thf(fact_62_surj__pair, axiom,
    ((![P2 : produc1172664615on_val]: (?[X : produc1097884484on_val, Y6 : produc1097884484on_val]: (P2 = (produc1069526295on_val @ X @ Y6)))))). % surj_pair
thf(fact_63_surj__pair, axiom,
    ((![P2 : produc1097884484on_val]: (?[X : exp_list_char, Y6 : produc515445032on_val]: (P2 = (produc2023458740on_val @ X @ Y6)))))). % surj_pair
thf(fact_64_prod__cases, axiom,
    ((![P : produc515445032on_val > $o, P2 : produc515445032on_val]: ((![A4 : nat > option2118145160on_val, B3 : list_char > option_val]: (P @ (produc52622304on_val @ A4 @ B3))) => (P @ P2))))). % prod_cases
thf(fact_65_prod__cases, axiom,
    ((![P : produc655058983on_val > $o, P2 : produc655058983on_val]: ((![A4 : produc335961278on_val, B3 : produc335961278on_val]: (P @ (produc245869591on_val @ A4 @ B3))) => (P @ P2))))). % prod_cases
thf(fact_66_prod__cases, axiom,
    ((![P : produc335961278on_val > $o, P2 : produc335961278on_val]: ((![A4 : list_exp_list_char, B3 : produc515445032on_val]: (P @ (produc1725134254on_val @ A4 @ B3))) => (P @ P2))))). % prod_cases
thf(fact_67_prod__cases, axiom,
    ((![P : produc1172664615on_val > $o, P2 : produc1172664615on_val]: ((![A4 : produc1097884484on_val, B3 : produc1097884484on_val]: (P @ (produc1069526295on_val @ A4 @ B3))) => (P @ P2))))). % prod_cases
thf(fact_68_prod__cases, axiom,
    ((![P : produc1097884484on_val > $o, P2 : produc1097884484on_val]: ((![A4 : exp_list_char, B3 : produc515445032on_val]: (P @ (produc2023458740on_val @ A4 @ B3))) => (P @ P2))))). % prod_cases
thf(fact_69_Pair__inject, axiom,
    ((![A : nat > option2118145160on_val, B : list_char > option_val, A3 : nat > option2118145160on_val, B2 : list_char > option_val]: (((produc52622304on_val @ A @ B) = (produc52622304on_val @ A3 @ B2)) => (~ (((A = A3) => (~ ((B = B2)))))))))). % Pair_inject
thf(fact_70_Pair__inject, axiom,
    ((![A : produc335961278on_val, B : produc335961278on_val, A3 : produc335961278on_val, B2 : produc335961278on_val]: (((produc245869591on_val @ A @ B) = (produc245869591on_val @ A3 @ B2)) => (~ (((A = A3) => (~ ((B = B2)))))))))). % Pair_inject
thf(fact_71_Pair__inject, axiom,
    ((![A : list_exp_list_char, B : produc515445032on_val, A3 : list_exp_list_char, B2 : produc515445032on_val]: (((produc1725134254on_val @ A @ B) = (produc1725134254on_val @ A3 @ B2)) => (~ (((A = A3) => (~ ((B = B2)))))))))). % Pair_inject
thf(fact_72_Pair__inject, axiom,
    ((![A : produc1097884484on_val, B : produc1097884484on_val, A3 : produc1097884484on_val, B2 : produc1097884484on_val]: (((produc1069526295on_val @ A @ B) = (produc1069526295on_val @ A3 @ B2)) => (~ (((A = A3) => (~ ((B = B2)))))))))). % Pair_inject
thf(fact_73_Pair__inject, axiom,
    ((![A : exp_list_char, B : produc515445032on_val, A3 : exp_list_char, B2 : produc515445032on_val]: (((produc2023458740on_val @ A @ B) = (produc2023458740on_val @ A3 @ B2)) => (~ (((A = A3) => (~ ((B = B2)))))))))). % Pair_inject
thf(fact_74_prod__cases3, axiom,
    ((![Y : produc655058983on_val]: (~ ((![A4 : produc335961278on_val, B3 : list_exp_list_char, C : produc515445032on_val]: (~ ((Y = (produc245869591on_val @ A4 @ (produc1725134254on_val @ B3 @ C))))))))))). % prod_cases3
thf(fact_75_prod__cases3, axiom,
    ((![Y : produc335961278on_val]: (~ ((![A4 : list_exp_list_char, B3 : nat > option2118145160on_val, C : list_char > option_val]: (~ ((Y = (produc1725134254on_val @ A4 @ (produc52622304on_val @ B3 @ C))))))))))). % prod_cases3
thf(fact_76_prod__cases3, axiom,
    ((![Y : produc1172664615on_val]: (~ ((![A4 : produc1097884484on_val, B3 : exp_list_char, C : produc515445032on_val]: (~ ((Y = (produc1069526295on_val @ A4 @ (produc2023458740on_val @ B3 @ C))))))))))). % prod_cases3
thf(fact_77_prod__cases3, axiom,
    ((![Y : produc1097884484on_val]: (~ ((![A4 : exp_list_char, B3 : nat > option2118145160on_val, C : list_char > option_val]: (~ ((Y = (produc2023458740on_val @ A4 @ (produc52622304on_val @ B3 @ C))))))))))). % prod_cases3
thf(fact_78_prod__cases4, axiom,
    ((![Y : produc655058983on_val]: (~ ((![A4 : produc335961278on_val, B3 : list_exp_list_char, C : nat > option2118145160on_val, D : list_char > option_val]: (~ ((Y = (produc245869591on_val @ A4 @ (produc1725134254on_val @ B3 @ (produc52622304on_val @ C @ D)))))))))))). % prod_cases4
thf(fact_79_prod__cases4, axiom,
    ((![Y : produc1172664615on_val]: (~ ((![A4 : produc1097884484on_val, B3 : exp_list_char, C : nat > option2118145160on_val, D : list_char > option_val]: (~ ((Y = (produc1069526295on_val @ A4 @ (produc2023458740on_val @ B3 @ (produc52622304on_val @ C @ D)))))))))))). % prod_cases4
thf(fact_80_prod__induct3, axiom,
    ((![P : produc655058983on_val > $o, X6 : produc655058983on_val]: ((![A4 : produc335961278on_val, B3 : list_exp_list_char, C : produc515445032on_val]: (P @ (produc245869591on_val @ A4 @ (produc1725134254on_val @ B3 @ C)))) => (P @ X6))))). % prod_induct3
thf(fact_81_prod__induct3, axiom,
    ((![P : produc335961278on_val > $o, X6 : produc335961278on_val]: ((![A4 : list_exp_list_char, B3 : nat > option2118145160on_val, C : list_char > option_val]: (P @ (produc1725134254on_val @ A4 @ (produc52622304on_val @ B3 @ C)))) => (P @ X6))))). % prod_induct3
thf(fact_82_prod__induct3, axiom,
    ((![P : produc1172664615on_val > $o, X6 : produc1172664615on_val]: ((![A4 : produc1097884484on_val, B3 : exp_list_char, C : produc515445032on_val]: (P @ (produc1069526295on_val @ A4 @ (produc2023458740on_val @ B3 @ C)))) => (P @ X6))))). % prod_induct3
thf(fact_83_prod__induct3, axiom,
    ((![P : produc1097884484on_val > $o, X6 : produc1097884484on_val]: ((![A4 : exp_list_char, B3 : nat > option2118145160on_val, C : list_char > option_val]: (P @ (produc2023458740on_val @ A4 @ (produc52622304on_val @ B3 @ C)))) => (P @ X6))))). % prod_induct3
thf(fact_84_prod__induct4, axiom,
    ((![P : produc655058983on_val > $o, X6 : produc655058983on_val]: ((![A4 : produc335961278on_val, B3 : list_exp_list_char, C : nat > option2118145160on_val, D : list_char > option_val]: (P @ (produc245869591on_val @ A4 @ (produc1725134254on_val @ B3 @ (produc52622304on_val @ C @ D))))) => (P @ X6))))). % prod_induct4
thf(fact_85_prod__induct4, axiom,
    ((![P : produc1172664615on_val > $o, X6 : produc1172664615on_val]: ((![A4 : produc1097884484on_val, B3 : exp_list_char, C : nat > option2118145160on_val, D : list_char > option_val]: (P @ (produc1069526295on_val @ A4 @ (produc2023458740on_val @ B3 @ (produc52622304on_val @ C @ D))))) => (P @ X6))))). % prod_induct4
thf(fact_86_old_Oprod_Oexhaust, axiom,
    ((![Y : produc515445032on_val]: (~ ((![A4 : nat > option2118145160on_val, B3 : list_char > option_val]: (~ ((Y = (produc52622304on_val @ A4 @ B3)))))))))). % old.prod.exhaust
thf(fact_87_old_Oprod_Oexhaust, axiom,
    ((![Y : produc655058983on_val]: (~ ((![A4 : produc335961278on_val, B3 : produc335961278on_val]: (~ ((Y = (produc245869591on_val @ A4 @ B3)))))))))). % old.prod.exhaust
thf(fact_88_old_Oprod_Oexhaust, axiom,
    ((![Y : produc335961278on_val]: (~ ((![A4 : list_exp_list_char, B3 : produc515445032on_val]: (~ ((Y = (produc1725134254on_val @ A4 @ B3)))))))))). % old.prod.exhaust
thf(fact_89_old_Oprod_Oexhaust, axiom,
    ((![Y : produc1172664615on_val]: (~ ((![A4 : produc1097884484on_val, B3 : produc1097884484on_val]: (~ ((Y = (produc1069526295on_val @ A4 @ B3)))))))))). % old.prod.exhaust
thf(fact_90_old_Oprod_Oexhaust, axiom,
    ((![Y : produc1097884484on_val]: (~ ((![A4 : exp_list_char, B3 : produc515445032on_val]: (~ ((Y = (produc2023458740on_val @ A4 @ B3)))))))))). % old.prod.exhaust
thf(fact_91_old_Oprod_Oinducts, axiom,
    ((![P : produc515445032on_val > $o, Prod : produc515445032on_val]: ((![A4 : nat > option2118145160on_val, B3 : list_char > option_val]: (P @ (produc52622304on_val @ A4 @ B3))) => (P @ Prod))))). % old.prod.inducts
thf(fact_92_old_Oprod_Oinducts, axiom,
    ((![P : produc655058983on_val > $o, Prod : produc655058983on_val]: ((![A4 : produc335961278on_val, B3 : produc335961278on_val]: (P @ (produc245869591on_val @ A4 @ B3))) => (P @ Prod))))). % old.prod.inducts
thf(fact_93_old_Oprod_Oinducts, axiom,
    ((![P : produc335961278on_val > $o, Prod : produc335961278on_val]: ((![A4 : list_exp_list_char, B3 : produc515445032on_val]: (P @ (produc1725134254on_val @ A4 @ B3))) => (P @ Prod))))). % old.prod.inducts
thf(fact_94_old_Oprod_Oinducts, axiom,
    ((![P : produc1172664615on_val > $o, Prod : produc1172664615on_val]: ((![A4 : produc1097884484on_val, B3 : produc1097884484on_val]: (P @ (produc1069526295on_val @ A4 @ B3))) => (P @ Prod))))). % old.prod.inducts
thf(fact_95_old_Oprod_Oinducts, axiom,
    ((![P : produc1097884484on_val > $o, Prod : produc1097884484on_val]: ((![A4 : exp_list_char, B3 : produc515445032on_val]: (P @ (produc2023458740on_val @ A4 @ B3))) => (P @ Prod))))). % old.prod.inducts
thf(fact_96_widens__refl, axiom,
    ((![P : list_P1234162913t_char, Xs : list_ty]: (list_all2_ty_ty @ (widen_917054840t_char @ P) @ Xs @ Xs)))). % widens_refl
thf(fact_97_widens__trans, axiom,
    ((![P : list_P1234162913t_char, Ss : list_ty, Ts : list_ty, Us2 : list_ty]: ((list_all2_ty_ty @ (widen_917054840t_char @ P) @ Ss @ Ts) => ((list_all2_ty_ty @ (widen_917054840t_char @ P) @ Ts @ Us2) => (list_all2_ty_ty @ (widen_917054840t_char @ P) @ Ss @ Us2)))))). % widens_trans
thf(fact_98_pred__equals__eq2, axiom,
    ((![R : set_Pr723149704on_val, S : set_Pr723149704on_val]: (((^[X2 : nat > option2118145160on_val]: (^[Y7 : list_char > option_val]: (member652041809on_val @ (produc52622304on_val @ X2 @ Y7) @ R))) = (^[X2 : nat > option2118145160on_val]: (^[Y7 : list_char > option_val]: (member652041809on_val @ (produc52622304on_val @ X2 @ Y7) @ S)))) = (R = S))))). % pred_equals_eq2
thf(fact_99_pred__equals__eq2, axiom,
    ((![R : set_Pr208351751on_val, S : set_Pr208351751on_val]: (((^[X2 : produc335961278on_val]: (^[Y7 : produc335961278on_val]: (member1689761872on_val @ (produc245869591on_val @ X2 @ Y7) @ R))) = (^[X2 : produc335961278on_val]: (^[Y7 : produc335961278on_val]: (member1689761872on_val @ (produc245869591on_val @ X2 @ Y7) @ S)))) = (R = S))))). % pred_equals_eq2
thf(fact_100_pred__equals__eq2, axiom,
    ((![R : set_Pr1511552798on_val, S : set_Pr1511552798on_val]: (((^[X2 : list_exp_list_char]: (^[Y7 : produc515445032on_val]: (member184158439on_val @ (produc1725134254on_val @ X2 @ Y7) @ R))) = (^[X2 : list_exp_list_char]: (^[Y7 : produc515445032on_val]: (member184158439on_val @ (produc1725134254on_val @ X2 @ Y7) @ S)))) = (R = S))))). % pred_equals_eq2
thf(fact_101_pred__equals__eq2, axiom,
    ((![R : set_Pr1189492743on_val, S : set_Pr1189492743on_val]: (((^[X2 : produc1097884484on_val]: (^[Y7 : produc1097884484on_val]: (member354538064on_val @ (produc1069526295on_val @ X2 @ Y7) @ R))) = (^[X2 : produc1097884484on_val]: (^[Y7 : produc1097884484on_val]: (member354538064on_val @ (produc1069526295on_val @ X2 @ Y7) @ S)))) = (R = S))))). % pred_equals_eq2
thf(fact_102_pred__equals__eq2, axiom,
    ((![R : set_Pr556513572on_val, S : set_Pr556513572on_val]: (((^[X2 : exp_list_char]: (^[Y7 : produc515445032on_val]: (member1888679917on_val @ (produc2023458740on_val @ X2 @ Y7) @ R))) = (^[X2 : exp_list_char]: (^[Y7 : produc515445032on_val]: (member1888679917on_val @ (produc2023458740on_val @ X2 @ Y7) @ S)))) = (R = S))))). % pred_equals_eq2
thf(fact_103_widen__refl, axiom,
    ((![P : list_P1234162913t_char, T : ty]: (widen_917054840t_char @ P @ T @ T)))). % widen_refl
thf(fact_104_widen__trans, axiom,
    ((![P : list_P1234162913t_char, S : ty, U : ty, T : ty]: ((widen_917054840t_char @ P @ S @ U) => ((widen_917054840t_char @ P @ U @ T) => (widen_917054840t_char @ P @ S @ T)))))). % widen_trans
thf(fact_105_reds__preserves__hconf, axiom,
    ((![Es : list_exp_list_char, H : nat > option2118145160on_val, L : list_char > option_val, Es2 : list_exp_list_char, H2 : nat > option2118145160on_val, L2 : list_char > option_val, P : list_P1234162913t_char, E : list_char > option_ty, Ts : list_ty]: ((member1689761872on_val @ (produc245869591on_val @ (produc1725134254on_val @ Es @ (produc52622304on_val @ H @ L)) @ (produc1725134254on_val @ Es2 @ (produc52622304on_val @ H2 @ L2))) @ (reds @ P)) => ((wTrts @ P @ H @ E @ Es @ Ts) => ((hconf_1244167010t_char @ P @ H) => (hconf_1244167010t_char @ P @ H2))))))). % reds_preserves_hconf
thf(fact_106_reds__preserves__lconf, axiom,
    ((![Es : list_exp_list_char, H : nat > option2118145160on_val, L : list_char > option_val, Es2 : list_exp_list_char, H2 : nat > option2118145160on_val, L2 : list_char > option_val, P : list_P1234162913t_char, E : list_char > option_ty, Ts : list_ty]: ((member1689761872on_val @ (produc245869591on_val @ (produc1725134254on_val @ Es @ (produc52622304on_val @ H @ L)) @ (produc1725134254on_val @ Es2 @ (produc52622304on_val @ H2 @ L2))) @ (reds @ P)) => ((wTrts @ P @ H @ E @ Es @ Ts) => ((lconf_485928294t_char @ P @ H @ L @ E) => (lconf_485928294t_char @ P @ H2 @ L2 @ E))))))). % reds_preserves_lconf
thf(fact_107_reds__preserves__sconf, axiom,
    ((![Es : list_exp_list_char, S2 : produc515445032on_val, Es2 : list_exp_list_char, S3 : produc515445032on_val, P : list_P1234162913t_char, E : list_char > option_ty, Ts : list_ty]: ((member1689761872on_val @ (produc245869591on_val @ (produc1725134254on_val @ Es @ S2) @ (produc1725134254on_val @ Es2 @ S3)) @ (reds @ P)) => ((wTrts @ P @ (hp @ S2) @ E @ Es @ Ts) => ((typeSa1777264139_sconf @ P @ E @ S2) => (typeSa1777264139_sconf @ P @ E @ S3))))))). % reds_preserves_sconf
thf(fact_108_redsp__reds__eq, axiom,
    ((redsp = (^[P3 : list_P1234162913t_char]: (^[X2 : list_exp_list_char]: (^[Y7 : produc515445032on_val]: (^[Z : list_exp_list_char]: (^[Aa : produc515445032on_val]: (member1689761872on_val @ (produc245869591on_val @ (produc1725134254on_val @ X2 @ Y7) @ (produc1725134254on_val @ Z @ Aa)) @ (reds @ P3)))))))))). % redsp_reds_eq
thf(fact_109_reds__hext__incr, axiom,
    ((![Es : list_exp_list_char, H : nat > option2118145160on_val, L : list_char > option_val, Es2 : list_exp_list_char, H2 : nat > option2118145160on_val, L2 : list_char > option_val, P : list_P1234162913t_char]: ((member1689761872on_val @ (produc245869591on_val @ (produc1725134254on_val @ Es @ (produc52622304on_val @ H @ L)) @ (produc1725134254on_val @ Es2 @ (produc52622304on_val @ H2 @ L2))) @ (reds @ P)) => (hext @ H @ H2))))). % reds_hext_incr
thf(fact_110_red__reds_OCallParams, axiom,
    ((![Es : list_exp_list_char, S2 : produc515445032on_val, Es2 : list_exp_list_char, S3 : produc515445032on_val, P : list_P1234162913t_char, V : val, M : list_char]: ((member1689761872on_val @ (produc245869591on_val @ (produc1725134254on_val @ Es @ S2) @ (produc1725134254on_val @ Es2 @ S3)) @ (reds @ P)) => (member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ (call_list_char @ (val_list_char @ V) @ M @ Es) @ S2) @ (produc2023458740on_val @ (call_list_char @ (val_list_char @ V) @ M @ Es2) @ S3)) @ (red @ P)))))). % red_reds.CallParams
thf(fact_111_red__reds_OListRed2, axiom,
    ((![Es : list_exp_list_char, S2 : produc515445032on_val, Es2 : list_exp_list_char, S3 : produc515445032on_val, P : list_P1234162913t_char, V : val]: ((member1689761872on_val @ (produc245869591on_val @ (produc1725134254on_val @ Es @ S2) @ (produc1725134254on_val @ Es2 @ S3)) @ (reds @ P)) => (member1689761872on_val @ (produc245869591on_val @ (produc1725134254on_val @ (cons_exp_list_char @ (val_list_char @ V) @ Es) @ S2) @ (produc1725134254on_val @ (cons_exp_list_char @ (val_list_char @ V) @ Es2) @ S3)) @ (reds @ P)))))). % red_reds.ListRed2
thf(fact_112_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_113_red__reds_OListRed1, axiom,
    ((![E2 : exp_list_char, S2 : produc515445032on_val, E3 : exp_list_char, S3 : produc515445032on_val, P : list_P1234162913t_char, Es : list_exp_list_char]: ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ E2 @ S2) @ (produc2023458740on_val @ E3 @ S3)) @ (red @ P)) => (member1689761872on_val @ (produc245869591on_val @ (produc1725134254on_val @ (cons_exp_list_char @ E2 @ Es) @ S2) @ (produc1725134254on_val @ (cons_exp_list_char @ E3 @ Es) @ S3)) @ (reds @ P)))))). % red_reds.ListRed1
thf(fact_114_red__hext__incr, 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]: ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ E2 @ (produc52622304on_val @ H @ L)) @ (produc2023458740on_val @ E3 @ (produc52622304on_val @ H2 @ L2))) @ (red @ P)) => (hext @ H @ H2))))). % red_hext_incr
thf(fact_115_WTrt__hext__mono, axiom,
    ((![P : list_P1234162913t_char, H : nat > option2118145160on_val, E : list_char > option_ty, E2 : exp_list_char, T : ty, H2 : nat > option2118145160on_val]: ((wTrt @ P @ H @ E @ E2 @ T) => ((hext @ H @ H2) => (wTrt @ P @ H2 @ E @ E2 @ T)))))). % WTrt_hext_mono
thf(fact_116_WTrts__hext__mono, axiom,
    ((![P : list_P1234162913t_char, H : nat > option2118145160on_val, E : list_char > option_ty, Es : list_exp_list_char, Ts : list_ty, H2 : nat > option2118145160on_val]: ((wTrts @ P @ H @ E @ Es @ Ts) => ((hext @ H @ H2) => (wTrts @ P @ H2 @ E @ Es @ Ts)))))). % WTrts_hext_mono
thf(fact_117_lconf__hext, axiom,
    ((![P : list_P1234162913t_char, H : nat > option2118145160on_val, L : list_char > option_val, E : list_char > option_ty, H2 : nat > option2118145160on_val]: ((lconf_485928294t_char @ P @ H @ L @ E) => ((hext @ H @ H2) => (lconf_485928294t_char @ P @ H2 @ L @ E)))))). % lconf_hext
thf(fact_118_reds_Ocases, axiom,
    ((![A1 : list_exp_list_char, A22 : produc515445032on_val, A32 : list_exp_list_char, A42 : produc515445032on_val, P : list_P1234162913t_char]: ((member1689761872on_val @ (produc245869591on_val @ (produc1725134254on_val @ A1 @ A22) @ (produc1725134254on_val @ A32 @ A42)) @ (reds @ P)) => ((![E4 : exp_list_char, S4 : produc515445032on_val, E5 : exp_list_char, S5 : produc515445032on_val, Es3 : list_exp_list_char]: ((A1 = (cons_exp_list_char @ E4 @ Es3)) => ((A22 = S4) => ((A32 = (cons_exp_list_char @ E5 @ Es3)) => ((A42 = S5) => (~ ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ E4 @ S4) @ (produc2023458740on_val @ E5 @ S5)) @ (red @ P))))))))) => (~ ((![Es3 : list_exp_list_char, S4 : produc515445032on_val, Es4 : list_exp_list_char, S5 : produc515445032on_val, V2 : val]: ((A1 = (cons_exp_list_char @ (val_list_char @ V2) @ Es3)) => ((A22 = S4) => ((A32 = (cons_exp_list_char @ (val_list_char @ V2) @ Es4)) => ((A42 = S5) => (~ ((member1689761872on_val @ (produc245869591on_val @ (produc1725134254on_val @ Es3 @ S4) @ (produc1725134254on_val @ Es4 @ S5)) @ (reds @ P)))))))))))))))). % reds.cases
thf(fact_119_reds_Osimps, axiom,
    ((![A1 : list_exp_list_char, A22 : produc515445032on_val, A32 : list_exp_list_char, A42 : produc515445032on_val, P : list_P1234162913t_char]: ((member1689761872on_val @ (produc245869591on_val @ (produc1725134254on_val @ A1 @ A22) @ (produc1725134254on_val @ A32 @ A42)) @ (reds @ P)) = (((?[E6 : exp_list_char]: (?[S6 : produc515445032on_val]: (?[E7 : exp_list_char]: (?[S7 : produc515445032on_val]: (?[Es5 : list_exp_list_char]: (((A1 = (cons_exp_list_char @ E6 @ Es5))) & ((((A22 = S6)) & ((((A32 = (cons_exp_list_char @ E7 @ Es5))) & ((((A42 = S7)) & ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ E6 @ S6) @ (produc2023458740on_val @ E7 @ S7)) @ (red @ P)))))))))))))))) | ((?[Es5 : list_exp_list_char]: (?[S6 : produc515445032on_val]: (?[Es6 : list_exp_list_char]: (?[S7 : produc515445032on_val]: (?[V3 : val]: (((A1 = (cons_exp_list_char @ (val_list_char @ V3) @ Es5))) & ((((A22 = S6)) & ((((A32 = (cons_exp_list_char @ (val_list_char @ V3) @ Es6))) & ((((A42 = S7)) & ((member1689761872on_val @ (produc245869591on_val @ (produc1725134254on_val @ Es5 @ S6) @ (produc1725134254on_val @ Es6 @ S7)) @ (reds @ P))))))))))))))))))))). % reds.simps
thf(fact_120_redp__redsp_OListRed2, axiom,
    ((![P : list_P1234162913t_char, Es : list_exp_list_char, S2 : produc515445032on_val, Es2 : list_exp_list_char, S3 : produc515445032on_val, V : val]: ((redsp @ P @ Es @ S2 @ Es2 @ S3) => (redsp @ P @ (cons_exp_list_char @ (val_list_char @ V) @ Es) @ S2 @ (cons_exp_list_char @ (val_list_char @ V) @ Es2) @ S3))))). % redp_redsp.ListRed2
thf(fact_121_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, T : 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 @ T) => ((hconf_1244167010t_char @ P @ H) => (hconf_1244167010t_char @ P @ H2))))))). % red_preserves_hconf
thf(fact_122_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, T : 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 @ T) => ((lconf_485928294t_char @ P @ H @ L @ E) => (lconf_485928294t_char @ P @ H2 @ L2 @ E))))))). % red_preserves_lconf
thf(fact_123_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, T : ty]: ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ E2 @ S2) @ (produc2023458740on_val @ E3 @ S3)) @ (red @ P)) => ((wTrt @ P @ (hp @ S2) @ E @ E2 @ T) => ((typeSa1777264139_sconf @ P @ E @ S2) => (typeSa1777264139_sconf @ P @ E @ S3))))))). % red_preserves_sconf
thf(fact_124_list_Orel__inject_I2_J, axiom,
    ((![R : exp_list_char > exp_list_char > $o, X21 : exp_list_char, X222 : list_exp_list_char, Y21 : exp_list_char, Y22 : list_exp_list_char]: ((list_a1702871623t_char @ R @ (cons_exp_list_char @ X21 @ X222) @ (cons_exp_list_char @ Y21 @ Y22)) = (((R @ X21 @ Y21)) & ((list_a1702871623t_char @ R @ X222 @ Y22))))))). % list.rel_inject(2)
thf(fact_125_list_Orel__inject_I2_J, axiom,
    ((![R : exp_list_char > ty > $o, X21 : exp_list_char, X222 : list_exp_list_char, Y21 : ty, Y22 : list_ty]: ((list_a295513531har_ty @ R @ (cons_exp_list_char @ X21 @ X222) @ (cons_ty @ Y21 @ Y22)) = (((R @ X21 @ Y21)) & ((list_a295513531har_ty @ R @ X222 @ Y22))))))). % list.rel_inject(2)
thf(fact_126_list_Orel__inject_I2_J, axiom,
    ((![R : ty > exp_list_char > $o, X21 : ty, X222 : list_ty, Y21 : exp_list_char, Y22 : list_exp_list_char]: ((list_a212154379t_char @ R @ (cons_ty @ X21 @ X222) @ (cons_exp_list_char @ Y21 @ Y22)) = (((R @ X21 @ Y21)) & ((list_a212154379t_char @ R @ X222 @ Y22))))))). % list.rel_inject(2)
thf(fact_127_list_Orel__inject_I2_J, axiom,
    ((![R : ty > ty > $o, X21 : ty, X222 : list_ty, Y21 : ty, Y22 : list_ty]: ((list_all2_ty_ty @ R @ (cons_ty @ X21 @ X222) @ (cons_ty @ Y21 @ Y22)) = (((R @ X21 @ Y21)) & ((list_all2_ty_ty @ R @ X222 @ Y22))))))). % list.rel_inject(2)
thf(fact_128_list_Orel__intros_I2_J, axiom,
    ((![R : exp_list_char > exp_list_char > $o, X21 : exp_list_char, Y21 : exp_list_char, X222 : list_exp_list_char, Y22 : list_exp_list_char]: ((R @ X21 @ Y21) => ((list_a1702871623t_char @ R @ X222 @ Y22) => (list_a1702871623t_char @ R @ (cons_exp_list_char @ X21 @ X222) @ (cons_exp_list_char @ Y21 @ Y22))))))). % list.rel_intros(2)
thf(fact_129_list_Orel__intros_I2_J, axiom,
    ((![R : exp_list_char > ty > $o, X21 : exp_list_char, Y21 : ty, X222 : list_exp_list_char, Y22 : list_ty]: ((R @ X21 @ Y21) => ((list_a295513531har_ty @ R @ X222 @ Y22) => (list_a295513531har_ty @ R @ (cons_exp_list_char @ X21 @ X222) @ (cons_ty @ Y21 @ Y22))))))). % list.rel_intros(2)
thf(fact_130_list_Orel__intros_I2_J, axiom,
    ((![R : ty > exp_list_char > $o, X21 : ty, Y21 : exp_list_char, X222 : list_ty, Y22 : list_exp_list_char]: ((R @ X21 @ Y21) => ((list_a212154379t_char @ R @ X222 @ Y22) => (list_a212154379t_char @ R @ (cons_ty @ X21 @ X222) @ (cons_exp_list_char @ Y21 @ Y22))))))). % list.rel_intros(2)
thf(fact_131_list_Orel__intros_I2_J, axiom,
    ((![R : ty > ty > $o, X21 : ty, Y21 : ty, X222 : list_ty, Y22 : list_ty]: ((R @ X21 @ Y21) => ((list_all2_ty_ty @ R @ X222 @ Y22) => (list_all2_ty_ty @ R @ (cons_ty @ X21 @ X222) @ (cons_ty @ Y21 @ Y22))))))). % list.rel_intros(2)
thf(fact_132_list__all2__Cons, axiom,
    ((![P : exp_list_char > exp_list_char > $o, X6 : exp_list_char, Xs : list_exp_list_char, Y : exp_list_char, Ys : list_exp_list_char]: ((list_a1702871623t_char @ P @ (cons_exp_list_char @ X6 @ Xs) @ (cons_exp_list_char @ Y @ Ys)) = (((P @ X6 @ Y)) & ((list_a1702871623t_char @ P @ Xs @ Ys))))))). % list_all2_Cons
thf(fact_133_list__all2__Cons, axiom,
    ((![P : exp_list_char > ty > $o, X6 : exp_list_char, Xs : list_exp_list_char, Y : ty, Ys : list_ty]: ((list_a295513531har_ty @ P @ (cons_exp_list_char @ X6 @ Xs) @ (cons_ty @ Y @ Ys)) = (((P @ X6 @ Y)) & ((list_a295513531har_ty @ P @ Xs @ Ys))))))). % list_all2_Cons
thf(fact_134_list__all2__Cons, axiom,
    ((![P : ty > exp_list_char > $o, X6 : ty, Xs : list_ty, Y : exp_list_char, Ys : list_exp_list_char]: ((list_a212154379t_char @ P @ (cons_ty @ X6 @ Xs) @ (cons_exp_list_char @ Y @ Ys)) = (((P @ X6 @ Y)) & ((list_a212154379t_char @ P @ Xs @ Ys))))))). % list_all2_Cons
thf(fact_135_list__all2__Cons, axiom,
    ((![P : ty > ty > $o, X6 : ty, Xs : list_ty, Y : ty, Ys : list_ty]: ((list_all2_ty_ty @ P @ (cons_ty @ X6 @ Xs) @ (cons_ty @ Y @ Ys)) = (((P @ X6 @ Y)) & ((list_all2_ty_ty @ P @ Xs @ Ys))))))). % list_all2_Cons
thf(fact_136_widens__Cons, axiom,
    ((![P : list_P1234162913t_char, X6 : ty, Xs : list_ty, Ys : list_ty]: ((list_all2_ty_ty @ (widen_917054840t_char @ P) @ (cons_ty @ X6 @ Xs) @ Ys) = (?[Z : ty]: (?[Zs : list_ty]: (((Ys = (cons_ty @ Z @ Zs))) & ((((widen_917054840t_char @ P @ X6 @ Z)) & ((list_all2_ty_ty @ (widen_917054840t_char @ P) @ Xs @ Zs))))))))))). % widens_Cons
thf(fact_137_confs__widens, axiom,
    ((![P : list_P1234162913t_char, H : nat > option2118145160on_val, Vs : list_val, Ts : list_ty, Ts3 : list_ty]: ((list_all2_val_ty @ (conf_P93989998t_char @ P @ H) @ Vs @ Ts) => ((list_all2_ty_ty @ (widen_917054840t_char @ P) @ Ts @ Ts3) => (list_all2_val_ty @ (conf_P93989998t_char @ P @ H) @ Vs @ Ts3)))))). % confs_widens
thf(fact_138_list__all2__eq, axiom,
    (((^[Y8 : list_ty]: (^[Z2 : list_ty]: (Y8 = Z2))) = (list_all2_ty_ty @ (^[Y8 : ty]: (^[Z2 : ty]: (Y8 = Z2))))))). % list_all2_eq
thf(fact_139_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_140_list__all2__refl, axiom,
    ((![P : ty > ty > $o, Xs : list_ty]: ((![X : ty]: (P @ X @ X)) => (list_all2_ty_ty @ P @ Xs @ Xs))))). % list_all2_refl
thf(fact_141_list__all2__trans, axiom,
    ((![P1 : ty > ty > $o, P22 : ty > ty > $o, P32 : ty > ty > $o, As : list_ty, Bs : list_ty, Cs : list_ty]: ((![A4 : ty, B3 : ty, C : ty]: ((P1 @ A4 @ B3) => ((P22 @ B3 @ C) => (P32 @ A4 @ C)))) => ((list_all2_ty_ty @ P1 @ As @ Bs) => ((list_all2_ty_ty @ P22 @ Bs @ Cs) => (list_all2_ty_ty @ P32 @ As @ Cs))))))). % list_all2_trans
thf(fact_142_list_Orel__eq, axiom,
    (((list_all2_ty_ty @ (^[Y8 : ty]: (^[Z2 : ty]: (Y8 = Z2)))) = (^[Y8 : list_ty]: (^[Z2 : list_ty]: (Y8 = Z2)))))). % list.rel_eq
thf(fact_143_list__all2__antisym, axiom,
    ((![P : ty > ty > $o, Q : ty > ty > $o, Xs : list_ty, Ys : list_ty]: ((![X : ty, Y6 : ty]: ((P @ X @ Y6) => ((Q @ Y6 @ X) => (X = Y6)))) => ((list_all2_ty_ty @ P @ Xs @ Ys) => ((list_all2_ty_ty @ Q @ Ys @ Xs) => (Xs = Ys))))))). % list_all2_antisym
thf(fact_144_list_Orel__refl, axiom,
    ((![Ra : ty > ty > $o, X6 : list_ty]: ((![X : ty]: (Ra @ X @ X)) => (list_all2_ty_ty @ Ra @ X6 @ X6))))). % list.rel_refl
thf(fact_145_WTrtCons, axiom,
    ((![P : list_P1234162913t_char, H : nat > option2118145160on_val, E : list_char > option_ty, E2 : exp_list_char, T : ty, Es : list_exp_list_char, Ts : list_ty]: ((wTrt @ P @ H @ E @ E2 @ T) => ((wTrts @ P @ H @ E @ Es @ Ts) => (wTrts @ P @ H @ E @ (cons_exp_list_char @ E2 @ Es) @ (cons_ty @ T @ Ts))))))). % WTrtCons
thf(fact_146_list__all2__Cons2, axiom,
    ((![P : exp_list_char > exp_list_char > $o, Xs : list_exp_list_char, Y : exp_list_char, Ys : list_exp_list_char]: ((list_a1702871623t_char @ P @ Xs @ (cons_exp_list_char @ Y @ Ys)) = (?[Z : exp_list_char]: (?[Zs : list_exp_list_char]: (((Xs = (cons_exp_list_char @ Z @ Zs))) & ((((P @ Z @ Y)) & ((list_a1702871623t_char @ P @ Zs @ Ys))))))))))). % list_all2_Cons2
thf(fact_147_list__all2__Cons2, axiom,
    ((![P : ty > exp_list_char > $o, Xs : list_ty, Y : exp_list_char, Ys : list_exp_list_char]: ((list_a212154379t_char @ P @ Xs @ (cons_exp_list_char @ Y @ Ys)) = (?[Z : ty]: (?[Zs : list_ty]: (((Xs = (cons_ty @ Z @ Zs))) & ((((P @ Z @ Y)) & ((list_a212154379t_char @ P @ Zs @ Ys))))))))))). % list_all2_Cons2
thf(fact_148_list__all2__Cons2, axiom,
    ((![P : exp_list_char > ty > $o, Xs : list_exp_list_char, Y : ty, Ys : list_ty]: ((list_a295513531har_ty @ P @ Xs @ (cons_ty @ Y @ Ys)) = (?[Z : exp_list_char]: (?[Zs : list_exp_list_char]: (((Xs = (cons_exp_list_char @ Z @ Zs))) & ((((P @ Z @ Y)) & ((list_a295513531har_ty @ P @ Zs @ Ys))))))))))). % list_all2_Cons2
thf(fact_149_list__all2__Cons2, axiom,
    ((![P : ty > ty > $o, Xs : list_ty, Y : ty, Ys : list_ty]: ((list_all2_ty_ty @ P @ Xs @ (cons_ty @ Y @ Ys)) = (?[Z : ty]: (?[Zs : list_ty]: (((Xs = (cons_ty @ Z @ Zs))) & ((((P @ Z @ Y)) & ((list_all2_ty_ty @ P @ Zs @ Ys))))))))))). % list_all2_Cons2
thf(fact_150_list__all2__Cons1, axiom,
    ((![P : exp_list_char > exp_list_char > $o, X6 : exp_list_char, Xs : list_exp_list_char, Ys : list_exp_list_char]: ((list_a1702871623t_char @ P @ (cons_exp_list_char @ X6 @ Xs) @ Ys) = (?[Z : exp_list_char]: (?[Zs : list_exp_list_char]: (((Ys = (cons_exp_list_char @ Z @ Zs))) & ((((P @ X6 @ Z)) & ((list_a1702871623t_char @ P @ Xs @ Zs))))))))))). % list_all2_Cons1
thf(fact_151_list__all2__Cons1, axiom,
    ((![P : exp_list_char > ty > $o, X6 : exp_list_char, Xs : list_exp_list_char, Ys : list_ty]: ((list_a295513531har_ty @ P @ (cons_exp_list_char @ X6 @ Xs) @ Ys) = (?[Z : ty]: (?[Zs : list_ty]: (((Ys = (cons_ty @ Z @ Zs))) & ((((P @ X6 @ Z)) & ((list_a295513531har_ty @ P @ Xs @ Zs))))))))))). % list_all2_Cons1
thf(fact_152_list__all2__Cons1, axiom,
    ((![P : ty > exp_list_char > $o, X6 : ty, Xs : list_ty, Ys : list_exp_list_char]: ((list_a212154379t_char @ P @ (cons_ty @ X6 @ Xs) @ Ys) = (?[Z : exp_list_char]: (?[Zs : list_exp_list_char]: (((Ys = (cons_exp_list_char @ Z @ Zs))) & ((((P @ X6 @ Z)) & ((list_a212154379t_char @ P @ Xs @ Zs))))))))))). % list_all2_Cons1
thf(fact_153_list__all2__Cons1, axiom,
    ((![P : ty > ty > $o, X6 : ty, Xs : list_ty, Ys : list_ty]: ((list_all2_ty_ty @ P @ (cons_ty @ X6 @ Xs) @ Ys) = (?[Z : ty]: (?[Zs : list_ty]: (((Ys = (cons_ty @ Z @ Zs))) & ((((P @ X6 @ Z)) & ((list_all2_ty_ty @ P @ Xs @ Zs))))))))))). % list_all2_Cons1
thf(fact_154_red__reds_ORedCastNull, axiom,
    ((![C2 : list_char, S2 : produc515445032on_val, P : list_P1234162913t_char]: (member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ (cast_list_char @ C2 @ (val_list_char @ null)) @ S2) @ (produc2023458740on_val @ (val_list_char @ null) @ S2)) @ (red @ P))))). % red_reds.RedCastNull
thf(fact_155_red__reds_ORedCondT, axiom,
    ((![E_1 : exp_list_char, E_2 : exp_list_char, S2 : produc515445032on_val, P : list_P1234162913t_char]: (member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ (cond_list_char @ (val_list_char @ (bool @ $true)) @ E_1 @ E_2) @ S2) @ (produc2023458740on_val @ E_1 @ S2)) @ (red @ P))))). % red_reds.RedCondT
thf(fact_156_red__reds_ORedCondF, axiom,
    ((![E_1 : exp_list_char, E_2 : exp_list_char, S2 : produc515445032on_val, P : list_P1234162913t_char]: (member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ (cond_list_char @ (val_list_char @ (bool @ $false)) @ E_1 @ E_2) @ S2) @ (produc2023458740on_val @ E_2 @ S2)) @ (red @ P))))). % red_reds.RedCondF
thf(fact_157_exp_Oinject_I12_J, axiom,
    ((![X121 : exp_list_char, X122 : exp_list_char, X123 : exp_list_char, Y121 : exp_list_char, Y122 : exp_list_char, Y123 : exp_list_char]: (((cond_list_char @ X121 @ X122 @ X123) = (cond_list_char @ Y121 @ Y122 @ Y123)) = (((X121 = Y121)) & ((((X122 = Y122)) & ((X123 = Y123))))))))). % exp.inject(12)
thf(fact_158_exp_Oinject_I2_J, axiom,
    ((![X21 : list_char, X222 : exp_list_char, Y21 : list_char, Y22 : exp_list_char]: (((cast_list_char @ X21 @ X222) = (cast_list_char @ Y21 @ Y22)) = (((X21 = Y21)) & ((X222 = Y22))))))). % exp.inject(2)
thf(fact_159_exp_Odistinct_I71_J, axiom,
    ((![X3 : val, X121 : exp_list_char, X122 : exp_list_char, X123 : exp_list_char]: (~ (((val_list_char @ X3) = (cond_list_char @ X121 @ X122 @ X123))))))). % exp.distinct(71)
thf(fact_160_exp_Odistinct_I29_J, axiom,
    ((![X21 : list_char, X222 : exp_list_char, X3 : val]: (~ (((cast_list_char @ X21 @ X222) = (val_list_char @ X3))))))). % exp.distinct(29)
thf(fact_161_exp_Odistinct_I47_J, axiom,
    ((![X21 : list_char, X222 : exp_list_char, X121 : exp_list_char, X122 : exp_list_char, X123 : exp_list_char]: (~ (((cast_list_char @ X21 @ X222) = (cond_list_char @ X121 @ X122 @ X123))))))). % exp.distinct(47)
thf(fact_162_exp_Odistinct_I41_J, axiom,
    ((![X21 : list_char, X222 : exp_list_char, X91 : exp_list_char, X92 : list_char, X93 : list_exp_list_char]: (~ (((cast_list_char @ X21 @ X222) = (call_list_char @ X91 @ X92 @ X93))))))). % exp.distinct(41)
thf(fact_163_exp_Odistinct_I173_J, axiom,
    ((![X91 : exp_list_char, X92 : list_char, X93 : list_exp_list_char, X121 : exp_list_char, X122 : exp_list_char, X123 : exp_list_char]: (~ (((call_list_char @ X91 @ X92 @ X93) = (cond_list_char @ X121 @ X122 @ X123))))))). % exp.distinct(173)
thf(fact_164_red__reds_OCondRed, axiom,
    ((![E2 : exp_list_char, S2 : produc515445032on_val, E3 : exp_list_char, S3 : produc515445032on_val, P : list_P1234162913t_char, E_1 : exp_list_char, E_2 : exp_list_char]: ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ E2 @ S2) @ (produc2023458740on_val @ E3 @ S3)) @ (red @ P)) => (member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ (cond_list_char @ E2 @ E_1 @ E_2) @ S2) @ (produc2023458740on_val @ (cond_list_char @ E3 @ E_1 @ E_2) @ S3)) @ (red @ P)))))). % red_reds.CondRed
thf(fact_165_red__reds_OCastRed, axiom,
    ((![E2 : exp_list_char, S2 : produc515445032on_val, E3 : exp_list_char, S3 : produc515445032on_val, P : list_P1234162913t_char, C2 : list_char]: ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ E2 @ S2) @ (produc2023458740on_val @ E3 @ S3)) @ (red @ P)) => (member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ (cast_list_char @ C2 @ E2) @ S2) @ (produc2023458740on_val @ (cast_list_char @ C2 @ E3) @ S3)) @ (red @ P)))))). % red_reds.CastRed
thf(fact_166_WTrt__elim__cases_I2_J, axiom,
    ((![P : list_P1234162913t_char, H : nat > option2118145160on_val, E : list_char > option_ty, E2 : exp_list_char, E_1 : exp_list_char, E_2 : exp_list_char, T : ty]: ((wTrt @ P @ H @ E @ (cond_list_char @ E2 @ E_1 @ E_2) @ T) => (~ (((wTrt @ P @ H @ E @ E2 @ boolean) => (![T_1 : ty]: ((wTrt @ P @ H @ E @ E_1 @ T_1) => (![T_2 : ty]: ((wTrt @ P @ H @ E @ E_2 @ T_2) => (((widen_917054840t_char @ P @ T_1 @ T_2) | (widen_917054840t_char @ P @ T_2 @ T_1)) => (((widen_917054840t_char @ P @ T_1 @ T_2) => (T = T_2)) => (~ (((widen_917054840t_char @ P @ T_2 @ T_1) => (T = T_1))))))))))))))))). % WTrt_elim_cases(2)
thf(fact_167_WTrtCond, axiom,
    ((![P : list_P1234162913t_char, H : nat > option2118145160on_val, E : list_char > option_ty, E2 : exp_list_char, E_1 : exp_list_char, T_12 : ty, E_2 : exp_list_char, T_22 : ty, T : ty]: ((wTrt @ P @ H @ E @ E2 @ boolean) => ((wTrt @ P @ H @ E @ E_1 @ T_12) => ((wTrt @ P @ H @ E @ E_2 @ T_22) => (((widen_917054840t_char @ P @ T_12 @ T_22) | (widen_917054840t_char @ P @ T_22 @ T_12)) => (((widen_917054840t_char @ P @ T_12 @ T_22) => (T = T_22)) => (((widen_917054840t_char @ P @ T_22 @ T_12) => (T = T_12)) => (wTrt @ P @ H @ E @ (cond_list_char @ E2 @ E_1 @ E_2) @ T)))))))))). % WTrtCond
thf(fact_168_default__val_Osimps_I2_J, axiom,
    (((default_val @ boolean) = (bool @ $false)))). % default_val.simps(2)
thf(fact_169_ty_Odistinct_I11_J, axiom,
    ((~ ((boolean = nt))))). % ty.distinct(11)
thf(fact_170_red__lcl__add, 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, L_0 : list_char > option_val]: ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ E2 @ (produc52622304on_val @ H @ L)) @ (produc2023458740on_val @ E3 @ (produc52622304on_val @ H2 @ L2))) @ (red @ P)) => (member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ E2 @ (produc52622304on_val @ H @ (map_ad1615113112ar_val @ L_0 @ L))) @ (produc2023458740on_val @ E3 @ (produc52622304on_val @ H2 @ (map_ad1615113112ar_val @ L_0 @ L2)))) @ (red @ P)))))). % red_lcl_add
thf(fact_171_ty_Osize__gen_I2_J, axiom,
    (((size_ty @ boolean) = zero_zero_nat))). % ty.size_gen(2)
thf(fact_172_ty_Osize__gen_I4_J, axiom,
    (((size_ty @ nt) = zero_zero_nat))). % ty.size_gen(4)
thf(fact_173_Red__lcl__add, 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, L_0 : list_char > option_val]: ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ E2 @ (produc52622304on_val @ H @ L)) @ (produc2023458740on_val @ E3 @ (produc52622304on_val @ H2 @ L2))) @ (transi111096263on_val @ (red @ P))) => (member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ E2 @ (produc52622304on_val @ H @ (map_ad1615113112ar_val @ L_0 @ L))) @ (produc2023458740on_val @ E3 @ (produc52622304on_val @ H2 @ (map_ad1615113112ar_val @ L_0 @ L2)))) @ (transi111096263on_val @ (red @ P))))))). % Red_lcl_add
thf(fact_174_ty_Osize_I7_J, axiom,
    (((size_size_ty @ boolean) = zero_zero_nat))). % ty.size(7)
thf(fact_175_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_02 : list_char > option_val, E_12 : 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_02)) @ (produc2023458740on_val @ E_12 @ (produc52622304on_val @ H_1 @ L_1))) @ (red @ P)) => ((R @ E_12 @ H_1 @ L_1 @ E5 @ H4 @ L4) => (R @ E_0 @ H_0 @ L_02 @ E5 @ H4 @ L4)))) => (R @ E2 @ H @ L @ E3 @ H2 @ L2))))))). % converse_rtrancl_induct_red
thf(fact_176_ty_Osize_I9_J, axiom,
    (((size_size_ty @ nt) = zero_zero_nat))). % ty.size(9)
thf(fact_177_CondReds2F, axiom,
    ((![E2 : exp_list_char, S_0 : produc515445032on_val, S_1 : produc515445032on_val, P : list_P1234162913t_char, E_2 : exp_list_char, E3 : exp_list_char, S_2 : produc515445032on_val, E_1 : exp_list_char]: ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ E2 @ S_0) @ (produc2023458740on_val @ (val_list_char @ (bool @ $false)) @ S_1)) @ (transi111096263on_val @ (red @ P))) => ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ E_2 @ S_1) @ (produc2023458740on_val @ E3 @ S_2)) @ (transi111096263on_val @ (red @ P))) => (member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ (cond_list_char @ E2 @ E_1 @ E_2) @ S_0) @ (produc2023458740on_val @ E3 @ S_2)) @ (transi111096263on_val @ (red @ P)))))))). % CondReds2F
thf(fact_178_CondReds2T, axiom,
    ((![E2 : exp_list_char, S_0 : produc515445032on_val, S_1 : produc515445032on_val, P : list_P1234162913t_char, E_1 : exp_list_char, E3 : exp_list_char, S_2 : produc515445032on_val, E_2 : exp_list_char]: ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ E2 @ S_0) @ (produc2023458740on_val @ (val_list_char @ (bool @ $true)) @ S_1)) @ (transi111096263on_val @ (red @ P))) => ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ E_1 @ S_1) @ (produc2023458740on_val @ E3 @ S_2)) @ (transi111096263on_val @ (red @ P))) => (member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ (cond_list_char @ E2 @ E_1 @ E_2) @ S_0) @ (produc2023458740on_val @ E3 @ S_2)) @ (transi111096263on_val @ (red @ P)))))))). % CondReds2T

% Conjectures (1)
thf(conj_0, conjecture,
    ((v = null))).
