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

% Could-be-implicit typings (27)
thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_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_Mt__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_J, type,
    set_Pr1368603847on_val : $tType).
thf(ty_n_t__Product____Type__Oprod_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_Mt__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,
    produc1161703655on_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__Set__Oset_It__Product____Type__Oprod_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_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_Pr148564103on_val : $tType).
thf(ty_n_t__Product____Type__Oprod_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_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,
    produc744932519on_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__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_Mt__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, type,
    set_Pr2110063281on_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__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_Mt__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,
    produc1085126737on_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__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_Mt__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_J_J, type,
    set_Pr729957319t_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__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_Mt__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_J, type,
    produc442406631t_char : $tType).
thf(ty_n_t__Set__Oset_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,
    set_Pr2075231726on_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__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__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J, type,
    produc1257910179t_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__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 (77)
thf(sy_c_BigStep_Oeval, type,
    eval : list_P1234162913t_char > exp_list_char > produc515445032on_val > exp_list_char > produc515445032on_val > $o).
thf(sy_c_Conform_Oconf_001t__Product____Type__Oprod_It__List__Olist_It__List__Olist_It__String__Ochar_J_J_Mt__Expr__Oexp_It__List__Olist_It__String__Ochar_J_J_J, type,
    conf_P93989998t_char : list_P1234162913t_char > (nat > option2118145160on_val) > val > ty > $o).
thf(sy_c_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_Ooconf_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,
    oconf_454120169t_char : list_P1234162913t_char > (nat > option2118145160on_val) > produc266837688on_val > $o).
thf(sy_c_Exceptions_Opreallocated, type,
    preallocated : (nat > option2118145160on_val) > $o).
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_OFAss_001t__List__Olist_It__String__Ochar_J, type,
    fAss_list_char : exp_list_char > list_char > list_char > exp_list_char > exp_list_char).
thf(sy_c_Expr_Oexp_OLAss_001t__List__Olist_It__String__Ochar_J, type,
    lAss_list_char : 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_Expr_Oexp_Othrow_001t__List__Olist_It__String__Ochar_J, type,
    throw_list_char : exp_list_char > exp_list_char).
thf(sy_c_Fun_Ofun__upd_001t__List__Olist_It__String__Ochar_J_001t__Option__Ooption_It__Type__Oty_J, type,
    fun_up9191ion_ty : (list_char > option_ty) > list_char > option_ty > list_char > option_ty).
thf(sy_c_Fun_Ofun__upd_001t__List__Olist_It__String__Ochar_J_001t__Option__Ooption_It__Value__Oval_J, type,
    fun_up1252458416on_val : (list_char > option_val) > list_char > option_val > list_char > option_val).
thf(sy_c_Fun_Ofun__upd_001t__Nat__Onat_001t__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,
    fun_up262443479on_val : (nat > option2118145160on_val) > nat > option2118145160on_val > nat > option2118145160on_val).
thf(sy_c_Fun_Ofun__upd_001t__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_001t__Option__Ooption_It__Value__Oval_J, type,
    fun_up356838326on_val : (produc1257910179t_char > option_val) > produc1257910179t_char > option_val > produc1257910179t_char > option_val).
thf(sy_c_If_001t__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,
    if_opt451925058on_val : $o > option2118145160on_val > option2118145160on_val > option2118145160on_val).
thf(sy_c_If_001t__Option__Ooption_It__Value__Oval_J, type,
    if_option_val : $o > option_val > option_val > option_val).
thf(sy_c_Map_Omap__le_001t__List__Olist_It__String__Ochar_J_001t__Type__Oty, type,
    map_le_list_char_ty : (list_char > option_ty) > (list_char > option_ty) > $o).
thf(sy_c_Map_Omap__le_001t__List__Olist_It__String__Ochar_J_001t__Value__Oval, type,
    map_le_list_char_val : (list_char > option_val) > (list_char > option_val) > $o).
thf(sy_c_Map_Omap__le_001t__Nat__Onat_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,
    map_le931214383on_val : (nat > option2118145160on_val) > (nat > option2118145160on_val) > $o).
thf(sy_c_Map_Omap__le_001t__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_001t__Value__Oval, type,
    map_le179134014ar_val : (produc1257910179t_char > option_val) > (produc1257910179t_char > option_val) > $o).
thf(sy_c_Objects_Ohext, type,
    hext : (nat > option2118145160on_val) > (nat > option2118145160on_val) > $o).
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_Option_Ooption_Ocase__option_001_Eo_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,
    case_o1187854213on_val : $o > (produc266837688on_val > $o) > option2118145160on_val > $o).
thf(sy_c_Option_Ooption_Ocase__option_001_Eo_001t__Type__Oty, type,
    case_option_o_ty : $o > (ty > $o) > option_ty > $o).
thf(sy_c_Option_Ooption_Ocase__option_001_Eo_001t__Value__Oval, type,
    case_option_o_val : $o > (val > $o) > option_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__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__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_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,
    produc2106877847on_val : produc515445032on_val > produc515445032on_val > produc744932519on_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__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_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,
    produc881885833on_val : produc266837688on_val > produc266837688on_val > produc1085126737on_val).
thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_001t__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J, type,
    produc395356247t_char : produc1257910179t_char > produc1257910179t_char > produc442406631t_char).
thf(sy_c_Product__Type_OPair_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_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,
    produc564964183on_val : produc1172664615on_val > produc1172664615on_val > produc1161703655on_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_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__List__Olist_It__String__Ochar_J, type,
    transi1879726366t_char : set_Pr164112643t_char > set_Pr164112643t_char).
thf(sy_c_Transitive__Closure_Ortrancl_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,
    transi432893227on_val : set_Pr148564103on_val > set_Pr148564103on_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_Transitive__Closure_Ortrancl_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,
    transi2071064181on_val : set_Pr2110063281on_val > set_Pr2110063281on_val).
thf(sy_c_Transitive__Closure_Ortrancl_001t__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J, type,
    transi858104614t_char : set_Pr729957319t_char > set_Pr729957319t_char).
thf(sy_c_Transitive__Closure_Ortrancl_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,
    transi100378922on_val : set_Pr1368603847on_val > set_Pr1368603847on_val).
thf(sy_c_TypeRel_Ohas__field_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_fi599584195t_char : list_P1234162913t_char > list_char > list_char > ty > list_char > $o).
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_Type_Oty_OVoid, type,
    void : ty).
thf(sy_c_Value_Oval_OAddr, type,
    addr : nat > val).
thf(sy_c_Value_Oval_OUnit, type,
    unit : val).
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_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__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,
    member1296415951on_val : produc266837688on_val > set_Pr2075231726on_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__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_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,
    member2027247312on_val : produc744932519on_val > set_Pr148564103on_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__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_Mt__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,
    member197592058on_val : produc1085126737on_val > set_Pr2110063281on_val > $o).
thf(sy_c_member_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_Mt__Product____Type__Oprod_It__List__Olist_It__String__Ochar_J_Mt__List__Olist_It__String__Ochar_J_J_J, type,
    member803902992t_char : produc442406631t_char > set_Pr729957319t_char > $o).
thf(sy_c_member_001t__Product____Type__Oprod_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_Mt__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,
    member208988944on_val : produc1161703655on_val > set_Pr1368603847on_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_F____, type,
    f : list_char).
thf(sy_v_P, type,
    p : list_P1234162913t_char).
thf(sy_v_TF____, type,
    tf : ty).
thf(sy_v_T____, type,
    t : ty).
thf(sy_v_Tv____, type,
    tv : ty).
thf(sy_v_a____, type,
    a : nat).
thf(sy_v_fs____, type,
    fs : produc1257910179t_char > option_val).
thf(sy_v_ha____, type,
    ha : nat > option2118145160on_val).
thf(sy_v_v____, type,
    v : val).

% Relevant facts (245)
thf(fact_0_hconf, axiom,
    ((hconf_1244167010t_char @ p @ ha))). % hconf
thf(fact_1_has, axiom,
    ((has_fi599584195t_char @ p @ c @ f @ tf @ d))). % has
thf(fact_2_ha, axiom,
    (((ha @ a) = (some_P1299442195on_val @ (produc904988266on_val @ c @ fs))))). % ha
thf(fact_3_fun__upd__upd, axiom,
    ((![F : produc1257910179t_char > option_val, X : produc1257910179t_char, Y : option_val, Z : option_val]: ((fun_up356838326on_val @ (fun_up356838326on_val @ F @ X @ Y) @ X @ Z) = (fun_up356838326on_val @ F @ X @ Z))))). % fun_upd_upd
thf(fact_4_fun__upd__upd, axiom,
    ((![F : nat > option2118145160on_val, X : nat, Y : option2118145160on_val, Z : option2118145160on_val]: ((fun_up262443479on_val @ (fun_up262443479on_val @ F @ X @ Y) @ X @ Z) = (fun_up262443479on_val @ F @ X @ Z))))). % fun_upd_upd
thf(fact_5_fun__upd__upd, axiom,
    ((![F : list_char > option_val, X : list_char, Y : option_val, Z : option_val]: ((fun_up1252458416on_val @ (fun_up1252458416on_val @ F @ X @ Y) @ X @ Z) = (fun_up1252458416on_val @ F @ X @ Z))))). % fun_upd_upd
thf(fact_6_fun__upd__triv, axiom,
    ((![F : produc1257910179t_char > option_val, X : produc1257910179t_char]: ((fun_up356838326on_val @ F @ X @ (F @ X)) = F)))). % fun_upd_triv
thf(fact_7_fun__upd__triv, axiom,
    ((![F : nat > option2118145160on_val, X : nat]: ((fun_up262443479on_val @ F @ X @ (F @ X)) = F)))). % fun_upd_triv
thf(fact_8_fun__upd__triv, axiom,
    ((![F : list_char > option_val, X : list_char]: ((fun_up1252458416on_val @ F @ X @ (F @ X)) = F)))). % fun_upd_triv
thf(fact_9_fun__upd__apply, axiom,
    ((fun_up356838326on_val = (^[F2 : produc1257910179t_char > option_val]: (^[X2 : produc1257910179t_char]: (^[Y2 : option_val]: (^[Z2 : produc1257910179t_char]: (if_option_val @ (Z2 = X2) @ Y2 @ (F2 @ Z2))))))))). % fun_upd_apply
thf(fact_10_fun__upd__apply, axiom,
    ((fun_up262443479on_val = (^[F2 : nat > option2118145160on_val]: (^[X2 : nat]: (^[Y2 : option2118145160on_val]: (^[Z2 : nat]: (if_opt451925058on_val @ (Z2 = X2) @ Y2 @ (F2 @ Z2))))))))). % fun_upd_apply
thf(fact_11_fun__upd__apply, axiom,
    ((fun_up1252458416on_val = (^[F2 : list_char > option_val]: (^[X2 : list_char]: (^[Y2 : option_val]: (^[Z2 : list_char]: (if_option_val @ (Z2 = X2) @ Y2 @ (F2 @ Z2))))))))). % fun_upd_apply
thf(fact_12_option_Oinject, axiom,
    ((![X22 : val, Y22 : val]: (((some_val @ X22) = (some_val @ Y22)) = (X22 = Y22))))). % option.inject
thf(fact_13_option_Oinject, axiom,
    ((![X22 : produc266837688on_val, Y22 : produc266837688on_val]: (((some_P1299442195on_val @ X22) = (some_P1299442195on_val @ Y22)) = (X22 = Y22))))). % option.inject
thf(fact_14_option_Oinject, axiom,
    ((![X22 : ty, Y22 : ty]: (((some_ty @ X22) = (some_ty @ Y22)) = (X22 = Y22))))). % option.inject
thf(fact_15_prod_Oinject, axiom,
    ((![X1 : list_char, X22 : produc1257910179t_char > option_val, Y1 : list_char, Y22 : produc1257910179t_char > option_val]: (((produc904988266on_val @ X1 @ X22) = (produc904988266on_val @ Y1 @ Y22)) = (((X1 = Y1)) & ((X22 = Y22))))))). % prod.inject
thf(fact_16_prod_Oinject, axiom,
    ((![X1 : list_char, X22 : list_char, Y1 : list_char, Y22 : list_char]: (((produc1304532571t_char @ X1 @ X22) = (produc1304532571t_char @ Y1 @ Y22)) = (((X1 = Y1)) & ((X22 = Y22))))))). % prod.inject
thf(fact_17_prod_Oinject, axiom,
    ((![X1 : produc1097884484on_val, X22 : produc1097884484on_val, Y1 : produc1097884484on_val, Y22 : produc1097884484on_val]: (((produc1069526295on_val @ X1 @ X22) = (produc1069526295on_val @ Y1 @ Y22)) = (((X1 = Y1)) & ((X22 = Y22))))))). % prod.inject
thf(fact_18_prod_Oinject, axiom,
    ((![X1 : exp_list_char, X22 : produc515445032on_val, Y1 : exp_list_char, Y22 : produc515445032on_val]: (((produc2023458740on_val @ X1 @ X22) = (produc2023458740on_val @ Y1 @ Y22)) = (((X1 = Y1)) & ((X22 = Y22))))))). % prod.inject
thf(fact_19_prod_Oinject, axiom,
    ((![X1 : nat > option2118145160on_val, X22 : list_char > option_val, Y1 : nat > option2118145160on_val, Y22 : list_char > option_val]: (((produc52622304on_val @ X1 @ X22) = (produc52622304on_val @ Y1 @ Y22)) = (((X1 = Y1)) & ((X22 = Y22))))))). % prod.inject
thf(fact_20_old_Oprod_Oinject, axiom,
    ((![A : list_char, B : produc1257910179t_char > option_val, A2 : list_char, B2 : produc1257910179t_char > option_val]: (((produc904988266on_val @ A @ B) = (produc904988266on_val @ A2 @ B2)) = (((A = A2)) & ((B = B2))))))). % old.prod.inject
thf(fact_21_old_Oprod_Oinject, axiom,
    ((![A : list_char, B : list_char, A2 : list_char, B2 : list_char]: (((produc1304532571t_char @ A @ B) = (produc1304532571t_char @ A2 @ B2)) = (((A = A2)) & ((B = B2))))))). % old.prod.inject
thf(fact_22_old_Oprod_Oinject, axiom,
    ((![A : produc1097884484on_val, B : produc1097884484on_val, A2 : produc1097884484on_val, B2 : produc1097884484on_val]: (((produc1069526295on_val @ A @ B) = (produc1069526295on_val @ A2 @ B2)) = (((A = A2)) & ((B = B2))))))). % old.prod.inject
thf(fact_23_old_Oprod_Oinject, axiom,
    ((![A : exp_list_char, B : produc515445032on_val, A2 : exp_list_char, B2 : produc515445032on_val]: (((produc2023458740on_val @ A @ B) = (produc2023458740on_val @ A2 @ B2)) = (((A = A2)) & ((B = B2))))))). % old.prod.inject
thf(fact_24_old_Oprod_Oinject, axiom,
    ((![A : nat > option2118145160on_val, B : list_char > option_val, A2 : nat > option2118145160on_val, B2 : list_char > option_val]: (((produc52622304on_val @ A @ B) = (produc52622304on_val @ A2 @ B2)) = (((A = A2)) & ((B = B2))))))). % old.prod.inject
thf(fact_25_map__upd__eqD1, axiom,
    ((![M : produc1257910179t_char > option_val, A : produc1257910179t_char, X : val, N : produc1257910179t_char > option_val, Y : val]: (((fun_up356838326on_val @ M @ A @ (some_val @ X)) = (fun_up356838326on_val @ N @ A @ (some_val @ Y))) => (X = Y))))). % map_upd_eqD1
thf(fact_26_map__upd__eqD1, axiom,
    ((![M : list_char > option_val, A : list_char, X : val, N : list_char > option_val, Y : val]: (((fun_up1252458416on_val @ M @ A @ (some_val @ X)) = (fun_up1252458416on_val @ N @ A @ (some_val @ Y))) => (X = Y))))). % map_upd_eqD1
thf(fact_27_map__upd__eqD1, axiom,
    ((![M : nat > option2118145160on_val, A : nat, X : produc266837688on_val, N : nat > option2118145160on_val, Y : produc266837688on_val]: (((fun_up262443479on_val @ M @ A @ (some_P1299442195on_val @ X)) = (fun_up262443479on_val @ N @ A @ (some_P1299442195on_val @ Y))) => (X = Y))))). % map_upd_eqD1
thf(fact_28_map__upd__triv, axiom,
    ((![T : produc1257910179t_char > option_val, K : produc1257910179t_char, X : val]: (((T @ K) = (some_val @ X)) => ((fun_up356838326on_val @ T @ K @ (some_val @ X)) = T))))). % map_upd_triv
thf(fact_29_map__upd__triv, axiom,
    ((![T : list_char > option_val, K : list_char, X : val]: (((T @ K) = (some_val @ X)) => ((fun_up1252458416on_val @ T @ K @ (some_val @ X)) = T))))). % map_upd_triv
thf(fact_30_map__upd__triv, axiom,
    ((![T : nat > option2118145160on_val, K : nat, X : produc266837688on_val]: (((T @ K) = (some_P1299442195on_val @ X)) => ((fun_up262443479on_val @ T @ K @ (some_P1299442195on_val @ X)) = T))))). % map_upd_triv
thf(fact_31_map__upd__Some__unfold, axiom,
    ((![M : produc1257910179t_char > option_val, A : produc1257910179t_char, B : val, X : produc1257910179t_char, Y : val]: (((fun_up356838326on_val @ M @ A @ (some_val @ B) @ X) = (some_val @ Y)) = (((((X = A)) & ((B = Y)))) | ((((~ ((X = A)))) & (((M @ X) = (some_val @ Y)))))))))). % map_upd_Some_unfold
thf(fact_32_map__upd__Some__unfold, axiom,
    ((![M : list_char > option_val, A : list_char, B : val, X : list_char, Y : val]: (((fun_up1252458416on_val @ M @ A @ (some_val @ B) @ X) = (some_val @ Y)) = (((((X = A)) & ((B = Y)))) | ((((~ ((X = A)))) & (((M @ X) = (some_val @ Y)))))))))). % map_upd_Some_unfold
thf(fact_33_map__upd__Some__unfold, axiom,
    ((![M : nat > option2118145160on_val, A : nat, B : produc266837688on_val, X : nat, Y : produc266837688on_val]: (((fun_up262443479on_val @ M @ A @ (some_P1299442195on_val @ B) @ X) = (some_P1299442195on_val @ Y)) = (((((X = A)) & ((B = Y)))) | ((((~ ((X = A)))) & (((M @ X) = (some_P1299442195on_val @ Y)))))))))). % map_upd_Some_unfold
thf(fact_34__092_060open_062_092_060And_062thesis_O_A_I_092_060And_062TF_ATv_O_A_092_060lbrakk_062typeof_092_060_094bsub_062h_092_060_094esub_062_Av_A_061_A_092_060lfloor_062Tv_092_060rfloor_062_059_AP_A_092_060turnstile_062_AC_Ahas_AF_058TF_Ain_AD_059_AP_A_092_060turnstile_062_ATv_A_092_060le_062_ATF_092_060rbrakk_062_A_092_060Longrightarrow_062_Athesis_J_A_092_060Longrightarrow_062_Athesis_092_060close_062, axiom,
    ((~ ((![TF : ty, Tv : ty]: (((typeof_h @ ha @ v) = (some_ty @ Tv)) => ((has_fi599584195t_char @ p @ c @ f @ TF @ d) => (~ ((widen_917054840t_char @ p @ Tv @ TF)))))))))). % \<open>\<And>thesis. (\<And>TF Tv. \<lbrakk>typeof\<^bsub>h\<^esub> v = \<lfloor>Tv\<rfloor>; P \<turnstile> C has F:TF in D; P \<turnstile> Tv \<le> TF\<rbrakk> \<Longrightarrow> thesis) \<Longrightarrow> thesis\<close>
thf(fact_35_typeofv, axiom,
    (((typeof_h @ ha @ v) = (some_ty @ tv)))). % typeofv
thf(fact_36_sub, axiom,
    ((widen_917054840t_char @ p @ tv @ tf))). % sub
thf(fact_37_old_Oprod_Oinducts, axiom,
    ((![P : produc266837688on_val > $o, Prod : produc266837688on_val]: ((![A3 : list_char, B3 : produc1257910179t_char > option_val]: (P @ (produc904988266on_val @ A3 @ B3))) => (P @ Prod))))). % old.prod.inducts
thf(fact_38_old_Oprod_Oinducts, axiom,
    ((![P : produc1257910179t_char > $o, Prod : produc1257910179t_char]: ((![A3 : list_char, B3 : list_char]: (P @ (produc1304532571t_char @ A3 @ B3))) => (P @ Prod))))). % old.prod.inducts
thf(fact_39_old_Oprod_Oinducts, axiom,
    ((![P : produc1172664615on_val > $o, Prod : produc1172664615on_val]: ((![A3 : produc1097884484on_val, B3 : produc1097884484on_val]: (P @ (produc1069526295on_val @ A3 @ B3))) => (P @ Prod))))). % old.prod.inducts
thf(fact_40_old_Oprod_Oinducts, axiom,
    ((![P : produc1097884484on_val > $o, Prod : produc1097884484on_val]: ((![A3 : exp_list_char, B3 : produc515445032on_val]: (P @ (produc2023458740on_val @ A3 @ B3))) => (P @ Prod))))). % old.prod.inducts
thf(fact_41_old_Oprod_Oinducts, axiom,
    ((![P : produc515445032on_val > $o, Prod : produc515445032on_val]: ((![A3 : nat > option2118145160on_val, B3 : list_char > option_val]: (P @ (produc52622304on_val @ A3 @ B3))) => (P @ Prod))))). % old.prod.inducts
thf(fact_42_old_Oprod_Oexhaust, axiom,
    ((![Y : produc266837688on_val]: (~ ((![A3 : list_char, B3 : produc1257910179t_char > option_val]: (~ ((Y = (produc904988266on_val @ A3 @ B3)))))))))). % old.prod.exhaust
thf(fact_43_old_Oprod_Oexhaust, axiom,
    ((![Y : produc1257910179t_char]: (~ ((![A3 : list_char, B3 : list_char]: (~ ((Y = (produc1304532571t_char @ A3 @ B3)))))))))). % old.prod.exhaust
thf(fact_44_old_Oprod_Oexhaust, axiom,
    ((![Y : produc1172664615on_val]: (~ ((![A3 : produc1097884484on_val, B3 : produc1097884484on_val]: (~ ((Y = (produc1069526295on_val @ A3 @ B3)))))))))). % old.prod.exhaust
thf(fact_45_old_Oprod_Oexhaust, axiom,
    ((![Y : produc1097884484on_val]: (~ ((![A3 : exp_list_char, B3 : produc515445032on_val]: (~ ((Y = (produc2023458740on_val @ A3 @ B3)))))))))). % old.prod.exhaust
thf(fact_46_old_Oprod_Oexhaust, axiom,
    ((![Y : produc515445032on_val]: (~ ((![A3 : nat > option2118145160on_val, B3 : list_char > option_val]: (~ ((Y = (produc52622304on_val @ A3 @ B3)))))))))). % old.prod.exhaust
thf(fact_47_prod__induct4, axiom,
    ((![P : produc1172664615on_val > $o, X : produc1172664615on_val]: ((![A3 : produc1097884484on_val, B3 : exp_list_char, C : nat > option2118145160on_val, D : list_char > option_val]: (P @ (produc1069526295on_val @ A3 @ (produc2023458740on_val @ B3 @ (produc52622304on_val @ C @ D))))) => (P @ X))))). % prod_induct4
thf(fact_48_prod__induct3, axiom,
    ((![P : produc1172664615on_val > $o, X : produc1172664615on_val]: ((![A3 : produc1097884484on_val, B3 : exp_list_char, C : produc515445032on_val]: (P @ (produc1069526295on_val @ A3 @ (produc2023458740on_val @ B3 @ C)))) => (P @ X))))). % prod_induct3
thf(fact_49_prod__induct3, axiom,
    ((![P : produc1097884484on_val > $o, X : produc1097884484on_val]: ((![A3 : exp_list_char, B3 : nat > option2118145160on_val, C : list_char > option_val]: (P @ (produc2023458740on_val @ A3 @ (produc52622304on_val @ B3 @ C)))) => (P @ X))))). % prod_induct3
thf(fact_50_prod__cases4, axiom,
    ((![Y : produc1172664615on_val]: (~ ((![A3 : produc1097884484on_val, B3 : exp_list_char, C : nat > option2118145160on_val, D : list_char > option_val]: (~ ((Y = (produc1069526295on_val @ A3 @ (produc2023458740on_val @ B3 @ (produc52622304on_val @ C @ D)))))))))))). % prod_cases4
thf(fact_51_prod__cases3, axiom,
    ((![Y : produc1172664615on_val]: (~ ((![A3 : produc1097884484on_val, B3 : exp_list_char, C : produc515445032on_val]: (~ ((Y = (produc1069526295on_val @ A3 @ (produc2023458740on_val @ B3 @ C))))))))))). % prod_cases3
thf(fact_52_prod__cases3, axiom,
    ((![Y : produc1097884484on_val]: (~ ((![A3 : exp_list_char, B3 : nat > option2118145160on_val, C : list_char > option_val]: (~ ((Y = (produc2023458740on_val @ A3 @ (produc52622304on_val @ B3 @ C))))))))))). % prod_cases3
thf(fact_53_Pair__inject, axiom,
    ((![A : list_char, B : produc1257910179t_char > option_val, A2 : list_char, B2 : produc1257910179t_char > option_val]: (((produc904988266on_val @ A @ B) = (produc904988266on_val @ A2 @ B2)) => (~ (((A = A2) => (~ ((B = B2)))))))))). % Pair_inject
thf(fact_54_Pair__inject, axiom,
    ((![A : list_char, B : list_char, A2 : list_char, B2 : list_char]: (((produc1304532571t_char @ A @ B) = (produc1304532571t_char @ A2 @ B2)) => (~ (((A = A2) => (~ ((B = B2)))))))))). % Pair_inject
thf(fact_55_Pair__inject, axiom,
    ((![A : produc1097884484on_val, B : produc1097884484on_val, A2 : produc1097884484on_val, B2 : produc1097884484on_val]: (((produc1069526295on_val @ A @ B) = (produc1069526295on_val @ A2 @ B2)) => (~ (((A = A2) => (~ ((B = B2)))))))))). % Pair_inject
thf(fact_56_Pair__inject, axiom,
    ((![A : exp_list_char, B : produc515445032on_val, A2 : exp_list_char, B2 : produc515445032on_val]: (((produc2023458740on_val @ A @ B) = (produc2023458740on_val @ A2 @ B2)) => (~ (((A = A2) => (~ ((B = B2)))))))))). % Pair_inject
thf(fact_57_Pair__inject, axiom,
    ((![A : nat > option2118145160on_val, B : list_char > option_val, A2 : nat > option2118145160on_val, B2 : list_char > option_val]: (((produc52622304on_val @ A @ B) = (produc52622304on_val @ A2 @ B2)) => (~ (((A = A2) => (~ ((B = B2)))))))))). % Pair_inject
thf(fact_58_prod__cases, axiom,
    ((![P : produc266837688on_val > $o, P2 : produc266837688on_val]: ((![A3 : list_char, B3 : produc1257910179t_char > option_val]: (P @ (produc904988266on_val @ A3 @ B3))) => (P @ P2))))). % prod_cases
thf(fact_59_prod__cases, axiom,
    ((![P : produc1257910179t_char > $o, P2 : produc1257910179t_char]: ((![A3 : list_char, B3 : list_char]: (P @ (produc1304532571t_char @ A3 @ B3))) => (P @ P2))))). % prod_cases
thf(fact_60_prod__cases, axiom,
    ((![P : produc1172664615on_val > $o, P2 : produc1172664615on_val]: ((![A3 : produc1097884484on_val, B3 : produc1097884484on_val]: (P @ (produc1069526295on_val @ A3 @ B3))) => (P @ P2))))). % prod_cases
thf(fact_61_prod__cases, axiom,
    ((![P : produc1097884484on_val > $o, P2 : produc1097884484on_val]: ((![A3 : exp_list_char, B3 : produc515445032on_val]: (P @ (produc2023458740on_val @ A3 @ B3))) => (P @ P2))))). % prod_cases
thf(fact_62_prod__cases, axiom,
    ((![P : produc515445032on_val > $o, P2 : produc515445032on_val]: ((![A3 : nat > option2118145160on_val, B3 : list_char > option_val]: (P @ (produc52622304on_val @ A3 @ B3))) => (P @ P2))))). % prod_cases
thf(fact_63_surj__pair, axiom,
    ((![P2 : produc266837688on_val]: (?[X3 : list_char, Y3 : produc1257910179t_char > option_val]: (P2 = (produc904988266on_val @ X3 @ Y3)))))). % surj_pair
thf(fact_64_surj__pair, axiom,
    ((![P2 : produc1257910179t_char]: (?[X3 : list_char, Y3 : list_char]: (P2 = (produc1304532571t_char @ X3 @ Y3)))))). % surj_pair
thf(fact_65_surj__pair, axiom,
    ((![P2 : produc1172664615on_val]: (?[X3 : produc1097884484on_val, Y3 : produc1097884484on_val]: (P2 = (produc1069526295on_val @ X3 @ Y3)))))). % surj_pair
thf(fact_66_surj__pair, axiom,
    ((![P2 : produc1097884484on_val]: (?[X3 : exp_list_char, Y3 : produc515445032on_val]: (P2 = (produc2023458740on_val @ X3 @ Y3)))))). % surj_pair
thf(fact_67_surj__pair, axiom,
    ((![P2 : produc515445032on_val]: (?[X3 : nat > option2118145160on_val, Y3 : list_char > option_val]: (P2 = (produc52622304on_val @ X3 @ Y3)))))). % surj_pair
thf(fact_68_fun__upd__idem__iff, axiom,
    ((![F : produc1257910179t_char > option_val, X : produc1257910179t_char, Y : option_val]: (((fun_up356838326on_val @ F @ X @ Y) = F) = ((F @ X) = Y))))). % fun_upd_idem_iff
thf(fact_69_fun__upd__idem__iff, axiom,
    ((![F : nat > option2118145160on_val, X : nat, Y : option2118145160on_val]: (((fun_up262443479on_val @ F @ X @ Y) = F) = ((F @ X) = Y))))). % fun_upd_idem_iff
thf(fact_70_fun__upd__idem__iff, axiom,
    ((![F : list_char > option_val, X : list_char, Y : option_val]: (((fun_up1252458416on_val @ F @ X @ Y) = F) = ((F @ X) = Y))))). % fun_upd_idem_iff
thf(fact_71_fun__upd__twist, axiom,
    ((![A : produc1257910179t_char, C2 : produc1257910179t_char, M : produc1257910179t_char > option_val, B : option_val, D2 : option_val]: ((~ ((A = C2))) => ((fun_up356838326on_val @ (fun_up356838326on_val @ M @ A @ B) @ C2 @ D2) = (fun_up356838326on_val @ (fun_up356838326on_val @ M @ C2 @ D2) @ A @ B)))))). % fun_upd_twist
thf(fact_72_fun__upd__twist, axiom,
    ((![A : nat, C2 : nat, M : nat > option2118145160on_val, B : option2118145160on_val, D2 : option2118145160on_val]: ((~ ((A = C2))) => ((fun_up262443479on_val @ (fun_up262443479on_val @ M @ A @ B) @ C2 @ D2) = (fun_up262443479on_val @ (fun_up262443479on_val @ M @ C2 @ D2) @ A @ B)))))). % fun_upd_twist
thf(fact_73_fun__upd__twist, axiom,
    ((![A : list_char, C2 : list_char, M : list_char > option_val, B : option_val, D2 : option_val]: ((~ ((A = C2))) => ((fun_up1252458416on_val @ (fun_up1252458416on_val @ M @ A @ B) @ C2 @ D2) = (fun_up1252458416on_val @ (fun_up1252458416on_val @ M @ C2 @ D2) @ A @ B)))))). % fun_upd_twist
thf(fact_74_fun__upd__other, axiom,
    ((![Z : produc1257910179t_char, X : produc1257910179t_char, F : produc1257910179t_char > option_val, Y : option_val]: ((~ ((Z = X))) => ((fun_up356838326on_val @ F @ X @ Y @ Z) = (F @ Z)))))). % fun_upd_other
thf(fact_75_fun__upd__other, axiom,
    ((![Z : nat, X : nat, F : nat > option2118145160on_val, Y : option2118145160on_val]: ((~ ((Z = X))) => ((fun_up262443479on_val @ F @ X @ Y @ Z) = (F @ Z)))))). % fun_upd_other
thf(fact_76_fun__upd__other, axiom,
    ((![Z : list_char, X : list_char, F : list_char > option_val, Y : option_val]: ((~ ((Z = X))) => ((fun_up1252458416on_val @ F @ X @ Y @ Z) = (F @ Z)))))). % fun_upd_other
thf(fact_77_fun__upd__same, axiom,
    ((![F : produc1257910179t_char > option_val, X : produc1257910179t_char, Y : option_val]: ((fun_up356838326on_val @ F @ X @ Y @ X) = Y)))). % fun_upd_same
thf(fact_78_fun__upd__same, axiom,
    ((![F : nat > option2118145160on_val, X : nat, Y : option2118145160on_val]: ((fun_up262443479on_val @ F @ X @ Y @ X) = Y)))). % fun_upd_same
thf(fact_79_fun__upd__same, axiom,
    ((![F : list_char > option_val, X : list_char, Y : option_val]: ((fun_up1252458416on_val @ F @ X @ Y @ X) = Y)))). % fun_upd_same
thf(fact_80_fun__upd__idem, axiom,
    ((![F : produc1257910179t_char > option_val, X : produc1257910179t_char, Y : option_val]: (((F @ X) = Y) => ((fun_up356838326on_val @ F @ X @ Y) = F))))). % fun_upd_idem
thf(fact_81_fun__upd__idem, axiom,
    ((![F : nat > option2118145160on_val, X : nat, Y : option2118145160on_val]: (((F @ X) = Y) => ((fun_up262443479on_val @ F @ X @ Y) = F))))). % fun_upd_idem
thf(fact_82_fun__upd__idem, axiom,
    ((![F : list_char > option_val, X : list_char, Y : option_val]: (((F @ X) = Y) => ((fun_up1252458416on_val @ F @ X @ Y) = F))))). % fun_upd_idem
thf(fact_83_fun__upd__eqD, axiom,
    ((![F : produc1257910179t_char > option_val, X : produc1257910179t_char, Y : option_val, G : produc1257910179t_char > option_val, Z : option_val]: (((fun_up356838326on_val @ F @ X @ Y) = (fun_up356838326on_val @ G @ X @ Z)) => (Y = Z))))). % fun_upd_eqD
thf(fact_84_fun__upd__eqD, axiom,
    ((![F : nat > option2118145160on_val, X : nat, Y : option2118145160on_val, G : nat > option2118145160on_val, Z : option2118145160on_val]: (((fun_up262443479on_val @ F @ X @ Y) = (fun_up262443479on_val @ G @ X @ Z)) => (Y = Z))))). % fun_upd_eqD
thf(fact_85_fun__upd__eqD, axiom,
    ((![F : list_char > option_val, X : list_char, Y : option_val, G : list_char > option_val, Z : option_val]: (((fun_up1252458416on_val @ F @ X @ Y) = (fun_up1252458416on_val @ G @ X @ Z)) => (Y = Z))))). % fun_upd_eqD
thf(fact_86_fun__upd__def, axiom,
    ((fun_up356838326on_val = (^[F2 : produc1257910179t_char > option_val]: (^[A4 : produc1257910179t_char]: (^[B4 : option_val]: (^[X2 : produc1257910179t_char]: (if_option_val @ (X2 = A4) @ B4 @ (F2 @ X2))))))))). % fun_upd_def
thf(fact_87_fun__upd__def, axiom,
    ((fun_up262443479on_val = (^[F2 : nat > option2118145160on_val]: (^[A4 : nat]: (^[B4 : option2118145160on_val]: (^[X2 : nat]: (if_opt451925058on_val @ (X2 = A4) @ B4 @ (F2 @ X2))))))))). % fun_upd_def
thf(fact_88_fun__upd__def, axiom,
    ((fun_up1252458416on_val = (^[F2 : list_char > option_val]: (^[A4 : list_char]: (^[B4 : option_val]: (^[X2 : list_char]: (if_option_val @ (X2 = A4) @ B4 @ (F2 @ X2))))))))). % fun_upd_def
thf(fact_89_hconf__upd__obj, axiom,
    ((![P : list_P1234162913t_char, H : nat > option2118145160on_val, A : nat, C3 : list_char, Fs : produc1257910179t_char > option_val, Fs2 : produc1257910179t_char > option_val]: ((hconf_1244167010t_char @ P @ H) => (((H @ A) = (some_P1299442195on_val @ (produc904988266on_val @ C3 @ Fs))) => ((oconf_454120169t_char @ P @ H @ (produc904988266on_val @ C3 @ Fs2)) => (hconf_1244167010t_char @ P @ (fun_up262443479on_val @ H @ A @ (some_P1299442195on_val @ (produc904988266on_val @ C3 @ Fs2)))))))))). % hconf_upd_obj
thf(fact_90_hconfD, axiom,
    ((![P : list_P1234162913t_char, H : nat > option2118145160on_val, A : nat, Obj : produc266837688on_val]: ((hconf_1244167010t_char @ P @ H) => (((H @ A) = (some_P1299442195on_val @ Obj)) => (oconf_454120169t_char @ P @ H @ Obj)))))). % hconfD
thf(fact_91_oconf__upd__obj, axiom,
    ((![P : list_P1234162913t_char, H : nat > option2118145160on_val, Obj : produc266837688on_val, A : nat, C3 : list_char, Fs : produc1257910179t_char > option_val, Fs2 : produc1257910179t_char > option_val]: ((oconf_454120169t_char @ P @ H @ Obj) => (((H @ A) = (some_P1299442195on_val @ (produc904988266on_val @ C3 @ Fs))) => (oconf_454120169t_char @ P @ (fun_up262443479on_val @ H @ A @ (some_P1299442195on_val @ (produc904988266on_val @ C3 @ Fs2))) @ Obj)))))). % oconf_upd_obj
thf(fact_92_oconf__fupd, axiom,
    ((![P : list_P1234162913t_char, C3 : list_char, F3 : list_char, T2 : ty, D3 : list_char, H : nat > option2118145160on_val, V : val, Fs : produc1257910179t_char > option_val]: ((has_fi599584195t_char @ P @ C3 @ F3 @ T2 @ D3) => ((conf_P93989998t_char @ P @ H @ V @ T2) => ((oconf_454120169t_char @ P @ H @ (produc904988266on_val @ C3 @ Fs)) => (oconf_454120169t_char @ P @ H @ (produc904988266on_val @ C3 @ (fun_up356838326on_val @ Fs @ (produc1304532571t_char @ F3 @ D3) @ (some_val @ V)))))))))). % oconf_fupd
thf(fact_93_RedFAss_Oprems_I2_J, axiom,
    ((hconf_1244167010t_char @ p @ ha))). % RedFAss.prems(2)
thf(fact_94_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_95_mem__Collect__eq, axiom,
    ((![A : produc1172664615on_val, P : produc1172664615on_val > $o]: ((member354538064on_val @ A @ (collec2055896722on_val @ P)) = (P @ A))))). % mem_Collect_eq
thf(fact_96_Collect__mem__eq, axiom,
    ((![A5 : set_Pr1189492743on_val]: ((collec2055896722on_val @ (^[X2 : produc1172664615on_val]: (member354538064on_val @ X2 @ A5))) = A5)))). % Collect_mem_eq
thf(fact_97_widen__refl, axiom,
    ((![P : list_P1234162913t_char, T2 : ty]: (widen_917054840t_char @ P @ T2 @ T2)))). % widen_refl
thf(fact_98_hconf__def, axiom,
    ((hconf_1244167010t_char = (^[P3 : list_P1234162913t_char]: (^[H2 : nat > option2118145160on_val]: (((![A4 : nat]: (![Obj2 : produc266837688on_val]: ((((H2 @ A4) = (some_P1299442195on_val @ Obj2))) => ((oconf_454120169t_char @ P3 @ H2 @ Obj2)))))) & ((preallocated @ H2)))))))). % hconf_def
thf(fact_99_conf__widen, axiom,
    ((![P : list_P1234162913t_char, H : nat > option2118145160on_val, V : val, T2 : ty, T3 : ty]: ((conf_P93989998t_char @ P @ H @ V @ T2) => ((widen_917054840t_char @ P @ T2 @ T3) => (conf_P93989998t_char @ P @ H @ V @ T3)))))). % conf_widen
thf(fact_100_conf__def, axiom,
    ((conf_P93989998t_char = (^[P3 : list_P1234162913t_char]: (^[H2 : nat > option2118145160on_val]: (^[V2 : val]: (^[T4 : ty]: (?[T5 : ty]: ((((typeof_h @ H2 @ V2) = (some_ty @ T5))) & ((widen_917054840t_char @ P3 @ T5 @ T4))))))))))). % conf_def
thf(fact_101_preallocated__upd__obj, axiom,
    ((![H : nat > option2118145160on_val, A : nat, C3 : list_char, Fs : produc1257910179t_char > option_val, Fs2 : produc1257910179t_char > option_val]: ((preallocated @ H) => (((H @ A) = (some_P1299442195on_val @ (produc904988266on_val @ C3 @ Fs))) => (preallocated @ (fun_up262443479on_val @ H @ A @ (some_P1299442195on_val @ (produc904988266on_val @ C3 @ Fs2))))))))). % preallocated_upd_obj
thf(fact_102_hconf__new, axiom,
    ((![P : list_P1234162913t_char, H : nat > option2118145160on_val, A : nat, Obj : produc266837688on_val]: ((hconf_1244167010t_char @ P @ H) => (((H @ A) = none_P1535574167on_val) => ((oconf_454120169t_char @ P @ H @ Obj) => (hconf_1244167010t_char @ P @ (fun_up262443479on_val @ H @ A @ (some_P1299442195on_val @ Obj))))))))). % hconf_new
thf(fact_103_pred__equals__eq2, axiom,
    ((![R : set_Pr2075231726on_val, S : set_Pr2075231726on_val]: (((^[X2 : list_char]: (^[Y2 : produc1257910179t_char > option_val]: (member1296415951on_val @ (produc904988266on_val @ X2 @ Y2) @ R))) = (^[X2 : list_char]: (^[Y2 : produc1257910179t_char > option_val]: (member1296415951on_val @ (produc904988266on_val @ X2 @ Y2) @ S)))) = (R = S))))). % pred_equals_eq2
thf(fact_104_pred__equals__eq2, axiom,
    ((![R : set_Pr164112643t_char, S : set_Pr164112643t_char]: (((^[X2 : list_char]: (^[Y2 : list_char]: (member89690956t_char @ (produc1304532571t_char @ X2 @ Y2) @ R))) = (^[X2 : list_char]: (^[Y2 : list_char]: (member89690956t_char @ (produc1304532571t_char @ X2 @ Y2) @ S)))) = (R = S))))). % pred_equals_eq2
thf(fact_105_pred__equals__eq2, axiom,
    ((![R : set_Pr1189492743on_val, S : set_Pr1189492743on_val]: (((^[X2 : produc1097884484on_val]: (^[Y2 : produc1097884484on_val]: (member354538064on_val @ (produc1069526295on_val @ X2 @ Y2) @ R))) = (^[X2 : produc1097884484on_val]: (^[Y2 : produc1097884484on_val]: (member354538064on_val @ (produc1069526295on_val @ X2 @ Y2) @ S)))) = (R = S))))). % pred_equals_eq2
thf(fact_106_pred__equals__eq2, axiom,
    ((![R : set_Pr556513572on_val, S : set_Pr556513572on_val]: (((^[X2 : exp_list_char]: (^[Y2 : produc515445032on_val]: (member1888679917on_val @ (produc2023458740on_val @ X2 @ Y2) @ R))) = (^[X2 : exp_list_char]: (^[Y2 : produc515445032on_val]: (member1888679917on_val @ (produc2023458740on_val @ X2 @ Y2) @ S)))) = (R = S))))). % pred_equals_eq2
thf(fact_107_pred__equals__eq2, axiom,
    ((![R : set_Pr723149704on_val, S : set_Pr723149704on_val]: (((^[X2 : nat > option2118145160on_val]: (^[Y2 : list_char > option_val]: (member652041809on_val @ (produc52622304on_val @ X2 @ Y2) @ R))) = (^[X2 : nat > option2118145160on_val]: (^[Y2 : list_char > option_val]: (member652041809on_val @ (produc52622304on_val @ X2 @ Y2) @ S)))) = (R = S))))). % pred_equals_eq2
thf(fact_108_not__Some__eq, axiom,
    ((![X : option_val]: ((![Y2 : val]: (~ ((X = (some_val @ Y2))))) = (X = none_val))))). % not_Some_eq
thf(fact_109_not__Some__eq, axiom,
    ((![X : option2118145160on_val]: ((![Y2 : produc266837688on_val]: (~ ((X = (some_P1299442195on_val @ Y2))))) = (X = none_P1535574167on_val))))). % not_Some_eq
thf(fact_110_not__Some__eq, axiom,
    ((![X : option_ty]: ((![Y2 : ty]: (~ ((X = (some_ty @ Y2))))) = (X = none_ty))))). % not_Some_eq
thf(fact_111_not__None__eq, axiom,
    ((![X : option_val]: ((~ ((X = none_val))) = (?[Y2 : val]: (X = (some_val @ Y2))))))). % not_None_eq
thf(fact_112_not__None__eq, axiom,
    ((![X : option2118145160on_val]: ((~ ((X = none_P1535574167on_val))) = (?[Y2 : produc266837688on_val]: (X = (some_P1299442195on_val @ Y2))))))). % not_None_eq
thf(fact_113_not__None__eq, axiom,
    ((![X : option_ty]: ((~ ((X = none_ty))) = (?[Y2 : ty]: (X = (some_ty @ Y2))))))). % not_None_eq
thf(fact_114_empty__upd__none, axiom,
    ((![X : produc1257910179t_char]: ((fun_up356838326on_val @ (^[X2 : produc1257910179t_char]: none_val) @ X @ none_val) = (^[X2 : produc1257910179t_char]: none_val))))). % empty_upd_none
thf(fact_115_empty__upd__none, axiom,
    ((![X : list_char]: ((fun_up1252458416on_val @ (^[X2 : list_char]: none_val) @ X @ none_val) = (^[X2 : list_char]: none_val))))). % empty_upd_none
thf(fact_116_empty__upd__none, axiom,
    ((![X : nat]: ((fun_up262443479on_val @ (^[X2 : nat]: none_P1535574167on_val) @ X @ none_P1535574167on_val) = (^[X2 : nat]: none_P1535574167on_val))))). % empty_upd_none
thf(fact_117_combine__options__cases, axiom,
    ((![X : option_val, P : option_val > option_val > $o, Y : option_val]: (((X = none_val) => (P @ X @ Y)) => (((Y = none_val) => (P @ X @ Y)) => ((![A3 : val, B3 : val]: ((X = (some_val @ A3)) => ((Y = (some_val @ B3)) => (P @ X @ Y)))) => (P @ X @ Y))))))). % combine_options_cases
thf(fact_118_combine__options__cases, axiom,
    ((![X : option_val, P : option_val > option2118145160on_val > $o, Y : option2118145160on_val]: (((X = none_val) => (P @ X @ Y)) => (((Y = none_P1535574167on_val) => (P @ X @ Y)) => ((![A3 : val, B3 : produc266837688on_val]: ((X = (some_val @ A3)) => ((Y = (some_P1299442195on_val @ B3)) => (P @ X @ Y)))) => (P @ X @ Y))))))). % combine_options_cases
thf(fact_119_combine__options__cases, axiom,
    ((![X : option_val, P : option_val > option_ty > $o, Y : option_ty]: (((X = none_val) => (P @ X @ Y)) => (((Y = none_ty) => (P @ X @ Y)) => ((![A3 : val, B3 : ty]: ((X = (some_val @ A3)) => ((Y = (some_ty @ B3)) => (P @ X @ Y)))) => (P @ X @ Y))))))). % combine_options_cases
thf(fact_120_combine__options__cases, axiom,
    ((![X : option2118145160on_val, P : option2118145160on_val > option_val > $o, Y : option_val]: (((X = none_P1535574167on_val) => (P @ X @ Y)) => (((Y = none_val) => (P @ X @ Y)) => ((![A3 : produc266837688on_val, B3 : val]: ((X = (some_P1299442195on_val @ A3)) => ((Y = (some_val @ B3)) => (P @ X @ Y)))) => (P @ X @ Y))))))). % combine_options_cases
thf(fact_121_combine__options__cases, axiom,
    ((![X : option2118145160on_val, P : option2118145160on_val > option2118145160on_val > $o, Y : option2118145160on_val]: (((X = none_P1535574167on_val) => (P @ X @ Y)) => (((Y = none_P1535574167on_val) => (P @ X @ Y)) => ((![A3 : produc266837688on_val, B3 : produc266837688on_val]: ((X = (some_P1299442195on_val @ A3)) => ((Y = (some_P1299442195on_val @ B3)) => (P @ X @ Y)))) => (P @ X @ Y))))))). % combine_options_cases
thf(fact_122_combine__options__cases, axiom,
    ((![X : option2118145160on_val, P : option2118145160on_val > option_ty > $o, Y : option_ty]: (((X = none_P1535574167on_val) => (P @ X @ Y)) => (((Y = none_ty) => (P @ X @ Y)) => ((![A3 : produc266837688on_val, B3 : ty]: ((X = (some_P1299442195on_val @ A3)) => ((Y = (some_ty @ B3)) => (P @ X @ Y)))) => (P @ X @ Y))))))). % combine_options_cases
thf(fact_123_combine__options__cases, axiom,
    ((![X : option_ty, P : option_ty > option_val > $o, Y : option_val]: (((X = none_ty) => (P @ X @ Y)) => (((Y = none_val) => (P @ X @ Y)) => ((![A3 : ty, B3 : val]: ((X = (some_ty @ A3)) => ((Y = (some_val @ B3)) => (P @ X @ Y)))) => (P @ X @ Y))))))). % combine_options_cases
thf(fact_124_combine__options__cases, axiom,
    ((![X : option_ty, P : option_ty > option2118145160on_val > $o, Y : option2118145160on_val]: (((X = none_ty) => (P @ X @ Y)) => (((Y = none_P1535574167on_val) => (P @ X @ Y)) => ((![A3 : ty, B3 : produc266837688on_val]: ((X = (some_ty @ A3)) => ((Y = (some_P1299442195on_val @ B3)) => (P @ X @ Y)))) => (P @ X @ Y))))))). % combine_options_cases
thf(fact_125_combine__options__cases, axiom,
    ((![X : option_ty, P : option_ty > option_ty > $o, Y : option_ty]: (((X = none_ty) => (P @ X @ Y)) => (((Y = none_ty) => (P @ X @ Y)) => ((![A3 : ty, B3 : ty]: ((X = (some_ty @ A3)) => ((Y = (some_ty @ B3)) => (P @ X @ Y)))) => (P @ X @ Y))))))). % combine_options_cases
thf(fact_126_split__option__all, axiom,
    (((^[P4 : option_val > $o]: (![X4 : option_val]: (P4 @ X4))) = (^[P3 : option_val > $o]: (((P3 @ none_val)) & ((![X2 : val]: (P3 @ (some_val @ X2))))))))). % split_option_all
thf(fact_127_split__option__all, axiom,
    (((^[P4 : option2118145160on_val > $o]: (![X4 : option2118145160on_val]: (P4 @ X4))) = (^[P3 : option2118145160on_val > $o]: (((P3 @ none_P1535574167on_val)) & ((![X2 : produc266837688on_val]: (P3 @ (some_P1299442195on_val @ X2))))))))). % split_option_all
thf(fact_128_split__option__all, axiom,
    (((^[P4 : option_ty > $o]: (![X4 : option_ty]: (P4 @ X4))) = (^[P3 : option_ty > $o]: (((P3 @ none_ty)) & ((![X2 : ty]: (P3 @ (some_ty @ X2))))))))). % split_option_all
thf(fact_129_split__option__ex, axiom,
    (((^[P4 : option_val > $o]: (?[X4 : option_val]: (P4 @ X4))) = (^[P3 : option_val > $o]: (((P3 @ none_val)) | ((?[X2 : val]: (P3 @ (some_val @ X2))))))))). % split_option_ex
thf(fact_130_split__option__ex, axiom,
    (((^[P4 : option2118145160on_val > $o]: (?[X4 : option2118145160on_val]: (P4 @ X4))) = (^[P3 : option2118145160on_val > $o]: (((P3 @ none_P1535574167on_val)) | ((?[X2 : produc266837688on_val]: (P3 @ (some_P1299442195on_val @ X2))))))))). % split_option_ex
thf(fact_131_split__option__ex, axiom,
    (((^[P4 : option_ty > $o]: (?[X4 : option_ty]: (P4 @ X4))) = (^[P3 : option_ty > $o]: (((P3 @ none_ty)) | ((?[X2 : ty]: (P3 @ (some_ty @ X2))))))))). % split_option_ex
thf(fact_132_option_Oinducts, axiom,
    ((![P : option_val > $o, Option : option_val]: ((P @ none_val) => ((![X3 : val]: (P @ (some_val @ X3))) => (P @ Option)))))). % option.inducts
thf(fact_133_option_Oinducts, axiom,
    ((![P : option2118145160on_val > $o, Option : option2118145160on_val]: ((P @ none_P1535574167on_val) => ((![X3 : produc266837688on_val]: (P @ (some_P1299442195on_val @ X3))) => (P @ Option)))))). % option.inducts
thf(fact_134_option_Oinducts, axiom,
    ((![P : option_ty > $o, Option : option_ty]: ((P @ none_ty) => ((![X3 : ty]: (P @ (some_ty @ X3))) => (P @ Option)))))). % option.inducts
thf(fact_135_option_Oexhaust, axiom,
    ((![Y : option_val]: ((~ ((Y = none_val))) => (~ ((![X23 : val]: (~ ((Y = (some_val @ X23))))))))))). % option.exhaust
thf(fact_136_option_Oexhaust, axiom,
    ((![Y : option2118145160on_val]: ((~ ((Y = none_P1535574167on_val))) => (~ ((![X23 : produc266837688on_val]: (~ ((Y = (some_P1299442195on_val @ X23))))))))))). % option.exhaust
thf(fact_137_option_Oexhaust, axiom,
    ((![Y : option_ty]: ((~ ((Y = none_ty))) => (~ ((![X23 : ty]: (~ ((Y = (some_ty @ X23))))))))))). % option.exhaust
thf(fact_138_option_OdiscI, axiom,
    ((![Option : option_val, X22 : val]: ((Option = (some_val @ X22)) => (~ ((Option = none_val))))))). % option.discI
thf(fact_139_option_OdiscI, axiom,
    ((![Option : option2118145160on_val, X22 : produc266837688on_val]: ((Option = (some_P1299442195on_val @ X22)) => (~ ((Option = none_P1535574167on_val))))))). % option.discI
thf(fact_140_option_OdiscI, axiom,
    ((![Option : option_ty, X22 : ty]: ((Option = (some_ty @ X22)) => (~ ((Option = none_ty))))))). % option.discI
thf(fact_141_option_Odistinct_I1_J, axiom,
    ((![X22 : val]: (~ ((none_val = (some_val @ X22))))))). % option.distinct(1)
thf(fact_142_option_Odistinct_I1_J, axiom,
    ((![X22 : produc266837688on_val]: (~ ((none_P1535574167on_val = (some_P1299442195on_val @ X22))))))). % option.distinct(1)
thf(fact_143_option_Odistinct_I1_J, axiom,
    ((![X22 : ty]: (~ ((none_ty = (some_ty @ X22))))))). % option.distinct(1)
thf(fact_144_map__upd__nonempty, axiom,
    ((![T : produc1257910179t_char > option_val, K : produc1257910179t_char, X : val]: (~ (((fun_up356838326on_val @ T @ K @ (some_val @ X)) = (^[X2 : produc1257910179t_char]: none_val))))))). % map_upd_nonempty
thf(fact_145_map__upd__nonempty, axiom,
    ((![T : list_char > option_val, K : list_char, X : val]: (~ (((fun_up1252458416on_val @ T @ K @ (some_val @ X)) = (^[X2 : list_char]: none_val))))))). % map_upd_nonempty
thf(fact_146_map__upd__nonempty, axiom,
    ((![T : nat > option2118145160on_val, K : nat, X : produc266837688on_val]: (~ (((fun_up262443479on_val @ T @ K @ (some_P1299442195on_val @ X)) = (^[X2 : nat]: none_P1535574167on_val))))))). % map_upd_nonempty
thf(fact_147_preallocated__new, axiom,
    ((![H : nat > option2118145160on_val, A : nat, X : produc266837688on_val]: ((preallocated @ H) => (((H @ A) = none_P1535574167on_val) => (preallocated @ (fun_up262443479on_val @ H @ A @ (some_P1299442195on_val @ X)))))))). % preallocated_new
thf(fact_148_oconf__new, axiom,
    ((![P : list_P1234162913t_char, H : nat > option2118145160on_val, Obj : produc266837688on_val, A : nat, X : produc266837688on_val]: ((oconf_454120169t_char @ P @ H @ Obj) => (((H @ A) = none_P1535574167on_val) => (oconf_454120169t_char @ P @ (fun_up262443479on_val @ H @ A @ (some_P1299442195on_val @ X)) @ Obj)))))). % oconf_new
thf(fact_149_typeof__lit__typeof, axiom,
    ((![V : val, T2 : ty, H : nat > option2118145160on_val]: (((typeof_h @ (^[X2 : nat]: none_P1535574167on_val) @ V) = (some_ty @ T2)) => ((typeof_h @ H @ V) = (some_ty @ T2)))))). % typeof_lit_typeof
thf(fact_150_hext__new, axiom,
    ((![H : nat > option2118145160on_val, A : nat, X : produc266837688on_val]: (((H @ A) = none_P1535574167on_val) => (hext @ H @ (fun_up262443479on_val @ H @ A @ (some_P1299442195on_val @ X))))))). % hext_new
thf(fact_151_hext__upd__obj, axiom,
    ((![H : nat > option2118145160on_val, A : nat, C3 : list_char, Fs : produc1257910179t_char > option_val, Fs2 : produc1257910179t_char > option_val]: (((H @ A) = (some_P1299442195on_val @ (produc904988266on_val @ C3 @ Fs))) => (hext @ H @ (fun_up262443479on_val @ H @ A @ (some_P1299442195on_val @ (produc904988266on_val @ C3 @ Fs2)))))))). % hext_upd_obj
thf(fact_152_map__le__imp__upd__le, axiom,
    ((![M1 : produc1257910179t_char > option_val, M2 : produc1257910179t_char > option_val, X : produc1257910179t_char, Y : val]: ((map_le179134014ar_val @ M1 @ M2) => (map_le179134014ar_val @ (fun_up356838326on_val @ M1 @ X @ none_val) @ (fun_up356838326on_val @ M2 @ X @ (some_val @ Y))))))). % map_le_imp_upd_le
thf(fact_153_map__le__imp__upd__le, axiom,
    ((![M1 : list_char > option_val, M2 : list_char > option_val, X : list_char, Y : val]: ((map_le_list_char_val @ M1 @ M2) => (map_le_list_char_val @ (fun_up1252458416on_val @ M1 @ X @ none_val) @ (fun_up1252458416on_val @ M2 @ X @ (some_val @ Y))))))). % map_le_imp_upd_le
thf(fact_154_map__le__imp__upd__le, axiom,
    ((![M1 : nat > option2118145160on_val, M2 : nat > option2118145160on_val, X : nat, Y : produc266837688on_val]: ((map_le931214383on_val @ M1 @ M2) => (map_le931214383on_val @ (fun_up262443479on_val @ M1 @ X @ none_P1535574167on_val) @ (fun_up262443479on_val @ M2 @ X @ (some_P1299442195on_val @ Y))))))). % map_le_imp_upd_le
thf(fact_155_map__le__imp__upd__le, axiom,
    ((![M1 : list_char > option_ty, M2 : list_char > option_ty, X : list_char, Y : ty]: ((map_le_list_char_ty @ M1 @ M2) => (map_le_list_char_ty @ (fun_up9191ion_ty @ M1 @ X @ none_ty) @ (fun_up9191ion_ty @ M2 @ X @ (some_ty @ Y))))))). % map_le_imp_upd_le
thf(fact_156_hext__refl, axiom,
    ((![H : nat > option2118145160on_val]: (hext @ H @ H)))). % hext_refl
thf(fact_157_hext__trans, axiom,
    ((![H : nat > option2118145160on_val, H3 : nat > option2118145160on_val, H4 : nat > option2118145160on_val]: ((hext @ H @ H3) => ((hext @ H3 @ H4) => (hext @ H @ H4)))))). % hext_trans
thf(fact_158_map__le__antisym, axiom,
    ((![F : list_char > option_ty, G : list_char > option_ty]: ((map_le_list_char_ty @ F @ G) => ((map_le_list_char_ty @ G @ F) => (F = G)))))). % map_le_antisym
thf(fact_159_map__le__trans, axiom,
    ((![M1 : list_char > option_ty, M2 : list_char > option_ty, M3 : list_char > option_ty]: ((map_le_list_char_ty @ M1 @ M2) => ((map_le_list_char_ty @ M2 @ M3) => (map_le_list_char_ty @ M1 @ M3)))))). % map_le_trans
thf(fact_160_map__le__refl, axiom,
    ((![F : list_char > option_ty]: (map_le_list_char_ty @ F @ F)))). % map_le_refl
thf(fact_161_map__le__upd, axiom,
    ((![F : list_char > option_ty, G : list_char > option_ty, A : list_char, B : option_ty]: ((map_le_list_char_ty @ F @ G) => (map_le_list_char_ty @ (fun_up9191ion_ty @ F @ A @ B) @ (fun_up9191ion_ty @ G @ A @ B)))))). % map_le_upd
thf(fact_162_map__le__upd, axiom,
    ((![F : produc1257910179t_char > option_val, G : produc1257910179t_char > option_val, A : produc1257910179t_char, B : option_val]: ((map_le179134014ar_val @ F @ G) => (map_le179134014ar_val @ (fun_up356838326on_val @ F @ A @ B) @ (fun_up356838326on_val @ G @ A @ B)))))). % map_le_upd
thf(fact_163_map__le__upd, axiom,
    ((![F : nat > option2118145160on_val, G : nat > option2118145160on_val, A : nat, B : option2118145160on_val]: ((map_le931214383on_val @ F @ G) => (map_le931214383on_val @ (fun_up262443479on_val @ F @ A @ B) @ (fun_up262443479on_val @ G @ A @ B)))))). % map_le_upd
thf(fact_164_map__le__upd, axiom,
    ((![F : list_char > option_val, G : list_char > option_val, A : list_char, B : option_val]: ((map_le_list_char_val @ F @ G) => (map_le_list_char_val @ (fun_up1252458416on_val @ F @ A @ B) @ (fun_up1252458416on_val @ G @ A @ B)))))). % map_le_upd
thf(fact_165_preallocated__hext, axiom,
    ((![H : nat > option2118145160on_val, H3 : nat > option2118145160on_val]: ((preallocated @ H) => ((hext @ H @ H3) => (preallocated @ H3)))))). % preallocated_hext
thf(fact_166_oconf__hext, axiom,
    ((![P : list_P1234162913t_char, H : nat > option2118145160on_val, Obj : produc266837688on_val, H3 : nat > option2118145160on_val]: ((oconf_454120169t_char @ P @ H @ Obj) => ((hext @ H @ H3) => (oconf_454120169t_char @ P @ H3 @ Obj)))))). % oconf_hext
thf(fact_167_map__le__empty, axiom,
    ((![G : list_char > option_ty]: (map_le_list_char_ty @ (^[X2 : list_char]: none_ty) @ G)))). % map_le_empty
thf(fact_168_upd__None__map__le, axiom,
    ((![F : list_char > option_ty, X : list_char]: (map_le_list_char_ty @ (fun_up9191ion_ty @ F @ X @ none_ty) @ F)))). % upd_None_map_le
thf(fact_169_upd__None__map__le, axiom,
    ((![F : produc1257910179t_char > option_val, X : produc1257910179t_char]: (map_le179134014ar_val @ (fun_up356838326on_val @ F @ X @ none_val) @ F)))). % upd_None_map_le
thf(fact_170_upd__None__map__le, axiom,
    ((![F : list_char > option_val, X : list_char]: (map_le_list_char_val @ (fun_up1252458416on_val @ F @ X @ none_val) @ F)))). % upd_None_map_le
thf(fact_171_upd__None__map__le, axiom,
    ((![F : nat > option2118145160on_val, X : nat]: (map_le931214383on_val @ (fun_up262443479on_val @ F @ X @ none_P1535574167on_val) @ F)))). % upd_None_map_le
thf(fact_172_hextI, axiom,
    ((![H : nat > option2118145160on_val, H3 : nat > option2118145160on_val]: ((![A3 : nat, C4 : list_char, Fs3 : produc1257910179t_char > option_val]: (((H @ A3) = (some_P1299442195on_val @ (produc904988266on_val @ C4 @ Fs3))) => (?[Fs4 : produc1257910179t_char > option_val]: ((H3 @ A3) = (some_P1299442195on_val @ (produc904988266on_val @ C4 @ Fs4)))))) => (hext @ H @ H3))))). % hextI
thf(fact_173_hext__def, axiom,
    ((hext = (^[H2 : nat > option2118145160on_val]: (^[H5 : nat > option2118145160on_val]: (![A4 : nat]: (![C5 : list_char]: (![Fs5 : produc1257910179t_char > option_val]: ((((H2 @ A4) = (some_P1299442195on_val @ (produc904988266on_val @ C5 @ Fs5)))) => ((?[Fs6 : produc1257910179t_char > option_val]: ((H5 @ A4) = (some_P1299442195on_val @ (produc904988266on_val @ C5 @ Fs6)))))))))))))). % hext_def
thf(fact_174_hext__objD, axiom,
    ((![H : nat > option2118145160on_val, H3 : nat > option2118145160on_val, A : nat, C3 : list_char, Fs : produc1257910179t_char > option_val]: ((hext @ H @ H3) => (((H @ A) = (some_P1299442195on_val @ (produc904988266on_val @ C3 @ Fs))) => (?[Fs7 : produc1257910179t_char > option_val]: ((H3 @ A) = (some_P1299442195on_val @ (produc904988266on_val @ C3 @ Fs7))))))))). % hext_objD
thf(fact_175_hext__typeof__mono, axiom,
    ((![H : nat > option2118145160on_val, H3 : nat > option2118145160on_val, V : val, T2 : ty]: ((hext @ H @ H3) => (((typeof_h @ H @ V) = (some_ty @ T2)) => ((typeof_h @ H3 @ V) = (some_ty @ T2))))))). % hext_typeof_mono
thf(fact_176_RedFAss_Oprems_I1_J, axiom,
    ((wTrt @ p @ ha @ e @ (fAss_list_char @ (val_list_char @ (addr @ a)) @ f @ d @ (val_list_char @ v)) @ t))). % RedFAss.prems(1)
thf(fact_177_ssubst__Pair__rhs, axiom,
    ((![R2 : list_char, S2 : produc1257910179t_char > option_val, R : set_Pr2075231726on_val, S3 : produc1257910179t_char > option_val]: ((member1296415951on_val @ (produc904988266on_val @ R2 @ S2) @ R) => ((S3 = S2) => (member1296415951on_val @ (produc904988266on_val @ R2 @ S3) @ R)))))). % ssubst_Pair_rhs
thf(fact_178_ssubst__Pair__rhs, axiom,
    ((![R2 : list_char, S2 : list_char, R : set_Pr164112643t_char, S3 : list_char]: ((member89690956t_char @ (produc1304532571t_char @ R2 @ S2) @ R) => ((S3 = S2) => (member89690956t_char @ (produc1304532571t_char @ R2 @ S3) @ R)))))). % ssubst_Pair_rhs
thf(fact_179_ssubst__Pair__rhs, axiom,
    ((![R2 : produc1097884484on_val, S2 : produc1097884484on_val, R : set_Pr1189492743on_val, S3 : produc1097884484on_val]: ((member354538064on_val @ (produc1069526295on_val @ R2 @ S2) @ R) => ((S3 = S2) => (member354538064on_val @ (produc1069526295on_val @ R2 @ S3) @ R)))))). % ssubst_Pair_rhs
thf(fact_180_ssubst__Pair__rhs, axiom,
    ((![R2 : exp_list_char, S2 : produc515445032on_val, R : set_Pr556513572on_val, S3 : produc515445032on_val]: ((member1888679917on_val @ (produc2023458740on_val @ R2 @ S2) @ R) => ((S3 = S2) => (member1888679917on_val @ (produc2023458740on_val @ R2 @ S3) @ R)))))). % ssubst_Pair_rhs
thf(fact_181_ssubst__Pair__rhs, axiom,
    ((![R2 : nat > option2118145160on_val, S2 : list_char > option_val, R : set_Pr723149704on_val, S3 : list_char > option_val]: ((member652041809on_val @ (produc52622304on_val @ R2 @ S2) @ R) => ((S3 = S2) => (member652041809on_val @ (produc52622304on_val @ R2 @ S3) @ R)))))). % ssubst_Pair_rhs
thf(fact_182_wt, axiom,
    ((wTrt @ p @ ha @ e @ (fAss_list_char @ (val_list_char @ (addr @ a)) @ f @ d @ (val_list_char @ v)) @ t))). % wt
thf(fact_183_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_184_WTrt__hext__mono, axiom,
    ((![P : list_P1234162913t_char, H : nat > option2118145160on_val, E : list_char > option_ty, E2 : exp_list_char, T2 : ty, H3 : nat > option2118145160on_val]: ((wTrt @ P @ H @ E @ E2 @ T2) => ((hext @ H @ H3) => (wTrt @ P @ H3 @ E @ E2 @ T2)))))). % WTrt_hext_mono
thf(fact_185_option_Odisc__eq__case_I1_J, axiom,
    ((![Option : option2118145160on_val]: ((Option = none_P1535574167on_val) = (case_o1187854213on_val @ $true @ (^[Uu : produc266837688on_val]: $false) @ Option))))). % option.disc_eq_case(1)
thf(fact_186_option_Odisc__eq__case_I2_J, axiom,
    ((![Option : option2118145160on_val]: ((~ ((Option = none_P1535574167on_val))) = (case_o1187854213on_val @ $false @ (^[Uu : produc266837688on_val]: $true) @ Option))))). % option.disc_eq_case(2)
thf(fact_187_case__optionE, axiom,
    ((![P : $o, Q : val > $o, X : option_val]: ((case_option_o_val @ P @ Q @ X) => (((X = none_val) => (~ (P))) => (~ ((![Y3 : val]: ((X = (some_val @ Y3)) => (~ ((Q @ Y3)))))))))))). % case_optionE
thf(fact_188_case__optionE, axiom,
    ((![P : $o, Q : produc266837688on_val > $o, X : option2118145160on_val]: ((case_o1187854213on_val @ P @ Q @ X) => (((X = none_P1535574167on_val) => (~ (P))) => (~ ((![Y3 : produc266837688on_val]: ((X = (some_P1299442195on_val @ Y3)) => (~ ((Q @ Y3)))))))))))). % case_optionE
thf(fact_189_case__optionE, axiom,
    ((![P : $o, Q : ty > $o, X : option_ty]: ((case_option_o_ty @ P @ Q @ X) => (((X = none_ty) => (~ (P))) => (~ ((![Y3 : ty]: ((X = (some_ty @ Y3)) => (~ ((Q @ Y3)))))))))))). % case_optionE
thf(fact_190_WTrt__env__mono, axiom,
    ((![P : list_P1234162913t_char, H : nat > option2118145160on_val, E : list_char > option_ty, E2 : exp_list_char, T2 : ty, E3 : list_char > option_ty]: ((wTrt @ P @ H @ E @ E2 @ T2) => ((map_le_list_char_ty @ E @ E3) => (wTrt @ P @ H @ E3 @ E2 @ T2)))))). % WTrt_env_mono
thf(fact_191_red__reds_ORedFAss, axiom,
    ((![H : nat > option2118145160on_val, A : nat, C3 : list_char, Fs : produc1257910179t_char > option_val, F3 : list_char, D3 : list_char, V : val, L : list_char > option_val, P : list_P1234162913t_char]: (((H @ A) = (some_P1299442195on_val @ (produc904988266on_val @ C3 @ Fs))) => (member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ (fAss_list_char @ (val_list_char @ (addr @ A)) @ F3 @ D3 @ (val_list_char @ V)) @ (produc52622304on_val @ H @ L)) @ (produc2023458740on_val @ (val_list_char @ unit) @ (produc52622304on_val @ (fun_up262443479on_val @ H @ A @ (some_P1299442195on_val @ (produc904988266on_val @ C3 @ (fun_up356838326on_val @ Fs @ (produc1304532571t_char @ F3 @ D3) @ (some_val @ V))))) @ L))) @ (red @ P)))))). % red_reds.RedFAss
thf(fact_192_redp__redsp_ORedFAss, axiom,
    ((![H : nat > option2118145160on_val, A : nat, C3 : list_char, Fs : produc1257910179t_char > option_val, P : list_P1234162913t_char, F3 : list_char, D3 : list_char, V : val, L : list_char > option_val]: (((H @ A) = (some_P1299442195on_val @ (produc904988266on_val @ C3 @ Fs))) => (redp @ P @ (fAss_list_char @ (val_list_char @ (addr @ A)) @ F3 @ D3 @ (val_list_char @ V)) @ (produc52622304on_val @ H @ L) @ (val_list_char @ unit) @ (produc52622304on_val @ (fun_up262443479on_val @ H @ A @ (some_P1299442195on_val @ (produc904988266on_val @ C3 @ (fun_up356838326on_val @ Fs @ (produc1304532571t_char @ F3 @ D3) @ (some_val @ V))))) @ L)))))). % redp_redsp.RedFAss
thf(fact_193_red__hext__incr, axiom,
    ((![E2 : exp_list_char, H : nat > option2118145160on_val, L : list_char > option_val, E4 : exp_list_char, H3 : 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 @ E4 @ (produc52622304on_val @ H3 @ L2))) @ (red @ P)) => (hext @ H @ H3))))). % red_hext_incr
thf(fact_194_redp__red__eq, axiom,
    ((redp = (^[P3 : list_P1234162913t_char]: (^[X2 : exp_list_char]: (^[Y2 : produc515445032on_val]: (^[Z2 : exp_list_char]: (^[Aa : produc515445032on_val]: (member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ X2 @ Y2) @ (produc2023458740on_val @ Z2 @ Aa)) @ (red @ P3)))))))))). % redp_red_eq
thf(fact_195_FAssRedsVal, axiom,
    ((![E_1 : exp_list_char, S_0 : produc515445032on_val, A : nat, S_1 : produc515445032on_val, P : list_P1234162913t_char, E_2 : exp_list_char, V : val, H_2 : nat > option2118145160on_val, L_2 : list_char > option_val, C3 : list_char, Fs : produc1257910179t_char > option_val, F3 : list_char, D3 : list_char]: ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ E_1 @ S_0) @ (produc2023458740on_val @ (val_list_char @ (addr @ A)) @ S_1)) @ (transi111096263on_val @ (red @ P))) => ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ E_2 @ S_1) @ (produc2023458740on_val @ (val_list_char @ V) @ (produc52622304on_val @ H_2 @ L_2))) @ (transi111096263on_val @ (red @ P))) => (((some_P1299442195on_val @ (produc904988266on_val @ C3 @ Fs)) = (H_2 @ A)) => (member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ (fAss_list_char @ E_1 @ F3 @ D3 @ E_2) @ S_0) @ (produc2023458740on_val @ (val_list_char @ unit) @ (produc52622304on_val @ (fun_up262443479on_val @ H_2 @ A @ (some_P1299442195on_val @ (produc904988266on_val @ C3 @ (fun_up356838326on_val @ Fs @ (produc1304532571t_char @ F3 @ D3) @ (some_val @ V))))) @ L_2))) @ (transi111096263on_val @ (red @ P))))))))). % FAssRedsVal
thf(fact_196_FAss, axiom,
    ((![P : list_P1234162913t_char, E_1 : exp_list_char, S_0 : produc515445032on_val, A : nat, S_1 : produc515445032on_val, E_2 : exp_list_char, V : val, H_2 : nat > option2118145160on_val, L_2 : list_char > option_val, C3 : list_char, Fs : produc1257910179t_char > option_val, Fs2 : produc1257910179t_char > option_val, F3 : list_char, D3 : list_char, H_22 : nat > option2118145160on_val]: ((eval @ P @ E_1 @ S_0 @ (val_list_char @ (addr @ A)) @ S_1) => ((eval @ P @ E_2 @ S_1 @ (val_list_char @ V) @ (produc52622304on_val @ H_2 @ L_2)) => (((H_2 @ A) = (some_P1299442195on_val @ (produc904988266on_val @ C3 @ Fs))) => ((Fs2 = (fun_up356838326on_val @ Fs @ (produc1304532571t_char @ F3 @ D3) @ (some_val @ V))) => ((H_22 = (fun_up262443479on_val @ H_2 @ A @ (some_P1299442195on_val @ (produc904988266on_val @ C3 @ Fs2)))) => (eval @ P @ (fAss_list_char @ E_1 @ F3 @ D3 @ E_2) @ S_0 @ (val_list_char @ unit) @ (produc52622304on_val @ H_22 @ L_2)))))))))). % FAss
thf(fact_197_eval__hext, axiom,
    ((![P : list_P1234162913t_char, E2 : exp_list_char, H : nat > option2118145160on_val, L : list_char > option_val, E4 : exp_list_char, H3 : nat > option2118145160on_val, L2 : list_char > option_val]: ((eval @ P @ E2 @ (produc52622304on_val @ H @ L) @ E4 @ (produc52622304on_val @ H3 @ L2)) => (hext @ H @ H3))))). % eval_hext
thf(fact_198_rtrancl__induct2, axiom,
    ((![Ax : list_char, Ay : produc1257910179t_char > option_val, Bx : list_char, By : produc1257910179t_char > option_val, R2 : set_Pr2110063281on_val, P : list_char > (produc1257910179t_char > option_val) > $o]: ((member197592058on_val @ (produc881885833on_val @ (produc904988266on_val @ Ax @ Ay) @ (produc904988266on_val @ Bx @ By)) @ (transi2071064181on_val @ R2)) => ((P @ Ax @ Ay) => ((![A3 : list_char, B3 : produc1257910179t_char > option_val, Aa2 : list_char, Ba : produc1257910179t_char > option_val]: ((member197592058on_val @ (produc881885833on_val @ (produc904988266on_val @ Ax @ Ay) @ (produc904988266on_val @ A3 @ B3)) @ (transi2071064181on_val @ R2)) => ((member197592058on_val @ (produc881885833on_val @ (produc904988266on_val @ A3 @ B3) @ (produc904988266on_val @ Aa2 @ Ba)) @ R2) => ((P @ A3 @ B3) => (P @ Aa2 @ Ba))))) => (P @ Bx @ By))))))). % rtrancl_induct2
thf(fact_199_rtrancl__induct2, axiom,
    ((![Ax : list_char, Ay : list_char, Bx : list_char, By : list_char, R2 : set_Pr729957319t_char, P : list_char > list_char > $o]: ((member803902992t_char @ (produc395356247t_char @ (produc1304532571t_char @ Ax @ Ay) @ (produc1304532571t_char @ Bx @ By)) @ (transi858104614t_char @ R2)) => ((P @ Ax @ Ay) => ((![A3 : list_char, B3 : list_char, Aa2 : list_char, Ba : list_char]: ((member803902992t_char @ (produc395356247t_char @ (produc1304532571t_char @ Ax @ Ay) @ (produc1304532571t_char @ A3 @ B3)) @ (transi858104614t_char @ R2)) => ((member803902992t_char @ (produc395356247t_char @ (produc1304532571t_char @ A3 @ B3) @ (produc1304532571t_char @ Aa2 @ Ba)) @ R2) => ((P @ A3 @ B3) => (P @ Aa2 @ Ba))))) => (P @ Bx @ By))))))). % rtrancl_induct2
thf(fact_200_rtrancl__induct2, axiom,
    ((![Ax : produc1097884484on_val, Ay : produc1097884484on_val, Bx : produc1097884484on_val, By : produc1097884484on_val, R2 : set_Pr1368603847on_val, P : produc1097884484on_val > produc1097884484on_val > $o]: ((member208988944on_val @ (produc564964183on_val @ (produc1069526295on_val @ Ax @ Ay) @ (produc1069526295on_val @ Bx @ By)) @ (transi100378922on_val @ R2)) => ((P @ Ax @ Ay) => ((![A3 : produc1097884484on_val, B3 : produc1097884484on_val, Aa2 : produc1097884484on_val, Ba : produc1097884484on_val]: ((member208988944on_val @ (produc564964183on_val @ (produc1069526295on_val @ Ax @ Ay) @ (produc1069526295on_val @ A3 @ B3)) @ (transi100378922on_val @ R2)) => ((member208988944on_val @ (produc564964183on_val @ (produc1069526295on_val @ A3 @ B3) @ (produc1069526295on_val @ Aa2 @ Ba)) @ R2) => ((P @ A3 @ B3) => (P @ Aa2 @ Ba))))) => (P @ Bx @ By))))))). % rtrancl_induct2
thf(fact_201_rtrancl__induct2, axiom,
    ((![Ax : nat > option2118145160on_val, Ay : list_char > option_val, Bx : nat > option2118145160on_val, By : list_char > option_val, R2 : set_Pr148564103on_val, P : (nat > option2118145160on_val) > (list_char > option_val) > $o]: ((member2027247312on_val @ (produc2106877847on_val @ (produc52622304on_val @ Ax @ Ay) @ (produc52622304on_val @ Bx @ By)) @ (transi432893227on_val @ R2)) => ((P @ Ax @ Ay) => ((![A3 : nat > option2118145160on_val, B3 : list_char > option_val, Aa2 : nat > option2118145160on_val, Ba : list_char > option_val]: ((member2027247312on_val @ (produc2106877847on_val @ (produc52622304on_val @ Ax @ Ay) @ (produc52622304on_val @ A3 @ B3)) @ (transi432893227on_val @ R2)) => ((member2027247312on_val @ (produc2106877847on_val @ (produc52622304on_val @ A3 @ B3) @ (produc52622304on_val @ Aa2 @ Ba)) @ R2) => ((P @ A3 @ B3) => (P @ Aa2 @ Ba))))) => (P @ Bx @ By))))))). % rtrancl_induct2
thf(fact_202_rtrancl__induct2, axiom,
    ((![Ax : exp_list_char, Ay : produc515445032on_val, Bx : exp_list_char, By : produc515445032on_val, R2 : set_Pr1189492743on_val, P : exp_list_char > produc515445032on_val > $o]: ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ Ax @ Ay) @ (produc2023458740on_val @ Bx @ By)) @ (transi111096263on_val @ R2)) => ((P @ Ax @ Ay) => ((![A3 : exp_list_char, B3 : produc515445032on_val, Aa2 : exp_list_char, Ba : produc515445032on_val]: ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ Ax @ Ay) @ (produc2023458740on_val @ A3 @ B3)) @ (transi111096263on_val @ R2)) => ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ A3 @ B3) @ (produc2023458740on_val @ Aa2 @ Ba)) @ R2) => ((P @ A3 @ B3) => (P @ Aa2 @ Ba))))) => (P @ Bx @ By))))))). % rtrancl_induct2
thf(fact_203_converse__rtranclE2, axiom,
    ((![Xa : list_char, Xb : produc1257910179t_char > option_val, Za : list_char, Zb : produc1257910179t_char > option_val, R2 : set_Pr2110063281on_val]: ((member197592058on_val @ (produc881885833on_val @ (produc904988266on_val @ Xa @ Xb) @ (produc904988266on_val @ Za @ Zb)) @ (transi2071064181on_val @ R2)) => ((~ (((produc904988266on_val @ Xa @ Xb) = (produc904988266on_val @ Za @ Zb)))) => (~ ((![A3 : list_char, B3 : produc1257910179t_char > option_val]: ((member197592058on_val @ (produc881885833on_val @ (produc904988266on_val @ Xa @ Xb) @ (produc904988266on_val @ A3 @ B3)) @ R2) => (~ ((member197592058on_val @ (produc881885833on_val @ (produc904988266on_val @ A3 @ B3) @ (produc904988266on_val @ Za @ Zb)) @ (transi2071064181on_val @ R2))))))))))))). % converse_rtranclE2
thf(fact_204_converse__rtranclE2, axiom,
    ((![Xa : list_char, Xb : list_char, Za : list_char, Zb : list_char, R2 : set_Pr729957319t_char]: ((member803902992t_char @ (produc395356247t_char @ (produc1304532571t_char @ Xa @ Xb) @ (produc1304532571t_char @ Za @ Zb)) @ (transi858104614t_char @ R2)) => ((~ (((produc1304532571t_char @ Xa @ Xb) = (produc1304532571t_char @ Za @ Zb)))) => (~ ((![A3 : list_char, B3 : list_char]: ((member803902992t_char @ (produc395356247t_char @ (produc1304532571t_char @ Xa @ Xb) @ (produc1304532571t_char @ A3 @ B3)) @ R2) => (~ ((member803902992t_char @ (produc395356247t_char @ (produc1304532571t_char @ A3 @ B3) @ (produc1304532571t_char @ Za @ Zb)) @ (transi858104614t_char @ R2))))))))))))). % converse_rtranclE2
thf(fact_205_converse__rtranclE2, axiom,
    ((![Xa : produc1097884484on_val, Xb : produc1097884484on_val, Za : produc1097884484on_val, Zb : produc1097884484on_val, R2 : set_Pr1368603847on_val]: ((member208988944on_val @ (produc564964183on_val @ (produc1069526295on_val @ Xa @ Xb) @ (produc1069526295on_val @ Za @ Zb)) @ (transi100378922on_val @ R2)) => ((~ (((produc1069526295on_val @ Xa @ Xb) = (produc1069526295on_val @ Za @ Zb)))) => (~ ((![A3 : produc1097884484on_val, B3 : produc1097884484on_val]: ((member208988944on_val @ (produc564964183on_val @ (produc1069526295on_val @ Xa @ Xb) @ (produc1069526295on_val @ A3 @ B3)) @ R2) => (~ ((member208988944on_val @ (produc564964183on_val @ (produc1069526295on_val @ A3 @ B3) @ (produc1069526295on_val @ Za @ Zb)) @ (transi100378922on_val @ R2))))))))))))). % converse_rtranclE2
thf(fact_206_converse__rtranclE2, axiom,
    ((![Xa : nat > option2118145160on_val, Xb : list_char > option_val, Za : nat > option2118145160on_val, Zb : list_char > option_val, R2 : set_Pr148564103on_val]: ((member2027247312on_val @ (produc2106877847on_val @ (produc52622304on_val @ Xa @ Xb) @ (produc52622304on_val @ Za @ Zb)) @ (transi432893227on_val @ R2)) => ((~ (((produc52622304on_val @ Xa @ Xb) = (produc52622304on_val @ Za @ Zb)))) => (~ ((![A3 : nat > option2118145160on_val, B3 : list_char > option_val]: ((member2027247312on_val @ (produc2106877847on_val @ (produc52622304on_val @ Xa @ Xb) @ (produc52622304on_val @ A3 @ B3)) @ R2) => (~ ((member2027247312on_val @ (produc2106877847on_val @ (produc52622304on_val @ A3 @ B3) @ (produc52622304on_val @ Za @ Zb)) @ (transi432893227on_val @ R2))))))))))))). % converse_rtranclE2
thf(fact_207_converse__rtranclE2, axiom,
    ((![Xa : exp_list_char, Xb : produc515445032on_val, Za : exp_list_char, Zb : produc515445032on_val, R2 : set_Pr1189492743on_val]: ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ Xa @ Xb) @ (produc2023458740on_val @ Za @ Zb)) @ (transi111096263on_val @ R2)) => ((~ (((produc2023458740on_val @ Xa @ Xb) = (produc2023458740on_val @ Za @ Zb)))) => (~ ((![A3 : exp_list_char, B3 : produc515445032on_val]: ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ Xa @ Xb) @ (produc2023458740on_val @ A3 @ B3)) @ R2) => (~ ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ A3 @ B3) @ (produc2023458740on_val @ Za @ Zb)) @ (transi111096263on_val @ R2))))))))))))). % converse_rtranclE2
thf(fact_208_converse__rtrancl__into__rtrancl, axiom,
    ((![A : list_char, B : list_char, R2 : set_Pr164112643t_char, C2 : list_char]: ((member89690956t_char @ (produc1304532571t_char @ A @ B) @ R2) => ((member89690956t_char @ (produc1304532571t_char @ B @ C2) @ (transi1879726366t_char @ R2)) => (member89690956t_char @ (produc1304532571t_char @ A @ C2) @ (transi1879726366t_char @ R2))))))). % converse_rtrancl_into_rtrancl
thf(fact_209_converse__rtrancl__into__rtrancl, axiom,
    ((![A : produc1097884484on_val, B : produc1097884484on_val, R2 : set_Pr1189492743on_val, C2 : produc1097884484on_val]: ((member354538064on_val @ (produc1069526295on_val @ A @ B) @ R2) => ((member354538064on_val @ (produc1069526295on_val @ B @ C2) @ (transi111096263on_val @ R2)) => (member354538064on_val @ (produc1069526295on_val @ A @ C2) @ (transi111096263on_val @ R2))))))). % converse_rtrancl_into_rtrancl
thf(fact_210_rtrancl_Ortrancl__into__rtrancl, axiom,
    ((![A : list_char, B : list_char, R2 : set_Pr164112643t_char, C2 : list_char]: ((member89690956t_char @ (produc1304532571t_char @ A @ B) @ (transi1879726366t_char @ R2)) => ((member89690956t_char @ (produc1304532571t_char @ B @ C2) @ R2) => (member89690956t_char @ (produc1304532571t_char @ A @ C2) @ (transi1879726366t_char @ R2))))))). % rtrancl.rtrancl_into_rtrancl
thf(fact_211_rtrancl_Ortrancl__into__rtrancl, axiom,
    ((![A : produc1097884484on_val, B : produc1097884484on_val, R2 : set_Pr1189492743on_val, C2 : produc1097884484on_val]: ((member354538064on_val @ (produc1069526295on_val @ A @ B) @ (transi111096263on_val @ R2)) => ((member354538064on_val @ (produc1069526295on_val @ B @ C2) @ R2) => (member354538064on_val @ (produc1069526295on_val @ A @ C2) @ (transi111096263on_val @ R2))))))). % rtrancl.rtrancl_into_rtrancl
thf(fact_212_converse__rtrancl__induct, axiom,
    ((![A : list_char, B : list_char, R2 : set_Pr164112643t_char, P : list_char > $o]: ((member89690956t_char @ (produc1304532571t_char @ A @ B) @ (transi1879726366t_char @ R2)) => ((P @ B) => ((![Y3 : list_char, Z3 : list_char]: ((member89690956t_char @ (produc1304532571t_char @ Y3 @ Z3) @ R2) => ((member89690956t_char @ (produc1304532571t_char @ Z3 @ B) @ (transi1879726366t_char @ R2)) => ((P @ Z3) => (P @ Y3))))) => (P @ A))))))). % converse_rtrancl_induct
thf(fact_213_converse__rtrancl__induct, axiom,
    ((![A : produc1097884484on_val, B : produc1097884484on_val, R2 : set_Pr1189492743on_val, P : produc1097884484on_val > $o]: ((member354538064on_val @ (produc1069526295on_val @ A @ B) @ (transi111096263on_val @ R2)) => ((P @ B) => ((![Y3 : produc1097884484on_val, Z3 : produc1097884484on_val]: ((member354538064on_val @ (produc1069526295on_val @ Y3 @ Z3) @ R2) => ((member354538064on_val @ (produc1069526295on_val @ Z3 @ B) @ (transi111096263on_val @ R2)) => ((P @ Z3) => (P @ Y3))))) => (P @ A))))))). % converse_rtrancl_induct
thf(fact_214_rtrancl_Ortrancl__refl, axiom,
    ((![A : list_char, R2 : set_Pr164112643t_char]: (member89690956t_char @ (produc1304532571t_char @ A @ A) @ (transi1879726366t_char @ R2))))). % rtrancl.rtrancl_refl
thf(fact_215_rtrancl_Ortrancl__refl, axiom,
    ((![A : produc1097884484on_val, R2 : set_Pr1189492743on_val]: (member354538064on_val @ (produc1069526295on_val @ A @ A) @ (transi111096263on_val @ R2))))). % rtrancl.rtrancl_refl
thf(fact_216_converse__rtranclE, axiom,
    ((![X : list_char, Z : list_char, R2 : set_Pr164112643t_char]: ((member89690956t_char @ (produc1304532571t_char @ X @ Z) @ (transi1879726366t_char @ R2)) => ((~ ((X = Z))) => (~ ((![Y3 : list_char]: ((member89690956t_char @ (produc1304532571t_char @ X @ Y3) @ R2) => (~ ((member89690956t_char @ (produc1304532571t_char @ Y3 @ Z) @ (transi1879726366t_char @ R2))))))))))))). % converse_rtranclE
thf(fact_217_converse__rtranclE, axiom,
    ((![X : produc1097884484on_val, Z : produc1097884484on_val, R2 : set_Pr1189492743on_val]: ((member354538064on_val @ (produc1069526295on_val @ X @ Z) @ (transi111096263on_val @ R2)) => ((~ ((X = Z))) => (~ ((![Y3 : produc1097884484on_val]: ((member354538064on_val @ (produc1069526295on_val @ X @ Y3) @ R2) => (~ ((member354538064on_val @ (produc1069526295on_val @ Y3 @ Z) @ (transi111096263on_val @ R2))))))))))))). % converse_rtranclE
thf(fact_218_rtrancl_Oinducts, axiom,
    ((![X1 : list_char, X22 : list_char, R2 : set_Pr164112643t_char, P : list_char > list_char > $o]: ((member89690956t_char @ (produc1304532571t_char @ X1 @ X22) @ (transi1879726366t_char @ R2)) => ((![A3 : list_char]: (P @ A3 @ A3)) => ((![A3 : list_char, B3 : list_char, C : list_char]: ((member89690956t_char @ (produc1304532571t_char @ A3 @ B3) @ (transi1879726366t_char @ R2)) => ((P @ A3 @ B3) => ((member89690956t_char @ (produc1304532571t_char @ B3 @ C) @ R2) => (P @ A3 @ C))))) => (P @ X1 @ X22))))))). % rtrancl.inducts
thf(fact_219_rtrancl_Oinducts, axiom,
    ((![X1 : produc1097884484on_val, X22 : produc1097884484on_val, R2 : set_Pr1189492743on_val, P : produc1097884484on_val > produc1097884484on_val > $o]: ((member354538064on_val @ (produc1069526295on_val @ X1 @ X22) @ (transi111096263on_val @ R2)) => ((![A3 : produc1097884484on_val]: (P @ A3 @ A3)) => ((![A3 : produc1097884484on_val, B3 : produc1097884484on_val, C : produc1097884484on_val]: ((member354538064on_val @ (produc1069526295on_val @ A3 @ B3) @ (transi111096263on_val @ R2)) => ((P @ A3 @ B3) => ((member354538064on_val @ (produc1069526295on_val @ B3 @ C) @ R2) => (P @ A3 @ C))))) => (P @ X1 @ X22))))))). % rtrancl.inducts
thf(fact_220_rtrancl__induct, axiom,
    ((![A : list_char, B : list_char, R2 : set_Pr164112643t_char, P : list_char > $o]: ((member89690956t_char @ (produc1304532571t_char @ A @ B) @ (transi1879726366t_char @ R2)) => ((P @ A) => ((![Y3 : list_char, Z3 : list_char]: ((member89690956t_char @ (produc1304532571t_char @ A @ Y3) @ (transi1879726366t_char @ R2)) => ((member89690956t_char @ (produc1304532571t_char @ Y3 @ Z3) @ R2) => ((P @ Y3) => (P @ Z3))))) => (P @ B))))))). % rtrancl_induct
thf(fact_221_rtrancl__induct, axiom,
    ((![A : produc1097884484on_val, B : produc1097884484on_val, R2 : set_Pr1189492743on_val, P : produc1097884484on_val > $o]: ((member354538064on_val @ (produc1069526295on_val @ A @ B) @ (transi111096263on_val @ R2)) => ((P @ A) => ((![Y3 : produc1097884484on_val, Z3 : produc1097884484on_val]: ((member354538064on_val @ (produc1069526295on_val @ A @ Y3) @ (transi111096263on_val @ R2)) => ((member354538064on_val @ (produc1069526295on_val @ Y3 @ Z3) @ R2) => ((P @ Y3) => (P @ Z3))))) => (P @ B))))))). % rtrancl_induct
thf(fact_222_rtrancl__trans, axiom,
    ((![X : list_char, Y : list_char, R2 : set_Pr164112643t_char, Z : list_char]: ((member89690956t_char @ (produc1304532571t_char @ X @ Y) @ (transi1879726366t_char @ R2)) => ((member89690956t_char @ (produc1304532571t_char @ Y @ Z) @ (transi1879726366t_char @ R2)) => (member89690956t_char @ (produc1304532571t_char @ X @ Z) @ (transi1879726366t_char @ R2))))))). % rtrancl_trans
thf(fact_223_rtrancl__trans, axiom,
    ((![X : produc1097884484on_val, Y : produc1097884484on_val, R2 : set_Pr1189492743on_val, Z : produc1097884484on_val]: ((member354538064on_val @ (produc1069526295on_val @ X @ Y) @ (transi111096263on_val @ R2)) => ((member354538064on_val @ (produc1069526295on_val @ Y @ Z) @ (transi111096263on_val @ R2)) => (member354538064on_val @ (produc1069526295on_val @ X @ Z) @ (transi111096263on_val @ R2))))))). % rtrancl_trans
thf(fact_224_rtrancl_Osimps, axiom,
    ((![A1 : list_char, A22 : list_char, R2 : set_Pr164112643t_char]: ((member89690956t_char @ (produc1304532571t_char @ A1 @ A22) @ (transi1879726366t_char @ R2)) = (((?[A4 : list_char]: (((A1 = A4)) & ((A22 = A4))))) | ((?[A4 : list_char]: (?[B4 : list_char]: (?[C6 : list_char]: (((A1 = A4)) & ((((A22 = C6)) & ((((member89690956t_char @ (produc1304532571t_char @ A4 @ B4) @ (transi1879726366t_char @ R2))) & ((member89690956t_char @ (produc1304532571t_char @ B4 @ C6) @ R2)))))))))))))))). % rtrancl.simps
thf(fact_225_rtrancl_Osimps, axiom,
    ((![A1 : produc1097884484on_val, A22 : produc1097884484on_val, R2 : set_Pr1189492743on_val]: ((member354538064on_val @ (produc1069526295on_val @ A1 @ A22) @ (transi111096263on_val @ R2)) = (((?[A4 : produc1097884484on_val]: (((A1 = A4)) & ((A22 = A4))))) | ((?[A4 : produc1097884484on_val]: (?[B4 : produc1097884484on_val]: (?[C6 : produc1097884484on_val]: (((A1 = A4)) & ((((A22 = C6)) & ((((member354538064on_val @ (produc1069526295on_val @ A4 @ B4) @ (transi111096263on_val @ R2))) & ((member354538064on_val @ (produc1069526295on_val @ B4 @ C6) @ R2)))))))))))))))). % rtrancl.simps
thf(fact_226_rtrancl_Ocases, axiom,
    ((![A1 : list_char, A22 : list_char, R2 : set_Pr164112643t_char]: ((member89690956t_char @ (produc1304532571t_char @ A1 @ A22) @ (transi1879726366t_char @ R2)) => ((~ ((A22 = A1))) => (~ ((![B3 : list_char]: ((member89690956t_char @ (produc1304532571t_char @ A1 @ B3) @ (transi1879726366t_char @ R2)) => (~ ((member89690956t_char @ (produc1304532571t_char @ B3 @ A22) @ R2)))))))))))). % rtrancl.cases
thf(fact_227_rtrancl_Ocases, axiom,
    ((![A1 : produc1097884484on_val, A22 : produc1097884484on_val, R2 : set_Pr1189492743on_val]: ((member354538064on_val @ (produc1069526295on_val @ A1 @ A22) @ (transi111096263on_val @ R2)) => ((~ ((A22 = A1))) => (~ ((![B3 : produc1097884484on_val]: ((member354538064on_val @ (produc1069526295on_val @ A1 @ B3) @ (transi111096263on_val @ R2)) => (~ ((member354538064on_val @ (produc1069526295on_val @ B3 @ A22) @ R2)))))))))))). % rtrancl.cases
thf(fact_228_rtranclE, axiom,
    ((![A : list_char, B : list_char, R2 : set_Pr164112643t_char]: ((member89690956t_char @ (produc1304532571t_char @ A @ B) @ (transi1879726366t_char @ R2)) => ((~ ((A = B))) => (~ ((![Y3 : list_char]: ((member89690956t_char @ (produc1304532571t_char @ A @ Y3) @ (transi1879726366t_char @ R2)) => (~ ((member89690956t_char @ (produc1304532571t_char @ Y3 @ B) @ R2)))))))))))). % rtranclE
thf(fact_229_rtranclE, axiom,
    ((![A : produc1097884484on_val, B : produc1097884484on_val, R2 : set_Pr1189492743on_val]: ((member354538064on_val @ (produc1069526295on_val @ A @ B) @ (transi111096263on_val @ R2)) => ((~ ((A = B))) => (~ ((![Y3 : produc1097884484on_val]: ((member354538064on_val @ (produc1069526295on_val @ A @ Y3) @ (transi111096263on_val @ R2)) => (~ ((member354538064on_val @ (produc1069526295on_val @ Y3 @ B) @ R2)))))))))))). % rtranclE
thf(fact_230_converse__rtrancl__induct2, axiom,
    ((![Ax : list_char, Ay : produc1257910179t_char > option_val, Bx : list_char, By : produc1257910179t_char > option_val, R2 : set_Pr2110063281on_val, P : list_char > (produc1257910179t_char > option_val) > $o]: ((member197592058on_val @ (produc881885833on_val @ (produc904988266on_val @ Ax @ Ay) @ (produc904988266on_val @ Bx @ By)) @ (transi2071064181on_val @ R2)) => ((P @ Bx @ By) => ((![A3 : list_char, B3 : produc1257910179t_char > option_val, Aa2 : list_char, Ba : produc1257910179t_char > option_val]: ((member197592058on_val @ (produc881885833on_val @ (produc904988266on_val @ A3 @ B3) @ (produc904988266on_val @ Aa2 @ Ba)) @ R2) => ((member197592058on_val @ (produc881885833on_val @ (produc904988266on_val @ Aa2 @ Ba) @ (produc904988266on_val @ Bx @ By)) @ (transi2071064181on_val @ R2)) => ((P @ Aa2 @ Ba) => (P @ A3 @ B3))))) => (P @ Ax @ Ay))))))). % converse_rtrancl_induct2
thf(fact_231_converse__rtrancl__induct2, axiom,
    ((![Ax : list_char, Ay : list_char, Bx : list_char, By : list_char, R2 : set_Pr729957319t_char, P : list_char > list_char > $o]: ((member803902992t_char @ (produc395356247t_char @ (produc1304532571t_char @ Ax @ Ay) @ (produc1304532571t_char @ Bx @ By)) @ (transi858104614t_char @ R2)) => ((P @ Bx @ By) => ((![A3 : list_char, B3 : list_char, Aa2 : list_char, Ba : list_char]: ((member803902992t_char @ (produc395356247t_char @ (produc1304532571t_char @ A3 @ B3) @ (produc1304532571t_char @ Aa2 @ Ba)) @ R2) => ((member803902992t_char @ (produc395356247t_char @ (produc1304532571t_char @ Aa2 @ Ba) @ (produc1304532571t_char @ Bx @ By)) @ (transi858104614t_char @ R2)) => ((P @ Aa2 @ Ba) => (P @ A3 @ B3))))) => (P @ Ax @ Ay))))))). % converse_rtrancl_induct2
thf(fact_232_converse__rtrancl__induct2, axiom,
    ((![Ax : produc1097884484on_val, Ay : produc1097884484on_val, Bx : produc1097884484on_val, By : produc1097884484on_val, R2 : set_Pr1368603847on_val, P : produc1097884484on_val > produc1097884484on_val > $o]: ((member208988944on_val @ (produc564964183on_val @ (produc1069526295on_val @ Ax @ Ay) @ (produc1069526295on_val @ Bx @ By)) @ (transi100378922on_val @ R2)) => ((P @ Bx @ By) => ((![A3 : produc1097884484on_val, B3 : produc1097884484on_val, Aa2 : produc1097884484on_val, Ba : produc1097884484on_val]: ((member208988944on_val @ (produc564964183on_val @ (produc1069526295on_val @ A3 @ B3) @ (produc1069526295on_val @ Aa2 @ Ba)) @ R2) => ((member208988944on_val @ (produc564964183on_val @ (produc1069526295on_val @ Aa2 @ Ba) @ (produc1069526295on_val @ Bx @ By)) @ (transi100378922on_val @ R2)) => ((P @ Aa2 @ Ba) => (P @ A3 @ B3))))) => (P @ Ax @ Ay))))))). % converse_rtrancl_induct2
thf(fact_233_converse__rtrancl__induct2, axiom,
    ((![Ax : nat > option2118145160on_val, Ay : list_char > option_val, Bx : nat > option2118145160on_val, By : list_char > option_val, R2 : set_Pr148564103on_val, P : (nat > option2118145160on_val) > (list_char > option_val) > $o]: ((member2027247312on_val @ (produc2106877847on_val @ (produc52622304on_val @ Ax @ Ay) @ (produc52622304on_val @ Bx @ By)) @ (transi432893227on_val @ R2)) => ((P @ Bx @ By) => ((![A3 : nat > option2118145160on_val, B3 : list_char > option_val, Aa2 : nat > option2118145160on_val, Ba : list_char > option_val]: ((member2027247312on_val @ (produc2106877847on_val @ (produc52622304on_val @ A3 @ B3) @ (produc52622304on_val @ Aa2 @ Ba)) @ R2) => ((member2027247312on_val @ (produc2106877847on_val @ (produc52622304on_val @ Aa2 @ Ba) @ (produc52622304on_val @ Bx @ By)) @ (transi432893227on_val @ R2)) => ((P @ Aa2 @ Ba) => (P @ A3 @ B3))))) => (P @ Ax @ Ay))))))). % converse_rtrancl_induct2
thf(fact_234_converse__rtrancl__induct2, axiom,
    ((![Ax : exp_list_char, Ay : produc515445032on_val, Bx : exp_list_char, By : produc515445032on_val, R2 : set_Pr1189492743on_val, P : exp_list_char > produc515445032on_val > $o]: ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ Ax @ Ay) @ (produc2023458740on_val @ Bx @ By)) @ (transi111096263on_val @ R2)) => ((P @ Bx @ By) => ((![A3 : exp_list_char, B3 : produc515445032on_val, Aa2 : exp_list_char, Ba : produc515445032on_val]: ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ A3 @ B3) @ (produc2023458740on_val @ Aa2 @ Ba)) @ R2) => ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ Aa2 @ Ba) @ (produc2023458740on_val @ Bx @ By)) @ (transi111096263on_val @ R2)) => ((P @ Aa2 @ Ba) => (P @ A3 @ B3))))) => (P @ Ax @ Ay))))))). % converse_rtrancl_induct2
thf(fact_235_LAssRedsVal, axiom,
    ((![E2 : exp_list_char, S2 : produc515445032on_val, V : val, H3 : nat > option2118145160on_val, L2 : list_char > option_val, P : list_P1234162913t_char, V3 : list_char]: ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ E2 @ S2) @ (produc2023458740on_val @ (val_list_char @ V) @ (produc52622304on_val @ H3 @ L2))) @ (transi111096263on_val @ (red @ P))) => (member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ (lAss_list_char @ V3 @ E2) @ S2) @ (produc2023458740on_val @ (val_list_char @ unit) @ (produc52622304on_val @ H3 @ (fun_up1252458416on_val @ L2 @ V3 @ (some_val @ V))))) @ (transi111096263on_val @ (red @ P))))))). % LAssRedsVal
thf(fact_236_FAcc, axiom,
    ((![P : list_P1234162913t_char, E2 : exp_list_char, S_0 : produc515445032on_val, A : nat, H : nat > option2118145160on_val, L : list_char > option_val, C3 : list_char, Fs : produc1257910179t_char > option_val, F3 : list_char, D3 : list_char, V : val]: ((eval @ P @ E2 @ S_0 @ (val_list_char @ (addr @ A)) @ (produc52622304on_val @ H @ L)) => (((H @ A) = (some_P1299442195on_val @ (produc904988266on_val @ C3 @ Fs))) => (((Fs @ (produc1304532571t_char @ F3 @ D3)) = (some_val @ V)) => (eval @ P @ (fAcc_list_char @ E2 @ F3 @ D3) @ S_0 @ (val_list_char @ V) @ (produc52622304on_val @ H @ L)))))))). % FAcc
thf(fact_237_LAss, axiom,
    ((![P : list_P1234162913t_char, E2 : exp_list_char, S_0 : produc515445032on_val, V : val, H : nat > option2118145160on_val, L : list_char > option_val, L2 : list_char > option_val, V3 : list_char]: ((eval @ P @ E2 @ S_0 @ (val_list_char @ V) @ (produc52622304on_val @ H @ L)) => ((L2 = (fun_up1252458416on_val @ L @ V3 @ (some_val @ V))) => (eval @ P @ (lAss_list_char @ V3 @ E2) @ S_0 @ (val_list_char @ unit) @ (produc52622304on_val @ H @ L2))))))). % LAss
thf(fact_238_redp__redsp_ORedLAss, axiom,
    ((![P : list_P1234162913t_char, V3 : list_char, V : val, H : nat > option2118145160on_val, L : list_char > option_val]: (redp @ P @ (lAss_list_char @ V3 @ (val_list_char @ V)) @ (produc52622304on_val @ H @ L) @ (val_list_char @ unit) @ (produc52622304on_val @ H @ (fun_up1252458416on_val @ L @ V3 @ (some_val @ V))))))). % redp_redsp.RedLAss
thf(fact_239_red__reds_ORedLAss, axiom,
    ((![V3 : list_char, V : val, H : nat > option2118145160on_val, L : list_char > option_val, P : list_P1234162913t_char]: (member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ (lAss_list_char @ V3 @ (val_list_char @ V)) @ (produc52622304on_val @ H @ L)) @ (produc2023458740on_val @ (val_list_char @ unit) @ (produc52622304on_val @ H @ (fun_up1252458416on_val @ L @ V3 @ (some_val @ V))))) @ (red @ P))))). % red_reds.RedLAss
thf(fact_240_FAccRedsVal, axiom,
    ((![E2 : exp_list_char, S2 : produc515445032on_val, A : nat, S3 : produc515445032on_val, P : list_P1234162913t_char, C3 : list_char, Fs : produc1257910179t_char > option_val, F3 : list_char, D3 : list_char, V : val]: ((member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ E2 @ S2) @ (produc2023458740on_val @ (val_list_char @ (addr @ A)) @ S3)) @ (transi111096263on_val @ (red @ P))) => (((hp @ S3 @ A) = (some_P1299442195on_val @ (produc904988266on_val @ C3 @ Fs))) => (((Fs @ (produc1304532571t_char @ F3 @ D3)) = (some_val @ V)) => (member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ (fAcc_list_char @ E2 @ F3 @ D3) @ S2) @ (produc2023458740on_val @ (val_list_char @ V) @ S3)) @ (transi111096263on_val @ (red @ P))))))))). % FAccRedsVal
thf(fact_241_red__reds_ORedFAcc, axiom,
    ((![S2 : produc515445032on_val, A : nat, C3 : list_char, Fs : produc1257910179t_char > option_val, F3 : list_char, D3 : list_char, V : val, P : list_P1234162913t_char]: (((hp @ S2 @ A) = (some_P1299442195on_val @ (produc904988266on_val @ C3 @ Fs))) => (((Fs @ (produc1304532571t_char @ F3 @ D3)) = (some_val @ V)) => (member354538064on_val @ (produc1069526295on_val @ (produc2023458740on_val @ (fAcc_list_char @ (val_list_char @ (addr @ A)) @ F3 @ D3) @ S2) @ (produc2023458740on_val @ (val_list_char @ V) @ S2)) @ (red @ P))))))). % red_reds.RedFAcc
thf(fact_242_redp__redsp_ORedFAcc, axiom,
    ((![S2 : produc515445032on_val, A : nat, C3 : list_char, Fs : produc1257910179t_char > option_val, F3 : list_char, D3 : list_char, V : val, P : list_P1234162913t_char]: (((hp @ S2 @ A) = (some_P1299442195on_val @ (produc904988266on_val @ C3 @ Fs))) => (((Fs @ (produc1304532571t_char @ F3 @ D3)) = (some_val @ V)) => (redp @ P @ (fAcc_list_char @ (val_list_char @ (addr @ A)) @ F3 @ D3) @ S2 @ (val_list_char @ V) @ S2)))))). % redp_redsp.RedFAcc
thf(fact_243_eval__cases_I4_J, axiom,
    ((![P : list_P1234162913t_char, V3 : list_char, E2 : exp_list_char, S2 : produc515445032on_val, E4 : exp_list_char, S3 : produc515445032on_val]: ((eval @ P @ (lAss_list_char @ V3 @ E2) @ S2 @ E4 @ S3) => (((E4 = (val_list_char @ unit)) => (![V4 : val, H6 : nat > option2118145160on_val, L3 : list_char > option_val]: ((S3 = (produc52622304on_val @ H6 @ (fun_up1252458416on_val @ L3 @ V3 @ (some_val @ V4)))) => (~ ((eval @ P @ E2 @ S2 @ (val_list_char @ V4) @ (produc52622304on_val @ H6 @ L3))))))) => (~ ((![E5 : exp_list_char]: ((E4 = (throw_list_char @ E5)) => (~ ((eval @ P @ E2 @ S2 @ (throw_list_char @ E5) @ S3)))))))))))). % eval_cases(4)
thf(fact_244_WTrtLAss, axiom,
    ((![E : list_char > option_ty, V3 : list_char, T2 : ty, P : list_P1234162913t_char, H : nat > option2118145160on_val, E2 : exp_list_char, T3 : ty]: (((E @ V3) = (some_ty @ T2)) => ((wTrt @ P @ H @ E @ E2 @ T3) => ((widen_917054840t_char @ P @ T3 @ T2) => (wTrt @ P @ H @ E @ (lAss_list_char @ V3 @ E2) @ void))))))). % WTrtLAss

% Helper facts (5)
thf(help_If_2_1_If_001t__Option__Ooption_It__Value__Oval_J_T, axiom,
    ((![X : option_val, Y : option_val]: ((if_option_val @ $false @ X @ Y) = Y)))).
thf(help_If_1_1_If_001t__Option__Ooption_It__Value__Oval_J_T, axiom,
    ((![X : option_val, Y : option_val]: ((if_option_val @ $true @ X @ Y) = X)))).
thf(help_If_3_1_If_001t__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_T, axiom,
    ((![P : $o]: ((P = $true) | (P = $false))))).
thf(help_If_2_1_If_001t__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_T, axiom,
    ((![X : option2118145160on_val, Y : option2118145160on_val]: ((if_opt451925058on_val @ $false @ X @ Y) = Y)))).
thf(help_If_1_1_If_001t__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_T, axiom,
    ((![X : option2118145160on_val, Y : option2118145160on_val]: ((if_opt451925058on_val @ $true @ X @ Y) = X)))).

% Conjectures (1)
thf(conj_0, conjecture,
    ((oconf_454120169t_char @ p @ ha @ (produc904988266on_val @ c @ (fun_up356838326on_val @ fs @ (produc1304532571t_char @ f @ d) @ (some_val @ v)))))).
