%   ORIGINAL: h4/util__prob/ENUMERATE
% Assm: HL_TRUTH: T
% Assm: HL_FALSITY: ~F
% Assm: HL_BOOL_CASES: !t. (t <=> T) \/ (t <=> F)
% Assm: HL_EXT: !f g. (!x. f x = g x) ==> f = g
% Assm: h4/bool/EXISTS__DEF: $exists = (\P. P (h4/min/_40 P))
% Assm: h4/bool/TRUTH: T
% Assm: h4/bool/REFL__CLAUSE: !x. x = x <=> T
% Assm: h4/util__prob/enumerate__def: !s. h4/util__prob/enumerate s = h4/min/_40 (\f. h4/pred__set/BIJ f h4/pred__set/UNIV s)
% Goal: !s. (?f. h4/pred__set/BIJ f h4/pred__set/UNIV s) <=> h4/pred__set/BIJ (h4/util__prob/enumerate s) h4/pred__set/UNIV s
%   PROCESSED
% Assm [HLu_TRUTH]: T
% Assm [HLu_FALSITY]: ~F
% Assm [HLu_BOOLu_CASES]: !t. (t <=> T) \/ (t <=> F)
% Assm [HLu_EXT]: !f g. (!x. happ f x = happ g x) ==> f = g
% Assm [h4s_bools_EXISTSu_u_DEF]: !x. $exists x <=> happ x (h4/min/_40 x)
% Assm [h4s_bools_TRUTH]: T
% Assm [h4s_bools_REFLu_u_CLAUSE]: !x. x = x <=> T
% Assm [h4s_utilu_u_probs_enumerateu_u_def]: !_0. (!s f. happ (happ _0 s) f <=> h4/pred__set/BIJ f h4/pred__set/UNIV s) ==> (!s. h4/util__prob/enumerate s = h4/min/_40 (happ _0 s))
% Goal: !s. (?f. h4/pred__set/BIJ f h4/pred__set/UNIV s) <=> h4/pred__set/BIJ (h4/util__prob/enumerate s) h4/pred__set/UNIV s
fof(aHLu_TRUTH, axiom, p(s(t_bool,t))).
fof(aHLu_FALSITY, axiom, ~ (p(s(t_bool,f0)))).
fof(aHLu_BOOLu_CASES, axiom, ![V_t]: (s(t_bool,V_t) = s(t_bool,t) | s(t_bool,V_t) = s(t_bool,f0))).
fof(aHLu_EXT, axiom, ![TV_Q184714,TV_Q184710]: ![V_f, V_g]: (![V_x]: s(TV_Q184710,happ(s(t_fun(TV_Q184714,TV_Q184710),V_f),s(TV_Q184714,V_x))) = s(TV_Q184710,happ(s(t_fun(TV_Q184714,TV_Q184710),V_g),s(TV_Q184714,V_x))) => s(t_fun(TV_Q184714,TV_Q184710),V_f) = s(t_fun(TV_Q184714,TV_Q184710),V_g))).
fof(ah4s_bools_EXISTSu_u_DEF, axiom, ![TV_u_27a]: ![V_x]: s(t_bool,d_exists(s(t_fun(TV_u_27a,t_bool),V_x))) = s(t_bool,happ(s(t_fun(TV_u_27a,t_bool),V_x),s(TV_u_27a,h4s_mins_u_40(s(t_fun(TV_u_27a,t_bool),V_x)))))).
fof(ah4s_bools_TRUTH, axiom, p(s(t_bool,t))).
fof(ah4s_bools_REFLu_u_CLAUSE, axiom, ![TV_u_27a]: ![V_x]: (s(TV_u_27a,V_x) = s(TV_u_27a,V_x) <=> p(s(t_bool,t)))).
fof(ah4s_utilu_u_probs_enumerateu_u_def, axiom, ![TV_u_27a]: ![V_uu_0]: (![V_s, V_f]: s(t_bool,happ(s(t_fun(t_fun(t_h4s_nums_num,TV_u_27a),t_bool),happ(s(t_fun(t_fun(TV_u_27a,t_bool),t_fun(t_fun(t_h4s_nums_num,TV_u_27a),t_bool)),V_uu_0),s(t_fun(TV_u_27a,t_bool),V_s))),s(t_fun(t_h4s_nums_num,TV_u_27a),V_f))) = s(t_bool,h4s_predu_u_sets_bij(s(t_fun(t_h4s_nums_num,TV_u_27a),V_f),s(t_fun(t_h4s_nums_num,t_bool),h4s_predu_u_sets_univ),s(t_fun(TV_u_27a,t_bool),V_s))) => ![V_s]: s(t_fun(t_h4s_nums_num,TV_u_27a),h4s_utilu_u_probs_enumerate(s(t_fun(TV_u_27a,t_bool),V_s))) = s(t_fun(t_h4s_nums_num,TV_u_27a),h4s_mins_u_40(s(t_fun(t_fun(t_h4s_nums_num,TV_u_27a),t_bool),happ(s(t_fun(t_fun(TV_u_27a,t_bool),t_fun(t_fun(t_h4s_nums_num,TV_u_27a),t_bool)),V_uu_0),s(t_fun(TV_u_27a,t_bool),V_s))))))).
fof(ch4s_utilu_u_probs_ENUMERATE, conjecture, ![TV_u_27a]: ![V_s]: (?[V_f]: p(s(t_bool,h4s_predu_u_sets_bij(s(t_fun(t_h4s_nums_num,TV_u_27a),V_f),s(t_fun(t_h4s_nums_num,t_bool),h4s_predu_u_sets_univ),s(t_fun(TV_u_27a,t_bool),V_s)))) <=> p(s(t_bool,h4s_predu_u_sets_bij(s(t_fun(t_h4s_nums_num,TV_u_27a),h4s_utilu_u_probs_enumerate(s(t_fun(TV_u_27a,t_bool),V_s))),s(t_fun(t_h4s_nums_num,t_bool),h4s_predu_u_sets_univ),s(t_fun(TV_u_27a,t_bool),V_s)))))).
