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

% Could-be-implicit typings (7)
thf(ty_n_t__Polynomial__Opoly_It__Polynomial__Opoly_It__Polynomial__Opoly_It__Complex__Ocomplex_J_J_J, type,
    poly_p1267267526omplex : $tType).
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__Polynomial__Opoly_It__Nat__Onat_J_J, type,
    poly_poly_nat : $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 (64)
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_Fundamental__Theorem__Algebra__Mirabelle__sywschxjbb_Opsize_001t__Nat__Onat, type,
    fundam1567013434ze_nat : poly_nat > nat).
thf(sy_c_Fundamental__Theorem__Algebra__Mirabelle__sywschxjbb_Opsize_001t__Polynomial__Opoly_It__Complex__Ocomplex_J, type,
    fundam1956464160omplex : poly_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__Nat__Onat_J, type,
    one_one_poly_nat : poly_nat).
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__Nat__Onat_J, type,
    times_times_poly_nat : poly_nat > poly_nat > poly_nat).
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_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_Groups_Ozero__class_Ozero_001t__Polynomial__Opoly_It__Polynomial__Opoly_It__Nat__Onat_J_J, type,
    zero_z1059985641ly_nat : poly_poly_nat).
thf(sy_c_Groups_Ozero__class_Ozero_001t__Polynomial__Opoly_It__Polynomial__Opoly_It__Polynomial__Opoly_It__Complex__Ocomplex_J_J_J, type,
    zero_z1200043727omplex : poly_p1267267526omplex).
thf(sy_c_Nat_OSuc, type,
    suc : nat > nat).
thf(sy_c_Polynomial_Ocontent_001t__Nat__Onat, type,
    content_nat : poly_nat > nat).
thf(sy_c_Polynomial_Odegree_001t__Complex__Ocomplex, type,
    degree_complex : poly_complex > nat).
thf(sy_c_Polynomial_Odegree_001t__Nat__Onat, type,
    degree_nat : poly_nat > nat).
thf(sy_c_Polynomial_Odegree_001t__Polynomial__Opoly_It__Complex__Ocomplex_J, type,
    degree_poly_complex : poly_poly_complex > nat).
thf(sy_c_Polynomial_Ois__zero_001t__Complex__Ocomplex, type,
    is_zero_complex : poly_complex > $o).
thf(sy_c_Polynomial_Ois__zero_001t__Nat__Onat, type,
    is_zero_nat : poly_nat > $o).
thf(sy_c_Polynomial_Ois__zero_001t__Polynomial__Opoly_It__Complex__Ocomplex_J, type,
    is_zero_poly_complex : poly_poly_complex > $o).
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_OpCons_001t__Polynomial__Opoly_It__Nat__Onat_J, type,
    pCons_poly_nat : poly_nat > poly_poly_nat > poly_poly_nat).
thf(sy_c_Polynomial_OpCons_001t__Polynomial__Opoly_It__Polynomial__Opoly_It__Complex__Ocomplex_J_J, type,
    pCons_1087637536omplex : poly_poly_complex > poly_p1267267526omplex > poly_p1267267526omplex).
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_Polynomial_Opoly_001t__Polynomial__Opoly_It__Nat__Onat_J, type,
    poly_poly_nat2 : poly_poly_nat > poly_nat > poly_nat).
thf(sy_c_Polynomial_Opoly_001t__Polynomial__Opoly_It__Polynomial__Opoly_It__Complex__Ocomplex_J_J, type,
    poly_p282434315omplex : poly_p1267267526omplex > poly_poly_complex > poly_poly_complex).
thf(sy_c_Polynomial_Opoly__cutoff_001t__Complex__Ocomplex, type,
    poly_cutoff_complex : nat > poly_complex > poly_complex).
thf(sy_c_Polynomial_Opoly__cutoff_001t__Nat__Onat, type,
    poly_cutoff_nat : nat > poly_nat > poly_nat).
thf(sy_c_Polynomial_Opoly__cutoff_001t__Polynomial__Opoly_It__Complex__Ocomplex_J, type,
    poly_c622223248omplex : nat > poly_poly_complex > poly_poly_complex).
thf(sy_c_Polynomial_Osynthetic__div_001t__Complex__Ocomplex, type,
    synthe151143547omplex : poly_complex > complex > poly_complex).
thf(sy_c_Polynomial_Osynthetic__div_001t__Nat__Onat, type,
    synthetic_div_nat : poly_nat > nat > poly_nat).
thf(sy_c_Polynomial_Osynthetic__div_001t__Polynomial__Opoly_It__Complex__Ocomplex_J, type,
    synthe1985144195omplex : poly_poly_complex > poly_complex > poly_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_Power_Opower__class_Opower_001t__Polynomial__Opoly_It__Polynomial__Opoly_It__Nat__Onat_J_J, type,
    power_1336127338ly_nat : poly_poly_nat > nat > poly_poly_nat).
thf(sy_c_Power_Opower__class_Opower_001t__Polynomial__Opoly_It__Polynomial__Opoly_It__Polynomial__Opoly_It__Complex__Ocomplex_J_J_J, type,
    power_2001192272omplex : poly_p1267267526omplex > nat > poly_p1267267526omplex).
thf(sy_c_Rings_Odivide__class_Odivide_001t__Complex__Ocomplex, type,
    divide1210191872omplex : complex > complex > complex).
thf(sy_c_Rings_Odivide__class_Odivide_001t__Nat__Onat, type,
    divide_divide_nat : nat > nat > nat).
thf(sy_c_Rings_Odivide__class_Odivide_001t__Polynomial__Opoly_It__Complex__Ocomplex_J, type,
    divide1187762952omplex : poly_complex > poly_complex > poly_complex).
thf(sy_c_Rings_Odivide__class_Odivide_001t__Polynomial__Opoly_It__Polynomial__Opoly_It__Complex__Ocomplex_J_J, type,
    divide350004240omplex : poly_poly_complex > poly_poly_complex > 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__Nat__Onat_J, type,
    dvd_dvd_poly_nat : poly_nat > poly_nat > $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_k____, type,
    k : complex).
thf(sy_v_p, type,
    p : poly_complex).
thf(sy_v_q, type,
    q : poly_complex).

% Relevant facts (247)
thf(fact_0_k_I2_J, axiom,
    ((~ ((k = zero_zero_complex))))). % k(2)
thf(fact_1_dp_I1_J, axiom,
    ((~ ((p = zero_z1746442943omplex))))). % dp(1)
thf(fact_2_th1, axiom,
    ((![X : complex]: (~ (((poly_complex2 @ p @ X) = zero_zero_complex)))))). % th1
thf(fact_3_th2, axiom,
    ((dvd_dvd_poly_complex @ p @ (power_184595776omplex @ q @ (degree_complex @ p))))). % th2
thf(fact_4_dp_I2_J, axiom,
    (((degree_complex @ p) = zero_zero_nat))). % dp(2)
thf(fact_5_poly__power, axiom,
    ((![P : poly_poly_nat, N : nat, X2 : poly_nat]: ((poly_poly_nat2 @ (power_1336127338ly_nat @ P @ N) @ X2) = (power_power_poly_nat @ (poly_poly_nat2 @ P @ X2) @ N))))). % poly_power
thf(fact_6_poly__power, axiom,
    ((![P : poly_p1267267526omplex, N : nat, X2 : poly_poly_complex]: ((poly_p282434315omplex @ (power_2001192272omplex @ P @ N) @ X2) = (power_432682568omplex @ (poly_p282434315omplex @ P @ X2) @ N))))). % poly_power
thf(fact_7_poly__power, axiom,
    ((![P : poly_poly_complex, N : nat, X2 : poly_complex]: ((poly_poly_complex2 @ (power_432682568omplex @ P @ N) @ X2) = (power_184595776omplex @ (poly_poly_complex2 @ P @ X2) @ N))))). % poly_power
thf(fact_8_poly__power, axiom,
    ((![P : poly_nat, N : nat, X2 : nat]: ((poly_nat2 @ (power_power_poly_nat @ P @ N) @ X2) = (power_power_nat @ (poly_nat2 @ P @ X2) @ N))))). % poly_power
thf(fact_9_poly__power, axiom,
    ((![P : poly_complex, N : nat, X2 : complex]: ((poly_complex2 @ (power_184595776omplex @ P @ N) @ X2) = (power_power_complex @ (poly_complex2 @ P @ X2) @ N))))). % poly_power
thf(fact_10_poly__0, axiom,
    ((![X2 : poly_nat]: ((poly_poly_nat2 @ zero_z1059985641ly_nat @ X2) = zero_zero_poly_nat)))). % poly_0
thf(fact_11_poly__0, axiom,
    ((![X2 : poly_poly_complex]: ((poly_p282434315omplex @ zero_z1200043727omplex @ X2) = zero_z1040703943omplex)))). % poly_0
thf(fact_12_poly__0, axiom,
    ((![X2 : poly_complex]: ((poly_poly_complex2 @ zero_z1040703943omplex @ X2) = zero_z1746442943omplex)))). % poly_0
thf(fact_13_poly__0, axiom,
    ((![X2 : nat]: ((poly_nat2 @ zero_zero_poly_nat @ X2) = zero_zero_nat)))). % poly_0
thf(fact_14_poly__0, axiom,
    ((![X2 : complex]: ((poly_complex2 @ zero_z1746442943omplex @ X2) = zero_zero_complex)))). % poly_0
thf(fact_15_dvd__0__right, axiom,
    ((![A : poly_nat]: (dvd_dvd_poly_nat @ A @ zero_zero_poly_nat)))). % dvd_0_right
thf(fact_16_dvd__0__right, axiom,
    ((![A : poly_poly_complex]: (dvd_dv598755940omplex @ A @ zero_z1040703943omplex)))). % dvd_0_right
thf(fact_17_dvd__0__right, axiom,
    ((![A : complex]: (dvd_dvd_complex @ A @ zero_zero_complex)))). % dvd_0_right
thf(fact_18_dvd__0__right, axiom,
    ((![A : poly_complex]: (dvd_dvd_poly_complex @ A @ zero_z1746442943omplex)))). % dvd_0_right
thf(fact_19_dvd__0__right, axiom,
    ((![A : nat]: (dvd_dvd_nat @ A @ zero_zero_nat)))). % dvd_0_right
thf(fact_20_dvd__0__left__iff, axiom,
    ((![A : poly_nat]: ((dvd_dvd_poly_nat @ zero_zero_poly_nat @ A) = (A = zero_zero_poly_nat))))). % dvd_0_left_iff
thf(fact_21_dvd__0__left__iff, axiom,
    ((![A : poly_poly_complex]: ((dvd_dv598755940omplex @ zero_z1040703943omplex @ A) = (A = zero_z1040703943omplex))))). % dvd_0_left_iff
thf(fact_22_dvd__0__left__iff, axiom,
    ((![A : complex]: ((dvd_dvd_complex @ zero_zero_complex @ A) = (A = zero_zero_complex))))). % dvd_0_left_iff
thf(fact_23_dvd__0__left__iff, axiom,
    ((![A : poly_complex]: ((dvd_dvd_poly_complex @ zero_z1746442943omplex @ A) = (A = zero_z1746442943omplex))))). % dvd_0_left_iff
thf(fact_24_dvd__0__left__iff, axiom,
    ((![A : nat]: ((dvd_dvd_nat @ zero_zero_nat @ A) = (A = zero_zero_nat))))). % dvd_0_left_iff
thf(fact_25_poly__all__0__iff__0, axiom,
    ((![P : poly_p1267267526omplex]: ((![X3 : poly_poly_complex]: ((poly_p282434315omplex @ P @ X3) = zero_z1040703943omplex)) = (P = zero_z1200043727omplex))))). % poly_all_0_iff_0
thf(fact_26_poly__all__0__iff__0, axiom,
    ((![P : poly_complex]: ((![X3 : complex]: ((poly_complex2 @ P @ X3) = zero_zero_complex)) = (P = zero_z1746442943omplex))))). % poly_all_0_iff_0
thf(fact_27_poly__all__0__iff__0, axiom,
    ((![P : poly_poly_complex]: ((![X3 : poly_complex]: ((poly_poly_complex2 @ P @ X3) = zero_z1746442943omplex)) = (P = zero_z1040703943omplex))))). % poly_all_0_iff_0
thf(fact_28__092_060open_062_092_060And_062thesis_O_A_I_092_060And_062k_O_A_092_060lbrakk_062p_A_061_A_091_058k_058_093_059_Ak_A_092_060noteq_062_A0_092_060rbrakk_062_A_092_060Longrightarrow_062_Athesis_J_A_092_060Longrightarrow_062_Athesis_092_060close_062, axiom,
    ((~ ((![K : complex]: ((p = (pCons_complex @ K @ zero_z1746442943omplex)) => (K = zero_zero_complex))))))). % \<open>\<And>thesis. (\<And>k. \<lbrakk>p = [:k:]; k \<noteq> 0\<rbrakk> \<Longrightarrow> thesis) \<Longrightarrow> thesis\<close>
thf(fact_29_k_I1_J, axiom,
    ((p = (pCons_complex @ k @ zero_z1746442943omplex)))). % k(1)
thf(fact_30_nullstellensatz__lemma, axiom,
    ((![P : poly_complex, Q : poly_complex, N : nat]: ((![X4 : complex]: (((poly_complex2 @ P @ X4) = zero_zero_complex) => ((poly_complex2 @ Q @ X4) = zero_zero_complex))) => (((degree_complex @ P) = N) => ((~ ((N = zero_zero_nat))) => (dvd_dvd_poly_complex @ P @ (power_184595776omplex @ Q @ N)))))))). % nullstellensatz_lemma
thf(fact_31_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_32_dvd__power__same, axiom,
    ((![X2 : poly_complex, Y : poly_complex, N : nat]: ((dvd_dvd_poly_complex @ X2 @ Y) => (dvd_dvd_poly_complex @ (power_184595776omplex @ X2 @ N) @ (power_184595776omplex @ Y @ N)))))). % dvd_power_same
thf(fact_33_dvd__power__same, axiom,
    ((![X2 : nat, Y : nat, N : nat]: ((dvd_dvd_nat @ X2 @ Y) => (dvd_dvd_nat @ (power_power_nat @ X2 @ N) @ (power_power_nat @ Y @ N)))))). % dvd_power_same
thf(fact_34_dvd__power__same, axiom,
    ((![X2 : complex, Y : complex, N : nat]: ((dvd_dvd_complex @ X2 @ Y) => (dvd_dvd_complex @ (power_power_complex @ X2 @ N) @ (power_power_complex @ Y @ N)))))). % dvd_power_same
thf(fact_35_dvd__power__same, axiom,
    ((![X2 : poly_nat, Y : poly_nat, N : nat]: ((dvd_dvd_poly_nat @ X2 @ Y) => (dvd_dvd_poly_nat @ (power_power_poly_nat @ X2 @ N) @ (power_power_poly_nat @ Y @ N)))))). % dvd_power_same
thf(fact_36_dvd__power__same, axiom,
    ((![X2 : poly_poly_complex, Y : poly_poly_complex, N : nat]: ((dvd_dv598755940omplex @ X2 @ Y) => (dvd_dv598755940omplex @ (power_432682568omplex @ X2 @ N) @ (power_432682568omplex @ Y @ N)))))). % dvd_power_same
thf(fact_37_dvd__field__iff, axiom,
    ((dvd_dvd_complex = (^[A2 : complex]: (^[B : complex]: (((A2 = zero_zero_complex)) => ((B = zero_zero_complex)))))))). % dvd_field_iff
thf(fact_38_pCons__eq__iff, axiom,
    ((![A : complex, P : poly_complex, B2 : complex, Q : poly_complex]: (((pCons_complex @ A @ P) = (pCons_complex @ B2 @ Q)) = (((A = B2)) & ((P = Q))))))). % pCons_eq_iff
thf(fact_39_pCons__eq__0__iff, axiom,
    ((![A : poly_nat, P : poly_poly_nat]: (((pCons_poly_nat @ A @ P) = zero_z1059985641ly_nat) = (((A = zero_zero_poly_nat)) & ((P = zero_z1059985641ly_nat))))))). % pCons_eq_0_iff
thf(fact_40_pCons__eq__0__iff, axiom,
    ((![A : poly_poly_complex, P : poly_p1267267526omplex]: (((pCons_1087637536omplex @ A @ P) = zero_z1200043727omplex) = (((A = zero_z1040703943omplex)) & ((P = zero_z1200043727omplex))))))). % pCons_eq_0_iff
thf(fact_41_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_42_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_43_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_44_pCons__0__0, axiom,
    (((pCons_complex @ zero_zero_complex @ zero_z1746442943omplex) = zero_z1746442943omplex))). % pCons_0_0
thf(fact_45_pCons__0__0, axiom,
    (((pCons_poly_complex @ zero_z1746442943omplex @ zero_z1040703943omplex) = zero_z1040703943omplex))). % pCons_0_0
thf(fact_46_pCons__0__0, axiom,
    (((pCons_nat @ zero_zero_nat @ zero_zero_poly_nat) = zero_zero_poly_nat))). % pCons_0_0
thf(fact_47_pCons__0__0, axiom,
    (((pCons_poly_nat @ zero_zero_poly_nat @ zero_z1059985641ly_nat) = zero_z1059985641ly_nat))). % pCons_0_0
thf(fact_48_pCons__0__0, axiom,
    (((pCons_1087637536omplex @ zero_z1040703943omplex @ zero_z1200043727omplex) = zero_z1200043727omplex))). % pCons_0_0
thf(fact_49_degree__0, axiom,
    (((degree_complex @ zero_z1746442943omplex) = zero_zero_nat))). % degree_0
thf(fact_50_degree__0, axiom,
    (((degree_nat @ zero_zero_poly_nat) = zero_zero_nat))). % degree_0
thf(fact_51_degree__0, axiom,
    (((degree_poly_complex @ zero_z1040703943omplex) = zero_zero_nat))). % degree_0
thf(fact_52_const__poly__dvd__const__poly__iff, axiom,
    ((![A : complex, B2 : complex]: ((dvd_dvd_poly_complex @ (pCons_complex @ A @ zero_z1746442943omplex) @ (pCons_complex @ B2 @ zero_z1746442943omplex)) = (dvd_dvd_complex @ A @ B2))))). % const_poly_dvd_const_poly_iff
thf(fact_53_const__poly__dvd__const__poly__iff, axiom,
    ((![A : nat, B2 : nat]: ((dvd_dvd_poly_nat @ (pCons_nat @ A @ zero_zero_poly_nat) @ (pCons_nat @ B2 @ zero_zero_poly_nat)) = (dvd_dvd_nat @ A @ B2))))). % const_poly_dvd_const_poly_iff
thf(fact_54_const__poly__dvd__const__poly__iff, axiom,
    ((![A : poly_complex, B2 : poly_complex]: ((dvd_dv598755940omplex @ (pCons_poly_complex @ A @ zero_z1040703943omplex) @ (pCons_poly_complex @ B2 @ zero_z1040703943omplex)) = (dvd_dvd_poly_complex @ A @ B2))))). % const_poly_dvd_const_poly_iff
thf(fact_55_pCons__cases, axiom,
    ((![P : poly_complex]: (~ ((![A3 : complex, Q2 : poly_complex]: (~ ((P = (pCons_complex @ A3 @ Q2)))))))))). % pCons_cases
thf(fact_56_pderiv_Ocases, axiom,
    ((![X2 : poly_complex]: (~ ((![A3 : complex, P2 : poly_complex]: (~ ((X2 = (pCons_complex @ A3 @ P2)))))))))). % pderiv.cases
thf(fact_57_pderiv_Oinduct, axiom,
    ((![P3 : poly_complex > $o, A0 : poly_complex]: ((![A3 : complex, P2 : poly_complex]: (((~ ((P2 = zero_z1746442943omplex))) => (P3 @ P2)) => (P3 @ (pCons_complex @ A3 @ P2)))) => (P3 @ A0))))). % pderiv.induct
thf(fact_58_pderiv_Oinduct, axiom,
    ((![P3 : poly_nat > $o, A0 : poly_nat]: ((![A3 : nat, P2 : poly_nat]: (((~ ((P2 = zero_zero_poly_nat))) => (P3 @ P2)) => (P3 @ (pCons_nat @ A3 @ P2)))) => (P3 @ A0))))). % pderiv.induct
thf(fact_59_pderiv_Oinduct, axiom,
    ((![P3 : poly_poly_complex > $o, A0 : poly_poly_complex]: ((![A3 : poly_complex, P2 : poly_poly_complex]: (((~ ((P2 = zero_z1040703943omplex))) => (P3 @ P2)) => (P3 @ (pCons_poly_complex @ A3 @ P2)))) => (P3 @ A0))))). % pderiv.induct
thf(fact_60_poly__induct2, axiom,
    ((![P3 : poly_complex > poly_complex > $o, P : poly_complex, Q : poly_complex]: ((P3 @ zero_z1746442943omplex @ zero_z1746442943omplex) => ((![A3 : complex, P2 : poly_complex, B3 : complex, Q2 : poly_complex]: ((P3 @ P2 @ Q2) => (P3 @ (pCons_complex @ A3 @ P2) @ (pCons_complex @ B3 @ Q2)))) => (P3 @ P @ Q)))))). % poly_induct2
thf(fact_61_poly__induct2, axiom,
    ((![P3 : poly_complex > poly_nat > $o, P : poly_complex, Q : poly_nat]: ((P3 @ zero_z1746442943omplex @ zero_zero_poly_nat) => ((![A3 : complex, P2 : poly_complex, B3 : nat, Q2 : poly_nat]: ((P3 @ P2 @ Q2) => (P3 @ (pCons_complex @ A3 @ P2) @ (pCons_nat @ B3 @ Q2)))) => (P3 @ P @ Q)))))). % poly_induct2
thf(fact_62_poly__induct2, axiom,
    ((![P3 : poly_complex > poly_poly_complex > $o, P : poly_complex, Q : poly_poly_complex]: ((P3 @ zero_z1746442943omplex @ zero_z1040703943omplex) => ((![A3 : complex, P2 : poly_complex, B3 : poly_complex, Q2 : poly_poly_complex]: ((P3 @ P2 @ Q2) => (P3 @ (pCons_complex @ A3 @ P2) @ (pCons_poly_complex @ B3 @ Q2)))) => (P3 @ P @ Q)))))). % poly_induct2
thf(fact_63_poly__induct2, axiom,
    ((![P3 : poly_nat > poly_complex > $o, P : poly_nat, Q : poly_complex]: ((P3 @ zero_zero_poly_nat @ zero_z1746442943omplex) => ((![A3 : nat, P2 : poly_nat, B3 : complex, Q2 : poly_complex]: ((P3 @ P2 @ Q2) => (P3 @ (pCons_nat @ A3 @ P2) @ (pCons_complex @ B3 @ Q2)))) => (P3 @ P @ Q)))))). % poly_induct2
thf(fact_64_poly__induct2, axiom,
    ((![P3 : poly_nat > poly_nat > $o, P : poly_nat, Q : poly_nat]: ((P3 @ zero_zero_poly_nat @ zero_zero_poly_nat) => ((![A3 : nat, P2 : poly_nat, B3 : nat, Q2 : poly_nat]: ((P3 @ P2 @ Q2) => (P3 @ (pCons_nat @ A3 @ P2) @ (pCons_nat @ B3 @ Q2)))) => (P3 @ P @ Q)))))). % poly_induct2
thf(fact_65_poly__induct2, axiom,
    ((![P3 : poly_nat > poly_poly_complex > $o, P : poly_nat, Q : poly_poly_complex]: ((P3 @ zero_zero_poly_nat @ zero_z1040703943omplex) => ((![A3 : nat, P2 : poly_nat, B3 : poly_complex, Q2 : poly_poly_complex]: ((P3 @ P2 @ Q2) => (P3 @ (pCons_nat @ A3 @ P2) @ (pCons_poly_complex @ B3 @ Q2)))) => (P3 @ P @ Q)))))). % poly_induct2
thf(fact_66_poly__induct2, axiom,
    ((![P3 : poly_poly_complex > poly_complex > $o, P : poly_poly_complex, Q : poly_complex]: ((P3 @ zero_z1040703943omplex @ zero_z1746442943omplex) => ((![A3 : poly_complex, P2 : poly_poly_complex, B3 : complex, Q2 : poly_complex]: ((P3 @ P2 @ Q2) => (P3 @ (pCons_poly_complex @ A3 @ P2) @ (pCons_complex @ B3 @ Q2)))) => (P3 @ P @ Q)))))). % poly_induct2
thf(fact_67_poly__induct2, axiom,
    ((![P3 : poly_poly_complex > poly_nat > $o, P : poly_poly_complex, Q : poly_nat]: ((P3 @ zero_z1040703943omplex @ zero_zero_poly_nat) => ((![A3 : poly_complex, P2 : poly_poly_complex, B3 : nat, Q2 : poly_nat]: ((P3 @ P2 @ Q2) => (P3 @ (pCons_poly_complex @ A3 @ P2) @ (pCons_nat @ B3 @ Q2)))) => (P3 @ P @ Q)))))). % poly_induct2
thf(fact_68_poly__induct2, axiom,
    ((![P3 : poly_poly_complex > poly_poly_complex > $o, P : poly_poly_complex, Q : poly_poly_complex]: ((P3 @ zero_z1040703943omplex @ zero_z1040703943omplex) => ((![A3 : poly_complex, P2 : poly_poly_complex, B3 : poly_complex, Q2 : poly_poly_complex]: ((P3 @ P2 @ Q2) => (P3 @ (pCons_poly_complex @ A3 @ P2) @ (pCons_poly_complex @ B3 @ Q2)))) => (P3 @ P @ Q)))))). % poly_induct2
thf(fact_69_degree__eq__zeroE, axiom,
    ((![P : poly_complex]: (((degree_complex @ P) = zero_zero_nat) => (~ ((![A3 : complex]: (~ ((P = (pCons_complex @ A3 @ zero_z1746442943omplex))))))))))). % degree_eq_zeroE
thf(fact_70_degree__eq__zeroE, axiom,
    ((![P : poly_nat]: (((degree_nat @ P) = zero_zero_nat) => (~ ((![A3 : nat]: (~ ((P = (pCons_nat @ A3 @ zero_zero_poly_nat))))))))))). % degree_eq_zeroE
thf(fact_71_degree__eq__zeroE, axiom,
    ((![P : poly_poly_complex]: (((degree_poly_complex @ P) = zero_zero_nat) => (~ ((![A3 : poly_complex]: (~ ((P = (pCons_poly_complex @ A3 @ zero_z1040703943omplex))))))))))). % degree_eq_zeroE
thf(fact_72_degree__pCons__0, axiom,
    ((![A : complex]: ((degree_complex @ (pCons_complex @ A @ zero_z1746442943omplex)) = zero_zero_nat)))). % degree_pCons_0
thf(fact_73_degree__pCons__0, axiom,
    ((![A : nat]: ((degree_nat @ (pCons_nat @ A @ zero_zero_poly_nat)) = zero_zero_nat)))). % degree_pCons_0
thf(fact_74_degree__pCons__0, axiom,
    ((![A : poly_complex]: ((degree_poly_complex @ (pCons_poly_complex @ A @ zero_z1040703943omplex)) = zero_zero_nat)))). % degree_pCons_0
thf(fact_75_constant__def, axiom,
    ((fundam1158420650omplex = (^[F : complex > complex]: (![X3 : complex]: (![Y2 : complex]: ((F @ X3) = (F @ Y2)))))))). % constant_def
thf(fact_76_pCons__induct, axiom,
    ((![P3 : poly_poly_nat > $o, P : poly_poly_nat]: ((P3 @ zero_z1059985641ly_nat) => ((![A3 : poly_nat, P2 : poly_poly_nat]: (((~ ((A3 = zero_zero_poly_nat))) | (~ ((P2 = zero_z1059985641ly_nat)))) => ((P3 @ P2) => (P3 @ (pCons_poly_nat @ A3 @ P2))))) => (P3 @ P)))))). % pCons_induct
thf(fact_77_pCons__induct, axiom,
    ((![P3 : poly_p1267267526omplex > $o, P : poly_p1267267526omplex]: ((P3 @ zero_z1200043727omplex) => ((![A3 : poly_poly_complex, P2 : poly_p1267267526omplex]: (((~ ((A3 = zero_z1040703943omplex))) | (~ ((P2 = zero_z1200043727omplex)))) => ((P3 @ P2) => (P3 @ (pCons_1087637536omplex @ A3 @ P2))))) => (P3 @ P)))))). % pCons_induct
thf(fact_78_pCons__induct, axiom,
    ((![P3 : poly_complex > $o, P : poly_complex]: ((P3 @ zero_z1746442943omplex) => ((![A3 : complex, P2 : poly_complex]: (((~ ((A3 = zero_zero_complex))) | (~ ((P2 = zero_z1746442943omplex)))) => ((P3 @ P2) => (P3 @ (pCons_complex @ A3 @ P2))))) => (P3 @ P)))))). % pCons_induct
thf(fact_79_pCons__induct, axiom,
    ((![P3 : poly_nat > $o, P : poly_nat]: ((P3 @ zero_zero_poly_nat) => ((![A3 : nat, P2 : poly_nat]: (((~ ((A3 = zero_zero_nat))) | (~ ((P2 = zero_zero_poly_nat)))) => ((P3 @ P2) => (P3 @ (pCons_nat @ A3 @ P2))))) => (P3 @ P)))))). % pCons_induct
thf(fact_80_pCons__induct, axiom,
    ((![P3 : poly_poly_complex > $o, P : poly_poly_complex]: ((P3 @ zero_z1040703943omplex) => ((![A3 : poly_complex, P2 : poly_poly_complex]: (((~ ((A3 = zero_z1746442943omplex))) | (~ ((P2 = zero_z1040703943omplex)))) => ((P3 @ P2) => (P3 @ (pCons_poly_complex @ A3 @ P2))))) => (P3 @ P)))))). % pCons_induct
thf(fact_81_zero__reorient, axiom,
    ((![X2 : complex]: ((zero_zero_complex = X2) = (X2 = zero_zero_complex))))). % zero_reorient
thf(fact_82_zero__reorient, axiom,
    ((![X2 : poly_complex]: ((zero_z1746442943omplex = X2) = (X2 = zero_z1746442943omplex))))). % zero_reorient
thf(fact_83_zero__reorient, axiom,
    ((![X2 : nat]: ((zero_zero_nat = X2) = (X2 = zero_zero_nat))))). % zero_reorient
thf(fact_84_zero__reorient, axiom,
    ((![X2 : poly_nat]: ((zero_zero_poly_nat = X2) = (X2 = zero_zero_poly_nat))))). % zero_reorient
thf(fact_85_zero__reorient, axiom,
    ((![X2 : poly_poly_complex]: ((zero_z1040703943omplex = X2) = (X2 = zero_z1040703943omplex))))). % zero_reorient
thf(fact_86_dvd__trans, axiom,
    ((![A : poly_complex, B2 : poly_complex, C : poly_complex]: ((dvd_dvd_poly_complex @ A @ B2) => ((dvd_dvd_poly_complex @ B2 @ C) => (dvd_dvd_poly_complex @ A @ C)))))). % dvd_trans
thf(fact_87_dvd__trans, axiom,
    ((![A : nat, B2 : nat, C : nat]: ((dvd_dvd_nat @ A @ B2) => ((dvd_dvd_nat @ B2 @ C) => (dvd_dvd_nat @ A @ C)))))). % dvd_trans
thf(fact_88_dvd__trans, axiom,
    ((![A : complex, B2 : complex, C : complex]: ((dvd_dvd_complex @ A @ B2) => ((dvd_dvd_complex @ B2 @ C) => (dvd_dvd_complex @ A @ C)))))). % dvd_trans
thf(fact_89_dvd__refl, axiom,
    ((![A : poly_complex]: (dvd_dvd_poly_complex @ A @ A)))). % dvd_refl
thf(fact_90_dvd__refl, axiom,
    ((![A : nat]: (dvd_dvd_nat @ A @ A)))). % dvd_refl
thf(fact_91_dvd__refl, axiom,
    ((![A : complex]: (dvd_dvd_complex @ A @ A)))). % dvd_refl
thf(fact_92_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_93_poly__eq__poly__eq__iff, axiom,
    ((![P : poly_poly_complex, Q : poly_poly_complex]: (((poly_poly_complex2 @ P) = (poly_poly_complex2 @ Q)) = (P = Q))))). % poly_eq_poly_eq_iff
thf(fact_94_fundamental__theorem__of__algebra__alt, axiom,
    ((![P : poly_complex]: ((~ ((?[A3 : complex, L : poly_complex]: ((~ ((A3 = zero_zero_complex))) & ((L = zero_z1746442943omplex) & (P = (pCons_complex @ A3 @ L))))))) => (?[Z : complex]: ((poly_complex2 @ P @ Z) = zero_zero_complex)))))). % fundamental_theorem_of_algebra_alt
thf(fact_95_power__not__zero, axiom,
    ((![A : poly_complex, N : nat]: ((~ ((A = zero_z1746442943omplex))) => (~ (((power_184595776omplex @ A @ N) = zero_z1746442943omplex))))))). % power_not_zero
thf(fact_96_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_97_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_98_power__not__zero, axiom,
    ((![A : poly_nat, N : nat]: ((~ ((A = zero_zero_poly_nat))) => (~ (((power_power_poly_nat @ A @ N) = zero_zero_poly_nat))))))). % power_not_zero
thf(fact_99_power__not__zero, axiom,
    ((![A : poly_poly_complex, N : nat]: ((~ ((A = zero_z1040703943omplex))) => (~ (((power_432682568omplex @ A @ N) = zero_z1040703943omplex))))))). % power_not_zero
thf(fact_100_dvd__0__left, axiom,
    ((![A : complex]: ((dvd_dvd_complex @ zero_zero_complex @ A) => (A = zero_zero_complex))))). % dvd_0_left
thf(fact_101_dvd__0__left, axiom,
    ((![A : poly_complex]: ((dvd_dvd_poly_complex @ zero_z1746442943omplex @ A) => (A = zero_z1746442943omplex))))). % dvd_0_left
thf(fact_102_dvd__0__left, axiom,
    ((![A : nat]: ((dvd_dvd_nat @ zero_zero_nat @ A) => (A = zero_zero_nat))))). % dvd_0_left
thf(fact_103_dvd__0__left, axiom,
    ((![A : poly_nat]: ((dvd_dvd_poly_nat @ zero_zero_poly_nat @ A) => (A = zero_zero_poly_nat))))). % dvd_0_left
thf(fact_104_dvd__0__left, axiom,
    ((![A : poly_poly_complex]: ((dvd_dv598755940omplex @ zero_z1040703943omplex @ A) => (A = zero_z1040703943omplex))))). % dvd_0_left
thf(fact_105__092_060open_062_092_060And_062thesis_O_A_092_060lbrakk_062p_A_061_A0_A_092_060Longrightarrow_062_Athesis_059_A_092_060lbrakk_062p_A_092_060noteq_062_A0_059_Adegree_Ap_A_061_A0_092_060rbrakk_062_A_092_060Longrightarrow_062_Athesis_059_A_092_060And_062n_O_A_092_060lbrakk_062p_A_092_060noteq_062_A0_059_Adegree_Ap_A_061_ASuc_An_092_060rbrakk_062_A_092_060Longrightarrow_062_Athesis_092_060rbrakk_062_A_092_060Longrightarrow_062_Athesis_092_060close_062, axiom,
    (((~ ((p = zero_z1746442943omplex))) => (((~ ((p = zero_z1746442943omplex))) => (~ (((degree_complex @ p) = zero_zero_nat)))) => (~ (((~ ((p = zero_z1746442943omplex))) => (![N2 : nat]: (~ (((degree_complex @ p) = (suc @ N2)))))))))))). % \<open>\<And>thesis. \<lbrakk>p = 0 \<Longrightarrow> thesis; \<lbrakk>p \<noteq> 0; degree p = 0\<rbrakk> \<Longrightarrow> thesis; \<And>n. \<lbrakk>p \<noteq> 0; degree p = Suc n\<rbrakk> \<Longrightarrow> thesis\<rbrakk> \<Longrightarrow> thesis\<close>
thf(fact_106__092_060open_062q_A_094_Adegree_Ap_A_061_Ap_A_K_A_091_0581_A_P_Ak_058_093_092_060close_062, axiom,
    (((power_184595776omplex @ q @ (degree_complex @ p)) = (times_1246143675omplex @ p @ (pCons_complex @ (divide1210191872omplex @ one_one_complex @ k) @ zero_z1746442943omplex))))). % \<open>q ^ degree p = p * [:1 / k:]\<close>
thf(fact_107_psize__eq__0__iff, axiom,
    ((![P : poly_complex]: (((fundam1709708056omplex @ P) = zero_zero_nat) = (P = zero_z1746442943omplex))))). % psize_eq_0_iff
thf(fact_108_psize__eq__0__iff, axiom,
    ((![P : poly_nat]: (((fundam1567013434ze_nat @ P) = zero_zero_nat) = (P = zero_zero_poly_nat))))). % psize_eq_0_iff
thf(fact_109_psize__eq__0__iff, axiom,
    ((![P : poly_poly_complex]: (((fundam1956464160omplex @ P) = zero_zero_nat) = (P = zero_z1040703943omplex))))). % psize_eq_0_iff
thf(fact_110_synthetic__div__pCons, axiom,
    ((![A : nat, P : poly_nat, C : nat]: ((synthetic_div_nat @ (pCons_nat @ A @ P) @ C) = (pCons_nat @ (poly_nat2 @ P @ C) @ (synthetic_div_nat @ P @ C)))))). % synthetic_div_pCons
thf(fact_111_synthetic__div__pCons, axiom,
    ((![A : poly_complex, P : poly_poly_complex, C : poly_complex]: ((synthe1985144195omplex @ (pCons_poly_complex @ A @ P) @ C) = (pCons_poly_complex @ (poly_poly_complex2 @ P @ C) @ (synthe1985144195omplex @ P @ C)))))). % synthetic_div_pCons
thf(fact_112_synthetic__div__pCons, axiom,
    ((![A : complex, P : poly_complex, C : complex]: ((synthe151143547omplex @ (pCons_complex @ A @ P) @ C) = (pCons_complex @ (poly_complex2 @ P @ C) @ (synthe151143547omplex @ P @ C)))))). % synthetic_div_pCons
thf(fact_113_synthetic__div__eq__0__iff, axiom,
    ((![P : poly_complex, C : complex]: (((synthe151143547omplex @ P @ C) = zero_z1746442943omplex) = ((degree_complex @ P) = zero_zero_nat))))). % synthetic_div_eq_0_iff
thf(fact_114_synthetic__div__eq__0__iff, axiom,
    ((![P : poly_nat, C : nat]: (((synthetic_div_nat @ P @ C) = zero_zero_poly_nat) = ((degree_nat @ P) = zero_zero_nat))))). % synthetic_div_eq_0_iff
thf(fact_115_synthetic__div__eq__0__iff, axiom,
    ((![P : poly_poly_complex, C : poly_complex]: (((synthe1985144195omplex @ P @ C) = zero_z1040703943omplex) = ((degree_poly_complex @ P) = zero_zero_nat))))). % synthetic_div_eq_0_iff
thf(fact_116_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_117_degree__pCons__eq__if, axiom,
    ((![P : poly_nat, A : nat]: (((P = zero_zero_poly_nat) => ((degree_nat @ (pCons_nat @ A @ P)) = zero_zero_nat)) & ((~ ((P = zero_zero_poly_nat))) => ((degree_nat @ (pCons_nat @ A @ P)) = (suc @ (degree_nat @ P)))))))). % degree_pCons_eq_if
thf(fact_118_degree__pCons__eq__if, axiom,
    ((![P : poly_poly_complex, A : poly_complex]: (((P = zero_z1040703943omplex) => ((degree_poly_complex @ (pCons_poly_complex @ A @ P)) = zero_zero_nat)) & ((~ ((P = zero_z1040703943omplex))) => ((degree_poly_complex @ (pCons_poly_complex @ A @ P)) = (suc @ (degree_poly_complex @ P)))))))). % degree_pCons_eq_if
thf(fact_119_const__poly__dvd__iff__dvd__content, axiom,
    ((![C : nat, P : poly_nat]: ((dvd_dvd_poly_nat @ (pCons_nat @ C @ zero_zero_poly_nat) @ P) = (dvd_dvd_nat @ C @ (content_nat @ P)))))). % const_poly_dvd_iff_dvd_content
thf(fact_120_is__zero__null, axiom,
    ((is_zero_complex = (^[P4 : poly_complex]: (P4 = zero_z1746442943omplex))))). % is_zero_null
thf(fact_121_is__zero__null, axiom,
    ((is_zero_nat = (^[P4 : poly_nat]: (P4 = zero_zero_poly_nat))))). % is_zero_null
thf(fact_122_is__zero__null, axiom,
    ((is_zero_poly_complex = (^[P4 : poly_poly_complex]: (P4 = zero_z1040703943omplex))))). % is_zero_null
thf(fact_123_poly__cutoff__0, axiom,
    ((![N : nat]: ((poly_cutoff_complex @ N @ zero_z1746442943omplex) = zero_z1746442943omplex)))). % poly_cutoff_0
thf(fact_124_poly__cutoff__0, axiom,
    ((![N : nat]: ((poly_cutoff_nat @ N @ zero_zero_poly_nat) = zero_zero_poly_nat)))). % poly_cutoff_0
thf(fact_125_poly__cutoff__0, axiom,
    ((![N : nat]: ((poly_c622223248omplex @ N @ zero_z1040703943omplex) = zero_z1040703943omplex)))). % poly_cutoff_0
thf(fact_126_mult__zero__left, axiom,
    ((![A : complex]: ((times_times_complex @ zero_zero_complex @ A) = zero_zero_complex)))). % mult_zero_left
thf(fact_127_mult__zero__left, axiom,
    ((![A : nat]: ((times_times_nat @ zero_zero_nat @ A) = zero_zero_nat)))). % mult_zero_left
thf(fact_128_mult__zero__left, axiom,
    ((![A : poly_nat]: ((times_times_poly_nat @ zero_zero_poly_nat @ A) = zero_zero_poly_nat)))). % mult_zero_left
thf(fact_129_mult__zero__left, axiom,
    ((![A : poly_poly_complex]: ((times_1460995011omplex @ zero_z1040703943omplex @ A) = zero_z1040703943omplex)))). % mult_zero_left
thf(fact_130_mult__zero__left, axiom,
    ((![A : poly_complex]: ((times_1246143675omplex @ zero_z1746442943omplex @ A) = zero_z1746442943omplex)))). % mult_zero_left
thf(fact_131_mult__zero__right, axiom,
    ((![A : complex]: ((times_times_complex @ A @ zero_zero_complex) = zero_zero_complex)))). % mult_zero_right
thf(fact_132_mult__zero__right, axiom,
    ((![A : nat]: ((times_times_nat @ A @ zero_zero_nat) = zero_zero_nat)))). % mult_zero_right
thf(fact_133_mult__zero__right, axiom,
    ((![A : poly_nat]: ((times_times_poly_nat @ A @ zero_zero_poly_nat) = zero_zero_poly_nat)))). % mult_zero_right
thf(fact_134_mult__zero__right, axiom,
    ((![A : poly_poly_complex]: ((times_1460995011omplex @ A @ zero_z1040703943omplex) = zero_z1040703943omplex)))). % mult_zero_right
thf(fact_135_mult__zero__right, axiom,
    ((![A : poly_complex]: ((times_1246143675omplex @ A @ zero_z1746442943omplex) = zero_z1746442943omplex)))). % mult_zero_right
thf(fact_136_mult__eq__0__iff, axiom,
    ((![A : complex, B2 : complex]: (((times_times_complex @ A @ B2) = zero_zero_complex) = (((A = zero_zero_complex)) | ((B2 = zero_zero_complex))))))). % mult_eq_0_iff
thf(fact_137_mult__eq__0__iff, axiom,
    ((![A : nat, B2 : nat]: (((times_times_nat @ A @ B2) = zero_zero_nat) = (((A = zero_zero_nat)) | ((B2 = zero_zero_nat))))))). % mult_eq_0_iff
thf(fact_138_mult__eq__0__iff, axiom,
    ((![A : poly_nat, B2 : poly_nat]: (((times_times_poly_nat @ A @ B2) = zero_zero_poly_nat) = (((A = zero_zero_poly_nat)) | ((B2 = zero_zero_poly_nat))))))). % mult_eq_0_iff
thf(fact_139_mult__eq__0__iff, axiom,
    ((![A : poly_poly_complex, B2 : poly_poly_complex]: (((times_1460995011omplex @ A @ B2) = zero_z1040703943omplex) = (((A = zero_z1040703943omplex)) | ((B2 = zero_z1040703943omplex))))))). % mult_eq_0_iff
thf(fact_140_mult__eq__0__iff, axiom,
    ((![A : poly_complex, B2 : poly_complex]: (((times_1246143675omplex @ A @ B2) = zero_z1746442943omplex) = (((A = zero_z1746442943omplex)) | ((B2 = zero_z1746442943omplex))))))). % mult_eq_0_iff
thf(fact_141_mult__cancel__left, axiom,
    ((![C : complex, A : complex, B2 : complex]: (((times_times_complex @ C @ A) = (times_times_complex @ C @ B2)) = (((C = zero_zero_complex)) | ((A = B2))))))). % mult_cancel_left
thf(fact_142_mult__cancel__left, axiom,
    ((![C : nat, A : nat, B2 : nat]: (((times_times_nat @ C @ A) = (times_times_nat @ C @ B2)) = (((C = zero_zero_nat)) | ((A = B2))))))). % mult_cancel_left
thf(fact_143_mult__cancel__left, axiom,
    ((![C : poly_poly_complex, A : poly_poly_complex, B2 : poly_poly_complex]: (((times_1460995011omplex @ C @ A) = (times_1460995011omplex @ C @ B2)) = (((C = zero_z1040703943omplex)) | ((A = B2))))))). % mult_cancel_left
thf(fact_144_mult__cancel__left, axiom,
    ((![C : poly_complex, A : poly_complex, B2 : poly_complex]: (((times_1246143675omplex @ C @ A) = (times_1246143675omplex @ C @ B2)) = (((C = zero_z1746442943omplex)) | ((A = B2))))))). % mult_cancel_left
thf(fact_145_mult__cancel__right, axiom,
    ((![A : complex, C : complex, B2 : complex]: (((times_times_complex @ A @ C) = (times_times_complex @ B2 @ C)) = (((C = zero_zero_complex)) | ((A = B2))))))). % mult_cancel_right
thf(fact_146_mult__cancel__right, axiom,
    ((![A : nat, C : nat, B2 : nat]: (((times_times_nat @ A @ C) = (times_times_nat @ B2 @ C)) = (((C = zero_zero_nat)) | ((A = B2))))))). % mult_cancel_right
thf(fact_147_mult__cancel__right, axiom,
    ((![A : poly_poly_complex, C : poly_poly_complex, B2 : poly_poly_complex]: (((times_1460995011omplex @ A @ C) = (times_1460995011omplex @ B2 @ C)) = (((C = zero_z1040703943omplex)) | ((A = B2))))))). % mult_cancel_right
thf(fact_148_mult__cancel__right, axiom,
    ((![A : poly_complex, C : poly_complex, B2 : poly_complex]: (((times_1246143675omplex @ A @ C) = (times_1246143675omplex @ B2 @ C)) = (((C = zero_z1746442943omplex)) | ((A = B2))))))). % mult_cancel_right
thf(fact_149_div__0, axiom,
    ((![A : poly_complex]: ((divide1187762952omplex @ zero_z1746442943omplex @ A) = zero_z1746442943omplex)))). % div_0
thf(fact_150_div__0, axiom,
    ((![A : nat]: ((divide_divide_nat @ zero_zero_nat @ A) = zero_zero_nat)))). % div_0
thf(fact_151_div__0, axiom,
    ((![A : poly_poly_complex]: ((divide350004240omplex @ zero_z1040703943omplex @ A) = zero_z1040703943omplex)))). % div_0
thf(fact_152_div__0, axiom,
    ((![A : complex]: ((divide1210191872omplex @ zero_zero_complex @ A) = zero_zero_complex)))). % div_0
thf(fact_153_divide__eq__0__iff, axiom,
    ((![A : complex, B2 : complex]: (((divide1210191872omplex @ A @ B2) = zero_zero_complex) = (((A = zero_zero_complex)) | ((B2 = zero_zero_complex))))))). % divide_eq_0_iff
thf(fact_154_div__by__0, axiom,
    ((![A : poly_complex]: ((divide1187762952omplex @ A @ zero_z1746442943omplex) = zero_z1746442943omplex)))). % div_by_0
thf(fact_155_div__by__0, axiom,
    ((![A : nat]: ((divide_divide_nat @ A @ zero_zero_nat) = zero_zero_nat)))). % div_by_0
thf(fact_156_div__by__0, axiom,
    ((![A : poly_poly_complex]: ((divide350004240omplex @ A @ zero_z1040703943omplex) = zero_z1040703943omplex)))). % div_by_0
thf(fact_157_div__by__0, axiom,
    ((![A : complex]: ((divide1210191872omplex @ A @ zero_zero_complex) = zero_zero_complex)))). % div_by_0
thf(fact_158_divide__cancel__left, axiom,
    ((![C : complex, A : complex, B2 : complex]: (((divide1210191872omplex @ C @ A) = (divide1210191872omplex @ C @ B2)) = (((C = zero_zero_complex)) | ((A = B2))))))). % divide_cancel_left
thf(fact_159_divide__cancel__right, axiom,
    ((![A : complex, C : complex, B2 : complex]: (((divide1210191872omplex @ A @ C) = (divide1210191872omplex @ B2 @ C)) = (((C = zero_zero_complex)) | ((A = B2))))))). % divide_cancel_right
thf(fact_160_division__ring__divide__zero, axiom,
    ((![A : complex]: ((divide1210191872omplex @ A @ zero_zero_complex) = zero_zero_complex)))). % division_ring_divide_zero
thf(fact_161_mult_Oleft__neutral, axiom,
    ((![A : complex]: ((times_times_complex @ one_one_complex @ A) = A)))). % mult.left_neutral
thf(fact_162_mult_Oleft__neutral, axiom,
    ((![A : poly_complex]: ((times_1246143675omplex @ one_one_poly_complex @ A) = A)))). % mult.left_neutral
thf(fact_163_mult_Oright__neutral, axiom,
    ((![A : complex]: ((times_times_complex @ A @ one_one_complex) = A)))). % mult.right_neutral
thf(fact_164_mult_Oright__neutral, axiom,
    ((![A : poly_complex]: ((times_1246143675omplex @ A @ one_one_poly_complex) = A)))). % mult.right_neutral
thf(fact_165_times__divide__eq__left, axiom,
    ((![B2 : complex, C : complex, A : complex]: ((times_times_complex @ (divide1210191872omplex @ B2 @ C) @ A) = (divide1210191872omplex @ (times_times_complex @ B2 @ A) @ C))))). % times_divide_eq_left
thf(fact_166_divide__divide__eq__left, axiom,
    ((![A : complex, B2 : complex, C : complex]: ((divide1210191872omplex @ (divide1210191872omplex @ A @ B2) @ C) = (divide1210191872omplex @ A @ (times_times_complex @ B2 @ C)))))). % divide_divide_eq_left
thf(fact_167_divide__divide__eq__right, axiom,
    ((![A : complex, B2 : complex, C : complex]: ((divide1210191872omplex @ A @ (divide1210191872omplex @ B2 @ C)) = (divide1210191872omplex @ (times_times_complex @ A @ C) @ B2))))). % divide_divide_eq_right
thf(fact_168_times__divide__eq__right, axiom,
    ((![A : complex, B2 : complex, C : complex]: ((times_times_complex @ A @ (divide1210191872omplex @ B2 @ C)) = (divide1210191872omplex @ (times_times_complex @ A @ B2) @ C))))). % times_divide_eq_right
thf(fact_169_div__by__1, axiom,
    ((![A : complex]: ((divide1210191872omplex @ A @ one_one_complex) = A)))). % div_by_1
thf(fact_170_power__one, axiom,
    ((![N : nat]: ((power_184595776omplex @ one_one_poly_complex @ N) = one_one_poly_complex)))). % power_one
thf(fact_171_power__one, axiom,
    ((![N : nat]: ((power_power_nat @ one_one_nat @ N) = one_one_nat)))). % power_one
thf(fact_172_power__one, axiom,
    ((![N : nat]: ((power_power_complex @ one_one_complex @ N) = one_one_complex)))). % power_one
thf(fact_173_power__one, axiom,
    ((![N : nat]: ((power_power_poly_nat @ one_one_poly_nat @ N) = one_one_poly_nat)))). % power_one
thf(fact_174_power__one, axiom,
    ((![N : nat]: ((power_432682568omplex @ one_on1331105667omplex @ N) = one_on1331105667omplex)))). % power_one
thf(fact_175_div__dvd__div, axiom,
    ((![A : poly_complex, B2 : poly_complex, C : poly_complex]: ((dvd_dvd_poly_complex @ A @ B2) => ((dvd_dvd_poly_complex @ A @ C) => ((dvd_dvd_poly_complex @ (divide1187762952omplex @ B2 @ A) @ (divide1187762952omplex @ C @ A)) = (dvd_dvd_poly_complex @ B2 @ C))))))). % div_dvd_div
thf(fact_176_div__dvd__div, axiom,
    ((![A : nat, B2 : nat, C : nat]: ((dvd_dvd_nat @ A @ B2) => ((dvd_dvd_nat @ A @ C) => ((dvd_dvd_nat @ (divide_divide_nat @ B2 @ A) @ (divide_divide_nat @ C @ A)) = (dvd_dvd_nat @ B2 @ C))))))). % div_dvd_div
thf(fact_177_nat__power__eq__Suc__0__iff, axiom,
    ((![X2 : nat, M : nat]: (((power_power_nat @ X2 @ M) = (suc @ zero_zero_nat)) = (((M = zero_zero_nat)) | ((X2 = (suc @ zero_zero_nat)))))))). % nat_power_eq_Suc_0_iff
thf(fact_178_power__Suc__0, axiom,
    ((![N : nat]: ((power_power_nat @ (suc @ zero_zero_nat) @ N) = (suc @ zero_zero_nat))))). % power_Suc_0
thf(fact_179_poly__1, axiom,
    ((![X2 : nat]: ((poly_nat2 @ one_one_poly_nat @ X2) = one_one_nat)))). % poly_1
thf(fact_180_poly__1, axiom,
    ((![X2 : poly_complex]: ((poly_poly_complex2 @ one_on1331105667omplex @ X2) = one_one_poly_complex)))). % poly_1
thf(fact_181_poly__1, axiom,
    ((![X2 : complex]: ((poly_complex2 @ one_one_poly_complex @ X2) = one_one_complex)))). % poly_1
thf(fact_182_synthetic__div__0, axiom,
    ((![C : complex]: ((synthe151143547omplex @ zero_z1746442943omplex @ C) = zero_z1746442943omplex)))). % synthetic_div_0
thf(fact_183_synthetic__div__0, axiom,
    ((![C : nat]: ((synthetic_div_nat @ zero_zero_poly_nat @ C) = zero_zero_poly_nat)))). % synthetic_div_0
thf(fact_184_synthetic__div__0, axiom,
    ((![C : poly_complex]: ((synthe1985144195omplex @ zero_z1040703943omplex @ C) = zero_z1040703943omplex)))). % synthetic_div_0
thf(fact_185_mult__cancel__left1, axiom,
    ((![C : complex, B2 : complex]: ((C = (times_times_complex @ C @ B2)) = (((C = zero_zero_complex)) | ((B2 = one_one_complex))))))). % mult_cancel_left1
thf(fact_186_mult__cancel__left1, axiom,
    ((![C : poly_poly_complex, B2 : poly_poly_complex]: ((C = (times_1460995011omplex @ C @ B2)) = (((C = zero_z1040703943omplex)) | ((B2 = one_on1331105667omplex))))))). % mult_cancel_left1
thf(fact_187_mult__cancel__left1, axiom,
    ((![C : poly_complex, B2 : poly_complex]: ((C = (times_1246143675omplex @ C @ B2)) = (((C = zero_z1746442943omplex)) | ((B2 = one_one_poly_complex))))))). % mult_cancel_left1
thf(fact_188_mult__cancel__left2, axiom,
    ((![C : complex, A : complex]: (((times_times_complex @ C @ A) = C) = (((C = zero_zero_complex)) | ((A = one_one_complex))))))). % mult_cancel_left2
thf(fact_189_mult__cancel__left2, axiom,
    ((![C : poly_poly_complex, A : poly_poly_complex]: (((times_1460995011omplex @ C @ A) = C) = (((C = zero_z1040703943omplex)) | ((A = one_on1331105667omplex))))))). % mult_cancel_left2
thf(fact_190_mult__cancel__left2, axiom,
    ((![C : poly_complex, A : poly_complex]: (((times_1246143675omplex @ C @ A) = C) = (((C = zero_z1746442943omplex)) | ((A = one_one_poly_complex))))))). % mult_cancel_left2
thf(fact_191_mult__cancel__right1, axiom,
    ((![C : complex, B2 : complex]: ((C = (times_times_complex @ B2 @ C)) = (((C = zero_zero_complex)) | ((B2 = one_one_complex))))))). % mult_cancel_right1
thf(fact_192_mult__cancel__right1, axiom,
    ((![C : poly_poly_complex, B2 : poly_poly_complex]: ((C = (times_1460995011omplex @ B2 @ C)) = (((C = zero_z1040703943omplex)) | ((B2 = one_on1331105667omplex))))))). % mult_cancel_right1
thf(fact_193_mult__cancel__right1, axiom,
    ((![C : poly_complex, B2 : poly_complex]: ((C = (times_1246143675omplex @ B2 @ C)) = (((C = zero_z1746442943omplex)) | ((B2 = one_one_poly_complex))))))). % mult_cancel_right1
thf(fact_194_mult__cancel__right2, axiom,
    ((![A : complex, C : complex]: (((times_times_complex @ A @ C) = C) = (((C = zero_zero_complex)) | ((A = one_one_complex))))))). % mult_cancel_right2
thf(fact_195_mult__cancel__right2, axiom,
    ((![A : poly_poly_complex, C : poly_poly_complex]: (((times_1460995011omplex @ A @ C) = C) = (((C = zero_z1040703943omplex)) | ((A = one_on1331105667omplex))))))). % mult_cancel_right2
thf(fact_196_mult__cancel__right2, axiom,
    ((![A : poly_complex, C : poly_complex]: (((times_1246143675omplex @ A @ C) = C) = (((C = zero_z1746442943omplex)) | ((A = one_one_poly_complex))))))). % mult_cancel_right2
thf(fact_197_mult__divide__mult__cancel__left__if, axiom,
    ((![C : complex, A : complex, B2 : complex]: (((C = zero_zero_complex) => ((divide1210191872omplex @ (times_times_complex @ C @ A) @ (times_times_complex @ C @ B2)) = zero_zero_complex)) & ((~ ((C = zero_zero_complex))) => ((divide1210191872omplex @ (times_times_complex @ C @ A) @ (times_times_complex @ C @ B2)) = (divide1210191872omplex @ A @ B2))))))). % mult_divide_mult_cancel_left_if
thf(fact_198_nonzero__mult__divide__mult__cancel__left, axiom,
    ((![C : complex, A : complex, B2 : complex]: ((~ ((C = zero_zero_complex))) => ((divide1210191872omplex @ (times_times_complex @ C @ A) @ (times_times_complex @ C @ B2)) = (divide1210191872omplex @ A @ B2)))))). % nonzero_mult_divide_mult_cancel_left
thf(fact_199_nonzero__mult__div__cancel__left, axiom,
    ((![A : nat, B2 : nat]: ((~ ((A = zero_zero_nat))) => ((divide_divide_nat @ (times_times_nat @ A @ B2) @ A) = B2))))). % nonzero_mult_div_cancel_left
thf(fact_200_nonzero__mult__div__cancel__left, axiom,
    ((![A : poly_poly_complex, B2 : poly_poly_complex]: ((~ ((A = zero_z1040703943omplex))) => ((divide350004240omplex @ (times_1460995011omplex @ A @ B2) @ A) = B2))))). % nonzero_mult_div_cancel_left
thf(fact_201_nonzero__mult__div__cancel__left, axiom,
    ((![A : poly_complex, B2 : poly_complex]: ((~ ((A = zero_z1746442943omplex))) => ((divide1187762952omplex @ (times_1246143675omplex @ A @ B2) @ A) = B2))))). % nonzero_mult_div_cancel_left
thf(fact_202_nonzero__mult__div__cancel__left, axiom,
    ((![A : complex, B2 : complex]: ((~ ((A = zero_zero_complex))) => ((divide1210191872omplex @ (times_times_complex @ A @ B2) @ A) = B2))))). % nonzero_mult_div_cancel_left
thf(fact_203_nonzero__mult__divide__mult__cancel__left2, axiom,
    ((![C : complex, A : complex, B2 : complex]: ((~ ((C = zero_zero_complex))) => ((divide1210191872omplex @ (times_times_complex @ C @ A) @ (times_times_complex @ B2 @ C)) = (divide1210191872omplex @ A @ B2)))))). % nonzero_mult_divide_mult_cancel_left2
thf(fact_204_nonzero__mult__divide__mult__cancel__right, axiom,
    ((![C : complex, A : complex, B2 : complex]: ((~ ((C = zero_zero_complex))) => ((divide1210191872omplex @ (times_times_complex @ A @ C) @ (times_times_complex @ B2 @ C)) = (divide1210191872omplex @ A @ B2)))))). % nonzero_mult_divide_mult_cancel_right
thf(fact_205_nonzero__mult__div__cancel__right, axiom,
    ((![B2 : nat, A : nat]: ((~ ((B2 = zero_zero_nat))) => ((divide_divide_nat @ (times_times_nat @ A @ B2) @ B2) = A))))). % nonzero_mult_div_cancel_right
thf(fact_206_nonzero__mult__div__cancel__right, axiom,
    ((![B2 : poly_poly_complex, A : poly_poly_complex]: ((~ ((B2 = zero_z1040703943omplex))) => ((divide350004240omplex @ (times_1460995011omplex @ A @ B2) @ B2) = A))))). % nonzero_mult_div_cancel_right
thf(fact_207_nonzero__mult__div__cancel__right, axiom,
    ((![B2 : poly_complex, A : poly_complex]: ((~ ((B2 = zero_z1746442943omplex))) => ((divide1187762952omplex @ (times_1246143675omplex @ A @ B2) @ B2) = A))))). % nonzero_mult_div_cancel_right
thf(fact_208_nonzero__mult__div__cancel__right, axiom,
    ((![B2 : complex, A : complex]: ((~ ((B2 = zero_zero_complex))) => ((divide1210191872omplex @ (times_times_complex @ A @ B2) @ B2) = A))))). % nonzero_mult_div_cancel_right
thf(fact_209_nonzero__mult__divide__mult__cancel__right2, axiom,
    ((![C : complex, A : complex, B2 : complex]: ((~ ((C = zero_zero_complex))) => ((divide1210191872omplex @ (times_times_complex @ A @ C) @ (times_times_complex @ C @ B2)) = (divide1210191872omplex @ A @ B2)))))). % nonzero_mult_divide_mult_cancel_right2
thf(fact_210_divide__eq__1__iff, axiom,
    ((![A : complex, B2 : complex]: (((divide1210191872omplex @ A @ B2) = one_one_complex) = (((~ ((B2 = zero_zero_complex)))) & ((A = B2))))))). % divide_eq_1_iff
thf(fact_211_div__self, axiom,
    ((![A : poly_complex]: ((~ ((A = zero_z1746442943omplex))) => ((divide1187762952omplex @ A @ A) = one_one_poly_complex))))). % div_self
thf(fact_212_div__self, axiom,
    ((![A : nat]: ((~ ((A = zero_zero_nat))) => ((divide_divide_nat @ A @ A) = one_one_nat))))). % div_self
thf(fact_213_div__self, axiom,
    ((![A : poly_poly_complex]: ((~ ((A = zero_z1040703943omplex))) => ((divide350004240omplex @ A @ A) = one_on1331105667omplex))))). % div_self
thf(fact_214_div__self, axiom,
    ((![A : complex]: ((~ ((A = zero_zero_complex))) => ((divide1210191872omplex @ A @ A) = one_one_complex))))). % div_self
thf(fact_215_one__eq__divide__iff, axiom,
    ((![A : complex, B2 : complex]: ((one_one_complex = (divide1210191872omplex @ A @ B2)) = (((~ ((B2 = zero_zero_complex)))) & ((A = B2))))))). % one_eq_divide_iff
thf(fact_216_divide__self, axiom,
    ((![A : complex]: ((~ ((A = zero_zero_complex))) => ((divide1210191872omplex @ A @ A) = one_one_complex))))). % divide_self
thf(fact_217_divide__self__if, axiom,
    ((![A : complex]: (((A = zero_zero_complex) => ((divide1210191872omplex @ A @ A) = zero_zero_complex)) & ((~ ((A = zero_zero_complex))) => ((divide1210191872omplex @ A @ A) = one_one_complex)))))). % divide_self_if
thf(fact_218_dvd__mult__cancel__left, axiom,
    ((![C : complex, A : complex, B2 : complex]: ((dvd_dvd_complex @ (times_times_complex @ C @ A) @ (times_times_complex @ C @ B2)) = (((C = zero_zero_complex)) | ((dvd_dvd_complex @ A @ B2))))))). % dvd_mult_cancel_left
thf(fact_219_dvd__mult__cancel__left, axiom,
    ((![C : poly_poly_complex, A : poly_poly_complex, B2 : poly_poly_complex]: ((dvd_dv598755940omplex @ (times_1460995011omplex @ C @ A) @ (times_1460995011omplex @ C @ B2)) = (((C = zero_z1040703943omplex)) | ((dvd_dv598755940omplex @ A @ B2))))))). % dvd_mult_cancel_left
thf(fact_220_dvd__mult__cancel__left, axiom,
    ((![C : poly_complex, A : poly_complex, B2 : poly_complex]: ((dvd_dvd_poly_complex @ (times_1246143675omplex @ C @ A) @ (times_1246143675omplex @ C @ B2)) = (((C = zero_z1746442943omplex)) | ((dvd_dvd_poly_complex @ A @ B2))))))). % dvd_mult_cancel_left
thf(fact_221_dvd__mult__cancel__right, axiom,
    ((![A : complex, C : complex, B2 : complex]: ((dvd_dvd_complex @ (times_times_complex @ A @ C) @ (times_times_complex @ B2 @ C)) = (((C = zero_zero_complex)) | ((dvd_dvd_complex @ A @ B2))))))). % dvd_mult_cancel_right
thf(fact_222_dvd__mult__cancel__right, axiom,
    ((![A : poly_poly_complex, C : poly_poly_complex, B2 : poly_poly_complex]: ((dvd_dv598755940omplex @ (times_1460995011omplex @ A @ C) @ (times_1460995011omplex @ B2 @ C)) = (((C = zero_z1040703943omplex)) | ((dvd_dv598755940omplex @ A @ B2))))))). % dvd_mult_cancel_right
thf(fact_223_dvd__mult__cancel__right, axiom,
    ((![A : poly_complex, C : poly_complex, B2 : poly_complex]: ((dvd_dvd_poly_complex @ (times_1246143675omplex @ A @ C) @ (times_1246143675omplex @ B2 @ C)) = (((C = zero_z1746442943omplex)) | ((dvd_dvd_poly_complex @ A @ B2))))))). % dvd_mult_cancel_right
thf(fact_224_dvd__times__left__cancel__iff, axiom,
    ((![A : nat, B2 : nat, C : nat]: ((~ ((A = zero_zero_nat))) => ((dvd_dvd_nat @ (times_times_nat @ A @ B2) @ (times_times_nat @ A @ C)) = (dvd_dvd_nat @ B2 @ C)))))). % dvd_times_left_cancel_iff
thf(fact_225_dvd__times__left__cancel__iff, axiom,
    ((![A : poly_poly_complex, B2 : poly_poly_complex, C : poly_poly_complex]: ((~ ((A = zero_z1040703943omplex))) => ((dvd_dv598755940omplex @ (times_1460995011omplex @ A @ B2) @ (times_1460995011omplex @ A @ C)) = (dvd_dv598755940omplex @ B2 @ C)))))). % dvd_times_left_cancel_iff
thf(fact_226_dvd__times__left__cancel__iff, axiom,
    ((![A : poly_complex, B2 : poly_complex, C : poly_complex]: ((~ ((A = zero_z1746442943omplex))) => ((dvd_dvd_poly_complex @ (times_1246143675omplex @ A @ B2) @ (times_1246143675omplex @ A @ C)) = (dvd_dvd_poly_complex @ B2 @ C)))))). % dvd_times_left_cancel_iff
thf(fact_227_dvd__times__right__cancel__iff, axiom,
    ((![A : nat, B2 : nat, C : nat]: ((~ ((A = zero_zero_nat))) => ((dvd_dvd_nat @ (times_times_nat @ B2 @ A) @ (times_times_nat @ C @ A)) = (dvd_dvd_nat @ B2 @ C)))))). % dvd_times_right_cancel_iff
thf(fact_228_dvd__times__right__cancel__iff, axiom,
    ((![A : poly_poly_complex, B2 : poly_poly_complex, C : poly_poly_complex]: ((~ ((A = zero_z1040703943omplex))) => ((dvd_dv598755940omplex @ (times_1460995011omplex @ B2 @ A) @ (times_1460995011omplex @ C @ A)) = (dvd_dv598755940omplex @ B2 @ C)))))). % dvd_times_right_cancel_iff
thf(fact_229_dvd__times__right__cancel__iff, axiom,
    ((![A : poly_complex, B2 : poly_complex, C : poly_complex]: ((~ ((A = zero_z1746442943omplex))) => ((dvd_dvd_poly_complex @ (times_1246143675omplex @ B2 @ A) @ (times_1246143675omplex @ C @ A)) = (dvd_dvd_poly_complex @ B2 @ C)))))). % dvd_times_right_cancel_iff
thf(fact_230_unit__prod, axiom,
    ((![A : nat, B2 : nat]: ((dvd_dvd_nat @ A @ one_one_nat) => ((dvd_dvd_nat @ B2 @ one_one_nat) => (dvd_dvd_nat @ (times_times_nat @ A @ B2) @ one_one_nat)))))). % unit_prod
thf(fact_231_unit__prod, axiom,
    ((![A : poly_complex, B2 : poly_complex]: ((dvd_dvd_poly_complex @ A @ one_one_poly_complex) => ((dvd_dvd_poly_complex @ B2 @ one_one_poly_complex) => (dvd_dvd_poly_complex @ (times_1246143675omplex @ A @ B2) @ one_one_poly_complex)))))). % unit_prod
thf(fact_232_power__0__Suc, axiom,
    ((![N : nat]: ((power_184595776omplex @ zero_z1746442943omplex @ (suc @ N)) = zero_z1746442943omplex)))). % power_0_Suc
thf(fact_233_power__0__Suc, axiom,
    ((![N : nat]: ((power_power_nat @ zero_zero_nat @ (suc @ N)) = zero_zero_nat)))). % power_0_Suc
thf(fact_234_power__0__Suc, axiom,
    ((![N : nat]: ((power_power_complex @ zero_zero_complex @ (suc @ N)) = zero_zero_complex)))). % power_0_Suc
thf(fact_235_power__0__Suc, axiom,
    ((![N : nat]: ((power_power_poly_nat @ zero_zero_poly_nat @ (suc @ N)) = zero_zero_poly_nat)))). % power_0_Suc
thf(fact_236_power__0__Suc, axiom,
    ((![N : nat]: ((power_432682568omplex @ zero_z1040703943omplex @ (suc @ N)) = zero_z1040703943omplex)))). % power_0_Suc
thf(fact_237_dvd__div__mult__self, axiom,
    ((![A : nat, B2 : nat]: ((dvd_dvd_nat @ A @ B2) => ((times_times_nat @ (divide_divide_nat @ B2 @ A) @ A) = B2))))). % dvd_div_mult_self
thf(fact_238_dvd__div__mult__self, axiom,
    ((![A : poly_complex, B2 : poly_complex]: ((dvd_dvd_poly_complex @ A @ B2) => ((times_1246143675omplex @ (divide1187762952omplex @ B2 @ A) @ A) = B2))))). % dvd_div_mult_self
thf(fact_239_dvd__mult__div__cancel, axiom,
    ((![A : nat, B2 : nat]: ((dvd_dvd_nat @ A @ B2) => ((times_times_nat @ A @ (divide_divide_nat @ B2 @ A)) = B2))))). % dvd_mult_div_cancel
thf(fact_240_dvd__mult__div__cancel, axiom,
    ((![A : poly_complex, B2 : poly_complex]: ((dvd_dvd_poly_complex @ A @ B2) => ((times_1246143675omplex @ A @ (divide1187762952omplex @ B2 @ A)) = B2))))). % dvd_mult_div_cancel
thf(fact_241_unit__div__1__div__1, axiom,
    ((![A : poly_complex]: ((dvd_dvd_poly_complex @ A @ one_one_poly_complex) => ((divide1187762952omplex @ one_one_poly_complex @ (divide1187762952omplex @ one_one_poly_complex @ A)) = A))))). % unit_div_1_div_1
thf(fact_242_unit__div__1__div__1, axiom,
    ((![A : nat]: ((dvd_dvd_nat @ A @ one_one_nat) => ((divide_divide_nat @ one_one_nat @ (divide_divide_nat @ one_one_nat @ A)) = A))))). % unit_div_1_div_1
thf(fact_243_unit__div__1__unit, axiom,
    ((![A : poly_complex]: ((dvd_dvd_poly_complex @ A @ one_one_poly_complex) => (dvd_dvd_poly_complex @ (divide1187762952omplex @ one_one_poly_complex @ A) @ one_one_poly_complex))))). % unit_div_1_unit
thf(fact_244_unit__div__1__unit, axiom,
    ((![A : nat]: ((dvd_dvd_nat @ A @ one_one_nat) => (dvd_dvd_nat @ (divide_divide_nat @ one_one_nat @ A) @ one_one_nat))))). % unit_div_1_unit
thf(fact_245_unit__div, axiom,
    ((![A : poly_complex, B2 : poly_complex]: ((dvd_dvd_poly_complex @ A @ one_one_poly_complex) => ((dvd_dvd_poly_complex @ B2 @ one_one_poly_complex) => (dvd_dvd_poly_complex @ (divide1187762952omplex @ A @ B2) @ one_one_poly_complex)))))). % unit_div
thf(fact_246_unit__div, axiom,
    ((![A : nat, B2 : nat]: ((dvd_dvd_nat @ A @ one_one_nat) => ((dvd_dvd_nat @ B2 @ one_one_nat) => (dvd_dvd_nat @ (divide_divide_nat @ A @ B2) @ one_one_nat)))))). % unit_div

% Conjectures (1)
thf(conj_0, conjecture,
    (((![X3 : complex]: ((((poly_complex2 @ p @ X3) = zero_zero_complex)) => (((poly_complex2 @ q @ X3) = zero_zero_complex)))) = (((dvd_dvd_poly_complex @ p @ (power_184595776omplex @ q @ (degree_complex @ p)))) | ((((p = zero_z1746442943omplex)) & ((q = zero_z1746442943omplex)))))))).
