%   ORIGINAL: h4/real/REAL__SUP__EXISTS
% 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/real/REAL__SUP__SOMEPOS: !P. (?x. P x /\ h4/realax/real__lt (h4/real/real__of__num h4/num/0) x) /\ (?z. !x. P x ==> h4/realax/real__lt x z) ==> (?s. !y. (?x. P x /\ h4/realax/real__lt y x) <=> h4/realax/real__lt y s)
% Assm: h4/real/SUP__LEMMA1: !s d P. (!y. (?x. (\x0. P (h4/realax/real__add x0 d)) x /\ h4/realax/real__lt y x) <=> h4/realax/real__lt y s) ==> (!y. (?x. P x /\ h4/realax/real__lt y x) <=> h4/realax/real__lt y (h4/realax/real__add s d))
% Assm: h4/real/SUP__LEMMA2: !P. (?x. P x) ==> (?d x. (\x0. P (h4/realax/real__add x0 d)) x /\ h4/realax/real__lt (h4/real/real__of__num h4/num/0) x)
% Assm: h4/real/SUP__LEMMA3: !d P. (?z. !x. P x ==> h4/realax/real__lt x z) ==> (?z. !x. (\x0. P (h4/realax/real__add x0 d)) x ==> h4/realax/real__lt x z)
% Goal: !P. (?x. P x) /\ (?z. !x. P x ==> h4/realax/real__lt x z) ==> (?s. !y. (?x. P x /\ h4/realax/real__lt y x) <=> h4/realax/real__lt y 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_reals_REALu_u_SUPu_u_SOMEPOS]: !P. (?x. happ P x /\ h4/realax/real__lt (h4/real/real__of__num h4/num/0) x) /\ (?z. !x. happ P x ==> h4/realax/real__lt x z) ==> (?s. !y. (?x. happ P x /\ h4/realax/real__lt y x) <=> h4/realax/real__lt y s)
% Assm [h4s_reals_SUPu_u_LEMMA1]: !s d P. (!y. (?x. happ P (h4/realax/real__add x d) /\ h4/realax/real__lt y x) <=> h4/realax/real__lt y s) ==> (!y. (?x. happ P x /\ h4/realax/real__lt y x) <=> h4/realax/real__lt y (h4/realax/real__add s d))
% Assm [h4s_reals_SUPu_u_LEMMA2]: !P. (?x. happ P x) ==> (?d x. happ P (h4/realax/real__add x d) /\ h4/realax/real__lt (h4/real/real__of__num h4/num/0) x)
% Assm [h4s_reals_SUPu_u_LEMMA3]: !d P. (?z. !x. happ P x ==> h4/realax/real__lt x z) ==> (?z. !x. happ P (h4/realax/real__add x d) ==> h4/realax/real__lt x z)
% Goal: !P. (?x. happ P x) /\ (?z. !x. happ P x ==> h4/realax/real__lt x z) ==> (?s. !y. (?x. happ P x /\ h4/realax/real__lt y x) <=> h4/realax/real__lt y s)
fof(aHLu_TRUTH, axiom, p(s(t_bool,t))).
fof(aHLu_FALSITY, axiom, ~ (p(s(t_bool,f)))).
fof(aHLu_BOOLu_CASES, axiom, ![V_t]: (s(t_bool,V_t) = s(t_bool,t) | s(t_bool,V_t) = s(t_bool,f))).
fof(aHLu_EXT, axiom, ![TV_Q66501,TV_Q66497]: ![V_f, V_g]: (![V_x]: s(TV_Q66497,happ(s(t_fun(TV_Q66501,TV_Q66497),V_f),s(TV_Q66501,V_x))) = s(TV_Q66497,happ(s(t_fun(TV_Q66501,TV_Q66497),V_g),s(TV_Q66501,V_x))) => s(t_fun(TV_Q66501,TV_Q66497),V_f) = s(t_fun(TV_Q66501,TV_Q66497),V_g))).
fof(ah4s_reals_REALu_u_SUPu_u_SOMEPOS, axiom, ![V_P]: ((?[V_x]: (p(s(t_bool,happ(s(t_fun(t_h4s_realaxs_real,t_bool),V_P),s(t_h4s_realaxs_real,V_x)))) & p(s(t_bool,h4s_realaxs_realu_u_lt(s(t_h4s_realaxs_real,h4s_reals_realu_u_ofu_u_num(s(t_h4s_nums_num,h4s_nums_0))),s(t_h4s_realaxs_real,V_x))))) & ?[V_z]: ![V_x]: (p(s(t_bool,happ(s(t_fun(t_h4s_realaxs_real,t_bool),V_P),s(t_h4s_realaxs_real,V_x)))) => p(s(t_bool,h4s_realaxs_realu_u_lt(s(t_h4s_realaxs_real,V_x),s(t_h4s_realaxs_real,V_z)))))) => ?[V_s]: ![V_y]: (?[V_x]: (p(s(t_bool,happ(s(t_fun(t_h4s_realaxs_real,t_bool),V_P),s(t_h4s_realaxs_real,V_x)))) & p(s(t_bool,h4s_realaxs_realu_u_lt(s(t_h4s_realaxs_real,V_y),s(t_h4s_realaxs_real,V_x))))) <=> p(s(t_bool,h4s_realaxs_realu_u_lt(s(t_h4s_realaxs_real,V_y),s(t_h4s_realaxs_real,V_s))))))).
fof(ah4s_reals_SUPu_u_LEMMA1, axiom, ![V_s, V_d, V_P]: (![V_y]: (?[V_x]: (p(s(t_bool,happ(s(t_fun(t_h4s_realaxs_real,t_bool),V_P),s(t_h4s_realaxs_real,h4s_realaxs_realu_u_add(s(t_h4s_realaxs_real,V_x),s(t_h4s_realaxs_real,V_d)))))) & p(s(t_bool,h4s_realaxs_realu_u_lt(s(t_h4s_realaxs_real,V_y),s(t_h4s_realaxs_real,V_x))))) <=> p(s(t_bool,h4s_realaxs_realu_u_lt(s(t_h4s_realaxs_real,V_y),s(t_h4s_realaxs_real,V_s))))) => ![V_y]: (?[V_x]: (p(s(t_bool,happ(s(t_fun(t_h4s_realaxs_real,t_bool),V_P),s(t_h4s_realaxs_real,V_x)))) & p(s(t_bool,h4s_realaxs_realu_u_lt(s(t_h4s_realaxs_real,V_y),s(t_h4s_realaxs_real,V_x))))) <=> p(s(t_bool,h4s_realaxs_realu_u_lt(s(t_h4s_realaxs_real,V_y),s(t_h4s_realaxs_real,h4s_realaxs_realu_u_add(s(t_h4s_realaxs_real,V_s),s(t_h4s_realaxs_real,V_d))))))))).
fof(ah4s_reals_SUPu_u_LEMMA2, axiom, ![V_P]: (?[V_x]: p(s(t_bool,happ(s(t_fun(t_h4s_realaxs_real,t_bool),V_P),s(t_h4s_realaxs_real,V_x)))) => ?[V_d, V_x]: (p(s(t_bool,happ(s(t_fun(t_h4s_realaxs_real,t_bool),V_P),s(t_h4s_realaxs_real,h4s_realaxs_realu_u_add(s(t_h4s_realaxs_real,V_x),s(t_h4s_realaxs_real,V_d)))))) & p(s(t_bool,h4s_realaxs_realu_u_lt(s(t_h4s_realaxs_real,h4s_reals_realu_u_ofu_u_num(s(t_h4s_nums_num,h4s_nums_0))),s(t_h4s_realaxs_real,V_x))))))).
fof(ah4s_reals_SUPu_u_LEMMA3, axiom, ![V_d, V_P]: (?[V_z]: ![V_x]: (p(s(t_bool,happ(s(t_fun(t_h4s_realaxs_real,t_bool),V_P),s(t_h4s_realaxs_real,V_x)))) => p(s(t_bool,h4s_realaxs_realu_u_lt(s(t_h4s_realaxs_real,V_x),s(t_h4s_realaxs_real,V_z))))) => ?[V_z]: ![V_x]: (p(s(t_bool,happ(s(t_fun(t_h4s_realaxs_real,t_bool),V_P),s(t_h4s_realaxs_real,h4s_realaxs_realu_u_add(s(t_h4s_realaxs_real,V_x),s(t_h4s_realaxs_real,V_d)))))) => p(s(t_bool,h4s_realaxs_realu_u_lt(s(t_h4s_realaxs_real,V_x),s(t_h4s_realaxs_real,V_z))))))).
fof(ch4s_reals_REALu_u_SUPu_u_EXISTS, conjecture, ![V_P]: ((?[V_x]: p(s(t_bool,happ(s(t_fun(t_h4s_realaxs_real,t_bool),V_P),s(t_h4s_realaxs_real,V_x)))) & ?[V_z]: ![V_x]: (p(s(t_bool,happ(s(t_fun(t_h4s_realaxs_real,t_bool),V_P),s(t_h4s_realaxs_real,V_x)))) => p(s(t_bool,h4s_realaxs_realu_u_lt(s(t_h4s_realaxs_real,V_x),s(t_h4s_realaxs_real,V_z)))))) => ?[V_s]: ![V_y]: (?[V_x]: (p(s(t_bool,happ(s(t_fun(t_h4s_realaxs_real,t_bool),V_P),s(t_h4s_realaxs_real,V_x)))) & p(s(t_bool,h4s_realaxs_realu_u_lt(s(t_h4s_realaxs_real,V_y),s(t_h4s_realaxs_real,V_x))))) <=> p(s(t_bool,h4s_realaxs_realu_u_lt(s(t_h4s_realaxs_real,V_y),s(t_h4s_realaxs_real,V_s))))))).
