%   ORIGINAL: h4/ratRing/rat__ring__thms_c4
% 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/EQ__SYM__EQ: !y x. x = y <=> y = x
% Assm: h4/ring/ring__accessors_c2: !f1 f0 f a0 a. h4/ring/ring__RP (h4/ring/ring0 a a0 f f0 f1) = f
% Assm: h4/ring/ring__accessors_c3: !f1 f0 f a0 a. h4/ring/ring__RM (h4/ring/ring0 a a0 f f0 f1) = f0
% Assm: h4/ring/ring__accessors_c4: !f1 f0 f a0 a. h4/ring/ring__RN (h4/ring/ring0 a a0 f f0 f1) = f1
% Assm: h4/ringNorm/interp__p__def_c0: !vm r c. h4/ringNorm/interp__p r vm (h4/ringNorm/Pconst c) = c
% Assm: h4/ringNorm/interp__p__def_c1: !vm r i. h4/ringNorm/interp__p r vm (h4/ringNorm/Pvar i) = h4/quote/varmap__find i vm
% Assm: h4/ringNorm/interp__p__def_c2: !vm r p2 p1. h4/ringNorm/interp__p r vm (h4/ringNorm/Pplus p1 p2) = h4/ring/ring__RP r (h4/ringNorm/interp__p r vm p1) (h4/ringNorm/interp__p r vm p2)
% Assm: h4/ringNorm/interp__p__def_c3: !vm r p2 p1. h4/ringNorm/interp__p r vm (h4/ringNorm/Pmult p1 p2) = h4/ring/ring__RM r (h4/ringNorm/interp__p r vm p1) (h4/ringNorm/interp__p r vm p2)
% Assm: h4/ringNorm/interp__p__def_c4: !vm r p1. h4/ringNorm/interp__p r vm (h4/ringNorm/Popp p1) = h4/ring/ring__RN r (h4/ringNorm/interp__p r vm p1)
% Assm: h4/ratRing/rat__interp__p__def: h4/ratRing/rat__interp__p = h4/ringNorm/interp__p (h4/ring/ring0 (h4/rat/rat__of__num h4/num/0) (h4/rat/rat__of__num (h4/arithmetic/NUMERAL (h4/arithmetic/BIT1 h4/arithmetic/ZERO))) h4/rat/rat__add h4/rat/rat__mul h4/rat/rat__ainv)
% Goal: !vm p2 p1. h4/ratRing/rat__interp__p vm (h4/ringNorm/Pplus p1 p2) = h4/rat/rat__add (h4/ratRing/rat__interp__p vm p1) (h4/ratRing/rat__interp__p vm p2)
%   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_EQu_u_SYMu_u_EQ]: !y x. x = y <=> y = x
% Assm [h4s_rings_ringu_u_accessorsu_c2]: !f1 f0 f a0 a. h4/ring/ring__RP (h4/ring/ring0 a a0 f f0 f1) = f
% Assm [h4s_rings_ringu_u_accessorsu_c3]: !f1 f0 f a0 a. h4/ring/ring__RM (h4/ring/ring0 a a0 f f0 f1) = f0
% Assm [h4s_rings_ringu_u_accessorsu_c4]: !f1 f0 f a0 a. h4/ring/ring__RN (h4/ring/ring0 a a0 f f0 f1) = f1
% Assm [h4s_ringNorms_interpu_u_pu_u_defu_c0]: !vm r c. happ (happ (h4/ringNorm/interp__p r) vm) (h4/ringNorm/Pconst c) = c
% Assm [h4s_ringNorms_interpu_u_pu_u_defu_c1]: !vm r i. happ (happ (h4/ringNorm/interp__p r) vm) (h4/ringNorm/Pvar i) = h4/quote/varmap__find i vm
% Assm [h4s_ringNorms_interpu_u_pu_u_defu_c2]: !vm r p2 p1. happ (happ (h4/ringNorm/interp__p r) vm) (h4/ringNorm/Pplus p1 p2) = happ (happ (h4/ring/ring__RP r) (happ (happ (h4/ringNorm/interp__p r) vm) p1)) (happ (happ (h4/ringNorm/interp__p r) vm) p2)
% Assm [h4s_ringNorms_interpu_u_pu_u_defu_c3]: !vm r p2 p1. happ (happ (h4/ringNorm/interp__p r) vm) (h4/ringNorm/Pmult p1 p2) = happ (happ (h4/ring/ring__RM r) (happ (happ (h4/ringNorm/interp__p r) vm) p1)) (happ (happ (h4/ringNorm/interp__p r) vm) p2)
% Assm [h4s_ringNorms_interpu_u_pu_u_defu_c4]: !vm r p1. happ (happ (h4/ringNorm/interp__p r) vm) (h4/ringNorm/Popp p1) = happ (h4/ring/ring__RN r) (happ (happ (h4/ringNorm/interp__p r) vm) p1)
% Assm [h4s_ratRings_ratu_u_interpu_u_pu_u_def]: h4/ratRing/rat__interp__p = h4/ringNorm/interp__p (h4/ring/ring0 (h4/rat/rat__of__num h4/num/0) (h4/rat/rat__of__num (h4/arithmetic/NUMERAL (h4/arithmetic/BIT1 h4/arithmetic/ZERO))) h4/rat/rat__add h4/rat/rat__mul h4/rat/rat__ainv)
% Goal: !vm p2 p1. happ (happ h4/ratRing/rat__interp__p vm) (h4/ringNorm/Pplus p1 p2) = happ (happ h4/rat/rat__add (happ (happ h4/ratRing/rat__interp__p vm) p1)) (happ (happ h4/ratRing/rat__interp__p vm) p2)
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_Q237520,TV_Q237516]: ![V_f, V_g]: (![V_x]: s(TV_Q237516,happ(s(t_fun(TV_Q237520,TV_Q237516),V_f),s(TV_Q237520,V_x))) = s(TV_Q237516,happ(s(t_fun(TV_Q237520,TV_Q237516),V_g),s(TV_Q237520,V_x))) => s(t_fun(TV_Q237520,TV_Q237516),V_f) = s(t_fun(TV_Q237520,TV_Q237516),V_g))).
fof(ah4s_bools_EQu_u_SYMu_u_EQ, axiom, ![TV_u_27a]: ![V_y, V_x]: (s(TV_u_27a,V_x) = s(TV_u_27a,V_y) <=> s(TV_u_27a,V_y) = s(TV_u_27a,V_x))).
fof(ah4s_rings_ringu_u_accessorsu_c2, axiom, ![TV_u_27a]: ![V_f1, V_f0, V_f, V_a0, V_a]: s(t_fun(TV_u_27a,t_fun(TV_u_27a,TV_u_27a)),h4s_rings_ringu_u_rp(s(t_h4s_rings_ring(TV_u_27a),h4s_rings_ring0(s(TV_u_27a,V_a),s(TV_u_27a,V_a0),s(t_fun(TV_u_27a,t_fun(TV_u_27a,TV_u_27a)),V_f),s(t_fun(TV_u_27a,t_fun(TV_u_27a,TV_u_27a)),V_f0),s(t_fun(TV_u_27a,TV_u_27a),V_f1))))) = s(t_fun(TV_u_27a,t_fun(TV_u_27a,TV_u_27a)),V_f)).
fof(ah4s_rings_ringu_u_accessorsu_c3, axiom, ![TV_u_27a]: ![V_f1, V_f0, V_f, V_a0, V_a]: s(t_fun(TV_u_27a,t_fun(TV_u_27a,TV_u_27a)),h4s_rings_ringu_u_rm(s(t_h4s_rings_ring(TV_u_27a),h4s_rings_ring0(s(TV_u_27a,V_a),s(TV_u_27a,V_a0),s(t_fun(TV_u_27a,t_fun(TV_u_27a,TV_u_27a)),V_f),s(t_fun(TV_u_27a,t_fun(TV_u_27a,TV_u_27a)),V_f0),s(t_fun(TV_u_27a,TV_u_27a),V_f1))))) = s(t_fun(TV_u_27a,t_fun(TV_u_27a,TV_u_27a)),V_f0)).
fof(ah4s_rings_ringu_u_accessorsu_c4, axiom, ![TV_u_27a]: ![V_f1, V_f0, V_f, V_a0, V_a]: s(t_fun(TV_u_27a,TV_u_27a),h4s_rings_ringu_u_rn(s(t_h4s_rings_ring(TV_u_27a),h4s_rings_ring0(s(TV_u_27a,V_a),s(TV_u_27a,V_a0),s(t_fun(TV_u_27a,t_fun(TV_u_27a,TV_u_27a)),V_f),s(t_fun(TV_u_27a,t_fun(TV_u_27a,TV_u_27a)),V_f0),s(t_fun(TV_u_27a,TV_u_27a),V_f1))))) = s(t_fun(TV_u_27a,TV_u_27a),V_f1)).
fof(ah4s_ringNorms_interpu_u_pu_u_defu_c0, axiom, ![TV_u_27a]: ![V_vm, V_r, V_c]: s(TV_u_27a,happ(s(t_fun(t_h4s_ringNorms_polynom(TV_u_27a),TV_u_27a),happ(s(t_fun(t_h4s_quotes_varmap(TV_u_27a),t_fun(t_h4s_ringNorms_polynom(TV_u_27a),TV_u_27a)),h4s_ringnorms_interpu_u_p(s(t_h4s_rings_ring(TV_u_27a),V_r))),s(t_h4s_quotes_varmap(TV_u_27a),V_vm))),s(t_h4s_ringNorms_polynom(TV_u_27a),h4s_ringnorms_pconst(s(TV_u_27a,V_c))))) = s(TV_u_27a,V_c)).
fof(ah4s_ringNorms_interpu_u_pu_u_defu_c1, axiom, ![TV_u_27a]: ![V_vm, V_r, V_i]: s(TV_u_27a,happ(s(t_fun(t_h4s_ringNorms_polynom(TV_u_27a),TV_u_27a),happ(s(t_fun(t_h4s_quotes_varmap(TV_u_27a),t_fun(t_h4s_ringNorms_polynom(TV_u_27a),TV_u_27a)),h4s_ringnorms_interpu_u_p(s(t_h4s_rings_ring(TV_u_27a),V_r))),s(t_h4s_quotes_varmap(TV_u_27a),V_vm))),s(t_h4s_ringNorms_polynom(TV_u_27a),h4s_ringnorms_pvar(s(t_h4s_quotes_index,V_i))))) = s(TV_u_27a,h4s_quotes_varmapu_u_find(s(t_h4s_quotes_index,V_i),s(t_h4s_quotes_varmap(TV_u_27a),V_vm)))).
fof(ah4s_ringNorms_interpu_u_pu_u_defu_c2, axiom, ![TV_u_27a]: ![V_vm, V_r, V_p2, V_p1]: s(TV_u_27a,happ(s(t_fun(t_h4s_ringNorms_polynom(TV_u_27a),TV_u_27a),happ(s(t_fun(t_h4s_quotes_varmap(TV_u_27a),t_fun(t_h4s_ringNorms_polynom(TV_u_27a),TV_u_27a)),h4s_ringnorms_interpu_u_p(s(t_h4s_rings_ring(TV_u_27a),V_r))),s(t_h4s_quotes_varmap(TV_u_27a),V_vm))),s(t_h4s_ringNorms_polynom(TV_u_27a),h4s_ringnorms_pplus(s(t_h4s_ringNorms_polynom(TV_u_27a),V_p1),s(t_h4s_ringNorms_polynom(TV_u_27a),V_p2))))) = s(TV_u_27a,happ(s(t_fun(TV_u_27a,TV_u_27a),happ(s(t_fun(TV_u_27a,t_fun(TV_u_27a,TV_u_27a)),h4s_rings_ringu_u_rp(s(t_h4s_rings_ring(TV_u_27a),V_r))),s(TV_u_27a,happ(s(t_fun(t_h4s_ringNorms_polynom(TV_u_27a),TV_u_27a),happ(s(t_fun(t_h4s_quotes_varmap(TV_u_27a),t_fun(t_h4s_ringNorms_polynom(TV_u_27a),TV_u_27a)),h4s_ringnorms_interpu_u_p(s(t_h4s_rings_ring(TV_u_27a),V_r))),s(t_h4s_quotes_varmap(TV_u_27a),V_vm))),s(t_h4s_ringNorms_polynom(TV_u_27a),V_p1))))),s(TV_u_27a,happ(s(t_fun(t_h4s_ringNorms_polynom(TV_u_27a),TV_u_27a),happ(s(t_fun(t_h4s_quotes_varmap(TV_u_27a),t_fun(t_h4s_ringNorms_polynom(TV_u_27a),TV_u_27a)),h4s_ringnorms_interpu_u_p(s(t_h4s_rings_ring(TV_u_27a),V_r))),s(t_h4s_quotes_varmap(TV_u_27a),V_vm))),s(t_h4s_ringNorms_polynom(TV_u_27a),V_p2)))))).
fof(ah4s_ringNorms_interpu_u_pu_u_defu_c3, axiom, ![TV_u_27a]: ![V_vm, V_r, V_p2, V_p1]: s(TV_u_27a,happ(s(t_fun(t_h4s_ringNorms_polynom(TV_u_27a),TV_u_27a),happ(s(t_fun(t_h4s_quotes_varmap(TV_u_27a),t_fun(t_h4s_ringNorms_polynom(TV_u_27a),TV_u_27a)),h4s_ringnorms_interpu_u_p(s(t_h4s_rings_ring(TV_u_27a),V_r))),s(t_h4s_quotes_varmap(TV_u_27a),V_vm))),s(t_h4s_ringNorms_polynom(TV_u_27a),h4s_ringnorms_pmult(s(t_h4s_ringNorms_polynom(TV_u_27a),V_p1),s(t_h4s_ringNorms_polynom(TV_u_27a),V_p2))))) = s(TV_u_27a,happ(s(t_fun(TV_u_27a,TV_u_27a),happ(s(t_fun(TV_u_27a,t_fun(TV_u_27a,TV_u_27a)),h4s_rings_ringu_u_rm(s(t_h4s_rings_ring(TV_u_27a),V_r))),s(TV_u_27a,happ(s(t_fun(t_h4s_ringNorms_polynom(TV_u_27a),TV_u_27a),happ(s(t_fun(t_h4s_quotes_varmap(TV_u_27a),t_fun(t_h4s_ringNorms_polynom(TV_u_27a),TV_u_27a)),h4s_ringnorms_interpu_u_p(s(t_h4s_rings_ring(TV_u_27a),V_r))),s(t_h4s_quotes_varmap(TV_u_27a),V_vm))),s(t_h4s_ringNorms_polynom(TV_u_27a),V_p1))))),s(TV_u_27a,happ(s(t_fun(t_h4s_ringNorms_polynom(TV_u_27a),TV_u_27a),happ(s(t_fun(t_h4s_quotes_varmap(TV_u_27a),t_fun(t_h4s_ringNorms_polynom(TV_u_27a),TV_u_27a)),h4s_ringnorms_interpu_u_p(s(t_h4s_rings_ring(TV_u_27a),V_r))),s(t_h4s_quotes_varmap(TV_u_27a),V_vm))),s(t_h4s_ringNorms_polynom(TV_u_27a),V_p2)))))).
fof(ah4s_ringNorms_interpu_u_pu_u_defu_c4, axiom, ![TV_u_27a]: ![V_vm, V_r, V_p1]: s(TV_u_27a,happ(s(t_fun(t_h4s_ringNorms_polynom(TV_u_27a),TV_u_27a),happ(s(t_fun(t_h4s_quotes_varmap(TV_u_27a),t_fun(t_h4s_ringNorms_polynom(TV_u_27a),TV_u_27a)),h4s_ringnorms_interpu_u_p(s(t_h4s_rings_ring(TV_u_27a),V_r))),s(t_h4s_quotes_varmap(TV_u_27a),V_vm))),s(t_h4s_ringNorms_polynom(TV_u_27a),h4s_ringnorms_popp(s(t_h4s_ringNorms_polynom(TV_u_27a),V_p1))))) = s(TV_u_27a,happ(s(t_fun(TV_u_27a,TV_u_27a),h4s_rings_ringu_u_rn(s(t_h4s_rings_ring(TV_u_27a),V_r))),s(TV_u_27a,happ(s(t_fun(t_h4s_ringNorms_polynom(TV_u_27a),TV_u_27a),happ(s(t_fun(t_h4s_quotes_varmap(TV_u_27a),t_fun(t_h4s_ringNorms_polynom(TV_u_27a),TV_u_27a)),h4s_ringnorms_interpu_u_p(s(t_h4s_rings_ring(TV_u_27a),V_r))),s(t_h4s_quotes_varmap(TV_u_27a),V_vm))),s(t_h4s_ringNorms_polynom(TV_u_27a),V_p1)))))).
fof(ah4s_ratRings_ratu_u_interpu_u_pu_u_def, axiom, s(t_fun(t_h4s_quotes_varmap(t_h4s_rats_rat),t_fun(t_h4s_ringNorms_polynom(t_h4s_rats_rat),t_h4s_rats_rat)),h4s_ratrings_ratu_u_interpu_u_p) = s(t_fun(t_h4s_quotes_varmap(t_h4s_rats_rat),t_fun(t_h4s_ringNorms_polynom(t_h4s_rats_rat),t_h4s_rats_rat)),h4s_ringnorms_interpu_u_p(s(t_h4s_rings_ring(t_h4s_rats_rat),h4s_rings_ring0(s(t_h4s_rats_rat,h4s_rats_ratu_u_ofu_u_num(s(t_h4s_nums_num,h4s_nums_0))),s(t_h4s_rats_rat,h4s_rats_ratu_u_ofu_u_num(s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,h4s_arithmetics_zero))))))),s(t_fun(t_h4s_rats_rat,t_fun(t_h4s_rats_rat,t_h4s_rats_rat)),h4s_rats_ratu_u_add),s(t_fun(t_h4s_rats_rat,t_fun(t_h4s_rats_rat,t_h4s_rats_rat)),h4s_rats_ratu_u_mul),s(t_fun(t_h4s_rats_rat,t_h4s_rats_rat),h4s_rats_ratu_u_ainv)))))).
fof(ch4s_ratRings_ratu_u_ringu_u_thmsu_c4, conjecture, ![V_vm, V_p2, V_p1]: s(t_h4s_rats_rat,happ(s(t_fun(t_h4s_ringNorms_polynom(t_h4s_rats_rat),t_h4s_rats_rat),happ(s(t_fun(t_h4s_quotes_varmap(t_h4s_rats_rat),t_fun(t_h4s_ringNorms_polynom(t_h4s_rats_rat),t_h4s_rats_rat)),h4s_ratrings_ratu_u_interpu_u_p),s(t_h4s_quotes_varmap(t_h4s_rats_rat),V_vm))),s(t_h4s_ringNorms_polynom(t_h4s_rats_rat),h4s_ringnorms_pplus(s(t_h4s_ringNorms_polynom(t_h4s_rats_rat),V_p1),s(t_h4s_ringNorms_polynom(t_h4s_rats_rat),V_p2))))) = s(t_h4s_rats_rat,happ(s(t_fun(t_h4s_rats_rat,t_h4s_rats_rat),happ(s(t_fun(t_h4s_rats_rat,t_fun(t_h4s_rats_rat,t_h4s_rats_rat)),h4s_rats_ratu_u_add),s(t_h4s_rats_rat,happ(s(t_fun(t_h4s_ringNorms_polynom(t_h4s_rats_rat),t_h4s_rats_rat),happ(s(t_fun(t_h4s_quotes_varmap(t_h4s_rats_rat),t_fun(t_h4s_ringNorms_polynom(t_h4s_rats_rat),t_h4s_rats_rat)),h4s_ratrings_ratu_u_interpu_u_p),s(t_h4s_quotes_varmap(t_h4s_rats_rat),V_vm))),s(t_h4s_ringNorms_polynom(t_h4s_rats_rat),V_p1))))),s(t_h4s_rats_rat,happ(s(t_fun(t_h4s_ringNorms_polynom(t_h4s_rats_rat),t_h4s_rats_rat),happ(s(t_fun(t_h4s_quotes_varmap(t_h4s_rats_rat),t_fun(t_h4s_ringNorms_polynom(t_h4s_rats_rat),t_h4s_rats_rat)),h4s_ratrings_ratu_u_interpu_u_p),s(t_h4s_quotes_varmap(t_h4s_rats_rat),V_vm))),s(t_h4s_ringNorms_polynom(t_h4s_rats_rat),V_p2)))))).
