% 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_932__5376788_1 ) ; }
% This file was generated by Isabelle (most likely Sledgehammer)
% 2020-12-16 14:34:23.749

% Could-be-implicit typings (5)
thf(ty_n_t__Polynomial__Opoly_It__Polynomial__Opoly_It__Complex__Ocomplex_J_J, type,
    poly_poly_complex : $tType).
thf(ty_n_t__Polynomial__Opoly_It__Complex__Ocomplex_J, type,
    poly_complex : $tType).
thf(ty_n_t__Polynomial__Opoly_It__Nat__Onat_J, type,
    poly_nat : $tType).
thf(ty_n_t__Complex__Ocomplex, type,
    complex : $tType).
thf(ty_n_t__Nat__Onat, type,
    nat : $tType).

% Explicit typings (55)
thf(sy_c_Groups_Ominus__class_Ominus_001t__Complex__Ocomplex, type,
    minus_minus_complex : complex > complex > complex).
thf(sy_c_Groups_Ominus__class_Ominus_001t__Nat__Onat, type,
    minus_minus_nat : nat > nat > nat).
thf(sy_c_Groups_Ominus__class_Ominus_001t__Polynomial__Opoly_It__Complex__Ocomplex_J, type,
    minus_174331535omplex : poly_complex > poly_complex > poly_complex).
thf(sy_c_Groups_Ominus__class_Ominus_001t__Polynomial__Opoly_It__Nat__Onat_J, type,
    minus_minus_poly_nat : poly_nat > poly_nat > poly_nat).
thf(sy_c_Groups_Oone__class_Oone_001t__Complex__Ocomplex, type,
    one_one_complex : complex).
thf(sy_c_Groups_Oone__class_Oone_001t__Nat__Onat, type,
    one_one_nat : nat).
thf(sy_c_Groups_Oone__class_Oone_001t__Polynomial__Opoly_It__Complex__Ocomplex_J, type,
    one_one_poly_complex : poly_complex).
thf(sy_c_Groups_Oone__class_Oone_001t__Polynomial__Opoly_It__Polynomial__Opoly_It__Complex__Ocomplex_J_J, type,
    one_on1331105667omplex : poly_poly_complex).
thf(sy_c_Groups_Oplus__class_Oplus_001t__Complex__Ocomplex, type,
    plus_plus_complex : complex > complex > complex).
thf(sy_c_Groups_Oplus__class_Oplus_001t__Nat__Onat, type,
    plus_plus_nat : nat > nat > nat).
thf(sy_c_Groups_Oplus__class_Oplus_001t__Polynomial__Opoly_It__Complex__Ocomplex_J, type,
    plus_p1547158847omplex : poly_complex > poly_complex > poly_complex).
thf(sy_c_Groups_Oplus__class_Oplus_001t__Polynomial__Opoly_It__Nat__Onat_J, type,
    plus_plus_poly_nat : poly_nat > poly_nat > poly_nat).
thf(sy_c_Groups_Otimes__class_Otimes_001t__Complex__Ocomplex, type,
    times_times_complex : complex > complex > complex).
thf(sy_c_Groups_Otimes__class_Otimes_001t__Nat__Onat, type,
    times_times_nat : nat > nat > nat).
thf(sy_c_Groups_Otimes__class_Otimes_001t__Polynomial__Opoly_It__Complex__Ocomplex_J, type,
    times_1246143675omplex : poly_complex > poly_complex > poly_complex).
thf(sy_c_Groups_Otimes__class_Otimes_001t__Polynomial__Opoly_It__Polynomial__Opoly_It__Complex__Ocomplex_J_J, type,
    times_1460995011omplex : poly_poly_complex > poly_poly_complex > poly_poly_complex).
thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Complex__Ocomplex, type,
    uminus1204672759omplex : complex > complex).
thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Polynomial__Opoly_It__Complex__Ocomplex_J, type,
    uminus1138659839omplex : poly_complex > poly_complex).
thf(sy_c_Groups_Ozero__class_Ozero_001t__Complex__Ocomplex, type,
    zero_zero_complex : complex).
thf(sy_c_Groups_Ozero__class_Ozero_001t__Nat__Onat, type,
    zero_zero_nat : nat).
thf(sy_c_Groups_Ozero__class_Ozero_001t__Polynomial__Opoly_It__Complex__Ocomplex_J, type,
    zero_z1746442943omplex : poly_complex).
thf(sy_c_Groups_Ozero__class_Ozero_001t__Polynomial__Opoly_It__Nat__Onat_J, type,
    zero_zero_poly_nat : poly_nat).
thf(sy_c_Groups_Ozero__class_Ozero_001t__Polynomial__Opoly_It__Polynomial__Opoly_It__Complex__Ocomplex_J_J, type,
    zero_z1040703943omplex : poly_poly_complex).
thf(sy_c_If_001t__Complex__Ocomplex, type,
    if_complex : $o > complex > complex > complex).
thf(sy_c_If_001t__Nat__Onat, type,
    if_nat : $o > nat > nat > nat).
thf(sy_c_If_001t__Polynomial__Opoly_It__Complex__Ocomplex_J, type,
    if_poly_complex : $o > poly_complex > poly_complex > poly_complex).
thf(sy_c_Orderings_Oord__class_Oless_001t__Nat__Onat, type,
    ord_less_nat : nat > nat > $o).
thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Nat__Onat, type,
    ord_less_eq_nat : nat > nat > $o).
thf(sy_c_Polynomial_Odegree_001t__Complex__Ocomplex, type,
    degree_complex : poly_complex > nat).
thf(sy_c_Polynomial_Oorder_001t__Complex__Ocomplex, type,
    order_complex : complex > poly_complex > nat).
thf(sy_c_Polynomial_OpCons_001t__Complex__Ocomplex, type,
    pCons_complex : complex > poly_complex > poly_complex).
thf(sy_c_Polynomial_OpCons_001t__Nat__Onat, type,
    pCons_nat : nat > poly_nat > poly_nat).
thf(sy_c_Polynomial_OpCons_001t__Polynomial__Opoly_It__Complex__Ocomplex_J, type,
    pCons_poly_complex : poly_complex > poly_poly_complex > poly_poly_complex).
thf(sy_c_Polynomial_Opoly_001t__Complex__Ocomplex, type,
    poly_complex2 : poly_complex > complex > complex).
thf(sy_c_Polynomial_Opoly_001t__Nat__Onat, type,
    poly_nat2 : poly_nat > nat > nat).
thf(sy_c_Polynomial_Opoly_001t__Polynomial__Opoly_It__Complex__Ocomplex_J, type,
    poly_poly_complex2 : poly_poly_complex > poly_complex > poly_complex).
thf(sy_c_Power_Opower__class_Opower_001t__Complex__Ocomplex, type,
    power_power_complex : complex > nat > complex).
thf(sy_c_Power_Opower__class_Opower_001t__Nat__Onat, type,
    power_power_nat : nat > nat > nat).
thf(sy_c_Power_Opower__class_Opower_001t__Polynomial__Opoly_It__Complex__Ocomplex_J, type,
    power_184595776omplex : poly_complex > nat > poly_complex).
thf(sy_c_Power_Opower__class_Opower_001t__Polynomial__Opoly_It__Nat__Onat_J, type,
    power_power_poly_nat : poly_nat > nat > poly_nat).
thf(sy_c_Power_Opower__class_Opower_001t__Polynomial__Opoly_It__Polynomial__Opoly_It__Complex__Ocomplex_J_J, type,
    power_432682568omplex : poly_poly_complex > nat > poly_poly_complex).
thf(sy_c_Rings_Odvd__class_Odvd_001t__Complex__Ocomplex, type,
    dvd_dvd_complex : complex > complex > $o).
thf(sy_c_Rings_Odvd__class_Odvd_001t__Nat__Onat, type,
    dvd_dvd_nat : nat > nat > $o).
thf(sy_c_Rings_Odvd__class_Odvd_001t__Polynomial__Opoly_It__Complex__Ocomplex_J, type,
    dvd_dvd_poly_complex : poly_complex > poly_complex > $o).
thf(sy_c_Rings_Odvd__class_Odvd_001t__Polynomial__Opoly_It__Polynomial__Opoly_It__Complex__Ocomplex_J_J, type,
    dvd_dv598755940omplex : poly_poly_complex > poly_poly_complex > $o).
thf(sy_v_a____, type,
    a : complex).
thf(sy_v_k____, type,
    k : complex).
thf(sy_v_n, type,
    n : nat).
thf(sy_v_na____, type,
    na : nat).
thf(sy_v_p, type,
    p : poly_complex).
thf(sy_v_pa____, type,
    pa : poly_complex).
thf(sy_v_q, type,
    q : poly_complex).
thf(sy_v_qa____, type,
    qa : poly_complex).
thf(sy_v_r____, type,
    r : poly_complex).
thf(sy_v_s____, type,
    s : poly_complex).

% Relevant facts (198)
thf(fact_0_assms_I3_J, axiom,
    ((~ ((n = zero_zero_nat))))). % assms(3)
thf(fact_1_False, axiom,
    ((~ ((qa = zero_z1746442943omplex))))). % False
thf(fact_2_n0, axiom,
    ((~ ((na = zero_zero_nat))))). % n0
thf(fact_3_that, axiom,
    ((~ (((order_complex @ a @ pa) = zero_zero_nat))))). % that
thf(fact_4_pne, axiom,
    ((~ ((pa = zero_z1746442943omplex))))). % pne
thf(fact_5_k, axiom,
    ((~ ((k = zero_zero_complex))))). % k
thf(fact_6_kpn, axiom,
    ((s = (pCons_complex @ k @ zero_z1746442943omplex)))). % kpn
thf(fact_7_oop, axiom,
    ((![A : complex]: (ord_less_eq_nat @ (order_complex @ A @ pa) @ na)))). % oop
thf(fact_8__092_060open_062order_Aa_Ap_A_092_060le_062_An_092_060close_062, axiom,
    ((ord_less_eq_nat @ (order_complex @ a @ pa) @ na))). % \<open>order a p \<le> n\<close>
thf(fact_9_dpn, axiom,
    (((degree_complex @ pa) = na))). % dpn
thf(fact_10_a, axiom,
    (((poly_complex2 @ pa @ a) = zero_zero_complex))). % a
thf(fact_11__092_060open_062_092_060And_062thesis_O_A_I_092_060And_062k_O_As_A_061_A_091_058k_058_093_A_092_060Longrightarrow_062_Athesis_J_A_092_060Longrightarrow_062_Athesis_092_060close_062, axiom,
    ((~ ((![K : complex]: (~ ((s = (pCons_complex @ K @ zero_z1746442943omplex))))))))). % \<open>\<And>thesis. (\<And>k. s = [:k:] \<Longrightarrow> thesis) \<Longrightarrow> thesis\<close>
thf(fact_12_sne, axiom,
    ((~ ((s = zero_z1746442943omplex))))). % sne
thf(fact_13_power__decreasing__iff, axiom,
    ((![B : nat, M : nat, N : nat]: ((ord_less_nat @ zero_zero_nat @ B) => ((ord_less_nat @ B @ one_one_nat) => ((ord_less_eq_nat @ (power_power_nat @ B @ M) @ (power_power_nat @ B @ N)) = (ord_less_eq_nat @ N @ M))))))). % power_decreasing_iff
thf(fact_14_power__mono__iff, axiom,
    ((![A : nat, B : nat, N : nat]: ((ord_less_eq_nat @ zero_zero_nat @ A) => ((ord_less_eq_nat @ zero_zero_nat @ B) => ((ord_less_nat @ zero_zero_nat @ N) => ((ord_less_eq_nat @ (power_power_nat @ A @ N) @ (power_power_nat @ B @ N)) = (ord_less_eq_nat @ A @ B)))))))). % power_mono_iff
thf(fact_15_power__increasing__iff, axiom,
    ((![B : nat, X : nat, Y : nat]: ((ord_less_nat @ one_one_nat @ B) => ((ord_less_eq_nat @ (power_power_nat @ B @ X) @ (power_power_nat @ B @ Y)) = (ord_less_eq_nat @ X @ Y)))))). % power_increasing_iff
thf(fact_16_power__strict__decreasing__iff, axiom,
    ((![B : nat, M : nat, N : nat]: ((ord_less_nat @ zero_zero_nat @ B) => ((ord_less_nat @ B @ one_one_nat) => ((ord_less_nat @ (power_power_nat @ B @ M) @ (power_power_nat @ B @ N)) = (ord_less_nat @ N @ M))))))). % power_strict_decreasing_iff
thf(fact_17_power__eq__0__iff, axiom,
    ((![A : complex, N : nat]: (((power_power_complex @ A @ N) = zero_zero_complex) = (((A = zero_zero_complex)) & ((ord_less_nat @ zero_zero_nat @ N))))))). % power_eq_0_iff
thf(fact_18_power__eq__0__iff, axiom,
    ((![A : poly_complex, N : nat]: (((power_184595776omplex @ A @ N) = zero_z1746442943omplex) = (((A = zero_z1746442943omplex)) & ((ord_less_nat @ zero_zero_nat @ N))))))). % power_eq_0_iff
thf(fact_19_power__eq__0__iff, axiom,
    ((![A : nat, N : nat]: (((power_power_nat @ A @ N) = zero_zero_nat) = (((A = zero_zero_nat)) & ((ord_less_nat @ zero_zero_nat @ N))))))). % power_eq_0_iff
thf(fact_20_power__strict__increasing__iff, axiom,
    ((![B : nat, X : nat, Y : nat]: ((ord_less_nat @ one_one_nat @ B) => ((ord_less_nat @ (power_power_nat @ B @ X) @ (power_power_nat @ B @ Y)) = (ord_less_nat @ X @ Y)))))). % power_strict_increasing_iff
thf(fact_21_diff__numeral__special_I12_J, axiom,
    (((minus_174331535omplex @ (uminus1138659839omplex @ one_one_poly_complex) @ (uminus1138659839omplex @ one_one_poly_complex)) = zero_z1746442943omplex))). % diff_numeral_special(12)
thf(fact_22_diff__numeral__special_I12_J, axiom,
    (((minus_minus_complex @ (uminus1204672759omplex @ one_one_complex) @ (uminus1204672759omplex @ one_one_complex)) = zero_zero_complex))). % diff_numeral_special(12)
thf(fact_23_add__neg__numeral__special_I8_J, axiom,
    (((plus_p1547158847omplex @ (uminus1138659839omplex @ one_one_poly_complex) @ one_one_poly_complex) = zero_z1746442943omplex))). % add_neg_numeral_special(8)
thf(fact_24_add__neg__numeral__special_I8_J, axiom,
    (((plus_plus_complex @ (uminus1204672759omplex @ one_one_complex) @ one_one_complex) = zero_zero_complex))). % add_neg_numeral_special(8)
thf(fact_25_add__neg__numeral__special_I7_J, axiom,
    (((plus_p1547158847omplex @ one_one_poly_complex @ (uminus1138659839omplex @ one_one_poly_complex)) = zero_z1746442943omplex))). % add_neg_numeral_special(7)
thf(fact_26_add__neg__numeral__special_I7_J, axiom,
    (((plus_plus_complex @ one_one_complex @ (uminus1204672759omplex @ one_one_complex)) = zero_zero_complex))). % add_neg_numeral_special(7)
thf(fact_27__092_060open_062_092_060And_062thesis_O_A_I_092_060And_062s_O_Ap_A_061_A_091_058_N_Aa_M_A1_058_093_A_094_Aorder_Aa_Ap_A_K_As_A_092_060Longrightarrow_062_Athesis_J_A_092_060Longrightarrow_062_Athesis_092_060close_062, axiom,
    ((~ ((![S : poly_complex]: (~ ((pa = (times_1246143675omplex @ (power_184595776omplex @ (pCons_complex @ (uminus1204672759omplex @ a) @ (pCons_complex @ one_one_complex @ zero_z1746442943omplex)) @ (order_complex @ a @ pa)) @ S))))))))). % \<open>\<And>thesis. (\<And>s. p = [:- a, 1:] ^ order a p * s \<Longrightarrow> thesis) \<Longrightarrow> thesis\<close>
thf(fact_28_True, axiom,
    (((degree_complex @ s) = zero_zero_nat))). % True
thf(fact_29_assms_I1_J, axiom,
    ((![X2 : complex]: (((poly_complex2 @ p @ X2) = zero_zero_complex) => ((poly_complex2 @ q @ X2) = zero_zero_complex))))). % assms(1)
thf(fact_30_pq0, axiom,
    ((![X2 : complex]: (((poly_complex2 @ pa @ X2) = zero_zero_complex) => ((poly_complex2 @ qa @ X2) = zero_zero_complex))))). % pq0
thf(fact_31_assms_I2_J, axiom,
    (((degree_complex @ p) = n))). % assms(2)
thf(fact_32__092_060open_062_092_060And_062thesis_O_A_I_092_060And_062a_O_Apoly_Ap_Aa_A_061_A0_A_092_060Longrightarrow_062_Athesis_J_A_092_060Longrightarrow_062_Athesis_092_060close_062, axiom,
    ((~ ((![A2 : complex]: (~ (((poly_complex2 @ pa @ A2) = zero_zero_complex)))))))). % \<open>\<And>thesis. (\<And>a. poly p a = 0 \<Longrightarrow> thesis) \<Longrightarrow> thesis\<close>
thf(fact_33_power__one__right, axiom,
    ((![A : poly_complex]: ((power_184595776omplex @ A @ one_one_nat) = A)))). % power_one_right
thf(fact_34_power__one__right, axiom,
    ((![A : nat]: ((power_power_nat @ A @ one_one_nat) = A)))). % power_one_right
thf(fact_35_r, axiom,
    ((qa = (times_1246143675omplex @ (pCons_complex @ (uminus1204672759omplex @ a) @ (pCons_complex @ one_one_complex @ zero_z1746442943omplex)) @ r)))). % r
thf(fact_36_power__one, axiom,
    ((![N : nat]: ((power_power_complex @ one_one_complex @ N) = one_one_complex)))). % power_one
thf(fact_37_power__one, axiom,
    ((![N : nat]: ((power_184595776omplex @ one_one_poly_complex @ N) = one_one_poly_complex)))). % power_one
thf(fact_38_power__one, axiom,
    ((![N : nat]: ((power_power_nat @ one_one_nat @ N) = one_one_nat)))). % power_one
thf(fact_39_nat__zero__less__power__iff, axiom,
    ((![X : nat, N : nat]: ((ord_less_nat @ zero_zero_nat @ (power_power_nat @ X @ N)) = (((ord_less_nat @ zero_zero_nat @ X)) | ((N = zero_zero_nat))))))). % nat_zero_less_power_iff
thf(fact_40_s, axiom,
    ((pa = (times_1246143675omplex @ (power_184595776omplex @ (pCons_complex @ (uminus1204672759omplex @ a) @ (pCons_complex @ one_one_complex @ zero_z1746442943omplex)) @ (order_complex @ a @ pa)) @ s)))). % s
thf(fact_41__092_060open_062_092_060And_062thesis_O_A_I_092_060And_062r_O_Aq_A_061_A_091_058_N_Aa_M_A1_058_093_A_K_Ar_A_092_060Longrightarrow_062_Athesis_J_A_092_060Longrightarrow_062_Athesis_092_060close_062, axiom,
    ((~ ((![R : poly_complex]: (~ ((qa = (times_1246143675omplex @ (pCons_complex @ (uminus1204672759omplex @ a) @ (pCons_complex @ one_one_complex @ zero_z1746442943omplex)) @ R))))))))). % \<open>\<And>thesis. (\<And>r. q = [:- a, 1:] * r \<Longrightarrow> thesis) \<Longrightarrow> thesis\<close>
thf(fact_42_diff__numeral__special_I9_J, axiom,
    (((minus_minus_complex @ one_one_complex @ one_one_complex) = zero_zero_complex))). % diff_numeral_special(9)
thf(fact_43_diff__numeral__special_I9_J, axiom,
    (((minus_174331535omplex @ one_one_poly_complex @ one_one_poly_complex) = zero_z1746442943omplex))). % diff_numeral_special(9)
thf(fact_44_power__inject__exp, axiom,
    ((![A : nat, M : nat, N : nat]: ((ord_less_nat @ one_one_nat @ A) => (((power_power_nat @ A @ M) = (power_power_nat @ A @ N)) = (M = N)))))). % power_inject_exp
thf(fact_45_mult__minus1__right, axiom,
    ((![Z : poly_complex]: ((times_1246143675omplex @ Z @ (uminus1138659839omplex @ one_one_poly_complex)) = (uminus1138659839omplex @ Z))))). % mult_minus1_right
thf(fact_46_mult__minus1__right, axiom,
    ((![Z : complex]: ((times_times_complex @ Z @ (uminus1204672759omplex @ one_one_complex)) = (uminus1204672759omplex @ Z))))). % mult_minus1_right
thf(fact_47_mult__minus1, axiom,
    ((![Z : poly_complex]: ((times_1246143675omplex @ (uminus1138659839omplex @ one_one_poly_complex) @ Z) = (uminus1138659839omplex @ Z))))). % mult_minus1
thf(fact_48_mult__minus1, axiom,
    ((![Z : complex]: ((times_times_complex @ (uminus1204672759omplex @ one_one_complex) @ Z) = (uminus1204672759omplex @ Z))))). % mult_minus1
thf(fact_49_left__minus__one__mult__self, axiom,
    ((![N : nat, A : poly_complex]: ((times_1246143675omplex @ (power_184595776omplex @ (uminus1138659839omplex @ one_one_poly_complex) @ N) @ (times_1246143675omplex @ (power_184595776omplex @ (uminus1138659839omplex @ one_one_poly_complex) @ N) @ A)) = A)))). % left_minus_one_mult_self
thf(fact_50_left__minus__one__mult__self, axiom,
    ((![N : nat, A : complex]: ((times_times_complex @ (power_power_complex @ (uminus1204672759omplex @ one_one_complex) @ N) @ (times_times_complex @ (power_power_complex @ (uminus1204672759omplex @ one_one_complex) @ N) @ A)) = A)))). % left_minus_one_mult_self
thf(fact_51_minus__one__mult__self, axiom,
    ((![N : nat]: ((times_1246143675omplex @ (power_184595776omplex @ (uminus1138659839omplex @ one_one_poly_complex) @ N) @ (power_184595776omplex @ (uminus1138659839omplex @ one_one_poly_complex) @ N)) = one_one_poly_complex)))). % minus_one_mult_self
thf(fact_52_minus__one__mult__self, axiom,
    ((![N : nat]: ((times_times_complex @ (power_power_complex @ (uminus1204672759omplex @ one_one_complex) @ N) @ (power_power_complex @ (uminus1204672759omplex @ one_one_complex) @ N)) = one_one_complex)))). % minus_one_mult_self
thf(fact_53_IH, axiom,
    ((![M2 : nat]: ((ord_less_nat @ M2 @ na) => (![P : poly_complex, Q : poly_complex]: ((![X3 : complex]: (((poly_complex2 @ P @ X3) = zero_zero_complex) => ((poly_complex2 @ Q @ X3) = zero_zero_complex))) => (((degree_complex @ P) = M2) => ((~ ((M2 = zero_zero_nat))) => (dvd_dvd_poly_complex @ P @ (power_184595776omplex @ Q @ M2)))))))))). % IH
thf(fact_54_power__commuting__commutes, axiom,
    ((![X : nat, Y : nat, N : nat]: (((times_times_nat @ X @ Y) = (times_times_nat @ Y @ X)) => ((times_times_nat @ (power_power_nat @ X @ N) @ Y) = (times_times_nat @ Y @ (power_power_nat @ X @ N))))))). % power_commuting_commutes
thf(fact_55_power__commuting__commutes, axiom,
    ((![X : poly_complex, Y : poly_complex, N : nat]: (((times_1246143675omplex @ X @ Y) = (times_1246143675omplex @ Y @ X)) => ((times_1246143675omplex @ (power_184595776omplex @ X @ N) @ Y) = (times_1246143675omplex @ Y @ (power_184595776omplex @ X @ N))))))). % power_commuting_commutes
thf(fact_56_power__mult__distrib, axiom,
    ((![A : nat, B : nat, N : nat]: ((power_power_nat @ (times_times_nat @ A @ B) @ N) = (times_times_nat @ (power_power_nat @ A @ N) @ (power_power_nat @ B @ N)))))). % power_mult_distrib
thf(fact_57_power__mult__distrib, axiom,
    ((![A : poly_complex, B : poly_complex, N : nat]: ((power_184595776omplex @ (times_1246143675omplex @ A @ B) @ N) = (times_1246143675omplex @ (power_184595776omplex @ A @ N) @ (power_184595776omplex @ B @ N)))))). % power_mult_distrib
thf(fact_58_power__commutes, axiom,
    ((![A : nat, N : nat]: ((times_times_nat @ (power_power_nat @ A @ N) @ A) = (times_times_nat @ A @ (power_power_nat @ A @ N)))))). % power_commutes
thf(fact_59_power__commutes, axiom,
    ((![A : poly_complex, N : nat]: ((times_1246143675omplex @ (power_184595776omplex @ A @ N) @ A) = (times_1246143675omplex @ A @ (power_184595776omplex @ A @ N)))))). % power_commutes
thf(fact_60_left__right__inverse__power, axiom,
    ((![X : complex, Y : complex, N : nat]: (((times_times_complex @ X @ Y) = one_one_complex) => ((times_times_complex @ (power_power_complex @ X @ N) @ (power_power_complex @ Y @ N)) = one_one_complex))))). % left_right_inverse_power
thf(fact_61_left__right__inverse__power, axiom,
    ((![X : nat, Y : nat, N : nat]: (((times_times_nat @ X @ Y) = one_one_nat) => ((times_times_nat @ (power_power_nat @ X @ N) @ (power_power_nat @ Y @ N)) = one_one_nat))))). % left_right_inverse_power
thf(fact_62_left__right__inverse__power, axiom,
    ((![X : poly_complex, Y : poly_complex, N : nat]: (((times_1246143675omplex @ X @ Y) = one_one_poly_complex) => ((times_1246143675omplex @ (power_184595776omplex @ X @ N) @ (power_184595776omplex @ Y @ N)) = one_one_poly_complex))))). % left_right_inverse_power
thf(fact_63_nat__power__less__imp__less, axiom,
    ((![I : nat, M : nat, N : nat]: ((ord_less_nat @ zero_zero_nat @ I) => ((ord_less_nat @ (power_power_nat @ I @ M) @ (power_power_nat @ I @ N)) => (ord_less_nat @ M @ N)))))). % nat_power_less_imp_less
thf(fact_64_power__add, axiom,
    ((![A : nat, M : nat, N : nat]: ((power_power_nat @ A @ (plus_plus_nat @ M @ N)) = (times_times_nat @ (power_power_nat @ A @ M) @ (power_power_nat @ A @ N)))))). % power_add
thf(fact_65_power__add, axiom,
    ((![A : poly_complex, M : nat, N : nat]: ((power_184595776omplex @ A @ (plus_plus_nat @ M @ N)) = (times_1246143675omplex @ (power_184595776omplex @ A @ M) @ (power_184595776omplex @ A @ N)))))). % power_add
thf(fact_66_power__minus__mult, axiom,
    ((![N : nat, A : nat]: ((ord_less_nat @ zero_zero_nat @ N) => ((times_times_nat @ (power_power_nat @ A @ (minus_minus_nat @ N @ one_one_nat)) @ A) = (power_power_nat @ A @ N)))))). % power_minus_mult
thf(fact_67_power__minus__mult, axiom,
    ((![N : nat, A : poly_complex]: ((ord_less_nat @ zero_zero_nat @ N) => ((times_1246143675omplex @ (power_184595776omplex @ A @ (minus_minus_nat @ N @ one_one_nat)) @ A) = (power_184595776omplex @ A @ N)))))). % power_minus_mult
thf(fact_68_power__less__power__Suc, axiom,
    ((![A : nat, N : nat]: ((ord_less_nat @ one_one_nat @ A) => (ord_less_nat @ (power_power_nat @ A @ N) @ (times_times_nat @ A @ (power_power_nat @ A @ N))))))). % power_less_power_Suc
thf(fact_69_power__gt1__lemma, axiom,
    ((![A : nat, N : nat]: ((ord_less_nat @ one_one_nat @ A) => (ord_less_nat @ one_one_nat @ (times_times_nat @ A @ (power_power_nat @ A @ N))))))). % power_gt1_lemma
thf(fact_70_power__minus, axiom,
    ((![A : poly_complex, N : nat]: ((power_184595776omplex @ (uminus1138659839omplex @ A) @ N) = (times_1246143675omplex @ (power_184595776omplex @ (uminus1138659839omplex @ one_one_poly_complex) @ N) @ (power_184595776omplex @ A @ N)))))). % power_minus
thf(fact_71_power__minus, axiom,
    ((![A : complex, N : nat]: ((power_power_complex @ (uminus1204672759omplex @ A) @ N) = (times_times_complex @ (power_power_complex @ (uminus1204672759omplex @ one_one_complex) @ N) @ (power_power_complex @ A @ N)))))). % power_minus
thf(fact_72_power__Suc__less, axiom,
    ((![A : nat, N : nat]: ((ord_less_nat @ zero_zero_nat @ A) => ((ord_less_nat @ A @ one_one_nat) => (ord_less_nat @ (times_times_nat @ A @ (power_power_nat @ A @ N)) @ (power_power_nat @ A @ N))))))). % power_Suc_less
thf(fact_73_power__eq__if, axiom,
    ((power_power_complex = (^[P2 : complex]: (^[M3 : nat]: (if_complex @ (M3 = zero_zero_nat) @ one_one_complex @ (times_times_complex @ P2 @ (power_power_complex @ P2 @ (minus_minus_nat @ M3 @ one_one_nat))))))))). % power_eq_if
thf(fact_74_power__eq__if, axiom,
    ((power_power_nat = (^[P2 : nat]: (^[M3 : nat]: (if_nat @ (M3 = zero_zero_nat) @ one_one_nat @ (times_times_nat @ P2 @ (power_power_nat @ P2 @ (minus_minus_nat @ M3 @ one_one_nat))))))))). % power_eq_if
thf(fact_75_power__eq__if, axiom,
    ((power_184595776omplex = (^[P2 : poly_complex]: (^[M3 : nat]: (if_poly_complex @ (M3 = zero_zero_nat) @ one_one_poly_complex @ (times_1246143675omplex @ P2 @ (power_184595776omplex @ P2 @ (minus_minus_nat @ M3 @ one_one_nat))))))))). % power_eq_if
thf(fact_76_fundamental__theorem__of__algebra__alt, axiom,
    ((![P3 : poly_complex]: ((~ ((?[A2 : complex, L : poly_complex]: ((~ ((A2 = zero_zero_complex))) & ((L = zero_z1746442943omplex) & (P3 = (pCons_complex @ A2 @ L))))))) => (?[Z2 : complex]: ((poly_complex2 @ P3 @ Z2) = zero_zero_complex)))))). % fundamental_theorem_of_algebra_alt
thf(fact_77_le__numeral__extra_I3_J, axiom,
    ((ord_less_eq_nat @ zero_zero_nat @ zero_zero_nat))). % le_numeral_extra(3)
thf(fact_78_less__numeral__extra_I3_J, axiom,
    ((~ ((ord_less_nat @ zero_zero_nat @ zero_zero_nat))))). % less_numeral_extra(3)
thf(fact_79_le__numeral__extra_I4_J, axiom,
    ((ord_less_eq_nat @ one_one_nat @ one_one_nat))). % le_numeral_extra(4)
thf(fact_80_less__numeral__extra_I4_J, axiom,
    ((~ ((ord_less_nat @ one_one_nat @ one_one_nat))))). % less_numeral_extra(4)
thf(fact_81_power__not__zero, axiom,
    ((![A : complex, N : nat]: ((~ ((A = zero_zero_complex))) => (~ (((power_power_complex @ A @ N) = zero_zero_complex))))))). % power_not_zero
thf(fact_82_power__not__zero, axiom,
    ((![A : poly_complex, N : nat]: ((~ ((A = zero_z1746442943omplex))) => (~ (((power_184595776omplex @ A @ N) = zero_z1746442943omplex))))))). % power_not_zero
thf(fact_83_power__not__zero, axiom,
    ((![A : nat, N : nat]: ((~ ((A = zero_zero_nat))) => (~ (((power_power_nat @ A @ N) = zero_zero_nat))))))). % power_not_zero
thf(fact_84_is__num__normalize_I8_J, axiom,
    ((![A : complex, B : complex]: ((uminus1204672759omplex @ (plus_plus_complex @ A @ B)) = (plus_plus_complex @ (uminus1204672759omplex @ B) @ (uminus1204672759omplex @ A)))))). % is_num_normalize(8)
thf(fact_85_one__neq__neg__one, axiom,
    ((~ ((one_one_complex = (uminus1204672759omplex @ one_one_complex)))))). % one_neq_neg_one
thf(fact_86_less__numeral__extra_I1_J, axiom,
    ((ord_less_nat @ zero_zero_nat @ one_one_nat))). % less_numeral_extra(1)
thf(fact_87_zero__le__power, axiom,
    ((![A : nat, N : nat]: ((ord_less_eq_nat @ zero_zero_nat @ A) => (ord_less_eq_nat @ zero_zero_nat @ (power_power_nat @ A @ N)))))). % zero_le_power
thf(fact_88_power__mono, axiom,
    ((![A : nat, B : nat, N : nat]: ((ord_less_eq_nat @ A @ B) => ((ord_less_eq_nat @ zero_zero_nat @ A) => (ord_less_eq_nat @ (power_power_nat @ A @ N) @ (power_power_nat @ B @ N))))))). % power_mono
thf(fact_89_zero__less__power, axiom,
    ((![A : nat, N : nat]: ((ord_less_nat @ zero_zero_nat @ A) => (ord_less_nat @ zero_zero_nat @ (power_power_nat @ A @ N)))))). % zero_less_power
thf(fact_90_zero__neq__neg__one, axiom,
    ((~ ((zero_z1746442943omplex = (uminus1138659839omplex @ one_one_poly_complex)))))). % zero_neq_neg_one
thf(fact_91_zero__neq__neg__one, axiom,
    ((~ ((zero_zero_complex = (uminus1204672759omplex @ one_one_complex)))))). % zero_neq_neg_one
thf(fact_92_one__le__power, axiom,
    ((![A : nat, N : nat]: ((ord_less_eq_nat @ one_one_nat @ A) => (ord_less_eq_nat @ one_one_nat @ (power_power_nat @ A @ N)))))). % one_le_power
thf(fact_93_power__0, axiom,
    ((![A : complex]: ((power_power_complex @ A @ zero_zero_nat) = one_one_complex)))). % power_0
thf(fact_94_power__0, axiom,
    ((![A : poly_complex]: ((power_184595776omplex @ A @ zero_zero_nat) = one_one_poly_complex)))). % power_0
thf(fact_95_power__0, axiom,
    ((![A : nat]: ((power_power_nat @ A @ zero_zero_nat) = one_one_nat)))). % power_0
thf(fact_96_power__less__imp__less__base, axiom,
    ((![A : nat, N : nat, B : nat]: ((ord_less_nat @ (power_power_nat @ A @ N) @ (power_power_nat @ B @ N)) => ((ord_less_eq_nat @ zero_zero_nat @ B) => (ord_less_nat @ A @ B)))))). % power_less_imp_less_base
thf(fact_97_power__le__one, axiom,
    ((![A : nat, N : nat]: ((ord_less_eq_nat @ zero_zero_nat @ A) => ((ord_less_eq_nat @ A @ one_one_nat) => (ord_less_eq_nat @ (power_power_nat @ A @ N) @ one_one_nat)))))). % power_le_one
thf(fact_98_power__0__left, axiom,
    ((![N : nat]: (((N = zero_zero_nat) => ((power_power_complex @ zero_zero_complex @ N) = one_one_complex)) & ((~ ((N = zero_zero_nat))) => ((power_power_complex @ zero_zero_complex @ N) = zero_zero_complex)))))). % power_0_left
thf(fact_99_power__0__left, axiom,
    ((![N : nat]: (((N = zero_zero_nat) => ((power_184595776omplex @ zero_z1746442943omplex @ N) = one_one_poly_complex)) & ((~ ((N = zero_zero_nat))) => ((power_184595776omplex @ zero_z1746442943omplex @ N) = zero_z1746442943omplex)))))). % power_0_left
thf(fact_100_power__0__left, axiom,
    ((![N : nat]: (((N = zero_zero_nat) => ((power_power_nat @ zero_zero_nat @ N) = one_one_nat)) & ((~ ((N = zero_zero_nat))) => ((power_power_nat @ zero_zero_nat @ N) = zero_zero_nat)))))). % power_0_left
thf(fact_101_power__strict__increasing, axiom,
    ((![N : nat, N2 : nat, A : nat]: ((ord_less_nat @ N @ N2) => ((ord_less_nat @ one_one_nat @ A) => (ord_less_nat @ (power_power_nat @ A @ N) @ (power_power_nat @ A @ N2))))))). % power_strict_increasing
thf(fact_102_power__less__imp__less__exp, axiom,
    ((![A : nat, M : nat, N : nat]: ((ord_less_nat @ one_one_nat @ A) => ((ord_less_nat @ (power_power_nat @ A @ M) @ (power_power_nat @ A @ N)) => (ord_less_nat @ M @ N)))))). % power_less_imp_less_exp
thf(fact_103_power__increasing, axiom,
    ((![N : nat, N2 : nat, A : nat]: ((ord_less_eq_nat @ N @ N2) => ((ord_less_eq_nat @ one_one_nat @ A) => (ord_less_eq_nat @ (power_power_nat @ A @ N) @ (power_power_nat @ A @ N2))))))). % power_increasing
thf(fact_104_zero__power, axiom,
    ((![N : nat]: ((ord_less_nat @ zero_zero_nat @ N) => ((power_power_complex @ zero_zero_complex @ N) = zero_zero_complex))))). % zero_power
thf(fact_105_zero__power, axiom,
    ((![N : nat]: ((ord_less_nat @ zero_zero_nat @ N) => ((power_184595776omplex @ zero_z1746442943omplex @ N) = zero_z1746442943omplex))))). % zero_power
thf(fact_106_zero__power, axiom,
    ((![N : nat]: ((ord_less_nat @ zero_zero_nat @ N) => ((power_power_nat @ zero_zero_nat @ N) = zero_zero_nat))))). % zero_power
thf(fact_107_power__strict__decreasing, axiom,
    ((![N : nat, N2 : nat, A : nat]: ((ord_less_nat @ N @ N2) => ((ord_less_nat @ zero_zero_nat @ A) => ((ord_less_nat @ A @ one_one_nat) => (ord_less_nat @ (power_power_nat @ A @ N2) @ (power_power_nat @ A @ N)))))))). % power_strict_decreasing
thf(fact_108_power__decreasing, axiom,
    ((![N : nat, N2 : nat, A : nat]: ((ord_less_eq_nat @ N @ N2) => ((ord_less_eq_nat @ zero_zero_nat @ A) => ((ord_less_eq_nat @ A @ one_one_nat) => (ord_less_eq_nat @ (power_power_nat @ A @ N2) @ (power_power_nat @ A @ N)))))))). % power_decreasing
thf(fact_109_power__le__imp__le__exp, axiom,
    ((![A : nat, M : nat, N : nat]: ((ord_less_nat @ one_one_nat @ A) => ((ord_less_eq_nat @ (power_power_nat @ A @ M) @ (power_power_nat @ A @ N)) => (ord_less_eq_nat @ M @ N)))))). % power_le_imp_le_exp
thf(fact_110_power__eq__imp__eq__base, axiom,
    ((![A : nat, N : nat, B : nat]: (((power_power_nat @ A @ N) = (power_power_nat @ B @ N)) => ((ord_less_eq_nat @ zero_zero_nat @ A) => ((ord_less_eq_nat @ zero_zero_nat @ B) => ((ord_less_nat @ zero_zero_nat @ N) => (A = B)))))))). % power_eq_imp_eq_base
thf(fact_111_power__eq__iff__eq__base, axiom,
    ((![N : nat, A : nat, B : nat]: ((ord_less_nat @ zero_zero_nat @ N) => ((ord_less_eq_nat @ zero_zero_nat @ A) => ((ord_less_eq_nat @ zero_zero_nat @ B) => (((power_power_nat @ A @ N) = (power_power_nat @ B @ N)) = (A = B)))))))). % power_eq_iff_eq_base
thf(fact_112_self__le__power, axiom,
    ((![A : nat, N : nat]: ((ord_less_eq_nat @ one_one_nat @ A) => ((ord_less_nat @ zero_zero_nat @ N) => (ord_less_eq_nat @ A @ (power_power_nat @ A @ N))))))). % self_le_power
thf(fact_113_one__less__power, axiom,
    ((![A : nat, N : nat]: ((ord_less_nat @ one_one_nat @ A) => ((ord_less_nat @ zero_zero_nat @ N) => (ord_less_nat @ one_one_nat @ (power_power_nat @ A @ N))))))). % one_less_power
thf(fact_114_power__strict__mono, axiom,
    ((![A : nat, B : nat, N : nat]: ((ord_less_nat @ A @ B) => ((ord_less_eq_nat @ zero_zero_nat @ A) => ((ord_less_nat @ zero_zero_nat @ N) => (ord_less_nat @ (power_power_nat @ A @ N) @ (power_power_nat @ B @ N)))))))). % power_strict_mono
thf(fact_115_poly__pCons, axiom,
    ((![A : complex, P3 : poly_complex, X : complex]: ((poly_complex2 @ (pCons_complex @ A @ P3) @ X) = (plus_plus_complex @ A @ (times_times_complex @ X @ (poly_complex2 @ P3 @ X))))))). % poly_pCons
thf(fact_116_poly__pCons, axiom,
    ((![A : nat, P3 : poly_nat, X : nat]: ((poly_nat2 @ (pCons_nat @ A @ P3) @ X) = (plus_plus_nat @ A @ (times_times_nat @ X @ (poly_nat2 @ P3 @ X))))))). % poly_pCons
thf(fact_117_poly__pCons, axiom,
    ((![A : poly_complex, P3 : poly_poly_complex, X : poly_complex]: ((poly_poly_complex2 @ (pCons_poly_complex @ A @ P3) @ X) = (plus_p1547158847omplex @ A @ (times_1246143675omplex @ X @ (poly_poly_complex2 @ P3 @ X))))))). % poly_pCons
thf(fact_118_ap_I1_J, axiom,
    ((dvd_dvd_poly_complex @ (power_184595776omplex @ (pCons_complex @ (uminus1204672759omplex @ a) @ (pCons_complex @ one_one_complex @ zero_z1746442943omplex)) @ (order_complex @ a @ pa)) @ pa))). % ap(1)
thf(fact_119_poly__power, axiom,
    ((![P3 : poly_poly_complex, N : nat, X : poly_complex]: ((poly_poly_complex2 @ (power_432682568omplex @ P3 @ N) @ X) = (power_184595776omplex @ (poly_poly_complex2 @ P3 @ X) @ N))))). % poly_power
thf(fact_120_poly__power, axiom,
    ((![P3 : poly_nat, N : nat, X : nat]: ((poly_nat2 @ (power_power_poly_nat @ P3 @ N) @ X) = (power_power_nat @ (poly_nat2 @ P3 @ X) @ N))))). % poly_power
thf(fact_121_poly__power, axiom,
    ((![P3 : poly_complex, N : nat, X : complex]: ((poly_complex2 @ (power_184595776omplex @ P3 @ N) @ X) = (power_power_complex @ (poly_complex2 @ P3 @ X) @ N))))). % poly_power
thf(fact_122_poly__mult, axiom,
    ((![P3 : poly_poly_complex, Q2 : poly_poly_complex, X : poly_complex]: ((poly_poly_complex2 @ (times_1460995011omplex @ P3 @ Q2) @ X) = (times_1246143675omplex @ (poly_poly_complex2 @ P3 @ X) @ (poly_poly_complex2 @ Q2 @ X)))))). % poly_mult
thf(fact_123_poly__mult, axiom,
    ((![P3 : poly_complex, Q2 : poly_complex, X : complex]: ((poly_complex2 @ (times_1246143675omplex @ P3 @ Q2) @ X) = (times_times_complex @ (poly_complex2 @ P3 @ X) @ (poly_complex2 @ Q2 @ X)))))). % poly_mult
thf(fact_124_poly__0, axiom,
    ((![X : poly_complex]: ((poly_poly_complex2 @ zero_z1040703943omplex @ X) = zero_z1746442943omplex)))). % poly_0
thf(fact_125_poly__0, axiom,
    ((![X : nat]: ((poly_nat2 @ zero_zero_poly_nat @ X) = zero_zero_nat)))). % poly_0
thf(fact_126_poly__0, axiom,
    ((![X : complex]: ((poly_complex2 @ zero_z1746442943omplex @ X) = zero_zero_complex)))). % poly_0
thf(fact_127_degree__0, axiom,
    (((degree_complex @ zero_z1746442943omplex) = zero_zero_nat))). % degree_0
thf(fact_128_one__poly__eq__simps_I1_J, axiom,
    ((one_one_poly_complex = (pCons_complex @ one_one_complex @ zero_z1746442943omplex)))). % one_poly_eq_simps(1)
thf(fact_129_one__poly__eq__simps_I2_J, axiom,
    (((pCons_complex @ one_one_complex @ zero_z1746442943omplex) = one_one_poly_complex))). % one_poly_eq_simps(2)
thf(fact_130_degree__minus, axiom,
    ((![P3 : poly_complex]: ((degree_complex @ (uminus1138659839omplex @ P3)) = (degree_complex @ P3))))). % degree_minus
thf(fact_131_pCons__eq__iff, axiom,
    ((![A : complex, P3 : poly_complex, B : complex, Q2 : poly_complex]: (((pCons_complex @ A @ P3) = (pCons_complex @ B @ Q2)) = (((A = B)) & ((P3 = Q2))))))). % pCons_eq_iff
thf(fact_132_order__uminus, axiom,
    ((![X : complex, P3 : poly_complex]: ((order_complex @ X @ (uminus1138659839omplex @ P3)) = (order_complex @ X @ P3))))). % order_uminus
thf(fact_133_add__pCons, axiom,
    ((![A : complex, P3 : poly_complex, B : complex, Q2 : poly_complex]: ((plus_p1547158847omplex @ (pCons_complex @ A @ P3) @ (pCons_complex @ B @ Q2)) = (pCons_complex @ (plus_plus_complex @ A @ B) @ (plus_p1547158847omplex @ P3 @ Q2)))))). % add_pCons
thf(fact_134_add__pCons, axiom,
    ((![A : nat, P3 : poly_nat, B : nat, Q2 : poly_nat]: ((plus_plus_poly_nat @ (pCons_nat @ A @ P3) @ (pCons_nat @ B @ Q2)) = (pCons_nat @ (plus_plus_nat @ A @ B) @ (plus_plus_poly_nat @ P3 @ Q2)))))). % add_pCons
thf(fact_135_diff__pCons, axiom,
    ((![A : complex, P3 : poly_complex, B : complex, Q2 : poly_complex]: ((minus_174331535omplex @ (pCons_complex @ A @ P3) @ (pCons_complex @ B @ Q2)) = (pCons_complex @ (minus_minus_complex @ A @ B) @ (minus_174331535omplex @ P3 @ Q2)))))). % diff_pCons
thf(fact_136_diff__pCons, axiom,
    ((![A : nat, P3 : poly_nat, B : nat, Q2 : poly_nat]: ((minus_minus_poly_nat @ (pCons_nat @ A @ P3) @ (pCons_nat @ B @ Q2)) = (pCons_nat @ (minus_minus_nat @ A @ B) @ (minus_minus_poly_nat @ P3 @ Q2)))))). % diff_pCons
thf(fact_137_minus__pCons, axiom,
    ((![A : complex, P3 : poly_complex]: ((uminus1138659839omplex @ (pCons_complex @ A @ P3)) = (pCons_complex @ (uminus1204672759omplex @ A) @ (uminus1138659839omplex @ P3)))))). % minus_pCons
thf(fact_138_poly__add, axiom,
    ((![P3 : poly_complex, Q2 : poly_complex, X : complex]: ((poly_complex2 @ (plus_p1547158847omplex @ P3 @ Q2) @ X) = (plus_plus_complex @ (poly_complex2 @ P3 @ X) @ (poly_complex2 @ Q2 @ X)))))). % poly_add
thf(fact_139_poly__add, axiom,
    ((![P3 : poly_nat, Q2 : poly_nat, X : nat]: ((poly_nat2 @ (plus_plus_poly_nat @ P3 @ Q2) @ X) = (plus_plus_nat @ (poly_nat2 @ P3 @ X) @ (poly_nat2 @ Q2 @ X)))))). % poly_add
thf(fact_140_poly__diff, axiom,
    ((![P3 : poly_complex, Q2 : poly_complex, X : complex]: ((poly_complex2 @ (minus_174331535omplex @ P3 @ Q2) @ X) = (minus_minus_complex @ (poly_complex2 @ P3 @ X) @ (poly_complex2 @ Q2 @ X)))))). % poly_diff
thf(fact_141_poly__minus, axiom,
    ((![P3 : poly_complex, X : complex]: ((poly_complex2 @ (uminus1138659839omplex @ P3) @ X) = (uminus1204672759omplex @ (poly_complex2 @ P3 @ X)))))). % poly_minus
thf(fact_142__092_060open_062_091_058_N_Aa_M_A1_058_093_Advd_Aq_092_060close_062, axiom,
    ((dvd_dvd_poly_complex @ (pCons_complex @ (uminus1204672759omplex @ a) @ (pCons_complex @ one_one_complex @ zero_z1746442943omplex)) @ qa))). % \<open>[:- a, 1:] dvd q\<close>
thf(fact_143_pCons__0__0, axiom,
    (((pCons_complex @ zero_zero_complex @ zero_z1746442943omplex) = zero_z1746442943omplex))). % pCons_0_0
thf(fact_144_pCons__0__0, axiom,
    (((pCons_poly_complex @ zero_z1746442943omplex @ zero_z1040703943omplex) = zero_z1040703943omplex))). % pCons_0_0
thf(fact_145_pCons__0__0, axiom,
    (((pCons_nat @ zero_zero_nat @ zero_zero_poly_nat) = zero_zero_poly_nat))). % pCons_0_0
thf(fact_146_pCons__eq__0__iff, axiom,
    ((![A : poly_complex, P3 : poly_poly_complex]: (((pCons_poly_complex @ A @ P3) = zero_z1040703943omplex) = (((A = zero_z1746442943omplex)) & ((P3 = zero_z1040703943omplex))))))). % pCons_eq_0_iff
thf(fact_147_pCons__eq__0__iff, axiom,
    ((![A : nat, P3 : poly_nat]: (((pCons_nat @ A @ P3) = zero_zero_poly_nat) = (((A = zero_zero_nat)) & ((P3 = zero_zero_poly_nat))))))). % pCons_eq_0_iff
thf(fact_148_pCons__eq__0__iff, axiom,
    ((![A : complex, P3 : poly_complex]: (((pCons_complex @ A @ P3) = zero_z1746442943omplex) = (((A = zero_zero_complex)) & ((P3 = zero_z1746442943omplex))))))). % pCons_eq_0_iff
thf(fact_149_degree__1, axiom,
    (((degree_complex @ one_one_poly_complex) = zero_zero_nat))). % degree_1
thf(fact_150_poly__1, axiom,
    ((![X : complex]: ((poly_complex2 @ one_one_poly_complex @ X) = one_one_complex)))). % poly_1
thf(fact_151_order__1__eq__0, axiom,
    ((![X : complex]: ((order_complex @ X @ one_one_poly_complex) = zero_zero_nat)))). % order_1_eq_0
thf(fact_152_const__poly__dvd__const__poly__iff, axiom,
    ((![A : poly_complex, B : poly_complex]: ((dvd_dv598755940omplex @ (pCons_poly_complex @ A @ zero_z1040703943omplex) @ (pCons_poly_complex @ B @ zero_z1040703943omplex)) = (dvd_dvd_poly_complex @ A @ B))))). % const_poly_dvd_const_poly_iff
thf(fact_153_const__poly__dvd__const__poly__iff, axiom,
    ((![A : complex, B : complex]: ((dvd_dvd_poly_complex @ (pCons_complex @ A @ zero_z1746442943omplex) @ (pCons_complex @ B @ zero_z1746442943omplex)) = (dvd_dvd_complex @ A @ B))))). % const_poly_dvd_const_poly_iff
thf(fact_154_is__unit__polyE, axiom,
    ((![P3 : poly_poly_complex]: ((dvd_dv598755940omplex @ P3 @ one_on1331105667omplex) => (~ ((![C : poly_complex]: ((P3 = (pCons_poly_complex @ C @ zero_z1040703943omplex)) => (~ ((dvd_dvd_poly_complex @ C @ one_one_poly_complex))))))))))). % is_unit_polyE
thf(fact_155_is__unit__polyE, axiom,
    ((![P3 : poly_complex]: ((dvd_dvd_poly_complex @ P3 @ one_one_poly_complex) => (~ ((![C : complex]: ((P3 = (pCons_complex @ C @ zero_z1746442943omplex)) => (~ ((dvd_dvd_complex @ C @ one_one_complex))))))))))). % is_unit_polyE
thf(fact_156_is__unit__poly__iff, axiom,
    ((![P3 : poly_poly_complex]: ((dvd_dv598755940omplex @ P3 @ one_on1331105667omplex) = (?[C2 : poly_complex]: (((P3 = (pCons_poly_complex @ C2 @ zero_z1040703943omplex))) & ((dvd_dvd_poly_complex @ C2 @ one_one_poly_complex)))))))). % is_unit_poly_iff
thf(fact_157_is__unit__poly__iff, axiom,
    ((![P3 : poly_complex]: ((dvd_dvd_poly_complex @ P3 @ one_one_poly_complex) = (?[C2 : complex]: (((P3 = (pCons_complex @ C2 @ zero_z1746442943omplex))) & ((dvd_dvd_complex @ C2 @ one_one_complex)))))))). % is_unit_poly_iff
thf(fact_158_is__unit__const__poly__iff, axiom,
    ((![C3 : poly_complex]: ((dvd_dv598755940omplex @ (pCons_poly_complex @ C3 @ zero_z1040703943omplex) @ one_on1331105667omplex) = (dvd_dvd_poly_complex @ C3 @ one_one_poly_complex))))). % is_unit_const_poly_iff
thf(fact_159_is__unit__const__poly__iff, axiom,
    ((![C3 : complex]: ((dvd_dvd_poly_complex @ (pCons_complex @ C3 @ zero_z1746442943omplex) @ one_one_poly_complex) = (dvd_dvd_complex @ C3 @ one_one_complex))))). % is_unit_const_poly_iff
thf(fact_160_dvd__power__same, axiom,
    ((![X : poly_complex, Y : poly_complex, N : nat]: ((dvd_dvd_poly_complex @ X @ Y) => (dvd_dvd_poly_complex @ (power_184595776omplex @ X @ N) @ (power_184595776omplex @ Y @ N)))))). % dvd_power_same
thf(fact_161_dvd__power__same, axiom,
    ((![X : nat, Y : nat, N : nat]: ((dvd_dvd_nat @ X @ Y) => (dvd_dvd_nat @ (power_power_nat @ X @ N) @ (power_power_nat @ Y @ N)))))). % dvd_power_same
thf(fact_162_power__mult, axiom,
    ((![A : poly_complex, M : nat, N : nat]: ((power_184595776omplex @ A @ (times_times_nat @ M @ N)) = (power_184595776omplex @ (power_184595776omplex @ A @ M) @ N))))). % power_mult
thf(fact_163_power__mult, axiom,
    ((![A : nat, M : nat, N : nat]: ((power_power_nat @ A @ (times_times_nat @ M @ N)) = (power_power_nat @ (power_power_nat @ A @ M) @ N))))). % power_mult
thf(fact_164_dvd__power__le, axiom,
    ((![X : poly_complex, Y : poly_complex, N : nat, M : nat]: ((dvd_dvd_poly_complex @ X @ Y) => ((ord_less_eq_nat @ N @ M) => (dvd_dvd_poly_complex @ (power_184595776omplex @ X @ N) @ (power_184595776omplex @ Y @ M))))))). % dvd_power_le
thf(fact_165_dvd__power__le, axiom,
    ((![X : nat, Y : nat, N : nat, M : nat]: ((dvd_dvd_nat @ X @ Y) => ((ord_less_eq_nat @ N @ M) => (dvd_dvd_nat @ (power_power_nat @ X @ N) @ (power_power_nat @ Y @ M))))))). % dvd_power_le
thf(fact_166_power__le__dvd, axiom,
    ((![A : poly_complex, N : nat, B : poly_complex, M : nat]: ((dvd_dvd_poly_complex @ (power_184595776omplex @ A @ N) @ B) => ((ord_less_eq_nat @ M @ N) => (dvd_dvd_poly_complex @ (power_184595776omplex @ A @ M) @ B)))))). % power_le_dvd
thf(fact_167_power__le__dvd, axiom,
    ((![A : nat, N : nat, B : nat, M : nat]: ((dvd_dvd_nat @ (power_power_nat @ A @ N) @ B) => ((ord_less_eq_nat @ M @ N) => (dvd_dvd_nat @ (power_power_nat @ A @ M) @ B)))))). % power_le_dvd
thf(fact_168_le__imp__power__dvd, axiom,
    ((![M : nat, N : nat, A : poly_complex]: ((ord_less_eq_nat @ M @ N) => (dvd_dvd_poly_complex @ (power_184595776omplex @ A @ M) @ (power_184595776omplex @ A @ N)))))). % le_imp_power_dvd
thf(fact_169_le__imp__power__dvd, axiom,
    ((![M : nat, N : nat, A : nat]: ((ord_less_eq_nat @ M @ N) => (dvd_dvd_nat @ (power_power_nat @ A @ M) @ (power_power_nat @ A @ N)))))). % le_imp_power_dvd
thf(fact_170_is__unit__triv, axiom,
    ((![A : complex]: ((~ ((A = zero_zero_complex))) => (dvd_dvd_poly_complex @ (pCons_complex @ A @ zero_z1746442943omplex) @ one_one_poly_complex))))). % is_unit_triv
thf(fact_171_is__unit__pCons__iff, axiom,
    ((![A : complex, P3 : poly_complex]: ((dvd_dvd_poly_complex @ (pCons_complex @ A @ P3) @ one_one_poly_complex) = (((P3 = zero_z1746442943omplex)) & ((~ ((A = zero_zero_complex))))))))). % is_unit_pCons_iff
thf(fact_172_is__unit__iff__degree, axiom,
    ((![P3 : poly_complex]: ((~ ((P3 = zero_z1746442943omplex))) => ((dvd_dvd_poly_complex @ P3 @ one_one_poly_complex) = ((degree_complex @ P3) = zero_zero_nat)))))). % is_unit_iff_degree
thf(fact_173_divides__degree, axiom,
    ((![P3 : poly_complex, Q2 : poly_complex]: ((dvd_dvd_poly_complex @ P3 @ Q2) => ((ord_less_eq_nat @ (degree_complex @ P3) @ (degree_complex @ Q2)) | (Q2 = zero_z1746442943omplex)))))). % divides_degree
thf(fact_174_dvd__imp__degree__le, axiom,
    ((![P3 : poly_complex, Q2 : poly_complex]: ((dvd_dvd_poly_complex @ P3 @ Q2) => ((~ ((Q2 = zero_z1746442943omplex))) => (ord_less_eq_nat @ (degree_complex @ P3) @ (degree_complex @ Q2))))))). % dvd_imp_degree_le
thf(fact_175_dvd__imp__order__le, axiom,
    ((![Q2 : poly_complex, P3 : poly_complex, A : complex]: ((~ ((Q2 = zero_z1746442943omplex))) => ((dvd_dvd_poly_complex @ P3 @ Q2) => (ord_less_eq_nat @ (order_complex @ A @ P3) @ (order_complex @ A @ Q2))))))). % dvd_imp_order_le
thf(fact_176_degree__power__le, axiom,
    ((![P3 : poly_complex, N : nat]: (ord_less_eq_nat @ (degree_complex @ (power_184595776omplex @ P3 @ N)) @ (times_times_nat @ (degree_complex @ P3) @ N))))). % degree_power_le
thf(fact_177_degree__power__eq, axiom,
    ((![P3 : poly_complex, N : nat]: ((~ ((P3 = zero_z1746442943omplex))) => ((degree_complex @ (power_184595776omplex @ P3 @ N)) = (times_times_nat @ N @ (degree_complex @ P3))))))). % degree_power_eq
thf(fact_178_is__unit__power__iff, axiom,
    ((![A : poly_complex, N : nat]: ((dvd_dvd_poly_complex @ (power_184595776omplex @ A @ N) @ one_one_poly_complex) = (((dvd_dvd_poly_complex @ A @ one_one_poly_complex)) | ((N = zero_zero_nat))))))). % is_unit_power_iff
thf(fact_179_is__unit__power__iff, axiom,
    ((![A : nat, N : nat]: ((dvd_dvd_nat @ (power_power_nat @ A @ N) @ one_one_nat) = (((dvd_dvd_nat @ A @ one_one_nat)) | ((N = zero_zero_nat))))))). % is_unit_power_iff
thf(fact_180_pCons__cases, axiom,
    ((![P3 : poly_complex]: (~ ((![A2 : complex, Q3 : poly_complex]: (~ ((P3 = (pCons_complex @ A2 @ Q3)))))))))). % pCons_cases
thf(fact_181_pderiv_Ocases, axiom,
    ((![X : poly_complex]: (~ ((![A2 : complex, P4 : poly_complex]: (~ ((X = (pCons_complex @ A2 @ P4)))))))))). % pderiv.cases
thf(fact_182_poly__eq__poly__eq__iff, axiom,
    ((![P3 : poly_complex, Q2 : poly_complex]: (((poly_complex2 @ P3) = (poly_complex2 @ Q2)) = (P3 = Q2))))). % poly_eq_poly_eq_iff
thf(fact_183_mult__poly__add__left, axiom,
    ((![P3 : poly_complex, Q2 : poly_complex, R2 : poly_complex]: ((times_1246143675omplex @ (plus_p1547158847omplex @ P3 @ Q2) @ R2) = (plus_p1547158847omplex @ (times_1246143675omplex @ P3 @ R2) @ (times_1246143675omplex @ Q2 @ R2)))))). % mult_poly_add_left
thf(fact_184_dvd__power__iff, axiom,
    ((![X : poly_complex, M : nat, N : nat]: ((~ ((X = zero_z1746442943omplex))) => ((dvd_dvd_poly_complex @ (power_184595776omplex @ X @ M) @ (power_184595776omplex @ X @ N)) = (((dvd_dvd_poly_complex @ X @ one_one_poly_complex)) | ((ord_less_eq_nat @ M @ N)))))))). % dvd_power_iff
thf(fact_185_dvd__power__iff, axiom,
    ((![X : nat, M : nat, N : nat]: ((~ ((X = zero_zero_nat))) => ((dvd_dvd_nat @ (power_power_nat @ X @ M) @ (power_power_nat @ X @ N)) = (((dvd_dvd_nat @ X @ one_one_nat)) | ((ord_less_eq_nat @ M @ N)))))))). % dvd_power_iff
thf(fact_186_dvd__power, axiom,
    ((![N : nat, X : complex]: (((ord_less_nat @ zero_zero_nat @ N) | (X = one_one_complex)) => (dvd_dvd_complex @ X @ (power_power_complex @ X @ N)))))). % dvd_power
thf(fact_187_dvd__power, axiom,
    ((![N : nat, X : poly_complex]: (((ord_less_nat @ zero_zero_nat @ N) | (X = one_one_poly_complex)) => (dvd_dvd_poly_complex @ X @ (power_184595776omplex @ X @ N)))))). % dvd_power
thf(fact_188_dvd__power, axiom,
    ((![N : nat, X : nat]: (((ord_less_nat @ zero_zero_nat @ N) | (X = one_one_nat)) => (dvd_dvd_nat @ X @ (power_power_nat @ X @ N)))))). % dvd_power
thf(fact_189_dvd__iff__poly__eq__0, axiom,
    ((![C3 : poly_complex, P3 : poly_poly_complex]: ((dvd_dv598755940omplex @ (pCons_poly_complex @ C3 @ (pCons_poly_complex @ one_one_poly_complex @ zero_z1040703943omplex)) @ P3) = ((poly_poly_complex2 @ P3 @ (uminus1138659839omplex @ C3)) = zero_z1746442943omplex))))). % dvd_iff_poly_eq_0
thf(fact_190_dvd__iff__poly__eq__0, axiom,
    ((![C3 : complex, P3 : poly_complex]: ((dvd_dvd_poly_complex @ (pCons_complex @ C3 @ (pCons_complex @ one_one_complex @ zero_z1746442943omplex)) @ P3) = ((poly_complex2 @ P3 @ (uminus1204672759omplex @ C3)) = zero_zero_complex))))). % dvd_iff_poly_eq_0
thf(fact_191_poly__eq__0__iff__dvd, axiom,
    ((![P3 : poly_poly_complex, C3 : poly_complex]: (((poly_poly_complex2 @ P3 @ C3) = zero_z1746442943omplex) = (dvd_dv598755940omplex @ (pCons_poly_complex @ (uminus1138659839omplex @ C3) @ (pCons_poly_complex @ one_one_poly_complex @ zero_z1040703943omplex)) @ P3))))). % poly_eq_0_iff_dvd
thf(fact_192_poly__eq__0__iff__dvd, axiom,
    ((![P3 : poly_complex, C3 : complex]: (((poly_complex2 @ P3 @ C3) = zero_zero_complex) = (dvd_dvd_poly_complex @ (pCons_complex @ (uminus1204672759omplex @ C3) @ (pCons_complex @ one_one_complex @ zero_z1746442943omplex)) @ P3))))). % poly_eq_0_iff_dvd
thf(fact_193_order__1, axiom,
    ((![A : complex, P3 : poly_complex]: (dvd_dvd_poly_complex @ (power_184595776omplex @ (pCons_complex @ (uminus1204672759omplex @ A) @ (pCons_complex @ one_one_complex @ zero_z1746442943omplex)) @ (order_complex @ A @ P3)) @ P3)))). % order_1
thf(fact_194_order__divides, axiom,
    ((![A : complex, N : nat, P3 : poly_complex]: ((dvd_dvd_poly_complex @ (power_184595776omplex @ (pCons_complex @ (uminus1204672759omplex @ A) @ (pCons_complex @ one_one_complex @ zero_z1746442943omplex)) @ N) @ P3) = (((P3 = zero_z1746442943omplex)) | ((ord_less_eq_nat @ N @ (order_complex @ A @ P3)))))))). % order_divides
thf(fact_195_order__decomp, axiom,
    ((![P3 : poly_complex, A : complex]: ((~ ((P3 = zero_z1746442943omplex))) => (?[Q3 : poly_complex]: ((P3 = (times_1246143675omplex @ (power_184595776omplex @ (pCons_complex @ (uminus1204672759omplex @ A) @ (pCons_complex @ one_one_complex @ zero_z1746442943omplex)) @ (order_complex @ A @ P3)) @ Q3)) & (~ ((dvd_dvd_poly_complex @ (pCons_complex @ (uminus1204672759omplex @ A) @ (pCons_complex @ one_one_complex @ zero_z1746442943omplex)) @ Q3))))))))). % order_decomp
thf(fact_196_degree__add__eq__right, axiom,
    ((![P3 : poly_complex, Q2 : poly_complex]: ((ord_less_nat @ (degree_complex @ P3) @ (degree_complex @ Q2)) => ((degree_complex @ (plus_p1547158847omplex @ P3 @ Q2)) = (degree_complex @ Q2)))))). % degree_add_eq_right
thf(fact_197_degree__add__eq__left, axiom,
    ((![Q2 : poly_complex, P3 : poly_complex]: ((ord_less_nat @ (degree_complex @ Q2) @ (degree_complex @ P3)) => ((degree_complex @ (plus_p1547158847omplex @ P3 @ Q2)) = (degree_complex @ P3)))))). % degree_add_eq_left

% Helper facts (7)
thf(help_If_2_1_If_001t__Nat__Onat_T, axiom,
    ((![X : nat, Y : nat]: ((if_nat @ $false @ X @ Y) = Y)))).
thf(help_If_1_1_If_001t__Nat__Onat_T, axiom,
    ((![X : nat, Y : nat]: ((if_nat @ $true @ X @ Y) = X)))).
thf(help_If_2_1_If_001t__Complex__Ocomplex_T, axiom,
    ((![X : complex, Y : complex]: ((if_complex @ $false @ X @ Y) = Y)))).
thf(help_If_1_1_If_001t__Complex__Ocomplex_T, axiom,
    ((![X : complex, Y : complex]: ((if_complex @ $true @ X @ Y) = X)))).
thf(help_If_3_1_If_001t__Polynomial__Opoly_It__Complex__Ocomplex_J_T, axiom,
    ((![P5 : $o]: ((P5 = $true) | (P5 = $false))))).
thf(help_If_2_1_If_001t__Polynomial__Opoly_It__Complex__Ocomplex_J_T, axiom,
    ((![X : poly_complex, Y : poly_complex]: ((if_poly_complex @ $false @ X @ Y) = Y)))).
thf(help_If_1_1_If_001t__Polynomial__Opoly_It__Complex__Ocomplex_J_T, axiom,
    ((![X : poly_complex, Y : poly_complex]: ((if_poly_complex @ $true @ X @ Y) = X)))).

% Conjectures (3)
thf(conj_0, hypothesis,
    ($true)).
thf(conj_1, hypothesis,
    ($true)).
thf(conj_2, conjecture,
    ((((r = zero_z1746442943omplex) & (ord_less_nat @ zero_zero_nat @ na)) | ((power_184595776omplex @ (pCons_complex @ (uminus1204672759omplex @ a) @ (pCons_complex @ one_one_complex @ zero_z1746442943omplex)) @ na) = (power_184595776omplex @ (pCons_complex @ (uminus1204672759omplex @ a) @ (pCons_complex @ one_one_complex @ zero_z1746442943omplex)) @ (plus_plus_nat @ (order_complex @ a @ pa) @ (minus_minus_nat @ na @ (order_complex @ a @ pa)))))))).
