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

% 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 (50)
thf(sy_c_Fundamental__Theorem__Algebra__Mirabelle__sywschxjbb_Oconstant_001t__Complex__Ocomplex_001t__Complex__Ocomplex, type,
    fundam1158420650omplex : (complex > complex) > $o).
thf(sy_c_Fundamental__Theorem__Algebra__Mirabelle__sywschxjbb_Opsize_001t__Complex__Ocomplex, type,
    fundam1709708056omplex : poly_complex > 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_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__Nat__Onat, type,
    if_nat : $o > nat > nat > nat).
thf(sy_c_Nat_OSuc, type,
    suc : nat > nat).
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_Oorder_001t__Polynomial__Opoly_It__Complex__Ocomplex_J, type,
    order_poly_complex : poly_complex > poly_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_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).
thf(sy_v_u____, type,
    u : poly_complex).
thf(sy_v_x____, type,
    x : complex).

% Relevant facts (174)
thf(fact_0__092_060open_062x_A_061_Aa_092_060close_062, axiom,
    ((x = a))). % \<open>x = a\<close>
thf(fact_1_pne, axiom,
    ((~ ((pa = zero_z1746442943omplex))))). % pne
thf(fact_2_assms_I3_J, axiom,
    ((~ ((n = zero_zero_nat))))). % assms(3)
thf(fact_3_constant__def, axiom,
    ((fundam1158420650omplex = (^[F : complex > complex]: (![X : complex]: (![Y : complex]: ((F @ X) = (F @ Y)))))))). % constant_def
thf(fact_4_n0, axiom,
    ((~ ((na = zero_zero_nat))))). % n0
thf(fact_5_sne, axiom,
    ((~ ((s = zero_z1746442943omplex))))). % sne
thf(fact_6_oa, axiom,
    ((~ (((order_complex @ a @ pa) = zero_zero_nat))))). % oa
thf(fact_7_assms_I2_J, axiom,
    (((degree_complex @ p) = n))). % assms(2)
thf(fact_8_False, axiom,
    ((~ (((degree_complex @ s) = zero_zero_nat))))). % False
thf(fact_9_dpn, axiom,
    (((degree_complex @ pa) = na))). % dpn
thf(fact_10__092_060open_062_092_060nexists_062k_O_Ap_A_061_A_091_058_N_Aa_M_A1_058_093_A_094_ASuc_A_Iorder_Aa_Ap_J_A_K_Ak_092_060close_062, axiom,
    ((~ ((?[K : poly_complex]: (pa = (times_1246143675omplex @ (power_184595776omplex @ (pCons_complex @ (uminus1204672759omplex @ a) @ (pCons_complex @ one_one_complex @ zero_z1746442943omplex)) @ (suc @ (order_complex @ a @ pa))) @ K))))))). % \<open>\<nexists>k. p = [:- a, 1:] ^ Suc (order a p) * k\<close>
thf(fact_11_u, axiom,
    ((s = (times_1246143675omplex @ (pCons_complex @ (uminus1204672759omplex @ a) @ (pCons_complex @ one_one_complex @ zero_z1746442943omplex)) @ u)))). % u
thf(fact_12__092_060open_062p_A_061_A_091_058_N_Aa_M_A1_058_093_A_094_ASuc_A_Iorder_Aa_Ap_J_A_K_Au_092_060close_062, axiom,
    ((pa = (times_1246143675omplex @ (power_184595776omplex @ (pCons_complex @ (uminus1204672759omplex @ a) @ (pCons_complex @ one_one_complex @ zero_z1746442943omplex)) @ (suc @ (order_complex @ a @ pa))) @ u)))). % \<open>p = [:- a, 1:] ^ Suc (order a p) * u\<close>
thf(fact_13_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_14_degree__0, axiom,
    (((degree_complex @ zero_z1746442943omplex) = zero_zero_nat))). % degree_0
thf(fact_15_dsn, axiom,
    ((ord_less_nat @ (degree_complex @ s) @ na))). % dsn
thf(fact_16_oop, axiom,
    ((![A : complex]: (ord_less_eq_nat @ (order_complex @ A @ pa) @ na)))). % oop
thf(fact_17__092_060open_062_092_060And_062thesis_O_A_I_092_060And_062u_O_As_A_061_A_091_058_N_Aa_M_A1_058_093_A_K_Au_A_092_060Longrightarrow_062_Athesis_J_A_092_060Longrightarrow_062_Athesis_092_060close_062, axiom,
    ((~ ((![U : poly_complex]: (~ ((s = (times_1246143675omplex @ (pCons_complex @ (uminus1204672759omplex @ a) @ (pCons_complex @ one_one_complex @ zero_z1746442943omplex)) @ U))))))))). % \<open>\<And>thesis. (\<And>u. s = [:- a, 1:] * u \<Longrightarrow> thesis) \<Longrightarrow> thesis\<close>
thf(fact_18__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_19_that, axiom,
    (((poly_complex2 @ s @ x) = zero_zero_complex))). % that
thf(fact_20_psize__eq__0__iff, axiom,
    ((![P : poly_complex]: (((fundam1709708056omplex @ P) = zero_zero_nat) = (P = zero_z1746442943omplex))))). % psize_eq_0_iff
thf(fact_21_degree__mult__eq__0, axiom,
    ((![P : poly_complex, Q : poly_complex]: (((degree_complex @ (times_1246143675omplex @ P @ Q)) = zero_zero_nat) = (((P = zero_z1746442943omplex)) | ((((Q = zero_z1746442943omplex)) | ((((~ ((P = zero_z1746442943omplex)))) & ((((~ ((Q = zero_z1746442943omplex)))) & (((((degree_complex @ P) = zero_zero_nat)) & (((degree_complex @ Q) = zero_zero_nat))))))))))))))). % degree_mult_eq_0
thf(fact_22_r, axiom,
    ((qa = (times_1246143675omplex @ (pCons_complex @ (uminus1204672759omplex @ a) @ (pCons_complex @ one_one_complex @ zero_z1746442943omplex)) @ r)))). % r
thf(fact_23_True, axiom,
    ((?[A2 : complex]: ((poly_complex2 @ pa @ A2) = zero_zero_complex)))). % True
thf(fact_24_a, axiom,
    (((poly_complex2 @ pa @ a) = zero_zero_complex))). % a
thf(fact_25_pq0, axiom,
    ((![X2 : complex]: (((poly_complex2 @ pa @ X2) = zero_zero_complex) => ((poly_complex2 @ qa @ X2) = zero_zero_complex))))). % pq0
thf(fact_26_assms_I1_J, axiom,
    ((![X2 : complex]: (((poly_complex2 @ p @ X2) = zero_zero_complex) => ((poly_complex2 @ q @ X2) = zero_zero_complex))))). % assms(1)
thf(fact_27__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_28_neg__equal__iff__equal, axiom,
    ((![A : complex, B : complex]: (((uminus1204672759omplex @ A) = (uminus1204672759omplex @ B)) = (A = B))))). % neg_equal_iff_equal
thf(fact_29_add_Oinverse__inverse, axiom,
    ((![A : complex]: ((uminus1204672759omplex @ (uminus1204672759omplex @ A)) = A)))). % add.inverse_inverse
thf(fact_30_pCons__eq__iff, axiom,
    ((![A : complex, P : poly_complex, B : complex, Q : poly_complex]: (((pCons_complex @ A @ P) = (pCons_complex @ B @ Q)) = (((A = B)) & ((P = Q))))))). % pCons_eq_iff
thf(fact_31_le__zero__eq, axiom,
    ((![N : nat]: ((ord_less_eq_nat @ N @ zero_zero_nat) = (N = zero_zero_nat))))). % le_zero_eq
thf(fact_32_not__gr__zero, axiom,
    ((![N : nat]: ((~ ((ord_less_nat @ zero_zero_nat @ N))) = (N = zero_zero_nat))))). % not_gr_zero
thf(fact_33_neg__equal__0__iff__equal, axiom,
    ((![A : poly_complex]: (((uminus1138659839omplex @ A) = zero_z1746442943omplex) = (A = zero_z1746442943omplex))))). % neg_equal_0_iff_equal
thf(fact_34_neg__equal__0__iff__equal, axiom,
    ((![A : complex]: (((uminus1204672759omplex @ A) = zero_zero_complex) = (A = zero_zero_complex))))). % neg_equal_0_iff_equal
thf(fact_35_neg__0__equal__iff__equal, axiom,
    ((![A : poly_complex]: ((zero_z1746442943omplex = (uminus1138659839omplex @ A)) = (zero_z1746442943omplex = A))))). % neg_0_equal_iff_equal
thf(fact_36_neg__0__equal__iff__equal, axiom,
    ((![A : complex]: ((zero_zero_complex = (uminus1204672759omplex @ A)) = (zero_zero_complex = A))))). % neg_0_equal_iff_equal
thf(fact_37_add_Oinverse__neutral, axiom,
    (((uminus1138659839omplex @ zero_z1746442943omplex) = zero_z1746442943omplex))). % add.inverse_neutral
thf(fact_38_add_Oinverse__neutral, axiom,
    (((uminus1204672759omplex @ zero_zero_complex) = zero_zero_complex))). % add.inverse_neutral
thf(fact_39_mult_Oright__neutral, axiom,
    ((![A : complex]: ((times_times_complex @ A @ one_one_complex) = A)))). % mult.right_neutral
thf(fact_40_mult_Oright__neutral, axiom,
    ((![A : poly_complex]: ((times_1246143675omplex @ A @ one_one_poly_complex) = A)))). % mult.right_neutral
thf(fact_41_mult_Oleft__neutral, axiom,
    ((![A : complex]: ((times_times_complex @ one_one_complex @ A) = A)))). % mult.left_neutral
thf(fact_42_mult_Oleft__neutral, axiom,
    ((![A : poly_complex]: ((times_1246143675omplex @ one_one_poly_complex @ A) = A)))). % mult.left_neutral
thf(fact_43_minus__pCons, axiom,
    ((![A : complex, P : poly_complex]: ((uminus1138659839omplex @ (pCons_complex @ A @ P)) = (pCons_complex @ (uminus1204672759omplex @ A) @ (uminus1138659839omplex @ P)))))). % minus_pCons
thf(fact_44_poly__1, axiom,
    ((![X3 : complex]: ((poly_complex2 @ one_one_poly_complex @ X3) = one_one_complex)))). % poly_1
thf(fact_45_poly__minus, axiom,
    ((![P : poly_complex, X3 : complex]: ((poly_complex2 @ (uminus1138659839omplex @ P) @ X3) = (uminus1204672759omplex @ (poly_complex2 @ P @ X3)))))). % poly_minus
thf(fact_46__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_47_pCons__eq__0__iff, axiom,
    ((![A : poly_complex, P : poly_poly_complex]: (((pCons_poly_complex @ A @ P) = zero_z1040703943omplex) = (((A = zero_z1746442943omplex)) & ((P = zero_z1040703943omplex))))))). % pCons_eq_0_iff
thf(fact_48_pCons__eq__0__iff, axiom,
    ((![A : nat, P : poly_nat]: (((pCons_nat @ A @ P) = zero_zero_poly_nat) = (((A = zero_zero_nat)) & ((P = zero_zero_poly_nat))))))). % pCons_eq_0_iff
thf(fact_49_pCons__eq__0__iff, axiom,
    ((![A : complex, P : poly_complex]: (((pCons_complex @ A @ P) = zero_z1746442943omplex) = (((A = zero_zero_complex)) & ((P = zero_z1746442943omplex))))))). % pCons_eq_0_iff
thf(fact_50_pCons__0__0, axiom,
    (((pCons_poly_complex @ zero_z1746442943omplex @ zero_z1040703943omplex) = zero_z1040703943omplex))). % pCons_0_0
thf(fact_51_pCons__0__0, axiom,
    (((pCons_nat @ zero_zero_nat @ zero_zero_poly_nat) = zero_zero_poly_nat))). % pCons_0_0
thf(fact_52_pCons__0__0, axiom,
    (((pCons_complex @ zero_zero_complex @ zero_z1746442943omplex) = zero_z1746442943omplex))). % pCons_0_0
thf(fact_53_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_54_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_55_poly__0, axiom,
    ((![X3 : poly_complex]: ((poly_poly_complex2 @ zero_z1040703943omplex @ X3) = zero_z1746442943omplex)))). % poly_0
thf(fact_56_poly__0, axiom,
    ((![X3 : nat]: ((poly_nat2 @ zero_zero_poly_nat @ X3) = zero_zero_nat)))). % poly_0
thf(fact_57_poly__0, axiom,
    ((![X3 : complex]: ((poly_complex2 @ zero_z1746442943omplex @ X3) = zero_zero_complex)))). % poly_0
thf(fact_58_poly__mult, axiom,
    ((![P : poly_poly_complex, Q : poly_poly_complex, X3 : poly_complex]: ((poly_poly_complex2 @ (times_1460995011omplex @ P @ Q) @ X3) = (times_1246143675omplex @ (poly_poly_complex2 @ P @ X3) @ (poly_poly_complex2 @ Q @ X3)))))). % poly_mult
thf(fact_59_poly__mult, axiom,
    ((![P : poly_complex, Q : poly_complex, X3 : complex]: ((poly_complex2 @ (times_1246143675omplex @ P @ Q) @ X3) = (times_times_complex @ (poly_complex2 @ P @ X3) @ (poly_complex2 @ Q @ X3)))))). % poly_mult
thf(fact_60_poly__power, axiom,
    ((![P : poly_poly_complex, N : nat, X3 : poly_complex]: ((poly_poly_complex2 @ (power_432682568omplex @ P @ N) @ X3) = (power_184595776omplex @ (poly_poly_complex2 @ P @ X3) @ N))))). % poly_power
thf(fact_61_poly__power, axiom,
    ((![P : poly_nat, N : nat, X3 : nat]: ((poly_nat2 @ (power_power_poly_nat @ P @ N) @ X3) = (power_power_nat @ (poly_nat2 @ P @ X3) @ N))))). % poly_power
thf(fact_62_poly__power, axiom,
    ((![P : poly_complex, N : nat, X3 : complex]: ((poly_complex2 @ (power_184595776omplex @ P @ N) @ X3) = (power_power_complex @ (poly_complex2 @ P @ X3) @ N))))). % poly_power
thf(fact_63_degree__pCons__eq__if, axiom,
    ((![P : poly_complex, A : complex]: (((P = zero_z1746442943omplex) => ((degree_complex @ (pCons_complex @ A @ P)) = zero_zero_nat)) & ((~ ((P = zero_z1746442943omplex))) => ((degree_complex @ (pCons_complex @ A @ P)) = (suc @ (degree_complex @ P)))))))). % degree_pCons_eq_if
thf(fact_64_IH, axiom,
    ((![M : nat]: ((ord_less_nat @ M @ na) => (![P2 : poly_complex, Q2 : poly_complex]: ((![X4 : complex]: (((poly_complex2 @ P2 @ X4) = zero_zero_complex) => ((poly_complex2 @ Q2 @ X4) = zero_zero_complex))) => (((degree_complex @ P2) = M) => ((~ ((M = zero_zero_nat))) => (dvd_dvd_poly_complex @ P2 @ (power_184595776omplex @ Q2 @ M)))))))))). % IH
thf(fact_65_pCons__one, axiom,
    (((pCons_complex @ one_one_complex @ zero_z1746442943omplex) = one_one_poly_complex))). % pCons_one
thf(fact_66_degree__pCons__le, axiom,
    ((![A : complex, P : poly_complex]: (ord_less_eq_nat @ (degree_complex @ (pCons_complex @ A @ P)) @ (suc @ (degree_complex @ P)))))). % degree_pCons_le
thf(fact_67_fundamental__theorem__of__algebra, axiom,
    ((![P : poly_complex]: ((~ ((fundam1158420650omplex @ (poly_complex2 @ P)))) => (?[Z : complex]: ((poly_complex2 @ P @ Z) = zero_zero_complex)))))). % fundamental_theorem_of_algebra
thf(fact_68_mult_Oleft__commute, axiom,
    ((![B : poly_complex, A : poly_complex, C : poly_complex]: ((times_1246143675omplex @ B @ (times_1246143675omplex @ A @ C)) = (times_1246143675omplex @ A @ (times_1246143675omplex @ B @ C)))))). % mult.left_commute
thf(fact_69_mult_Ocomm__neutral, axiom,
    ((![A : complex]: ((times_times_complex @ A @ one_one_complex) = A)))). % mult.comm_neutral
thf(fact_70_mult_Ocomm__neutral, axiom,
    ((![A : poly_complex]: ((times_1246143675omplex @ A @ one_one_poly_complex) = A)))). % mult.comm_neutral
thf(fact_71_mult_Ocommute, axiom,
    ((times_1246143675omplex = (^[A3 : poly_complex]: (^[B2 : poly_complex]: (times_1246143675omplex @ B2 @ A3)))))). % mult.commute
thf(fact_72_minus__equation__iff, axiom,
    ((![A : complex, B : complex]: (((uminus1204672759omplex @ A) = B) = ((uminus1204672759omplex @ B) = A))))). % minus_equation_iff
thf(fact_73_equation__minus__iff, axiom,
    ((![A : complex, B : complex]: ((A = (uminus1204672759omplex @ B)) = (B = (uminus1204672759omplex @ A)))))). % equation_minus_iff
thf(fact_74_mult_Oassoc, axiom,
    ((![A : poly_complex, B : poly_complex, C : poly_complex]: ((times_1246143675omplex @ (times_1246143675omplex @ A @ B) @ C) = (times_1246143675omplex @ A @ (times_1246143675omplex @ B @ C)))))). % mult.assoc
thf(fact_75_comm__monoid__mult__class_Omult__1, axiom,
    ((![A : complex]: ((times_times_complex @ one_one_complex @ A) = A)))). % comm_monoid_mult_class.mult_1
thf(fact_76_comm__monoid__mult__class_Omult__1, axiom,
    ((![A : poly_complex]: ((times_1246143675omplex @ one_one_poly_complex @ A) = A)))). % comm_monoid_mult_class.mult_1
thf(fact_77_poly__eq__poly__eq__iff, axiom,
    ((![P : poly_complex, Q : poly_complex]: (((poly_complex2 @ P) = (poly_complex2 @ Q)) = (P = Q))))). % poly_eq_poly_eq_iff
thf(fact_78_pderiv_Ocases, axiom,
    ((![X3 : poly_complex]: (~ ((![A2 : complex, P3 : poly_complex]: (~ ((X3 = (pCons_complex @ A2 @ P3)))))))))). % pderiv.cases
thf(fact_79_pCons__cases, axiom,
    ((![P : poly_complex]: (~ ((![A2 : complex, Q3 : poly_complex]: (~ ((P = (pCons_complex @ A2 @ Q3)))))))))). % pCons_cases
thf(fact_80_one__reorient, axiom,
    ((![X3 : complex]: ((one_one_complex = X3) = (X3 = one_one_complex))))). % one_reorient
thf(fact_81_ab__semigroup__mult__class_Omult__ac_I1_J, axiom,
    ((![A : poly_complex, B : poly_complex, C : poly_complex]: ((times_1246143675omplex @ (times_1246143675omplex @ A @ B) @ C) = (times_1246143675omplex @ A @ (times_1246143675omplex @ B @ C)))))). % ab_semigroup_mult_class.mult_ac(1)
thf(fact_82_fundamental__theorem__of__algebra__alt, axiom,
    ((![P : poly_complex]: ((~ ((?[A2 : complex, L : poly_complex]: ((~ ((A2 = zero_zero_complex))) & ((L = zero_z1746442943omplex) & (P = (pCons_complex @ A2 @ L))))))) => (?[Z : complex]: ((poly_complex2 @ P @ Z) = zero_zero_complex)))))). % fundamental_theorem_of_algebra_alt
thf(fact_83_zero__less__iff__neq__zero, axiom,
    ((![N : nat]: ((ord_less_nat @ zero_zero_nat @ N) = (~ ((N = zero_zero_nat))))))). % zero_less_iff_neq_zero
thf(fact_84_gr__implies__not__zero, axiom,
    ((![M2 : nat, N : nat]: ((ord_less_nat @ M2 @ N) => (~ ((N = zero_zero_nat))))))). % gr_implies_not_zero
thf(fact_85_not__less__zero, axiom,
    ((![N : nat]: (~ ((ord_less_nat @ N @ zero_zero_nat)))))). % not_less_zero
thf(fact_86_gr__zeroI, axiom,
    ((![N : nat]: ((~ ((N = zero_zero_nat))) => (ord_less_nat @ zero_zero_nat @ N))))). % gr_zeroI
thf(fact_87_zero__le, axiom,
    ((![X3 : nat]: (ord_less_eq_nat @ zero_zero_nat @ X3)))). % zero_le
thf(fact_88_poly__root__induct, axiom,
    ((![Q4 : poly_poly_complex > $o, P4 : poly_complex > $o, P : poly_poly_complex]: ((Q4 @ zero_z1040703943omplex) => ((![P3 : poly_poly_complex]: ((![A4 : poly_complex]: ((P4 @ A4) => (~ (((poly_poly_complex2 @ P3 @ A4) = zero_z1746442943omplex))))) => (Q4 @ P3))) => ((![A2 : poly_complex, P3 : poly_poly_complex]: ((P4 @ A2) => ((Q4 @ P3) => (Q4 @ (times_1460995011omplex @ (pCons_poly_complex @ A2 @ (pCons_poly_complex @ (uminus1138659839omplex @ one_one_poly_complex) @ zero_z1040703943omplex)) @ P3))))) => (Q4 @ P))))))). % poly_root_induct
thf(fact_89_poly__root__induct, axiom,
    ((![Q4 : poly_complex > $o, P4 : complex > $o, P : poly_complex]: ((Q4 @ zero_z1746442943omplex) => ((![P3 : poly_complex]: ((![A4 : complex]: ((P4 @ A4) => (~ (((poly_complex2 @ P3 @ A4) = zero_zero_complex))))) => (Q4 @ P3))) => ((![A2 : complex, P3 : poly_complex]: ((P4 @ A2) => ((Q4 @ P3) => (Q4 @ (times_1246143675omplex @ (pCons_complex @ A2 @ (pCons_complex @ (uminus1204672759omplex @ one_one_complex) @ zero_z1746442943omplex)) @ P3))))) => (Q4 @ P))))))). % poly_root_induct
thf(fact_90_degree__mult__right__le, axiom,
    ((![Q : poly_complex, P : poly_complex]: ((~ ((Q = zero_z1746442943omplex))) => (ord_less_eq_nat @ (degree_complex @ P) @ (degree_complex @ (times_1246143675omplex @ P @ Q))))))). % degree_mult_right_le
thf(fact_91_poly__all__0__iff__0, axiom,
    ((![P : poly_poly_complex]: ((![X : poly_complex]: ((poly_poly_complex2 @ P @ X) = zero_z1746442943omplex)) = (P = zero_z1040703943omplex))))). % poly_all_0_iff_0
thf(fact_92_poly__all__0__iff__0, axiom,
    ((![P : poly_complex]: ((![X : complex]: ((poly_complex2 @ P @ X) = zero_zero_complex)) = (P = zero_z1746442943omplex))))). % poly_all_0_iff_0
thf(fact_93_order__power__n__n, axiom,
    ((![A : complex, N : nat]: ((order_complex @ A @ (power_184595776omplex @ (pCons_complex @ (uminus1204672759omplex @ A) @ (pCons_complex @ one_one_complex @ zero_z1746442943omplex)) @ N)) = N)))). % order_power_n_n
thf(fact_94_pderiv_Oinduct, axiom,
    ((![P4 : poly_complex > $o, A0 : poly_complex]: ((![A2 : complex, P3 : poly_complex]: (((~ ((P3 = zero_z1746442943omplex))) => (P4 @ P3)) => (P4 @ (pCons_complex @ A2 @ P3)))) => (P4 @ A0))))). % pderiv.induct
thf(fact_95_poly__induct2, axiom,
    ((![P4 : poly_complex > poly_complex > $o, P : poly_complex, Q : poly_complex]: ((P4 @ zero_z1746442943omplex @ zero_z1746442943omplex) => ((![A2 : complex, P3 : poly_complex, B3 : complex, Q3 : poly_complex]: ((P4 @ P3 @ Q3) => (P4 @ (pCons_complex @ A2 @ P3) @ (pCons_complex @ B3 @ Q3)))) => (P4 @ P @ Q)))))). % poly_induct2
thf(fact_96_mult__poly__0__right, axiom,
    ((![P : poly_complex]: ((times_1246143675omplex @ P @ zero_z1746442943omplex) = zero_z1746442943omplex)))). % mult_poly_0_right
thf(fact_97_mult__poly__0__left, axiom,
    ((![Q : poly_complex]: ((times_1246143675omplex @ zero_z1746442943omplex @ Q) = zero_z1746442943omplex)))). % mult_poly_0_left
thf(fact_98_degree__linear__power, axiom,
    ((![A : complex, N : nat]: ((degree_complex @ (power_184595776omplex @ (pCons_complex @ A @ (pCons_complex @ one_one_complex @ zero_z1746442943omplex)) @ N)) = N)))). % degree_linear_power
thf(fact_99_order__0I, axiom,
    ((![P : poly_poly_complex, A : poly_complex]: ((~ (((poly_poly_complex2 @ P @ A) = zero_z1746442943omplex))) => ((order_poly_complex @ A @ P) = zero_zero_nat))))). % order_0I
thf(fact_100_order__0I, axiom,
    ((![P : poly_complex, A : complex]: ((~ (((poly_complex2 @ P @ A) = zero_zero_complex))) => ((order_complex @ A @ P) = zero_zero_nat))))). % order_0I
thf(fact_101_order__degree, axiom,
    ((![P : poly_complex, A : complex]: ((~ ((P = zero_z1746442943omplex))) => (ord_less_eq_nat @ (order_complex @ A @ P) @ (degree_complex @ P)))))). % order_degree
thf(fact_102_degree__pCons__eq, axiom,
    ((![P : poly_complex, A : complex]: ((~ ((P = zero_z1746442943omplex))) => ((degree_complex @ (pCons_complex @ A @ P)) = (suc @ (degree_complex @ P))))))). % degree_pCons_eq
thf(fact_103_order__root, axiom,
    ((![P : poly_poly_complex, A : poly_complex]: (((poly_poly_complex2 @ P @ A) = zero_z1746442943omplex) = (((P = zero_z1040703943omplex)) | ((~ (((order_poly_complex @ A @ P) = zero_zero_nat))))))))). % order_root
thf(fact_104_order__root, axiom,
    ((![P : poly_complex, A : complex]: (((poly_complex2 @ P @ A) = zero_zero_complex) = (((P = zero_z1746442943omplex)) | ((~ (((order_complex @ A @ P) = zero_zero_nat))))))))). % order_root
thf(fact_105_zero__reorient, axiom,
    ((![X3 : poly_complex]: ((zero_z1746442943omplex = X3) = (X3 = zero_z1746442943omplex))))). % zero_reorient
thf(fact_106_zero__reorient, axiom,
    ((![X3 : nat]: ((zero_zero_nat = X3) = (X3 = zero_zero_nat))))). % zero_reorient
thf(fact_107_zero__reorient, axiom,
    ((![X3 : complex]: ((zero_zero_complex = X3) = (X3 = zero_zero_complex))))). % zero_reorient
thf(fact_108_pCons__induct, axiom,
    ((![P4 : poly_poly_complex > $o, P : poly_poly_complex]: ((P4 @ zero_z1040703943omplex) => ((![A2 : poly_complex, P3 : poly_poly_complex]: (((~ ((A2 = zero_z1746442943omplex))) | (~ ((P3 = zero_z1040703943omplex)))) => ((P4 @ P3) => (P4 @ (pCons_poly_complex @ A2 @ P3))))) => (P4 @ P)))))). % pCons_induct
thf(fact_109_pCons__induct, axiom,
    ((![P4 : poly_nat > $o, P : poly_nat]: ((P4 @ zero_zero_poly_nat) => ((![A2 : nat, P3 : poly_nat]: (((~ ((A2 = zero_zero_nat))) | (~ ((P3 = zero_zero_poly_nat)))) => ((P4 @ P3) => (P4 @ (pCons_nat @ A2 @ P3))))) => (P4 @ P)))))). % pCons_induct
thf(fact_110_pCons__induct, axiom,
    ((![P4 : poly_complex > $o, P : poly_complex]: ((P4 @ zero_z1746442943omplex) => ((![A2 : complex, P3 : poly_complex]: (((~ ((A2 = zero_zero_complex))) | (~ ((P3 = zero_z1746442943omplex)))) => ((P4 @ P3) => (P4 @ (pCons_complex @ A2 @ P3))))) => (P4 @ P)))))). % pCons_induct
thf(fact_111_psize__def, axiom,
    ((fundam1709708056omplex = (^[P5 : poly_complex]: (if_nat @ (P5 = zero_z1746442943omplex) @ zero_zero_nat @ (suc @ (degree_complex @ P5))))))). % psize_def
thf(fact_112_degree__eq__zeroE, axiom,
    ((![P : poly_complex]: (((degree_complex @ P) = zero_zero_nat) => (~ ((![A2 : complex]: (~ ((P = (pCons_complex @ A2 @ zero_z1746442943omplex))))))))))). % degree_eq_zeroE
thf(fact_113_degree__pCons__0, axiom,
    ((![A : complex]: ((degree_complex @ (pCons_complex @ A @ zero_z1746442943omplex)) = zero_zero_nat)))). % degree_pCons_0
thf(fact_114_power__decreasing__iff, axiom,
    ((![B : nat, M2 : 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 @ M2) @ (power_power_nat @ B @ N)) = (ord_less_eq_nat @ N @ M2))))))). % power_decreasing_iff
thf(fact_115_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_116_power__increasing__iff, axiom,
    ((![B : nat, X3 : nat, Y2 : nat]: ((ord_less_nat @ one_one_nat @ B) => ((ord_less_eq_nat @ (power_power_nat @ B @ X3) @ (power_power_nat @ B @ Y2)) = (ord_less_eq_nat @ X3 @ Y2)))))). % power_increasing_iff
thf(fact_117_power__strict__decreasing__iff, axiom,
    ((![B : nat, M2 : nat, N : nat]: ((ord_less_nat @ zero_zero_nat @ B) => ((ord_less_nat @ B @ one_one_nat) => ((ord_less_nat @ (power_power_nat @ B @ M2) @ (power_power_nat @ B @ N)) = (ord_less_nat @ N @ M2))))))). % power_strict_decreasing_iff
thf(fact_118_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_119_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_120_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_121_power__strict__increasing__iff, axiom,
    ((![B : nat, X3 : nat, Y2 : nat]: ((ord_less_nat @ one_one_nat @ B) => ((ord_less_nat @ (power_power_nat @ B @ X3) @ (power_power_nat @ B @ Y2)) = (ord_less_nat @ X3 @ Y2)))))). % power_strict_increasing_iff
thf(fact_122_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_123_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_124_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_125_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_126_power__one__right, axiom,
    ((![A : poly_complex]: ((power_184595776omplex @ A @ one_one_nat) = A)))). % power_one_right
thf(fact_127_power__one__right, axiom,
    ((![A : nat]: ((power_power_nat @ A @ one_one_nat) = A)))). % power_one_right
thf(fact_128_power__one, axiom,
    ((![N : nat]: ((power_power_complex @ one_one_complex @ N) = one_one_complex)))). % power_one
thf(fact_129_power__one, axiom,
    ((![N : nat]: ((power_184595776omplex @ one_one_poly_complex @ N) = one_one_poly_complex)))). % power_one
thf(fact_130_power__one, axiom,
    ((![N : nat]: ((power_power_nat @ one_one_nat @ N) = one_one_nat)))). % power_one
thf(fact_131_power__Suc__0, axiom,
    ((![N : nat]: ((power_power_nat @ (suc @ zero_zero_nat) @ N) = (suc @ zero_zero_nat))))). % power_Suc_0
thf(fact_132_nat__power__eq__Suc__0__iff, axiom,
    ((![X3 : nat, M2 : nat]: (((power_power_nat @ X3 @ M2) = (suc @ zero_zero_nat)) = (((M2 = zero_zero_nat)) | ((X3 = (suc @ zero_zero_nat)))))))). % nat_power_eq_Suc_0_iff
thf(fact_133_nat__zero__less__power__iff, axiom,
    ((![X3 : nat, N : nat]: ((ord_less_nat @ zero_zero_nat @ (power_power_nat @ X3 @ N)) = (((ord_less_nat @ zero_zero_nat @ X3)) | ((N = zero_zero_nat))))))). % nat_zero_less_power_iff
thf(fact_134_degree__minus, axiom,
    ((![P : poly_complex]: ((degree_complex @ (uminus1138659839omplex @ P)) = (degree_complex @ P))))). % degree_minus
thf(fact_135_order__uminus, axiom,
    ((![X3 : complex, P : poly_complex]: ((order_complex @ X3 @ (uminus1138659839omplex @ P)) = (order_complex @ X3 @ P))))). % order_uminus
thf(fact_136__092_060open_062_091_058_N_Aa_M_A1_058_093_Advd_As_092_060close_062, axiom,
    ((dvd_dvd_poly_complex @ (pCons_complex @ (uminus1204672759omplex @ a) @ (pCons_complex @ one_one_complex @ zero_z1746442943omplex)) @ s))). % \<open>[:- a, 1:] dvd s\<close>
thf(fact_137__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_138_power__inject__exp, axiom,
    ((![A : nat, M2 : nat, N : nat]: ((ord_less_nat @ one_one_nat @ A) => (((power_power_nat @ A @ M2) = (power_power_nat @ A @ N)) = (M2 = N)))))). % power_inject_exp
thf(fact_139_power__0__Suc, axiom,
    ((![N : nat]: ((power_power_complex @ zero_zero_complex @ (suc @ N)) = zero_zero_complex)))). % power_0_Suc
thf(fact_140_power__0__Suc, axiom,
    ((![N : nat]: ((power_184595776omplex @ zero_z1746442943omplex @ (suc @ N)) = zero_z1746442943omplex)))). % power_0_Suc
thf(fact_141_power__0__Suc, axiom,
    ((![N : nat]: ((power_power_nat @ zero_zero_nat @ (suc @ N)) = zero_zero_nat)))). % power_0_Suc
thf(fact_142_power__Suc0__right, axiom,
    ((![A : poly_complex]: ((power_184595776omplex @ A @ (suc @ zero_zero_nat)) = A)))). % power_Suc0_right
thf(fact_143_power__Suc0__right, axiom,
    ((![A : nat]: ((power_power_nat @ A @ (suc @ zero_zero_nat)) = A)))). % power_Suc0_right
thf(fact_144_degree__1, axiom,
    (((degree_complex @ one_one_poly_complex) = zero_zero_nat))). % degree_1
thf(fact_145_order__1__eq__0, axiom,
    ((![X3 : complex]: ((order_complex @ X3 @ one_one_poly_complex) = zero_zero_nat)))). % order_1_eq_0
thf(fact_146_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_147_ap_I2_J, axiom,
    ((~ ((dvd_dvd_poly_complex @ (power_184595776omplex @ (pCons_complex @ (uminus1204672759omplex @ a) @ (pCons_complex @ one_one_complex @ zero_z1746442943omplex)) @ (suc @ (order_complex @ a @ pa))) @ pa))))). % ap(2)
thf(fact_148_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_149_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_150_dvd__power__same, axiom,
    ((![X3 : poly_complex, Y2 : poly_complex, N : nat]: ((dvd_dvd_poly_complex @ X3 @ Y2) => (dvd_dvd_poly_complex @ (power_184595776omplex @ X3 @ N) @ (power_184595776omplex @ Y2 @ N)))))). % dvd_power_same
thf(fact_151_dvd__power__same, axiom,
    ((![X3 : nat, Y2 : nat, N : nat]: ((dvd_dvd_nat @ X3 @ Y2) => (dvd_dvd_nat @ (power_power_nat @ X3 @ N) @ (power_power_nat @ Y2 @ N)))))). % dvd_power_same
thf(fact_152_power__mult, axiom,
    ((![A : poly_complex, M2 : nat, N : nat]: ((power_184595776omplex @ A @ (times_times_nat @ M2 @ N)) = (power_184595776omplex @ (power_184595776omplex @ A @ M2) @ N))))). % power_mult
thf(fact_153_power__mult, axiom,
    ((![A : nat, M2 : nat, N : nat]: ((power_power_nat @ A @ (times_times_nat @ M2 @ N)) = (power_power_nat @ (power_power_nat @ A @ M2) @ N))))). % power_mult
thf(fact_154_dvd__power__le, axiom,
    ((![X3 : poly_complex, Y2 : poly_complex, N : nat, M2 : nat]: ((dvd_dvd_poly_complex @ X3 @ Y2) => ((ord_less_eq_nat @ N @ M2) => (dvd_dvd_poly_complex @ (power_184595776omplex @ X3 @ N) @ (power_184595776omplex @ Y2 @ M2))))))). % dvd_power_le
thf(fact_155_dvd__power__le, axiom,
    ((![X3 : nat, Y2 : nat, N : nat, M2 : nat]: ((dvd_dvd_nat @ X3 @ Y2) => ((ord_less_eq_nat @ N @ M2) => (dvd_dvd_nat @ (power_power_nat @ X3 @ N) @ (power_power_nat @ Y2 @ M2))))))). % dvd_power_le
thf(fact_156_power__le__dvd, axiom,
    ((![A : poly_complex, N : nat, B : poly_complex, M2 : nat]: ((dvd_dvd_poly_complex @ (power_184595776omplex @ A @ N) @ B) => ((ord_less_eq_nat @ M2 @ N) => (dvd_dvd_poly_complex @ (power_184595776omplex @ A @ M2) @ B)))))). % power_le_dvd
thf(fact_157_power__le__dvd, axiom,
    ((![A : nat, N : nat, B : nat, M2 : nat]: ((dvd_dvd_nat @ (power_power_nat @ A @ N) @ B) => ((ord_less_eq_nat @ M2 @ N) => (dvd_dvd_nat @ (power_power_nat @ A @ M2) @ B)))))). % power_le_dvd
thf(fact_158_le__imp__power__dvd, axiom,
    ((![M2 : nat, N : nat, A : poly_complex]: ((ord_less_eq_nat @ M2 @ N) => (dvd_dvd_poly_complex @ (power_184595776omplex @ A @ M2) @ (power_184595776omplex @ A @ N)))))). % le_imp_power_dvd
thf(fact_159_le__imp__power__dvd, axiom,
    ((![M2 : nat, N : nat, A : nat]: ((ord_less_eq_nat @ M2 @ N) => (dvd_dvd_nat @ (power_power_nat @ A @ M2) @ (power_power_nat @ A @ N)))))). % le_imp_power_dvd
thf(fact_160_nat__power__less__imp__less, axiom,
    ((![I : nat, M2 : nat, N : nat]: ((ord_less_nat @ zero_zero_nat @ I) => ((ord_less_nat @ (power_power_nat @ I @ M2) @ (power_power_nat @ I @ N)) => (ord_less_nat @ M2 @ N)))))). % nat_power_less_imp_less
thf(fact_161_is__unit__const__poly__iff, axiom,
    ((![C : poly_complex]: ((dvd_dv598755940omplex @ (pCons_poly_complex @ C @ zero_z1040703943omplex) @ one_on1331105667omplex) = (dvd_dvd_poly_complex @ C @ one_one_poly_complex))))). % is_unit_const_poly_iff
thf(fact_162_is__unit__const__poly__iff, axiom,
    ((![C : complex]: ((dvd_dvd_poly_complex @ (pCons_complex @ C @ zero_z1746442943omplex) @ one_one_poly_complex) = (dvd_dvd_complex @ C @ one_one_complex))))). % is_unit_const_poly_iff
thf(fact_163_is__unit__poly__iff, axiom,
    ((![P : poly_poly_complex]: ((dvd_dv598755940omplex @ P @ one_on1331105667omplex) = (?[C2 : poly_complex]: (((P = (pCons_poly_complex @ C2 @ zero_z1040703943omplex))) & ((dvd_dvd_poly_complex @ C2 @ one_one_poly_complex)))))))). % is_unit_poly_iff
thf(fact_164_is__unit__poly__iff, axiom,
    ((![P : poly_complex]: ((dvd_dvd_poly_complex @ P @ one_one_poly_complex) = (?[C2 : complex]: (((P = (pCons_complex @ C2 @ zero_z1746442943omplex))) & ((dvd_dvd_complex @ C2 @ one_one_complex)))))))). % is_unit_poly_iff
thf(fact_165_is__unit__polyE, axiom,
    ((![P : poly_poly_complex]: ((dvd_dv598755940omplex @ P @ one_on1331105667omplex) => (~ ((![C3 : poly_complex]: ((P = (pCons_poly_complex @ C3 @ zero_z1040703943omplex)) => (~ ((dvd_dvd_poly_complex @ C3 @ one_one_poly_complex))))))))))). % is_unit_polyE
thf(fact_166_is__unit__polyE, axiom,
    ((![P : poly_complex]: ((dvd_dvd_poly_complex @ P @ one_one_poly_complex) => (~ ((![C3 : complex]: ((P = (pCons_complex @ C3 @ zero_z1746442943omplex)) => (~ ((dvd_dvd_complex @ C3 @ one_one_complex))))))))))). % is_unit_polyE
thf(fact_167_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_168_is__unit__pCons__iff, axiom,
    ((![A : complex, P : poly_complex]: ((dvd_dvd_poly_complex @ (pCons_complex @ A @ P) @ one_one_poly_complex) = (((P = zero_z1746442943omplex)) & ((~ ((A = zero_zero_complex))))))))). % is_unit_pCons_iff
thf(fact_169_is__unit__iff__degree, axiom,
    ((![P : poly_complex]: ((~ ((P = zero_z1746442943omplex))) => ((dvd_dvd_poly_complex @ P @ one_one_poly_complex) = ((degree_complex @ P) = zero_zero_nat)))))). % is_unit_iff_degree
thf(fact_170_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_171_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_172_power__gt__expt, axiom,
    ((![N : nat, K2 : nat]: ((ord_less_nat @ (suc @ zero_zero_nat) @ N) => (ord_less_nat @ K2 @ (power_power_nat @ N @ K2)))))). % power_gt_expt
thf(fact_173_nat__one__le__power, axiom,
    ((![I : nat, N : nat]: ((ord_less_eq_nat @ (suc @ zero_zero_nat) @ I) => (ord_less_eq_nat @ (suc @ zero_zero_nat) @ (power_power_nat @ I @ N)))))). % nat_one_le_power

% Helper facts (3)
thf(help_If_3_1_If_001t__Nat__Onat_T, axiom,
    ((![P4 : $o]: ((P4 = $true) | (P4 = $false))))).
thf(help_If_2_1_If_001t__Nat__Onat_T, axiom,
    ((![X3 : nat, Y2 : nat]: ((if_nat @ $false @ X3 @ Y2) = Y2)))).
thf(help_If_1_1_If_001t__Nat__Onat_T, axiom,
    ((![X3 : nat, Y2 : nat]: ((if_nat @ $true @ X3 @ Y2) = X3)))).

% Conjectures (1)
thf(conj_0, conjecture,
    ($false)).
