% TIMEFORMAT='%3R'; { time (exec 2>&1; /home/martin/bin/satallax -E /home/martin/.isabelle/contrib/e-2.5-1/x86_64-linux/eprover -p tstp -t 5 /home/martin/judgement-day/tptp-thf/tptp/Fundamental_Theorem_Algebra/prob_1088__5378162_1 ) ; }
% This file was generated by Isabelle (most likely Sledgehammer)
% 2020-12-16 14:35:48.445

% Could-be-implicit typings (4)
thf(ty_n_t__Polynomial__Opoly_It__Polynomial__Opoly_Itf__a_J_J, type,
    poly_poly_a : $tType).
thf(ty_n_t__Polynomial__Opoly_Itf__a_J, type,
    poly_a : $tType).
thf(ty_n_t__Num__Onum, type,
    num : $tType).
thf(ty_n_tf__a, type,
    a : $tType).

% Explicit typings (32)
thf(sy_c_Fundamental__Theorem__Algebra__Mirabelle__sywschxjbb_Ooffset__poly_001t__Polynomial__Opoly_Itf__a_J, type,
    fundam1343031620poly_a : poly_poly_a > poly_a > poly_poly_a).
thf(sy_c_Fundamental__Theorem__Algebra__Mirabelle__sywschxjbb_Ooffset__poly_001tf__a, type,
    fundam1358810038poly_a : poly_a > a > poly_a).
thf(sy_c_Groups_Ominus__class_Ominus_001t__Polynomial__Opoly_It__Polynomial__Opoly_Itf__a_J_J, type,
    minus_154650241poly_a : poly_poly_a > poly_poly_a > poly_poly_a).
thf(sy_c_Groups_Ominus__class_Ominus_001t__Polynomial__Opoly_Itf__a_J, type,
    minus_minus_poly_a : poly_a > poly_a > poly_a).
thf(sy_c_Groups_Ominus__class_Ominus_001tf__a, type,
    minus_minus_a : a > a > a).
thf(sy_c_Groups_Oone__class_Oone_001t__Polynomial__Opoly_It__Polynomial__Opoly_Itf__a_J_J, type,
    one_one_poly_poly_a : poly_poly_a).
thf(sy_c_Groups_Oone__class_Oone_001t__Polynomial__Opoly_Itf__a_J, type,
    one_one_poly_a : poly_a).
thf(sy_c_Groups_Oone__class_Oone_001tf__a, type,
    one_one_a : a).
thf(sy_c_Groups_Oplus__class_Oplus_001t__Num__Onum, type,
    plus_plus_num : num > num > num).
thf(sy_c_Groups_Oplus__class_Oplus_001t__Polynomial__Opoly_It__Polynomial__Opoly_Itf__a_J_J, type,
    plus_p1976640465poly_a : poly_poly_a > poly_poly_a > poly_poly_a).
thf(sy_c_Groups_Oplus__class_Oplus_001t__Polynomial__Opoly_Itf__a_J, type,
    plus_plus_poly_a : poly_a > poly_a > poly_a).
thf(sy_c_Groups_Oplus__class_Oplus_001tf__a, type,
    plus_plus_a : a > a > a).
thf(sy_c_Groups_Otimes__class_Otimes_001t__Num__Onum, type,
    times_times_num : num > num > num).
thf(sy_c_Groups_Otimes__class_Otimes_001t__Polynomial__Opoly_It__Polynomial__Opoly_Itf__a_J_J, type,
    times_545135445poly_a : poly_poly_a > poly_poly_a > poly_poly_a).
thf(sy_c_Groups_Otimes__class_Otimes_001t__Polynomial__Opoly_Itf__a_J, type,
    times_times_poly_a : poly_a > poly_a > poly_a).
thf(sy_c_Groups_Otimes__class_Otimes_001tf__a, type,
    times_times_a : a > a > a).
thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Polynomial__Opoly_It__Polynomial__Opoly_Itf__a_J_J, type,
    uminus1736902417poly_a : poly_poly_a > poly_poly_a).
thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Polynomial__Opoly_Itf__a_J, type,
    uminus_uminus_poly_a : poly_a > poly_a).
thf(sy_c_Groups_Ouminus__class_Ouminus_001tf__a, type,
    uminus_uminus_a : a > a).
thf(sy_c_Groups_Ozero__class_Ozero_001t__Polynomial__Opoly_Itf__a_J, type,
    zero_zero_poly_a : poly_a).
thf(sy_c_Groups_Ozero__class_Ozero_001tf__a, type,
    zero_zero_a : a).
thf(sy_c_Num_Oneg__numeral__class_Odbl__dec_001t__Polynomial__Opoly_Itf__a_J, type,
    neg_nu2076456695poly_a : poly_a > poly_a).
thf(sy_c_Num_Oneg__numeral__class_Odbl__dec_001tf__a, type,
    neg_nu1565223785_dec_a : a > a).
thf(sy_c_Num_Oneg__numeral__class_Odbl__inc_001t__Polynomial__Opoly_Itf__a_J, type,
    neg_nu1855370811poly_a : poly_a > poly_a).
thf(sy_c_Num_Oneg__numeral__class_Odbl__inc_001tf__a, type,
    neg_nu976519853_inc_a : a > a).
thf(sy_c_Num_Onumeral__class_Onumeral_001t__Polynomial__Opoly_Itf__a_J, type,
    numera1589673905poly_a : num > poly_a).
thf(sy_c_Num_Onumeral__class_Onumeral_001tf__a, type,
    numeral_numeral_a : num > a).
thf(sy_c_Polynomial_Opoly_001t__Polynomial__Opoly_Itf__a_J, type,
    poly_poly_a2 : poly_poly_a > poly_a > poly_a).
thf(sy_c_Polynomial_Opoly_001tf__a, type,
    poly_a2 : poly_a > a > a).
thf(sy_v_p, type,
    p : poly_a).
thf(sy_v_q, type,
    q : poly_a).
thf(sy_v_x, type,
    x : a).

% Relevant facts (230)
thf(fact_0_diff__minus__eq__add, axiom,
    ((![A : poly_a, B : poly_a]: ((minus_minus_poly_a @ A @ (uminus_uminus_poly_a @ B)) = (plus_plus_poly_a @ A @ B))))). % diff_minus_eq_add
thf(fact_1_diff__minus__eq__add, axiom,
    ((![A : a, B : a]: ((minus_minus_a @ A @ (uminus_uminus_a @ B)) = (plus_plus_a @ A @ B))))). % diff_minus_eq_add
thf(fact_2_uminus__add__conv__diff, axiom,
    ((![A : poly_a, B : poly_a]: ((plus_plus_poly_a @ (uminus_uminus_poly_a @ A) @ B) = (minus_minus_poly_a @ B @ A))))). % uminus_add_conv_diff
thf(fact_3_uminus__add__conv__diff, axiom,
    ((![A : a, B : a]: ((plus_plus_a @ (uminus_uminus_a @ A) @ B) = (minus_minus_a @ B @ A))))). % uminus_add_conv_diff
thf(fact_4_mult__minus1, axiom,
    ((![Z : poly_a]: ((times_times_poly_a @ (uminus_uminus_poly_a @ one_one_poly_a) @ Z) = (uminus_uminus_poly_a @ Z))))). % mult_minus1
thf(fact_5_mult__minus1, axiom,
    ((![Z : a]: ((times_times_a @ (uminus_uminus_a @ one_one_a) @ Z) = (uminus_uminus_a @ Z))))). % mult_minus1
thf(fact_6_mult__minus1__right, axiom,
    ((![Z : poly_a]: ((times_times_poly_a @ Z @ (uminus_uminus_poly_a @ one_one_poly_a)) = (uminus_uminus_poly_a @ Z))))). % mult_minus1_right
thf(fact_7_mult__minus1__right, axiom,
    ((![Z : a]: ((times_times_a @ Z @ (uminus_uminus_a @ one_one_a)) = (uminus_uminus_a @ Z))))). % mult_minus1_right
thf(fact_8_poly__minus, axiom,
    ((![P : poly_poly_a, X : poly_a]: ((poly_poly_a2 @ (uminus1736902417poly_a @ P) @ X) = (uminus_uminus_poly_a @ (poly_poly_a2 @ P @ X)))))). % poly_minus
thf(fact_9_poly__minus, axiom,
    ((![P : poly_a, X : a]: ((poly_a2 @ (uminus_uminus_poly_a @ P) @ X) = (uminus_uminus_a @ (poly_a2 @ P @ X)))))). % poly_minus
thf(fact_10_poly__diff, axiom,
    ((![P : poly_poly_a, Q : poly_poly_a, X : poly_a]: ((poly_poly_a2 @ (minus_154650241poly_a @ P @ Q) @ X) = (minus_minus_poly_a @ (poly_poly_a2 @ P @ X) @ (poly_poly_a2 @ Q @ X)))))). % poly_diff
thf(fact_11_poly__diff, axiom,
    ((![P : poly_a, Q : poly_a, X : a]: ((poly_a2 @ (minus_minus_poly_a @ P @ Q) @ X) = (minus_minus_a @ (poly_a2 @ P @ X) @ (poly_a2 @ Q @ X)))))). % poly_diff
thf(fact_12_poly__1, axiom,
    ((![X : poly_a]: ((poly_poly_a2 @ one_one_poly_poly_a @ X) = one_one_poly_a)))). % poly_1
thf(fact_13_poly__1, axiom,
    ((![X : a]: ((poly_a2 @ one_one_poly_a @ X) = one_one_a)))). % poly_1
thf(fact_14_poly__add, axiom,
    ((![P : poly_poly_a, Q : poly_poly_a, X : poly_a]: ((poly_poly_a2 @ (plus_p1976640465poly_a @ P @ Q) @ X) = (plus_plus_poly_a @ (poly_poly_a2 @ P @ X) @ (poly_poly_a2 @ Q @ X)))))). % poly_add
thf(fact_15_poly__add, axiom,
    ((![P : poly_a, Q : poly_a, X : a]: ((poly_a2 @ (plus_plus_poly_a @ P @ Q) @ X) = (plus_plus_a @ (poly_a2 @ P @ X) @ (poly_a2 @ Q @ X)))))). % poly_add
thf(fact_16_poly__mult, axiom,
    ((![P : poly_poly_a, Q : poly_poly_a, X : poly_a]: ((poly_poly_a2 @ (times_545135445poly_a @ P @ Q) @ X) = (times_times_poly_a @ (poly_poly_a2 @ P @ X) @ (poly_poly_a2 @ Q @ X)))))). % poly_mult
thf(fact_17_poly__mult, axiom,
    ((![P : poly_a, Q : poly_a, X : a]: ((poly_a2 @ (times_times_poly_a @ P @ Q) @ X) = (times_times_a @ (poly_a2 @ P @ X) @ (poly_a2 @ Q @ X)))))). % poly_mult
thf(fact_18_minus__diff__eq, axiom,
    ((![A : poly_a, B : poly_a]: ((uminus_uminus_poly_a @ (minus_minus_poly_a @ A @ B)) = (minus_minus_poly_a @ B @ A))))). % minus_diff_eq
thf(fact_19_minus__diff__eq, axiom,
    ((![A : a, B : a]: ((uminus_uminus_a @ (minus_minus_a @ A @ B)) = (minus_minus_a @ B @ A))))). % minus_diff_eq
thf(fact_20_add__minus__cancel, axiom,
    ((![A : a, B : a]: ((plus_plus_a @ A @ (plus_plus_a @ (uminus_uminus_a @ A) @ B)) = B)))). % add_minus_cancel
thf(fact_21_add__minus__cancel, axiom,
    ((![A : poly_a, B : poly_a]: ((plus_plus_poly_a @ A @ (plus_plus_poly_a @ (uminus_uminus_poly_a @ A) @ B)) = B)))). % add_minus_cancel
thf(fact_22_minus__add__cancel, axiom,
    ((![A : a, B : a]: ((plus_plus_a @ (uminus_uminus_a @ A) @ (plus_plus_a @ A @ B)) = B)))). % minus_add_cancel
thf(fact_23_minus__add__cancel, axiom,
    ((![A : poly_a, B : poly_a]: ((plus_plus_poly_a @ (uminus_uminus_poly_a @ A) @ (plus_plus_poly_a @ A @ B)) = B)))). % minus_add_cancel
thf(fact_24_add__right__cancel, axiom,
    ((![B : a, A : a, C : a]: (((plus_plus_a @ B @ A) = (plus_plus_a @ C @ A)) = (B = C))))). % add_right_cancel
thf(fact_25_add__right__cancel, axiom,
    ((![B : poly_a, A : poly_a, C : poly_a]: (((plus_plus_poly_a @ B @ A) = (plus_plus_poly_a @ C @ A)) = (B = C))))). % add_right_cancel
thf(fact_26_add__left__cancel, axiom,
    ((![A : a, B : a, C : a]: (((plus_plus_a @ A @ B) = (plus_plus_a @ A @ C)) = (B = C))))). % add_left_cancel
thf(fact_27_add__left__cancel, axiom,
    ((![A : poly_a, B : poly_a, C : poly_a]: (((plus_plus_poly_a @ A @ B) = (plus_plus_poly_a @ A @ C)) = (B = C))))). % add_left_cancel
thf(fact_28_neg__equal__iff__equal, axiom,
    ((![A : a, B : a]: (((uminus_uminus_a @ A) = (uminus_uminus_a @ B)) = (A = B))))). % neg_equal_iff_equal
thf(fact_29_neg__equal__iff__equal, axiom,
    ((![A : poly_a, B : poly_a]: (((uminus_uminus_poly_a @ A) = (uminus_uminus_poly_a @ B)) = (A = B))))). % neg_equal_iff_equal
thf(fact_30_add_Oinverse__inverse, axiom,
    ((![A : a]: ((uminus_uminus_a @ (uminus_uminus_a @ A)) = A)))). % add.inverse_inverse
thf(fact_31_add_Oinverse__inverse, axiom,
    ((![A : poly_a]: ((uminus_uminus_poly_a @ (uminus_uminus_poly_a @ A)) = A)))). % add.inverse_inverse
thf(fact_32_mult_Oright__neutral, axiom,
    ((![A : a]: ((times_times_a @ A @ one_one_a) = A)))). % mult.right_neutral
thf(fact_33_mult_Oright__neutral, axiom,
    ((![A : poly_a]: ((times_times_poly_a @ A @ one_one_poly_a) = A)))). % mult.right_neutral
thf(fact_34_mult_Oleft__neutral, axiom,
    ((![A : a]: ((times_times_a @ one_one_a @ A) = A)))). % mult.left_neutral
thf(fact_35_mult_Oleft__neutral, axiom,
    ((![A : poly_a]: ((times_times_poly_a @ one_one_poly_a @ A) = A)))). % mult.left_neutral
thf(fact_36_add__diff__cancel__right_H, axiom,
    ((![A : a, B : a]: ((minus_minus_a @ (plus_plus_a @ A @ B) @ B) = A)))). % add_diff_cancel_right'
thf(fact_37_add__diff__cancel__right_H, axiom,
    ((![A : poly_a, B : poly_a]: ((minus_minus_poly_a @ (plus_plus_poly_a @ A @ B) @ B) = A)))). % add_diff_cancel_right'
thf(fact_38_add__diff__cancel__right, axiom,
    ((![A : a, C : a, B : a]: ((minus_minus_a @ (plus_plus_a @ A @ C) @ (plus_plus_a @ B @ C)) = (minus_minus_a @ A @ B))))). % add_diff_cancel_right
thf(fact_39_add__diff__cancel__right, axiom,
    ((![A : poly_a, C : poly_a, B : poly_a]: ((minus_minus_poly_a @ (plus_plus_poly_a @ A @ C) @ (plus_plus_poly_a @ B @ C)) = (minus_minus_poly_a @ A @ B))))). % add_diff_cancel_right
thf(fact_40_add__diff__cancel__left_H, axiom,
    ((![A : a, B : a]: ((minus_minus_a @ (plus_plus_a @ A @ B) @ A) = B)))). % add_diff_cancel_left'
thf(fact_41_add__diff__cancel__left_H, axiom,
    ((![A : poly_a, B : poly_a]: ((minus_minus_poly_a @ (plus_plus_poly_a @ A @ B) @ A) = B)))). % add_diff_cancel_left'
thf(fact_42_add__diff__cancel__left, axiom,
    ((![C : a, A : a, B : a]: ((minus_minus_a @ (plus_plus_a @ C @ A) @ (plus_plus_a @ C @ B)) = (minus_minus_a @ A @ B))))). % add_diff_cancel_left
thf(fact_43_add__diff__cancel__left, axiom,
    ((![C : poly_a, A : poly_a, B : poly_a]: ((minus_minus_poly_a @ (plus_plus_poly_a @ C @ A) @ (plus_plus_poly_a @ C @ B)) = (minus_minus_poly_a @ A @ B))))). % add_diff_cancel_left
thf(fact_44_diff__add__cancel, axiom,
    ((![A : a, B : a]: ((plus_plus_a @ (minus_minus_a @ A @ B) @ B) = A)))). % diff_add_cancel
thf(fact_45_diff__add__cancel, axiom,
    ((![A : poly_a, B : poly_a]: ((plus_plus_poly_a @ (minus_minus_poly_a @ A @ B) @ B) = A)))). % diff_add_cancel
thf(fact_46_add__diff__cancel, axiom,
    ((![A : a, B : a]: ((minus_minus_a @ (plus_plus_a @ A @ B) @ B) = A)))). % add_diff_cancel
thf(fact_47_add__diff__cancel, axiom,
    ((![A : poly_a, B : poly_a]: ((minus_minus_poly_a @ (plus_plus_poly_a @ A @ B) @ B) = A)))). % add_diff_cancel
thf(fact_48_minus__add__distrib, axiom,
    ((![A : a, B : a]: ((uminus_uminus_a @ (plus_plus_a @ A @ B)) = (plus_plus_a @ (uminus_uminus_a @ A) @ (uminus_uminus_a @ B)))))). % minus_add_distrib
thf(fact_49_minus__add__distrib, axiom,
    ((![A : poly_a, B : poly_a]: ((uminus_uminus_poly_a @ (plus_plus_poly_a @ A @ B)) = (plus_plus_poly_a @ (uminus_uminus_poly_a @ A) @ (uminus_uminus_poly_a @ B)))))). % minus_add_distrib
thf(fact_50_mult__poly__add__left, axiom,
    ((![P : poly_a, Q : poly_a, R : poly_a]: ((times_times_poly_a @ (plus_plus_poly_a @ P @ Q) @ R) = (plus_plus_poly_a @ (times_times_poly_a @ P @ R) @ (times_times_poly_a @ Q @ R)))))). % mult_poly_add_left
thf(fact_51_mult_Oleft__commute, axiom,
    ((![B : a, A : a, C : a]: ((times_times_a @ B @ (times_times_a @ A @ C)) = (times_times_a @ A @ (times_times_a @ B @ C)))))). % mult.left_commute
thf(fact_52_mult_Oleft__commute, axiom,
    ((![B : poly_a, A : poly_a, C : poly_a]: ((times_times_poly_a @ B @ (times_times_poly_a @ A @ C)) = (times_times_poly_a @ A @ (times_times_poly_a @ B @ C)))))). % mult.left_commute
thf(fact_53_mult_Ocommute, axiom,
    ((times_times_a = (^[A2 : a]: (^[B2 : a]: (times_times_a @ B2 @ A2)))))). % mult.commute
thf(fact_54_mult_Ocommute, axiom,
    ((times_times_poly_a = (^[A2 : poly_a]: (^[B2 : poly_a]: (times_times_poly_a @ B2 @ A2)))))). % mult.commute
thf(fact_55_mult_Oassoc, axiom,
    ((![A : a, B : a, C : a]: ((times_times_a @ (times_times_a @ A @ B) @ C) = (times_times_a @ A @ (times_times_a @ B @ C)))))). % mult.assoc
thf(fact_56_mult_Oassoc, axiom,
    ((![A : poly_a, B : poly_a, C : poly_a]: ((times_times_poly_a @ (times_times_poly_a @ A @ B) @ C) = (times_times_poly_a @ A @ (times_times_poly_a @ B @ C)))))). % mult.assoc
thf(fact_57_ab__semigroup__mult__class_Omult__ac_I1_J, axiom,
    ((![A : a, B : a, C : a]: ((times_times_a @ (times_times_a @ A @ B) @ C) = (times_times_a @ A @ (times_times_a @ B @ C)))))). % ab_semigroup_mult_class.mult_ac(1)
thf(fact_58_ab__semigroup__mult__class_Omult__ac_I1_J, axiom,
    ((![A : poly_a, B : poly_a, C : poly_a]: ((times_times_poly_a @ (times_times_poly_a @ A @ B) @ C) = (times_times_poly_a @ A @ (times_times_poly_a @ B @ C)))))). % ab_semigroup_mult_class.mult_ac(1)
thf(fact_59_add__right__imp__eq, axiom,
    ((![B : a, A : a, C : a]: (((plus_plus_a @ B @ A) = (plus_plus_a @ C @ A)) => (B = C))))). % add_right_imp_eq
thf(fact_60_add__right__imp__eq, axiom,
    ((![B : poly_a, A : poly_a, C : poly_a]: (((plus_plus_poly_a @ B @ A) = (plus_plus_poly_a @ C @ A)) => (B = C))))). % add_right_imp_eq
thf(fact_61_add__left__imp__eq, axiom,
    ((![A : a, B : a, C : a]: (((plus_plus_a @ A @ B) = (plus_plus_a @ A @ C)) => (B = C))))). % add_left_imp_eq
thf(fact_62_add__left__imp__eq, axiom,
    ((![A : poly_a, B : poly_a, C : poly_a]: (((plus_plus_poly_a @ A @ B) = (plus_plus_poly_a @ A @ C)) => (B = C))))). % add_left_imp_eq
thf(fact_63_add_Oleft__commute, axiom,
    ((![B : a, A : a, C : a]: ((plus_plus_a @ B @ (plus_plus_a @ A @ C)) = (plus_plus_a @ A @ (plus_plus_a @ B @ C)))))). % add.left_commute
thf(fact_64_add_Oleft__commute, axiom,
    ((![B : poly_a, A : poly_a, C : poly_a]: ((plus_plus_poly_a @ B @ (plus_plus_poly_a @ A @ C)) = (plus_plus_poly_a @ A @ (plus_plus_poly_a @ B @ C)))))). % add.left_commute
thf(fact_65_add_Ocommute, axiom,
    ((plus_plus_a = (^[A2 : a]: (^[B2 : a]: (plus_plus_a @ B2 @ A2)))))). % add.commute
thf(fact_66_add_Ocommute, axiom,
    ((plus_plus_poly_a = (^[A2 : poly_a]: (^[B2 : poly_a]: (plus_plus_poly_a @ B2 @ A2)))))). % add.commute
thf(fact_67_add_Oright__cancel, axiom,
    ((![B : a, A : a, C : a]: (((plus_plus_a @ B @ A) = (plus_plus_a @ C @ A)) = (B = C))))). % add.right_cancel
thf(fact_68_add_Oright__cancel, axiom,
    ((![B : poly_a, A : poly_a, C : poly_a]: (((plus_plus_poly_a @ B @ A) = (plus_plus_poly_a @ C @ A)) = (B = C))))). % add.right_cancel
thf(fact_69_add_Oleft__cancel, axiom,
    ((![A : a, B : a, C : a]: (((plus_plus_a @ A @ B) = (plus_plus_a @ A @ C)) = (B = C))))). % add.left_cancel
thf(fact_70_add_Oleft__cancel, axiom,
    ((![A : poly_a, B : poly_a, C : poly_a]: (((plus_plus_poly_a @ A @ B) = (plus_plus_poly_a @ A @ C)) = (B = C))))). % add.left_cancel
thf(fact_71_add_Oassoc, axiom,
    ((![A : a, B : a, C : a]: ((plus_plus_a @ (plus_plus_a @ A @ B) @ C) = (plus_plus_a @ A @ (plus_plus_a @ B @ C)))))). % add.assoc
thf(fact_72_add_Oassoc, axiom,
    ((![A : poly_a, B : poly_a, C : poly_a]: ((plus_plus_poly_a @ (plus_plus_poly_a @ A @ B) @ C) = (plus_plus_poly_a @ A @ (plus_plus_poly_a @ B @ C)))))). % add.assoc
thf(fact_73_group__cancel_Oadd2, axiom,
    ((![B3 : a, K : a, B : a, A : a]: ((B3 = (plus_plus_a @ K @ B)) => ((plus_plus_a @ A @ B3) = (plus_plus_a @ K @ (plus_plus_a @ A @ B))))))). % group_cancel.add2
thf(fact_74_group__cancel_Oadd2, axiom,
    ((![B3 : poly_a, K : poly_a, B : poly_a, A : poly_a]: ((B3 = (plus_plus_poly_a @ K @ B)) => ((plus_plus_poly_a @ A @ B3) = (plus_plus_poly_a @ K @ (plus_plus_poly_a @ A @ B))))))). % group_cancel.add2
thf(fact_75_group__cancel_Oadd1, axiom,
    ((![A3 : a, K : a, A : a, B : a]: ((A3 = (plus_plus_a @ K @ A)) => ((plus_plus_a @ A3 @ B) = (plus_plus_a @ K @ (plus_plus_a @ A @ B))))))). % group_cancel.add1
thf(fact_76_group__cancel_Oadd1, axiom,
    ((![A3 : poly_a, K : poly_a, A : poly_a, B : poly_a]: ((A3 = (plus_plus_poly_a @ K @ A)) => ((plus_plus_poly_a @ A3 @ B) = (plus_plus_poly_a @ K @ (plus_plus_poly_a @ A @ B))))))). % group_cancel.add1
thf(fact_77_is__num__normalize_I1_J, axiom,
    ((![A : a, B : a, C : a]: ((plus_plus_a @ (plus_plus_a @ A @ B) @ C) = (plus_plus_a @ A @ (plus_plus_a @ B @ C)))))). % is_num_normalize(1)
thf(fact_78_is__num__normalize_I1_J, axiom,
    ((![A : poly_a, B : poly_a, C : poly_a]: ((plus_plus_poly_a @ (plus_plus_poly_a @ A @ B) @ C) = (plus_plus_poly_a @ A @ (plus_plus_poly_a @ B @ C)))))). % is_num_normalize(1)
thf(fact_79_ab__semigroup__add__class_Oadd__ac_I1_J, axiom,
    ((![A : a, B : a, C : a]: ((plus_plus_a @ (plus_plus_a @ A @ B) @ C) = (plus_plus_a @ A @ (plus_plus_a @ B @ C)))))). % ab_semigroup_add_class.add_ac(1)
thf(fact_80_ab__semigroup__add__class_Oadd__ac_I1_J, axiom,
    ((![A : poly_a, B : poly_a, C : poly_a]: ((plus_plus_poly_a @ (plus_plus_poly_a @ A @ B) @ C) = (plus_plus_poly_a @ A @ (plus_plus_poly_a @ B @ C)))))). % ab_semigroup_add_class.add_ac(1)
thf(fact_81_one__reorient, axiom,
    ((![X : a]: ((one_one_a = X) = (X = one_one_a))))). % one_reorient
thf(fact_82_one__reorient, axiom,
    ((![X : poly_a]: ((one_one_poly_a = X) = (X = one_one_poly_a))))). % one_reorient
thf(fact_83_cancel__ab__semigroup__add__class_Odiff__right__commute, axiom,
    ((![A : a, C : a, B : a]: ((minus_minus_a @ (minus_minus_a @ A @ C) @ B) = (minus_minus_a @ (minus_minus_a @ A @ B) @ C))))). % cancel_ab_semigroup_add_class.diff_right_commute
thf(fact_84_cancel__ab__semigroup__add__class_Odiff__right__commute, axiom,
    ((![A : poly_a, C : poly_a, B : poly_a]: ((minus_minus_poly_a @ (minus_minus_poly_a @ A @ C) @ B) = (minus_minus_poly_a @ (minus_minus_poly_a @ A @ B) @ C))))). % cancel_ab_semigroup_add_class.diff_right_commute
thf(fact_85_diff__eq__diff__eq, axiom,
    ((![A : a, B : a, C : a, D : a]: (((minus_minus_a @ A @ B) = (minus_minus_a @ C @ D)) => ((A = B) = (C = D)))))). % diff_eq_diff_eq
thf(fact_86_diff__eq__diff__eq, axiom,
    ((![A : poly_a, B : poly_a, C : poly_a, D : poly_a]: (((minus_minus_poly_a @ A @ B) = (minus_minus_poly_a @ C @ D)) => ((A = B) = (C = D)))))). % diff_eq_diff_eq
thf(fact_87_minus__equation__iff, axiom,
    ((![A : a, B : a]: (((uminus_uminus_a @ A) = B) = ((uminus_uminus_a @ B) = A))))). % minus_equation_iff
thf(fact_88_minus__equation__iff, axiom,
    ((![A : poly_a, B : poly_a]: (((uminus_uminus_poly_a @ A) = B) = ((uminus_uminus_poly_a @ B) = A))))). % minus_equation_iff
thf(fact_89_equation__minus__iff, axiom,
    ((![A : a, B : a]: ((A = (uminus_uminus_a @ B)) = (B = (uminus_uminus_a @ A)))))). % equation_minus_iff
thf(fact_90_equation__minus__iff, axiom,
    ((![A : poly_a, B : poly_a]: ((A = (uminus_uminus_poly_a @ B)) = (B = (uminus_uminus_poly_a @ A)))))). % equation_minus_iff
thf(fact_91_mult_Ocomm__neutral, axiom,
    ((![A : a]: ((times_times_a @ A @ one_one_a) = A)))). % mult.comm_neutral
thf(fact_92_mult_Ocomm__neutral, axiom,
    ((![A : poly_a]: ((times_times_poly_a @ A @ one_one_poly_a) = A)))). % mult.comm_neutral
thf(fact_93_comm__monoid__mult__class_Omult__1, axiom,
    ((![A : a]: ((times_times_a @ one_one_a @ A) = A)))). % comm_monoid_mult_class.mult_1
thf(fact_94_comm__monoid__mult__class_Omult__1, axiom,
    ((![A : poly_a]: ((times_times_poly_a @ one_one_poly_a @ A) = A)))). % comm_monoid_mult_class.mult_1
thf(fact_95_add__implies__diff, axiom,
    ((![C : a, B : a, A : a]: (((plus_plus_a @ C @ B) = A) => (C = (minus_minus_a @ A @ B)))))). % add_implies_diff
thf(fact_96_add__implies__diff, axiom,
    ((![C : poly_a, B : poly_a, A : poly_a]: (((plus_plus_poly_a @ C @ B) = A) => (C = (minus_minus_poly_a @ A @ B)))))). % add_implies_diff
thf(fact_97_diff__diff__add, axiom,
    ((![A : a, B : a, C : a]: ((minus_minus_a @ (minus_minus_a @ A @ B) @ C) = (minus_minus_a @ A @ (plus_plus_a @ B @ C)))))). % diff_diff_add
thf(fact_98_diff__diff__add, axiom,
    ((![A : poly_a, B : poly_a, C : poly_a]: ((minus_minus_poly_a @ (minus_minus_poly_a @ A @ B) @ C) = (minus_minus_poly_a @ A @ (plus_plus_poly_a @ B @ C)))))). % diff_diff_add
thf(fact_99_diff__add__eq__diff__diff__swap, axiom,
    ((![A : a, B : a, C : a]: ((minus_minus_a @ A @ (plus_plus_a @ B @ C)) = (minus_minus_a @ (minus_minus_a @ A @ C) @ B))))). % diff_add_eq_diff_diff_swap
thf(fact_100_diff__add__eq__diff__diff__swap, axiom,
    ((![A : poly_a, B : poly_a, C : poly_a]: ((minus_minus_poly_a @ A @ (plus_plus_poly_a @ B @ C)) = (minus_minus_poly_a @ (minus_minus_poly_a @ A @ C) @ B))))). % diff_add_eq_diff_diff_swap
thf(fact_101_diff__add__eq, axiom,
    ((![A : a, B : a, C : a]: ((plus_plus_a @ (minus_minus_a @ A @ B) @ C) = (minus_minus_a @ (plus_plus_a @ A @ C) @ B))))). % diff_add_eq
thf(fact_102_diff__add__eq, axiom,
    ((![A : poly_a, B : poly_a, C : poly_a]: ((plus_plus_poly_a @ (minus_minus_poly_a @ A @ B) @ C) = (minus_minus_poly_a @ (plus_plus_poly_a @ A @ C) @ B))))). % diff_add_eq
thf(fact_103_diff__diff__eq2, axiom,
    ((![A : a, B : a, C : a]: ((minus_minus_a @ A @ (minus_minus_a @ B @ C)) = (minus_minus_a @ (plus_plus_a @ A @ C) @ B))))). % diff_diff_eq2
thf(fact_104_diff__diff__eq2, axiom,
    ((![A : poly_a, B : poly_a, C : poly_a]: ((minus_minus_poly_a @ A @ (minus_minus_poly_a @ B @ C)) = (minus_minus_poly_a @ (plus_plus_poly_a @ A @ C) @ B))))). % diff_diff_eq2
thf(fact_105_add__diff__eq, axiom,
    ((![A : a, B : a, C : a]: ((plus_plus_a @ A @ (minus_minus_a @ B @ C)) = (minus_minus_a @ (plus_plus_a @ A @ B) @ C))))). % add_diff_eq
thf(fact_106_add__diff__eq, axiom,
    ((![A : poly_a, B : poly_a, C : poly_a]: ((plus_plus_poly_a @ A @ (minus_minus_poly_a @ B @ C)) = (minus_minus_poly_a @ (plus_plus_poly_a @ A @ B) @ C))))). % add_diff_eq
thf(fact_107_eq__diff__eq, axiom,
    ((![A : a, C : a, B : a]: ((A = (minus_minus_a @ C @ B)) = ((plus_plus_a @ A @ B) = C))))). % eq_diff_eq
thf(fact_108_eq__diff__eq, axiom,
    ((![A : poly_a, C : poly_a, B : poly_a]: ((A = (minus_minus_poly_a @ C @ B)) = ((plus_plus_poly_a @ A @ B) = C))))). % eq_diff_eq
thf(fact_109_diff__eq__eq, axiom,
    ((![A : a, B : a, C : a]: (((minus_minus_a @ A @ B) = C) = (A = (plus_plus_a @ C @ B)))))). % diff_eq_eq
thf(fact_110_diff__eq__eq, axiom,
    ((![A : poly_a, B : poly_a, C : poly_a]: (((minus_minus_poly_a @ A @ B) = C) = (A = (plus_plus_poly_a @ C @ B)))))). % diff_eq_eq
thf(fact_111_group__cancel_Osub1, axiom,
    ((![A3 : a, K : a, A : a, B : a]: ((A3 = (plus_plus_a @ K @ A)) => ((minus_minus_a @ A3 @ B) = (plus_plus_a @ K @ (minus_minus_a @ A @ B))))))). % group_cancel.sub1
thf(fact_112_group__cancel_Osub1, axiom,
    ((![A3 : poly_a, K : poly_a, A : poly_a, B : poly_a]: ((A3 = (plus_plus_poly_a @ K @ A)) => ((minus_minus_poly_a @ A3 @ B) = (plus_plus_poly_a @ K @ (minus_minus_poly_a @ A @ B))))))). % group_cancel.sub1
thf(fact_113_add_Oinverse__distrib__swap, axiom,
    ((![A : a, B : a]: ((uminus_uminus_a @ (plus_plus_a @ A @ B)) = (plus_plus_a @ (uminus_uminus_a @ B) @ (uminus_uminus_a @ A)))))). % add.inverse_distrib_swap
thf(fact_114_add_Oinverse__distrib__swap, axiom,
    ((![A : poly_a, B : poly_a]: ((uminus_uminus_poly_a @ (plus_plus_poly_a @ A @ B)) = (plus_plus_poly_a @ (uminus_uminus_poly_a @ B) @ (uminus_uminus_poly_a @ A)))))). % add.inverse_distrib_swap
thf(fact_115_group__cancel_Oneg1, axiom,
    ((![A3 : a, K : a, A : a]: ((A3 = (plus_plus_a @ K @ A)) => ((uminus_uminus_a @ A3) = (plus_plus_a @ (uminus_uminus_a @ K) @ (uminus_uminus_a @ A))))))). % group_cancel.neg1
thf(fact_116_group__cancel_Oneg1, axiom,
    ((![A3 : poly_a, K : poly_a, A : poly_a]: ((A3 = (plus_plus_poly_a @ K @ A)) => ((uminus_uminus_poly_a @ A3) = (plus_plus_poly_a @ (uminus_uminus_poly_a @ K) @ (uminus_uminus_poly_a @ A))))))). % group_cancel.neg1
thf(fact_117_is__num__normalize_I8_J, axiom,
    ((![A : a, B : a]: ((uminus_uminus_a @ (plus_plus_a @ A @ B)) = (plus_plus_a @ (uminus_uminus_a @ B) @ (uminus_uminus_a @ A)))))). % is_num_normalize(8)
thf(fact_118_is__num__normalize_I8_J, axiom,
    ((![A : poly_a, B : poly_a]: ((uminus_uminus_poly_a @ (plus_plus_poly_a @ A @ B)) = (plus_plus_poly_a @ (uminus_uminus_poly_a @ B) @ (uminus_uminus_poly_a @ A)))))). % is_num_normalize(8)
thf(fact_119_minus__diff__commute, axiom,
    ((![B : a, A : a]: ((minus_minus_a @ (uminus_uminus_a @ B) @ A) = (minus_minus_a @ (uminus_uminus_a @ A) @ B))))). % minus_diff_commute
thf(fact_120_minus__diff__commute, axiom,
    ((![B : poly_a, A : poly_a]: ((minus_minus_poly_a @ (uminus_uminus_poly_a @ B) @ A) = (minus_minus_poly_a @ (uminus_uminus_poly_a @ A) @ B))))). % minus_diff_commute
thf(fact_121_ab__group__add__class_Oab__diff__conv__add__uminus, axiom,
    ((minus_minus_a = (^[A2 : a]: (^[B2 : a]: (plus_plus_a @ A2 @ (uminus_uminus_a @ B2))))))). % ab_group_add_class.ab_diff_conv_add_uminus
thf(fact_122_ab__group__add__class_Oab__diff__conv__add__uminus, axiom,
    ((minus_minus_poly_a = (^[A2 : poly_a]: (^[B2 : poly_a]: (plus_plus_poly_a @ A2 @ (uminus_uminus_poly_a @ B2))))))). % ab_group_add_class.ab_diff_conv_add_uminus
thf(fact_123_diff__conv__add__uminus, axiom,
    ((minus_minus_a = (^[A2 : a]: (^[B2 : a]: (plus_plus_a @ A2 @ (uminus_uminus_a @ B2))))))). % diff_conv_add_uminus
thf(fact_124_diff__conv__add__uminus, axiom,
    ((minus_minus_poly_a = (^[A2 : poly_a]: (^[B2 : poly_a]: (plus_plus_poly_a @ A2 @ (uminus_uminus_poly_a @ B2))))))). % diff_conv_add_uminus
thf(fact_125_group__cancel_Osub2, axiom,
    ((![B3 : a, K : a, B : a, A : a]: ((B3 = (plus_plus_a @ K @ B)) => ((minus_minus_a @ A @ B3) = (plus_plus_a @ (uminus_uminus_a @ K) @ (minus_minus_a @ A @ B))))))). % group_cancel.sub2
thf(fact_126_group__cancel_Osub2, axiom,
    ((![B3 : poly_a, K : poly_a, B : poly_a, A : poly_a]: ((B3 = (plus_plus_poly_a @ K @ B)) => ((minus_minus_poly_a @ A @ B3) = (plus_plus_poly_a @ (uminus_uminus_poly_a @ K) @ (minus_minus_poly_a @ A @ B))))))). % group_cancel.sub2
thf(fact_127_mult__minus__right, axiom,
    ((![A : a, B : a]: ((times_times_a @ A @ (uminus_uminus_a @ B)) = (uminus_uminus_a @ (times_times_a @ A @ B)))))). % mult_minus_right
thf(fact_128_mult__minus__right, axiom,
    ((![A : poly_a, B : poly_a]: ((times_times_poly_a @ A @ (uminus_uminus_poly_a @ B)) = (uminus_uminus_poly_a @ (times_times_poly_a @ A @ B)))))). % mult_minus_right
thf(fact_129_minus__mult__minus, axiom,
    ((![A : a, B : a]: ((times_times_a @ (uminus_uminus_a @ A) @ (uminus_uminus_a @ B)) = (times_times_a @ A @ B))))). % minus_mult_minus
thf(fact_130_minus__mult__minus, axiom,
    ((![A : poly_a, B : poly_a]: ((times_times_poly_a @ (uminus_uminus_poly_a @ A) @ (uminus_uminus_poly_a @ B)) = (times_times_poly_a @ A @ B))))). % minus_mult_minus
thf(fact_131_mult__minus__left, axiom,
    ((![A : a, B : a]: ((times_times_a @ (uminus_uminus_a @ A) @ B) = (uminus_uminus_a @ (times_times_a @ A @ B)))))). % mult_minus_left
thf(fact_132_mult__minus__left, axiom,
    ((![A : poly_a, B : poly_a]: ((times_times_poly_a @ (uminus_uminus_poly_a @ A) @ B) = (uminus_uminus_poly_a @ (times_times_poly_a @ A @ B)))))). % mult_minus_left
thf(fact_133_square__diff__one__factored, axiom,
    ((![X : a]: ((minus_minus_a @ (times_times_a @ X @ X) @ one_one_a) = (times_times_a @ (plus_plus_a @ X @ one_one_a) @ (minus_minus_a @ X @ one_one_a)))))). % square_diff_one_factored
thf(fact_134_square__diff__one__factored, axiom,
    ((![X : poly_a]: ((minus_minus_poly_a @ (times_times_poly_a @ X @ X) @ one_one_poly_a) = (times_times_poly_a @ (plus_plus_poly_a @ X @ one_one_poly_a) @ (minus_minus_poly_a @ X @ one_one_poly_a)))))). % square_diff_one_factored
thf(fact_135_square__diff__square__factored, axiom,
    ((![X : a, Y : a]: ((minus_minus_a @ (times_times_a @ X @ X) @ (times_times_a @ Y @ Y)) = (times_times_a @ (plus_plus_a @ X @ Y) @ (minus_minus_a @ X @ Y)))))). % square_diff_square_factored
thf(fact_136_square__diff__square__factored, axiom,
    ((![X : poly_a, Y : poly_a]: ((minus_minus_poly_a @ (times_times_poly_a @ X @ X) @ (times_times_poly_a @ Y @ Y)) = (times_times_poly_a @ (plus_plus_poly_a @ X @ Y) @ (minus_minus_poly_a @ X @ Y)))))). % square_diff_square_factored
thf(fact_137_eq__add__iff2, axiom,
    ((![A : a, E : a, C : a, B : a, D : a]: (((plus_plus_a @ (times_times_a @ A @ E) @ C) = (plus_plus_a @ (times_times_a @ B @ E) @ D)) = (C = (plus_plus_a @ (times_times_a @ (minus_minus_a @ B @ A) @ E) @ D)))))). % eq_add_iff2
thf(fact_138_eq__add__iff2, axiom,
    ((![A : poly_a, E : poly_a, C : poly_a, B : poly_a, D : poly_a]: (((plus_plus_poly_a @ (times_times_poly_a @ A @ E) @ C) = (plus_plus_poly_a @ (times_times_poly_a @ B @ E) @ D)) = (C = (plus_plus_poly_a @ (times_times_poly_a @ (minus_minus_poly_a @ B @ A) @ E) @ D)))))). % eq_add_iff2
thf(fact_139_eq__add__iff1, axiom,
    ((![A : a, E : a, C : a, B : a, D : a]: (((plus_plus_a @ (times_times_a @ A @ E) @ C) = (plus_plus_a @ (times_times_a @ B @ E) @ D)) = ((plus_plus_a @ (times_times_a @ (minus_minus_a @ A @ B) @ E) @ C) = D))))). % eq_add_iff1
thf(fact_140_eq__add__iff1, axiom,
    ((![A : poly_a, E : poly_a, C : poly_a, B : poly_a, D : poly_a]: (((plus_plus_poly_a @ (times_times_poly_a @ A @ E) @ C) = (plus_plus_poly_a @ (times_times_poly_a @ B @ E) @ D)) = ((plus_plus_poly_a @ (times_times_poly_a @ (minus_minus_poly_a @ A @ B) @ E) @ C) = D))))). % eq_add_iff1
thf(fact_141_mult__diff__mult, axiom,
    ((![X : a, Y : a, A : a, B : a]: ((minus_minus_a @ (times_times_a @ X @ Y) @ (times_times_a @ A @ B)) = (plus_plus_a @ (times_times_a @ X @ (minus_minus_a @ Y @ B)) @ (times_times_a @ (minus_minus_a @ X @ A) @ B)))))). % mult_diff_mult
thf(fact_142_mult__diff__mult, axiom,
    ((![X : poly_a, Y : poly_a, A : poly_a, B : poly_a]: ((minus_minus_poly_a @ (times_times_poly_a @ X @ Y) @ (times_times_poly_a @ A @ B)) = (plus_plus_poly_a @ (times_times_poly_a @ X @ (minus_minus_poly_a @ Y @ B)) @ (times_times_poly_a @ (minus_minus_poly_a @ X @ A) @ B)))))). % mult_diff_mult
thf(fact_143_ring__class_Oring__distribs_I2_J, axiom,
    ((![A : a, B : a, C : a]: ((times_times_a @ (plus_plus_a @ A @ B) @ C) = (plus_plus_a @ (times_times_a @ A @ C) @ (times_times_a @ B @ C)))))). % ring_class.ring_distribs(2)
thf(fact_144_ring__class_Oring__distribs_I2_J, axiom,
    ((![A : poly_a, B : poly_a, C : poly_a]: ((times_times_poly_a @ (plus_plus_poly_a @ A @ B) @ C) = (plus_plus_poly_a @ (times_times_poly_a @ A @ C) @ (times_times_poly_a @ B @ C)))))). % ring_class.ring_distribs(2)
thf(fact_145_ring__class_Oring__distribs_I1_J, axiom,
    ((![A : a, B : a, C : a]: ((times_times_a @ A @ (plus_plus_a @ B @ C)) = (plus_plus_a @ (times_times_a @ A @ B) @ (times_times_a @ A @ C)))))). % ring_class.ring_distribs(1)
thf(fact_146_ring__class_Oring__distribs_I1_J, axiom,
    ((![A : poly_a, B : poly_a, C : poly_a]: ((times_times_poly_a @ A @ (plus_plus_poly_a @ B @ C)) = (plus_plus_poly_a @ (times_times_poly_a @ A @ B) @ (times_times_poly_a @ A @ C)))))). % ring_class.ring_distribs(1)
thf(fact_147_comm__semiring__class_Odistrib, axiom,
    ((![A : a, B : a, C : a]: ((times_times_a @ (plus_plus_a @ A @ B) @ C) = (plus_plus_a @ (times_times_a @ A @ C) @ (times_times_a @ B @ C)))))). % comm_semiring_class.distrib
thf(fact_148_comm__semiring__class_Odistrib, axiom,
    ((![A : poly_a, B : poly_a, C : poly_a]: ((times_times_poly_a @ (plus_plus_poly_a @ A @ B) @ C) = (plus_plus_poly_a @ (times_times_poly_a @ A @ C) @ (times_times_poly_a @ B @ C)))))). % comm_semiring_class.distrib
thf(fact_149_distrib__left, axiom,
    ((![A : a, B : a, C : a]: ((times_times_a @ A @ (plus_plus_a @ B @ C)) = (plus_plus_a @ (times_times_a @ A @ B) @ (times_times_a @ A @ C)))))). % distrib_left
thf(fact_150_distrib__left, axiom,
    ((![A : poly_a, B : poly_a, C : poly_a]: ((times_times_poly_a @ A @ (plus_plus_poly_a @ B @ C)) = (plus_plus_poly_a @ (times_times_poly_a @ A @ B) @ (times_times_poly_a @ A @ C)))))). % distrib_left
thf(fact_151_distrib__right, axiom,
    ((![A : a, B : a, C : a]: ((times_times_a @ (plus_plus_a @ A @ B) @ C) = (plus_plus_a @ (times_times_a @ A @ C) @ (times_times_a @ B @ C)))))). % distrib_right
thf(fact_152_distrib__right, axiom,
    ((![A : poly_a, B : poly_a, C : poly_a]: ((times_times_poly_a @ (plus_plus_poly_a @ A @ B) @ C) = (plus_plus_poly_a @ (times_times_poly_a @ A @ C) @ (times_times_poly_a @ B @ C)))))). % distrib_right
thf(fact_153_combine__common__factor, axiom,
    ((![A : a, E : a, B : a, C : a]: ((plus_plus_a @ (times_times_a @ A @ E) @ (plus_plus_a @ (times_times_a @ B @ E) @ C)) = (plus_plus_a @ (times_times_a @ (plus_plus_a @ A @ B) @ E) @ C))))). % combine_common_factor
thf(fact_154_combine__common__factor, axiom,
    ((![A : poly_a, E : poly_a, B : poly_a, C : poly_a]: ((plus_plus_poly_a @ (times_times_poly_a @ A @ E) @ (plus_plus_poly_a @ (times_times_poly_a @ B @ E) @ C)) = (plus_plus_poly_a @ (times_times_poly_a @ (plus_plus_poly_a @ A @ B) @ E) @ C))))). % combine_common_factor
thf(fact_155_left__diff__distrib, axiom,
    ((![A : a, B : a, C : a]: ((times_times_a @ (minus_minus_a @ A @ B) @ C) = (minus_minus_a @ (times_times_a @ A @ C) @ (times_times_a @ B @ C)))))). % left_diff_distrib
thf(fact_156_left__diff__distrib, axiom,
    ((![A : poly_a, B : poly_a, C : poly_a]: ((times_times_poly_a @ (minus_minus_poly_a @ A @ B) @ C) = (minus_minus_poly_a @ (times_times_poly_a @ A @ C) @ (times_times_poly_a @ B @ C)))))). % left_diff_distrib
thf(fact_157_right__diff__distrib, axiom,
    ((![A : a, B : a, C : a]: ((times_times_a @ A @ (minus_minus_a @ B @ C)) = (minus_minus_a @ (times_times_a @ A @ B) @ (times_times_a @ A @ C)))))). % right_diff_distrib
thf(fact_158_right__diff__distrib, axiom,
    ((![A : poly_a, B : poly_a, C : poly_a]: ((times_times_poly_a @ A @ (minus_minus_poly_a @ B @ C)) = (minus_minus_poly_a @ (times_times_poly_a @ A @ B) @ (times_times_poly_a @ A @ C)))))). % right_diff_distrib
thf(fact_159_left__diff__distrib_H, axiom,
    ((![B : a, C : a, A : a]: ((times_times_a @ (minus_minus_a @ B @ C) @ A) = (minus_minus_a @ (times_times_a @ B @ A) @ (times_times_a @ C @ A)))))). % left_diff_distrib'
thf(fact_160_left__diff__distrib_H, axiom,
    ((![B : poly_a, C : poly_a, A : poly_a]: ((times_times_poly_a @ (minus_minus_poly_a @ B @ C) @ A) = (minus_minus_poly_a @ (times_times_poly_a @ B @ A) @ (times_times_poly_a @ C @ A)))))). % left_diff_distrib'
thf(fact_161_right__diff__distrib_H, axiom,
    ((![A : a, B : a, C : a]: ((times_times_a @ A @ (minus_minus_a @ B @ C)) = (minus_minus_a @ (times_times_a @ A @ B) @ (times_times_a @ A @ C)))))). % right_diff_distrib'
thf(fact_162_right__diff__distrib_H, axiom,
    ((![A : poly_a, B : poly_a, C : poly_a]: ((times_times_poly_a @ A @ (minus_minus_poly_a @ B @ C)) = (minus_minus_poly_a @ (times_times_poly_a @ A @ B) @ (times_times_poly_a @ A @ C)))))). % right_diff_distrib'
thf(fact_163_add__diff__add, axiom,
    ((![A : a, C : a, B : a, D : a]: ((minus_minus_a @ (plus_plus_a @ A @ C) @ (plus_plus_a @ B @ D)) = (plus_plus_a @ (minus_minus_a @ A @ B) @ (minus_minus_a @ C @ D)))))). % add_diff_add
thf(fact_164_add__diff__add, axiom,
    ((![A : poly_a, C : poly_a, B : poly_a, D : poly_a]: ((minus_minus_poly_a @ (plus_plus_poly_a @ A @ C) @ (plus_plus_poly_a @ B @ D)) = (plus_plus_poly_a @ (minus_minus_poly_a @ A @ B) @ (minus_minus_poly_a @ C @ D)))))). % add_diff_add
thf(fact_165_minus__mult__commute, axiom,
    ((![A : a, B : a]: ((times_times_a @ (uminus_uminus_a @ A) @ B) = (times_times_a @ A @ (uminus_uminus_a @ B)))))). % minus_mult_commute
thf(fact_166_minus__mult__commute, axiom,
    ((![A : poly_a, B : poly_a]: ((times_times_poly_a @ (uminus_uminus_poly_a @ A) @ B) = (times_times_poly_a @ A @ (uminus_uminus_poly_a @ B)))))). % minus_mult_commute
thf(fact_167_minus__diff__minus, axiom,
    ((![A : a, B : a]: ((minus_minus_a @ (uminus_uminus_a @ A) @ (uminus_uminus_a @ B)) = (uminus_uminus_a @ (minus_minus_a @ A @ B)))))). % minus_diff_minus
thf(fact_168_minus__diff__minus, axiom,
    ((![A : poly_a, B : poly_a]: ((minus_minus_poly_a @ (uminus_uminus_poly_a @ A) @ (uminus_uminus_poly_a @ B)) = (uminus_uminus_poly_a @ (minus_minus_poly_a @ A @ B)))))). % minus_diff_minus
thf(fact_169_verit__minus__simplify_I4_J, axiom,
    ((![B : a]: ((uminus_uminus_a @ (uminus_uminus_a @ B)) = B)))). % verit_minus_simplify(4)
thf(fact_170_verit__minus__simplify_I4_J, axiom,
    ((![B : poly_a]: ((uminus_uminus_poly_a @ (uminus_uminus_poly_a @ B)) = B)))). % verit_minus_simplify(4)
thf(fact_171_inf__period_I2_J, axiom,
    ((![P2 : a > $o, D2 : a, Q2 : a > $o]: ((![X2 : a, K2 : a]: ((P2 @ X2) = (P2 @ (minus_minus_a @ X2 @ (times_times_a @ K2 @ D2))))) => ((![X2 : a, K2 : a]: ((Q2 @ X2) = (Q2 @ (minus_minus_a @ X2 @ (times_times_a @ K2 @ D2))))) => (![X3 : a, K3 : a]: ((((P2 @ X3)) | ((Q2 @ X3))) = (((P2 @ (minus_minus_a @ X3 @ (times_times_a @ K3 @ D2)))) | ((Q2 @ (minus_minus_a @ X3 @ (times_times_a @ K3 @ D2)))))))))))). % inf_period(2)
thf(fact_172_inf__period_I2_J, axiom,
    ((![P2 : poly_a > $o, D2 : poly_a, Q2 : poly_a > $o]: ((![X2 : poly_a, K2 : poly_a]: ((P2 @ X2) = (P2 @ (minus_minus_poly_a @ X2 @ (times_times_poly_a @ K2 @ D2))))) => ((![X2 : poly_a, K2 : poly_a]: ((Q2 @ X2) = (Q2 @ (minus_minus_poly_a @ X2 @ (times_times_poly_a @ K2 @ D2))))) => (![X3 : poly_a, K3 : poly_a]: ((((P2 @ X3)) | ((Q2 @ X3))) = (((P2 @ (minus_minus_poly_a @ X3 @ (times_times_poly_a @ K3 @ D2)))) | ((Q2 @ (minus_minus_poly_a @ X3 @ (times_times_poly_a @ K3 @ D2)))))))))))). % inf_period(2)
thf(fact_173_inf__period_I1_J, axiom,
    ((![P2 : a > $o, D2 : a, Q2 : a > $o]: ((![X2 : a, K2 : a]: ((P2 @ X2) = (P2 @ (minus_minus_a @ X2 @ (times_times_a @ K2 @ D2))))) => ((![X2 : a, K2 : a]: ((Q2 @ X2) = (Q2 @ (minus_minus_a @ X2 @ (times_times_a @ K2 @ D2))))) => (![X3 : a, K3 : a]: ((((P2 @ X3)) & ((Q2 @ X3))) = (((P2 @ (minus_minus_a @ X3 @ (times_times_a @ K3 @ D2)))) & ((Q2 @ (minus_minus_a @ X3 @ (times_times_a @ K3 @ D2)))))))))))). % inf_period(1)
thf(fact_174_inf__period_I1_J, axiom,
    ((![P2 : poly_a > $o, D2 : poly_a, Q2 : poly_a > $o]: ((![X2 : poly_a, K2 : poly_a]: ((P2 @ X2) = (P2 @ (minus_minus_poly_a @ X2 @ (times_times_poly_a @ K2 @ D2))))) => ((![X2 : poly_a, K2 : poly_a]: ((Q2 @ X2) = (Q2 @ (minus_minus_poly_a @ X2 @ (times_times_poly_a @ K2 @ D2))))) => (![X3 : poly_a, K3 : poly_a]: ((((P2 @ X3)) & ((Q2 @ X3))) = (((P2 @ (minus_minus_poly_a @ X3 @ (times_times_poly_a @ K3 @ D2)))) & ((Q2 @ (minus_minus_poly_a @ X3 @ (times_times_poly_a @ K3 @ D2)))))))))))). % inf_period(1)
thf(fact_175_dbl__inc__simps_I4_J, axiom,
    (((neg_nu976519853_inc_a @ (uminus_uminus_a @ one_one_a)) = (uminus_uminus_a @ one_one_a)))). % dbl_inc_simps(4)
thf(fact_176_dbl__inc__simps_I4_J, axiom,
    (((neg_nu1855370811poly_a @ (uminus_uminus_poly_a @ one_one_poly_a)) = (uminus_uminus_poly_a @ one_one_poly_a)))). % dbl_inc_simps(4)
thf(fact_177_dbl__dec__def, axiom,
    ((neg_nu1565223785_dec_a = (^[X4 : a]: (minus_minus_a @ (plus_plus_a @ X4 @ X4) @ one_one_a))))). % dbl_dec_def
thf(fact_178_dbl__dec__def, axiom,
    ((neg_nu2076456695poly_a = (^[X4 : poly_a]: (minus_minus_poly_a @ (plus_plus_poly_a @ X4 @ X4) @ one_one_poly_a))))). % dbl_dec_def
thf(fact_179_poly__offset__poly, axiom,
    ((![P : poly_a, H : a, X : a]: ((poly_a2 @ (fundam1358810038poly_a @ P @ H) @ X) = (poly_a2 @ P @ (plus_plus_a @ H @ X)))))). % poly_offset_poly
thf(fact_180_poly__offset__poly, axiom,
    ((![P : poly_poly_a, H : poly_a, X : poly_a]: ((poly_poly_a2 @ (fundam1343031620poly_a @ P @ H) @ X) = (poly_poly_a2 @ P @ (plus_plus_poly_a @ H @ X)))))). % poly_offset_poly
thf(fact_181_dbl__dec__simps_I3_J, axiom,
    (((neg_nu1565223785_dec_a @ one_one_a) = one_one_a))). % dbl_dec_simps(3)
thf(fact_182_dbl__dec__simps_I3_J, axiom,
    (((neg_nu2076456695poly_a @ one_one_poly_a) = one_one_poly_a))). % dbl_dec_simps(3)
thf(fact_183_dbl__inc__def, axiom,
    ((neg_nu976519853_inc_a = (^[X4 : a]: (plus_plus_a @ (plus_plus_a @ X4 @ X4) @ one_one_a))))). % dbl_inc_def
thf(fact_184_dbl__inc__def, axiom,
    ((neg_nu1855370811poly_a = (^[X4 : poly_a]: (plus_plus_poly_a @ (plus_plus_poly_a @ X4 @ X4) @ one_one_poly_a))))). % dbl_inc_def
thf(fact_185_dbl__inc__simps_I1_J, axiom,
    ((![K : num]: ((neg_nu976519853_inc_a @ (uminus_uminus_a @ (numeral_numeral_a @ K))) = (uminus_uminus_a @ (neg_nu1565223785_dec_a @ (numeral_numeral_a @ K))))))). % dbl_inc_simps(1)
thf(fact_186_dbl__inc__simps_I1_J, axiom,
    ((![K : num]: ((neg_nu1855370811poly_a @ (uminus_uminus_poly_a @ (numera1589673905poly_a @ K))) = (uminus_uminus_poly_a @ (neg_nu2076456695poly_a @ (numera1589673905poly_a @ K))))))). % dbl_inc_simps(1)
thf(fact_187_dbl__dec__simps_I1_J, axiom,
    ((![K : num]: ((neg_nu1565223785_dec_a @ (uminus_uminus_a @ (numeral_numeral_a @ K))) = (uminus_uminus_a @ (neg_nu976519853_inc_a @ (numeral_numeral_a @ K))))))). % dbl_dec_simps(1)
thf(fact_188_dbl__dec__simps_I1_J, axiom,
    ((![K : num]: ((neg_nu2076456695poly_a @ (uminus_uminus_poly_a @ (numera1589673905poly_a @ K))) = (uminus_uminus_poly_a @ (neg_nu1855370811poly_a @ (numera1589673905poly_a @ K))))))). % dbl_dec_simps(1)
thf(fact_189_dbl__dec__simps_I2_J, axiom,
    (((neg_nu1565223785_dec_a @ zero_zero_a) = (uminus_uminus_a @ one_one_a)))). % dbl_dec_simps(2)
thf(fact_190_dbl__dec__simps_I2_J, axiom,
    (((neg_nu2076456695poly_a @ zero_zero_poly_a) = (uminus_uminus_poly_a @ one_one_poly_a)))). % dbl_dec_simps(2)
thf(fact_191_mult__zero__left, axiom,
    ((![A : a]: ((times_times_a @ zero_zero_a @ A) = zero_zero_a)))). % mult_zero_left
thf(fact_192_mult__zero__left, axiom,
    ((![A : poly_a]: ((times_times_poly_a @ zero_zero_poly_a @ A) = zero_zero_poly_a)))). % mult_zero_left
thf(fact_193_mult__zero__right, axiom,
    ((![A : a]: ((times_times_a @ A @ zero_zero_a) = zero_zero_a)))). % mult_zero_right
thf(fact_194_mult__zero__right, axiom,
    ((![A : poly_a]: ((times_times_poly_a @ A @ zero_zero_poly_a) = zero_zero_poly_a)))). % mult_zero_right
thf(fact_195_add_Oleft__neutral, axiom,
    ((![A : a]: ((plus_plus_a @ zero_zero_a @ A) = A)))). % add.left_neutral
thf(fact_196_add_Oleft__neutral, axiom,
    ((![A : poly_a]: ((plus_plus_poly_a @ zero_zero_poly_a @ A) = A)))). % add.left_neutral
thf(fact_197_add_Oright__neutral, axiom,
    ((![A : a]: ((plus_plus_a @ A @ zero_zero_a) = A)))). % add.right_neutral
thf(fact_198_add_Oright__neutral, axiom,
    ((![A : poly_a]: ((plus_plus_poly_a @ A @ zero_zero_poly_a) = A)))). % add.right_neutral
thf(fact_199_add__cancel__left__left, axiom,
    ((![B : a, A : a]: (((plus_plus_a @ B @ A) = A) = (B = zero_zero_a))))). % add_cancel_left_left
thf(fact_200_add__cancel__left__left, axiom,
    ((![B : poly_a, A : poly_a]: (((plus_plus_poly_a @ B @ A) = A) = (B = zero_zero_poly_a))))). % add_cancel_left_left
thf(fact_201_add__cancel__left__right, axiom,
    ((![A : a, B : a]: (((plus_plus_a @ A @ B) = A) = (B = zero_zero_a))))). % add_cancel_left_right
thf(fact_202_add__cancel__left__right, axiom,
    ((![A : poly_a, B : poly_a]: (((plus_plus_poly_a @ A @ B) = A) = (B = zero_zero_poly_a))))). % add_cancel_left_right
thf(fact_203_add__cancel__right__left, axiom,
    ((![A : a, B : a]: ((A = (plus_plus_a @ B @ A)) = (B = zero_zero_a))))). % add_cancel_right_left
thf(fact_204_add__cancel__right__left, axiom,
    ((![A : poly_a, B : poly_a]: ((A = (plus_plus_poly_a @ B @ A)) = (B = zero_zero_poly_a))))). % add_cancel_right_left
thf(fact_205_add__cancel__right__right, axiom,
    ((![A : a, B : a]: ((A = (plus_plus_a @ A @ B)) = (B = zero_zero_a))))). % add_cancel_right_right
thf(fact_206_add__cancel__right__right, axiom,
    ((![A : poly_a, B : poly_a]: ((A = (plus_plus_poly_a @ A @ B)) = (B = zero_zero_poly_a))))). % add_cancel_right_right
thf(fact_207_diff__self, axiom,
    ((![A : a]: ((minus_minus_a @ A @ A) = zero_zero_a)))). % diff_self
thf(fact_208_diff__self, axiom,
    ((![A : poly_a]: ((minus_minus_poly_a @ A @ A) = zero_zero_poly_a)))). % diff_self
thf(fact_209_diff__0__right, axiom,
    ((![A : a]: ((minus_minus_a @ A @ zero_zero_a) = A)))). % diff_0_right
thf(fact_210_diff__0__right, axiom,
    ((![A : poly_a]: ((minus_minus_poly_a @ A @ zero_zero_poly_a) = A)))). % diff_0_right
thf(fact_211_diff__zero, axiom,
    ((![A : a]: ((minus_minus_a @ A @ zero_zero_a) = A)))). % diff_zero
thf(fact_212_diff__zero, axiom,
    ((![A : poly_a]: ((minus_minus_poly_a @ A @ zero_zero_poly_a) = A)))). % diff_zero
thf(fact_213_cancel__comm__monoid__add__class_Odiff__cancel, axiom,
    ((![A : a]: ((minus_minus_a @ A @ A) = zero_zero_a)))). % cancel_comm_monoid_add_class.diff_cancel
thf(fact_214_cancel__comm__monoid__add__class_Odiff__cancel, axiom,
    ((![A : poly_a]: ((minus_minus_poly_a @ A @ A) = zero_zero_poly_a)))). % cancel_comm_monoid_add_class.diff_cancel
thf(fact_215_add_Oinverse__neutral, axiom,
    (((uminus_uminus_a @ zero_zero_a) = zero_zero_a))). % add.inverse_neutral
thf(fact_216_add_Oinverse__neutral, axiom,
    (((uminus_uminus_poly_a @ zero_zero_poly_a) = zero_zero_poly_a))). % add.inverse_neutral
thf(fact_217_neg__0__equal__iff__equal, axiom,
    ((![A : a]: ((zero_zero_a = (uminus_uminus_a @ A)) = (zero_zero_a = A))))). % neg_0_equal_iff_equal
thf(fact_218_neg__0__equal__iff__equal, axiom,
    ((![A : poly_a]: ((zero_zero_poly_a = (uminus_uminus_poly_a @ A)) = (zero_zero_poly_a = A))))). % neg_0_equal_iff_equal
thf(fact_219_neg__equal__0__iff__equal, axiom,
    ((![A : a]: (((uminus_uminus_a @ A) = zero_zero_a) = (A = zero_zero_a))))). % neg_equal_0_iff_equal
thf(fact_220_neg__equal__0__iff__equal, axiom,
    ((![A : poly_a]: (((uminus_uminus_poly_a @ A) = zero_zero_poly_a) = (A = zero_zero_poly_a))))). % neg_equal_0_iff_equal
thf(fact_221_mult__numeral__left__semiring__numeral, axiom,
    ((![V : num, W : num, Z : a]: ((times_times_a @ (numeral_numeral_a @ V) @ (times_times_a @ (numeral_numeral_a @ W) @ Z)) = (times_times_a @ (numeral_numeral_a @ (times_times_num @ V @ W)) @ Z))))). % mult_numeral_left_semiring_numeral
thf(fact_222_mult__numeral__left__semiring__numeral, axiom,
    ((![V : num, W : num, Z : poly_a]: ((times_times_poly_a @ (numera1589673905poly_a @ V) @ (times_times_poly_a @ (numera1589673905poly_a @ W) @ Z)) = (times_times_poly_a @ (numera1589673905poly_a @ (times_times_num @ V @ W)) @ Z))))). % mult_numeral_left_semiring_numeral
thf(fact_223_numeral__times__numeral, axiom,
    ((![M : num, N : num]: ((times_times_a @ (numeral_numeral_a @ M) @ (numeral_numeral_a @ N)) = (numeral_numeral_a @ (times_times_num @ M @ N)))))). % numeral_times_numeral
thf(fact_224_numeral__times__numeral, axiom,
    ((![M : num, N : num]: ((times_times_poly_a @ (numera1589673905poly_a @ M) @ (numera1589673905poly_a @ N)) = (numera1589673905poly_a @ (times_times_num @ M @ N)))))). % numeral_times_numeral
thf(fact_225_add__numeral__left, axiom,
    ((![V : num, W : num, Z : a]: ((plus_plus_a @ (numeral_numeral_a @ V) @ (plus_plus_a @ (numeral_numeral_a @ W) @ Z)) = (plus_plus_a @ (numeral_numeral_a @ (plus_plus_num @ V @ W)) @ Z))))). % add_numeral_left
thf(fact_226_add__numeral__left, axiom,
    ((![V : num, W : num, Z : poly_a]: ((plus_plus_poly_a @ (numera1589673905poly_a @ V) @ (plus_plus_poly_a @ (numera1589673905poly_a @ W) @ Z)) = (plus_plus_poly_a @ (numera1589673905poly_a @ (plus_plus_num @ V @ W)) @ Z))))). % add_numeral_left
thf(fact_227_numeral__plus__numeral, axiom,
    ((![M : num, N : num]: ((plus_plus_a @ (numeral_numeral_a @ M) @ (numeral_numeral_a @ N)) = (numeral_numeral_a @ (plus_plus_num @ M @ N)))))). % numeral_plus_numeral
thf(fact_228_numeral__plus__numeral, axiom,
    ((![M : num, N : num]: ((plus_plus_poly_a @ (numera1589673905poly_a @ M) @ (numera1589673905poly_a @ N)) = (numera1589673905poly_a @ (plus_plus_num @ M @ N)))))). % numeral_plus_numeral
thf(fact_229_poly__0, axiom,
    ((![X : a]: ((poly_a2 @ zero_zero_poly_a @ X) = zero_zero_a)))). % poly_0

% Conjectures (1)
thf(conj_0, conjecture,
    (((minus_minus_a @ (poly_a2 @ p @ x) @ (poly_a2 @ q @ x)) = (plus_plus_a @ (poly_a2 @ p @ x) @ (times_times_a @ (uminus_uminus_a @ one_one_a) @ (poly_a2 @ q @ x)))))).
