%   ORIGINAL: h4/numRing/num__rewrites_c70
% 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/numeral/numeral__mult_c2: !n m. h4/arithmetic/_2A (h4/arithmetic/BIT1 n) m = h4/numeral/iZ (h4/arithmetic/_2B (h4/numeral/iDUB (h4/arithmetic/_2A n m)) m)
% Assm: h4/arithmetic/ALT__ZERO: h4/arithmetic/ZERO = h4/num/0
% Assm: h4/arithmetic/BIT10: !n. h4/arithmetic/BIT1 n = h4/arithmetic/_2B n (h4/arithmetic/_2B n (h4/num/SUC h4/num/0))
% Assm: h4/arithmetic/ADD__CLAUSES_c3: !n m. h4/arithmetic/_2B m (h4/num/SUC n) = h4/num/SUC (h4/arithmetic/_2B m n)
% Assm: h4/arithmetic/BIT20: !n. h4/arithmetic/BIT2 n = h4/arithmetic/_2B n (h4/arithmetic/_2B n (h4/num/SUC (h4/num/SUC h4/num/0)))
% Assm: h4/bool/TRUTH: T
% Assm: h4/arithmetic/ADD__CLAUSES_c1: !m. h4/arithmetic/_2B m h4/num/0 = m
% Assm: h4/bool/REFL__CLAUSE: !x. x = x <=> T
% Assm: h4/bool/AND__CLAUSES_c0: !t. T /\ t <=> t
% Assm: h4/numeral/iDUB0: !x. h4/numeral/iDUB x = h4/arithmetic/_2B x x
% Assm: h4/numeral/iZ0: !x. h4/numeral/iZ x = x
% Assm: h4/bool/EQ__CLAUSES_c1: !t. (t <=> T) <=> t
% Assm: h4/arithmetic/ADD__SYM: !n m. h4/arithmetic/_2B m n = h4/arithmetic/_2B n m
% Assm: h4/arithmetic/ADD__ASSOC: !p n m. h4/arithmetic/_2B m (h4/arithmetic/_2B n p) = h4/arithmetic/_2B (h4/arithmetic/_2B m n) p
% Assm: h4/arithmetic/MULT__CLAUSES_c1: !m. h4/arithmetic/_2A m h4/num/0 = h4/num/0
% Assm: h4/arithmetic/MULT__CLAUSES_c0: !m. h4/arithmetic/_2A h4/num/0 m = h4/num/0
% Assm: h4/arithmetic/RIGHT__ADD__DISTRIB: !p n m. h4/arithmetic/_2A (h4/arithmetic/_2B m n) p = h4/arithmetic/_2B (h4/arithmetic/_2A m p) (h4/arithmetic/_2A n p)
% Assm: h4/arithmetic/MULT__CLAUSES_c4: !n m. h4/arithmetic/_2A (h4/num/SUC m) n = h4/arithmetic/_2B (h4/arithmetic/_2A m n) n
% Assm: h4/numeral/bit__initiality: !zf b2f b1f. ?f. f h4/arithmetic/ZERO = zf /\ (!n. f (h4/arithmetic/BIT1 n) = b1f n (f n)) /\ (!n. f (h4/arithmetic/BIT2 n) = b2f n (f n))
% Assm: h4/numeral/numeral__mult_c3: !n m. h4/arithmetic/_2A (h4/arithmetic/BIT2 n) m = h4/numeral/iDUB (h4/numeral/iZ (h4/arithmetic/_2B (h4/arithmetic/_2A n m) m))
% Assm: h4/arithmetic/ADD__CLAUSES_c2: !n m. h4/arithmetic/_2B (h4/num/SUC m) n = h4/num/SUC (h4/arithmetic/_2B m n)
% Assm: h4/numeral/numeral__mult_c0: !n. h4/arithmetic/_2A h4/arithmetic/ZERO n = h4/arithmetic/ZERO
% Assm: h4/numeral/internal__mult__def: h4/numeral/internal__mult = h4/arithmetic/_2A
% Assm: h4/numeral/numeral__mult_c1: !n. h4/arithmetic/_2A n h4/arithmetic/ZERO = h4/arithmetic/ZERO
% Assm: h4/numeral/internal__mult__characterisation_c2: !n m. h4/numeral/internal__mult (h4/arithmetic/BIT1 n) m = h4/numeral/iZ (h4/arithmetic/_2B (h4/numeral/iDUB (h4/numeral/internal__mult n m)) m)
% Assm: h4/numeral/internal__mult__characterisation_c3: !n m. h4/numeral/internal__mult (h4/arithmetic/BIT2 n) m = h4/numeral/iDUB (h4/numeral/iZ (h4/arithmetic/_2B (h4/numeral/internal__mult n m) m))
% Assm: h4/numeral/iSUB__DEF_c1: !x n b. h4/numeral/iSUB b (h4/arithmetic/BIT1 n) x = h4/bool/COND b (h4/numeral/iBIT__cases x (h4/arithmetic/BIT1 n) (\m. h4/numeral/iDUB (h4/numeral/iSUB T n m)) (\m. h4/arithmetic/BIT1 (h4/numeral/iSUB F n m))) (h4/numeral/iBIT__cases x (h4/numeral/iDUB n) (\m. h4/arithmetic/BIT1 (h4/numeral/iSUB F n m)) (\m. h4/numeral/iDUB (h4/numeral/iSUB F n m)))
% Assm: h4/numeral/iSUB__DEF_c2: !x n b. h4/numeral/iSUB b (h4/arithmetic/BIT2 n) x = h4/bool/COND b (h4/numeral/iBIT__cases x (h4/arithmetic/BIT2 n) (\m. h4/arithmetic/BIT1 (h4/numeral/iSUB T n m)) (\m. h4/numeral/iDUB (h4/numeral/iSUB T n m))) (h4/numeral/iBIT__cases x (h4/arithmetic/BIT1 n) (\m. h4/numeral/iDUB (h4/numeral/iSUB T n m)) (\m. h4/arithmetic/BIT1 (h4/numeral/iSUB F n m)))
% Assm: h4/numeral/numeral__add_c2: !n m. h4/numeral/iZ (h4/arithmetic/_2B (h4/arithmetic/BIT1 n) (h4/arithmetic/BIT1 m)) = h4/arithmetic/BIT2 (h4/numeral/iZ (h4/arithmetic/_2B n m))
% Assm: h4/numeral/numeral__add_c3: !n m. h4/numeral/iZ (h4/arithmetic/_2B (h4/arithmetic/BIT1 n) (h4/arithmetic/BIT2 m)) = h4/arithmetic/BIT1 (h4/num/SUC (h4/arithmetic/_2B n m))
% Assm: h4/numeral/numeral__add_c4: !n m. h4/numeral/iZ (h4/arithmetic/_2B (h4/arithmetic/BIT2 n) (h4/arithmetic/BIT1 m)) = h4/arithmetic/BIT1 (h4/num/SUC (h4/arithmetic/_2B n m))
% Assm: h4/numeral/numeral__add_c5: !n m. h4/numeral/iZ (h4/arithmetic/_2B (h4/arithmetic/BIT2 n) (h4/arithmetic/BIT2 m)) = h4/arithmetic/BIT2 (h4/num/SUC (h4/arithmetic/_2B n m))
% Assm: h4/numeral/numeral__add_c0: !n. h4/numeral/iZ (h4/arithmetic/_2B h4/arithmetic/ZERO n) = n
% Assm: h4/bool/FORALL__SIMP: !t. (!x. t) <=> t
% Assm: h4/arithmetic/ADD__CLAUSES_c0: !m. h4/arithmetic/_2B h4/num/0 m = m
% Assm: h4/numeral/iDUB__removal_c0: !n. h4/numeral/iDUB (h4/arithmetic/BIT1 n) = h4/arithmetic/BIT2 (h4/numeral/iDUB n)
% Assm: h4/numeral/iDUB__removal_c1: !n. h4/numeral/iDUB (h4/arithmetic/BIT2 n) = h4/arithmetic/BIT2 (h4/arithmetic/BIT1 n)
% Assm: h4/numeral/iSUB__THM_c6: !n m. h4/numeral/iSUB F (h4/arithmetic/BIT1 n) (h4/arithmetic/BIT2 m) = h4/numeral/iDUB (h4/numeral/iSUB F n m)
% Assm: h4/numeral/iSUB__THM_c2: !n. h4/numeral/iSUB F (h4/arithmetic/BIT1 n) h4/arithmetic/ZERO = h4/numeral/iDUB n
% Assm: h4/numeral/iSUB__THM_c9: !n m. h4/numeral/iSUB F (h4/arithmetic/BIT2 n) (h4/arithmetic/BIT1 m) = h4/numeral/iDUB (h4/numeral/iSUB T n m)
% Assm: h4/numeral/iSUB__THM_c3: !n m. h4/numeral/iSUB T (h4/arithmetic/BIT1 n) (h4/arithmetic/BIT1 m) = h4/numeral/iDUB (h4/numeral/iSUB T n m)
% Assm: h4/numeral/iSUB__THM_c10: !n m. h4/numeral/iSUB T (h4/arithmetic/BIT2 n) (h4/arithmetic/BIT2 m) = h4/numeral/iDUB (h4/numeral/iSUB T n m)
% Assm: h4/numeral/iDUB__removal_c2: h4/numeral/iDUB h4/arithmetic/ZERO = h4/arithmetic/ZERO
% Assm: h4/numRing/num__rewrites_c54: !n m. h4/numeral/iZ (h4/arithmetic/_2B (h4/arithmetic/BIT2 n) (h4/arithmetic/BIT1 m)) = h4/arithmetic/BIT1 (h4/num/SUC (h4/arithmetic/_2B n m))
% Assm: h4/numRing/num__rewrites_c53: !n m. h4/numeral/iZ (h4/arithmetic/_2B (h4/arithmetic/BIT1 n) (h4/arithmetic/BIT2 m)) = h4/arithmetic/BIT1 (h4/num/SUC (h4/arithmetic/_2B n m))
% Assm: h4/numRing/num__rewrites_c52: !n m. h4/numeral/iZ (h4/arithmetic/_2B (h4/arithmetic/BIT1 n) (h4/arithmetic/BIT1 m)) = h4/arithmetic/BIT2 (h4/numeral/iZ (h4/arithmetic/_2B n m))
% Assm: h4/numeral/numeral__distrib_c2: !n m. h4/arithmetic/_2B (h4/arithmetic/NUMERAL n) (h4/arithmetic/NUMERAL m) = h4/arithmetic/NUMERAL (h4/numeral/iZ (h4/arithmetic/_2B n m))
% Assm: h4/numRing/num__rewrites_c2: !n m. h4/arithmetic/_2B (h4/arithmetic/NUMERAL n) (h4/arithmetic/NUMERAL m) = h4/arithmetic/NUMERAL (h4/numeral/iZ (h4/arithmetic/_2B n m))
% Assm: h4/numRing/num__rewrites_c55: !n m. h4/numeral/iZ (h4/arithmetic/_2B (h4/arithmetic/BIT2 n) (h4/arithmetic/BIT2 m)) = h4/arithmetic/BIT2 (h4/num/SUC (h4/arithmetic/_2B n m))
% Assm: h4/numRing/num__rewrites_c50: !n. h4/numeral/iZ (h4/arithmetic/_2B h4/arithmetic/ZERO n) = n
% Assm: h4/numRing/num__rewrites_c51: !n. h4/numeral/iZ (h4/arithmetic/_2B n h4/arithmetic/ZERO) = n
% Assm: h4/numeral/numeral__add_c6: !n. h4/num/SUC (h4/arithmetic/_2B h4/arithmetic/ZERO n) = h4/num/SUC n
% Assm: h4/numeral/numeral__add_c9: !n m. h4/num/SUC (h4/arithmetic/_2B (h4/arithmetic/BIT1 n) (h4/arithmetic/BIT2 m)) = h4/arithmetic/BIT2 (h4/num/SUC (h4/arithmetic/_2B n m))
% Assm: h4/numeral/numeral__add_c10: !n m. h4/num/SUC (h4/arithmetic/_2B (h4/arithmetic/BIT2 n) (h4/arithmetic/BIT1 m)) = h4/arithmetic/BIT2 (h4/num/SUC (h4/arithmetic/_2B n m))
% Assm: h4/numeral/numeral__add_c1: !n. h4/numeral/iZ (h4/arithmetic/_2B n h4/arithmetic/ZERO) = n
% Assm: h4/numeral/numeral__add_c11: !n m. h4/num/SUC (h4/arithmetic/_2B (h4/arithmetic/BIT2 n) (h4/arithmetic/BIT2 m)) = h4/arithmetic/BIT1 (h4/numeral/iiSUC (h4/arithmetic/_2B n m))
% Assm: h4/numeral/numeral__add_c12: !n. h4/numeral/iiSUC (h4/arithmetic/_2B h4/arithmetic/ZERO n) = h4/numeral/iiSUC n
% Assm: h4/numeral/numeral__add_c17: !n m. h4/numeral/iiSUC (h4/arithmetic/_2B (h4/arithmetic/BIT2 n) (h4/arithmetic/BIT2 m)) = h4/arithmetic/BIT2 (h4/numeral/iiSUC (h4/arithmetic/_2B n m))
% Assm: h4/numeral/numeral__add_c8: !n m. h4/num/SUC (h4/arithmetic/_2B (h4/arithmetic/BIT1 n) (h4/arithmetic/BIT1 m)) = h4/arithmetic/BIT1 (h4/num/SUC (h4/arithmetic/_2B n m))
% Assm: h4/numeral/numeral__add_c16: !n m. h4/numeral/iiSUC (h4/arithmetic/_2B (h4/arithmetic/BIT2 n) (h4/arithmetic/BIT1 m)) = h4/arithmetic/BIT1 (h4/numeral/iiSUC (h4/arithmetic/_2B n m))
% Assm: h4/numeral/numeral__add_c7: !n. h4/num/SUC (h4/arithmetic/_2B n h4/arithmetic/ZERO) = h4/num/SUC n
% Assm: h4/numeral/numeral__add_c15: !n m. h4/numeral/iiSUC (h4/arithmetic/_2B (h4/arithmetic/BIT1 n) (h4/arithmetic/BIT2 m)) = h4/arithmetic/BIT1 (h4/numeral/iiSUC (h4/arithmetic/_2B n m))
% Assm: h4/numeral/numeral__add_c14: !n m. h4/numeral/iiSUC (h4/arithmetic/_2B (h4/arithmetic/BIT1 n) (h4/arithmetic/BIT1 m)) = h4/arithmetic/BIT2 (h4/num/SUC (h4/arithmetic/_2B n m))
% Assm: h4/numeral/numeral__add_c13: !n. h4/numeral/iiSUC (h4/arithmetic/_2B n h4/arithmetic/ZERO) = h4/numeral/iiSUC n
% Assm: h4/bool/OR__CLAUSES_c0: !t. T \/ t <=> T
% Assm: h4/bool/COND__CLAUSES_c0: !t2 t1. h4/bool/COND T t1 t2 = t1
% Assm: h4/bool/COND__CLAUSES_c1: !t2 t1. h4/bool/COND F t1 t2 = t2
% Assm: h4/numeral/iSUB__DEF_c0: !x b. h4/numeral/iSUB b h4/arithmetic/ZERO x = h4/arithmetic/ZERO
% Assm: h4/numeral/numeral__suc_c0: h4/num/SUC h4/arithmetic/ZERO = h4/arithmetic/BIT1 h4/arithmetic/ZERO
% Assm: h4/num/INDUCTION: !P. P h4/num/0 /\ (!n. P n ==> P (h4/num/SUC n)) ==> (!n. P n)
% Assm: h4/numeral/iBIT__cases0_c2: !zf n bf2 bf1. h4/numeral/iBIT__cases (h4/arithmetic/BIT2 n) zf bf1 bf2 = bf2 n
% Assm: h4/numeral/iBIT__cases0_c1: !zf n bf2 bf1. h4/numeral/iBIT__cases (h4/arithmetic/BIT1 n) zf bf1 bf2 = bf1 n
% Assm: h4/numeral/iBIT__cases0_c0: !zf bf2 bf1. h4/numeral/iBIT__cases h4/arithmetic/ZERO zf bf1 bf2 = zf
% Assm: h4/bool/ETA__AX: !t. (\x. t x) = t
% Assm: h4/numeral/iiSUC0: !n. h4/numeral/iiSUC n = h4/num/SUC (h4/num/SUC n)
% Assm: h4/bool/AND__CLAUSES_c4: !t. t /\ t <=> t
% Assm: h4/prim__rec/INV__SUC__EQ: !n m. h4/num/SUC m = h4/num/SUC n <=> m = n
% Assm: h4/numeral/numeral__distrib_c32: !n. h4/arithmetic/ODD (h4/arithmetic/NUMERAL n) <=> h4/arithmetic/ODD n
% Assm: h4/numeral/numeral__distrib_c34: ~h4/arithmetic/ODD h4/num/0
% Assm: h4/numeral/numeral__distrib_c33: !n. h4/arithmetic/EVEN (h4/arithmetic/NUMERAL n) <=> h4/arithmetic/EVEN n
% Assm: h4/numeral/numeral__distrib_c31: !n m. h4/arithmetic/_3E_3D (h4/arithmetic/NUMERAL n) (h4/arithmetic/NUMERAL m) <=> h4/arithmetic/_3C_3D m n
% Assm: h4/numeral/numeral__distrib_c30: !n. h4/arithmetic/_3E_3D h4/num/0 n <=> n = h4/num/0
% Assm: h4/numeral/numeral__distrib_c27: !n. h4/arithmetic/_3C_3D (h4/arithmetic/NUMERAL n) h4/num/0 <=> h4/arithmetic/_3C_3D n h4/arithmetic/ZERO
% Assm: h4/numeral/numeral__distrib_c28: !n m. h4/arithmetic/_3C_3D (h4/arithmetic/NUMERAL n) (h4/arithmetic/NUMERAL m) <=> h4/arithmetic/_3C_3D n m
% Assm: h4/numeral/numeral__distrib_c26: !n. h4/arithmetic/_3C_3D h4/num/0 n <=> T
% Assm: h4/numeral/numeral__distrib_c24: !n. h4/arithmetic/_3E (h4/arithmetic/NUMERAL n) h4/num/0 <=> h4/prim__rec/_3C h4/arithmetic/ZERO n
% Assm: h4/numeral/numeral__distrib_c35: h4/arithmetic/EVEN h4/num/0
% Assm: h4/numeral/numeral__distrib_c29: !n. h4/arithmetic/_3E_3D n h4/num/0 <=> T
% Assm: h4/numeral/numeral__distrib_c25: !n m. h4/arithmetic/_3E (h4/arithmetic/NUMERAL n) (h4/arithmetic/NUMERAL m) <=> h4/prim__rec/_3C m n
% Assm: h4/numeral/numeral__distrib_c22: !n m. h4/prim__rec/_3C (h4/arithmetic/NUMERAL n) (h4/arithmetic/NUMERAL m) <=> h4/prim__rec/_3C n m
% Assm: h4/numeral/numeral__distrib_c20: !n. h4/prim__rec/_3C n h4/num/0 <=> F
% Assm: h4/numeral/numeral__distrib_c21: !n. h4/prim__rec/_3C h4/num/0 (h4/arithmetic/NUMERAL n) <=> h4/prim__rec/_3C h4/arithmetic/ZERO n
% Assm: h4/numeral/numeral__distrib_c19: !n m. h4/arithmetic/NUMERAL n = h4/arithmetic/NUMERAL m <=> n = m
% Assm: h4/numeral/numeral__distrib_c17: !n. h4/arithmetic/NUMERAL n = h4/num/0 <=> n = h4/arithmetic/ZERO
% Assm: h4/numeral/numeral__distrib_c16: !n. h4/prim__rec/PRE (h4/arithmetic/NUMERAL n) = h4/arithmetic/NUMERAL (h4/prim__rec/PRE n)
% Assm: h4/numeral/numeral__distrib_c14: !n. h4/num/SUC (h4/arithmetic/NUMERAL n) = h4/arithmetic/NUMERAL (h4/num/SUC n)
% Assm: h4/numeral/numeral__distrib_c18: !n. h4/num/0 = h4/arithmetic/NUMERAL n <=> n = h4/arithmetic/ZERO
% Assm: h4/numeral/numeral__distrib_c15: h4/prim__rec/PRE h4/num/0 = h4/num/0
% Assm: h4/numeral/numeral__distrib_c13: h4/num/SUC h4/num/0 = h4/arithmetic/NUMERAL (h4/arithmetic/BIT1 h4/arithmetic/ZERO)
% Assm: h4/numeral/numeral__distrib_c9: !n. h4/arithmetic/EXP h4/num/0 (h4/arithmetic/NUMERAL (h4/arithmetic/BIT1 n)) = h4/num/0
% Assm: h4/numeral/numeral__distrib_c10: !n. h4/arithmetic/EXP h4/num/0 (h4/arithmetic/NUMERAL (h4/arithmetic/BIT2 n)) = h4/num/0
% Assm: h4/numeral/numeral__distrib_c8: !n m. h4/arithmetic/_2D (h4/arithmetic/NUMERAL n) (h4/arithmetic/NUMERAL m) = h4/arithmetic/NUMERAL (h4/arithmetic/_2D n m)
% Assm: h4/numeral/numeral__distrib_c6: !n. h4/arithmetic/_2D h4/num/0 n = h4/num/0
% Assm: h4/numeral/numeral__distrib_c12: !n m. h4/arithmetic/EXP (h4/arithmetic/NUMERAL n) (h4/arithmetic/NUMERAL m) = h4/arithmetic/NUMERAL (h4/arithmetic/EXP n m)
% Assm: h4/numeral/numeral__distrib_c11: !n. h4/arithmetic/EXP n h4/num/0 = h4/arithmetic/NUMERAL (h4/arithmetic/BIT1 h4/arithmetic/ZERO)
% Assm: h4/numeral/numeral__distrib_c7: !n. h4/arithmetic/_2D n h4/num/0 = n
% Assm: h4/numeral/numeral__distrib_c4: !n. h4/arithmetic/_2A n h4/num/0 = h4/num/0
% Assm: h4/numeral/numeral__distrib_c3: !n. h4/arithmetic/_2A h4/num/0 n = h4/num/0
% Assm: h4/numeral/numeral__distrib_c23: !n. h4/arithmetic/_3E h4/num/0 n <=> F
% Assm: h4/numeral/numeral__distrib_c5: !n m. h4/arithmetic/_2A (h4/arithmetic/NUMERAL n) (h4/arithmetic/NUMERAL m) = h4/arithmetic/NUMERAL (h4/arithmetic/_2A n m)
% Assm: h4/numeral/numeral__distrib_c1: !n. h4/arithmetic/_2B n h4/num/0 = n
% Assm: h4/numeral/numeral__distrib_c0: !n. h4/arithmetic/_2B h4/num/0 n = n
% Assm: h4/bool/IMP__CLAUSES_c4: !t. t ==> F <=> ~t
% Assm: h4/bool/NOT__CLAUSES_c0: !t. ~ ~t <=> t
% Assm: h4/bool/NOT__CLAUSES_c1: ~T <=> F
% Assm: h4/bool/NOT__CLAUSES_c2: ~F <=> T
% Assm: h4/bool/EQ__SYM__EQ: !y x. x = y <=> y = x
% Assm: h4/bool/EQ__CLAUSES_c0: !t. (T <=> t) <=> t
% Assm: h4/bool/EQ__CLAUSES_c2: !t. (F <=> t) <=> ~t
% Assm: h4/bool/EQ__CLAUSES_c3: !t. (t <=> F) <=> ~t
% Assm: h4/bool/NOT__FORALL__THM: !P. ~(!x. P x) <=> (?x. ~P x)
% Assm: h4/bool/EXISTS__OR__THM: !Q P. (?x. P x \/ Q x) <=> (?x. P x) \/ (?x. Q x)
% Assm: h4/bool/IMP__F: !t. (t ==> F) ==> ~t
% Assm: h4/arithmetic/SUB__0_c1: !m. h4/arithmetic/_2D m h4/num/0 = m
% Assm: h4/bool/F__IMP: !t. ~t ==> t ==> F
% Assm: h4/arithmetic/SUB__0_c0: !m. h4/arithmetic/_2D h4/num/0 m = h4/num/0
% Assm: h4/arithmetic/LESS__0__CASES: !m. h4/num/0 = m \/ h4/prim__rec/_3C h4/num/0 m
% Assm: h4/arithmetic/EVEN0_c0: h4/arithmetic/EVEN h4/num/0 <=> T
% Goal: !n m. h4/arithmetic/_2A (h4/arithmetic/BIT1 n) m = h4/numeral/iZ (h4/arithmetic/_2B (h4/numeral/iDUB (h4/arithmetic/_2A n m)) m)
%   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_numerals_numeralu_u_multu_c2]: !n m. happ (happ h4/arithmetic/_2A (h4/arithmetic/BIT1 n)) m = h4/numeral/iZ (h4/arithmetic/_2B (h4/numeral/iDUB (happ (happ h4/arithmetic/_2A n) m)) m)
% Assm [h4s_arithmetics_ALTu_u_ZERO]: h4/arithmetic/ZERO = h4/num/0
% Assm [h4s_arithmetics_BIT10]: !n. h4/arithmetic/BIT1 n = h4/arithmetic/_2B n (h4/arithmetic/_2B n (h4/num/SUC h4/num/0))
% Assm [h4s_arithmetics_ADDu_u_CLAUSESu_c3]: !n m. h4/arithmetic/_2B m (h4/num/SUC n) = h4/num/SUC (h4/arithmetic/_2B m n)
% Assm [h4s_arithmetics_BIT20]: !n. h4/arithmetic/BIT2 n = h4/arithmetic/_2B n (h4/arithmetic/_2B n (h4/num/SUC (h4/num/SUC h4/num/0)))
% Assm [h4s_bools_TRUTH]: T
% Assm [h4s_arithmetics_ADDu_u_CLAUSESu_c1]: !m. h4/arithmetic/_2B m h4/num/0 = m
% Assm [h4s_bools_REFLu_u_CLAUSE]: !x. x = x <=> T
% Assm [h4s_bools_ANDu_u_CLAUSESu_c0]: !t. T /\ t <=> t
% Assm [h4s_numerals_iDUB0]: !x. h4/numeral/iDUB x = h4/arithmetic/_2B x x
% Assm [h4s_numerals_iZ0]: !x. h4/numeral/iZ x = x
% Assm [h4s_bools_EQu_u_CLAUSESu_c1]: !t. (t <=> T) <=> t
% Assm [h4s_arithmetics_ADDu_u_SYM]: !n m. h4/arithmetic/_2B m n = h4/arithmetic/_2B n m
% Assm [h4s_arithmetics_ADDu_u_ASSOC]: !p n m. h4/arithmetic/_2B m (h4/arithmetic/_2B n p) = h4/arithmetic/_2B (h4/arithmetic/_2B m n) p
% Assm [h4s_arithmetics_MULTu_u_CLAUSESu_c1]: !m. happ (happ h4/arithmetic/_2A m) h4/num/0 = h4/num/0
% Assm [h4s_arithmetics_MULTu_u_CLAUSESu_c0]: !m. happ (happ h4/arithmetic/_2A h4/num/0) m = h4/num/0
% Assm [h4s_arithmetics_RIGHTu_u_ADDu_u_DISTRIB]: !p n m. happ (happ h4/arithmetic/_2A (h4/arithmetic/_2B m n)) p = h4/arithmetic/_2B (happ (happ h4/arithmetic/_2A m) p) (happ (happ h4/arithmetic/_2A n) p)
% Assm [h4s_arithmetics_MULTu_u_CLAUSESu_c4]: !n m. happ (happ h4/arithmetic/_2A (h4/num/SUC m)) n = h4/arithmetic/_2B (happ (happ h4/arithmetic/_2A m) n) n
% Assm [h4s_numerals_bitu_u_initiality]: !zf b2f b1f. ?f. happ f h4/arithmetic/ZERO = zf /\ (!n. happ f (h4/arithmetic/BIT1 n) = happ (happ b1f n) (happ f n)) /\ (!n. happ f (h4/arithmetic/BIT2 n) = happ (happ b2f n) (happ f n))
% Assm [h4s_numerals_numeralu_u_multu_c3]: !n m. happ (happ h4/arithmetic/_2A (h4/arithmetic/BIT2 n)) m = h4/numeral/iDUB (h4/numeral/iZ (h4/arithmetic/_2B (happ (happ h4/arithmetic/_2A n) m) m))
% Assm [h4s_arithmetics_ADDu_u_CLAUSESu_c2]: !n m. h4/arithmetic/_2B (h4/num/SUC m) n = h4/num/SUC (h4/arithmetic/_2B m n)
% Assm [h4s_numerals_numeralu_u_multu_c0]: !n. happ (happ h4/arithmetic/_2A h4/arithmetic/ZERO) n = h4/arithmetic/ZERO
% Assm [h4s_numerals_internalu_u_multu_u_def]: h4/numeral/internal__mult = h4/arithmetic/_2A
% Assm [h4s_numerals_numeralu_u_multu_c1]: !n. happ (happ h4/arithmetic/_2A n) h4/arithmetic/ZERO = h4/arithmetic/ZERO
% Assm [h4s_numerals_internalu_u_multu_u_characterisationu_c2]: !n m. happ (happ h4/numeral/internal__mult (h4/arithmetic/BIT1 n)) m = h4/numeral/iZ (h4/arithmetic/_2B (h4/numeral/iDUB (happ (happ h4/numeral/internal__mult n) m)) m)
% Assm [h4s_numerals_internalu_u_multu_u_characterisationu_c3]: !n m. happ (happ h4/numeral/internal__mult (h4/arithmetic/BIT2 n)) m = h4/numeral/iDUB (h4/numeral/iZ (h4/arithmetic/_2B (happ (happ h4/numeral/internal__mult n) m) m))
% Assm [h4s_numerals_iSUBu_u_DEFu_c1]: !_2. (!n m. happ (happ _2 n) m = h4/numeral/iDUB (h4/numeral/iSUB F n m)) ==> (!_1. (!n m. happ (happ _1 n) m = h4/arithmetic/BIT1 (h4/numeral/iSUB F n m)) ==> (!_0. (!n m. happ (happ _0 n) m = h4/numeral/iDUB (h4/numeral/iSUB T n m)) ==> (!x n b. h4/numeral/iSUB b (h4/arithmetic/BIT1 n) x = h4/bool/COND b (h4/numeral/iBIT__cases x (h4/arithmetic/BIT1 n) (happ _0 n) (happ _1 n)) (h4/numeral/iBIT__cases x (h4/numeral/iDUB n) (happ _1 n) (happ _2 n)))))
% Assm [h4s_numerals_iSUBu_u_DEFu_c2]: !_2. (!n m. happ (happ _2 n) m = h4/arithmetic/BIT1 (h4/numeral/iSUB F n m)) ==> (!_1. (!n m. happ (happ _1 n) m = h4/numeral/iDUB (h4/numeral/iSUB T n m)) ==> (!_0. (!n m. happ (happ _0 n) m = h4/arithmetic/BIT1 (h4/numeral/iSUB T n m)) ==> (!x n b. h4/numeral/iSUB b (h4/arithmetic/BIT2 n) x = h4/bool/COND b (h4/numeral/iBIT__cases x (h4/arithmetic/BIT2 n) (happ _0 n) (happ _1 n)) (h4/numeral/iBIT__cases x (h4/arithmetic/BIT1 n) (happ _1 n) (happ _2 n)))))
% Assm [h4s_numerals_numeralu_u_addu_c2]: !n m. h4/numeral/iZ (h4/arithmetic/_2B (h4/arithmetic/BIT1 n) (h4/arithmetic/BIT1 m)) = h4/arithmetic/BIT2 (h4/numeral/iZ (h4/arithmetic/_2B n m))
% Assm [h4s_numerals_numeralu_u_addu_c3]: !n m. h4/numeral/iZ (h4/arithmetic/_2B (h4/arithmetic/BIT1 n) (h4/arithmetic/BIT2 m)) = h4/arithmetic/BIT1 (h4/num/SUC (h4/arithmetic/_2B n m))
% Assm [h4s_numerals_numeralu_u_addu_c4]: !n m. h4/numeral/iZ (h4/arithmetic/_2B (h4/arithmetic/BIT2 n) (h4/arithmetic/BIT1 m)) = h4/arithmetic/BIT1 (h4/num/SUC (h4/arithmetic/_2B n m))
% Assm [h4s_numerals_numeralu_u_addu_c5]: !n m. h4/numeral/iZ (h4/arithmetic/_2B (h4/arithmetic/BIT2 n) (h4/arithmetic/BIT2 m)) = h4/arithmetic/BIT2 (h4/num/SUC (h4/arithmetic/_2B n m))
% Assm [h4s_numerals_numeralu_u_addu_c0]: !n. h4/numeral/iZ (h4/arithmetic/_2B h4/arithmetic/ZERO n) = n
% Assm [h4s_bools_FORALLu_u_SIMP]: !t. (!x. t) <=> t
% Assm [h4s_arithmetics_ADDu_u_CLAUSESu_c0]: !m. h4/arithmetic/_2B h4/num/0 m = m
% Assm [h4s_numerals_iDUBu_u_removalu_c0]: !n. h4/numeral/iDUB (h4/arithmetic/BIT1 n) = h4/arithmetic/BIT2 (h4/numeral/iDUB n)
% Assm [h4s_numerals_iDUBu_u_removalu_c1]: !n. h4/numeral/iDUB (h4/arithmetic/BIT2 n) = h4/arithmetic/BIT2 (h4/arithmetic/BIT1 n)
% Assm [h4s_numerals_iSUBu_u_THMu_c6]: !n m. h4/numeral/iSUB F (h4/arithmetic/BIT1 n) (h4/arithmetic/BIT2 m) = h4/numeral/iDUB (h4/numeral/iSUB F n m)
% Assm [h4s_numerals_iSUBu_u_THMu_c2]: !n. h4/numeral/iSUB F (h4/arithmetic/BIT1 n) h4/arithmetic/ZERO = h4/numeral/iDUB n
% Assm [h4s_numerals_iSUBu_u_THMu_c9]: !n m. h4/numeral/iSUB F (h4/arithmetic/BIT2 n) (h4/arithmetic/BIT1 m) = h4/numeral/iDUB (h4/numeral/iSUB T n m)
% Assm [h4s_numerals_iSUBu_u_THMu_c3]: !n m. h4/numeral/iSUB T (h4/arithmetic/BIT1 n) (h4/arithmetic/BIT1 m) = h4/numeral/iDUB (h4/numeral/iSUB T n m)
% Assm [h4s_numerals_iSUBu_u_THMu_c10]: !n m. h4/numeral/iSUB T (h4/arithmetic/BIT2 n) (h4/arithmetic/BIT2 m) = h4/numeral/iDUB (h4/numeral/iSUB T n m)
% Assm [h4s_numerals_iDUBu_u_removalu_c2]: h4/numeral/iDUB h4/arithmetic/ZERO = h4/arithmetic/ZERO
% Assm [h4s_numRings_numu_u_rewritesu_c54]: !n m. h4/numeral/iZ (h4/arithmetic/_2B (h4/arithmetic/BIT2 n) (h4/arithmetic/BIT1 m)) = h4/arithmetic/BIT1 (h4/num/SUC (h4/arithmetic/_2B n m))
% Assm [h4s_numRings_numu_u_rewritesu_c53]: !n m. h4/numeral/iZ (h4/arithmetic/_2B (h4/arithmetic/BIT1 n) (h4/arithmetic/BIT2 m)) = h4/arithmetic/BIT1 (h4/num/SUC (h4/arithmetic/_2B n m))
% Assm [h4s_numRings_numu_u_rewritesu_c52]: !n m. h4/numeral/iZ (h4/arithmetic/_2B (h4/arithmetic/BIT1 n) (h4/arithmetic/BIT1 m)) = h4/arithmetic/BIT2 (h4/numeral/iZ (h4/arithmetic/_2B n m))
% Assm [h4s_numerals_numeralu_u_distribu_c2]: !n m. h4/arithmetic/_2B (h4/arithmetic/NUMERAL n) (h4/arithmetic/NUMERAL m) = h4/arithmetic/NUMERAL (h4/numeral/iZ (h4/arithmetic/_2B n m))
% Assm [h4s_numRings_numu_u_rewritesu_c2]: !n m. h4/arithmetic/_2B (h4/arithmetic/NUMERAL n) (h4/arithmetic/NUMERAL m) = h4/arithmetic/NUMERAL (h4/numeral/iZ (h4/arithmetic/_2B n m))
% Assm [h4s_numRings_numu_u_rewritesu_c55]: !n m. h4/numeral/iZ (h4/arithmetic/_2B (h4/arithmetic/BIT2 n) (h4/arithmetic/BIT2 m)) = h4/arithmetic/BIT2 (h4/num/SUC (h4/arithmetic/_2B n m))
% Assm [h4s_numRings_numu_u_rewritesu_c50]: !n. h4/numeral/iZ (h4/arithmetic/_2B h4/arithmetic/ZERO n) = n
% Assm [h4s_numRings_numu_u_rewritesu_c51]: !n. h4/numeral/iZ (h4/arithmetic/_2B n h4/arithmetic/ZERO) = n
% Assm [h4s_numerals_numeralu_u_addu_c6]: !n. h4/num/SUC (h4/arithmetic/_2B h4/arithmetic/ZERO n) = h4/num/SUC n
% Assm [h4s_numerals_numeralu_u_addu_c9]: !n m. h4/num/SUC (h4/arithmetic/_2B (h4/arithmetic/BIT1 n) (h4/arithmetic/BIT2 m)) = h4/arithmetic/BIT2 (h4/num/SUC (h4/arithmetic/_2B n m))
% Assm [h4s_numerals_numeralu_u_addu_c10]: !n m. h4/num/SUC (h4/arithmetic/_2B (h4/arithmetic/BIT2 n) (h4/arithmetic/BIT1 m)) = h4/arithmetic/BIT2 (h4/num/SUC (h4/arithmetic/_2B n m))
% Assm [h4s_numerals_numeralu_u_addu_c1]: !n. h4/numeral/iZ (h4/arithmetic/_2B n h4/arithmetic/ZERO) = n
% Assm [h4s_numerals_numeralu_u_addu_c11]: !n m. h4/num/SUC (h4/arithmetic/_2B (h4/arithmetic/BIT2 n) (h4/arithmetic/BIT2 m)) = h4/arithmetic/BIT1 (h4/numeral/iiSUC (h4/arithmetic/_2B n m))
% Assm [h4s_numerals_numeralu_u_addu_c12]: !n. h4/numeral/iiSUC (h4/arithmetic/_2B h4/arithmetic/ZERO n) = h4/numeral/iiSUC n
% Assm [h4s_numerals_numeralu_u_addu_c17]: !n m. h4/numeral/iiSUC (h4/arithmetic/_2B (h4/arithmetic/BIT2 n) (h4/arithmetic/BIT2 m)) = h4/arithmetic/BIT2 (h4/numeral/iiSUC (h4/arithmetic/_2B n m))
% Assm [h4s_numerals_numeralu_u_addu_c8]: !n m. h4/num/SUC (h4/arithmetic/_2B (h4/arithmetic/BIT1 n) (h4/arithmetic/BIT1 m)) = h4/arithmetic/BIT1 (h4/num/SUC (h4/arithmetic/_2B n m))
% Assm [h4s_numerals_numeralu_u_addu_c16]: !n m. h4/numeral/iiSUC (h4/arithmetic/_2B (h4/arithmetic/BIT2 n) (h4/arithmetic/BIT1 m)) = h4/arithmetic/BIT1 (h4/numeral/iiSUC (h4/arithmetic/_2B n m))
% Assm [h4s_numerals_numeralu_u_addu_c7]: !n. h4/num/SUC (h4/arithmetic/_2B n h4/arithmetic/ZERO) = h4/num/SUC n
% Assm [h4s_numerals_numeralu_u_addu_c15]: !n m. h4/numeral/iiSUC (h4/arithmetic/_2B (h4/arithmetic/BIT1 n) (h4/arithmetic/BIT2 m)) = h4/arithmetic/BIT1 (h4/numeral/iiSUC (h4/arithmetic/_2B n m))
% Assm [h4s_numerals_numeralu_u_addu_c14]: !n m. h4/numeral/iiSUC (h4/arithmetic/_2B (h4/arithmetic/BIT1 n) (h4/arithmetic/BIT1 m)) = h4/arithmetic/BIT2 (h4/num/SUC (h4/arithmetic/_2B n m))
% Assm [h4s_numerals_numeralu_u_addu_c13]: !n. h4/numeral/iiSUC (h4/arithmetic/_2B n h4/arithmetic/ZERO) = h4/numeral/iiSUC n
% Assm [h4s_bools_ORu_u_CLAUSESu_c0]: !t. T \/ t <=> T
% Assm [h4s_bools_CONDu_u_CLAUSESu_c0]: !t2 t1. h4/bool/COND T t1 t2 = t1
% Assm [h4s_bools_CONDu_u_CLAUSESu_c1]: !t2 t1. h4/bool/COND F t1 t2 = t2
% Assm [h4s_numerals_iSUBu_u_DEFu_c0]: !x b. h4/numeral/iSUB b h4/arithmetic/ZERO x = h4/arithmetic/ZERO
% Assm [h4s_numerals_numeralu_u_sucu_c0]: h4/num/SUC h4/arithmetic/ZERO = h4/arithmetic/BIT1 h4/arithmetic/ZERO
% Assm [h4s_nums_INDUCTION]: !P. happ P h4/num/0 /\ (!n. happ P n ==> happ P (h4/num/SUC n)) ==> (!n. happ P n)
% Assm [h4s_numerals_iBITu_u_cases0u_c2]: !zf n bf2 bf1. h4/numeral/iBIT__cases (h4/arithmetic/BIT2 n) zf bf1 bf2 = happ bf2 n
% Assm [h4s_numerals_iBITu_u_cases0u_c1]: !zf n bf2 bf1. h4/numeral/iBIT__cases (h4/arithmetic/BIT1 n) zf bf1 bf2 = happ bf1 n
% Assm [h4s_numerals_iBITu_u_cases0u_c0]: !zf bf2 bf1. h4/numeral/iBIT__cases h4/arithmetic/ZERO zf bf1 bf2 = zf
% Assm [h4s_bools_ETAu_u_AX]: !t x. happ t x = happ t x
% Assm [h4s_numerals_iiSUC0]: !n. h4/numeral/iiSUC n = h4/num/SUC (h4/num/SUC n)
% Assm [h4s_bools_ANDu_u_CLAUSESu_c4]: !t. t /\ t <=> t
% Assm [h4s_primu_u_recs_INVu_u_SUCu_u_EQ]: !n m. h4/num/SUC m = h4/num/SUC n <=> m = n
% Assm [h4s_numerals_numeralu_u_distribu_c32]: !n. h4/arithmetic/ODD (h4/arithmetic/NUMERAL n) <=> h4/arithmetic/ODD n
% Assm [h4s_numerals_numeralu_u_distribu_c34]: ~h4/arithmetic/ODD h4/num/0
% Assm [h4s_numerals_numeralu_u_distribu_c33]: !n. h4/arithmetic/EVEN (h4/arithmetic/NUMERAL n) <=> h4/arithmetic/EVEN n
% Assm [h4s_numerals_numeralu_u_distribu_c31]: !n m. h4/arithmetic/_3E_3D (h4/arithmetic/NUMERAL n) (h4/arithmetic/NUMERAL m) <=> h4/arithmetic/_3C_3D m n
% Assm [h4s_numerals_numeralu_u_distribu_c30]: !n. h4/arithmetic/_3E_3D h4/num/0 n <=> n = h4/num/0
% Assm [h4s_numerals_numeralu_u_distribu_c27]: !n. h4/arithmetic/_3C_3D (h4/arithmetic/NUMERAL n) h4/num/0 <=> h4/arithmetic/_3C_3D n h4/arithmetic/ZERO
% Assm [h4s_numerals_numeralu_u_distribu_c28]: !n m. h4/arithmetic/_3C_3D (h4/arithmetic/NUMERAL n) (h4/arithmetic/NUMERAL m) <=> h4/arithmetic/_3C_3D n m
% Assm [h4s_numerals_numeralu_u_distribu_c26]: !n. h4/arithmetic/_3C_3D h4/num/0 n <=> T
% Assm [h4s_numerals_numeralu_u_distribu_c24]: !n. h4/arithmetic/_3E (h4/arithmetic/NUMERAL n) h4/num/0 <=> h4/prim__rec/_3C h4/arithmetic/ZERO n
% Assm [h4s_numerals_numeralu_u_distribu_c35]: h4/arithmetic/EVEN h4/num/0
% Assm [h4s_numerals_numeralu_u_distribu_c29]: !n. h4/arithmetic/_3E_3D n h4/num/0 <=> T
% Assm [h4s_numerals_numeralu_u_distribu_c25]: !n m. h4/arithmetic/_3E (h4/arithmetic/NUMERAL n) (h4/arithmetic/NUMERAL m) <=> h4/prim__rec/_3C m n
% Assm [h4s_numerals_numeralu_u_distribu_c22]: !n m. h4/prim__rec/_3C (h4/arithmetic/NUMERAL n) (h4/arithmetic/NUMERAL m) <=> h4/prim__rec/_3C n m
% Assm [h4s_numerals_numeralu_u_distribu_c20]: !n. h4/prim__rec/_3C n h4/num/0 <=> F
% Assm [h4s_numerals_numeralu_u_distribu_c21]: !n. h4/prim__rec/_3C h4/num/0 (h4/arithmetic/NUMERAL n) <=> h4/prim__rec/_3C h4/arithmetic/ZERO n
% Assm [h4s_numerals_numeralu_u_distribu_c19]: !n m. h4/arithmetic/NUMERAL n = h4/arithmetic/NUMERAL m <=> n = m
% Assm [h4s_numerals_numeralu_u_distribu_c17]: !n. h4/arithmetic/NUMERAL n = h4/num/0 <=> n = h4/arithmetic/ZERO
% Assm [h4s_numerals_numeralu_u_distribu_c16]: !n. h4/prim__rec/PRE (h4/arithmetic/NUMERAL n) = h4/arithmetic/NUMERAL (h4/prim__rec/PRE n)
% Assm [h4s_numerals_numeralu_u_distribu_c14]: !n. h4/num/SUC (h4/arithmetic/NUMERAL n) = h4/arithmetic/NUMERAL (h4/num/SUC n)
% Assm [h4s_numerals_numeralu_u_distribu_c18]: !n. h4/num/0 = h4/arithmetic/NUMERAL n <=> n = h4/arithmetic/ZERO
% Assm [h4s_numerals_numeralu_u_distribu_c15]: h4/prim__rec/PRE h4/num/0 = h4/num/0
% Assm [h4s_numerals_numeralu_u_distribu_c13]: h4/num/SUC h4/num/0 = h4/arithmetic/NUMERAL (h4/arithmetic/BIT1 h4/arithmetic/ZERO)
% Assm [h4s_numerals_numeralu_u_distribu_c9]: !n. h4/arithmetic/EXP h4/num/0 (h4/arithmetic/NUMERAL (h4/arithmetic/BIT1 n)) = h4/num/0
% Assm [h4s_numerals_numeralu_u_distribu_c10]: !n. h4/arithmetic/EXP h4/num/0 (h4/arithmetic/NUMERAL (h4/arithmetic/BIT2 n)) = h4/num/0
% Assm [h4s_numerals_numeralu_u_distribu_c8]: !n m. h4/arithmetic/_2D (h4/arithmetic/NUMERAL n) (h4/arithmetic/NUMERAL m) = h4/arithmetic/NUMERAL (h4/arithmetic/_2D n m)
% Assm [h4s_numerals_numeralu_u_distribu_c6]: !n. h4/arithmetic/_2D h4/num/0 n = h4/num/0
% Assm [h4s_numerals_numeralu_u_distribu_c12]: !n m. h4/arithmetic/EXP (h4/arithmetic/NUMERAL n) (h4/arithmetic/NUMERAL m) = h4/arithmetic/NUMERAL (h4/arithmetic/EXP n m)
% Assm [h4s_numerals_numeralu_u_distribu_c11]: !n. h4/arithmetic/EXP n h4/num/0 = h4/arithmetic/NUMERAL (h4/arithmetic/BIT1 h4/arithmetic/ZERO)
% Assm [h4s_numerals_numeralu_u_distribu_c7]: !n. h4/arithmetic/_2D n h4/num/0 = n
% Assm [h4s_numerals_numeralu_u_distribu_c4]: !n. happ (happ h4/arithmetic/_2A n) h4/num/0 = h4/num/0
% Assm [h4s_numerals_numeralu_u_distribu_c3]: !n. happ (happ h4/arithmetic/_2A h4/num/0) n = h4/num/0
% Assm [h4s_numerals_numeralu_u_distribu_c23]: !n. h4/arithmetic/_3E h4/num/0 n <=> F
% Assm [h4s_numerals_numeralu_u_distribu_c5]: !n m. happ (happ h4/arithmetic/_2A (h4/arithmetic/NUMERAL n)) (h4/arithmetic/NUMERAL m) = h4/arithmetic/NUMERAL (happ (happ h4/arithmetic/_2A n) m)
% Assm [h4s_numerals_numeralu_u_distribu_c1]: !n. h4/arithmetic/_2B n h4/num/0 = n
% Assm [h4s_numerals_numeralu_u_distribu_c0]: !n. h4/arithmetic/_2B h4/num/0 n = n
% Assm [h4s_bools_IMPu_u_CLAUSESu_c4]: !t. t ==> F <=> ~t
% Assm [h4s_bools_NOTu_u_CLAUSESu_c0]: !t. ~ ~t <=> t
% Assm [h4s_bools_NOTu_u_CLAUSESu_c1]: ~T <=> F
% Assm [h4s_bools_NOTu_u_CLAUSESu_c2]: ~F <=> T
% Assm [h4s_bools_EQu_u_SYMu_u_EQ]: !y x. x = y <=> y = x
% Assm [h4s_bools_EQu_u_CLAUSESu_c0]: !t. (T <=> t) <=> t
% Assm [h4s_bools_EQu_u_CLAUSESu_c2]: !t. (F <=> t) <=> ~t
% Assm [h4s_bools_EQu_u_CLAUSESu_c3]: !t. (t <=> F) <=> ~t
% Assm [h4s_bools_NOTu_u_FORALLu_u_THM]: !P. ~(!x. happ P x) <=> (?x. ~happ P x)
% Assm [h4s_bools_EXISTSu_u_ORu_u_THM]: !Q P. (?x. happ P x \/ happ Q x) <=> (?x. happ P x) \/ (?x. happ Q x)
% Assm [h4s_bools_IMPu_u_F]: !t. (t ==> F) ==> ~t
% Assm [h4s_arithmetics_SUBu_u_0u_c1]: !m. h4/arithmetic/_2D m h4/num/0 = m
% Assm [h4s_bools_Fu_u_IMP]: !t. ~t ==> t ==> F
% Assm [h4s_arithmetics_SUBu_u_0u_c0]: !m. h4/arithmetic/_2D h4/num/0 m = h4/num/0
% Assm [h4s_arithmetics_LESSu_u_0u_u_CASES]: !m. h4/num/0 = m \/ h4/prim__rec/_3C h4/num/0 m
% Assm [h4s_arithmetics_EVEN0u_c0]: h4/arithmetic/EVEN h4/num/0 <=> T
% Goal: !n m. happ (happ h4/arithmetic/_2A (h4/arithmetic/BIT1 n)) m = h4/numeral/iZ (h4/arithmetic/_2B (h4/numeral/iDUB (happ (happ h4/arithmetic/_2A n) m)) m)
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_Q1375410,TV_Q1375406]: ![V_f, V_g]: (![V_x]: s(TV_Q1375406,happ(s(t_fun(TV_Q1375410,TV_Q1375406),V_f),s(TV_Q1375410,V_x))) = s(TV_Q1375406,happ(s(t_fun(TV_Q1375410,TV_Q1375406),V_g),s(TV_Q1375410,V_x))) => s(t_fun(TV_Q1375410,TV_Q1375406),V_f) = s(t_fun(TV_Q1375410,TV_Q1375406),V_g))).
fof(ah4s_numerals_numeralu_u_multu_c2, axiom, ![V_n, V_m]: s(t_h4s_nums_num,happ(s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),h4s_arithmetics_u_2a),s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,V_n))))),s(t_h4s_nums_num,V_m))) = s(t_h4s_nums_num,h4s_numerals_iz(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,h4s_numerals_idub(s(t_h4s_nums_num,happ(s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),h4s_arithmetics_u_2a),s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,V_m))))),s(t_h4s_nums_num,V_m)))))).
fof(ah4s_arithmetics_ALTu_u_ZERO, axiom, s(t_h4s_nums_num,h4s_arithmetics_zero) = s(t_h4s_nums_num,h4s_nums_0)).
fof(ah4s_arithmetics_BIT10, axiom, ![V_n]: s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,V_n))) = s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,h4s_nums_suc(s(t_h4s_nums_num,h4s_nums_0)))))))).
fof(ah4s_arithmetics_ADDu_u_CLAUSESu_c3, axiom, ![V_n, V_m]: s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_m),s(t_h4s_nums_num,h4s_nums_suc(s(t_h4s_nums_num,V_n))))) = s(t_h4s_nums_num,h4s_nums_suc(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_m),s(t_h4s_nums_num,V_n)))))).
fof(ah4s_arithmetics_BIT20, axiom, ![V_n]: s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,V_n))) = s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,h4s_nums_suc(s(t_h4s_nums_num,h4s_nums_suc(s(t_h4s_nums_num,h4s_nums_0)))))))))).
fof(ah4s_bools_TRUTH, axiom, p(s(t_bool,t))).
fof(ah4s_arithmetics_ADDu_u_CLAUSESu_c1, axiom, ![V_m]: s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_m),s(t_h4s_nums_num,h4s_nums_0))) = s(t_h4s_nums_num,V_m)).
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_bools_ANDu_u_CLAUSESu_c0, axiom, ![V_t]: ((p(s(t_bool,t)) & p(s(t_bool,V_t))) <=> p(s(t_bool,V_t)))).
fof(ah4s_numerals_iDUB0, axiom, ![V_x]: s(t_h4s_nums_num,h4s_numerals_idub(s(t_h4s_nums_num,V_x))) = s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_x),s(t_h4s_nums_num,V_x)))).
fof(ah4s_numerals_iZ0, axiom, ![V_x]: s(t_h4s_nums_num,h4s_numerals_iz(s(t_h4s_nums_num,V_x))) = s(t_h4s_nums_num,V_x)).
fof(ah4s_bools_EQu_u_CLAUSESu_c1, axiom, ![V_t]: (s(t_bool,V_t) = s(t_bool,t) <=> p(s(t_bool,V_t)))).
fof(ah4s_arithmetics_ADDu_u_SYM, axiom, ![V_n, V_m]: s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_m),s(t_h4s_nums_num,V_n))) = s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,V_m)))).
fof(ah4s_arithmetics_ADDu_u_ASSOC, axiom, ![V_p, V_n, V_m]: s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_m),s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,V_p))))) = s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_m),s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,V_p)))).
fof(ah4s_arithmetics_MULTu_u_CLAUSESu_c1, axiom, ![V_m]: s(t_h4s_nums_num,happ(s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),h4s_arithmetics_u_2a),s(t_h4s_nums_num,V_m))),s(t_h4s_nums_num,h4s_nums_0))) = s(t_h4s_nums_num,h4s_nums_0)).
fof(ah4s_arithmetics_MULTu_u_CLAUSESu_c0, axiom, ![V_m]: s(t_h4s_nums_num,happ(s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),h4s_arithmetics_u_2a),s(t_h4s_nums_num,h4s_nums_0))),s(t_h4s_nums_num,V_m))) = s(t_h4s_nums_num,h4s_nums_0)).
fof(ah4s_arithmetics_RIGHTu_u_ADDu_u_DISTRIB, axiom, ![V_p, V_n, V_m]: s(t_h4s_nums_num,happ(s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),h4s_arithmetics_u_2a),s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_m),s(t_h4s_nums_num,V_n))))),s(t_h4s_nums_num,V_p))) = s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,happ(s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),h4s_arithmetics_u_2a),s(t_h4s_nums_num,V_m))),s(t_h4s_nums_num,V_p))),s(t_h4s_nums_num,happ(s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),h4s_arithmetics_u_2a),s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,V_p)))))).
fof(ah4s_arithmetics_MULTu_u_CLAUSESu_c4, axiom, ![V_n, V_m]: s(t_h4s_nums_num,happ(s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),h4s_arithmetics_u_2a),s(t_h4s_nums_num,h4s_nums_suc(s(t_h4s_nums_num,V_m))))),s(t_h4s_nums_num,V_n))) = s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,happ(s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),h4s_arithmetics_u_2a),s(t_h4s_nums_num,V_m))),s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,V_n)))).
fof(ah4s_numerals_bitu_u_initiality, axiom, ![TV_u_27a]: ![V_zf, V_b2f, V_b1f]: ?[V_f]: (s(TV_u_27a,happ(s(t_fun(t_h4s_nums_num,TV_u_27a),V_f),s(t_h4s_nums_num,h4s_arithmetics_zero))) = s(TV_u_27a,V_zf) & (![V_n]: s(TV_u_27a,happ(s(t_fun(t_h4s_nums_num,TV_u_27a),V_f),s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,V_n))))) = s(TV_u_27a,happ(s(t_fun(TV_u_27a,TV_u_27a),happ(s(t_fun(t_h4s_nums_num,t_fun(TV_u_27a,TV_u_27a)),V_b1f),s(t_h4s_nums_num,V_n))),s(TV_u_27a,happ(s(t_fun(t_h4s_nums_num,TV_u_27a),V_f),s(t_h4s_nums_num,V_n))))) & ![V_n]: s(TV_u_27a,happ(s(t_fun(t_h4s_nums_num,TV_u_27a),V_f),s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,V_n))))) = s(TV_u_27a,happ(s(t_fun(TV_u_27a,TV_u_27a),happ(s(t_fun(t_h4s_nums_num,t_fun(TV_u_27a,TV_u_27a)),V_b2f),s(t_h4s_nums_num,V_n))),s(TV_u_27a,happ(s(t_fun(t_h4s_nums_num,TV_u_27a),V_f),s(t_h4s_nums_num,V_n)))))))).
fof(ah4s_numerals_numeralu_u_multu_c3, axiom, ![V_n, V_m]: s(t_h4s_nums_num,happ(s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),h4s_arithmetics_u_2a),s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,V_n))))),s(t_h4s_nums_num,V_m))) = s(t_h4s_nums_num,h4s_numerals_idub(s(t_h4s_nums_num,h4s_numerals_iz(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,happ(s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),h4s_arithmetics_u_2a),s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,V_m))),s(t_h4s_nums_num,V_m)))))))).
fof(ah4s_arithmetics_ADDu_u_CLAUSESu_c2, axiom, ![V_n, V_m]: s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,h4s_nums_suc(s(t_h4s_nums_num,V_m))),s(t_h4s_nums_num,V_n))) = s(t_h4s_nums_num,h4s_nums_suc(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_m),s(t_h4s_nums_num,V_n)))))).
fof(ah4s_numerals_numeralu_u_multu_c0, axiom, ![V_n]: s(t_h4s_nums_num,happ(s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),h4s_arithmetics_u_2a),s(t_h4s_nums_num,h4s_arithmetics_zero))),s(t_h4s_nums_num,V_n))) = s(t_h4s_nums_num,h4s_arithmetics_zero)).
fof(ah4s_numerals_internalu_u_multu_u_def, axiom, s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),h4s_numerals_internalu_u_mult) = s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),h4s_arithmetics_u_2a)).
fof(ah4s_numerals_numeralu_u_multu_c1, axiom, ![V_n]: s(t_h4s_nums_num,happ(s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),h4s_arithmetics_u_2a),s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,h4s_arithmetics_zero))) = s(t_h4s_nums_num,h4s_arithmetics_zero)).
fof(ah4s_numerals_internalu_u_multu_u_characterisationu_c2, axiom, ![V_n, V_m]: s(t_h4s_nums_num,happ(s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),h4s_numerals_internalu_u_mult),s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,V_n))))),s(t_h4s_nums_num,V_m))) = s(t_h4s_nums_num,h4s_numerals_iz(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,h4s_numerals_idub(s(t_h4s_nums_num,happ(s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),h4s_numerals_internalu_u_mult),s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,V_m))))),s(t_h4s_nums_num,V_m)))))).
fof(ah4s_numerals_internalu_u_multu_u_characterisationu_c3, axiom, ![V_n, V_m]: s(t_h4s_nums_num,happ(s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),h4s_numerals_internalu_u_mult),s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,V_n))))),s(t_h4s_nums_num,V_m))) = s(t_h4s_nums_num,h4s_numerals_idub(s(t_h4s_nums_num,h4s_numerals_iz(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,happ(s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),h4s_numerals_internalu_u_mult),s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,V_m))),s(t_h4s_nums_num,V_m)))))))).
fof(ah4s_numerals_iSUBu_u_DEFu_c1, axiom, ![V_uu_2]: (![V_n, V_m]: s(t_h4s_nums_num,happ(s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),V_uu_2),s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,V_m))) = s(t_h4s_nums_num,h4s_numerals_idub(s(t_h4s_nums_num,h4s_numerals_isub(s(t_bool,f),s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,V_m))))) => ![V_uu_1]: (![V_n, V_m]: s(t_h4s_nums_num,happ(s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),V_uu_1),s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,V_m))) = s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,h4s_numerals_isub(s(t_bool,f),s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,V_m))))) => ![V_uu_0]: (![V_n, V_m]: s(t_h4s_nums_num,happ(s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),V_uu_0),s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,V_m))) = s(t_h4s_nums_num,h4s_numerals_idub(s(t_h4s_nums_num,h4s_numerals_isub(s(t_bool,t),s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,V_m))))) => ![V_x, V_n, V_b]: s(t_h4s_nums_num,h4s_numerals_isub(s(t_bool,V_b),s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,V_x))) = s(t_h4s_nums_num,h4s_bools_cond(s(t_bool,V_b),s(t_h4s_nums_num,h4s_numerals_ibitu_u_cases(s(t_h4s_nums_num,V_x),s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,V_n))),s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),V_uu_0),s(t_h4s_nums_num,V_n))),s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),V_uu_1),s(t_h4s_nums_num,V_n))))),s(t_h4s_nums_num,h4s_numerals_ibitu_u_cases(s(t_h4s_nums_num,V_x),s(t_h4s_nums_num,h4s_numerals_idub(s(t_h4s_nums_num,V_n))),s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),V_uu_1),s(t_h4s_nums_num,V_n))),s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),V_uu_2),s(t_h4s_nums_num,V_n))))))))))).
fof(ah4s_numerals_iSUBu_u_DEFu_c2, axiom, ![V_uu_2]: (![V_n, V_m]: s(t_h4s_nums_num,happ(s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),V_uu_2),s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,V_m))) = s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,h4s_numerals_isub(s(t_bool,f),s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,V_m))))) => ![V_uu_1]: (![V_n, V_m]: s(t_h4s_nums_num,happ(s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),V_uu_1),s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,V_m))) = s(t_h4s_nums_num,h4s_numerals_idub(s(t_h4s_nums_num,h4s_numerals_isub(s(t_bool,t),s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,V_m))))) => ![V_uu_0]: (![V_n, V_m]: s(t_h4s_nums_num,happ(s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),V_uu_0),s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,V_m))) = s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,h4s_numerals_isub(s(t_bool,t),s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,V_m))))) => ![V_x, V_n, V_b]: s(t_h4s_nums_num,h4s_numerals_isub(s(t_bool,V_b),s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,V_x))) = s(t_h4s_nums_num,h4s_bools_cond(s(t_bool,V_b),s(t_h4s_nums_num,h4s_numerals_ibitu_u_cases(s(t_h4s_nums_num,V_x),s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,V_n))),s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),V_uu_0),s(t_h4s_nums_num,V_n))),s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),V_uu_1),s(t_h4s_nums_num,V_n))))),s(t_h4s_nums_num,h4s_numerals_ibitu_u_cases(s(t_h4s_nums_num,V_x),s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,V_n))),s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),V_uu_1),s(t_h4s_nums_num,V_n))),s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),V_uu_2),s(t_h4s_nums_num,V_n))))))))))).
fof(ah4s_numerals_numeralu_u_addu_c2, axiom, ![V_n, V_m]: s(t_h4s_nums_num,h4s_numerals_iz(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,V_m))))))) = s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,h4s_numerals_iz(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,V_m)))))))).
fof(ah4s_numerals_numeralu_u_addu_c3, axiom, ![V_n, V_m]: s(t_h4s_nums_num,h4s_numerals_iz(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,V_m))))))) = s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,h4s_nums_suc(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,V_m)))))))).
fof(ah4s_numerals_numeralu_u_addu_c4, axiom, ![V_n, V_m]: s(t_h4s_nums_num,h4s_numerals_iz(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,V_m))))))) = s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,h4s_nums_suc(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,V_m)))))))).
fof(ah4s_numerals_numeralu_u_addu_c5, axiom, ![V_n, V_m]: s(t_h4s_nums_num,h4s_numerals_iz(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,V_m))))))) = s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,h4s_nums_suc(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,V_m)))))))).
fof(ah4s_numerals_numeralu_u_addu_c0, axiom, ![V_n]: s(t_h4s_nums_num,h4s_numerals_iz(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,h4s_arithmetics_zero),s(t_h4s_nums_num,V_n))))) = s(t_h4s_nums_num,V_n)).
fof(ah4s_bools_FORALLu_u_SIMP, axiom, ![TV_u_27a]: ![V_t]: (![V_x]: p(s(t_bool,V_t)) <=> p(s(t_bool,V_t)))).
fof(ah4s_arithmetics_ADDu_u_CLAUSESu_c0, axiom, ![V_m]: s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,h4s_nums_0),s(t_h4s_nums_num,V_m))) = s(t_h4s_nums_num,V_m)).
fof(ah4s_numerals_iDUBu_u_removalu_c0, axiom, ![V_n]: s(t_h4s_nums_num,h4s_numerals_idub(s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,V_n))))) = s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,h4s_numerals_idub(s(t_h4s_nums_num,V_n)))))).
fof(ah4s_numerals_iDUBu_u_removalu_c1, axiom, ![V_n]: s(t_h4s_nums_num,h4s_numerals_idub(s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,V_n))))) = s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,V_n)))))).
fof(ah4s_numerals_iSUBu_u_THMu_c6, axiom, ![V_n, V_m]: s(t_h4s_nums_num,h4s_numerals_isub(s(t_bool,f),s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,V_m))))) = s(t_h4s_nums_num,h4s_numerals_idub(s(t_h4s_nums_num,h4s_numerals_isub(s(t_bool,f),s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,V_m)))))).
fof(ah4s_numerals_iSUBu_u_THMu_c2, axiom, ![V_n]: s(t_h4s_nums_num,h4s_numerals_isub(s(t_bool,f),s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,h4s_arithmetics_zero))) = s(t_h4s_nums_num,h4s_numerals_idub(s(t_h4s_nums_num,V_n)))).
fof(ah4s_numerals_iSUBu_u_THMu_c9, axiom, ![V_n, V_m]: s(t_h4s_nums_num,h4s_numerals_isub(s(t_bool,f),s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,V_m))))) = s(t_h4s_nums_num,h4s_numerals_idub(s(t_h4s_nums_num,h4s_numerals_isub(s(t_bool,t),s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,V_m)))))).
fof(ah4s_numerals_iSUBu_u_THMu_c3, axiom, ![V_n, V_m]: s(t_h4s_nums_num,h4s_numerals_isub(s(t_bool,t),s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,V_m))))) = s(t_h4s_nums_num,h4s_numerals_idub(s(t_h4s_nums_num,h4s_numerals_isub(s(t_bool,t),s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,V_m)))))).
fof(ah4s_numerals_iSUBu_u_THMu_c10, axiom, ![V_n, V_m]: s(t_h4s_nums_num,h4s_numerals_isub(s(t_bool,t),s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,V_m))))) = s(t_h4s_nums_num,h4s_numerals_idub(s(t_h4s_nums_num,h4s_numerals_isub(s(t_bool,t),s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,V_m)))))).
fof(ah4s_numerals_iDUBu_u_removalu_c2, axiom, s(t_h4s_nums_num,h4s_numerals_idub(s(t_h4s_nums_num,h4s_arithmetics_zero))) = s(t_h4s_nums_num,h4s_arithmetics_zero)).
fof(ah4s_numRings_numu_u_rewritesu_c54, axiom, ![V_n, V_m]: s(t_h4s_nums_num,h4s_numerals_iz(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,V_m))))))) = s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,h4s_nums_suc(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,V_m)))))))).
fof(ah4s_numRings_numu_u_rewritesu_c53, axiom, ![V_n, V_m]: s(t_h4s_nums_num,h4s_numerals_iz(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,V_m))))))) = s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,h4s_nums_suc(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,V_m)))))))).
fof(ah4s_numRings_numu_u_rewritesu_c52, axiom, ![V_n, V_m]: s(t_h4s_nums_num,h4s_numerals_iz(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,V_m))))))) = s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,h4s_numerals_iz(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,V_m)))))))).
fof(ah4s_numerals_numeralu_u_distribu_c2, axiom, ![V_n, V_m]: s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,V_m))))) = s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,h4s_numerals_iz(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,V_m)))))))).
fof(ah4s_numRings_numu_u_rewritesu_c2, axiom, ![V_n, V_m]: s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,V_m))))) = s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,h4s_numerals_iz(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,V_m)))))))).
fof(ah4s_numRings_numu_u_rewritesu_c55, axiom, ![V_n, V_m]: s(t_h4s_nums_num,h4s_numerals_iz(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,V_m))))))) = s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,h4s_nums_suc(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,V_m)))))))).
fof(ah4s_numRings_numu_u_rewritesu_c50, axiom, ![V_n]: s(t_h4s_nums_num,h4s_numerals_iz(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,h4s_arithmetics_zero),s(t_h4s_nums_num,V_n))))) = s(t_h4s_nums_num,V_n)).
fof(ah4s_numRings_numu_u_rewritesu_c51, axiom, ![V_n]: s(t_h4s_nums_num,h4s_numerals_iz(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,h4s_arithmetics_zero))))) = s(t_h4s_nums_num,V_n)).
fof(ah4s_numerals_numeralu_u_addu_c6, axiom, ![V_n]: s(t_h4s_nums_num,h4s_nums_suc(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,h4s_arithmetics_zero),s(t_h4s_nums_num,V_n))))) = s(t_h4s_nums_num,h4s_nums_suc(s(t_h4s_nums_num,V_n)))).
fof(ah4s_numerals_numeralu_u_addu_c9, axiom, ![V_n, V_m]: s(t_h4s_nums_num,h4s_nums_suc(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,V_m))))))) = s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,h4s_nums_suc(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,V_m)))))))).
fof(ah4s_numerals_numeralu_u_addu_c10, axiom, ![V_n, V_m]: s(t_h4s_nums_num,h4s_nums_suc(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,V_m))))))) = s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,h4s_nums_suc(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,V_m)))))))).
fof(ah4s_numerals_numeralu_u_addu_c1, axiom, ![V_n]: s(t_h4s_nums_num,h4s_numerals_iz(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,h4s_arithmetics_zero))))) = s(t_h4s_nums_num,V_n)).
fof(ah4s_numerals_numeralu_u_addu_c11, axiom, ![V_n, V_m]: s(t_h4s_nums_num,h4s_nums_suc(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,V_m))))))) = s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,h4s_numerals_iisuc(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,V_m)))))))).
fof(ah4s_numerals_numeralu_u_addu_c12, axiom, ![V_n]: s(t_h4s_nums_num,h4s_numerals_iisuc(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,h4s_arithmetics_zero),s(t_h4s_nums_num,V_n))))) = s(t_h4s_nums_num,h4s_numerals_iisuc(s(t_h4s_nums_num,V_n)))).
fof(ah4s_numerals_numeralu_u_addu_c17, axiom, ![V_n, V_m]: s(t_h4s_nums_num,h4s_numerals_iisuc(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,V_m))))))) = s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,h4s_numerals_iisuc(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,V_m)))))))).
fof(ah4s_numerals_numeralu_u_addu_c8, axiom, ![V_n, V_m]: s(t_h4s_nums_num,h4s_nums_suc(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,V_m))))))) = s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,h4s_nums_suc(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,V_m)))))))).
fof(ah4s_numerals_numeralu_u_addu_c16, axiom, ![V_n, V_m]: s(t_h4s_nums_num,h4s_numerals_iisuc(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,V_m))))))) = s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,h4s_numerals_iisuc(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,V_m)))))))).
fof(ah4s_numerals_numeralu_u_addu_c7, axiom, ![V_n]: s(t_h4s_nums_num,h4s_nums_suc(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,h4s_arithmetics_zero))))) = s(t_h4s_nums_num,h4s_nums_suc(s(t_h4s_nums_num,V_n)))).
fof(ah4s_numerals_numeralu_u_addu_c15, axiom, ![V_n, V_m]: s(t_h4s_nums_num,h4s_numerals_iisuc(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,V_m))))))) = s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,h4s_numerals_iisuc(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,V_m)))))))).
fof(ah4s_numerals_numeralu_u_addu_c14, axiom, ![V_n, V_m]: s(t_h4s_nums_num,h4s_numerals_iisuc(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,V_m))))))) = s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,h4s_nums_suc(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,V_m)))))))).
fof(ah4s_numerals_numeralu_u_addu_c13, axiom, ![V_n]: s(t_h4s_nums_num,h4s_numerals_iisuc(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,h4s_arithmetics_zero))))) = s(t_h4s_nums_num,h4s_numerals_iisuc(s(t_h4s_nums_num,V_n)))).
fof(ah4s_bools_ORu_u_CLAUSESu_c0, axiom, ![V_t]: ((p(s(t_bool,t)) | p(s(t_bool,V_t))) <=> p(s(t_bool,t)))).
fof(ah4s_bools_CONDu_u_CLAUSESu_c0, axiom, ![TV_u_27a]: ![V_t2, V_t1]: s(TV_u_27a,h4s_bools_cond(s(t_bool,t),s(TV_u_27a,V_t1),s(TV_u_27a,V_t2))) = s(TV_u_27a,V_t1)).
fof(ah4s_bools_CONDu_u_CLAUSESu_c1, axiom, ![TV_u_27a]: ![V_t2, V_t1]: s(TV_u_27a,h4s_bools_cond(s(t_bool,f),s(TV_u_27a,V_t1),s(TV_u_27a,V_t2))) = s(TV_u_27a,V_t2)).
fof(ah4s_numerals_iSUBu_u_DEFu_c0, axiom, ![V_x, V_b]: s(t_h4s_nums_num,h4s_numerals_isub(s(t_bool,V_b),s(t_h4s_nums_num,h4s_arithmetics_zero),s(t_h4s_nums_num,V_x))) = s(t_h4s_nums_num,h4s_arithmetics_zero)).
fof(ah4s_numerals_numeralu_u_sucu_c0, axiom, s(t_h4s_nums_num,h4s_nums_suc(s(t_h4s_nums_num,h4s_arithmetics_zero))) = s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,h4s_arithmetics_zero)))).
fof(ah4s_nums_INDUCTION, axiom, ![V_P]: ((p(s(t_bool,happ(s(t_fun(t_h4s_nums_num,t_bool),V_P),s(t_h4s_nums_num,h4s_nums_0)))) & ![V_n]: (p(s(t_bool,happ(s(t_fun(t_h4s_nums_num,t_bool),V_P),s(t_h4s_nums_num,V_n)))) => p(s(t_bool,happ(s(t_fun(t_h4s_nums_num,t_bool),V_P),s(t_h4s_nums_num,h4s_nums_suc(s(t_h4s_nums_num,V_n)))))))) => ![V_n]: p(s(t_bool,happ(s(t_fun(t_h4s_nums_num,t_bool),V_P),s(t_h4s_nums_num,V_n)))))).
fof(ah4s_numerals_iBITu_u_cases0u_c2, axiom, ![TV_u_27a]: ![V_zf, V_n, V_bf2, V_bf1]: s(TV_u_27a,h4s_numerals_ibitu_u_cases(s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,V_n))),s(TV_u_27a,V_zf),s(t_fun(t_h4s_nums_num,TV_u_27a),V_bf1),s(t_fun(t_h4s_nums_num,TV_u_27a),V_bf2))) = s(TV_u_27a,happ(s(t_fun(t_h4s_nums_num,TV_u_27a),V_bf2),s(t_h4s_nums_num,V_n)))).
fof(ah4s_numerals_iBITu_u_cases0u_c1, axiom, ![TV_u_27a]: ![V_zf, V_n, V_bf2, V_bf1]: s(TV_u_27a,h4s_numerals_ibitu_u_cases(s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,V_n))),s(TV_u_27a,V_zf),s(t_fun(t_h4s_nums_num,TV_u_27a),V_bf1),s(t_fun(t_h4s_nums_num,TV_u_27a),V_bf2))) = s(TV_u_27a,happ(s(t_fun(t_h4s_nums_num,TV_u_27a),V_bf1),s(t_h4s_nums_num,V_n)))).
fof(ah4s_numerals_iBITu_u_cases0u_c0, axiom, ![TV_u_27a]: ![V_zf, V_bf2, V_bf1]: s(TV_u_27a,h4s_numerals_ibitu_u_cases(s(t_h4s_nums_num,h4s_arithmetics_zero),s(TV_u_27a,V_zf),s(t_fun(t_h4s_nums_num,TV_u_27a),V_bf1),s(t_fun(t_h4s_nums_num,TV_u_27a),V_bf2))) = s(TV_u_27a,V_zf)).
fof(ah4s_bools_ETAu_u_AX, axiom, ![TV_u_27b,TV_u_27a]: ![V_t, V_x]: s(TV_u_27b,happ(s(t_fun(TV_u_27a,TV_u_27b),V_t),s(TV_u_27a,V_x))) = s(TV_u_27b,happ(s(t_fun(TV_u_27a,TV_u_27b),V_t),s(TV_u_27a,V_x)))).
fof(ah4s_numerals_iiSUC0, axiom, ![V_n]: s(t_h4s_nums_num,h4s_numerals_iisuc(s(t_h4s_nums_num,V_n))) = s(t_h4s_nums_num,h4s_nums_suc(s(t_h4s_nums_num,h4s_nums_suc(s(t_h4s_nums_num,V_n)))))).
fof(ah4s_bools_ANDu_u_CLAUSESu_c4, axiom, ![V_t]: ((p(s(t_bool,V_t)) & p(s(t_bool,V_t))) <=> p(s(t_bool,V_t)))).
fof(ah4s_primu_u_recs_INVu_u_SUCu_u_EQ, axiom, ![V_n, V_m]: (s(t_h4s_nums_num,h4s_nums_suc(s(t_h4s_nums_num,V_m))) = s(t_h4s_nums_num,h4s_nums_suc(s(t_h4s_nums_num,V_n))) <=> s(t_h4s_nums_num,V_m) = s(t_h4s_nums_num,V_n))).
fof(ah4s_numerals_numeralu_u_distribu_c32, axiom, ![V_n]: s(t_bool,h4s_arithmetics_odd(s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,V_n))))) = s(t_bool,h4s_arithmetics_odd(s(t_h4s_nums_num,V_n)))).
fof(ah4s_numerals_numeralu_u_distribu_c34, axiom, ~ (p(s(t_bool,h4s_arithmetics_odd(s(t_h4s_nums_num,h4s_nums_0)))))).
fof(ah4s_numerals_numeralu_u_distribu_c33, axiom, ![V_n]: s(t_bool,h4s_arithmetics_even(s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,V_n))))) = s(t_bool,h4s_arithmetics_even(s(t_h4s_nums_num,V_n)))).
fof(ah4s_numerals_numeralu_u_distribu_c31, axiom, ![V_n, V_m]: s(t_bool,h4s_arithmetics_u_3eu_3d(s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,V_m))))) = s(t_bool,h4s_arithmetics_u_3cu_3d(s(t_h4s_nums_num,V_m),s(t_h4s_nums_num,V_n)))).
fof(ah4s_numerals_numeralu_u_distribu_c30, axiom, ![V_n]: (p(s(t_bool,h4s_arithmetics_u_3eu_3d(s(t_h4s_nums_num,h4s_nums_0),s(t_h4s_nums_num,V_n)))) <=> s(t_h4s_nums_num,V_n) = s(t_h4s_nums_num,h4s_nums_0))).
fof(ah4s_numerals_numeralu_u_distribu_c27, axiom, ![V_n]: s(t_bool,h4s_arithmetics_u_3cu_3d(s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,h4s_nums_0))) = s(t_bool,h4s_arithmetics_u_3cu_3d(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,h4s_arithmetics_zero)))).
fof(ah4s_numerals_numeralu_u_distribu_c28, axiom, ![V_n, V_m]: s(t_bool,h4s_arithmetics_u_3cu_3d(s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,V_m))))) = s(t_bool,h4s_arithmetics_u_3cu_3d(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,V_m)))).
fof(ah4s_numerals_numeralu_u_distribu_c26, axiom, ![V_n]: s(t_bool,h4s_arithmetics_u_3cu_3d(s(t_h4s_nums_num,h4s_nums_0),s(t_h4s_nums_num,V_n))) = s(t_bool,t)).
fof(ah4s_numerals_numeralu_u_distribu_c24, axiom, ![V_n]: s(t_bool,h4s_arithmetics_u_3e(s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,h4s_nums_0))) = s(t_bool,h4s_primu_u_recs_u_3c(s(t_h4s_nums_num,h4s_arithmetics_zero),s(t_h4s_nums_num,V_n)))).
fof(ah4s_numerals_numeralu_u_distribu_c35, axiom, p(s(t_bool,h4s_arithmetics_even(s(t_h4s_nums_num,h4s_nums_0))))).
fof(ah4s_numerals_numeralu_u_distribu_c29, axiom, ![V_n]: s(t_bool,h4s_arithmetics_u_3eu_3d(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,h4s_nums_0))) = s(t_bool,t)).
fof(ah4s_numerals_numeralu_u_distribu_c25, axiom, ![V_n, V_m]: s(t_bool,h4s_arithmetics_u_3e(s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,V_m))))) = s(t_bool,h4s_primu_u_recs_u_3c(s(t_h4s_nums_num,V_m),s(t_h4s_nums_num,V_n)))).
fof(ah4s_numerals_numeralu_u_distribu_c22, axiom, ![V_n, V_m]: s(t_bool,h4s_primu_u_recs_u_3c(s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,V_m))))) = s(t_bool,h4s_primu_u_recs_u_3c(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,V_m)))).
fof(ah4s_numerals_numeralu_u_distribu_c20, axiom, ![V_n]: s(t_bool,h4s_primu_u_recs_u_3c(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,h4s_nums_0))) = s(t_bool,f)).
fof(ah4s_numerals_numeralu_u_distribu_c21, axiom, ![V_n]: s(t_bool,h4s_primu_u_recs_u_3c(s(t_h4s_nums_num,h4s_nums_0),s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,V_n))))) = s(t_bool,h4s_primu_u_recs_u_3c(s(t_h4s_nums_num,h4s_arithmetics_zero),s(t_h4s_nums_num,V_n)))).
fof(ah4s_numerals_numeralu_u_distribu_c19, axiom, ![V_n, V_m]: (s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,V_n))) = s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,V_m))) <=> s(t_h4s_nums_num,V_n) = s(t_h4s_nums_num,V_m))).
fof(ah4s_numerals_numeralu_u_distribu_c17, axiom, ![V_n]: (s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,V_n))) = s(t_h4s_nums_num,h4s_nums_0) <=> s(t_h4s_nums_num,V_n) = s(t_h4s_nums_num,h4s_arithmetics_zero))).
fof(ah4s_numerals_numeralu_u_distribu_c16, axiom, ![V_n]: s(t_h4s_nums_num,h4s_primu_u_recs_pre(s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,V_n))))) = s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,h4s_primu_u_recs_pre(s(t_h4s_nums_num,V_n)))))).
fof(ah4s_numerals_numeralu_u_distribu_c14, axiom, ![V_n]: s(t_h4s_nums_num,h4s_nums_suc(s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,V_n))))) = s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,h4s_nums_suc(s(t_h4s_nums_num,V_n)))))).
fof(ah4s_numerals_numeralu_u_distribu_c18, axiom, ![V_n]: (s(t_h4s_nums_num,h4s_nums_0) = s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,V_n))) <=> s(t_h4s_nums_num,V_n) = s(t_h4s_nums_num,h4s_arithmetics_zero))).
fof(ah4s_numerals_numeralu_u_distribu_c15, axiom, s(t_h4s_nums_num,h4s_primu_u_recs_pre(s(t_h4s_nums_num,h4s_nums_0))) = s(t_h4s_nums_num,h4s_nums_0)).
fof(ah4s_numerals_numeralu_u_distribu_c13, axiom, s(t_h4s_nums_num,h4s_nums_suc(s(t_h4s_nums_num,h4s_nums_0))) = s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,h4s_arithmetics_zero)))))).
fof(ah4s_numerals_numeralu_u_distribu_c9, axiom, ![V_n]: s(t_h4s_nums_num,h4s_arithmetics_exp(s(t_h4s_nums_num,h4s_nums_0),s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,V_n))))))) = s(t_h4s_nums_num,h4s_nums_0)).
fof(ah4s_numerals_numeralu_u_distribu_c10, axiom, ![V_n]: s(t_h4s_nums_num,h4s_arithmetics_exp(s(t_h4s_nums_num,h4s_nums_0),s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,h4s_arithmetics_bit2(s(t_h4s_nums_num,V_n))))))) = s(t_h4s_nums_num,h4s_nums_0)).
fof(ah4s_numerals_numeralu_u_distribu_c8, axiom, ![V_n, V_m]: s(t_h4s_nums_num,h4s_arithmetics_u_2d(s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,V_m))))) = s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,h4s_arithmetics_u_2d(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,V_m)))))).
fof(ah4s_numerals_numeralu_u_distribu_c6, axiom, ![V_n]: s(t_h4s_nums_num,h4s_arithmetics_u_2d(s(t_h4s_nums_num,h4s_nums_0),s(t_h4s_nums_num,V_n))) = s(t_h4s_nums_num,h4s_nums_0)).
fof(ah4s_numerals_numeralu_u_distribu_c12, axiom, ![V_n, V_m]: s(t_h4s_nums_num,h4s_arithmetics_exp(s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,V_m))))) = s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,h4s_arithmetics_exp(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,V_m)))))).
fof(ah4s_numerals_numeralu_u_distribu_c11, axiom, ![V_n]: s(t_h4s_nums_num,h4s_arithmetics_exp(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,h4s_nums_0))) = s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,h4s_arithmetics_zero)))))).
fof(ah4s_numerals_numeralu_u_distribu_c7, axiom, ![V_n]: s(t_h4s_nums_num,h4s_arithmetics_u_2d(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,h4s_nums_0))) = s(t_h4s_nums_num,V_n)).
fof(ah4s_numerals_numeralu_u_distribu_c4, axiom, ![V_n]: s(t_h4s_nums_num,happ(s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),h4s_arithmetics_u_2a),s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,h4s_nums_0))) = s(t_h4s_nums_num,h4s_nums_0)).
fof(ah4s_numerals_numeralu_u_distribu_c3, axiom, ![V_n]: s(t_h4s_nums_num,happ(s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),h4s_arithmetics_u_2a),s(t_h4s_nums_num,h4s_nums_0))),s(t_h4s_nums_num,V_n))) = s(t_h4s_nums_num,h4s_nums_0)).
fof(ah4s_numerals_numeralu_u_distribu_c23, axiom, ![V_n]: s(t_bool,h4s_arithmetics_u_3e(s(t_h4s_nums_num,h4s_nums_0),s(t_h4s_nums_num,V_n))) = s(t_bool,f)).
fof(ah4s_numerals_numeralu_u_distribu_c5, axiom, ![V_n, V_m]: s(t_h4s_nums_num,happ(s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),h4s_arithmetics_u_2a),s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,V_n))))),s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,V_m))))) = s(t_h4s_nums_num,h4s_arithmetics_numeral(s(t_h4s_nums_num,happ(s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),h4s_arithmetics_u_2a),s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,V_m)))))).
fof(ah4s_numerals_numeralu_u_distribu_c1, axiom, ![V_n]: s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,V_n),s(t_h4s_nums_num,h4s_nums_0))) = s(t_h4s_nums_num,V_n)).
fof(ah4s_numerals_numeralu_u_distribu_c0, axiom, ![V_n]: s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,h4s_nums_0),s(t_h4s_nums_num,V_n))) = s(t_h4s_nums_num,V_n)).
fof(ah4s_bools_IMPu_u_CLAUSESu_c4, axiom, ![V_t]: ((p(s(t_bool,V_t)) => p(s(t_bool,f))) <=> ~ (p(s(t_bool,V_t))))).
fof(ah4s_bools_NOTu_u_CLAUSESu_c0, axiom, ![V_t]: (~ (~ (p(s(t_bool,V_t)))) <=> p(s(t_bool,V_t)))).
fof(ah4s_bools_NOTu_u_CLAUSESu_c1, axiom, (~ (p(s(t_bool,t))) <=> p(s(t_bool,f)))).
fof(ah4s_bools_NOTu_u_CLAUSESu_c2, axiom, (~ (p(s(t_bool,f))) <=> p(s(t_bool,t)))).
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_bools_EQu_u_CLAUSESu_c0, axiom, ![V_t]: (s(t_bool,t) = s(t_bool,V_t) <=> p(s(t_bool,V_t)))).
fof(ah4s_bools_EQu_u_CLAUSESu_c2, axiom, ![V_t]: (s(t_bool,f) = s(t_bool,V_t) <=> ~ (p(s(t_bool,V_t))))).
fof(ah4s_bools_EQu_u_CLAUSESu_c3, axiom, ![V_t]: (s(t_bool,V_t) = s(t_bool,f) <=> ~ (p(s(t_bool,V_t))))).
fof(ah4s_bools_NOTu_u_FORALLu_u_THM, axiom, ![TV_u_27a]: ![V_P]: (~ (![V_x]: p(s(t_bool,happ(s(t_fun(TV_u_27a,t_bool),V_P),s(TV_u_27a,V_x))))) <=> ?[V_x]: ~ (p(s(t_bool,happ(s(t_fun(TV_u_27a,t_bool),V_P),s(TV_u_27a,V_x))))))).
fof(ah4s_bools_EXISTSu_u_ORu_u_THM, axiom, ![TV_u_27a]: ![V_Q, V_P]: (?[V_x]: (p(s(t_bool,happ(s(t_fun(TV_u_27a,t_bool),V_P),s(TV_u_27a,V_x)))) | p(s(t_bool,happ(s(t_fun(TV_u_27a,t_bool),V_Q),s(TV_u_27a,V_x))))) <=> (?[V_x]: p(s(t_bool,happ(s(t_fun(TV_u_27a,t_bool),V_P),s(TV_u_27a,V_x)))) | ?[V_x]: p(s(t_bool,happ(s(t_fun(TV_u_27a,t_bool),V_Q),s(TV_u_27a,V_x))))))).
fof(ah4s_bools_IMPu_u_F, axiom, ![V_t]: ((p(s(t_bool,V_t)) => p(s(t_bool,f))) => ~ (p(s(t_bool,V_t))))).
fof(ah4s_arithmetics_SUBu_u_0u_c1, axiom, ![V_m]: s(t_h4s_nums_num,h4s_arithmetics_u_2d(s(t_h4s_nums_num,V_m),s(t_h4s_nums_num,h4s_nums_0))) = s(t_h4s_nums_num,V_m)).
fof(ah4s_bools_Fu_u_IMP, axiom, ![V_t]: (~ (p(s(t_bool,V_t))) => (p(s(t_bool,V_t)) => p(s(t_bool,f))))).
fof(ah4s_arithmetics_SUBu_u_0u_c0, axiom, ![V_m]: s(t_h4s_nums_num,h4s_arithmetics_u_2d(s(t_h4s_nums_num,h4s_nums_0),s(t_h4s_nums_num,V_m))) = s(t_h4s_nums_num,h4s_nums_0)).
fof(ah4s_arithmetics_LESSu_u_0u_u_CASES, axiom, ![V_m]: (s(t_h4s_nums_num,h4s_nums_0) = s(t_h4s_nums_num,V_m) | p(s(t_bool,h4s_primu_u_recs_u_3c(s(t_h4s_nums_num,h4s_nums_0),s(t_h4s_nums_num,V_m)))))).
fof(ah4s_arithmetics_EVEN0u_c0, axiom, s(t_bool,h4s_arithmetics_even(s(t_h4s_nums_num,h4s_nums_0))) = s(t_bool,t)).
fof(ch4s_numRings_numu_u_rewritesu_c70, conjecture, ![V_n, V_m]: s(t_h4s_nums_num,happ(s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),h4s_arithmetics_u_2a),s(t_h4s_nums_num,h4s_arithmetics_bit1(s(t_h4s_nums_num,V_n))))),s(t_h4s_nums_num,V_m))) = s(t_h4s_nums_num,h4s_numerals_iz(s(t_h4s_nums_num,h4s_arithmetics_u_2b(s(t_h4s_nums_num,h4s_numerals_idub(s(t_h4s_nums_num,happ(s(t_fun(t_h4s_nums_num,t_h4s_nums_num),happ(s(t_fun(t_h4s_nums_num,t_fun(t_h4s_nums_num,t_h4s_nums_num)),h4s_arithmetics_u_2a),s(t_h4s_nums_num,V_n))),s(t_h4s_nums_num,V_m))))),s(t_h4s_nums_num,V_m)))))).
