TPTP Problem File: SLH0742^1.p

View Solutions - Solve Problem

%------------------------------------------------------------------------------
% File     : SLH0000^1 : TPTP v8.2.0. Released v8.2.0.
% Domain   : Archive of Formal Proofs
% Problem  :
% Version  : Especial.
% English  :

% Refs     : [Des23] Desharnais (2023), Email to Geoff Sutcliffe
% Source   : [Des23]
% Names    : CRYSTALS-Kyber/0025_NTT_Scheme/prob_00678_026591__25803024_1 [Des23]

% Status   : Theorem
% Rating   : ? v8.2.0
% Syntax   : Number of formulae    : 1459 (1013 unt; 184 typ;   0 def)
%            Number of atoms       : 2043 (1461 equ;   0 cnn)
%            Maximal formula atoms :    7 (   1 avg)
%            Number of connectives : 9725 (  82   ~;  29   |;  41   &;9218   @)
%                                         (   0 <=>; 355  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   14 (   4 avg)
%            Number of types       :   19 (  18 usr)
%            Number of type conns  :  300 ( 300   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :  169 ( 166 usr;  27 con; 0-3 aty)
%            Number of variables   : 2752 ( 117   ^;2618   !;  17   ?;2752   :)
% SPC      : TH0_THM_EQU_NAR

% Comments : This file was generated by Isabelle (most likely Sledgehammer)
%            2023-01-19 12:41:46.843
%------------------------------------------------------------------------------
% Could-be-implicit typings (18)
thf(ty_n_t__Polynomial__Opoly_It__Polynomial__Opoly_It__Finite____Field__Omod____ring_Itf__a_J_J_J,type,
    poly_p2573953413498894561ring_a: $tType ).

thf(ty_n_t__Set__Oset_It__Polynomial__Opoly_It__Finite____Field__Omod____ring_Itf__a_J_J_J,type,
    set_po5729067318325380787ring_a: $tType ).

thf(ty_n_t__Polynomial__Opoly_It__Finite____Field__Omod____ring_Itf__a_J_J,type,
    poly_F3299452240248304339ring_a: $tType ).

thf(ty_n_t__Set__Oset_It__Finite____Field__Omod____ring_Itf__a_J_J,type,
    set_Fi2982333969990053029ring_a: $tType ).

thf(ty_n_t__Polynomial__Opoly_It__Kyber____spec__Oqr_Itf__a_J_J,type,
    poly_Kyber_qr_a: $tType ).

thf(ty_n_t__Finite____Field__Omod____ring_Itf__a_J,type,
    finite_mod_ring_a: $tType ).

thf(ty_n_t__Polynomial__Opoly_It__Real__Oreal_J,type,
    poly_real: $tType ).

thf(ty_n_t__Polynomial__Opoly_It__Nat__Onat_J,type,
    poly_nat: $tType ).

thf(ty_n_t__Polynomial__Opoly_It__Int__Oint_J,type,
    poly_int: $tType ).

thf(ty_n_t__Set__Oset_It__Real__Oreal_J,type,
    set_real: $tType ).

thf(ty_n_t__Kyber____spec__Oqr_Itf__a_J,type,
    kyber_qr_a: $tType ).

thf(ty_n_t__Set__Oset_It__Num__Onum_J,type,
    set_num: $tType ).

thf(ty_n_t__Set__Oset_It__Nat__Onat_J,type,
    set_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Int__Oint_J,type,
    set_int: $tType ).

thf(ty_n_t__Real__Oreal,type,
    real: $tType ).

thf(ty_n_t__Num__Onum,type,
    num: $tType ).

thf(ty_n_t__Nat__Onat,type,
    nat: $tType ).

thf(ty_n_t__Int__Oint,type,
    int: $tType ).

% Explicit typings (166)
thf(sy_c_Fun_Oinj__on_001t__Finite____Field__Omod____ring_Itf__a_J_001t__Finite____Field__Omod____ring_Itf__a_J,type,
    inj_on1744613366418436273ring_a: ( finite_mod_ring_a > finite_mod_ring_a ) > set_Fi2982333969990053029ring_a > $o ).

thf(sy_c_Fun_Oinj__on_001t__Int__Oint_001t__Int__Oint,type,
    inj_on_int_int: ( int > int ) > set_int > $o ).

thf(sy_c_Fun_Oinj__on_001t__Nat__Onat_001t__Finite____Field__Omod____ring_Itf__a_J,type,
    inj_on1348749855087611458ring_a: ( nat > finite_mod_ring_a ) > set_nat > $o ).

thf(sy_c_Fun_Oinj__on_001t__Nat__Onat_001t__Nat__Onat,type,
    inj_on_nat_nat: ( nat > nat ) > set_nat > $o ).

thf(sy_c_Fun_Oinj__on_001t__Polynomial__Opoly_It__Finite____Field__Omod____ring_Itf__a_J_J_001t__Polynomial__Opoly_It__Finite____Field__Omod____ring_Itf__a_J_J,type,
    inj_on3868492774389771825ring_a: ( poly_F3299452240248304339ring_a > poly_F3299452240248304339ring_a ) > set_po5729067318325380787ring_a > $o ).

thf(sy_c_Fun_Oinj__on_001t__Real__Oreal_001t__Real__Oreal,type,
    inj_on_real_real: ( real > real ) > set_real > $o ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Finite____Field__Omod____ring_Itf__a_J,type,
    minus_3609261664126569004ring_a: finite_mod_ring_a > finite_mod_ring_a > finite_mod_ring_a ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Int__Oint,type,
    minus_minus_int: int > int > int ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Kyber____spec__Oqr_Itf__a_J,type,
    minus_3375643675566563378r_qr_a: kyber_qr_a > kyber_qr_a > kyber_qr_a ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Nat__Onat,type,
    minus_minus_nat: nat > nat > nat ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Polynomial__Opoly_It__Finite____Field__Omod____ring_Itf__a_J_J,type,
    minus_5354101470050066234ring_a: poly_F3299452240248304339ring_a > poly_F3299452240248304339ring_a > poly_F3299452240248304339ring_a ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Polynomial__Opoly_It__Int__Oint_J,type,
    minus_minus_poly_int: poly_int > poly_int > poly_int ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Polynomial__Opoly_It__Nat__Onat_J,type,
    minus_minus_poly_nat: poly_nat > poly_nat > poly_nat ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Polynomial__Opoly_It__Polynomial__Opoly_It__Finite____Field__Omod____ring_Itf__a_J_J_J,type,
    minus_8398332843867831112ring_a: poly_p2573953413498894561ring_a > poly_p2573953413498894561ring_a > poly_p2573953413498894561ring_a ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Polynomial__Opoly_It__Real__Oreal_J,type,
    minus_7737989384826904205y_real: poly_real > poly_real > poly_real ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Real__Oreal,type,
    minus_minus_real: real > real > real ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Set__Oset_It__Finite____Field__Omod____ring_Itf__a_J_J,type,
    minus_823531971556419340ring_a: set_Fi2982333969990053029ring_a > set_Fi2982333969990053029ring_a > set_Fi2982333969990053029ring_a ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Set__Oset_It__Int__Oint_J,type,
    minus_minus_set_int: set_int > set_int > set_int ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Set__Oset_It__Polynomial__Opoly_It__Finite____Field__Omod____ring_Itf__a_J_J_J,type,
    minus_7546863616404068122ring_a: set_po5729067318325380787ring_a > set_po5729067318325380787ring_a > set_po5729067318325380787ring_a ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Set__Oset_It__Real__Oreal_J,type,
    minus_minus_set_real: set_real > set_real > set_real ).

thf(sy_c_Groups_Oone__class_Oone_001t__Finite____Field__Omod____ring_Itf__a_J,type,
    one_on2109788427901206336ring_a: finite_mod_ring_a ).

thf(sy_c_Groups_Oone__class_Oone_001t__Int__Oint,type,
    one_one_int: int ).

thf(sy_c_Groups_Oone__class_Oone_001t__Kyber____spec__Oqr_Itf__a_J,type,
    one_one_Kyber_qr_a: kyber_qr_a ).

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__Finite____Field__Omod____ring_Itf__a_J_J,type,
    one_on3394844594818161742ring_a: poly_F3299452240248304339ring_a ).

thf(sy_c_Groups_Oone__class_Oone_001t__Polynomial__Opoly_It__Int__Oint_J,type,
    one_one_poly_int: poly_int ).

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__Finite____Field__Omod____ring_Itf__a_J_J_J,type,
    one_on1339691373306511452ring_a: poly_p2573953413498894561ring_a ).

thf(sy_c_Groups_Oone__class_Oone_001t__Polynomial__Opoly_It__Real__Oreal_J,type,
    one_one_poly_real: poly_real ).

thf(sy_c_Groups_Oone__class_Oone_001t__Real__Oreal,type,
    one_one_real: real ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Finite____Field__Omod____ring_Itf__a_J,type,
    plus_p6165643967897163644ring_a: finite_mod_ring_a > finite_mod_ring_a > finite_mod_ring_a ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Int__Oint,type,
    plus_plus_int: int > int > int ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Kyber____spec__Oqr_Itf__a_J,type,
    plus_plus_Kyber_qr_a: kyber_qr_a > kyber_qr_a > kyber_qr_a ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Nat__Onat,type,
    plus_plus_nat: nat > nat > nat ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Num__Onum,type,
    plus_plus_num: num > num > num ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Polynomial__Opoly_It__Finite____Field__Omod____ring_Itf__a_J_J,type,
    plus_p7290290253215468682ring_a: poly_F3299452240248304339ring_a > poly_F3299452240248304339ring_a > poly_F3299452240248304339ring_a ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Polynomial__Opoly_It__Int__Oint_J,type,
    plus_plus_poly_int: poly_int > poly_int > poly_int ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Polynomial__Opoly_It__Kyber____spec__Oqr_Itf__a_J_J,type,
    plus_p7633285101440365034r_qr_a: poly_Kyber_qr_a > poly_Kyber_qr_a > poly_Kyber_qr_a ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Polynomial__Opoly_It__Nat__Onat_J,type,
    plus_plus_poly_nat: poly_nat > poly_nat > poly_nat ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Polynomial__Opoly_It__Polynomial__Opoly_It__Finite____Field__Omod____ring_Itf__a_J_J_J,type,
    plus_p7801688469192607896ring_a: poly_p2573953413498894561ring_a > poly_p2573953413498894561ring_a > poly_p2573953413498894561ring_a ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Polynomial__Opoly_It__Real__Oreal_J,type,
    plus_plus_poly_real: poly_real > poly_real > poly_real ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Real__Oreal,type,
    plus_plus_real: real > real > real ).

thf(sy_c_Groups_Otimes__class_Otimes_001t__Finite____Field__Omod____ring_Itf__a_J,type,
    times_5121417576591743744ring_a: finite_mod_ring_a > finite_mod_ring_a > finite_mod_ring_a ).

thf(sy_c_Groups_Otimes__class_Otimes_001t__Int__Oint,type,
    times_times_int: int > int > int ).

thf(sy_c_Groups_Otimes__class_Otimes_001t__Kyber____spec__Oqr_Itf__a_J,type,
    times_2095635435063429214r_qr_a: kyber_qr_a > kyber_qr_a > kyber_qr_a ).

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__Num__Onum,type,
    times_times_num: num > num > num ).

thf(sy_c_Groups_Otimes__class_Otimes_001t__Polynomial__Opoly_It__Finite____Field__Omod____ring_Itf__a_J_J,type,
    times_3242606764180207630ring_a: poly_F3299452240248304339ring_a > poly_F3299452240248304339ring_a > poly_F3299452240248304339ring_a ).

thf(sy_c_Groups_Otimes__class_Otimes_001t__Polynomial__Opoly_It__Int__Oint_J,type,
    times_times_poly_int: poly_int > poly_int > poly_int ).

thf(sy_c_Groups_Otimes__class_Otimes_001t__Polynomial__Opoly_It__Kyber____spec__Oqr_Itf__a_J_J,type,
    times_4594766361258318694r_qr_a: poly_Kyber_qr_a > poly_Kyber_qr_a > poly_Kyber_qr_a ).

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__Finite____Field__Omod____ring_Itf__a_J_J_J,type,
    times_7678616233722469404ring_a: poly_p2573953413498894561ring_a > poly_p2573953413498894561ring_a > poly_p2573953413498894561ring_a ).

thf(sy_c_Groups_Otimes__class_Otimes_001t__Polynomial__Opoly_It__Real__Oreal_J,type,
    times_7914811829580426937y_real: poly_real > poly_real > poly_real ).

thf(sy_c_Groups_Otimes__class_Otimes_001t__Real__Oreal,type,
    times_times_real: real > real > real ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Finite____Field__Omod____ring_Itf__a_J,type,
    uminus3100561713750211260ring_a: finite_mod_ring_a > finite_mod_ring_a ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Int__Oint,type,
    uminus_uminus_int: int > int ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Kyber____spec__Oqr_Itf__a_J,type,
    uminus3675112017196868514r_qr_a: kyber_qr_a > kyber_qr_a ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Polynomial__Opoly_It__Finite____Field__Omod____ring_Itf__a_J_J,type,
    uminus6490753114102738890ring_a: poly_F3299452240248304339ring_a > poly_F3299452240248304339ring_a ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Polynomial__Opoly_It__Real__Oreal_J,type,
    uminus3130843302823231997y_real: poly_real > poly_real ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Real__Oreal,type,
    uminus_uminus_real: real > real ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Set__Oset_It__Finite____Field__Omod____ring_Itf__a_J_J,type,
    uminus8760797485591484316ring_a: set_Fi2982333969990053029ring_a > set_Fi2982333969990053029ring_a ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Set__Oset_It__Int__Oint_J,type,
    uminus1532241313380277803et_int: set_int > set_int ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Set__Oset_It__Polynomial__Opoly_It__Finite____Field__Omod____ring_Itf__a_J_J_J,type,
    uminus5288747270251669418ring_a: set_po5729067318325380787ring_a > set_po5729067318325380787ring_a ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Set__Oset_It__Real__Oreal_J,type,
    uminus612125837232591019t_real: set_real > set_real ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Finite____Field__Omod____ring_Itf__a_J,type,
    zero_z7902377541816115708ring_a: finite_mod_ring_a ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Int__Oint,type,
    zero_zero_int: int ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Nat__Onat,type,
    zero_zero_nat: nat ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Real__Oreal,type,
    zero_zero_real: real ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Finite____Field__Omod____ring_Itf__a_J_001t__Finite____Field__Omod____ring_Itf__a_J,type,
    groups9063595720648671482ring_a: ( finite_mod_ring_a > finite_mod_ring_a ) > set_Fi2982333969990053029ring_a > finite_mod_ring_a ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Nat__Onat_001t__Finite____Field__Omod____ring_Itf__a_J,type,
    groups3558780024651037881ring_a: ( nat > finite_mod_ring_a ) > set_nat > finite_mod_ring_a ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Nat__Onat_001t__Int__Oint,type,
    groups3539618377306564664at_int: ( nat > int ) > set_nat > int ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Nat__Onat_001t__Kyber____spec__Oqr_Itf__a_J,type,
    groups6127057292362189285r_qr_a: ( nat > kyber_qr_a ) > set_nat > kyber_qr_a ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Nat__Onat_001t__Nat__Onat,type,
    groups3542108847815614940at_nat: ( nat > nat ) > set_nat > nat ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Nat__Onat_001t__Polynomial__Opoly_It__Finite____Field__Omod____ring_Itf__a_J_J,type,
    groups1100895988254884807ring_a: ( nat > poly_F3299452240248304339ring_a ) > set_nat > poly_F3299452240248304339ring_a ).

thf(sy_c_Groups__Big_Ocomm__monoid__add__class_Osum_001t__Nat__Onat_001t__Real__Oreal,type,
    groups6591440286371151544t_real: ( nat > real ) > set_nat > real ).

thf(sy_c_If_001t__Finite____Field__Omod____ring_Itf__a_J,type,
    if_Finite_mod_ring_a: $o > finite_mod_ring_a > finite_mod_ring_a > finite_mod_ring_a ).

thf(sy_c_If_001t__Nat__Onat,type,
    if_nat: $o > nat > nat > nat ).

thf(sy_c_Kyber__spec_Oof__qr_001tf__a,type,
    kyber_of_qr_a: kyber_qr_a > poly_F3299452240248304339ring_a ).

thf(sy_c_Kyber__spec_Oqr__poly_001tf__a,type,
    kyber_qr_poly_a: poly_F3299452240248304339ring_a ).

thf(sy_c_NTT__Scheme_Okyber__ntt_Odrop__deg_001t__Finite____Field__Omod____ring_Itf__a_J,type,
    nTT_ky790528430515779601ring_a: nat > poly_F3299452240248304339ring_a > poly_F3299452240248304339ring_a ).

thf(sy_c_NTT__Scheme_Okyber__ntt_Onegacycl__conv_001tf__a,type,
    nTT_ky7844408764402957685conv_a: nat > kyber_qr_a > kyber_qr_a > kyber_qr_a ).

thf(sy_c_NTT__Scheme_Okyber__ntt_Otake__deg_001t__Finite____Field__Omod____ring_Itf__a_J,type,
    nTT_ky3493641264504450921ring_a: nat > poly_F3299452240248304339ring_a > poly_F3299452240248304339ring_a ).

thf(sy_c_Nat_Osemiring__1__class_Oof__nat_001t__Int__Oint,type,
    semiri1314217659103216013at_int: nat > int ).

thf(sy_c_Num_Oneg__numeral__class_Odbl_001t__Finite____Field__Omod____ring_Itf__a_J,type,
    neg_nu8930269994625468598ring_a: finite_mod_ring_a > finite_mod_ring_a ).

thf(sy_c_Num_Oneg__numeral__class_Odbl_001t__Int__Oint,type,
    neg_numeral_dbl_int: int > int ).

thf(sy_c_Num_Oneg__numeral__class_Odbl_001t__Kyber____spec__Oqr_Itf__a_J,type,
    neg_nu4947752793073329704r_qr_a: kyber_qr_a > kyber_qr_a ).

thf(sy_c_Num_Oneg__numeral__class_Odbl_001t__Polynomial__Opoly_It__Finite____Field__Omod____ring_Itf__a_J_J,type,
    neg_nu2402578231030473156ring_a: poly_F3299452240248304339ring_a > poly_F3299452240248304339ring_a ).

thf(sy_c_Num_Oneg__numeral__class_Odbl_001t__Real__Oreal,type,
    neg_numeral_dbl_real: real > real ).

thf(sy_c_Num_Onum_OBit0,type,
    bit0: num > num ).

thf(sy_c_Num_Onum_OOne,type,
    one: num ).

thf(sy_c_Num_Onumeral__class_Onumeral_001t__Finite____Field__Omod____ring_Itf__a_J,type,
    numera7938180240421336042ring_a: num > finite_mod_ring_a ).

thf(sy_c_Num_Onumeral__class_Onumeral_001t__Int__Oint,type,
    numeral_numeral_int: num > int ).

thf(sy_c_Num_Onumeral__class_Onumeral_001t__Kyber____spec__Oqr_Itf__a_J,type,
    numera2156158589294619636r_qr_a: num > kyber_qr_a ).

thf(sy_c_Num_Onumeral__class_Onumeral_001t__Nat__Onat,type,
    numeral_numeral_nat: num > nat ).

thf(sy_c_Num_Onumeral__class_Onumeral_001t__Polynomial__Opoly_It__Finite____Field__Omod____ring_Itf__a_J_J,type,
    numera2966756627528668408ring_a: num > poly_F3299452240248304339ring_a ).

thf(sy_c_Num_Onumeral__class_Onumeral_001t__Polynomial__Opoly_It__Int__Oint_J,type,
    numera341637878516188623ly_int: num > poly_int ).

thf(sy_c_Num_Onumeral__class_Onumeral_001t__Polynomial__Opoly_It__Kyber____spec__Oqr_Itf__a_J_J,type,
    numera7481309076237859580r_qr_a: num > poly_Kyber_qr_a ).

thf(sy_c_Num_Onumeral__class_Onumeral_001t__Polynomial__Opoly_It__Nat__Onat_J,type,
    numera4519488898025385331ly_nat: num > poly_nat ).

thf(sy_c_Num_Onumeral__class_Onumeral_001t__Polynomial__Opoly_It__Polynomial__Opoly_It__Finite____Field__Omod____ring_Itf__a_J_J_J,type,
    numera4795350371144744198ring_a: num > poly_p2573953413498894561ring_a ).

thf(sy_c_Num_Onumeral__class_Onumeral_001t__Polynomial__Opoly_It__Real__Oreal_J,type,
    numera5079969641567462991y_real: num > poly_real ).

thf(sy_c_Num_Onumeral__class_Onumeral_001t__Real__Oreal,type,
    numeral_numeral_real: num > real ).

thf(sy_c_Num_Opow,type,
    pow: num > num > num ).

thf(sy_c_Orderings_Oord__class_Oless_001_062_It__Nat__Onat_M_Eo_J,type,
    ord_less_nat_o: ( nat > $o ) > ( nat > $o ) > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Int__Oint,type,
    ord_less_int: int > int > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Nat__Onat,type,
    ord_less_nat: nat > nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Num__Onum,type,
    ord_less_num: num > num > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Real__Oreal,type,
    ord_less_real: real > real > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Set__Oset_It__Int__Oint_J,type,
    ord_less_set_int: set_int > set_int > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Set__Oset_It__Nat__Onat_J,type,
    ord_less_set_nat: set_nat > set_nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Set__Oset_It__Num__Onum_J,type,
    ord_less_set_num: set_num > set_num > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Set__Oset_It__Real__Oreal_J,type,
    ord_less_set_real: set_real > set_real > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Nat__Onat,type,
    ord_less_eq_nat: nat > nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Num__Onum,type,
    ord_less_eq_num: num > num > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Real__Oreal,type,
    ord_less_eq_real: real > real > $o ).

thf(sy_c_Polynomial_Odegree_001t__Finite____Field__Omod____ring_Itf__a_J,type,
    degree4881254707062955960ring_a: poly_F3299452240248304339ring_a > nat ).

thf(sy_c_Polynomial_Odegree_001t__Int__Oint,type,
    degree_int: poly_int > nat ).

thf(sy_c_Polynomial_Odegree_001t__Kyber____spec__Oqr_Itf__a_J,type,
    degree_Kyber_qr_a: poly_Kyber_qr_a > nat ).

thf(sy_c_Polynomial_Odegree_001t__Nat__Onat,type,
    degree_nat: poly_nat > nat ).

thf(sy_c_Polynomial_Odegree_001t__Polynomial__Opoly_It__Finite____Field__Omod____ring_Itf__a_J_J,type,
    degree617341119394917574ring_a: poly_p2573953413498894561ring_a > nat ).

thf(sy_c_Polynomial_Odegree_001t__Real__Oreal,type,
    degree_real: poly_real > nat ).

thf(sy_c_Polynomial_Omonom_001t__Finite____Field__Omod____ring_Itf__a_J,type,
    monom_8879022055327937434ring_a: finite_mod_ring_a > nat > poly_F3299452240248304339ring_a ).

thf(sy_c_Polynomial_Opoly_Ocoeff_001t__Finite____Field__Omod____ring_Itf__a_J,type,
    coeff_1607515655354303335ring_a: poly_F3299452240248304339ring_a > nat > finite_mod_ring_a ).

thf(sy_c_Polynomial_Opoly_Ocoeff_001t__Int__Oint,type,
    coeff_int: poly_int > nat > int ).

thf(sy_c_Polynomial_Opoly_Ocoeff_001t__Kyber____spec__Oqr_Itf__a_J,type,
    coeff_Kyber_qr_a: poly_Kyber_qr_a > nat > kyber_qr_a ).

thf(sy_c_Polynomial_Opoly_Ocoeff_001t__Nat__Onat,type,
    coeff_nat: poly_nat > nat > nat ).

thf(sy_c_Polynomial_Opoly_Ocoeff_001t__Polynomial__Opoly_It__Finite____Field__Omod____ring_Itf__a_J_J,type,
    coeff_7919988552178873973ring_a: poly_p2573953413498894561ring_a > nat > poly_F3299452240248304339ring_a ).

thf(sy_c_Polynomial_Opoly_Ocoeff_001t__Real__Oreal,type,
    coeff_real: poly_real > nat > real ).

thf(sy_c_Power_Opower__class_Opower_001t__Finite____Field__Omod____ring_Itf__a_J,type,
    power_6826135765519566523ring_a: finite_mod_ring_a > nat > finite_mod_ring_a ).

thf(sy_c_Power_Opower__class_Opower_001t__Int__Oint,type,
    power_power_int: int > nat > int ).

thf(sy_c_Power_Opower__class_Opower_001t__Kyber____spec__Oqr_Itf__a_J,type,
    power_5122640293590465123r_qr_a: kyber_qr_a > nat > kyber_qr_a ).

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__Finite____Field__Omod____ring_Itf__a_J_J,type,
    power_6500929916544582089ring_a: poly_F3299452240248304339ring_a > nat > poly_F3299452240248304339ring_a ).

thf(sy_c_Power_Opower__class_Opower_001t__Polynomial__Opoly_It__Int__Oint_J,type,
    power_power_poly_int: poly_int > nat > poly_int ).

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__Finite____Field__Omod____ring_Itf__a_J_J_J,type,
    power_3069662078305747927ring_a: poly_p2573953413498894561ring_a > nat > poly_p2573953413498894561ring_a ).

thf(sy_c_Power_Opower__class_Opower_001t__Polynomial__Opoly_It__Real__Oreal_J,type,
    power_8994544051960338110y_real: poly_real > nat > poly_real ).

thf(sy_c_Power_Opower__class_Opower_001t__Real__Oreal,type,
    power_power_real: real > nat > real ).

thf(sy_c_Rings_Omodulo__class_Omodulo_001t__Polynomial__Opoly_It__Finite____Field__Omod____ring_Itf__a_J_J,type,
    modulo2591651872109920577ring_a: poly_F3299452240248304339ring_a > poly_F3299452240248304339ring_a > poly_F3299452240248304339ring_a ).

thf(sy_c_Set_OCollect_001t__Int__Oint,type,
    collect_int: ( int > $o ) > set_int ).

thf(sy_c_Set_OCollect_001t__Nat__Onat,type,
    collect_nat: ( nat > $o ) > set_nat ).

thf(sy_c_Set_OCollect_001t__Num__Onum,type,
    collect_num: ( num > $o ) > set_num ).

thf(sy_c_Set_OCollect_001t__Real__Oreal,type,
    collect_real: ( real > $o ) > set_real ).

thf(sy_c_Set_Oimage_001t__Finite____Field__Omod____ring_Itf__a_J_001t__Finite____Field__Omod____ring_Itf__a_J,type,
    image_3815122860822722885ring_a: ( finite_mod_ring_a > finite_mod_ring_a ) > set_Fi2982333969990053029ring_a > set_Fi2982333969990053029ring_a ).

thf(sy_c_Set_Oimage_001t__Int__Oint_001t__Int__Oint,type,
    image_int_int: ( int > int ) > set_int > set_int ).

thf(sy_c_Set_Oimage_001t__Nat__Onat_001t__Finite____Field__Omod____ring_Itf__a_J,type,
    image_1980459031860794542ring_a: ( nat > finite_mod_ring_a ) > set_nat > set_Fi2982333969990053029ring_a ).

thf(sy_c_Set_Oimage_001t__Nat__Onat_001t__Nat__Onat,type,
    image_nat_nat: ( nat > nat ) > set_nat > set_nat ).

thf(sy_c_Set_Oimage_001t__Polynomial__Opoly_It__Finite____Field__Omod____ring_Itf__a_J_J_001t__Polynomial__Opoly_It__Finite____Field__Omod____ring_Itf__a_J_J,type,
    image_1595381290764371653ring_a: ( poly_F3299452240248304339ring_a > poly_F3299452240248304339ring_a ) > set_po5729067318325380787ring_a > set_po5729067318325380787ring_a ).

thf(sy_c_Set_Oimage_001t__Real__Oreal_001t__Real__Oreal,type,
    image_real_real: ( real > real ) > set_real > set_real ).

thf(sy_c_Set__Interval_Oord__class_OlessThan_001t__Int__Oint,type,
    set_ord_lessThan_int: int > set_int ).

thf(sy_c_Set__Interval_Oord__class_OlessThan_001t__Nat__Onat,type,
    set_ord_lessThan_nat: nat > set_nat ).

thf(sy_c_Set__Interval_Oord__class_OlessThan_001t__Num__Onum,type,
    set_ord_lessThan_num: num > set_num ).

thf(sy_c_Set__Interval_Oord__class_OlessThan_001t__Real__Oreal,type,
    set_or5984915006950818249n_real: real > set_real ).

thf(sy_c_member_001t__Int__Oint,type,
    member_int: int > set_int > $o ).

thf(sy_c_member_001t__Nat__Onat,type,
    member_nat: nat > set_nat > $o ).

thf(sy_c_member_001t__Num__Onum,type,
    member_num: num > set_num > $o ).

thf(sy_c_member_001t__Real__Oreal,type,
    member_real: real > set_real > $o ).

thf(sy_v__092_060mu_062,type,
    mu: finite_mod_ring_a ).

thf(sy_v__092_060omega_062,type,
    omega: finite_mod_ring_a ).

thf(sy_v__092_060psi_062,type,
    psi: finite_mod_ring_a ).

thf(sy_v__092_060psi_062inv,type,
    psi_inv: finite_mod_ring_a ).

thf(sy_v_g,type,
    g: kyber_qr_a ).

thf(sy_v_i____,type,
    i: nat ).

thf(sy_v_l,type,
    l: nat ).

thf(sy_v_n,type,
    n: nat ).

thf(sy_v_n_H,type,
    n2: nat ).

thf(sy_v_x_H____,type,
    x: nat > nat > nat ).

% Relevant facts (1269)
thf(fact_0_kyber__ntt_Oexp__rule,axiom,
    ! [C: finite_mod_ring_a,D: finite_mod_ring_a,E: nat] :
      ( ( power_6826135765519566523ring_a @ ( times_5121417576591743744ring_a @ C @ D ) @ E )
      = ( times_5121417576591743744ring_a @ ( power_6826135765519566523ring_a @ C @ E ) @ ( power_6826135765519566523ring_a @ D @ E ) ) ) ).

% kyber_ntt.exp_rule
thf(fact_1_assms,axiom,
    ord_less_nat @ l @ n ).

% assms
thf(fact_2_that,axiom,
    ord_less_nat @ i @ n ).

% that
thf(fact_3_one__add__one,axiom,
    ( ( plus_plus_Kyber_qr_a @ one_one_Kyber_qr_a @ one_one_Kyber_qr_a )
    = ( numera2156158589294619636r_qr_a @ ( bit0 @ one ) ) ) ).

% one_add_one
thf(fact_4_one__add__one,axiom,
    ( ( plus_p6165643967897163644ring_a @ one_on2109788427901206336ring_a @ one_on2109788427901206336ring_a )
    = ( numera7938180240421336042ring_a @ ( bit0 @ one ) ) ) ).

% one_add_one
thf(fact_5_one__add__one,axiom,
    ( ( plus_p7290290253215468682ring_a @ one_on3394844594818161742ring_a @ one_on3394844594818161742ring_a )
    = ( numera2966756627528668408ring_a @ ( bit0 @ one ) ) ) ).

% one_add_one
thf(fact_6_one__add__one,axiom,
    ( ( plus_plus_nat @ one_one_nat @ one_one_nat )
    = ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ).

% one_add_one
thf(fact_7_one__add__one,axiom,
    ( ( plus_plus_real @ one_one_real @ one_one_real )
    = ( numeral_numeral_real @ ( bit0 @ one ) ) ) ).

% one_add_one
thf(fact_8_one__add__one,axiom,
    ( ( plus_plus_int @ one_one_int @ one_one_int )
    = ( numeral_numeral_int @ ( bit0 @ one ) ) ) ).

% one_add_one
thf(fact_9_numeral__plus__one,axiom,
    ! [N: num] :
      ( ( plus_plus_Kyber_qr_a @ ( numera2156158589294619636r_qr_a @ N ) @ one_one_Kyber_qr_a )
      = ( numera2156158589294619636r_qr_a @ ( plus_plus_num @ N @ one ) ) ) ).

% numeral_plus_one
thf(fact_10_numeral__plus__one,axiom,
    ! [N: num] :
      ( ( plus_p6165643967897163644ring_a @ ( numera7938180240421336042ring_a @ N ) @ one_on2109788427901206336ring_a )
      = ( numera7938180240421336042ring_a @ ( plus_plus_num @ N @ one ) ) ) ).

% numeral_plus_one
thf(fact_11_numeral__plus__one,axiom,
    ! [N: num] :
      ( ( plus_p7290290253215468682ring_a @ ( numera2966756627528668408ring_a @ N ) @ one_on3394844594818161742ring_a )
      = ( numera2966756627528668408ring_a @ ( plus_plus_num @ N @ one ) ) ) ).

% numeral_plus_one
thf(fact_12_numeral__plus__one,axiom,
    ! [N: num] :
      ( ( plus_plus_nat @ ( numeral_numeral_nat @ N ) @ one_one_nat )
      = ( numeral_numeral_nat @ ( plus_plus_num @ N @ one ) ) ) ).

% numeral_plus_one
thf(fact_13_numeral__plus__one,axiom,
    ! [N: num] :
      ( ( plus_plus_real @ ( numeral_numeral_real @ N ) @ one_one_real )
      = ( numeral_numeral_real @ ( plus_plus_num @ N @ one ) ) ) ).

% numeral_plus_one
thf(fact_14_numeral__plus__one,axiom,
    ! [N: num] :
      ( ( plus_plus_int @ ( numeral_numeral_int @ N ) @ one_one_int )
      = ( numeral_numeral_int @ ( plus_plus_num @ N @ one ) ) ) ).

% numeral_plus_one
thf(fact_15_one__plus__numeral,axiom,
    ! [N: num] :
      ( ( plus_plus_Kyber_qr_a @ one_one_Kyber_qr_a @ ( numera2156158589294619636r_qr_a @ N ) )
      = ( numera2156158589294619636r_qr_a @ ( plus_plus_num @ one @ N ) ) ) ).

% one_plus_numeral
thf(fact_16_one__plus__numeral,axiom,
    ! [N: num] :
      ( ( plus_p6165643967897163644ring_a @ one_on2109788427901206336ring_a @ ( numera7938180240421336042ring_a @ N ) )
      = ( numera7938180240421336042ring_a @ ( plus_plus_num @ one @ N ) ) ) ).

% one_plus_numeral
thf(fact_17_one__plus__numeral,axiom,
    ! [N: num] :
      ( ( plus_p7290290253215468682ring_a @ one_on3394844594818161742ring_a @ ( numera2966756627528668408ring_a @ N ) )
      = ( numera2966756627528668408ring_a @ ( plus_plus_num @ one @ N ) ) ) ).

% one_plus_numeral
thf(fact_18_one__plus__numeral,axiom,
    ! [N: num] :
      ( ( plus_plus_nat @ one_one_nat @ ( numeral_numeral_nat @ N ) )
      = ( numeral_numeral_nat @ ( plus_plus_num @ one @ N ) ) ) ).

% one_plus_numeral
thf(fact_19_one__plus__numeral,axiom,
    ! [N: num] :
      ( ( plus_plus_real @ one_one_real @ ( numeral_numeral_real @ N ) )
      = ( numeral_numeral_real @ ( plus_plus_num @ one @ N ) ) ) ).

% one_plus_numeral
thf(fact_20_one__plus__numeral,axiom,
    ! [N: num] :
      ( ( plus_plus_int @ one_one_int @ ( numeral_numeral_int @ N ) )
      = ( numeral_numeral_int @ ( plus_plus_num @ one @ N ) ) ) ).

% one_plus_numeral
thf(fact_21_psi__props_I1_J,axiom,
    ( ( power_6826135765519566523ring_a @ psi @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ n ) )
    = one_on2109788427901206336ring_a ) ).

% psi_props(1)
thf(fact_22_numeral__eq__one__iff,axiom,
    ! [N: num] :
      ( ( ( numeral_numeral_nat @ N )
        = one_one_nat )
      = ( N = one ) ) ).

% numeral_eq_one_iff
thf(fact_23_numeral__eq__one__iff,axiom,
    ! [N: num] :
      ( ( ( numeral_numeral_real @ N )
        = one_one_real )
      = ( N = one ) ) ).

% numeral_eq_one_iff
thf(fact_24_numeral__eq__one__iff,axiom,
    ! [N: num] :
      ( ( ( numeral_numeral_int @ N )
        = one_one_int )
      = ( N = one ) ) ).

% numeral_eq_one_iff
thf(fact_25_one__eq__numeral__iff,axiom,
    ! [N: num] :
      ( ( one_one_nat
        = ( numeral_numeral_nat @ N ) )
      = ( one = N ) ) ).

% one_eq_numeral_iff
thf(fact_26_one__eq__numeral__iff,axiom,
    ! [N: num] :
      ( ( one_one_real
        = ( numeral_numeral_real @ N ) )
      = ( one = N ) ) ).

% one_eq_numeral_iff
thf(fact_27_one__eq__numeral__iff,axiom,
    ! [N: num] :
      ( ( one_one_int
        = ( numeral_numeral_int @ N ) )
      = ( one = N ) ) ).

% one_eq_numeral_iff
thf(fact_28_distrib__left__numeral,axiom,
    ! [V: num,B: finite_mod_ring_a,C: finite_mod_ring_a] :
      ( ( times_5121417576591743744ring_a @ ( numera7938180240421336042ring_a @ V ) @ ( plus_p6165643967897163644ring_a @ B @ C ) )
      = ( plus_p6165643967897163644ring_a @ ( times_5121417576591743744ring_a @ ( numera7938180240421336042ring_a @ V ) @ B ) @ ( times_5121417576591743744ring_a @ ( numera7938180240421336042ring_a @ V ) @ C ) ) ) ).

% distrib_left_numeral
thf(fact_29_distrib__left__numeral,axiom,
    ! [V: num,B: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ ( numera2966756627528668408ring_a @ V ) @ ( plus_p7290290253215468682ring_a @ B @ C ) )
      = ( plus_p7290290253215468682ring_a @ ( times_3242606764180207630ring_a @ ( numera2966756627528668408ring_a @ V ) @ B ) @ ( times_3242606764180207630ring_a @ ( numera2966756627528668408ring_a @ V ) @ C ) ) ) ).

% distrib_left_numeral
thf(fact_30_distrib__left__numeral,axiom,
    ! [V: num,B: kyber_qr_a,C: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ ( numera2156158589294619636r_qr_a @ V ) @ ( plus_plus_Kyber_qr_a @ B @ C ) )
      = ( plus_plus_Kyber_qr_a @ ( times_2095635435063429214r_qr_a @ ( numera2156158589294619636r_qr_a @ V ) @ B ) @ ( times_2095635435063429214r_qr_a @ ( numera2156158589294619636r_qr_a @ V ) @ C ) ) ) ).

% distrib_left_numeral
thf(fact_31_distrib__left__numeral,axiom,
    ! [V: num,B: nat,C: nat] :
      ( ( times_times_nat @ ( numeral_numeral_nat @ V ) @ ( plus_plus_nat @ B @ C ) )
      = ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ V ) @ B ) @ ( times_times_nat @ ( numeral_numeral_nat @ V ) @ C ) ) ) ).

% distrib_left_numeral
thf(fact_32_distrib__left__numeral,axiom,
    ! [V: num,B: real,C: real] :
      ( ( times_times_real @ ( numeral_numeral_real @ V ) @ ( plus_plus_real @ B @ C ) )
      = ( plus_plus_real @ ( times_times_real @ ( numeral_numeral_real @ V ) @ B ) @ ( times_times_real @ ( numeral_numeral_real @ V ) @ C ) ) ) ).

% distrib_left_numeral
thf(fact_33_distrib__left__numeral,axiom,
    ! [V: num,B: int,C: int] :
      ( ( times_times_int @ ( numeral_numeral_int @ V ) @ ( plus_plus_int @ B @ C ) )
      = ( plus_plus_int @ ( times_times_int @ ( numeral_numeral_int @ V ) @ B ) @ ( times_times_int @ ( numeral_numeral_int @ V ) @ C ) ) ) ).

% distrib_left_numeral
thf(fact_34_distrib__right__numeral,axiom,
    ! [A: nat,B: nat,V: num] :
      ( ( times_times_nat @ ( plus_plus_nat @ A @ B ) @ ( numeral_numeral_nat @ V ) )
      = ( plus_plus_nat @ ( times_times_nat @ A @ ( numeral_numeral_nat @ V ) ) @ ( times_times_nat @ B @ ( numeral_numeral_nat @ V ) ) ) ) ).

% distrib_right_numeral
thf(fact_35_distrib__right__numeral,axiom,
    ! [A: real,B: real,V: num] :
      ( ( times_times_real @ ( plus_plus_real @ A @ B ) @ ( numeral_numeral_real @ V ) )
      = ( plus_plus_real @ ( times_times_real @ A @ ( numeral_numeral_real @ V ) ) @ ( times_times_real @ B @ ( numeral_numeral_real @ V ) ) ) ) ).

% distrib_right_numeral
thf(fact_36_distrib__right__numeral,axiom,
    ! [A: int,B: int,V: num] :
      ( ( times_times_int @ ( plus_plus_int @ A @ B ) @ ( numeral_numeral_int @ V ) )
      = ( plus_plus_int @ ( times_times_int @ A @ ( numeral_numeral_int @ V ) ) @ ( times_times_int @ B @ ( numeral_numeral_int @ V ) ) ) ) ).

% distrib_right_numeral
thf(fact_37_distrib__right__numeral,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a,V: num] :
      ( ( times_3242606764180207630ring_a @ ( plus_p7290290253215468682ring_a @ A @ B ) @ ( numera2966756627528668408ring_a @ V ) )
      = ( plus_p7290290253215468682ring_a @ ( times_3242606764180207630ring_a @ A @ ( numera2966756627528668408ring_a @ V ) ) @ ( times_3242606764180207630ring_a @ B @ ( numera2966756627528668408ring_a @ V ) ) ) ) ).

% distrib_right_numeral
thf(fact_38_distrib__right__numeral,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a,V: num] :
      ( ( times_5121417576591743744ring_a @ ( plus_p6165643967897163644ring_a @ A @ B ) @ ( numera7938180240421336042ring_a @ V ) )
      = ( plus_p6165643967897163644ring_a @ ( times_5121417576591743744ring_a @ A @ ( numera7938180240421336042ring_a @ V ) ) @ ( times_5121417576591743744ring_a @ B @ ( numera7938180240421336042ring_a @ V ) ) ) ) ).

% distrib_right_numeral
thf(fact_39_distrib__right__numeral,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a,V: num] :
      ( ( times_2095635435063429214r_qr_a @ ( plus_plus_Kyber_qr_a @ A @ B ) @ ( numera2156158589294619636r_qr_a @ V ) )
      = ( plus_plus_Kyber_qr_a @ ( times_2095635435063429214r_qr_a @ A @ ( numera2156158589294619636r_qr_a @ V ) ) @ ( times_2095635435063429214r_qr_a @ B @ ( numera2156158589294619636r_qr_a @ V ) ) ) ) ).

% distrib_right_numeral
thf(fact_40_power2__sum,axiom,
    ! [X: nat,Y: nat] :
      ( ( power_power_nat @ ( plus_plus_nat @ X @ Y ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( plus_plus_nat @ ( plus_plus_nat @ ( power_power_nat @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_nat @ Y @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( times_times_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ X ) @ Y ) ) ) ).

% power2_sum
thf(fact_41_power2__sum,axiom,
    ! [X: real,Y: real] :
      ( ( power_power_real @ ( plus_plus_real @ X @ Y ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( plus_plus_real @ ( plus_plus_real @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ Y @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( times_times_real @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ X ) @ Y ) ) ) ).

% power2_sum
thf(fact_42_power2__sum,axiom,
    ! [X: int,Y: int] :
      ( ( power_power_int @ ( plus_plus_int @ X @ Y ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( plus_plus_int @ ( plus_plus_int @ ( power_power_int @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_int @ Y @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( times_times_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ X ) @ Y ) ) ) ).

% power2_sum
thf(fact_43_power2__sum,axiom,
    ! [X: poly_F3299452240248304339ring_a,Y: poly_F3299452240248304339ring_a] :
      ( ( power_6500929916544582089ring_a @ ( plus_p7290290253215468682ring_a @ X @ Y ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( plus_p7290290253215468682ring_a @ ( plus_p7290290253215468682ring_a @ ( power_6500929916544582089ring_a @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_6500929916544582089ring_a @ Y @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( times_3242606764180207630ring_a @ ( times_3242606764180207630ring_a @ ( numera2966756627528668408ring_a @ ( bit0 @ one ) ) @ X ) @ Y ) ) ) ).

% power2_sum
thf(fact_44_power2__sum,axiom,
    ! [X: finite_mod_ring_a,Y: finite_mod_ring_a] :
      ( ( power_6826135765519566523ring_a @ ( plus_p6165643967897163644ring_a @ X @ Y ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( plus_p6165643967897163644ring_a @ ( plus_p6165643967897163644ring_a @ ( power_6826135765519566523ring_a @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_6826135765519566523ring_a @ Y @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( times_5121417576591743744ring_a @ ( times_5121417576591743744ring_a @ ( numera7938180240421336042ring_a @ ( bit0 @ one ) ) @ X ) @ Y ) ) ) ).

% power2_sum
thf(fact_45_power2__sum,axiom,
    ! [X: kyber_qr_a,Y: kyber_qr_a] :
      ( ( power_5122640293590465123r_qr_a @ ( plus_plus_Kyber_qr_a @ X @ Y ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( plus_plus_Kyber_qr_a @ ( plus_plus_Kyber_qr_a @ ( power_5122640293590465123r_qr_a @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_5122640293590465123r_qr_a @ Y @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( times_2095635435063429214r_qr_a @ ( times_2095635435063429214r_qr_a @ ( numera2156158589294619636r_qr_a @ ( bit0 @ one ) ) @ X ) @ Y ) ) ) ).

% power2_sum
thf(fact_46_eq,axiom,
    ( ( image_nat_nat
      @ ^ [J: nat] : ( x @ J @ i )
      @ ( set_ord_lessThan_nat @ n ) )
    = ( set_ord_lessThan_nat @ n ) ) ).

% eq
thf(fact_47_nat__1__eq__mult__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( one_one_nat
        = ( times_times_nat @ M @ N ) )
      = ( ( M = one_one_nat )
        & ( N = one_one_nat ) ) ) ).

% nat_1_eq_mult_iff
thf(fact_48_nat__mult__eq__1__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ( times_times_nat @ M @ N )
        = one_one_nat )
      = ( ( M = one_one_nat )
        & ( N = one_one_nat ) ) ) ).

% nat_mult_eq_1_iff
thf(fact_49_psi__props_I3_J,axiom,
    psi != one_on2109788427901206336ring_a ).

% psi_props(3)
thf(fact_50_numeral__eq__iff,axiom,
    ! [M: num,N: num] :
      ( ( ( numeral_numeral_nat @ M )
        = ( numeral_numeral_nat @ N ) )
      = ( M = N ) ) ).

% numeral_eq_iff
thf(fact_51_numeral__eq__iff,axiom,
    ! [M: num,N: num] :
      ( ( ( numeral_numeral_real @ M )
        = ( numeral_numeral_real @ N ) )
      = ( M = N ) ) ).

% numeral_eq_iff
thf(fact_52_numeral__eq__iff,axiom,
    ! [M: num,N: num] :
      ( ( ( numeral_numeral_int @ M )
        = ( numeral_numeral_int @ N ) )
      = ( M = N ) ) ).

% numeral_eq_iff
thf(fact_53_numeral__less__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_nat @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ N ) )
      = ( ord_less_num @ M @ N ) ) ).

% numeral_less_iff
thf(fact_54_numeral__less__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_real @ ( numeral_numeral_real @ M ) @ ( numeral_numeral_real @ N ) )
      = ( ord_less_num @ M @ N ) ) ).

% numeral_less_iff
thf(fact_55_numeral__less__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_int @ ( numeral_numeral_int @ M ) @ ( numeral_numeral_int @ N ) )
      = ( ord_less_num @ M @ N ) ) ).

% numeral_less_iff
thf(fact_56_mult__numeral__left__semiring__numeral,axiom,
    ! [V: num,W: num,Z: nat] :
      ( ( times_times_nat @ ( numeral_numeral_nat @ V ) @ ( times_times_nat @ ( numeral_numeral_nat @ W ) @ Z ) )
      = ( times_times_nat @ ( numeral_numeral_nat @ ( times_times_num @ V @ W ) ) @ Z ) ) ).

% mult_numeral_left_semiring_numeral
thf(fact_57_mult__numeral__left__semiring__numeral,axiom,
    ! [V: num,W: num,Z: real] :
      ( ( times_times_real @ ( numeral_numeral_real @ V ) @ ( times_times_real @ ( numeral_numeral_real @ W ) @ Z ) )
      = ( times_times_real @ ( numeral_numeral_real @ ( times_times_num @ V @ W ) ) @ Z ) ) ).

% mult_numeral_left_semiring_numeral
thf(fact_58_mult__numeral__left__semiring__numeral,axiom,
    ! [V: num,W: num,Z: int] :
      ( ( times_times_int @ ( numeral_numeral_int @ V ) @ ( times_times_int @ ( numeral_numeral_int @ W ) @ Z ) )
      = ( times_times_int @ ( numeral_numeral_int @ ( times_times_num @ V @ W ) ) @ Z ) ) ).

% mult_numeral_left_semiring_numeral
thf(fact_59_mult__numeral__left__semiring__numeral,axiom,
    ! [V: num,W: num,Z: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ ( numera2966756627528668408ring_a @ V ) @ ( times_3242606764180207630ring_a @ ( numera2966756627528668408ring_a @ W ) @ Z ) )
      = ( times_3242606764180207630ring_a @ ( numera2966756627528668408ring_a @ ( times_times_num @ V @ W ) ) @ Z ) ) ).

% mult_numeral_left_semiring_numeral
thf(fact_60_mult__numeral__left__semiring__numeral,axiom,
    ! [V: num,W: num,Z: finite_mod_ring_a] :
      ( ( times_5121417576591743744ring_a @ ( numera7938180240421336042ring_a @ V ) @ ( times_5121417576591743744ring_a @ ( numera7938180240421336042ring_a @ W ) @ Z ) )
      = ( times_5121417576591743744ring_a @ ( numera7938180240421336042ring_a @ ( times_times_num @ V @ W ) ) @ Z ) ) ).

% mult_numeral_left_semiring_numeral
thf(fact_61_mult__numeral__left__semiring__numeral,axiom,
    ! [V: num,W: num,Z: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ ( numera2156158589294619636r_qr_a @ V ) @ ( times_2095635435063429214r_qr_a @ ( numera2156158589294619636r_qr_a @ W ) @ Z ) )
      = ( times_2095635435063429214r_qr_a @ ( numera2156158589294619636r_qr_a @ ( times_times_num @ V @ W ) ) @ Z ) ) ).

% mult_numeral_left_semiring_numeral
thf(fact_62_numeral__times__numeral,axiom,
    ! [M: num,N: num] :
      ( ( times_times_nat @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ N ) )
      = ( numeral_numeral_nat @ ( times_times_num @ M @ N ) ) ) ).

% numeral_times_numeral
thf(fact_63_numeral__times__numeral,axiom,
    ! [M: num,N: num] :
      ( ( times_times_real @ ( numeral_numeral_real @ M ) @ ( numeral_numeral_real @ N ) )
      = ( numeral_numeral_real @ ( times_times_num @ M @ N ) ) ) ).

% numeral_times_numeral
thf(fact_64_numeral__times__numeral,axiom,
    ! [M: num,N: num] :
      ( ( times_times_int @ ( numeral_numeral_int @ M ) @ ( numeral_numeral_int @ N ) )
      = ( numeral_numeral_int @ ( times_times_num @ M @ N ) ) ) ).

% numeral_times_numeral
thf(fact_65_numeral__times__numeral,axiom,
    ! [M: num,N: num] :
      ( ( times_3242606764180207630ring_a @ ( numera2966756627528668408ring_a @ M ) @ ( numera2966756627528668408ring_a @ N ) )
      = ( numera2966756627528668408ring_a @ ( times_times_num @ M @ N ) ) ) ).

% numeral_times_numeral
thf(fact_66_numeral__times__numeral,axiom,
    ! [M: num,N: num] :
      ( ( times_5121417576591743744ring_a @ ( numera7938180240421336042ring_a @ M ) @ ( numera7938180240421336042ring_a @ N ) )
      = ( numera7938180240421336042ring_a @ ( times_times_num @ M @ N ) ) ) ).

% numeral_times_numeral
thf(fact_67_numeral__times__numeral,axiom,
    ! [M: num,N: num] :
      ( ( times_2095635435063429214r_qr_a @ ( numera2156158589294619636r_qr_a @ M ) @ ( numera2156158589294619636r_qr_a @ N ) )
      = ( numera2156158589294619636r_qr_a @ ( times_times_num @ M @ N ) ) ) ).

% numeral_times_numeral
thf(fact_68_power__one,axiom,
    ! [N: nat] :
      ( ( power_6500929916544582089ring_a @ one_on3394844594818161742ring_a @ N )
      = one_on3394844594818161742ring_a ) ).

% power_one
thf(fact_69_power__one,axiom,
    ! [N: nat] :
      ( ( power_6826135765519566523ring_a @ one_on2109788427901206336ring_a @ N )
      = one_on2109788427901206336ring_a ) ).

% power_one
thf(fact_70_power__one,axiom,
    ! [N: nat] :
      ( ( power_power_nat @ one_one_nat @ N )
      = one_one_nat ) ).

% power_one
thf(fact_71_power__one,axiom,
    ! [N: nat] :
      ( ( power_power_real @ one_one_real @ N )
      = one_one_real ) ).

% power_one
thf(fact_72_power__one,axiom,
    ! [N: nat] :
      ( ( power_power_int @ one_one_int @ N )
      = one_one_int ) ).

% power_one
thf(fact_73_num__double,axiom,
    ! [N: num] :
      ( ( times_times_num @ ( bit0 @ one ) @ N )
      = ( bit0 @ N ) ) ).

% num_double
thf(fact_74_power__mult__numeral,axiom,
    ! [A: finite_mod_ring_a,M: num,N: num] :
      ( ( power_6826135765519566523ring_a @ ( power_6826135765519566523ring_a @ A @ ( numeral_numeral_nat @ M ) ) @ ( numeral_numeral_nat @ N ) )
      = ( power_6826135765519566523ring_a @ A @ ( numeral_numeral_nat @ ( times_times_num @ M @ N ) ) ) ) ).

% power_mult_numeral
thf(fact_75_power__mult__numeral,axiom,
    ! [A: nat,M: num,N: num] :
      ( ( power_power_nat @ ( power_power_nat @ A @ ( numeral_numeral_nat @ M ) ) @ ( numeral_numeral_nat @ N ) )
      = ( power_power_nat @ A @ ( numeral_numeral_nat @ ( times_times_num @ M @ N ) ) ) ) ).

% power_mult_numeral
thf(fact_76_power__mult__numeral,axiom,
    ! [A: real,M: num,N: num] :
      ( ( power_power_real @ ( power_power_real @ A @ ( numeral_numeral_nat @ M ) ) @ ( numeral_numeral_nat @ N ) )
      = ( power_power_real @ A @ ( numeral_numeral_nat @ ( times_times_num @ M @ N ) ) ) ) ).

% power_mult_numeral
thf(fact_77_power__mult__numeral,axiom,
    ! [A: int,M: num,N: num] :
      ( ( power_power_int @ ( power_power_int @ A @ ( numeral_numeral_nat @ M ) ) @ ( numeral_numeral_nat @ N ) )
      = ( power_power_int @ A @ ( numeral_numeral_nat @ ( times_times_num @ M @ N ) ) ) ) ).

% power_mult_numeral
thf(fact_78_power__one__right,axiom,
    ! [A: finite_mod_ring_a] :
      ( ( power_6826135765519566523ring_a @ A @ one_one_nat )
      = A ) ).

% power_one_right
thf(fact_79_power__one__right,axiom,
    ! [A: nat] :
      ( ( power_power_nat @ A @ one_one_nat )
      = A ) ).

% power_one_right
thf(fact_80_power__one__right,axiom,
    ! [A: real] :
      ( ( power_power_real @ A @ one_one_nat )
      = A ) ).

% power_one_right
thf(fact_81_power__one__right,axiom,
    ! [A: int] :
      ( ( power_power_int @ A @ one_one_nat )
      = A ) ).

% power_one_right
thf(fact_82_nat__add__left__cancel__less,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ K @ M ) @ ( plus_plus_nat @ K @ N ) )
      = ( ord_less_nat @ M @ N ) ) ).

% nat_add_left_cancel_less
thf(fact_83_power__inject__exp,axiom,
    ! [A: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ one_one_nat @ A )
     => ( ( ( power_power_nat @ A @ M )
          = ( power_power_nat @ A @ N ) )
        = ( M = N ) ) ) ).

% power_inject_exp
thf(fact_84_power__inject__exp,axiom,
    ! [A: real,M: nat,N: nat] :
      ( ( ord_less_real @ one_one_real @ A )
     => ( ( ( power_power_real @ A @ M )
          = ( power_power_real @ A @ N ) )
        = ( M = N ) ) ) ).

% power_inject_exp
thf(fact_85_power__inject__exp,axiom,
    ! [A: int,M: nat,N: nat] :
      ( ( ord_less_int @ one_one_int @ A )
     => ( ( ( power_power_int @ A @ M )
          = ( power_power_int @ A @ N ) )
        = ( M = N ) ) ) ).

% power_inject_exp
thf(fact_86_add__numeral__left,axiom,
    ! [V: num,W: num,Z: nat] :
      ( ( plus_plus_nat @ ( numeral_numeral_nat @ V ) @ ( plus_plus_nat @ ( numeral_numeral_nat @ W ) @ Z ) )
      = ( plus_plus_nat @ ( numeral_numeral_nat @ ( plus_plus_num @ V @ W ) ) @ Z ) ) ).

% add_numeral_left
thf(fact_87_add__numeral__left,axiom,
    ! [V: num,W: num,Z: real] :
      ( ( plus_plus_real @ ( numeral_numeral_real @ V ) @ ( plus_plus_real @ ( numeral_numeral_real @ W ) @ Z ) )
      = ( plus_plus_real @ ( numeral_numeral_real @ ( plus_plus_num @ V @ W ) ) @ Z ) ) ).

% add_numeral_left
thf(fact_88_add__numeral__left,axiom,
    ! [V: num,W: num,Z: int] :
      ( ( plus_plus_int @ ( numeral_numeral_int @ V ) @ ( plus_plus_int @ ( numeral_numeral_int @ W ) @ Z ) )
      = ( plus_plus_int @ ( numeral_numeral_int @ ( plus_plus_num @ V @ W ) ) @ Z ) ) ).

% add_numeral_left
thf(fact_89_add__numeral__left,axiom,
    ! [V: num,W: num,Z: poly_F3299452240248304339ring_a] :
      ( ( plus_p7290290253215468682ring_a @ ( numera2966756627528668408ring_a @ V ) @ ( plus_p7290290253215468682ring_a @ ( numera2966756627528668408ring_a @ W ) @ Z ) )
      = ( plus_p7290290253215468682ring_a @ ( numera2966756627528668408ring_a @ ( plus_plus_num @ V @ W ) ) @ Z ) ) ).

% add_numeral_left
thf(fact_90_add__numeral__left,axiom,
    ! [V: num,W: num,Z: finite_mod_ring_a] :
      ( ( plus_p6165643967897163644ring_a @ ( numera7938180240421336042ring_a @ V ) @ ( plus_p6165643967897163644ring_a @ ( numera7938180240421336042ring_a @ W ) @ Z ) )
      = ( plus_p6165643967897163644ring_a @ ( numera7938180240421336042ring_a @ ( plus_plus_num @ V @ W ) ) @ Z ) ) ).

% add_numeral_left
thf(fact_91_add__numeral__left,axiom,
    ! [V: num,W: num,Z: kyber_qr_a] :
      ( ( plus_plus_Kyber_qr_a @ ( numera2156158589294619636r_qr_a @ V ) @ ( plus_plus_Kyber_qr_a @ ( numera2156158589294619636r_qr_a @ W ) @ Z ) )
      = ( plus_plus_Kyber_qr_a @ ( numera2156158589294619636r_qr_a @ ( plus_plus_num @ V @ W ) ) @ Z ) ) ).

% add_numeral_left
thf(fact_92_numeral__plus__numeral,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_nat @ ( numeral_numeral_nat @ M ) @ ( numeral_numeral_nat @ N ) )
      = ( numeral_numeral_nat @ ( plus_plus_num @ M @ N ) ) ) ).

% numeral_plus_numeral
thf(fact_93_numeral__plus__numeral,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_real @ ( numeral_numeral_real @ M ) @ ( numeral_numeral_real @ N ) )
      = ( numeral_numeral_real @ ( plus_plus_num @ M @ N ) ) ) ).

% numeral_plus_numeral
thf(fact_94_numeral__plus__numeral,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_int @ ( numeral_numeral_int @ M ) @ ( numeral_numeral_int @ N ) )
      = ( numeral_numeral_int @ ( plus_plus_num @ M @ N ) ) ) ).

% numeral_plus_numeral
thf(fact_95_numeral__plus__numeral,axiom,
    ! [M: num,N: num] :
      ( ( plus_p7290290253215468682ring_a @ ( numera2966756627528668408ring_a @ M ) @ ( numera2966756627528668408ring_a @ N ) )
      = ( numera2966756627528668408ring_a @ ( plus_plus_num @ M @ N ) ) ) ).

% numeral_plus_numeral
thf(fact_96_numeral__plus__numeral,axiom,
    ! [M: num,N: num] :
      ( ( plus_p6165643967897163644ring_a @ ( numera7938180240421336042ring_a @ M ) @ ( numera7938180240421336042ring_a @ N ) )
      = ( numera7938180240421336042ring_a @ ( plus_plus_num @ M @ N ) ) ) ).

% numeral_plus_numeral
thf(fact_97_numeral__plus__numeral,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_Kyber_qr_a @ ( numera2156158589294619636r_qr_a @ M ) @ ( numera2156158589294619636r_qr_a @ N ) )
      = ( numera2156158589294619636r_qr_a @ ( plus_plus_num @ M @ N ) ) ) ).

% numeral_plus_numeral
thf(fact_98_one__less__numeral__iff,axiom,
    ! [N: num] :
      ( ( ord_less_nat @ one_one_nat @ ( numeral_numeral_nat @ N ) )
      = ( ord_less_num @ one @ N ) ) ).

% one_less_numeral_iff
thf(fact_99_one__less__numeral__iff,axiom,
    ! [N: num] :
      ( ( ord_less_real @ one_one_real @ ( numeral_numeral_real @ N ) )
      = ( ord_less_num @ one @ N ) ) ).

% one_less_numeral_iff
thf(fact_100_one__less__numeral__iff,axiom,
    ! [N: num] :
      ( ( ord_less_int @ one_one_int @ ( numeral_numeral_int @ N ) )
      = ( ord_less_num @ one @ N ) ) ).

% one_less_numeral_iff
thf(fact_101_power__strict__increasing__iff,axiom,
    ! [B: nat,X: nat,Y: nat] :
      ( ( ord_less_nat @ one_one_nat @ B )
     => ( ( ord_less_nat @ ( power_power_nat @ B @ X ) @ ( power_power_nat @ B @ Y ) )
        = ( ord_less_nat @ X @ Y ) ) ) ).

% power_strict_increasing_iff
thf(fact_102_power__strict__increasing__iff,axiom,
    ! [B: real,X: nat,Y: nat] :
      ( ( ord_less_real @ one_one_real @ B )
     => ( ( ord_less_real @ ( power_power_real @ B @ X ) @ ( power_power_real @ B @ Y ) )
        = ( ord_less_nat @ X @ Y ) ) ) ).

% power_strict_increasing_iff
thf(fact_103_power__strict__increasing__iff,axiom,
    ! [B: int,X: nat,Y: nat] :
      ( ( ord_less_int @ one_one_int @ B )
     => ( ( ord_less_int @ ( power_power_int @ B @ X ) @ ( power_power_int @ B @ Y ) )
        = ( ord_less_nat @ X @ Y ) ) ) ).

% power_strict_increasing_iff
thf(fact_104_power__add__numeral2,axiom,
    ! [A: finite_mod_ring_a,M: num,N: num,B: finite_mod_ring_a] :
      ( ( times_5121417576591743744ring_a @ ( power_6826135765519566523ring_a @ A @ ( numeral_numeral_nat @ M ) ) @ ( times_5121417576591743744ring_a @ ( power_6826135765519566523ring_a @ A @ ( numeral_numeral_nat @ N ) ) @ B ) )
      = ( times_5121417576591743744ring_a @ ( power_6826135765519566523ring_a @ A @ ( numeral_numeral_nat @ ( plus_plus_num @ M @ N ) ) ) @ B ) ) ).

% power_add_numeral2
thf(fact_105_power__add__numeral2,axiom,
    ! [A: poly_F3299452240248304339ring_a,M: num,N: num,B: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ ( power_6500929916544582089ring_a @ A @ ( numeral_numeral_nat @ M ) ) @ ( times_3242606764180207630ring_a @ ( power_6500929916544582089ring_a @ A @ ( numeral_numeral_nat @ N ) ) @ B ) )
      = ( times_3242606764180207630ring_a @ ( power_6500929916544582089ring_a @ A @ ( numeral_numeral_nat @ ( plus_plus_num @ M @ N ) ) ) @ B ) ) ).

% power_add_numeral2
thf(fact_106_power__add__numeral2,axiom,
    ! [A: kyber_qr_a,M: num,N: num,B: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ ( power_5122640293590465123r_qr_a @ A @ ( numeral_numeral_nat @ M ) ) @ ( times_2095635435063429214r_qr_a @ ( power_5122640293590465123r_qr_a @ A @ ( numeral_numeral_nat @ N ) ) @ B ) )
      = ( times_2095635435063429214r_qr_a @ ( power_5122640293590465123r_qr_a @ A @ ( numeral_numeral_nat @ ( plus_plus_num @ M @ N ) ) ) @ B ) ) ).

% power_add_numeral2
thf(fact_107_power__add__numeral2,axiom,
    ! [A: real,M: num,N: num,B: real] :
      ( ( times_times_real @ ( power_power_real @ A @ ( numeral_numeral_nat @ M ) ) @ ( times_times_real @ ( power_power_real @ A @ ( numeral_numeral_nat @ N ) ) @ B ) )
      = ( times_times_real @ ( power_power_real @ A @ ( numeral_numeral_nat @ ( plus_plus_num @ M @ N ) ) ) @ B ) ) ).

% power_add_numeral2
thf(fact_108_power__add__numeral2,axiom,
    ! [A: nat,M: num,N: num,B: nat] :
      ( ( times_times_nat @ ( power_power_nat @ A @ ( numeral_numeral_nat @ M ) ) @ ( times_times_nat @ ( power_power_nat @ A @ ( numeral_numeral_nat @ N ) ) @ B ) )
      = ( times_times_nat @ ( power_power_nat @ A @ ( numeral_numeral_nat @ ( plus_plus_num @ M @ N ) ) ) @ B ) ) ).

% power_add_numeral2
thf(fact_109_power__add__numeral2,axiom,
    ! [A: int,M: num,N: num,B: int] :
      ( ( times_times_int @ ( power_power_int @ A @ ( numeral_numeral_nat @ M ) ) @ ( times_times_int @ ( power_power_int @ A @ ( numeral_numeral_nat @ N ) ) @ B ) )
      = ( times_times_int @ ( power_power_int @ A @ ( numeral_numeral_nat @ ( plus_plus_num @ M @ N ) ) ) @ B ) ) ).

% power_add_numeral2
thf(fact_110_power__add__numeral,axiom,
    ! [A: finite_mod_ring_a,M: num,N: num] :
      ( ( times_5121417576591743744ring_a @ ( power_6826135765519566523ring_a @ A @ ( numeral_numeral_nat @ M ) ) @ ( power_6826135765519566523ring_a @ A @ ( numeral_numeral_nat @ N ) ) )
      = ( power_6826135765519566523ring_a @ A @ ( numeral_numeral_nat @ ( plus_plus_num @ M @ N ) ) ) ) ).

% power_add_numeral
thf(fact_111_power__add__numeral,axiom,
    ! [A: poly_F3299452240248304339ring_a,M: num,N: num] :
      ( ( times_3242606764180207630ring_a @ ( power_6500929916544582089ring_a @ A @ ( numeral_numeral_nat @ M ) ) @ ( power_6500929916544582089ring_a @ A @ ( numeral_numeral_nat @ N ) ) )
      = ( power_6500929916544582089ring_a @ A @ ( numeral_numeral_nat @ ( plus_plus_num @ M @ N ) ) ) ) ).

% power_add_numeral
thf(fact_112_power__add__numeral,axiom,
    ! [A: kyber_qr_a,M: num,N: num] :
      ( ( times_2095635435063429214r_qr_a @ ( power_5122640293590465123r_qr_a @ A @ ( numeral_numeral_nat @ M ) ) @ ( power_5122640293590465123r_qr_a @ A @ ( numeral_numeral_nat @ N ) ) )
      = ( power_5122640293590465123r_qr_a @ A @ ( numeral_numeral_nat @ ( plus_plus_num @ M @ N ) ) ) ) ).

% power_add_numeral
thf(fact_113_power__add__numeral,axiom,
    ! [A: real,M: num,N: num] :
      ( ( times_times_real @ ( power_power_real @ A @ ( numeral_numeral_nat @ M ) ) @ ( power_power_real @ A @ ( numeral_numeral_nat @ N ) ) )
      = ( power_power_real @ A @ ( numeral_numeral_nat @ ( plus_plus_num @ M @ N ) ) ) ) ).

% power_add_numeral
thf(fact_114_power__add__numeral,axiom,
    ! [A: nat,M: num,N: num] :
      ( ( times_times_nat @ ( power_power_nat @ A @ ( numeral_numeral_nat @ M ) ) @ ( power_power_nat @ A @ ( numeral_numeral_nat @ N ) ) )
      = ( power_power_nat @ A @ ( numeral_numeral_nat @ ( plus_plus_num @ M @ N ) ) ) ) ).

% power_add_numeral
thf(fact_115_power__add__numeral,axiom,
    ! [A: int,M: num,N: num] :
      ( ( times_times_int @ ( power_power_int @ A @ ( numeral_numeral_nat @ M ) ) @ ( power_power_int @ A @ ( numeral_numeral_nat @ N ) ) )
      = ( power_power_int @ A @ ( numeral_numeral_nat @ ( plus_plus_num @ M @ N ) ) ) ) ).

% power_add_numeral
thf(fact_116_nat__neq__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( M != N )
      = ( ( ord_less_nat @ M @ N )
        | ( ord_less_nat @ N @ M ) ) ) ).

% nat_neq_iff
thf(fact_117_less__not__refl,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ N ) ).

% less_not_refl
thf(fact_118_less__not__refl2,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ N @ M )
     => ( M != N ) ) ).

% less_not_refl2
thf(fact_119_less__not__refl3,axiom,
    ! [S: nat,T: nat] :
      ( ( ord_less_nat @ S @ T )
     => ( S != T ) ) ).

% less_not_refl3
thf(fact_120_less__irrefl__nat,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ N ) ).

% less_irrefl_nat
thf(fact_121_nat__less__induct,axiom,
    ! [P: nat > $o,N: nat] :
      ( ! [N2: nat] :
          ( ! [M2: nat] :
              ( ( ord_less_nat @ M2 @ N2 )
             => ( P @ M2 ) )
         => ( P @ N2 ) )
     => ( P @ N ) ) ).

% nat_less_induct
thf(fact_122_infinite__descent,axiom,
    ! [P: nat > $o,N: nat] :
      ( ! [N2: nat] :
          ( ~ ( P @ N2 )
         => ? [M2: nat] :
              ( ( ord_less_nat @ M2 @ N2 )
              & ~ ( P @ M2 ) ) )
     => ( P @ N ) ) ).

% infinite_descent
thf(fact_123_linorder__neqE__nat,axiom,
    ! [X: nat,Y: nat] :
      ( ( X != Y )
     => ( ~ ( ord_less_nat @ X @ Y )
       => ( ord_less_nat @ Y @ X ) ) ) ).

% linorder_neqE_nat
thf(fact_124_less__numeral__extra_I4_J,axiom,
    ~ ( ord_less_nat @ one_one_nat @ one_one_nat ) ).

% less_numeral_extra(4)
thf(fact_125_less__numeral__extra_I4_J,axiom,
    ~ ( ord_less_real @ one_one_real @ one_one_real ) ).

% less_numeral_extra(4)
thf(fact_126_less__numeral__extra_I4_J,axiom,
    ~ ( ord_less_int @ one_one_int @ one_one_int ) ).

% less_numeral_extra(4)
thf(fact_127_mem__Collect__eq,axiom,
    ! [A: nat,P: nat > $o] :
      ( ( member_nat @ A @ ( collect_nat @ P ) )
      = ( P @ A ) ) ).

% mem_Collect_eq
thf(fact_128_Collect__mem__eq,axiom,
    ! [A2: set_nat] :
      ( ( collect_nat
        @ ^ [X2: nat] : ( member_nat @ X2 @ A2 ) )
      = A2 ) ).

% Collect_mem_eq
thf(fact_129_add__One__commute,axiom,
    ! [N: num] :
      ( ( plus_plus_num @ one @ N )
      = ( plus_plus_num @ N @ one ) ) ).

% add_One_commute
thf(fact_130_less__add__eq__less,axiom,
    ! [K: nat,L: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ K @ L )
     => ( ( ( plus_plus_nat @ M @ L )
          = ( plus_plus_nat @ K @ N ) )
       => ( ord_less_nat @ M @ N ) ) ) ).

% less_add_eq_less
thf(fact_131_trans__less__add2,axiom,
    ! [I: nat,J2: nat,M: nat] :
      ( ( ord_less_nat @ I @ J2 )
     => ( ord_less_nat @ I @ ( plus_plus_nat @ M @ J2 ) ) ) ).

% trans_less_add2
thf(fact_132_trans__less__add1,axiom,
    ! [I: nat,J2: nat,M: nat] :
      ( ( ord_less_nat @ I @ J2 )
     => ( ord_less_nat @ I @ ( plus_plus_nat @ J2 @ M ) ) ) ).

% trans_less_add1
thf(fact_133_add__less__mono1,axiom,
    ! [I: nat,J2: nat,K: nat] :
      ( ( ord_less_nat @ I @ J2 )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J2 @ K ) ) ) ).

% add_less_mono1
thf(fact_134_not__add__less2,axiom,
    ! [J2: nat,I: nat] :
      ~ ( ord_less_nat @ ( plus_plus_nat @ J2 @ I ) @ I ) ).

% not_add_less2
thf(fact_135_not__add__less1,axiom,
    ! [I: nat,J2: nat] :
      ~ ( ord_less_nat @ ( plus_plus_nat @ I @ J2 ) @ I ) ).

% not_add_less1
thf(fact_136_add__less__mono,axiom,
    ! [I: nat,J2: nat,K: nat,L: nat] :
      ( ( ord_less_nat @ I @ J2 )
     => ( ( ord_less_nat @ K @ L )
       => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J2 @ L ) ) ) ) ).

% add_less_mono
thf(fact_137_add__lessD1,axiom,
    ! [I: nat,J2: nat,K: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ I @ J2 ) @ K )
     => ( ord_less_nat @ I @ K ) ) ).

% add_lessD1
thf(fact_138_power__strict__increasing,axiom,
    ! [N: nat,N3: nat,A: nat] :
      ( ( ord_less_nat @ N @ N3 )
     => ( ( ord_less_nat @ one_one_nat @ A )
       => ( ord_less_nat @ ( power_power_nat @ A @ N ) @ ( power_power_nat @ A @ N3 ) ) ) ) ).

% power_strict_increasing
thf(fact_139_power__strict__increasing,axiom,
    ! [N: nat,N3: nat,A: real] :
      ( ( ord_less_nat @ N @ N3 )
     => ( ( ord_less_real @ one_one_real @ A )
       => ( ord_less_real @ ( power_power_real @ A @ N ) @ ( power_power_real @ A @ N3 ) ) ) ) ).

% power_strict_increasing
thf(fact_140_power__strict__increasing,axiom,
    ! [N: nat,N3: nat,A: int] :
      ( ( ord_less_nat @ N @ N3 )
     => ( ( ord_less_int @ one_one_int @ A )
       => ( ord_less_int @ ( power_power_int @ A @ N ) @ ( power_power_int @ A @ N3 ) ) ) ) ).

% power_strict_increasing
thf(fact_141_power__less__imp__less__exp,axiom,
    ! [A: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ one_one_nat @ A )
     => ( ( ord_less_nat @ ( power_power_nat @ A @ M ) @ ( power_power_nat @ A @ N ) )
       => ( ord_less_nat @ M @ N ) ) ) ).

% power_less_imp_less_exp
thf(fact_142_power__less__imp__less__exp,axiom,
    ! [A: real,M: nat,N: nat] :
      ( ( ord_less_real @ one_one_real @ A )
     => ( ( ord_less_real @ ( power_power_real @ A @ M ) @ ( power_power_real @ A @ N ) )
       => ( ord_less_nat @ M @ N ) ) ) ).

% power_less_imp_less_exp
thf(fact_143_power__less__imp__less__exp,axiom,
    ! [A: int,M: nat,N: nat] :
      ( ( ord_less_int @ one_one_int @ A )
     => ( ( ord_less_int @ ( power_power_int @ A @ M ) @ ( power_power_int @ A @ N ) )
       => ( ord_less_nat @ M @ N ) ) ) ).

% power_less_imp_less_exp
thf(fact_144_less__exp,axiom,
    ! [N: nat] : ( ord_less_nat @ N @ ( power_power_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ).

% less_exp
thf(fact_145_not__numeral__less__one,axiom,
    ! [N: num] :
      ~ ( ord_less_nat @ ( numeral_numeral_nat @ N ) @ one_one_nat ) ).

% not_numeral_less_one
thf(fact_146_not__numeral__less__one,axiom,
    ! [N: num] :
      ~ ( ord_less_real @ ( numeral_numeral_real @ N ) @ one_one_real ) ).

% not_numeral_less_one
thf(fact_147_not__numeral__less__one,axiom,
    ! [N: num] :
      ~ ( ord_less_int @ ( numeral_numeral_int @ N ) @ one_one_int ) ).

% not_numeral_less_one
thf(fact_148_power__less__power__Suc,axiom,
    ! [A: nat,N: nat] :
      ( ( ord_less_nat @ one_one_nat @ A )
     => ( ord_less_nat @ ( power_power_nat @ A @ N ) @ ( times_times_nat @ A @ ( power_power_nat @ A @ N ) ) ) ) ).

% power_less_power_Suc
thf(fact_149_power__less__power__Suc,axiom,
    ! [A: real,N: nat] :
      ( ( ord_less_real @ one_one_real @ A )
     => ( ord_less_real @ ( power_power_real @ A @ N ) @ ( times_times_real @ A @ ( power_power_real @ A @ N ) ) ) ) ).

% power_less_power_Suc
thf(fact_150_power__less__power__Suc,axiom,
    ! [A: int,N: nat] :
      ( ( ord_less_int @ one_one_int @ A )
     => ( ord_less_int @ ( power_power_int @ A @ N ) @ ( times_times_int @ A @ ( power_power_int @ A @ N ) ) ) ) ).

% power_less_power_Suc
thf(fact_151_power__gt1__lemma,axiom,
    ! [A: nat,N: nat] :
      ( ( ord_less_nat @ one_one_nat @ A )
     => ( ord_less_nat @ one_one_nat @ ( times_times_nat @ A @ ( power_power_nat @ A @ N ) ) ) ) ).

% power_gt1_lemma
thf(fact_152_power__gt1__lemma,axiom,
    ! [A: real,N: nat] :
      ( ( ord_less_real @ one_one_real @ A )
     => ( ord_less_real @ one_one_real @ ( times_times_real @ A @ ( power_power_real @ A @ N ) ) ) ) ).

% power_gt1_lemma
thf(fact_153_power__gt1__lemma,axiom,
    ! [A: int,N: nat] :
      ( ( ord_less_int @ one_one_int @ A )
     => ( ord_less_int @ one_one_int @ ( times_times_int @ A @ ( power_power_int @ A @ N ) ) ) ) ).

% power_gt1_lemma
thf(fact_154_is__num__normalize_I1_J,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a] :
      ( ( plus_p7290290253215468682ring_a @ ( plus_p7290290253215468682ring_a @ A @ B ) @ C )
      = ( plus_p7290290253215468682ring_a @ A @ ( plus_p7290290253215468682ring_a @ B @ C ) ) ) ).

% is_num_normalize(1)
thf(fact_155_is__num__normalize_I1_J,axiom,
    ! [A: real,B: real,C: real] :
      ( ( plus_plus_real @ ( plus_plus_real @ A @ B ) @ C )
      = ( plus_plus_real @ A @ ( plus_plus_real @ B @ C ) ) ) ).

% is_num_normalize(1)
thf(fact_156_is__num__normalize_I1_J,axiom,
    ! [A: int,B: int,C: int] :
      ( ( plus_plus_int @ ( plus_plus_int @ A @ B ) @ C )
      = ( plus_plus_int @ A @ ( plus_plus_int @ B @ C ) ) ) ).

% is_num_normalize(1)
thf(fact_157_is__num__normalize_I1_J,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a,C: finite_mod_ring_a] :
      ( ( plus_p6165643967897163644ring_a @ ( plus_p6165643967897163644ring_a @ A @ B ) @ C )
      = ( plus_p6165643967897163644ring_a @ A @ ( plus_p6165643967897163644ring_a @ B @ C ) ) ) ).

% is_num_normalize(1)
thf(fact_158_is__num__normalize_I1_J,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a,C: kyber_qr_a] :
      ( ( plus_plus_Kyber_qr_a @ ( plus_plus_Kyber_qr_a @ A @ B ) @ C )
      = ( plus_plus_Kyber_qr_a @ A @ ( plus_plus_Kyber_qr_a @ B @ C ) ) ) ).

% is_num_normalize(1)
thf(fact_159_power__commuting__commutes,axiom,
    ! [X: finite_mod_ring_a,Y: finite_mod_ring_a,N: nat] :
      ( ( ( times_5121417576591743744ring_a @ X @ Y )
        = ( times_5121417576591743744ring_a @ Y @ X ) )
     => ( ( times_5121417576591743744ring_a @ ( power_6826135765519566523ring_a @ X @ N ) @ Y )
        = ( times_5121417576591743744ring_a @ Y @ ( power_6826135765519566523ring_a @ X @ N ) ) ) ) ).

% power_commuting_commutes
thf(fact_160_power__commuting__commutes,axiom,
    ! [X: poly_F3299452240248304339ring_a,Y: poly_F3299452240248304339ring_a,N: nat] :
      ( ( ( times_3242606764180207630ring_a @ X @ Y )
        = ( times_3242606764180207630ring_a @ Y @ X ) )
     => ( ( times_3242606764180207630ring_a @ ( power_6500929916544582089ring_a @ X @ N ) @ Y )
        = ( times_3242606764180207630ring_a @ Y @ ( power_6500929916544582089ring_a @ X @ N ) ) ) ) ).

% power_commuting_commutes
thf(fact_161_power__commuting__commutes,axiom,
    ! [X: kyber_qr_a,Y: kyber_qr_a,N: nat] :
      ( ( ( times_2095635435063429214r_qr_a @ X @ Y )
        = ( times_2095635435063429214r_qr_a @ Y @ X ) )
     => ( ( times_2095635435063429214r_qr_a @ ( power_5122640293590465123r_qr_a @ X @ N ) @ Y )
        = ( times_2095635435063429214r_qr_a @ Y @ ( power_5122640293590465123r_qr_a @ X @ N ) ) ) ) ).

% power_commuting_commutes
thf(fact_162_power__commuting__commutes,axiom,
    ! [X: real,Y: real,N: nat] :
      ( ( ( times_times_real @ X @ Y )
        = ( times_times_real @ Y @ X ) )
     => ( ( times_times_real @ ( power_power_real @ X @ N ) @ Y )
        = ( times_times_real @ Y @ ( power_power_real @ X @ N ) ) ) ) ).

% power_commuting_commutes
thf(fact_163_power__commuting__commutes,axiom,
    ! [X: nat,Y: nat,N: nat] :
      ( ( ( times_times_nat @ X @ Y )
        = ( times_times_nat @ Y @ X ) )
     => ( ( times_times_nat @ ( power_power_nat @ X @ N ) @ Y )
        = ( times_times_nat @ Y @ ( power_power_nat @ X @ N ) ) ) ) ).

% power_commuting_commutes
thf(fact_164_power__commuting__commutes,axiom,
    ! [X: int,Y: int,N: nat] :
      ( ( ( times_times_int @ X @ Y )
        = ( times_times_int @ Y @ X ) )
     => ( ( times_times_int @ ( power_power_int @ X @ N ) @ Y )
        = ( times_times_int @ Y @ ( power_power_int @ X @ N ) ) ) ) ).

% power_commuting_commutes
thf(fact_165_power__mult__distrib,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a,N: nat] :
      ( ( power_6826135765519566523ring_a @ ( times_5121417576591743744ring_a @ A @ B ) @ N )
      = ( times_5121417576591743744ring_a @ ( power_6826135765519566523ring_a @ A @ N ) @ ( power_6826135765519566523ring_a @ B @ N ) ) ) ).

% power_mult_distrib
thf(fact_166_power__mult__distrib,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a,N: nat] :
      ( ( power_6500929916544582089ring_a @ ( times_3242606764180207630ring_a @ A @ B ) @ N )
      = ( times_3242606764180207630ring_a @ ( power_6500929916544582089ring_a @ A @ N ) @ ( power_6500929916544582089ring_a @ B @ N ) ) ) ).

% power_mult_distrib
thf(fact_167_power__mult__distrib,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a,N: nat] :
      ( ( power_5122640293590465123r_qr_a @ ( times_2095635435063429214r_qr_a @ A @ B ) @ N )
      = ( times_2095635435063429214r_qr_a @ ( power_5122640293590465123r_qr_a @ A @ N ) @ ( power_5122640293590465123r_qr_a @ B @ N ) ) ) ).

% power_mult_distrib
thf(fact_168_power__mult__distrib,axiom,
    ! [A: real,B: real,N: nat] :
      ( ( power_power_real @ ( times_times_real @ A @ B ) @ N )
      = ( times_times_real @ ( power_power_real @ A @ N ) @ ( power_power_real @ B @ N ) ) ) ).

% power_mult_distrib
thf(fact_169_power__mult__distrib,axiom,
    ! [A: nat,B: nat,N: nat] :
      ( ( power_power_nat @ ( times_times_nat @ A @ B ) @ N )
      = ( times_times_nat @ ( power_power_nat @ A @ N ) @ ( power_power_nat @ B @ N ) ) ) ).

% power_mult_distrib
thf(fact_170_power__mult__distrib,axiom,
    ! [A: int,B: int,N: nat] :
      ( ( power_power_int @ ( times_times_int @ A @ B ) @ N )
      = ( times_times_int @ ( power_power_int @ A @ N ) @ ( power_power_int @ B @ N ) ) ) ).

% power_mult_distrib
thf(fact_171_power__commutes,axiom,
    ! [A: finite_mod_ring_a,N: nat] :
      ( ( times_5121417576591743744ring_a @ ( power_6826135765519566523ring_a @ A @ N ) @ A )
      = ( times_5121417576591743744ring_a @ A @ ( power_6826135765519566523ring_a @ A @ N ) ) ) ).

% power_commutes
thf(fact_172_power__commutes,axiom,
    ! [A: poly_F3299452240248304339ring_a,N: nat] :
      ( ( times_3242606764180207630ring_a @ ( power_6500929916544582089ring_a @ A @ N ) @ A )
      = ( times_3242606764180207630ring_a @ A @ ( power_6500929916544582089ring_a @ A @ N ) ) ) ).

% power_commutes
thf(fact_173_power__commutes,axiom,
    ! [A: kyber_qr_a,N: nat] :
      ( ( times_2095635435063429214r_qr_a @ ( power_5122640293590465123r_qr_a @ A @ N ) @ A )
      = ( times_2095635435063429214r_qr_a @ A @ ( power_5122640293590465123r_qr_a @ A @ N ) ) ) ).

% power_commutes
thf(fact_174_power__commutes,axiom,
    ! [A: real,N: nat] :
      ( ( times_times_real @ ( power_power_real @ A @ N ) @ A )
      = ( times_times_real @ A @ ( power_power_real @ A @ N ) ) ) ).

% power_commutes
thf(fact_175_power__commutes,axiom,
    ! [A: nat,N: nat] :
      ( ( times_times_nat @ ( power_power_nat @ A @ N ) @ A )
      = ( times_times_nat @ A @ ( power_power_nat @ A @ N ) ) ) ).

% power_commutes
thf(fact_176_power__commutes,axiom,
    ! [A: int,N: nat] :
      ( ( times_times_int @ ( power_power_int @ A @ N ) @ A )
      = ( times_times_int @ A @ ( power_power_int @ A @ N ) ) ) ).

% power_commutes
thf(fact_177_power__mult,axiom,
    ! [A: finite_mod_ring_a,M: nat,N: nat] :
      ( ( power_6826135765519566523ring_a @ A @ ( times_times_nat @ M @ N ) )
      = ( power_6826135765519566523ring_a @ ( power_6826135765519566523ring_a @ A @ M ) @ N ) ) ).

% power_mult
thf(fact_178_power__mult,axiom,
    ! [A: nat,M: nat,N: nat] :
      ( ( power_power_nat @ A @ ( times_times_nat @ M @ N ) )
      = ( power_power_nat @ ( power_power_nat @ A @ M ) @ N ) ) ).

% power_mult
thf(fact_179_power__mult,axiom,
    ! [A: real,M: nat,N: nat] :
      ( ( power_power_real @ A @ ( times_times_nat @ M @ N ) )
      = ( power_power_real @ ( power_power_real @ A @ M ) @ N ) ) ).

% power_mult
thf(fact_180_power__mult,axiom,
    ! [A: int,M: nat,N: nat] :
      ( ( power_power_int @ A @ ( times_times_nat @ M @ N ) )
      = ( power_power_int @ ( power_power_int @ A @ M ) @ N ) ) ).

% power_mult
thf(fact_181_add__mult__distrib2,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( times_times_nat @ K @ ( plus_plus_nat @ M @ N ) )
      = ( plus_plus_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) ) ) ).

% add_mult_distrib2
thf(fact_182_add__mult__distrib,axiom,
    ! [M: nat,N: nat,K: nat] :
      ( ( times_times_nat @ ( plus_plus_nat @ M @ N ) @ K )
      = ( plus_plus_nat @ ( times_times_nat @ M @ K ) @ ( times_times_nat @ N @ K ) ) ) ).

% add_mult_distrib
thf(fact_183_nat__mult__1__right,axiom,
    ! [N: nat] :
      ( ( times_times_nat @ N @ one_one_nat )
      = N ) ).

% nat_mult_1_right
thf(fact_184_nat__mult__1,axiom,
    ! [N: nat] :
      ( ( times_times_nat @ one_one_nat @ N )
      = N ) ).

% nat_mult_1
thf(fact_185_one__plus__numeral__commute,axiom,
    ! [X: num] :
      ( ( plus_plus_nat @ one_one_nat @ ( numeral_numeral_nat @ X ) )
      = ( plus_plus_nat @ ( numeral_numeral_nat @ X ) @ one_one_nat ) ) ).

% one_plus_numeral_commute
thf(fact_186_one__plus__numeral__commute,axiom,
    ! [X: num] :
      ( ( plus_plus_real @ one_one_real @ ( numeral_numeral_real @ X ) )
      = ( plus_plus_real @ ( numeral_numeral_real @ X ) @ one_one_real ) ) ).

% one_plus_numeral_commute
thf(fact_187_one__plus__numeral__commute,axiom,
    ! [X: num] :
      ( ( plus_plus_int @ one_one_int @ ( numeral_numeral_int @ X ) )
      = ( plus_plus_int @ ( numeral_numeral_int @ X ) @ one_one_int ) ) ).

% one_plus_numeral_commute
thf(fact_188_one__plus__numeral__commute,axiom,
    ! [X: num] :
      ( ( plus_p7290290253215468682ring_a @ one_on3394844594818161742ring_a @ ( numera2966756627528668408ring_a @ X ) )
      = ( plus_p7290290253215468682ring_a @ ( numera2966756627528668408ring_a @ X ) @ one_on3394844594818161742ring_a ) ) ).

% one_plus_numeral_commute
thf(fact_189_one__plus__numeral__commute,axiom,
    ! [X: num] :
      ( ( plus_p6165643967897163644ring_a @ one_on2109788427901206336ring_a @ ( numera7938180240421336042ring_a @ X ) )
      = ( plus_p6165643967897163644ring_a @ ( numera7938180240421336042ring_a @ X ) @ one_on2109788427901206336ring_a ) ) ).

% one_plus_numeral_commute
thf(fact_190_one__plus__numeral__commute,axiom,
    ! [X: num] :
      ( ( plus_plus_Kyber_qr_a @ one_one_Kyber_qr_a @ ( numera2156158589294619636r_qr_a @ X ) )
      = ( plus_plus_Kyber_qr_a @ ( numera2156158589294619636r_qr_a @ X ) @ one_one_Kyber_qr_a ) ) ).

% one_plus_numeral_commute
thf(fact_191_left__right__inverse__power,axiom,
    ! [X: finite_mod_ring_a,Y: finite_mod_ring_a,N: nat] :
      ( ( ( times_5121417576591743744ring_a @ X @ Y )
        = one_on2109788427901206336ring_a )
     => ( ( times_5121417576591743744ring_a @ ( power_6826135765519566523ring_a @ X @ N ) @ ( power_6826135765519566523ring_a @ Y @ N ) )
        = one_on2109788427901206336ring_a ) ) ).

% left_right_inverse_power
thf(fact_192_left__right__inverse__power,axiom,
    ! [X: poly_F3299452240248304339ring_a,Y: poly_F3299452240248304339ring_a,N: nat] :
      ( ( ( times_3242606764180207630ring_a @ X @ Y )
        = one_on3394844594818161742ring_a )
     => ( ( times_3242606764180207630ring_a @ ( power_6500929916544582089ring_a @ X @ N ) @ ( power_6500929916544582089ring_a @ Y @ N ) )
        = one_on3394844594818161742ring_a ) ) ).

% left_right_inverse_power
thf(fact_193_left__right__inverse__power,axiom,
    ! [X: kyber_qr_a,Y: kyber_qr_a,N: nat] :
      ( ( ( times_2095635435063429214r_qr_a @ X @ Y )
        = one_one_Kyber_qr_a )
     => ( ( times_2095635435063429214r_qr_a @ ( power_5122640293590465123r_qr_a @ X @ N ) @ ( power_5122640293590465123r_qr_a @ Y @ N ) )
        = one_one_Kyber_qr_a ) ) ).

% left_right_inverse_power
thf(fact_194_left__right__inverse__power,axiom,
    ! [X: real,Y: real,N: nat] :
      ( ( ( times_times_real @ X @ Y )
        = one_one_real )
     => ( ( times_times_real @ ( power_power_real @ X @ N ) @ ( power_power_real @ Y @ N ) )
        = one_one_real ) ) ).

% left_right_inverse_power
thf(fact_195_left__right__inverse__power,axiom,
    ! [X: nat,Y: nat,N: nat] :
      ( ( ( times_times_nat @ X @ Y )
        = one_one_nat )
     => ( ( times_times_nat @ ( power_power_nat @ X @ N ) @ ( power_power_nat @ Y @ N ) )
        = one_one_nat ) ) ).

% left_right_inverse_power
thf(fact_196_left__right__inverse__power,axiom,
    ! [X: int,Y: int,N: nat] :
      ( ( ( times_times_int @ X @ Y )
        = one_one_int )
     => ( ( times_times_int @ ( power_power_int @ X @ N ) @ ( power_power_int @ Y @ N ) )
        = one_one_int ) ) ).

% left_right_inverse_power
thf(fact_197_mult__numeral__1__right,axiom,
    ! [A: nat] :
      ( ( times_times_nat @ A @ ( numeral_numeral_nat @ one ) )
      = A ) ).

% mult_numeral_1_right
thf(fact_198_mult__numeral__1__right,axiom,
    ! [A: real] :
      ( ( times_times_real @ A @ ( numeral_numeral_real @ one ) )
      = A ) ).

% mult_numeral_1_right
thf(fact_199_mult__numeral__1__right,axiom,
    ! [A: int] :
      ( ( times_times_int @ A @ ( numeral_numeral_int @ one ) )
      = A ) ).

% mult_numeral_1_right
thf(fact_200_mult__numeral__1__right,axiom,
    ! [A: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ A @ ( numera2966756627528668408ring_a @ one ) )
      = A ) ).

% mult_numeral_1_right
thf(fact_201_mult__numeral__1__right,axiom,
    ! [A: finite_mod_ring_a] :
      ( ( times_5121417576591743744ring_a @ A @ ( numera7938180240421336042ring_a @ one ) )
      = A ) ).

% mult_numeral_1_right
thf(fact_202_mult__numeral__1__right,axiom,
    ! [A: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ A @ ( numera2156158589294619636r_qr_a @ one ) )
      = A ) ).

% mult_numeral_1_right
thf(fact_203_mult__numeral__1,axiom,
    ! [A: nat] :
      ( ( times_times_nat @ ( numeral_numeral_nat @ one ) @ A )
      = A ) ).

% mult_numeral_1
thf(fact_204_mult__numeral__1,axiom,
    ! [A: real] :
      ( ( times_times_real @ ( numeral_numeral_real @ one ) @ A )
      = A ) ).

% mult_numeral_1
thf(fact_205_mult__numeral__1,axiom,
    ! [A: int] :
      ( ( times_times_int @ ( numeral_numeral_int @ one ) @ A )
      = A ) ).

% mult_numeral_1
thf(fact_206_mult__numeral__1,axiom,
    ! [A: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ ( numera2966756627528668408ring_a @ one ) @ A )
      = A ) ).

% mult_numeral_1
thf(fact_207_mult__numeral__1,axiom,
    ! [A: finite_mod_ring_a] :
      ( ( times_5121417576591743744ring_a @ ( numera7938180240421336042ring_a @ one ) @ A )
      = A ) ).

% mult_numeral_1
thf(fact_208_mult__numeral__1,axiom,
    ! [A: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ ( numera2156158589294619636r_qr_a @ one ) @ A )
      = A ) ).

% mult_numeral_1
thf(fact_209_numeral__One,axiom,
    ( ( numeral_numeral_nat @ one )
    = one_one_nat ) ).

% numeral_One
thf(fact_210_numeral__One,axiom,
    ( ( numeral_numeral_real @ one )
    = one_one_real ) ).

% numeral_One
thf(fact_211_numeral__One,axiom,
    ( ( numeral_numeral_int @ one )
    = one_one_int ) ).

% numeral_One
thf(fact_212_numeral__One,axiom,
    ( ( numera2966756627528668408ring_a @ one )
    = one_on3394844594818161742ring_a ) ).

% numeral_One
thf(fact_213_numeral__One,axiom,
    ( ( numera7938180240421336042ring_a @ one )
    = one_on2109788427901206336ring_a ) ).

% numeral_One
thf(fact_214_numeral__One,axiom,
    ( ( numera2156158589294619636r_qr_a @ one )
    = one_one_Kyber_qr_a ) ).

% numeral_One
thf(fact_215_numeral__Bit0,axiom,
    ! [N: num] :
      ( ( numeral_numeral_nat @ ( bit0 @ N ) )
      = ( plus_plus_nat @ ( numeral_numeral_nat @ N ) @ ( numeral_numeral_nat @ N ) ) ) ).

% numeral_Bit0
thf(fact_216_numeral__Bit0,axiom,
    ! [N: num] :
      ( ( numeral_numeral_real @ ( bit0 @ N ) )
      = ( plus_plus_real @ ( numeral_numeral_real @ N ) @ ( numeral_numeral_real @ N ) ) ) ).

% numeral_Bit0
thf(fact_217_numeral__Bit0,axiom,
    ! [N: num] :
      ( ( numeral_numeral_int @ ( bit0 @ N ) )
      = ( plus_plus_int @ ( numeral_numeral_int @ N ) @ ( numeral_numeral_int @ N ) ) ) ).

% numeral_Bit0
thf(fact_218_numeral__Bit0,axiom,
    ! [N: num] :
      ( ( numera2966756627528668408ring_a @ ( bit0 @ N ) )
      = ( plus_p7290290253215468682ring_a @ ( numera2966756627528668408ring_a @ N ) @ ( numera2966756627528668408ring_a @ N ) ) ) ).

% numeral_Bit0
thf(fact_219_numeral__Bit0,axiom,
    ! [N: num] :
      ( ( numera7938180240421336042ring_a @ ( bit0 @ N ) )
      = ( plus_p6165643967897163644ring_a @ ( numera7938180240421336042ring_a @ N ) @ ( numera7938180240421336042ring_a @ N ) ) ) ).

% numeral_Bit0
thf(fact_220_numeral__Bit0,axiom,
    ! [N: num] :
      ( ( numera2156158589294619636r_qr_a @ ( bit0 @ N ) )
      = ( plus_plus_Kyber_qr_a @ ( numera2156158589294619636r_qr_a @ N ) @ ( numera2156158589294619636r_qr_a @ N ) ) ) ).

% numeral_Bit0
thf(fact_221_power__add,axiom,
    ! [A: finite_mod_ring_a,M: nat,N: nat] :
      ( ( power_6826135765519566523ring_a @ A @ ( plus_plus_nat @ M @ N ) )
      = ( times_5121417576591743744ring_a @ ( power_6826135765519566523ring_a @ A @ M ) @ ( power_6826135765519566523ring_a @ A @ N ) ) ) ).

% power_add
thf(fact_222_power__add,axiom,
    ! [A: poly_F3299452240248304339ring_a,M: nat,N: nat] :
      ( ( power_6500929916544582089ring_a @ A @ ( plus_plus_nat @ M @ N ) )
      = ( times_3242606764180207630ring_a @ ( power_6500929916544582089ring_a @ A @ M ) @ ( power_6500929916544582089ring_a @ A @ N ) ) ) ).

% power_add
thf(fact_223_power__add,axiom,
    ! [A: kyber_qr_a,M: nat,N: nat] :
      ( ( power_5122640293590465123r_qr_a @ A @ ( plus_plus_nat @ M @ N ) )
      = ( times_2095635435063429214r_qr_a @ ( power_5122640293590465123r_qr_a @ A @ M ) @ ( power_5122640293590465123r_qr_a @ A @ N ) ) ) ).

% power_add
thf(fact_224_power__add,axiom,
    ! [A: real,M: nat,N: nat] :
      ( ( power_power_real @ A @ ( plus_plus_nat @ M @ N ) )
      = ( times_times_real @ ( power_power_real @ A @ M ) @ ( power_power_real @ A @ N ) ) ) ).

% power_add
thf(fact_225_power__add,axiom,
    ! [A: nat,M: nat,N: nat] :
      ( ( power_power_nat @ A @ ( plus_plus_nat @ M @ N ) )
      = ( times_times_nat @ ( power_power_nat @ A @ M ) @ ( power_power_nat @ A @ N ) ) ) ).

% power_add
thf(fact_226_power__add,axiom,
    ! [A: int,M: nat,N: nat] :
      ( ( power_power_int @ A @ ( plus_plus_nat @ M @ N ) )
      = ( times_times_int @ ( power_power_int @ A @ M ) @ ( power_power_int @ A @ N ) ) ) ).

% power_add
thf(fact_227_numerals_I1_J,axiom,
    ( ( numeral_numeral_nat @ one )
    = one_one_nat ) ).

% numerals(1)
thf(fact_228_numeral__code_I2_J,axiom,
    ! [N: num] :
      ( ( numeral_numeral_nat @ ( bit0 @ N ) )
      = ( plus_plus_nat @ ( numeral_numeral_nat @ N ) @ ( numeral_numeral_nat @ N ) ) ) ).

% numeral_code(2)
thf(fact_229_numeral__code_I2_J,axiom,
    ! [N: num] :
      ( ( numeral_numeral_real @ ( bit0 @ N ) )
      = ( plus_plus_real @ ( numeral_numeral_real @ N ) @ ( numeral_numeral_real @ N ) ) ) ).

% numeral_code(2)
thf(fact_230_numeral__code_I2_J,axiom,
    ! [N: num] :
      ( ( numeral_numeral_int @ ( bit0 @ N ) )
      = ( plus_plus_int @ ( numeral_numeral_int @ N ) @ ( numeral_numeral_int @ N ) ) ) ).

% numeral_code(2)
thf(fact_231_numeral__code_I2_J,axiom,
    ! [N: num] :
      ( ( numera2966756627528668408ring_a @ ( bit0 @ N ) )
      = ( plus_p7290290253215468682ring_a @ ( numera2966756627528668408ring_a @ N ) @ ( numera2966756627528668408ring_a @ N ) ) ) ).

% numeral_code(2)
thf(fact_232_numeral__code_I2_J,axiom,
    ! [N: num] :
      ( ( numera7938180240421336042ring_a @ ( bit0 @ N ) )
      = ( plus_p6165643967897163644ring_a @ ( numera7938180240421336042ring_a @ N ) @ ( numera7938180240421336042ring_a @ N ) ) ) ).

% numeral_code(2)
thf(fact_233_numeral__code_I2_J,axiom,
    ! [N: num] :
      ( ( numera2156158589294619636r_qr_a @ ( bit0 @ N ) )
      = ( plus_plus_Kyber_qr_a @ ( numera2156158589294619636r_qr_a @ N ) @ ( numera2156158589294619636r_qr_a @ N ) ) ) ).

% numeral_code(2)
thf(fact_234_power__numeral__even,axiom,
    ! [Z: finite_mod_ring_a,W: num] :
      ( ( power_6826135765519566523ring_a @ Z @ ( numeral_numeral_nat @ ( bit0 @ W ) ) )
      = ( times_5121417576591743744ring_a @ ( power_6826135765519566523ring_a @ Z @ ( numeral_numeral_nat @ W ) ) @ ( power_6826135765519566523ring_a @ Z @ ( numeral_numeral_nat @ W ) ) ) ) ).

% power_numeral_even
thf(fact_235_power__numeral__even,axiom,
    ! [Z: poly_F3299452240248304339ring_a,W: num] :
      ( ( power_6500929916544582089ring_a @ Z @ ( numeral_numeral_nat @ ( bit0 @ W ) ) )
      = ( times_3242606764180207630ring_a @ ( power_6500929916544582089ring_a @ Z @ ( numeral_numeral_nat @ W ) ) @ ( power_6500929916544582089ring_a @ Z @ ( numeral_numeral_nat @ W ) ) ) ) ).

% power_numeral_even
thf(fact_236_power__numeral__even,axiom,
    ! [Z: kyber_qr_a,W: num] :
      ( ( power_5122640293590465123r_qr_a @ Z @ ( numeral_numeral_nat @ ( bit0 @ W ) ) )
      = ( times_2095635435063429214r_qr_a @ ( power_5122640293590465123r_qr_a @ Z @ ( numeral_numeral_nat @ W ) ) @ ( power_5122640293590465123r_qr_a @ Z @ ( numeral_numeral_nat @ W ) ) ) ) ).

% power_numeral_even
thf(fact_237_power__numeral__even,axiom,
    ! [Z: real,W: num] :
      ( ( power_power_real @ Z @ ( numeral_numeral_nat @ ( bit0 @ W ) ) )
      = ( times_times_real @ ( power_power_real @ Z @ ( numeral_numeral_nat @ W ) ) @ ( power_power_real @ Z @ ( numeral_numeral_nat @ W ) ) ) ) ).

% power_numeral_even
thf(fact_238_power__numeral__even,axiom,
    ! [Z: nat,W: num] :
      ( ( power_power_nat @ Z @ ( numeral_numeral_nat @ ( bit0 @ W ) ) )
      = ( times_times_nat @ ( power_power_nat @ Z @ ( numeral_numeral_nat @ W ) ) @ ( power_power_nat @ Z @ ( numeral_numeral_nat @ W ) ) ) ) ).

% power_numeral_even
thf(fact_239_power__numeral__even,axiom,
    ! [Z: int,W: num] :
      ( ( power_power_int @ Z @ ( numeral_numeral_nat @ ( bit0 @ W ) ) )
      = ( times_times_int @ ( power_power_int @ Z @ ( numeral_numeral_nat @ W ) ) @ ( power_power_int @ Z @ ( numeral_numeral_nat @ W ) ) ) ) ).

% power_numeral_even
thf(fact_240_left__add__twice,axiom,
    ! [A: nat,B: nat] :
      ( ( plus_plus_nat @ A @ ( plus_plus_nat @ A @ B ) )
      = ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A ) @ B ) ) ).

% left_add_twice
thf(fact_241_left__add__twice,axiom,
    ! [A: real,B: real] :
      ( ( plus_plus_real @ A @ ( plus_plus_real @ A @ B ) )
      = ( plus_plus_real @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ A ) @ B ) ) ).

% left_add_twice
thf(fact_242_left__add__twice,axiom,
    ! [A: int,B: int] :
      ( ( plus_plus_int @ A @ ( plus_plus_int @ A @ B ) )
      = ( plus_plus_int @ ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ A ) @ B ) ) ).

% left_add_twice
thf(fact_243_left__add__twice,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a] :
      ( ( plus_p7290290253215468682ring_a @ A @ ( plus_p7290290253215468682ring_a @ A @ B ) )
      = ( plus_p7290290253215468682ring_a @ ( times_3242606764180207630ring_a @ ( numera2966756627528668408ring_a @ ( bit0 @ one ) ) @ A ) @ B ) ) ).

% left_add_twice
thf(fact_244_left__add__twice,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a] :
      ( ( plus_p6165643967897163644ring_a @ A @ ( plus_p6165643967897163644ring_a @ A @ B ) )
      = ( plus_p6165643967897163644ring_a @ ( times_5121417576591743744ring_a @ ( numera7938180240421336042ring_a @ ( bit0 @ one ) ) @ A ) @ B ) ) ).

% left_add_twice
thf(fact_245_left__add__twice,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a] :
      ( ( plus_plus_Kyber_qr_a @ A @ ( plus_plus_Kyber_qr_a @ A @ B ) )
      = ( plus_plus_Kyber_qr_a @ ( times_2095635435063429214r_qr_a @ ( numera2156158589294619636r_qr_a @ ( bit0 @ one ) ) @ A ) @ B ) ) ).

% left_add_twice
thf(fact_246_mult__2__right,axiom,
    ! [Z: nat] :
      ( ( times_times_nat @ Z @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( plus_plus_nat @ Z @ Z ) ) ).

% mult_2_right
thf(fact_247_mult__2__right,axiom,
    ! [Z: real] :
      ( ( times_times_real @ Z @ ( numeral_numeral_real @ ( bit0 @ one ) ) )
      = ( plus_plus_real @ Z @ Z ) ) ).

% mult_2_right
thf(fact_248_mult__2__right,axiom,
    ! [Z: int] :
      ( ( times_times_int @ Z @ ( numeral_numeral_int @ ( bit0 @ one ) ) )
      = ( plus_plus_int @ Z @ Z ) ) ).

% mult_2_right
thf(fact_249_mult__2__right,axiom,
    ! [Z: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ Z @ ( numera2966756627528668408ring_a @ ( bit0 @ one ) ) )
      = ( plus_p7290290253215468682ring_a @ Z @ Z ) ) ).

% mult_2_right
thf(fact_250_mult__2__right,axiom,
    ! [Z: finite_mod_ring_a] :
      ( ( times_5121417576591743744ring_a @ Z @ ( numera7938180240421336042ring_a @ ( bit0 @ one ) ) )
      = ( plus_p6165643967897163644ring_a @ Z @ Z ) ) ).

% mult_2_right
thf(fact_251_mult__2__right,axiom,
    ! [Z: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ Z @ ( numera2156158589294619636r_qr_a @ ( bit0 @ one ) ) )
      = ( plus_plus_Kyber_qr_a @ Z @ Z ) ) ).

% mult_2_right
thf(fact_252_mult__2,axiom,
    ! [Z: nat] :
      ( ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ Z )
      = ( plus_plus_nat @ Z @ Z ) ) ).

% mult_2
thf(fact_253_mult__2,axiom,
    ! [Z: real] :
      ( ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ Z )
      = ( plus_plus_real @ Z @ Z ) ) ).

% mult_2
thf(fact_254_mult__2,axiom,
    ! [Z: int] :
      ( ( times_times_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ Z )
      = ( plus_plus_int @ Z @ Z ) ) ).

% mult_2
thf(fact_255_mult__2,axiom,
    ! [Z: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ ( numera2966756627528668408ring_a @ ( bit0 @ one ) ) @ Z )
      = ( plus_p7290290253215468682ring_a @ Z @ Z ) ) ).

% mult_2
thf(fact_256_mult__2,axiom,
    ! [Z: finite_mod_ring_a] :
      ( ( times_5121417576591743744ring_a @ ( numera7938180240421336042ring_a @ ( bit0 @ one ) ) @ Z )
      = ( plus_p6165643967897163644ring_a @ Z @ Z ) ) ).

% mult_2
thf(fact_257_mult__2,axiom,
    ! [Z: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ ( numera2156158589294619636r_qr_a @ ( bit0 @ one ) ) @ Z )
      = ( plus_plus_Kyber_qr_a @ Z @ Z ) ) ).

% mult_2
thf(fact_258_power2__eq__square,axiom,
    ! [A: finite_mod_ring_a] :
      ( ( power_6826135765519566523ring_a @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( times_5121417576591743744ring_a @ A @ A ) ) ).

% power2_eq_square
thf(fact_259_power2__eq__square,axiom,
    ! [A: poly_F3299452240248304339ring_a] :
      ( ( power_6500929916544582089ring_a @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( times_3242606764180207630ring_a @ A @ A ) ) ).

% power2_eq_square
thf(fact_260_power2__eq__square,axiom,
    ! [A: kyber_qr_a] :
      ( ( power_5122640293590465123r_qr_a @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( times_2095635435063429214r_qr_a @ A @ A ) ) ).

% power2_eq_square
thf(fact_261_power2__eq__square,axiom,
    ! [A: real] :
      ( ( power_power_real @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( times_times_real @ A @ A ) ) ).

% power2_eq_square
thf(fact_262_power2__eq__square,axiom,
    ! [A: nat] :
      ( ( power_power_nat @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( times_times_nat @ A @ A ) ) ).

% power2_eq_square
thf(fact_263_power2__eq__square,axiom,
    ! [A: int] :
      ( ( power_power_int @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( times_times_int @ A @ A ) ) ).

% power2_eq_square
thf(fact_264_power4__eq__xxxx,axiom,
    ! [X: finite_mod_ring_a] :
      ( ( power_6826135765519566523ring_a @ X @ ( numeral_numeral_nat @ ( bit0 @ ( bit0 @ one ) ) ) )
      = ( times_5121417576591743744ring_a @ ( times_5121417576591743744ring_a @ ( times_5121417576591743744ring_a @ X @ X ) @ X ) @ X ) ) ).

% power4_eq_xxxx
thf(fact_265_power4__eq__xxxx,axiom,
    ! [X: poly_F3299452240248304339ring_a] :
      ( ( power_6500929916544582089ring_a @ X @ ( numeral_numeral_nat @ ( bit0 @ ( bit0 @ one ) ) ) )
      = ( times_3242606764180207630ring_a @ ( times_3242606764180207630ring_a @ ( times_3242606764180207630ring_a @ X @ X ) @ X ) @ X ) ) ).

% power4_eq_xxxx
thf(fact_266_power4__eq__xxxx,axiom,
    ! [X: kyber_qr_a] :
      ( ( power_5122640293590465123r_qr_a @ X @ ( numeral_numeral_nat @ ( bit0 @ ( bit0 @ one ) ) ) )
      = ( times_2095635435063429214r_qr_a @ ( times_2095635435063429214r_qr_a @ ( times_2095635435063429214r_qr_a @ X @ X ) @ X ) @ X ) ) ).

% power4_eq_xxxx
thf(fact_267_power4__eq__xxxx,axiom,
    ! [X: real] :
      ( ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ ( bit0 @ one ) ) ) )
      = ( times_times_real @ ( times_times_real @ ( times_times_real @ X @ X ) @ X ) @ X ) ) ).

% power4_eq_xxxx
thf(fact_268_power4__eq__xxxx,axiom,
    ! [X: nat] :
      ( ( power_power_nat @ X @ ( numeral_numeral_nat @ ( bit0 @ ( bit0 @ one ) ) ) )
      = ( times_times_nat @ ( times_times_nat @ ( times_times_nat @ X @ X ) @ X ) @ X ) ) ).

% power4_eq_xxxx
thf(fact_269_power4__eq__xxxx,axiom,
    ! [X: int] :
      ( ( power_power_int @ X @ ( numeral_numeral_nat @ ( bit0 @ ( bit0 @ one ) ) ) )
      = ( times_times_int @ ( times_times_int @ ( times_times_int @ X @ X ) @ X ) @ X ) ) ).

% power4_eq_xxxx
thf(fact_270_one__power2,axiom,
    ( ( power_6500929916544582089ring_a @ one_on3394844594818161742ring_a @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
    = one_on3394844594818161742ring_a ) ).

% one_power2
thf(fact_271_one__power2,axiom,
    ( ( power_6826135765519566523ring_a @ one_on2109788427901206336ring_a @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
    = one_on2109788427901206336ring_a ) ).

% one_power2
thf(fact_272_one__power2,axiom,
    ( ( power_power_nat @ one_one_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
    = one_one_nat ) ).

% one_power2
thf(fact_273_one__power2,axiom,
    ( ( power_power_real @ one_one_real @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
    = one_one_real ) ).

% one_power2
thf(fact_274_one__power2,axiom,
    ( ( power_power_int @ one_one_int @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
    = one_one_int ) ).

% one_power2
thf(fact_275_power__even__eq,axiom,
    ! [A: finite_mod_ring_a,N: nat] :
      ( ( power_6826135765519566523ring_a @ A @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) )
      = ( power_6826135765519566523ring_a @ ( power_6826135765519566523ring_a @ A @ N ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% power_even_eq
thf(fact_276_power__even__eq,axiom,
    ! [A: nat,N: nat] :
      ( ( power_power_nat @ A @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) )
      = ( power_power_nat @ ( power_power_nat @ A @ N ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% power_even_eq
thf(fact_277_power__even__eq,axiom,
    ! [A: real,N: nat] :
      ( ( power_power_real @ A @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) )
      = ( power_power_real @ ( power_power_real @ A @ N ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% power_even_eq
thf(fact_278_power__even__eq,axiom,
    ! [A: int,N: nat] :
      ( ( power_power_int @ A @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) )
      = ( power_power_int @ ( power_power_int @ A @ N ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% power_even_eq
thf(fact_279_nat__1__add__1,axiom,
    ( ( plus_plus_nat @ one_one_nat @ one_one_nat )
    = ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ).

% nat_1_add_1
thf(fact_280_coeff__take__deg,axiom,
    ! [I: nat,F: poly_F3299452240248304339ring_a] :
      ( ( ord_less_nat @ I @ n )
     => ( ( coeff_1607515655354303335ring_a @ ( nTT_ky3493641264504450921ring_a @ n @ F ) @ I )
        = ( coeff_1607515655354303335ring_a @ F @ I ) ) ) ).

% coeff_take_deg
thf(fact_281_coeff__drop__deg,axiom,
    ! [I: nat,F: poly_F3299452240248304339ring_a] :
      ( ( ord_less_nat @ I @ n )
     => ( ( coeff_1607515655354303335ring_a @ ( nTT_ky790528430515779601ring_a @ n @ F ) @ I )
        = ( coeff_1607515655354303335ring_a @ F @ ( plus_plus_nat @ I @ n ) ) ) ) ).

% coeff_drop_deg
thf(fact_282_mult__negacycl,axiom,
    ( times_2095635435063429214r_qr_a
    = ( nTT_ky7844408764402957685conv_a @ n ) ) ).

% mult_negacycl
thf(fact_283_psi__props_I2_J,axiom,
    ! [A: nat] :
      ( ( power_6826135765519566523ring_a @ psi @ ( times_times_nat @ n @ ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ A ) @ one_one_nat ) ) )
      = ( uminus3100561713750211260ring_a @ one_on2109788427901206336ring_a ) ) ).

% psi_props(2)
thf(fact_284_semiring__norm_I2_J,axiom,
    ( ( plus_plus_num @ one @ one )
    = ( bit0 @ one ) ) ).

% semiring_norm(2)
thf(fact_285_deg__mult__of__qr,axiom,
    ! [F: kyber_qr_a,G: kyber_qr_a] : ( ord_less_nat @ ( degree4881254707062955960ring_a @ ( times_3242606764180207630ring_a @ ( kyber_of_qr_a @ F ) @ ( kyber_of_qr_a @ G ) ) ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ n ) ) ).

% deg_mult_of_qr
thf(fact_286_semiring__norm_I6_J,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_num @ ( bit0 @ M ) @ ( bit0 @ N ) )
      = ( bit0 @ ( plus_plus_num @ M @ N ) ) ) ).

% semiring_norm(6)
thf(fact_287_lessThan__iff,axiom,
    ! [I: num,K: num] :
      ( ( member_num @ I @ ( set_ord_lessThan_num @ K ) )
      = ( ord_less_num @ I @ K ) ) ).

% lessThan_iff
thf(fact_288_lessThan__iff,axiom,
    ! [I: real,K: real] :
      ( ( member_real @ I @ ( set_or5984915006950818249n_real @ K ) )
      = ( ord_less_real @ I @ K ) ) ).

% lessThan_iff
thf(fact_289_lessThan__iff,axiom,
    ! [I: int,K: int] :
      ( ( member_int @ I @ ( set_ord_lessThan_int @ K ) )
      = ( ord_less_int @ I @ K ) ) ).

% lessThan_iff
thf(fact_290_lessThan__iff,axiom,
    ! [I: nat,K: nat] :
      ( ( member_nat @ I @ ( set_ord_lessThan_nat @ K ) )
      = ( ord_less_nat @ I @ K ) ) ).

% lessThan_iff
thf(fact_291_coeff__add,axiom,
    ! [P2: poly_nat,Q: poly_nat,N: nat] :
      ( ( coeff_nat @ ( plus_plus_poly_nat @ P2 @ Q ) @ N )
      = ( plus_plus_nat @ ( coeff_nat @ P2 @ N ) @ ( coeff_nat @ Q @ N ) ) ) ).

% coeff_add
thf(fact_292_coeff__add,axiom,
    ! [P2: poly_p2573953413498894561ring_a,Q: poly_p2573953413498894561ring_a,N: nat] :
      ( ( coeff_7919988552178873973ring_a @ ( plus_p7801688469192607896ring_a @ P2 @ Q ) @ N )
      = ( plus_p7290290253215468682ring_a @ ( coeff_7919988552178873973ring_a @ P2 @ N ) @ ( coeff_7919988552178873973ring_a @ Q @ N ) ) ) ).

% coeff_add
thf(fact_293_coeff__add,axiom,
    ! [P2: poly_real,Q: poly_real,N: nat] :
      ( ( coeff_real @ ( plus_plus_poly_real @ P2 @ Q ) @ N )
      = ( plus_plus_real @ ( coeff_real @ P2 @ N ) @ ( coeff_real @ Q @ N ) ) ) ).

% coeff_add
thf(fact_294_coeff__add,axiom,
    ! [P2: poly_int,Q: poly_int,N: nat] :
      ( ( coeff_int @ ( plus_plus_poly_int @ P2 @ Q ) @ N )
      = ( plus_plus_int @ ( coeff_int @ P2 @ N ) @ ( coeff_int @ Q @ N ) ) ) ).

% coeff_add
thf(fact_295_coeff__add,axiom,
    ! [P2: poly_Kyber_qr_a,Q: poly_Kyber_qr_a,N: nat] :
      ( ( coeff_Kyber_qr_a @ ( plus_p7633285101440365034r_qr_a @ P2 @ Q ) @ N )
      = ( plus_plus_Kyber_qr_a @ ( coeff_Kyber_qr_a @ P2 @ N ) @ ( coeff_Kyber_qr_a @ Q @ N ) ) ) ).

% coeff_add
thf(fact_296_coeff__add,axiom,
    ! [P2: poly_F3299452240248304339ring_a,Q: poly_F3299452240248304339ring_a,N: nat] :
      ( ( coeff_1607515655354303335ring_a @ ( plus_p7290290253215468682ring_a @ P2 @ Q ) @ N )
      = ( plus_p6165643967897163644ring_a @ ( coeff_1607515655354303335ring_a @ P2 @ N ) @ ( coeff_1607515655354303335ring_a @ Q @ N ) ) ) ).

% coeff_add
thf(fact_297_nat__add__1__add__1,axiom,
    ! [N: nat] :
      ( ( plus_plus_nat @ ( plus_plus_nat @ N @ one_one_nat ) @ one_one_nat )
      = ( plus_plus_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% nat_add_1_add_1
thf(fact_298_semiring__norm_I83_J,axiom,
    ! [N: num] :
      ( one
     != ( bit0 @ N ) ) ).

% semiring_norm(83)
thf(fact_299_semiring__norm_I85_J,axiom,
    ! [M: num] :
      ( ( bit0 @ M )
     != one ) ).

% semiring_norm(85)
thf(fact_300_semiring__norm_I87_J,axiom,
    ! [M: num,N: num] :
      ( ( ( bit0 @ M )
        = ( bit0 @ N ) )
      = ( M = N ) ) ).

% semiring_norm(87)
thf(fact_301_lessThan__eq__iff,axiom,
    ! [X: nat,Y: nat] :
      ( ( ( set_ord_lessThan_nat @ X )
        = ( set_ord_lessThan_nat @ Y ) )
      = ( X = Y ) ) ).

% lessThan_eq_iff
thf(fact_302_degree__take__n,axiom,
    ! [F: poly_F3299452240248304339ring_a] : ( ord_less_nat @ ( degree4881254707062955960ring_a @ ( nTT_ky3493641264504450921ring_a @ n @ F ) ) @ n ) ).

% degree_take_n
thf(fact_303_psi__properties_I2_J,axiom,
    ( ( power_6826135765519566523ring_a @ psi @ n )
    = ( uminus3100561713750211260ring_a @ one_on2109788427901206336ring_a ) ) ).

% psi_properties(2)
thf(fact_304_neg__numeral__eq__iff,axiom,
    ! [M: num,N: num] :
      ( ( ( uminus_uminus_int @ ( numeral_numeral_int @ M ) )
        = ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( M = N ) ) ).

% neg_numeral_eq_iff
thf(fact_305_neg__numeral__eq__iff,axiom,
    ! [M: num,N: num] :
      ( ( ( uminus_uminus_real @ ( numeral_numeral_real @ M ) )
        = ( uminus_uminus_real @ ( numeral_numeral_real @ N ) ) )
      = ( M = N ) ) ).

% neg_numeral_eq_iff
thf(fact_306_coeff__minus,axiom,
    ! [P2: poly_F3299452240248304339ring_a,N: nat] :
      ( ( coeff_1607515655354303335ring_a @ ( uminus6490753114102738890ring_a @ P2 ) @ N )
      = ( uminus3100561713750211260ring_a @ ( coeff_1607515655354303335ring_a @ P2 @ N ) ) ) ).

% coeff_minus
thf(fact_307_coeff__minus,axiom,
    ! [P2: poly_real,N: nat] :
      ( ( coeff_real @ ( uminus3130843302823231997y_real @ P2 ) @ N )
      = ( uminus_uminus_real @ ( coeff_real @ P2 @ N ) ) ) ).

% coeff_minus
thf(fact_308_degree__drop__2n,axiom,
    ! [F: poly_F3299452240248304339ring_a] :
      ( ( ord_less_nat @ ( degree4881254707062955960ring_a @ F ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ n ) )
     => ( ord_less_nat @ ( degree4881254707062955960ring_a @ ( nTT_ky790528430515779601ring_a @ n @ F ) ) @ n ) ) ).

% degree_drop_2n
thf(fact_309_semiring__norm_I13_J,axiom,
    ! [M: num,N: num] :
      ( ( times_times_num @ ( bit0 @ M ) @ ( bit0 @ N ) )
      = ( bit0 @ ( bit0 @ ( times_times_num @ M @ N ) ) ) ) ).

% semiring_norm(13)
thf(fact_310_semiring__norm_I12_J,axiom,
    ! [N: num] :
      ( ( times_times_num @ one @ N )
      = N ) ).

% semiring_norm(12)
thf(fact_311_semiring__norm_I11_J,axiom,
    ! [M: num] :
      ( ( times_times_num @ M @ one )
      = M ) ).

% semiring_norm(11)
thf(fact_312_semiring__norm_I78_J,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_num @ ( bit0 @ M ) @ ( bit0 @ N ) )
      = ( ord_less_num @ M @ N ) ) ).

% semiring_norm(78)
thf(fact_313_semiring__norm_I75_J,axiom,
    ! [M: num] :
      ~ ( ord_less_num @ M @ one ) ).

% semiring_norm(75)
thf(fact_314_mult__minus1,axiom,
    ! [Z: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ ( uminus6490753114102738890ring_a @ one_on3394844594818161742ring_a ) @ Z )
      = ( uminus6490753114102738890ring_a @ Z ) ) ).

% mult_minus1
thf(fact_315_mult__minus1,axiom,
    ! [Z: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ ( uminus3675112017196868514r_qr_a @ one_one_Kyber_qr_a ) @ Z )
      = ( uminus3675112017196868514r_qr_a @ Z ) ) ).

% mult_minus1
thf(fact_316_mult__minus1,axiom,
    ! [Z: int] :
      ( ( times_times_int @ ( uminus_uminus_int @ one_one_int ) @ Z )
      = ( uminus_uminus_int @ Z ) ) ).

% mult_minus1
thf(fact_317_mult__minus1,axiom,
    ! [Z: finite_mod_ring_a] :
      ( ( times_5121417576591743744ring_a @ ( uminus3100561713750211260ring_a @ one_on2109788427901206336ring_a ) @ Z )
      = ( uminus3100561713750211260ring_a @ Z ) ) ).

% mult_minus1
thf(fact_318_mult__minus1,axiom,
    ! [Z: real] :
      ( ( times_times_real @ ( uminus_uminus_real @ one_one_real ) @ Z )
      = ( uminus_uminus_real @ Z ) ) ).

% mult_minus1
thf(fact_319_mult__minus1__right,axiom,
    ! [Z: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ Z @ ( uminus6490753114102738890ring_a @ one_on3394844594818161742ring_a ) )
      = ( uminus6490753114102738890ring_a @ Z ) ) ).

% mult_minus1_right
thf(fact_320_mult__minus1__right,axiom,
    ! [Z: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ Z @ ( uminus3675112017196868514r_qr_a @ one_one_Kyber_qr_a ) )
      = ( uminus3675112017196868514r_qr_a @ Z ) ) ).

% mult_minus1_right
thf(fact_321_mult__minus1__right,axiom,
    ! [Z: int] :
      ( ( times_times_int @ Z @ ( uminus_uminus_int @ one_one_int ) )
      = ( uminus_uminus_int @ Z ) ) ).

% mult_minus1_right
thf(fact_322_mult__minus1__right,axiom,
    ! [Z: finite_mod_ring_a] :
      ( ( times_5121417576591743744ring_a @ Z @ ( uminus3100561713750211260ring_a @ one_on2109788427901206336ring_a ) )
      = ( uminus3100561713750211260ring_a @ Z ) ) ).

% mult_minus1_right
thf(fact_323_mult__minus1__right,axiom,
    ! [Z: real] :
      ( ( times_times_real @ Z @ ( uminus_uminus_real @ one_one_real ) )
      = ( uminus_uminus_real @ Z ) ) ).

% mult_minus1_right
thf(fact_324_add__neg__numeral__simps_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( uminus_uminus_int @ ( plus_plus_int @ ( numeral_numeral_int @ M ) @ ( numeral_numeral_int @ N ) ) ) ) ).

% add_neg_numeral_simps(3)
thf(fact_325_add__neg__numeral__simps_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( plus_p7290290253215468682ring_a @ ( uminus6490753114102738890ring_a @ ( numera2966756627528668408ring_a @ M ) ) @ ( uminus6490753114102738890ring_a @ ( numera2966756627528668408ring_a @ N ) ) )
      = ( uminus6490753114102738890ring_a @ ( plus_p7290290253215468682ring_a @ ( numera2966756627528668408ring_a @ M ) @ ( numera2966756627528668408ring_a @ N ) ) ) ) ).

% add_neg_numeral_simps(3)
thf(fact_326_add__neg__numeral__simps_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_Kyber_qr_a @ ( uminus3675112017196868514r_qr_a @ ( numera2156158589294619636r_qr_a @ M ) ) @ ( uminus3675112017196868514r_qr_a @ ( numera2156158589294619636r_qr_a @ N ) ) )
      = ( uminus3675112017196868514r_qr_a @ ( plus_plus_Kyber_qr_a @ ( numera2156158589294619636r_qr_a @ M ) @ ( numera2156158589294619636r_qr_a @ N ) ) ) ) ).

% add_neg_numeral_simps(3)
thf(fact_327_add__neg__numeral__simps_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( plus_p6165643967897163644ring_a @ ( uminus3100561713750211260ring_a @ ( numera7938180240421336042ring_a @ M ) ) @ ( uminus3100561713750211260ring_a @ ( numera7938180240421336042ring_a @ N ) ) )
      = ( uminus3100561713750211260ring_a @ ( plus_p6165643967897163644ring_a @ ( numera7938180240421336042ring_a @ M ) @ ( numera7938180240421336042ring_a @ N ) ) ) ) ).

% add_neg_numeral_simps(3)
thf(fact_328_add__neg__numeral__simps_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( plus_plus_real @ ( uminus_uminus_real @ ( numeral_numeral_real @ M ) ) @ ( uminus_uminus_real @ ( numeral_numeral_real @ N ) ) )
      = ( uminus_uminus_real @ ( plus_plus_real @ ( numeral_numeral_real @ M ) @ ( numeral_numeral_real @ N ) ) ) ) ).

% add_neg_numeral_simps(3)
thf(fact_329_lead__coeff__1,axiom,
    ( ( coeff_nat @ one_one_poly_nat @ ( degree_nat @ one_one_poly_nat ) )
    = one_one_nat ) ).

% lead_coeff_1
thf(fact_330_lead__coeff__1,axiom,
    ( ( coeff_real @ one_one_poly_real @ ( degree_real @ one_one_poly_real ) )
    = one_one_real ) ).

% lead_coeff_1
thf(fact_331_lead__coeff__1,axiom,
    ( ( coeff_int @ one_one_poly_int @ ( degree_int @ one_one_poly_int ) )
    = one_one_int ) ).

% lead_coeff_1
thf(fact_332_lead__coeff__1,axiom,
    ( ( coeff_7919988552178873973ring_a @ one_on1339691373306511452ring_a @ ( degree617341119394917574ring_a @ one_on1339691373306511452ring_a ) )
    = one_on3394844594818161742ring_a ) ).

% lead_coeff_1
thf(fact_333_lead__coeff__1,axiom,
    ( ( coeff_1607515655354303335ring_a @ one_on3394844594818161742ring_a @ ( degree4881254707062955960ring_a @ one_on3394844594818161742ring_a ) )
    = one_on2109788427901206336ring_a ) ).

% lead_coeff_1
thf(fact_334_lead__coeff__numeral,axiom,
    ! [N: num] :
      ( ( coeff_nat @ ( numera4519488898025385331ly_nat @ N ) @ ( degree_nat @ ( numera4519488898025385331ly_nat @ N ) ) )
      = ( numeral_numeral_nat @ N ) ) ).

% lead_coeff_numeral
thf(fact_335_lead__coeff__numeral,axiom,
    ! [N: num] :
      ( ( coeff_real @ ( numera5079969641567462991y_real @ N ) @ ( degree_real @ ( numera5079969641567462991y_real @ N ) ) )
      = ( numeral_numeral_real @ N ) ) ).

% lead_coeff_numeral
thf(fact_336_lead__coeff__numeral,axiom,
    ! [N: num] :
      ( ( coeff_int @ ( numera341637878516188623ly_int @ N ) @ ( degree_int @ ( numera341637878516188623ly_int @ N ) ) )
      = ( numeral_numeral_int @ N ) ) ).

% lead_coeff_numeral
thf(fact_337_lead__coeff__numeral,axiom,
    ! [N: num] :
      ( ( coeff_7919988552178873973ring_a @ ( numera4795350371144744198ring_a @ N ) @ ( degree617341119394917574ring_a @ ( numera4795350371144744198ring_a @ N ) ) )
      = ( numera2966756627528668408ring_a @ N ) ) ).

% lead_coeff_numeral
thf(fact_338_lead__coeff__numeral,axiom,
    ! [N: num] :
      ( ( coeff_Kyber_qr_a @ ( numera7481309076237859580r_qr_a @ N ) @ ( degree_Kyber_qr_a @ ( numera7481309076237859580r_qr_a @ N ) ) )
      = ( numera2156158589294619636r_qr_a @ N ) ) ).

% lead_coeff_numeral
thf(fact_339_lead__coeff__numeral,axiom,
    ! [N: num] :
      ( ( coeff_1607515655354303335ring_a @ ( numera2966756627528668408ring_a @ N ) @ ( degree4881254707062955960ring_a @ ( numera2966756627528668408ring_a @ N ) ) )
      = ( numera7938180240421336042ring_a @ N ) ) ).

% lead_coeff_numeral
thf(fact_340_semiring__norm_I76_J,axiom,
    ! [N: num] : ( ord_less_num @ one @ ( bit0 @ N ) ) ).

% semiring_norm(76)
thf(fact_341_minus__one__mult__self,axiom,
    ! [N: nat] :
      ( ( times_3242606764180207630ring_a @ ( power_6500929916544582089ring_a @ ( uminus6490753114102738890ring_a @ one_on3394844594818161742ring_a ) @ N ) @ ( power_6500929916544582089ring_a @ ( uminus6490753114102738890ring_a @ one_on3394844594818161742ring_a ) @ N ) )
      = one_on3394844594818161742ring_a ) ).

% minus_one_mult_self
thf(fact_342_minus__one__mult__self,axiom,
    ! [N: nat] :
      ( ( times_2095635435063429214r_qr_a @ ( power_5122640293590465123r_qr_a @ ( uminus3675112017196868514r_qr_a @ one_one_Kyber_qr_a ) @ N ) @ ( power_5122640293590465123r_qr_a @ ( uminus3675112017196868514r_qr_a @ one_one_Kyber_qr_a ) @ N ) )
      = one_one_Kyber_qr_a ) ).

% minus_one_mult_self
thf(fact_343_minus__one__mult__self,axiom,
    ! [N: nat] :
      ( ( times_times_int @ ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ N ) @ ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ N ) )
      = one_one_int ) ).

% minus_one_mult_self
thf(fact_344_minus__one__mult__self,axiom,
    ! [N: nat] :
      ( ( times_5121417576591743744ring_a @ ( power_6826135765519566523ring_a @ ( uminus3100561713750211260ring_a @ one_on2109788427901206336ring_a ) @ N ) @ ( power_6826135765519566523ring_a @ ( uminus3100561713750211260ring_a @ one_on2109788427901206336ring_a ) @ N ) )
      = one_on2109788427901206336ring_a ) ).

% minus_one_mult_self
thf(fact_345_minus__one__mult__self,axiom,
    ! [N: nat] :
      ( ( times_times_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ N ) @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ N ) )
      = one_one_real ) ).

% minus_one_mult_self
thf(fact_346_left__minus__one__mult__self,axiom,
    ! [N: nat,A: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ ( power_6500929916544582089ring_a @ ( uminus6490753114102738890ring_a @ one_on3394844594818161742ring_a ) @ N ) @ ( times_3242606764180207630ring_a @ ( power_6500929916544582089ring_a @ ( uminus6490753114102738890ring_a @ one_on3394844594818161742ring_a ) @ N ) @ A ) )
      = A ) ).

% left_minus_one_mult_self
thf(fact_347_left__minus__one__mult__self,axiom,
    ! [N: nat,A: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ ( power_5122640293590465123r_qr_a @ ( uminus3675112017196868514r_qr_a @ one_one_Kyber_qr_a ) @ N ) @ ( times_2095635435063429214r_qr_a @ ( power_5122640293590465123r_qr_a @ ( uminus3675112017196868514r_qr_a @ one_one_Kyber_qr_a ) @ N ) @ A ) )
      = A ) ).

% left_minus_one_mult_self
thf(fact_348_left__minus__one__mult__self,axiom,
    ! [N: nat,A: int] :
      ( ( times_times_int @ ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ N ) @ ( times_times_int @ ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ N ) @ A ) )
      = A ) ).

% left_minus_one_mult_self
thf(fact_349_left__minus__one__mult__self,axiom,
    ! [N: nat,A: finite_mod_ring_a] :
      ( ( times_5121417576591743744ring_a @ ( power_6826135765519566523ring_a @ ( uminus3100561713750211260ring_a @ one_on2109788427901206336ring_a ) @ N ) @ ( times_5121417576591743744ring_a @ ( power_6826135765519566523ring_a @ ( uminus3100561713750211260ring_a @ one_on2109788427901206336ring_a ) @ N ) @ A ) )
      = A ) ).

% left_minus_one_mult_self
thf(fact_350_left__minus__one__mult__self,axiom,
    ! [N: nat,A: real] :
      ( ( times_times_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ N ) @ ( times_times_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ N ) @ A ) )
      = A ) ).

% left_minus_one_mult_self
thf(fact_351_neg__one__eq__numeral__iff,axiom,
    ! [N: num] :
      ( ( ( uminus_uminus_int @ one_one_int )
        = ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( N = one ) ) ).

% neg_one_eq_numeral_iff
thf(fact_352_neg__one__eq__numeral__iff,axiom,
    ! [N: num] :
      ( ( ( uminus_uminus_real @ one_one_real )
        = ( uminus_uminus_real @ ( numeral_numeral_real @ N ) ) )
      = ( N = one ) ) ).

% neg_one_eq_numeral_iff
thf(fact_353_numeral__eq__neg__one__iff,axiom,
    ! [N: num] :
      ( ( ( uminus_uminus_int @ ( numeral_numeral_int @ N ) )
        = ( uminus_uminus_int @ one_one_int ) )
      = ( N = one ) ) ).

% numeral_eq_neg_one_iff
thf(fact_354_numeral__eq__neg__one__iff,axiom,
    ! [N: num] :
      ( ( ( uminus_uminus_real @ ( numeral_numeral_real @ N ) )
        = ( uminus_uminus_real @ one_one_real ) )
      = ( N = one ) ) ).

% numeral_eq_neg_one_iff
thf(fact_355_semiring__norm_I167_J,axiom,
    ! [V: num,W: num,Y: int] :
      ( ( plus_plus_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ V ) ) @ ( plus_plus_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ W ) ) @ Y ) )
      = ( plus_plus_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( plus_plus_num @ V @ W ) ) ) @ Y ) ) ).

% semiring_norm(167)
thf(fact_356_semiring__norm_I167_J,axiom,
    ! [V: num,W: num,Y: poly_F3299452240248304339ring_a] :
      ( ( plus_p7290290253215468682ring_a @ ( uminus6490753114102738890ring_a @ ( numera2966756627528668408ring_a @ V ) ) @ ( plus_p7290290253215468682ring_a @ ( uminus6490753114102738890ring_a @ ( numera2966756627528668408ring_a @ W ) ) @ Y ) )
      = ( plus_p7290290253215468682ring_a @ ( uminus6490753114102738890ring_a @ ( numera2966756627528668408ring_a @ ( plus_plus_num @ V @ W ) ) ) @ Y ) ) ).

% semiring_norm(167)
thf(fact_357_semiring__norm_I167_J,axiom,
    ! [V: num,W: num,Y: kyber_qr_a] :
      ( ( plus_plus_Kyber_qr_a @ ( uminus3675112017196868514r_qr_a @ ( numera2156158589294619636r_qr_a @ V ) ) @ ( plus_plus_Kyber_qr_a @ ( uminus3675112017196868514r_qr_a @ ( numera2156158589294619636r_qr_a @ W ) ) @ Y ) )
      = ( plus_plus_Kyber_qr_a @ ( uminus3675112017196868514r_qr_a @ ( numera2156158589294619636r_qr_a @ ( plus_plus_num @ V @ W ) ) ) @ Y ) ) ).

% semiring_norm(167)
thf(fact_358_semiring__norm_I167_J,axiom,
    ! [V: num,W: num,Y: finite_mod_ring_a] :
      ( ( plus_p6165643967897163644ring_a @ ( uminus3100561713750211260ring_a @ ( numera7938180240421336042ring_a @ V ) ) @ ( plus_p6165643967897163644ring_a @ ( uminus3100561713750211260ring_a @ ( numera7938180240421336042ring_a @ W ) ) @ Y ) )
      = ( plus_p6165643967897163644ring_a @ ( uminus3100561713750211260ring_a @ ( numera7938180240421336042ring_a @ ( plus_plus_num @ V @ W ) ) ) @ Y ) ) ).

% semiring_norm(167)
thf(fact_359_semiring__norm_I167_J,axiom,
    ! [V: num,W: num,Y: real] :
      ( ( plus_plus_real @ ( uminus_uminus_real @ ( numeral_numeral_real @ V ) ) @ ( plus_plus_real @ ( uminus_uminus_real @ ( numeral_numeral_real @ W ) ) @ Y ) )
      = ( plus_plus_real @ ( uminus_uminus_real @ ( numeral_numeral_real @ ( plus_plus_num @ V @ W ) ) ) @ Y ) ) ).

% semiring_norm(167)
thf(fact_360_semiring__norm_I171_J,axiom,
    ! [V: num,W: num,Y: int] :
      ( ( times_times_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ V ) ) @ ( times_times_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ W ) ) @ Y ) )
      = ( times_times_int @ ( numeral_numeral_int @ ( times_times_num @ V @ W ) ) @ Y ) ) ).

% semiring_norm(171)
thf(fact_361_semiring__norm_I171_J,axiom,
    ! [V: num,W: num,Y: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ ( uminus6490753114102738890ring_a @ ( numera2966756627528668408ring_a @ V ) ) @ ( times_3242606764180207630ring_a @ ( uminus6490753114102738890ring_a @ ( numera2966756627528668408ring_a @ W ) ) @ Y ) )
      = ( times_3242606764180207630ring_a @ ( numera2966756627528668408ring_a @ ( times_times_num @ V @ W ) ) @ Y ) ) ).

% semiring_norm(171)
thf(fact_362_semiring__norm_I171_J,axiom,
    ! [V: num,W: num,Y: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ ( uminus3675112017196868514r_qr_a @ ( numera2156158589294619636r_qr_a @ V ) ) @ ( times_2095635435063429214r_qr_a @ ( uminus3675112017196868514r_qr_a @ ( numera2156158589294619636r_qr_a @ W ) ) @ Y ) )
      = ( times_2095635435063429214r_qr_a @ ( numera2156158589294619636r_qr_a @ ( times_times_num @ V @ W ) ) @ Y ) ) ).

% semiring_norm(171)
thf(fact_363_semiring__norm_I171_J,axiom,
    ! [V: num,W: num,Y: finite_mod_ring_a] :
      ( ( times_5121417576591743744ring_a @ ( uminus3100561713750211260ring_a @ ( numera7938180240421336042ring_a @ V ) ) @ ( times_5121417576591743744ring_a @ ( uminus3100561713750211260ring_a @ ( numera7938180240421336042ring_a @ W ) ) @ Y ) )
      = ( times_5121417576591743744ring_a @ ( numera7938180240421336042ring_a @ ( times_times_num @ V @ W ) ) @ Y ) ) ).

% semiring_norm(171)
thf(fact_364_semiring__norm_I171_J,axiom,
    ! [V: num,W: num,Y: real] :
      ( ( times_times_real @ ( uminus_uminus_real @ ( numeral_numeral_real @ V ) ) @ ( times_times_real @ ( uminus_uminus_real @ ( numeral_numeral_real @ W ) ) @ Y ) )
      = ( times_times_real @ ( numeral_numeral_real @ ( times_times_num @ V @ W ) ) @ Y ) ) ).

% semiring_norm(171)
thf(fact_365_semiring__norm_I170_J,axiom,
    ! [V: num,W: num,Y: int] :
      ( ( times_times_int @ ( numeral_numeral_int @ V ) @ ( times_times_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ W ) ) @ Y ) )
      = ( times_times_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( times_times_num @ V @ W ) ) ) @ Y ) ) ).

% semiring_norm(170)
thf(fact_366_semiring__norm_I170_J,axiom,
    ! [V: num,W: num,Y: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ ( numera2966756627528668408ring_a @ V ) @ ( times_3242606764180207630ring_a @ ( uminus6490753114102738890ring_a @ ( numera2966756627528668408ring_a @ W ) ) @ Y ) )
      = ( times_3242606764180207630ring_a @ ( uminus6490753114102738890ring_a @ ( numera2966756627528668408ring_a @ ( times_times_num @ V @ W ) ) ) @ Y ) ) ).

% semiring_norm(170)
thf(fact_367_semiring__norm_I170_J,axiom,
    ! [V: num,W: num,Y: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ ( numera2156158589294619636r_qr_a @ V ) @ ( times_2095635435063429214r_qr_a @ ( uminus3675112017196868514r_qr_a @ ( numera2156158589294619636r_qr_a @ W ) ) @ Y ) )
      = ( times_2095635435063429214r_qr_a @ ( uminus3675112017196868514r_qr_a @ ( numera2156158589294619636r_qr_a @ ( times_times_num @ V @ W ) ) ) @ Y ) ) ).

% semiring_norm(170)
thf(fact_368_semiring__norm_I170_J,axiom,
    ! [V: num,W: num,Y: finite_mod_ring_a] :
      ( ( times_5121417576591743744ring_a @ ( numera7938180240421336042ring_a @ V ) @ ( times_5121417576591743744ring_a @ ( uminus3100561713750211260ring_a @ ( numera7938180240421336042ring_a @ W ) ) @ Y ) )
      = ( times_5121417576591743744ring_a @ ( uminus3100561713750211260ring_a @ ( numera7938180240421336042ring_a @ ( times_times_num @ V @ W ) ) ) @ Y ) ) ).

% semiring_norm(170)
thf(fact_369_semiring__norm_I170_J,axiom,
    ! [V: num,W: num,Y: real] :
      ( ( times_times_real @ ( numeral_numeral_real @ V ) @ ( times_times_real @ ( uminus_uminus_real @ ( numeral_numeral_real @ W ) ) @ Y ) )
      = ( times_times_real @ ( uminus_uminus_real @ ( numeral_numeral_real @ ( times_times_num @ V @ W ) ) ) @ Y ) ) ).

% semiring_norm(170)
thf(fact_370_semiring__norm_I169_J,axiom,
    ! [V: num,W: num,Y: int] :
      ( ( times_times_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ V ) ) @ ( times_times_int @ ( numeral_numeral_int @ W ) @ Y ) )
      = ( times_times_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ ( times_times_num @ V @ W ) ) ) @ Y ) ) ).

% semiring_norm(169)
thf(fact_371_semiring__norm_I169_J,axiom,
    ! [V: num,W: num,Y: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ ( uminus6490753114102738890ring_a @ ( numera2966756627528668408ring_a @ V ) ) @ ( times_3242606764180207630ring_a @ ( numera2966756627528668408ring_a @ W ) @ Y ) )
      = ( times_3242606764180207630ring_a @ ( uminus6490753114102738890ring_a @ ( numera2966756627528668408ring_a @ ( times_times_num @ V @ W ) ) ) @ Y ) ) ).

% semiring_norm(169)
thf(fact_372_semiring__norm_I169_J,axiom,
    ! [V: num,W: num,Y: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ ( uminus3675112017196868514r_qr_a @ ( numera2156158589294619636r_qr_a @ V ) ) @ ( times_2095635435063429214r_qr_a @ ( numera2156158589294619636r_qr_a @ W ) @ Y ) )
      = ( times_2095635435063429214r_qr_a @ ( uminus3675112017196868514r_qr_a @ ( numera2156158589294619636r_qr_a @ ( times_times_num @ V @ W ) ) ) @ Y ) ) ).

% semiring_norm(169)
thf(fact_373_semiring__norm_I169_J,axiom,
    ! [V: num,W: num,Y: finite_mod_ring_a] :
      ( ( times_5121417576591743744ring_a @ ( uminus3100561713750211260ring_a @ ( numera7938180240421336042ring_a @ V ) ) @ ( times_5121417576591743744ring_a @ ( numera7938180240421336042ring_a @ W ) @ Y ) )
      = ( times_5121417576591743744ring_a @ ( uminus3100561713750211260ring_a @ ( numera7938180240421336042ring_a @ ( times_times_num @ V @ W ) ) ) @ Y ) ) ).

% semiring_norm(169)
thf(fact_374_semiring__norm_I169_J,axiom,
    ! [V: num,W: num,Y: real] :
      ( ( times_times_real @ ( uminus_uminus_real @ ( numeral_numeral_real @ V ) ) @ ( times_times_real @ ( numeral_numeral_real @ W ) @ Y ) )
      = ( times_times_real @ ( uminus_uminus_real @ ( numeral_numeral_real @ ( times_times_num @ V @ W ) ) ) @ Y ) ) ).

% semiring_norm(169)
thf(fact_375_mult__neg__numeral__simps_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( times_times_int @ ( numeral_numeral_int @ M ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( uminus_uminus_int @ ( numeral_numeral_int @ ( times_times_num @ M @ N ) ) ) ) ).

% mult_neg_numeral_simps(3)
thf(fact_376_mult__neg__numeral__simps_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( times_3242606764180207630ring_a @ ( numera2966756627528668408ring_a @ M ) @ ( uminus6490753114102738890ring_a @ ( numera2966756627528668408ring_a @ N ) ) )
      = ( uminus6490753114102738890ring_a @ ( numera2966756627528668408ring_a @ ( times_times_num @ M @ N ) ) ) ) ).

% mult_neg_numeral_simps(3)
thf(fact_377_mult__neg__numeral__simps_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( times_2095635435063429214r_qr_a @ ( numera2156158589294619636r_qr_a @ M ) @ ( uminus3675112017196868514r_qr_a @ ( numera2156158589294619636r_qr_a @ N ) ) )
      = ( uminus3675112017196868514r_qr_a @ ( numera2156158589294619636r_qr_a @ ( times_times_num @ M @ N ) ) ) ) ).

% mult_neg_numeral_simps(3)
thf(fact_378_mult__neg__numeral__simps_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( times_5121417576591743744ring_a @ ( numera7938180240421336042ring_a @ M ) @ ( uminus3100561713750211260ring_a @ ( numera7938180240421336042ring_a @ N ) ) )
      = ( uminus3100561713750211260ring_a @ ( numera7938180240421336042ring_a @ ( times_times_num @ M @ N ) ) ) ) ).

% mult_neg_numeral_simps(3)
thf(fact_379_mult__neg__numeral__simps_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( times_times_real @ ( numeral_numeral_real @ M ) @ ( uminus_uminus_real @ ( numeral_numeral_real @ N ) ) )
      = ( uminus_uminus_real @ ( numeral_numeral_real @ ( times_times_num @ M @ N ) ) ) ) ).

% mult_neg_numeral_simps(3)
thf(fact_380_mult__neg__numeral__simps_I2_J,axiom,
    ! [M: num,N: num] :
      ( ( times_times_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( numeral_numeral_int @ N ) )
      = ( uminus_uminus_int @ ( numeral_numeral_int @ ( times_times_num @ M @ N ) ) ) ) ).

% mult_neg_numeral_simps(2)
thf(fact_381_mult__neg__numeral__simps_I2_J,axiom,
    ! [M: num,N: num] :
      ( ( times_3242606764180207630ring_a @ ( uminus6490753114102738890ring_a @ ( numera2966756627528668408ring_a @ M ) ) @ ( numera2966756627528668408ring_a @ N ) )
      = ( uminus6490753114102738890ring_a @ ( numera2966756627528668408ring_a @ ( times_times_num @ M @ N ) ) ) ) ).

% mult_neg_numeral_simps(2)
thf(fact_382_mult__neg__numeral__simps_I2_J,axiom,
    ! [M: num,N: num] :
      ( ( times_2095635435063429214r_qr_a @ ( uminus3675112017196868514r_qr_a @ ( numera2156158589294619636r_qr_a @ M ) ) @ ( numera2156158589294619636r_qr_a @ N ) )
      = ( uminus3675112017196868514r_qr_a @ ( numera2156158589294619636r_qr_a @ ( times_times_num @ M @ N ) ) ) ) ).

% mult_neg_numeral_simps(2)
thf(fact_383_mult__neg__numeral__simps_I2_J,axiom,
    ! [M: num,N: num] :
      ( ( times_5121417576591743744ring_a @ ( uminus3100561713750211260ring_a @ ( numera7938180240421336042ring_a @ M ) ) @ ( numera7938180240421336042ring_a @ N ) )
      = ( uminus3100561713750211260ring_a @ ( numera7938180240421336042ring_a @ ( times_times_num @ M @ N ) ) ) ) ).

% mult_neg_numeral_simps(2)
thf(fact_384_mult__neg__numeral__simps_I2_J,axiom,
    ! [M: num,N: num] :
      ( ( times_times_real @ ( uminus_uminus_real @ ( numeral_numeral_real @ M ) ) @ ( numeral_numeral_real @ N ) )
      = ( uminus_uminus_real @ ( numeral_numeral_real @ ( times_times_num @ M @ N ) ) ) ) ).

% mult_neg_numeral_simps(2)
thf(fact_385_mult__neg__numeral__simps_I1_J,axiom,
    ! [M: num,N: num] :
      ( ( times_times_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( numeral_numeral_int @ ( times_times_num @ M @ N ) ) ) ).

% mult_neg_numeral_simps(1)
thf(fact_386_mult__neg__numeral__simps_I1_J,axiom,
    ! [M: num,N: num] :
      ( ( times_3242606764180207630ring_a @ ( uminus6490753114102738890ring_a @ ( numera2966756627528668408ring_a @ M ) ) @ ( uminus6490753114102738890ring_a @ ( numera2966756627528668408ring_a @ N ) ) )
      = ( numera2966756627528668408ring_a @ ( times_times_num @ M @ N ) ) ) ).

% mult_neg_numeral_simps(1)
thf(fact_387_mult__neg__numeral__simps_I1_J,axiom,
    ! [M: num,N: num] :
      ( ( times_2095635435063429214r_qr_a @ ( uminus3675112017196868514r_qr_a @ ( numera2156158589294619636r_qr_a @ M ) ) @ ( uminus3675112017196868514r_qr_a @ ( numera2156158589294619636r_qr_a @ N ) ) )
      = ( numera2156158589294619636r_qr_a @ ( times_times_num @ M @ N ) ) ) ).

% mult_neg_numeral_simps(1)
thf(fact_388_mult__neg__numeral__simps_I1_J,axiom,
    ! [M: num,N: num] :
      ( ( times_5121417576591743744ring_a @ ( uminus3100561713750211260ring_a @ ( numera7938180240421336042ring_a @ M ) ) @ ( uminus3100561713750211260ring_a @ ( numera7938180240421336042ring_a @ N ) ) )
      = ( numera7938180240421336042ring_a @ ( times_times_num @ M @ N ) ) ) ).

% mult_neg_numeral_simps(1)
thf(fact_389_mult__neg__numeral__simps_I1_J,axiom,
    ! [M: num,N: num] :
      ( ( times_times_real @ ( uminus_uminus_real @ ( numeral_numeral_real @ M ) ) @ ( uminus_uminus_real @ ( numeral_numeral_real @ N ) ) )
      = ( numeral_numeral_real @ ( times_times_num @ M @ N ) ) ) ).

% mult_neg_numeral_simps(1)
thf(fact_390_neg__numeral__less__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( ord_less_num @ N @ M ) ) ).

% neg_numeral_less_iff
thf(fact_391_neg__numeral__less__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_real @ ( uminus_uminus_real @ ( numeral_numeral_real @ M ) ) @ ( uminus_uminus_real @ ( numeral_numeral_real @ N ) ) )
      = ( ord_less_num @ N @ M ) ) ).

% neg_numeral_less_iff
thf(fact_392_neg__numeral__less__neg__one__iff,axiom,
    ! [M: num] :
      ( ( ord_less_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( uminus_uminus_int @ one_one_int ) )
      = ( M != one ) ) ).

% neg_numeral_less_neg_one_iff
thf(fact_393_neg__numeral__less__neg__one__iff,axiom,
    ! [M: num] :
      ( ( ord_less_real @ ( uminus_uminus_real @ ( numeral_numeral_real @ M ) ) @ ( uminus_uminus_real @ one_one_real ) )
      = ( M != one ) ) ).

% neg_numeral_less_neg_one_iff
thf(fact_394_power2__minus,axiom,
    ! [A: int] :
      ( ( power_power_int @ ( uminus_uminus_int @ A ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( power_power_int @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% power2_minus
thf(fact_395_power2__minus,axiom,
    ! [A: finite_mod_ring_a] :
      ( ( power_6826135765519566523ring_a @ ( uminus3100561713750211260ring_a @ A ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( power_6826135765519566523ring_a @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% power2_minus
thf(fact_396_power2__minus,axiom,
    ! [A: real] :
      ( ( power_power_real @ ( uminus_uminus_real @ A ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
      = ( power_power_real @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% power2_minus
thf(fact_397_add__neg__numeral__special_I9_J,axiom,
    ( ( plus_plus_int @ ( uminus_uminus_int @ one_one_int ) @ ( uminus_uminus_int @ one_one_int ) )
    = ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ).

% add_neg_numeral_special(9)
thf(fact_398_add__neg__numeral__special_I9_J,axiom,
    ( ( plus_p7290290253215468682ring_a @ ( uminus6490753114102738890ring_a @ one_on3394844594818161742ring_a ) @ ( uminus6490753114102738890ring_a @ one_on3394844594818161742ring_a ) )
    = ( uminus6490753114102738890ring_a @ ( numera2966756627528668408ring_a @ ( bit0 @ one ) ) ) ) ).

% add_neg_numeral_special(9)
thf(fact_399_add__neg__numeral__special_I9_J,axiom,
    ( ( plus_plus_Kyber_qr_a @ ( uminus3675112017196868514r_qr_a @ one_one_Kyber_qr_a ) @ ( uminus3675112017196868514r_qr_a @ one_one_Kyber_qr_a ) )
    = ( uminus3675112017196868514r_qr_a @ ( numera2156158589294619636r_qr_a @ ( bit0 @ one ) ) ) ) ).

% add_neg_numeral_special(9)
thf(fact_400_add__neg__numeral__special_I9_J,axiom,
    ( ( plus_p6165643967897163644ring_a @ ( uminus3100561713750211260ring_a @ one_on2109788427901206336ring_a ) @ ( uminus3100561713750211260ring_a @ one_on2109788427901206336ring_a ) )
    = ( uminus3100561713750211260ring_a @ ( numera7938180240421336042ring_a @ ( bit0 @ one ) ) ) ) ).

% add_neg_numeral_special(9)
thf(fact_401_add__neg__numeral__special_I9_J,axiom,
    ( ( plus_plus_real @ ( uminus_uminus_real @ one_one_real ) @ ( uminus_uminus_real @ one_one_real ) )
    = ( uminus_uminus_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ).

% add_neg_numeral_special(9)
thf(fact_402_Power_Oring__1__class_Opower__minus__even,axiom,
    ! [A: int,N: nat] :
      ( ( power_power_int @ ( uminus_uminus_int @ A ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) )
      = ( power_power_int @ A @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) ).

% Power.ring_1_class.power_minus_even
thf(fact_403_Power_Oring__1__class_Opower__minus__even,axiom,
    ! [A: finite_mod_ring_a,N: nat] :
      ( ( power_6826135765519566523ring_a @ ( uminus3100561713750211260ring_a @ A ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) )
      = ( power_6826135765519566523ring_a @ A @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) ).

% Power.ring_1_class.power_minus_even
thf(fact_404_Power_Oring__1__class_Opower__minus__even,axiom,
    ! [A: real,N: nat] :
      ( ( power_power_real @ ( uminus_uminus_real @ A ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) )
      = ( power_power_real @ A @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) ).

% Power.ring_1_class.power_minus_even
thf(fact_405_power__minus1__even,axiom,
    ! [N: nat] :
      ( ( power_6500929916544582089ring_a @ ( uminus6490753114102738890ring_a @ one_on3394844594818161742ring_a ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) )
      = one_on3394844594818161742ring_a ) ).

% power_minus1_even
thf(fact_406_power__minus1__even,axiom,
    ! [N: nat] :
      ( ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) )
      = one_one_int ) ).

% power_minus1_even
thf(fact_407_power__minus1__even,axiom,
    ! [N: nat] :
      ( ( power_6826135765519566523ring_a @ ( uminus3100561713750211260ring_a @ one_on2109788427901206336ring_a ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) )
      = one_on2109788427901206336ring_a ) ).

% power_minus1_even
thf(fact_408_power__minus1__even,axiom,
    ! [N: nat] :
      ( ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) )
      = one_one_real ) ).

% power_minus1_even
thf(fact_409_mult__poly__add__left,axiom,
    ! [P2: poly_F3299452240248304339ring_a,Q: poly_F3299452240248304339ring_a,R: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ ( plus_p7290290253215468682ring_a @ P2 @ Q ) @ R )
      = ( plus_p7290290253215468682ring_a @ ( times_3242606764180207630ring_a @ P2 @ R ) @ ( times_3242606764180207630ring_a @ Q @ R ) ) ) ).

% mult_poly_add_left
thf(fact_410_lead__coeff__minus,axiom,
    ! [P2: poly_F3299452240248304339ring_a] :
      ( ( coeff_1607515655354303335ring_a @ ( uminus6490753114102738890ring_a @ P2 ) @ ( degree4881254707062955960ring_a @ ( uminus6490753114102738890ring_a @ P2 ) ) )
      = ( uminus3100561713750211260ring_a @ ( coeff_1607515655354303335ring_a @ P2 @ ( degree4881254707062955960ring_a @ P2 ) ) ) ) ).

% lead_coeff_minus
thf(fact_411_lead__coeff__minus,axiom,
    ! [P2: poly_real] :
      ( ( coeff_real @ ( uminus3130843302823231997y_real @ P2 ) @ ( degree_real @ ( uminus3130843302823231997y_real @ P2 ) ) )
      = ( uminus_uminus_real @ ( coeff_real @ P2 @ ( degree_real @ P2 ) ) ) ) ).

% lead_coeff_minus
thf(fact_412_uminus__poly_Orep__eq,axiom,
    ! [X: poly_F3299452240248304339ring_a] :
      ( ( coeff_1607515655354303335ring_a @ ( uminus6490753114102738890ring_a @ X ) )
      = ( ^ [N4: nat] : ( uminus3100561713750211260ring_a @ ( coeff_1607515655354303335ring_a @ X @ N4 ) ) ) ) ).

% uminus_poly.rep_eq
thf(fact_413_uminus__poly_Orep__eq,axiom,
    ! [X: poly_real] :
      ( ( coeff_real @ ( uminus3130843302823231997y_real @ X ) )
      = ( ^ [N4: nat] : ( uminus_uminus_real @ ( coeff_real @ X @ N4 ) ) ) ) ).

% uminus_poly.rep_eq
thf(fact_414_degree__add__eq__right,axiom,
    ! [P2: poly_F3299452240248304339ring_a,Q: poly_F3299452240248304339ring_a] :
      ( ( ord_less_nat @ ( degree4881254707062955960ring_a @ P2 ) @ ( degree4881254707062955960ring_a @ Q ) )
     => ( ( degree4881254707062955960ring_a @ ( plus_p7290290253215468682ring_a @ P2 @ Q ) )
        = ( degree4881254707062955960ring_a @ Q ) ) ) ).

% degree_add_eq_right
thf(fact_415_degree__add__eq__left,axiom,
    ! [Q: poly_F3299452240248304339ring_a,P2: poly_F3299452240248304339ring_a] :
      ( ( ord_less_nat @ ( degree4881254707062955960ring_a @ Q ) @ ( degree4881254707062955960ring_a @ P2 ) )
     => ( ( degree4881254707062955960ring_a @ ( plus_p7290290253215468682ring_a @ P2 @ Q ) )
        = ( degree4881254707062955960ring_a @ P2 ) ) ) ).

% degree_add_eq_left
thf(fact_416_degree__add__less,axiom,
    ! [P2: poly_F3299452240248304339ring_a,N: nat,Q: poly_F3299452240248304339ring_a] :
      ( ( ord_less_nat @ ( degree4881254707062955960ring_a @ P2 ) @ N )
     => ( ( ord_less_nat @ ( degree4881254707062955960ring_a @ Q ) @ N )
       => ( ord_less_nat @ ( degree4881254707062955960ring_a @ ( plus_p7290290253215468682ring_a @ P2 @ Q ) ) @ N ) ) ) ).

% degree_add_less
thf(fact_417_kyber__ntt_Onegacycl__conv_Ocong,axiom,
    nTT_ky7844408764402957685conv_a = nTT_ky7844408764402957685conv_a ).

% kyber_ntt.negacycl_conv.cong
thf(fact_418_one__neq__neg__one,axiom,
    ( one_one_int
   != ( uminus_uminus_int @ one_one_int ) ) ).

% one_neq_neg_one
thf(fact_419_one__neq__neg__one,axiom,
    ( one_one_real
   != ( uminus_uminus_real @ one_one_real ) ) ).

% one_neq_neg_one
thf(fact_420_is__num__normalize_I8_J,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a] :
      ( ( uminus6490753114102738890ring_a @ ( plus_p7290290253215468682ring_a @ A @ B ) )
      = ( plus_p7290290253215468682ring_a @ ( uminus6490753114102738890ring_a @ B ) @ ( uminus6490753114102738890ring_a @ A ) ) ) ).

% is_num_normalize(8)
thf(fact_421_is__num__normalize_I8_J,axiom,
    ! [A: int,B: int] :
      ( ( uminus_uminus_int @ ( plus_plus_int @ A @ B ) )
      = ( plus_plus_int @ ( uminus_uminus_int @ B ) @ ( uminus_uminus_int @ A ) ) ) ).

% is_num_normalize(8)
thf(fact_422_is__num__normalize_I8_J,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a] :
      ( ( uminus3675112017196868514r_qr_a @ ( plus_plus_Kyber_qr_a @ A @ B ) )
      = ( plus_plus_Kyber_qr_a @ ( uminus3675112017196868514r_qr_a @ B ) @ ( uminus3675112017196868514r_qr_a @ A ) ) ) ).

% is_num_normalize(8)
thf(fact_423_is__num__normalize_I8_J,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a] :
      ( ( uminus3100561713750211260ring_a @ ( plus_p6165643967897163644ring_a @ A @ B ) )
      = ( plus_p6165643967897163644ring_a @ ( uminus3100561713750211260ring_a @ B ) @ ( uminus3100561713750211260ring_a @ A ) ) ) ).

% is_num_normalize(8)
thf(fact_424_is__num__normalize_I8_J,axiom,
    ! [A: real,B: real] :
      ( ( uminus_uminus_real @ ( plus_plus_real @ A @ B ) )
      = ( plus_plus_real @ ( uminus_uminus_real @ B ) @ ( uminus_uminus_real @ A ) ) ) ).

% is_num_normalize(8)
thf(fact_425_neg__numeral__neq__numeral,axiom,
    ! [M: num,N: num] :
      ( ( uminus_uminus_int @ ( numeral_numeral_int @ M ) )
     != ( numeral_numeral_int @ N ) ) ).

% neg_numeral_neq_numeral
thf(fact_426_neg__numeral__neq__numeral,axiom,
    ! [M: num,N: num] :
      ( ( uminus_uminus_real @ ( numeral_numeral_real @ M ) )
     != ( numeral_numeral_real @ N ) ) ).

% neg_numeral_neq_numeral
thf(fact_427_numeral__neq__neg__numeral,axiom,
    ! [M: num,N: num] :
      ( ( numeral_numeral_int @ M )
     != ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) ) ).

% numeral_neq_neg_numeral
thf(fact_428_numeral__neq__neg__numeral,axiom,
    ! [M: num,N: num] :
      ( ( numeral_numeral_real @ M )
     != ( uminus_uminus_real @ ( numeral_numeral_real @ N ) ) ) ).

% numeral_neq_neg_numeral
thf(fact_429_numeral__times__minus__swap,axiom,
    ! [W: num,X: int] :
      ( ( times_times_int @ ( numeral_numeral_int @ W ) @ ( uminus_uminus_int @ X ) )
      = ( times_times_int @ X @ ( uminus_uminus_int @ ( numeral_numeral_int @ W ) ) ) ) ).

% numeral_times_minus_swap
thf(fact_430_numeral__times__minus__swap,axiom,
    ! [W: num,X: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ ( numera2966756627528668408ring_a @ W ) @ ( uminus6490753114102738890ring_a @ X ) )
      = ( times_3242606764180207630ring_a @ X @ ( uminus6490753114102738890ring_a @ ( numera2966756627528668408ring_a @ W ) ) ) ) ).

% numeral_times_minus_swap
thf(fact_431_numeral__times__minus__swap,axiom,
    ! [W: num,X: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ ( numera2156158589294619636r_qr_a @ W ) @ ( uminus3675112017196868514r_qr_a @ X ) )
      = ( times_2095635435063429214r_qr_a @ X @ ( uminus3675112017196868514r_qr_a @ ( numera2156158589294619636r_qr_a @ W ) ) ) ) ).

% numeral_times_minus_swap
thf(fact_432_numeral__times__minus__swap,axiom,
    ! [W: num,X: finite_mod_ring_a] :
      ( ( times_5121417576591743744ring_a @ ( numera7938180240421336042ring_a @ W ) @ ( uminus3100561713750211260ring_a @ X ) )
      = ( times_5121417576591743744ring_a @ X @ ( uminus3100561713750211260ring_a @ ( numera7938180240421336042ring_a @ W ) ) ) ) ).

% numeral_times_minus_swap
thf(fact_433_numeral__times__minus__swap,axiom,
    ! [W: num,X: real] :
      ( ( times_times_real @ ( numeral_numeral_real @ W ) @ ( uminus_uminus_real @ X ) )
      = ( times_times_real @ X @ ( uminus_uminus_real @ ( numeral_numeral_real @ W ) ) ) ) ).

% numeral_times_minus_swap
thf(fact_434_lead__coeff__mult,axiom,
    ! [P2: poly_p2573953413498894561ring_a,Q: poly_p2573953413498894561ring_a] :
      ( ( coeff_7919988552178873973ring_a @ ( times_7678616233722469404ring_a @ P2 @ Q ) @ ( degree617341119394917574ring_a @ ( times_7678616233722469404ring_a @ P2 @ Q ) ) )
      = ( times_3242606764180207630ring_a @ ( coeff_7919988552178873973ring_a @ P2 @ ( degree617341119394917574ring_a @ P2 ) ) @ ( coeff_7919988552178873973ring_a @ Q @ ( degree617341119394917574ring_a @ Q ) ) ) ) ).

% lead_coeff_mult
thf(fact_435_lead__coeff__mult,axiom,
    ! [P2: poly_real,Q: poly_real] :
      ( ( coeff_real @ ( times_7914811829580426937y_real @ P2 @ Q ) @ ( degree_real @ ( times_7914811829580426937y_real @ P2 @ Q ) ) )
      = ( times_times_real @ ( coeff_real @ P2 @ ( degree_real @ P2 ) ) @ ( coeff_real @ Q @ ( degree_real @ Q ) ) ) ) ).

% lead_coeff_mult
thf(fact_436_lead__coeff__mult,axiom,
    ! [P2: poly_nat,Q: poly_nat] :
      ( ( coeff_nat @ ( times_times_poly_nat @ P2 @ Q ) @ ( degree_nat @ ( times_times_poly_nat @ P2 @ Q ) ) )
      = ( times_times_nat @ ( coeff_nat @ P2 @ ( degree_nat @ P2 ) ) @ ( coeff_nat @ Q @ ( degree_nat @ Q ) ) ) ) ).

% lead_coeff_mult
thf(fact_437_lead__coeff__mult,axiom,
    ! [P2: poly_int,Q: poly_int] :
      ( ( coeff_int @ ( times_times_poly_int @ P2 @ Q ) @ ( degree_int @ ( times_times_poly_int @ P2 @ Q ) ) )
      = ( times_times_int @ ( coeff_int @ P2 @ ( degree_int @ P2 ) ) @ ( coeff_int @ Q @ ( degree_int @ Q ) ) ) ) ).

% lead_coeff_mult
thf(fact_438_lead__coeff__mult,axiom,
    ! [P2: poly_F3299452240248304339ring_a,Q: poly_F3299452240248304339ring_a] :
      ( ( coeff_1607515655354303335ring_a @ ( times_3242606764180207630ring_a @ P2 @ Q ) @ ( degree4881254707062955960ring_a @ ( times_3242606764180207630ring_a @ P2 @ Q ) ) )
      = ( times_5121417576591743744ring_a @ ( coeff_1607515655354303335ring_a @ P2 @ ( degree4881254707062955960ring_a @ P2 ) ) @ ( coeff_1607515655354303335ring_a @ Q @ ( degree4881254707062955960ring_a @ Q ) ) ) ) ).

% lead_coeff_mult
thf(fact_439_coeff__degree__mult,axiom,
    ! [P2: poly_p2573953413498894561ring_a,Q: poly_p2573953413498894561ring_a] :
      ( ( coeff_7919988552178873973ring_a @ ( times_7678616233722469404ring_a @ P2 @ Q ) @ ( degree617341119394917574ring_a @ ( times_7678616233722469404ring_a @ P2 @ Q ) ) )
      = ( times_3242606764180207630ring_a @ ( coeff_7919988552178873973ring_a @ Q @ ( degree617341119394917574ring_a @ Q ) ) @ ( coeff_7919988552178873973ring_a @ P2 @ ( degree617341119394917574ring_a @ P2 ) ) ) ) ).

% coeff_degree_mult
thf(fact_440_coeff__degree__mult,axiom,
    ! [P2: poly_real,Q: poly_real] :
      ( ( coeff_real @ ( times_7914811829580426937y_real @ P2 @ Q ) @ ( degree_real @ ( times_7914811829580426937y_real @ P2 @ Q ) ) )
      = ( times_times_real @ ( coeff_real @ Q @ ( degree_real @ Q ) ) @ ( coeff_real @ P2 @ ( degree_real @ P2 ) ) ) ) ).

% coeff_degree_mult
thf(fact_441_coeff__degree__mult,axiom,
    ! [P2: poly_nat,Q: poly_nat] :
      ( ( coeff_nat @ ( times_times_poly_nat @ P2 @ Q ) @ ( degree_nat @ ( times_times_poly_nat @ P2 @ Q ) ) )
      = ( times_times_nat @ ( coeff_nat @ Q @ ( degree_nat @ Q ) ) @ ( coeff_nat @ P2 @ ( degree_nat @ P2 ) ) ) ) ).

% coeff_degree_mult
thf(fact_442_coeff__degree__mult,axiom,
    ! [P2: poly_int,Q: poly_int] :
      ( ( coeff_int @ ( times_times_poly_int @ P2 @ Q ) @ ( degree_int @ ( times_times_poly_int @ P2 @ Q ) ) )
      = ( times_times_int @ ( coeff_int @ Q @ ( degree_int @ Q ) ) @ ( coeff_int @ P2 @ ( degree_int @ P2 ) ) ) ) ).

% coeff_degree_mult
thf(fact_443_coeff__degree__mult,axiom,
    ! [P2: poly_F3299452240248304339ring_a,Q: poly_F3299452240248304339ring_a] :
      ( ( coeff_1607515655354303335ring_a @ ( times_3242606764180207630ring_a @ P2 @ Q ) @ ( degree4881254707062955960ring_a @ ( times_3242606764180207630ring_a @ P2 @ Q ) ) )
      = ( times_5121417576591743744ring_a @ ( coeff_1607515655354303335ring_a @ Q @ ( degree4881254707062955960ring_a @ Q ) ) @ ( coeff_1607515655354303335ring_a @ P2 @ ( degree4881254707062955960ring_a @ P2 ) ) ) ) ).

% coeff_degree_mult
thf(fact_444_lead__coeff__power,axiom,
    ! [P2: poly_F3299452240248304339ring_a,N: nat] :
      ( ( coeff_1607515655354303335ring_a @ ( power_6500929916544582089ring_a @ P2 @ N ) @ ( degree4881254707062955960ring_a @ ( power_6500929916544582089ring_a @ P2 @ N ) ) )
      = ( power_6826135765519566523ring_a @ ( coeff_1607515655354303335ring_a @ P2 @ ( degree4881254707062955960ring_a @ P2 ) ) @ N ) ) ).

% lead_coeff_power
thf(fact_445_lead__coeff__power,axiom,
    ! [P2: poly_nat,N: nat] :
      ( ( coeff_nat @ ( power_power_poly_nat @ P2 @ N ) @ ( degree_nat @ ( power_power_poly_nat @ P2 @ N ) ) )
      = ( power_power_nat @ ( coeff_nat @ P2 @ ( degree_nat @ P2 ) ) @ N ) ) ).

% lead_coeff_power
thf(fact_446_lead__coeff__power,axiom,
    ! [P2: poly_real,N: nat] :
      ( ( coeff_real @ ( power_8994544051960338110y_real @ P2 @ N ) @ ( degree_real @ ( power_8994544051960338110y_real @ P2 @ N ) ) )
      = ( power_power_real @ ( coeff_real @ P2 @ ( degree_real @ P2 ) ) @ N ) ) ).

% lead_coeff_power
thf(fact_447_lead__coeff__power,axiom,
    ! [P2: poly_int,N: nat] :
      ( ( coeff_int @ ( power_power_poly_int @ P2 @ N ) @ ( degree_int @ ( power_power_poly_int @ P2 @ N ) ) )
      = ( power_power_int @ ( coeff_int @ P2 @ ( degree_int @ P2 ) ) @ N ) ) ).

% lead_coeff_power
thf(fact_448_lead__coeff__add__le,axiom,
    ! [P2: poly_F3299452240248304339ring_a,Q: poly_F3299452240248304339ring_a] :
      ( ( ord_less_nat @ ( degree4881254707062955960ring_a @ P2 ) @ ( degree4881254707062955960ring_a @ Q ) )
     => ( ( coeff_1607515655354303335ring_a @ ( plus_p7290290253215468682ring_a @ P2 @ Q ) @ ( degree4881254707062955960ring_a @ ( plus_p7290290253215468682ring_a @ P2 @ Q ) ) )
        = ( coeff_1607515655354303335ring_a @ Q @ ( degree4881254707062955960ring_a @ Q ) ) ) ) ).

% lead_coeff_add_le
thf(fact_449_coeff__mult__degree__sum,axiom,
    ! [P2: poly_p2573953413498894561ring_a,Q: poly_p2573953413498894561ring_a] :
      ( ( coeff_7919988552178873973ring_a @ ( times_7678616233722469404ring_a @ P2 @ Q ) @ ( plus_plus_nat @ ( degree617341119394917574ring_a @ P2 ) @ ( degree617341119394917574ring_a @ Q ) ) )
      = ( times_3242606764180207630ring_a @ ( coeff_7919988552178873973ring_a @ P2 @ ( degree617341119394917574ring_a @ P2 ) ) @ ( coeff_7919988552178873973ring_a @ Q @ ( degree617341119394917574ring_a @ Q ) ) ) ) ).

% coeff_mult_degree_sum
thf(fact_450_coeff__mult__degree__sum,axiom,
    ! [P2: poly_Kyber_qr_a,Q: poly_Kyber_qr_a] :
      ( ( coeff_Kyber_qr_a @ ( times_4594766361258318694r_qr_a @ P2 @ Q ) @ ( plus_plus_nat @ ( degree_Kyber_qr_a @ P2 ) @ ( degree_Kyber_qr_a @ Q ) ) )
      = ( times_2095635435063429214r_qr_a @ ( coeff_Kyber_qr_a @ P2 @ ( degree_Kyber_qr_a @ P2 ) ) @ ( coeff_Kyber_qr_a @ Q @ ( degree_Kyber_qr_a @ Q ) ) ) ) ).

% coeff_mult_degree_sum
thf(fact_451_coeff__mult__degree__sum,axiom,
    ! [P2: poly_real,Q: poly_real] :
      ( ( coeff_real @ ( times_7914811829580426937y_real @ P2 @ Q ) @ ( plus_plus_nat @ ( degree_real @ P2 ) @ ( degree_real @ Q ) ) )
      = ( times_times_real @ ( coeff_real @ P2 @ ( degree_real @ P2 ) ) @ ( coeff_real @ Q @ ( degree_real @ Q ) ) ) ) ).

% coeff_mult_degree_sum
thf(fact_452_coeff__mult__degree__sum,axiom,
    ! [P2: poly_nat,Q: poly_nat] :
      ( ( coeff_nat @ ( times_times_poly_nat @ P2 @ Q ) @ ( plus_plus_nat @ ( degree_nat @ P2 ) @ ( degree_nat @ Q ) ) )
      = ( times_times_nat @ ( coeff_nat @ P2 @ ( degree_nat @ P2 ) ) @ ( coeff_nat @ Q @ ( degree_nat @ Q ) ) ) ) ).

% coeff_mult_degree_sum
thf(fact_453_coeff__mult__degree__sum,axiom,
    ! [P2: poly_int,Q: poly_int] :
      ( ( coeff_int @ ( times_times_poly_int @ P2 @ Q ) @ ( plus_plus_nat @ ( degree_int @ P2 ) @ ( degree_int @ Q ) ) )
      = ( times_times_int @ ( coeff_int @ P2 @ ( degree_int @ P2 ) ) @ ( coeff_int @ Q @ ( degree_int @ Q ) ) ) ) ).

% coeff_mult_degree_sum
thf(fact_454_coeff__mult__degree__sum,axiom,
    ! [P2: poly_F3299452240248304339ring_a,Q: poly_F3299452240248304339ring_a] :
      ( ( coeff_1607515655354303335ring_a @ ( times_3242606764180207630ring_a @ P2 @ Q ) @ ( plus_plus_nat @ ( degree4881254707062955960ring_a @ P2 ) @ ( degree4881254707062955960ring_a @ Q ) ) )
      = ( times_5121417576591743744ring_a @ ( coeff_1607515655354303335ring_a @ P2 @ ( degree4881254707062955960ring_a @ P2 ) ) @ ( coeff_1607515655354303335ring_a @ Q @ ( degree4881254707062955960ring_a @ Q ) ) ) ) ).

% coeff_mult_degree_sum
thf(fact_455_less__minus__one__simps_I2_J,axiom,
    ord_less_int @ ( uminus_uminus_int @ one_one_int ) @ one_one_int ).

% less_minus_one_simps(2)
thf(fact_456_less__minus__one__simps_I2_J,axiom,
    ord_less_real @ ( uminus_uminus_real @ one_one_real ) @ one_one_real ).

% less_minus_one_simps(2)
thf(fact_457_less__minus__one__simps_I4_J,axiom,
    ~ ( ord_less_int @ one_one_int @ ( uminus_uminus_int @ one_one_int ) ) ).

% less_minus_one_simps(4)
thf(fact_458_less__minus__one__simps_I4_J,axiom,
    ~ ( ord_less_real @ one_one_real @ ( uminus_uminus_real @ one_one_real ) ) ).

% less_minus_one_simps(4)
thf(fact_459_not__numeral__less__neg__numeral,axiom,
    ! [M: num,N: num] :
      ~ ( ord_less_int @ ( numeral_numeral_int @ M ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) ) ).

% not_numeral_less_neg_numeral
thf(fact_460_not__numeral__less__neg__numeral,axiom,
    ! [M: num,N: num] :
      ~ ( ord_less_real @ ( numeral_numeral_real @ M ) @ ( uminus_uminus_real @ ( numeral_numeral_real @ N ) ) ) ).

% not_numeral_less_neg_numeral
thf(fact_461_neg__numeral__less__numeral,axiom,
    ! [M: num,N: num] : ( ord_less_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( numeral_numeral_int @ N ) ) ).

% neg_numeral_less_numeral
thf(fact_462_neg__numeral__less__numeral,axiom,
    ! [M: num,N: num] : ( ord_less_real @ ( uminus_uminus_real @ ( numeral_numeral_real @ M ) ) @ ( numeral_numeral_real @ N ) ) ).

% neg_numeral_less_numeral
thf(fact_463_numeral__neq__neg__one,axiom,
    ! [N: num] :
      ( ( numeral_numeral_int @ N )
     != ( uminus_uminus_int @ one_one_int ) ) ).

% numeral_neq_neg_one
thf(fact_464_numeral__neq__neg__one,axiom,
    ! [N: num] :
      ( ( numeral_numeral_real @ N )
     != ( uminus_uminus_real @ one_one_real ) ) ).

% numeral_neq_neg_one
thf(fact_465_one__neq__neg__numeral,axiom,
    ! [N: num] :
      ( one_one_int
     != ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) ) ).

% one_neq_neg_numeral
thf(fact_466_one__neq__neg__numeral,axiom,
    ! [N: num] :
      ( one_one_real
     != ( uminus_uminus_real @ ( numeral_numeral_real @ N ) ) ) ).

% one_neq_neg_numeral
thf(fact_467_neg__numeral__less__one,axiom,
    ! [M: num] : ( ord_less_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ one_one_int ) ).

% neg_numeral_less_one
thf(fact_468_neg__numeral__less__one,axiom,
    ! [M: num] : ( ord_less_real @ ( uminus_uminus_real @ ( numeral_numeral_real @ M ) ) @ one_one_real ) ).

% neg_numeral_less_one
thf(fact_469_neg__one__less__numeral,axiom,
    ! [M: num] : ( ord_less_int @ ( uminus_uminus_int @ one_one_int ) @ ( numeral_numeral_int @ M ) ) ).

% neg_one_less_numeral
thf(fact_470_neg__one__less__numeral,axiom,
    ! [M: num] : ( ord_less_real @ ( uminus_uminus_real @ one_one_real ) @ ( numeral_numeral_real @ M ) ) ).

% neg_one_less_numeral
thf(fact_471_not__numeral__less__neg__one,axiom,
    ! [M: num] :
      ~ ( ord_less_int @ ( numeral_numeral_int @ M ) @ ( uminus_uminus_int @ one_one_int ) ) ).

% not_numeral_less_neg_one
thf(fact_472_not__numeral__less__neg__one,axiom,
    ! [M: num] :
      ~ ( ord_less_real @ ( numeral_numeral_real @ M ) @ ( uminus_uminus_real @ one_one_real ) ) ).

% not_numeral_less_neg_one
thf(fact_473_not__one__less__neg__numeral,axiom,
    ! [M: num] :
      ~ ( ord_less_int @ one_one_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) ) ).

% not_one_less_neg_numeral
thf(fact_474_not__one__less__neg__numeral,axiom,
    ! [M: num] :
      ~ ( ord_less_real @ one_one_real @ ( uminus_uminus_real @ ( numeral_numeral_real @ M ) ) ) ).

% not_one_less_neg_numeral
thf(fact_475_not__neg__one__less__neg__numeral,axiom,
    ! [M: num] :
      ~ ( ord_less_int @ ( uminus_uminus_int @ one_one_int ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) ) ).

% not_neg_one_less_neg_numeral
thf(fact_476_not__neg__one__less__neg__numeral,axiom,
    ! [M: num] :
      ~ ( ord_less_real @ ( uminus_uminus_real @ one_one_real ) @ ( uminus_uminus_real @ ( numeral_numeral_real @ M ) ) ) ).

% not_neg_one_less_neg_numeral
thf(fact_477_power__minus,axiom,
    ! [A: poly_F3299452240248304339ring_a,N: nat] :
      ( ( power_6500929916544582089ring_a @ ( uminus6490753114102738890ring_a @ A ) @ N )
      = ( times_3242606764180207630ring_a @ ( power_6500929916544582089ring_a @ ( uminus6490753114102738890ring_a @ one_on3394844594818161742ring_a ) @ N ) @ ( power_6500929916544582089ring_a @ A @ N ) ) ) ).

% power_minus
thf(fact_478_power__minus,axiom,
    ! [A: kyber_qr_a,N: nat] :
      ( ( power_5122640293590465123r_qr_a @ ( uminus3675112017196868514r_qr_a @ A ) @ N )
      = ( times_2095635435063429214r_qr_a @ ( power_5122640293590465123r_qr_a @ ( uminus3675112017196868514r_qr_a @ one_one_Kyber_qr_a ) @ N ) @ ( power_5122640293590465123r_qr_a @ A @ N ) ) ) ).

% power_minus
thf(fact_479_power__minus,axiom,
    ! [A: int,N: nat] :
      ( ( power_power_int @ ( uminus_uminus_int @ A ) @ N )
      = ( times_times_int @ ( power_power_int @ ( uminus_uminus_int @ one_one_int ) @ N ) @ ( power_power_int @ A @ N ) ) ) ).

% power_minus
thf(fact_480_power__minus,axiom,
    ! [A: finite_mod_ring_a,N: nat] :
      ( ( power_6826135765519566523ring_a @ ( uminus3100561713750211260ring_a @ A ) @ N )
      = ( times_5121417576591743744ring_a @ ( power_6826135765519566523ring_a @ ( uminus3100561713750211260ring_a @ one_on2109788427901206336ring_a ) @ N ) @ ( power_6826135765519566523ring_a @ A @ N ) ) ) ).

% power_minus
thf(fact_481_power__minus,axiom,
    ! [A: real,N: nat] :
      ( ( power_power_real @ ( uminus_uminus_real @ A ) @ N )
      = ( times_times_real @ ( power_power_real @ ( uminus_uminus_real @ one_one_real ) @ N ) @ ( power_power_real @ A @ N ) ) ) ).

% power_minus
thf(fact_482_mult__1s__ring__1_I2_J,axiom,
    ! [B: int] :
      ( ( times_times_int @ B @ ( uminus_uminus_int @ ( numeral_numeral_int @ one ) ) )
      = ( uminus_uminus_int @ B ) ) ).

% mult_1s_ring_1(2)
thf(fact_483_mult__1s__ring__1_I2_J,axiom,
    ! [B: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ B @ ( uminus6490753114102738890ring_a @ ( numera2966756627528668408ring_a @ one ) ) )
      = ( uminus6490753114102738890ring_a @ B ) ) ).

% mult_1s_ring_1(2)
thf(fact_484_mult__1s__ring__1_I2_J,axiom,
    ! [B: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ B @ ( uminus3675112017196868514r_qr_a @ ( numera2156158589294619636r_qr_a @ one ) ) )
      = ( uminus3675112017196868514r_qr_a @ B ) ) ).

% mult_1s_ring_1(2)
thf(fact_485_mult__1s__ring__1_I2_J,axiom,
    ! [B: finite_mod_ring_a] :
      ( ( times_5121417576591743744ring_a @ B @ ( uminus3100561713750211260ring_a @ ( numera7938180240421336042ring_a @ one ) ) )
      = ( uminus3100561713750211260ring_a @ B ) ) ).

% mult_1s_ring_1(2)
thf(fact_486_mult__1s__ring__1_I2_J,axiom,
    ! [B: real] :
      ( ( times_times_real @ B @ ( uminus_uminus_real @ ( numeral_numeral_real @ one ) ) )
      = ( uminus_uminus_real @ B ) ) ).

% mult_1s_ring_1(2)
thf(fact_487_mult__1s__ring__1_I1_J,axiom,
    ! [B: int] :
      ( ( times_times_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ one ) ) @ B )
      = ( uminus_uminus_int @ B ) ) ).

% mult_1s_ring_1(1)
thf(fact_488_mult__1s__ring__1_I1_J,axiom,
    ! [B: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ ( uminus6490753114102738890ring_a @ ( numera2966756627528668408ring_a @ one ) ) @ B )
      = ( uminus6490753114102738890ring_a @ B ) ) ).

% mult_1s_ring_1(1)
thf(fact_489_mult__1s__ring__1_I1_J,axiom,
    ! [B: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ ( uminus3675112017196868514r_qr_a @ ( numera2156158589294619636r_qr_a @ one ) ) @ B )
      = ( uminus3675112017196868514r_qr_a @ B ) ) ).

% mult_1s_ring_1(1)
thf(fact_490_mult__1s__ring__1_I1_J,axiom,
    ! [B: finite_mod_ring_a] :
      ( ( times_5121417576591743744ring_a @ ( uminus3100561713750211260ring_a @ ( numera7938180240421336042ring_a @ one ) ) @ B )
      = ( uminus3100561713750211260ring_a @ B ) ) ).

% mult_1s_ring_1(1)
thf(fact_491_mult__1s__ring__1_I1_J,axiom,
    ! [B: real] :
      ( ( times_times_real @ ( uminus_uminus_real @ ( numeral_numeral_real @ one ) ) @ B )
      = ( uminus_uminus_real @ B ) ) ).

% mult_1s_ring_1(1)
thf(fact_492_uminus__numeral__One,axiom,
    ( ( uminus_uminus_int @ ( numeral_numeral_int @ one ) )
    = ( uminus_uminus_int @ one_one_int ) ) ).

% uminus_numeral_One
thf(fact_493_uminus__numeral__One,axiom,
    ( ( uminus6490753114102738890ring_a @ ( numera2966756627528668408ring_a @ one ) )
    = ( uminus6490753114102738890ring_a @ one_on3394844594818161742ring_a ) ) ).

% uminus_numeral_One
thf(fact_494_uminus__numeral__One,axiom,
    ( ( uminus3675112017196868514r_qr_a @ ( numera2156158589294619636r_qr_a @ one ) )
    = ( uminus3675112017196868514r_qr_a @ one_one_Kyber_qr_a ) ) ).

% uminus_numeral_One
thf(fact_495_uminus__numeral__One,axiom,
    ( ( uminus3100561713750211260ring_a @ ( numera7938180240421336042ring_a @ one ) )
    = ( uminus3100561713750211260ring_a @ one_on2109788427901206336ring_a ) ) ).

% uminus_numeral_One
thf(fact_496_uminus__numeral__One,axiom,
    ( ( uminus_uminus_real @ ( numeral_numeral_real @ one ) )
    = ( uminus_uminus_real @ one_one_real ) ) ).

% uminus_numeral_One
thf(fact_497_power__minus__Bit0,axiom,
    ! [X: int,K: num] :
      ( ( power_power_int @ ( uminus_uminus_int @ X ) @ ( numeral_numeral_nat @ ( bit0 @ K ) ) )
      = ( power_power_int @ X @ ( numeral_numeral_nat @ ( bit0 @ K ) ) ) ) ).

% power_minus_Bit0
thf(fact_498_power__minus__Bit0,axiom,
    ! [X: finite_mod_ring_a,K: num] :
      ( ( power_6826135765519566523ring_a @ ( uminus3100561713750211260ring_a @ X ) @ ( numeral_numeral_nat @ ( bit0 @ K ) ) )
      = ( power_6826135765519566523ring_a @ X @ ( numeral_numeral_nat @ ( bit0 @ K ) ) ) ) ).

% power_minus_Bit0
thf(fact_499_power__minus__Bit0,axiom,
    ! [X: real,K: num] :
      ( ( power_power_real @ ( uminus_uminus_real @ X ) @ ( numeral_numeral_nat @ ( bit0 @ K ) ) )
      = ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ K ) ) ) ) ).

% power_minus_Bit0
thf(fact_500_coeff__inject,axiom,
    ! [X: poly_F3299452240248304339ring_a,Y: poly_F3299452240248304339ring_a] :
      ( ( ( coeff_1607515655354303335ring_a @ X )
        = ( coeff_1607515655354303335ring_a @ Y ) )
      = ( X = Y ) ) ).

% coeff_inject
thf(fact_501_poly__eqI,axiom,
    ! [P2: poly_F3299452240248304339ring_a,Q: poly_F3299452240248304339ring_a] :
      ( ! [N2: nat] :
          ( ( coeff_1607515655354303335ring_a @ P2 @ N2 )
          = ( coeff_1607515655354303335ring_a @ Q @ N2 ) )
     => ( P2 = Q ) ) ).

% poly_eqI
thf(fact_502_poly__eq__iff,axiom,
    ( ( ^ [Y2: poly_F3299452240248304339ring_a,Z2: poly_F3299452240248304339ring_a] : ( Y2 = Z2 ) )
    = ( ^ [P3: poly_F3299452240248304339ring_a,Q2: poly_F3299452240248304339ring_a] :
        ! [N4: nat] :
          ( ( coeff_1607515655354303335ring_a @ P3 @ N4 )
          = ( coeff_1607515655354303335ring_a @ Q2 @ N4 ) ) ) ) ).

% poly_eq_iff
thf(fact_503_power2__eq__iff,axiom,
    ! [X: int,Y: int] :
      ( ( ( power_power_int @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = ( power_power_int @ Y @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
      = ( ( X = Y )
        | ( X
          = ( uminus_uminus_int @ Y ) ) ) ) ).

% power2_eq_iff
thf(fact_504_power2__eq__iff,axiom,
    ! [X: finite_mod_ring_a,Y: finite_mod_ring_a] :
      ( ( ( power_6826135765519566523ring_a @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = ( power_6826135765519566523ring_a @ Y @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
      = ( ( X = Y )
        | ( X
          = ( uminus3100561713750211260ring_a @ Y ) ) ) ) ).

% power2_eq_iff
thf(fact_505_power2__eq__iff,axiom,
    ! [X: real,Y: real] :
      ( ( ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = ( power_power_real @ Y @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
      = ( ( X = Y )
        | ( X
          = ( uminus_uminus_real @ Y ) ) ) ) ).

% power2_eq_iff
thf(fact_506_power2__eq__1__iff,axiom,
    ! [A: poly_F3299452240248304339ring_a] :
      ( ( ( power_6500929916544582089ring_a @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = one_on3394844594818161742ring_a )
      = ( ( A = one_on3394844594818161742ring_a )
        | ( A
          = ( uminus6490753114102738890ring_a @ one_on3394844594818161742ring_a ) ) ) ) ).

% power2_eq_1_iff
thf(fact_507_power2__eq__1__iff,axiom,
    ! [A: int] :
      ( ( ( power_power_int @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = one_one_int )
      = ( ( A = one_one_int )
        | ( A
          = ( uminus_uminus_int @ one_one_int ) ) ) ) ).

% power2_eq_1_iff
thf(fact_508_power2__eq__1__iff,axiom,
    ! [A: finite_mod_ring_a] :
      ( ( ( power_6826135765519566523ring_a @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = one_on2109788427901206336ring_a )
      = ( ( A = one_on2109788427901206336ring_a )
        | ( A
          = ( uminus3100561713750211260ring_a @ one_on2109788427901206336ring_a ) ) ) ) ).

% power2_eq_1_iff
thf(fact_509_power2__eq__1__iff,axiom,
    ! [A: real] :
      ( ( ( power_power_real @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
        = one_one_real )
      = ( ( A = one_one_real )
        | ( A
          = ( uminus_uminus_real @ one_one_real ) ) ) ) ).

% power2_eq_1_iff
thf(fact_510_minus__power__mult__self,axiom,
    ! [A: poly_F3299452240248304339ring_a,N: nat] :
      ( ( times_3242606764180207630ring_a @ ( power_6500929916544582089ring_a @ ( uminus6490753114102738890ring_a @ A ) @ N ) @ ( power_6500929916544582089ring_a @ ( uminus6490753114102738890ring_a @ A ) @ N ) )
      = ( power_6500929916544582089ring_a @ A @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) ).

% minus_power_mult_self
thf(fact_511_minus__power__mult__self,axiom,
    ! [A: kyber_qr_a,N: nat] :
      ( ( times_2095635435063429214r_qr_a @ ( power_5122640293590465123r_qr_a @ ( uminus3675112017196868514r_qr_a @ A ) @ N ) @ ( power_5122640293590465123r_qr_a @ ( uminus3675112017196868514r_qr_a @ A ) @ N ) )
      = ( power_5122640293590465123r_qr_a @ A @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) ).

% minus_power_mult_self
thf(fact_512_minus__power__mult__self,axiom,
    ! [A: int,N: nat] :
      ( ( times_times_int @ ( power_power_int @ ( uminus_uminus_int @ A ) @ N ) @ ( power_power_int @ ( uminus_uminus_int @ A ) @ N ) )
      = ( power_power_int @ A @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) ).

% minus_power_mult_self
thf(fact_513_minus__power__mult__self,axiom,
    ! [A: finite_mod_ring_a,N: nat] :
      ( ( times_5121417576591743744ring_a @ ( power_6826135765519566523ring_a @ ( uminus3100561713750211260ring_a @ A ) @ N ) @ ( power_6826135765519566523ring_a @ ( uminus3100561713750211260ring_a @ A ) @ N ) )
      = ( power_6826135765519566523ring_a @ A @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) ).

% minus_power_mult_self
thf(fact_514_minus__power__mult__self,axiom,
    ! [A: real,N: nat] :
      ( ( times_times_real @ ( power_power_real @ ( uminus_uminus_real @ A ) @ N ) @ ( power_power_real @ ( uminus_uminus_real @ A ) @ N ) )
      = ( power_power_real @ A @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ N ) ) ) ).

% minus_power_mult_self
thf(fact_515_plus__poly_Orep__eq,axiom,
    ! [X: poly_nat,Xa: poly_nat] :
      ( ( coeff_nat @ ( plus_plus_poly_nat @ X @ Xa ) )
      = ( ^ [N4: nat] : ( plus_plus_nat @ ( coeff_nat @ X @ N4 ) @ ( coeff_nat @ Xa @ N4 ) ) ) ) ).

% plus_poly.rep_eq
thf(fact_516_plus__poly_Orep__eq,axiom,
    ! [X: poly_p2573953413498894561ring_a,Xa: poly_p2573953413498894561ring_a] :
      ( ( coeff_7919988552178873973ring_a @ ( plus_p7801688469192607896ring_a @ X @ Xa ) )
      = ( ^ [N4: nat] : ( plus_p7290290253215468682ring_a @ ( coeff_7919988552178873973ring_a @ X @ N4 ) @ ( coeff_7919988552178873973ring_a @ Xa @ N4 ) ) ) ) ).

% plus_poly.rep_eq
thf(fact_517_plus__poly_Orep__eq,axiom,
    ! [X: poly_real,Xa: poly_real] :
      ( ( coeff_real @ ( plus_plus_poly_real @ X @ Xa ) )
      = ( ^ [N4: nat] : ( plus_plus_real @ ( coeff_real @ X @ N4 ) @ ( coeff_real @ Xa @ N4 ) ) ) ) ).

% plus_poly.rep_eq
thf(fact_518_plus__poly_Orep__eq,axiom,
    ! [X: poly_int,Xa: poly_int] :
      ( ( coeff_int @ ( plus_plus_poly_int @ X @ Xa ) )
      = ( ^ [N4: nat] : ( plus_plus_int @ ( coeff_int @ X @ N4 ) @ ( coeff_int @ Xa @ N4 ) ) ) ) ).

% plus_poly.rep_eq
thf(fact_519_plus__poly_Orep__eq,axiom,
    ! [X: poly_Kyber_qr_a,Xa: poly_Kyber_qr_a] :
      ( ( coeff_Kyber_qr_a @ ( plus_p7633285101440365034r_qr_a @ X @ Xa ) )
      = ( ^ [N4: nat] : ( plus_plus_Kyber_qr_a @ ( coeff_Kyber_qr_a @ X @ N4 ) @ ( coeff_Kyber_qr_a @ Xa @ N4 ) ) ) ) ).

% plus_poly.rep_eq
thf(fact_520_plus__poly_Orep__eq,axiom,
    ! [X: poly_F3299452240248304339ring_a,Xa: poly_F3299452240248304339ring_a] :
      ( ( coeff_1607515655354303335ring_a @ ( plus_p7290290253215468682ring_a @ X @ Xa ) )
      = ( ^ [N4: nat] : ( plus_p6165643967897163644ring_a @ ( coeff_1607515655354303335ring_a @ X @ N4 ) @ ( coeff_1607515655354303335ring_a @ Xa @ N4 ) ) ) ) ).

% plus_poly.rep_eq
thf(fact_521_lessThan__strict__subset__iff,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_set_num @ ( set_ord_lessThan_num @ M ) @ ( set_ord_lessThan_num @ N ) )
      = ( ord_less_num @ M @ N ) ) ).

% lessThan_strict_subset_iff
thf(fact_522_lessThan__strict__subset__iff,axiom,
    ! [M: real,N: real] :
      ( ( ord_less_set_real @ ( set_or5984915006950818249n_real @ M ) @ ( set_or5984915006950818249n_real @ N ) )
      = ( ord_less_real @ M @ N ) ) ).

% lessThan_strict_subset_iff
thf(fact_523_lessThan__strict__subset__iff,axiom,
    ! [M: int,N: int] :
      ( ( ord_less_set_int @ ( set_ord_lessThan_int @ M ) @ ( set_ord_lessThan_int @ N ) )
      = ( ord_less_int @ M @ N ) ) ).

% lessThan_strict_subset_iff
thf(fact_524_lessThan__strict__subset__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_set_nat @ ( set_ord_lessThan_nat @ M ) @ ( set_ord_lessThan_nat @ N ) )
      = ( ord_less_nat @ M @ N ) ) ).

% lessThan_strict_subset_iff
thf(fact_525_left__add__mult__distrib,axiom,
    ! [I: nat,U: nat,J2: nat,K: nat] :
      ( ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ ( plus_plus_nat @ ( times_times_nat @ J2 @ U ) @ K ) )
      = ( plus_plus_nat @ ( times_times_nat @ ( plus_plus_nat @ I @ J2 ) @ U ) @ K ) ) ).

% left_add_mult_distrib
thf(fact_526_lessThan__def,axiom,
    ( set_ord_lessThan_num
    = ( ^ [U2: num] :
          ( collect_num
          @ ^ [X2: num] : ( ord_less_num @ X2 @ U2 ) ) ) ) ).

% lessThan_def
thf(fact_527_lessThan__def,axiom,
    ( set_or5984915006950818249n_real
    = ( ^ [U2: real] :
          ( collect_real
          @ ^ [X2: real] : ( ord_less_real @ X2 @ U2 ) ) ) ) ).

% lessThan_def
thf(fact_528_lessThan__def,axiom,
    ( set_ord_lessThan_int
    = ( ^ [U2: int] :
          ( collect_int
          @ ^ [X2: int] : ( ord_less_int @ X2 @ U2 ) ) ) ) ).

% lessThan_def
thf(fact_529_lessThan__def,axiom,
    ( set_ord_lessThan_nat
    = ( ^ [U2: nat] :
          ( collect_nat
          @ ^ [X2: nat] : ( ord_less_nat @ X2 @ U2 ) ) ) ) ).

% lessThan_def
thf(fact_530_coeff__sum,axiom,
    ! [P2: nat > poly_F3299452240248304339ring_a,A2: set_nat,I: nat] :
      ( ( coeff_1607515655354303335ring_a @ ( groups1100895988254884807ring_a @ P2 @ A2 ) @ I )
      = ( groups3558780024651037881ring_a
        @ ^ [X2: nat] : ( coeff_1607515655354303335ring_a @ ( P2 @ X2 ) @ I )
        @ A2 ) ) ).

% coeff_sum
thf(fact_531_sum__power__add,axiom,
    ! [X: poly_F3299452240248304339ring_a,M: nat,I2: set_nat] :
      ( ( groups1100895988254884807ring_a
        @ ^ [I3: nat] : ( power_6500929916544582089ring_a @ X @ ( plus_plus_nat @ M @ I3 ) )
        @ I2 )
      = ( times_3242606764180207630ring_a @ ( power_6500929916544582089ring_a @ X @ M ) @ ( groups1100895988254884807ring_a @ ( power_6500929916544582089ring_a @ X ) @ I2 ) ) ) ).

% sum_power_add
thf(fact_532_sum__power__add,axiom,
    ! [X: kyber_qr_a,M: nat,I2: set_nat] :
      ( ( groups6127057292362189285r_qr_a
        @ ^ [I3: nat] : ( power_5122640293590465123r_qr_a @ X @ ( plus_plus_nat @ M @ I3 ) )
        @ I2 )
      = ( times_2095635435063429214r_qr_a @ ( power_5122640293590465123r_qr_a @ X @ M ) @ ( groups6127057292362189285r_qr_a @ ( power_5122640293590465123r_qr_a @ X ) @ I2 ) ) ) ).

% sum_power_add
thf(fact_533_sum__power__add,axiom,
    ! [X: real,M: nat,I2: set_nat] :
      ( ( groups6591440286371151544t_real
        @ ^ [I3: nat] : ( power_power_real @ X @ ( plus_plus_nat @ M @ I3 ) )
        @ I2 )
      = ( times_times_real @ ( power_power_real @ X @ M ) @ ( groups6591440286371151544t_real @ ( power_power_real @ X ) @ I2 ) ) ) ).

% sum_power_add
thf(fact_534_sum__power__add,axiom,
    ! [X: int,M: nat,I2: set_nat] :
      ( ( groups3539618377306564664at_int
        @ ^ [I3: nat] : ( power_power_int @ X @ ( plus_plus_nat @ M @ I3 ) )
        @ I2 )
      = ( times_times_int @ ( power_power_int @ X @ M ) @ ( groups3539618377306564664at_int @ ( power_power_int @ X ) @ I2 ) ) ) ).

% sum_power_add
thf(fact_535_sum__power__add,axiom,
    ! [X: finite_mod_ring_a,M: nat,I2: set_nat] :
      ( ( groups3558780024651037881ring_a
        @ ^ [I3: nat] : ( power_6826135765519566523ring_a @ X @ ( plus_plus_nat @ M @ I3 ) )
        @ I2 )
      = ( times_5121417576591743744ring_a @ ( power_6826135765519566523ring_a @ X @ M ) @ ( groups3558780024651037881ring_a @ ( power_6826135765519566523ring_a @ X ) @ I2 ) ) ) ).

% sum_power_add
thf(fact_536_lcoeff__monic__mult,axiom,
    ! [P2: poly_nat,Q: poly_nat] :
      ( ( ( coeff_nat @ P2 @ ( degree_nat @ P2 ) )
        = one_one_nat )
     => ( ( coeff_nat @ ( times_times_poly_nat @ P2 @ Q ) @ ( plus_plus_nat @ ( degree_nat @ P2 ) @ ( degree_nat @ Q ) ) )
        = ( coeff_nat @ Q @ ( degree_nat @ Q ) ) ) ) ).

% lcoeff_monic_mult
thf(fact_537_lcoeff__monic__mult,axiom,
    ! [P2: poly_real,Q: poly_real] :
      ( ( ( coeff_real @ P2 @ ( degree_real @ P2 ) )
        = one_one_real )
     => ( ( coeff_real @ ( times_7914811829580426937y_real @ P2 @ Q ) @ ( plus_plus_nat @ ( degree_real @ P2 ) @ ( degree_real @ Q ) ) )
        = ( coeff_real @ Q @ ( degree_real @ Q ) ) ) ) ).

% lcoeff_monic_mult
thf(fact_538_lcoeff__monic__mult,axiom,
    ! [P2: poly_int,Q: poly_int] :
      ( ( ( coeff_int @ P2 @ ( degree_int @ P2 ) )
        = one_one_int )
     => ( ( coeff_int @ ( times_times_poly_int @ P2 @ Q ) @ ( plus_plus_nat @ ( degree_int @ P2 ) @ ( degree_int @ Q ) ) )
        = ( coeff_int @ Q @ ( degree_int @ Q ) ) ) ) ).

% lcoeff_monic_mult
thf(fact_539_lcoeff__monic__mult,axiom,
    ! [P2: poly_p2573953413498894561ring_a,Q: poly_p2573953413498894561ring_a] :
      ( ( ( coeff_7919988552178873973ring_a @ P2 @ ( degree617341119394917574ring_a @ P2 ) )
        = one_on3394844594818161742ring_a )
     => ( ( coeff_7919988552178873973ring_a @ ( times_7678616233722469404ring_a @ P2 @ Q ) @ ( plus_plus_nat @ ( degree617341119394917574ring_a @ P2 ) @ ( degree617341119394917574ring_a @ Q ) ) )
        = ( coeff_7919988552178873973ring_a @ Q @ ( degree617341119394917574ring_a @ Q ) ) ) ) ).

% lcoeff_monic_mult
thf(fact_540_lcoeff__monic__mult,axiom,
    ! [P2: poly_F3299452240248304339ring_a,Q: poly_F3299452240248304339ring_a] :
      ( ( ( coeff_1607515655354303335ring_a @ P2 @ ( degree4881254707062955960ring_a @ P2 ) )
        = one_on2109788427901206336ring_a )
     => ( ( coeff_1607515655354303335ring_a @ ( times_3242606764180207630ring_a @ P2 @ Q ) @ ( plus_plus_nat @ ( degree4881254707062955960ring_a @ P2 ) @ ( degree4881254707062955960ring_a @ Q ) ) )
        = ( coeff_1607515655354303335ring_a @ Q @ ( degree4881254707062955960ring_a @ Q ) ) ) ) ).

% lcoeff_monic_mult
thf(fact_541_add__minus__cancel,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a] :
      ( ( plus_p7290290253215468682ring_a @ A @ ( plus_p7290290253215468682ring_a @ ( uminus6490753114102738890ring_a @ A ) @ B ) )
      = B ) ).

% add_minus_cancel
thf(fact_542_add__minus__cancel,axiom,
    ! [A: int,B: int] :
      ( ( plus_plus_int @ A @ ( plus_plus_int @ ( uminus_uminus_int @ A ) @ B ) )
      = B ) ).

% add_minus_cancel
thf(fact_543_add__minus__cancel,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a] :
      ( ( plus_plus_Kyber_qr_a @ A @ ( plus_plus_Kyber_qr_a @ ( uminus3675112017196868514r_qr_a @ A ) @ B ) )
      = B ) ).

% add_minus_cancel
thf(fact_544_add__minus__cancel,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a] :
      ( ( plus_p6165643967897163644ring_a @ A @ ( plus_p6165643967897163644ring_a @ ( uminus3100561713750211260ring_a @ A ) @ B ) )
      = B ) ).

% add_minus_cancel
thf(fact_545_add__minus__cancel,axiom,
    ! [A: real,B: real] :
      ( ( plus_plus_real @ A @ ( plus_plus_real @ ( uminus_uminus_real @ A ) @ B ) )
      = B ) ).

% add_minus_cancel
thf(fact_546_minus__add__cancel,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a] :
      ( ( plus_p7290290253215468682ring_a @ ( uminus6490753114102738890ring_a @ A ) @ ( plus_p7290290253215468682ring_a @ A @ B ) )
      = B ) ).

% minus_add_cancel
thf(fact_547_minus__add__cancel,axiom,
    ! [A: int,B: int] :
      ( ( plus_plus_int @ ( uminus_uminus_int @ A ) @ ( plus_plus_int @ A @ B ) )
      = B ) ).

% minus_add_cancel
thf(fact_548_minus__add__cancel,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a] :
      ( ( plus_plus_Kyber_qr_a @ ( uminus3675112017196868514r_qr_a @ A ) @ ( plus_plus_Kyber_qr_a @ A @ B ) )
      = B ) ).

% minus_add_cancel
thf(fact_549_minus__add__cancel,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a] :
      ( ( plus_p6165643967897163644ring_a @ ( uminus3100561713750211260ring_a @ A ) @ ( plus_p6165643967897163644ring_a @ A @ B ) )
      = B ) ).

% minus_add_cancel
thf(fact_550_minus__add__cancel,axiom,
    ! [A: real,B: real] :
      ( ( plus_plus_real @ ( uminus_uminus_real @ A ) @ ( plus_plus_real @ A @ B ) )
      = B ) ).

% minus_add_cancel
thf(fact_551_minus__add__distrib,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a] :
      ( ( uminus6490753114102738890ring_a @ ( plus_p7290290253215468682ring_a @ A @ B ) )
      = ( plus_p7290290253215468682ring_a @ ( uminus6490753114102738890ring_a @ A ) @ ( uminus6490753114102738890ring_a @ B ) ) ) ).

% minus_add_distrib
thf(fact_552_minus__add__distrib,axiom,
    ! [A: int,B: int] :
      ( ( uminus_uminus_int @ ( plus_plus_int @ A @ B ) )
      = ( plus_plus_int @ ( uminus_uminus_int @ A ) @ ( uminus_uminus_int @ B ) ) ) ).

% minus_add_distrib
thf(fact_553_minus__add__distrib,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a] :
      ( ( uminus3675112017196868514r_qr_a @ ( plus_plus_Kyber_qr_a @ A @ B ) )
      = ( plus_plus_Kyber_qr_a @ ( uminus3675112017196868514r_qr_a @ A ) @ ( uminus3675112017196868514r_qr_a @ B ) ) ) ).

% minus_add_distrib
thf(fact_554_minus__add__distrib,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a] :
      ( ( uminus3100561713750211260ring_a @ ( plus_p6165643967897163644ring_a @ A @ B ) )
      = ( plus_p6165643967897163644ring_a @ ( uminus3100561713750211260ring_a @ A ) @ ( uminus3100561713750211260ring_a @ B ) ) ) ).

% minus_add_distrib
thf(fact_555_minus__add__distrib,axiom,
    ! [A: real,B: real] :
      ( ( uminus_uminus_real @ ( plus_plus_real @ A @ B ) )
      = ( plus_plus_real @ ( uminus_uminus_real @ A ) @ ( uminus_uminus_real @ B ) ) ) ).

% minus_add_distrib
thf(fact_556_mult__minus__left,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ ( uminus6490753114102738890ring_a @ A ) @ B )
      = ( uminus6490753114102738890ring_a @ ( times_3242606764180207630ring_a @ A @ B ) ) ) ).

% mult_minus_left
thf(fact_557_mult__minus__left,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ ( uminus3675112017196868514r_qr_a @ A ) @ B )
      = ( uminus3675112017196868514r_qr_a @ ( times_2095635435063429214r_qr_a @ A @ B ) ) ) ).

% mult_minus_left
thf(fact_558_mult__minus__left,axiom,
    ! [A: int,B: int] :
      ( ( times_times_int @ ( uminus_uminus_int @ A ) @ B )
      = ( uminus_uminus_int @ ( times_times_int @ A @ B ) ) ) ).

% mult_minus_left
thf(fact_559_mult__minus__left,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a] :
      ( ( times_5121417576591743744ring_a @ ( uminus3100561713750211260ring_a @ A ) @ B )
      = ( uminus3100561713750211260ring_a @ ( times_5121417576591743744ring_a @ A @ B ) ) ) ).

% mult_minus_left
thf(fact_560_mult__minus__left,axiom,
    ! [A: real,B: real] :
      ( ( times_times_real @ ( uminus_uminus_real @ A ) @ B )
      = ( uminus_uminus_real @ ( times_times_real @ A @ B ) ) ) ).

% mult_minus_left
thf(fact_561_minus__mult__minus,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ ( uminus6490753114102738890ring_a @ A ) @ ( uminus6490753114102738890ring_a @ B ) )
      = ( times_3242606764180207630ring_a @ A @ B ) ) ).

% minus_mult_minus
thf(fact_562_minus__mult__minus,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ ( uminus3675112017196868514r_qr_a @ A ) @ ( uminus3675112017196868514r_qr_a @ B ) )
      = ( times_2095635435063429214r_qr_a @ A @ B ) ) ).

% minus_mult_minus
thf(fact_563_minus__mult__minus,axiom,
    ! [A: int,B: int] :
      ( ( times_times_int @ ( uminus_uminus_int @ A ) @ ( uminus_uminus_int @ B ) )
      = ( times_times_int @ A @ B ) ) ).

% minus_mult_minus
thf(fact_564_minus__mult__minus,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a] :
      ( ( times_5121417576591743744ring_a @ ( uminus3100561713750211260ring_a @ A ) @ ( uminus3100561713750211260ring_a @ B ) )
      = ( times_5121417576591743744ring_a @ A @ B ) ) ).

% minus_mult_minus
thf(fact_565_minus__mult__minus,axiom,
    ! [A: real,B: real] :
      ( ( times_times_real @ ( uminus_uminus_real @ A ) @ ( uminus_uminus_real @ B ) )
      = ( times_times_real @ A @ B ) ) ).

% minus_mult_minus
thf(fact_566_mult__minus__right,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ A @ ( uminus6490753114102738890ring_a @ B ) )
      = ( uminus6490753114102738890ring_a @ ( times_3242606764180207630ring_a @ A @ B ) ) ) ).

% mult_minus_right
thf(fact_567_mult__minus__right,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ A @ ( uminus3675112017196868514r_qr_a @ B ) )
      = ( uminus3675112017196868514r_qr_a @ ( times_2095635435063429214r_qr_a @ A @ B ) ) ) ).

% mult_minus_right
thf(fact_568_mult__minus__right,axiom,
    ! [A: int,B: int] :
      ( ( times_times_int @ A @ ( uminus_uminus_int @ B ) )
      = ( uminus_uminus_int @ ( times_times_int @ A @ B ) ) ) ).

% mult_minus_right
thf(fact_569_mult__minus__right,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a] :
      ( ( times_5121417576591743744ring_a @ A @ ( uminus3100561713750211260ring_a @ B ) )
      = ( uminus3100561713750211260ring_a @ ( times_5121417576591743744ring_a @ A @ B ) ) ) ).

% mult_minus_right
thf(fact_570_mult__minus__right,axiom,
    ! [A: real,B: real] :
      ( ( times_times_real @ A @ ( uminus_uminus_real @ B ) )
      = ( uminus_uminus_real @ ( times_times_real @ A @ B ) ) ) ).

% mult_minus_right
thf(fact_571_neg__less__iff__less,axiom,
    ! [B: int,A: int] :
      ( ( ord_less_int @ ( uminus_uminus_int @ B ) @ ( uminus_uminus_int @ A ) )
      = ( ord_less_int @ A @ B ) ) ).

% neg_less_iff_less
thf(fact_572_neg__less__iff__less,axiom,
    ! [B: real,A: real] :
      ( ( ord_less_real @ ( uminus_uminus_real @ B ) @ ( uminus_uminus_real @ A ) )
      = ( ord_less_real @ A @ B ) ) ).

% neg_less_iff_less
thf(fact_573_add__less__cancel__left,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) )
      = ( ord_less_nat @ A @ B ) ) ).

% add_less_cancel_left
thf(fact_574_add__less__cancel__left,axiom,
    ! [C: real,A: real,B: real] :
      ( ( ord_less_real @ ( plus_plus_real @ C @ A ) @ ( plus_plus_real @ C @ B ) )
      = ( ord_less_real @ A @ B ) ) ).

% add_less_cancel_left
thf(fact_575_add__less__cancel__left,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_int @ ( plus_plus_int @ C @ A ) @ ( plus_plus_int @ C @ B ) )
      = ( ord_less_int @ A @ B ) ) ).

% add_less_cancel_left
thf(fact_576_add__right__cancel,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( ( plus_plus_nat @ B @ A )
        = ( plus_plus_nat @ C @ A ) )
      = ( B = C ) ) ).

% add_right_cancel
thf(fact_577_add__right__cancel,axiom,
    ! [B: poly_F3299452240248304339ring_a,A: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a] :
      ( ( ( plus_p7290290253215468682ring_a @ B @ A )
        = ( plus_p7290290253215468682ring_a @ C @ A ) )
      = ( B = C ) ) ).

% add_right_cancel
thf(fact_578_add__right__cancel,axiom,
    ! [B: real,A: real,C: real] :
      ( ( ( plus_plus_real @ B @ A )
        = ( plus_plus_real @ C @ A ) )
      = ( B = C ) ) ).

% add_right_cancel
thf(fact_579_add__right__cancel,axiom,
    ! [B: int,A: int,C: int] :
      ( ( ( plus_plus_int @ B @ A )
        = ( plus_plus_int @ C @ A ) )
      = ( B = C ) ) ).

% add_right_cancel
thf(fact_580_add__right__cancel,axiom,
    ! [B: finite_mod_ring_a,A: finite_mod_ring_a,C: finite_mod_ring_a] :
      ( ( ( plus_p6165643967897163644ring_a @ B @ A )
        = ( plus_p6165643967897163644ring_a @ C @ A ) )
      = ( B = C ) ) ).

% add_right_cancel
thf(fact_581_add__right__cancel,axiom,
    ! [B: kyber_qr_a,A: kyber_qr_a,C: kyber_qr_a] :
      ( ( ( plus_plus_Kyber_qr_a @ B @ A )
        = ( plus_plus_Kyber_qr_a @ C @ A ) )
      = ( B = C ) ) ).

% add_right_cancel
thf(fact_582_add__left__cancel,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ( plus_plus_nat @ A @ B )
        = ( plus_plus_nat @ A @ C ) )
      = ( B = C ) ) ).

% add_left_cancel
thf(fact_583_add__left__cancel,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a] :
      ( ( ( plus_p7290290253215468682ring_a @ A @ B )
        = ( plus_p7290290253215468682ring_a @ A @ C ) )
      = ( B = C ) ) ).

% add_left_cancel
thf(fact_584_add__left__cancel,axiom,
    ! [A: real,B: real,C: real] :
      ( ( ( plus_plus_real @ A @ B )
        = ( plus_plus_real @ A @ C ) )
      = ( B = C ) ) ).

% add_left_cancel
thf(fact_585_add__left__cancel,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ( plus_plus_int @ A @ B )
        = ( plus_plus_int @ A @ C ) )
      = ( B = C ) ) ).

% add_left_cancel
thf(fact_586_add__left__cancel,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a,C: finite_mod_ring_a] :
      ( ( ( plus_p6165643967897163644ring_a @ A @ B )
        = ( plus_p6165643967897163644ring_a @ A @ C ) )
      = ( B = C ) ) ).

% add_left_cancel
thf(fact_587_add__left__cancel,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a,C: kyber_qr_a] :
      ( ( ( plus_plus_Kyber_qr_a @ A @ B )
        = ( plus_plus_Kyber_qr_a @ A @ C ) )
      = ( B = C ) ) ).

% add_left_cancel
thf(fact_588_add_Oinverse__inverse,axiom,
    ! [A: finite_mod_ring_a] :
      ( ( uminus3100561713750211260ring_a @ ( uminus3100561713750211260ring_a @ A ) )
      = A ) ).

% add.inverse_inverse
thf(fact_589_add_Oinverse__inverse,axiom,
    ! [A: real] :
      ( ( uminus_uminus_real @ ( uminus_uminus_real @ A ) )
      = A ) ).

% add.inverse_inverse
thf(fact_590_neg__equal__iff__equal,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a] :
      ( ( ( uminus3100561713750211260ring_a @ A )
        = ( uminus3100561713750211260ring_a @ B ) )
      = ( A = B ) ) ).

% neg_equal_iff_equal
thf(fact_591_neg__equal__iff__equal,axiom,
    ! [A: real,B: real] :
      ( ( ( uminus_uminus_real @ A )
        = ( uminus_uminus_real @ B ) )
      = ( A = B ) ) ).

% neg_equal_iff_equal
thf(fact_592_mult__1,axiom,
    ! [A: finite_mod_ring_a] :
      ( ( times_5121417576591743744ring_a @ one_on2109788427901206336ring_a @ A )
      = A ) ).

% mult_1
thf(fact_593_mult__1,axiom,
    ! [A: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ one_on3394844594818161742ring_a @ A )
      = A ) ).

% mult_1
thf(fact_594_mult__1,axiom,
    ! [A: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ one_one_Kyber_qr_a @ A )
      = A ) ).

% mult_1
thf(fact_595_mult__1,axiom,
    ! [A: real] :
      ( ( times_times_real @ one_one_real @ A )
      = A ) ).

% mult_1
thf(fact_596_mult__1,axiom,
    ! [A: nat] :
      ( ( times_times_nat @ one_one_nat @ A )
      = A ) ).

% mult_1
thf(fact_597_mult__1,axiom,
    ! [A: int] :
      ( ( times_times_int @ one_one_int @ A )
      = A ) ).

% mult_1
thf(fact_598_mult_Oright__neutral,axiom,
    ! [A: finite_mod_ring_a] :
      ( ( times_5121417576591743744ring_a @ A @ one_on2109788427901206336ring_a )
      = A ) ).

% mult.right_neutral
thf(fact_599_mult_Oright__neutral,axiom,
    ! [A: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ A @ one_on3394844594818161742ring_a )
      = A ) ).

% mult.right_neutral
thf(fact_600_mult_Oright__neutral,axiom,
    ! [A: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ A @ one_one_Kyber_qr_a )
      = A ) ).

% mult.right_neutral
thf(fact_601_mult_Oright__neutral,axiom,
    ! [A: real] :
      ( ( times_times_real @ A @ one_one_real )
      = A ) ).

% mult.right_neutral
thf(fact_602_mult_Oright__neutral,axiom,
    ! [A: nat] :
      ( ( times_times_nat @ A @ one_one_nat )
      = A ) ).

% mult.right_neutral
thf(fact_603_mult_Oright__neutral,axiom,
    ! [A: int] :
      ( ( times_times_int @ A @ one_one_int )
      = A ) ).

% mult.right_neutral
thf(fact_604_add__less__cancel__right,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) )
      = ( ord_less_nat @ A @ B ) ) ).

% add_less_cancel_right
thf(fact_605_add__less__cancel__right,axiom,
    ! [A: real,C: real,B: real] :
      ( ( ord_less_real @ ( plus_plus_real @ A @ C ) @ ( plus_plus_real @ B @ C ) )
      = ( ord_less_real @ A @ B ) ) ).

% add_less_cancel_right
thf(fact_606_add__less__cancel__right,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ord_less_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ C ) )
      = ( ord_less_int @ A @ B ) ) ).

% add_less_cancel_right
thf(fact_607_degree__minus,axiom,
    ! [P2: poly_F3299452240248304339ring_a] :
      ( ( degree4881254707062955960ring_a @ ( uminus6490753114102738890ring_a @ P2 ) )
      = ( degree4881254707062955960ring_a @ P2 ) ) ).

% degree_minus
thf(fact_608_linorder__neqE__linordered__idom,axiom,
    ! [X: real,Y: real] :
      ( ( X != Y )
     => ( ~ ( ord_less_real @ X @ Y )
       => ( ord_less_real @ Y @ X ) ) ) ).

% linorder_neqE_linordered_idom
thf(fact_609_linorder__neqE__linordered__idom,axiom,
    ! [X: int,Y: int] :
      ( ( X != Y )
     => ( ~ ( ord_less_int @ X @ Y )
       => ( ord_less_int @ Y @ X ) ) ) ).

% linorder_neqE_linordered_idom
thf(fact_610_mult_Oleft__commute,axiom,
    ! [B: poly_F3299452240248304339ring_a,A: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ B @ ( times_3242606764180207630ring_a @ A @ C ) )
      = ( times_3242606764180207630ring_a @ A @ ( times_3242606764180207630ring_a @ B @ C ) ) ) ).

% mult.left_commute
thf(fact_611_mult_Oleft__commute,axiom,
    ! [B: kyber_qr_a,A: kyber_qr_a,C: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ B @ ( times_2095635435063429214r_qr_a @ A @ C ) )
      = ( times_2095635435063429214r_qr_a @ A @ ( times_2095635435063429214r_qr_a @ B @ C ) ) ) ).

% mult.left_commute
thf(fact_612_mult_Oleft__commute,axiom,
    ! [B: real,A: real,C: real] :
      ( ( times_times_real @ B @ ( times_times_real @ A @ C ) )
      = ( times_times_real @ A @ ( times_times_real @ B @ C ) ) ) ).

% mult.left_commute
thf(fact_613_mult_Oleft__commute,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( times_times_nat @ B @ ( times_times_nat @ A @ C ) )
      = ( times_times_nat @ A @ ( times_times_nat @ B @ C ) ) ) ).

% mult.left_commute
thf(fact_614_mult_Oleft__commute,axiom,
    ! [B: int,A: int,C: int] :
      ( ( times_times_int @ B @ ( times_times_int @ A @ C ) )
      = ( times_times_int @ A @ ( times_times_int @ B @ C ) ) ) ).

% mult.left_commute
thf(fact_615_mult_Ocommute,axiom,
    ( times_3242606764180207630ring_a
    = ( ^ [A3: poly_F3299452240248304339ring_a,B2: poly_F3299452240248304339ring_a] : ( times_3242606764180207630ring_a @ B2 @ A3 ) ) ) ).

% mult.commute
thf(fact_616_mult_Ocommute,axiom,
    ( times_2095635435063429214r_qr_a
    = ( ^ [A3: kyber_qr_a,B2: kyber_qr_a] : ( times_2095635435063429214r_qr_a @ B2 @ A3 ) ) ) ).

% mult.commute
thf(fact_617_mult_Ocommute,axiom,
    ( times_times_real
    = ( ^ [A3: real,B2: real] : ( times_times_real @ B2 @ A3 ) ) ) ).

% mult.commute
thf(fact_618_mult_Ocommute,axiom,
    ( times_times_nat
    = ( ^ [A3: nat,B2: nat] : ( times_times_nat @ B2 @ A3 ) ) ) ).

% mult.commute
thf(fact_619_mult_Ocommute,axiom,
    ( times_times_int
    = ( ^ [A3: int,B2: int] : ( times_times_int @ B2 @ A3 ) ) ) ).

% mult.commute
thf(fact_620_mult_Oassoc,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ ( times_3242606764180207630ring_a @ A @ B ) @ C )
      = ( times_3242606764180207630ring_a @ A @ ( times_3242606764180207630ring_a @ B @ C ) ) ) ).

% mult.assoc
thf(fact_621_mult_Oassoc,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a,C: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ ( times_2095635435063429214r_qr_a @ A @ B ) @ C )
      = ( times_2095635435063429214r_qr_a @ A @ ( times_2095635435063429214r_qr_a @ B @ C ) ) ) ).

% mult.assoc
thf(fact_622_mult_Oassoc,axiom,
    ! [A: real,B: real,C: real] :
      ( ( times_times_real @ ( times_times_real @ A @ B ) @ C )
      = ( times_times_real @ A @ ( times_times_real @ B @ C ) ) ) ).

% mult.assoc
thf(fact_623_mult_Oassoc,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( times_times_nat @ ( times_times_nat @ A @ B ) @ C )
      = ( times_times_nat @ A @ ( times_times_nat @ B @ C ) ) ) ).

% mult.assoc
thf(fact_624_mult_Oassoc,axiom,
    ! [A: int,B: int,C: int] :
      ( ( times_times_int @ ( times_times_int @ A @ B ) @ C )
      = ( times_times_int @ A @ ( times_times_int @ B @ C ) ) ) ).

% mult.assoc
thf(fact_625_ab__semigroup__mult__class_Omult__ac_I1_J,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ ( times_3242606764180207630ring_a @ A @ B ) @ C )
      = ( times_3242606764180207630ring_a @ A @ ( times_3242606764180207630ring_a @ B @ C ) ) ) ).

% ab_semigroup_mult_class.mult_ac(1)
thf(fact_626_ab__semigroup__mult__class_Omult__ac_I1_J,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a,C: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ ( times_2095635435063429214r_qr_a @ A @ B ) @ C )
      = ( times_2095635435063429214r_qr_a @ A @ ( times_2095635435063429214r_qr_a @ B @ C ) ) ) ).

% ab_semigroup_mult_class.mult_ac(1)
thf(fact_627_ab__semigroup__mult__class_Omult__ac_I1_J,axiom,
    ! [A: real,B: real,C: real] :
      ( ( times_times_real @ ( times_times_real @ A @ B ) @ C )
      = ( times_times_real @ A @ ( times_times_real @ B @ C ) ) ) ).

% ab_semigroup_mult_class.mult_ac(1)
thf(fact_628_ab__semigroup__mult__class_Omult__ac_I1_J,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( times_times_nat @ ( times_times_nat @ A @ B ) @ C )
      = ( times_times_nat @ A @ ( times_times_nat @ B @ C ) ) ) ).

% ab_semigroup_mult_class.mult_ac(1)
thf(fact_629_ab__semigroup__mult__class_Omult__ac_I1_J,axiom,
    ! [A: int,B: int,C: int] :
      ( ( times_times_int @ ( times_times_int @ A @ B ) @ C )
      = ( times_times_int @ A @ ( times_times_int @ B @ C ) ) ) ).

% ab_semigroup_mult_class.mult_ac(1)
thf(fact_630_one__reorient,axiom,
    ! [X: nat] :
      ( ( one_one_nat = X )
      = ( X = one_one_nat ) ) ).

% one_reorient
thf(fact_631_one__reorient,axiom,
    ! [X: finite_mod_ring_a] :
      ( ( one_on2109788427901206336ring_a = X )
      = ( X = one_on2109788427901206336ring_a ) ) ).

% one_reorient
thf(fact_632_one__reorient,axiom,
    ! [X: real] :
      ( ( one_one_real = X )
      = ( X = one_one_real ) ) ).

% one_reorient
thf(fact_633_one__reorient,axiom,
    ! [X: int] :
      ( ( one_one_int = X )
      = ( X = one_one_int ) ) ).

% one_reorient
thf(fact_634_one__reorient,axiom,
    ! [X: poly_F3299452240248304339ring_a] :
      ( ( one_on3394844594818161742ring_a = X )
      = ( X = one_on3394844594818161742ring_a ) ) ).

% one_reorient
thf(fact_635_add__right__imp__eq,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( ( plus_plus_nat @ B @ A )
        = ( plus_plus_nat @ C @ A ) )
     => ( B = C ) ) ).

% add_right_imp_eq
thf(fact_636_add__right__imp__eq,axiom,
    ! [B: poly_F3299452240248304339ring_a,A: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a] :
      ( ( ( plus_p7290290253215468682ring_a @ B @ A )
        = ( plus_p7290290253215468682ring_a @ C @ A ) )
     => ( B = C ) ) ).

% add_right_imp_eq
thf(fact_637_add__right__imp__eq,axiom,
    ! [B: real,A: real,C: real] :
      ( ( ( plus_plus_real @ B @ A )
        = ( plus_plus_real @ C @ A ) )
     => ( B = C ) ) ).

% add_right_imp_eq
thf(fact_638_add__right__imp__eq,axiom,
    ! [B: int,A: int,C: int] :
      ( ( ( plus_plus_int @ B @ A )
        = ( plus_plus_int @ C @ A ) )
     => ( B = C ) ) ).

% add_right_imp_eq
thf(fact_639_add__right__imp__eq,axiom,
    ! [B: finite_mod_ring_a,A: finite_mod_ring_a,C: finite_mod_ring_a] :
      ( ( ( plus_p6165643967897163644ring_a @ B @ A )
        = ( plus_p6165643967897163644ring_a @ C @ A ) )
     => ( B = C ) ) ).

% add_right_imp_eq
thf(fact_640_add__right__imp__eq,axiom,
    ! [B: kyber_qr_a,A: kyber_qr_a,C: kyber_qr_a] :
      ( ( ( plus_plus_Kyber_qr_a @ B @ A )
        = ( plus_plus_Kyber_qr_a @ C @ A ) )
     => ( B = C ) ) ).

% add_right_imp_eq
thf(fact_641_add__left__imp__eq,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ( plus_plus_nat @ A @ B )
        = ( plus_plus_nat @ A @ C ) )
     => ( B = C ) ) ).

% add_left_imp_eq
thf(fact_642_add__left__imp__eq,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a] :
      ( ( ( plus_p7290290253215468682ring_a @ A @ B )
        = ( plus_p7290290253215468682ring_a @ A @ C ) )
     => ( B = C ) ) ).

% add_left_imp_eq
thf(fact_643_add__left__imp__eq,axiom,
    ! [A: real,B: real,C: real] :
      ( ( ( plus_plus_real @ A @ B )
        = ( plus_plus_real @ A @ C ) )
     => ( B = C ) ) ).

% add_left_imp_eq
thf(fact_644_add__left__imp__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ( plus_plus_int @ A @ B )
        = ( plus_plus_int @ A @ C ) )
     => ( B = C ) ) ).

% add_left_imp_eq
thf(fact_645_add__left__imp__eq,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a,C: finite_mod_ring_a] :
      ( ( ( plus_p6165643967897163644ring_a @ A @ B )
        = ( plus_p6165643967897163644ring_a @ A @ C ) )
     => ( B = C ) ) ).

% add_left_imp_eq
thf(fact_646_add__left__imp__eq,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a,C: kyber_qr_a] :
      ( ( ( plus_plus_Kyber_qr_a @ A @ B )
        = ( plus_plus_Kyber_qr_a @ A @ C ) )
     => ( B = C ) ) ).

% add_left_imp_eq
thf(fact_647_add_Oleft__commute,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( plus_plus_nat @ B @ ( plus_plus_nat @ A @ C ) )
      = ( plus_plus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).

% add.left_commute
thf(fact_648_add_Oleft__commute,axiom,
    ! [B: poly_F3299452240248304339ring_a,A: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a] :
      ( ( plus_p7290290253215468682ring_a @ B @ ( plus_p7290290253215468682ring_a @ A @ C ) )
      = ( plus_p7290290253215468682ring_a @ A @ ( plus_p7290290253215468682ring_a @ B @ C ) ) ) ).

% add.left_commute
thf(fact_649_add_Oleft__commute,axiom,
    ! [B: real,A: real,C: real] :
      ( ( plus_plus_real @ B @ ( plus_plus_real @ A @ C ) )
      = ( plus_plus_real @ A @ ( plus_plus_real @ B @ C ) ) ) ).

% add.left_commute
thf(fact_650_add_Oleft__commute,axiom,
    ! [B: int,A: int,C: int] :
      ( ( plus_plus_int @ B @ ( plus_plus_int @ A @ C ) )
      = ( plus_plus_int @ A @ ( plus_plus_int @ B @ C ) ) ) ).

% add.left_commute
thf(fact_651_add_Oleft__commute,axiom,
    ! [B: finite_mod_ring_a,A: finite_mod_ring_a,C: finite_mod_ring_a] :
      ( ( plus_p6165643967897163644ring_a @ B @ ( plus_p6165643967897163644ring_a @ A @ C ) )
      = ( plus_p6165643967897163644ring_a @ A @ ( plus_p6165643967897163644ring_a @ B @ C ) ) ) ).

% add.left_commute
thf(fact_652_add_Oleft__commute,axiom,
    ! [B: kyber_qr_a,A: kyber_qr_a,C: kyber_qr_a] :
      ( ( plus_plus_Kyber_qr_a @ B @ ( plus_plus_Kyber_qr_a @ A @ C ) )
      = ( plus_plus_Kyber_qr_a @ A @ ( plus_plus_Kyber_qr_a @ B @ C ) ) ) ).

% add.left_commute
thf(fact_653_add_Ocommute,axiom,
    ( plus_plus_nat
    = ( ^ [A3: nat,B2: nat] : ( plus_plus_nat @ B2 @ A3 ) ) ) ).

% add.commute
thf(fact_654_add_Ocommute,axiom,
    ( plus_p7290290253215468682ring_a
    = ( ^ [A3: poly_F3299452240248304339ring_a,B2: poly_F3299452240248304339ring_a] : ( plus_p7290290253215468682ring_a @ B2 @ A3 ) ) ) ).

% add.commute
thf(fact_655_add_Ocommute,axiom,
    ( plus_plus_real
    = ( ^ [A3: real,B2: real] : ( plus_plus_real @ B2 @ A3 ) ) ) ).

% add.commute
thf(fact_656_add_Ocommute,axiom,
    ( plus_plus_int
    = ( ^ [A3: int,B2: int] : ( plus_plus_int @ B2 @ A3 ) ) ) ).

% add.commute
thf(fact_657_add_Ocommute,axiom,
    ( plus_p6165643967897163644ring_a
    = ( ^ [A3: finite_mod_ring_a,B2: finite_mod_ring_a] : ( plus_p6165643967897163644ring_a @ B2 @ A3 ) ) ) ).

% add.commute
thf(fact_658_add_Ocommute,axiom,
    ( plus_plus_Kyber_qr_a
    = ( ^ [A3: kyber_qr_a,B2: kyber_qr_a] : ( plus_plus_Kyber_qr_a @ B2 @ A3 ) ) ) ).

% add.commute
thf(fact_659_add_Oright__cancel,axiom,
    ! [B: poly_F3299452240248304339ring_a,A: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a] :
      ( ( ( plus_p7290290253215468682ring_a @ B @ A )
        = ( plus_p7290290253215468682ring_a @ C @ A ) )
      = ( B = C ) ) ).

% add.right_cancel
thf(fact_660_add_Oright__cancel,axiom,
    ! [B: real,A: real,C: real] :
      ( ( ( plus_plus_real @ B @ A )
        = ( plus_plus_real @ C @ A ) )
      = ( B = C ) ) ).

% add.right_cancel
thf(fact_661_add_Oright__cancel,axiom,
    ! [B: int,A: int,C: int] :
      ( ( ( plus_plus_int @ B @ A )
        = ( plus_plus_int @ C @ A ) )
      = ( B = C ) ) ).

% add.right_cancel
thf(fact_662_add_Oright__cancel,axiom,
    ! [B: finite_mod_ring_a,A: finite_mod_ring_a,C: finite_mod_ring_a] :
      ( ( ( plus_p6165643967897163644ring_a @ B @ A )
        = ( plus_p6165643967897163644ring_a @ C @ A ) )
      = ( B = C ) ) ).

% add.right_cancel
thf(fact_663_add_Oright__cancel,axiom,
    ! [B: kyber_qr_a,A: kyber_qr_a,C: kyber_qr_a] :
      ( ( ( plus_plus_Kyber_qr_a @ B @ A )
        = ( plus_plus_Kyber_qr_a @ C @ A ) )
      = ( B = C ) ) ).

% add.right_cancel
thf(fact_664_add_Oleft__cancel,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a] :
      ( ( ( plus_p7290290253215468682ring_a @ A @ B )
        = ( plus_p7290290253215468682ring_a @ A @ C ) )
      = ( B = C ) ) ).

% add.left_cancel
thf(fact_665_add_Oleft__cancel,axiom,
    ! [A: real,B: real,C: real] :
      ( ( ( plus_plus_real @ A @ B )
        = ( plus_plus_real @ A @ C ) )
      = ( B = C ) ) ).

% add.left_cancel
thf(fact_666_add_Oleft__cancel,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ( plus_plus_int @ A @ B )
        = ( plus_plus_int @ A @ C ) )
      = ( B = C ) ) ).

% add.left_cancel
thf(fact_667_add_Oleft__cancel,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a,C: finite_mod_ring_a] :
      ( ( ( plus_p6165643967897163644ring_a @ A @ B )
        = ( plus_p6165643967897163644ring_a @ A @ C ) )
      = ( B = C ) ) ).

% add.left_cancel
thf(fact_668_add_Oleft__cancel,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a,C: kyber_qr_a] :
      ( ( ( plus_plus_Kyber_qr_a @ A @ B )
        = ( plus_plus_Kyber_qr_a @ A @ C ) )
      = ( B = C ) ) ).

% add.left_cancel
thf(fact_669_add_Oassoc,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( plus_plus_nat @ ( plus_plus_nat @ A @ B ) @ C )
      = ( plus_plus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).

% add.assoc
thf(fact_670_add_Oassoc,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a] :
      ( ( plus_p7290290253215468682ring_a @ ( plus_p7290290253215468682ring_a @ A @ B ) @ C )
      = ( plus_p7290290253215468682ring_a @ A @ ( plus_p7290290253215468682ring_a @ B @ C ) ) ) ).

% add.assoc
thf(fact_671_add_Oassoc,axiom,
    ! [A: real,B: real,C: real] :
      ( ( plus_plus_real @ ( plus_plus_real @ A @ B ) @ C )
      = ( plus_plus_real @ A @ ( plus_plus_real @ B @ C ) ) ) ).

% add.assoc
thf(fact_672_add_Oassoc,axiom,
    ! [A: int,B: int,C: int] :
      ( ( plus_plus_int @ ( plus_plus_int @ A @ B ) @ C )
      = ( plus_plus_int @ A @ ( plus_plus_int @ B @ C ) ) ) ).

% add.assoc
thf(fact_673_add_Oassoc,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a,C: finite_mod_ring_a] :
      ( ( plus_p6165643967897163644ring_a @ ( plus_p6165643967897163644ring_a @ A @ B ) @ C )
      = ( plus_p6165643967897163644ring_a @ A @ ( plus_p6165643967897163644ring_a @ B @ C ) ) ) ).

% add.assoc
thf(fact_674_add_Oassoc,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a,C: kyber_qr_a] :
      ( ( plus_plus_Kyber_qr_a @ ( plus_plus_Kyber_qr_a @ A @ B ) @ C )
      = ( plus_plus_Kyber_qr_a @ A @ ( plus_plus_Kyber_qr_a @ B @ C ) ) ) ).

% add.assoc
thf(fact_675_group__cancel_Oadd2,axiom,
    ! [B3: nat,K: nat,B: nat,A: nat] :
      ( ( B3
        = ( plus_plus_nat @ K @ B ) )
     => ( ( plus_plus_nat @ A @ B3 )
        = ( plus_plus_nat @ K @ ( plus_plus_nat @ A @ B ) ) ) ) ).

% group_cancel.add2
thf(fact_676_group__cancel_Oadd2,axiom,
    ! [B3: poly_F3299452240248304339ring_a,K: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a,A: poly_F3299452240248304339ring_a] :
      ( ( B3
        = ( plus_p7290290253215468682ring_a @ K @ B ) )
     => ( ( plus_p7290290253215468682ring_a @ A @ B3 )
        = ( plus_p7290290253215468682ring_a @ K @ ( plus_p7290290253215468682ring_a @ A @ B ) ) ) ) ).

% group_cancel.add2
thf(fact_677_group__cancel_Oadd2,axiom,
    ! [B3: real,K: real,B: real,A: real] :
      ( ( B3
        = ( plus_plus_real @ K @ B ) )
     => ( ( plus_plus_real @ A @ B3 )
        = ( plus_plus_real @ K @ ( plus_plus_real @ A @ B ) ) ) ) ).

% group_cancel.add2
thf(fact_678_group__cancel_Oadd2,axiom,
    ! [B3: int,K: int,B: int,A: int] :
      ( ( B3
        = ( plus_plus_int @ K @ B ) )
     => ( ( plus_plus_int @ A @ B3 )
        = ( plus_plus_int @ K @ ( plus_plus_int @ A @ B ) ) ) ) ).

% group_cancel.add2
thf(fact_679_group__cancel_Oadd2,axiom,
    ! [B3: finite_mod_ring_a,K: finite_mod_ring_a,B: finite_mod_ring_a,A: finite_mod_ring_a] :
      ( ( B3
        = ( plus_p6165643967897163644ring_a @ K @ B ) )
     => ( ( plus_p6165643967897163644ring_a @ A @ B3 )
        = ( plus_p6165643967897163644ring_a @ K @ ( plus_p6165643967897163644ring_a @ A @ B ) ) ) ) ).

% group_cancel.add2
thf(fact_680_group__cancel_Oadd2,axiom,
    ! [B3: kyber_qr_a,K: kyber_qr_a,B: kyber_qr_a,A: kyber_qr_a] :
      ( ( B3
        = ( plus_plus_Kyber_qr_a @ K @ B ) )
     => ( ( plus_plus_Kyber_qr_a @ A @ B3 )
        = ( plus_plus_Kyber_qr_a @ K @ ( plus_plus_Kyber_qr_a @ A @ B ) ) ) ) ).

% group_cancel.add2
thf(fact_681_group__cancel_Oadd1,axiom,
    ! [A2: nat,K: nat,A: nat,B: nat] :
      ( ( A2
        = ( plus_plus_nat @ K @ A ) )
     => ( ( plus_plus_nat @ A2 @ B )
        = ( plus_plus_nat @ K @ ( plus_plus_nat @ A @ B ) ) ) ) ).

% group_cancel.add1
thf(fact_682_group__cancel_Oadd1,axiom,
    ! [A2: poly_F3299452240248304339ring_a,K: poly_F3299452240248304339ring_a,A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a] :
      ( ( A2
        = ( plus_p7290290253215468682ring_a @ K @ A ) )
     => ( ( plus_p7290290253215468682ring_a @ A2 @ B )
        = ( plus_p7290290253215468682ring_a @ K @ ( plus_p7290290253215468682ring_a @ A @ B ) ) ) ) ).

% group_cancel.add1
thf(fact_683_group__cancel_Oadd1,axiom,
    ! [A2: real,K: real,A: real,B: real] :
      ( ( A2
        = ( plus_plus_real @ K @ A ) )
     => ( ( plus_plus_real @ A2 @ B )
        = ( plus_plus_real @ K @ ( plus_plus_real @ A @ B ) ) ) ) ).

% group_cancel.add1
thf(fact_684_group__cancel_Oadd1,axiom,
    ! [A2: int,K: int,A: int,B: int] :
      ( ( A2
        = ( plus_plus_int @ K @ A ) )
     => ( ( plus_plus_int @ A2 @ B )
        = ( plus_plus_int @ K @ ( plus_plus_int @ A @ B ) ) ) ) ).

% group_cancel.add1
thf(fact_685_group__cancel_Oadd1,axiom,
    ! [A2: finite_mod_ring_a,K: finite_mod_ring_a,A: finite_mod_ring_a,B: finite_mod_ring_a] :
      ( ( A2
        = ( plus_p6165643967897163644ring_a @ K @ A ) )
     => ( ( plus_p6165643967897163644ring_a @ A2 @ B )
        = ( plus_p6165643967897163644ring_a @ K @ ( plus_p6165643967897163644ring_a @ A @ B ) ) ) ) ).

% group_cancel.add1
thf(fact_686_group__cancel_Oadd1,axiom,
    ! [A2: kyber_qr_a,K: kyber_qr_a,A: kyber_qr_a,B: kyber_qr_a] :
      ( ( A2
        = ( plus_plus_Kyber_qr_a @ K @ A ) )
     => ( ( plus_plus_Kyber_qr_a @ A2 @ B )
        = ( plus_plus_Kyber_qr_a @ K @ ( plus_plus_Kyber_qr_a @ A @ B ) ) ) ) ).

% group_cancel.add1
thf(fact_687_add__mono__thms__linordered__semiring_I4_J,axiom,
    ! [I: nat,J2: nat,K: nat,L: nat] :
      ( ( ( I = J2 )
        & ( K = L ) )
     => ( ( plus_plus_nat @ I @ K )
        = ( plus_plus_nat @ J2 @ L ) ) ) ).

% add_mono_thms_linordered_semiring(4)
thf(fact_688_add__mono__thms__linordered__semiring_I4_J,axiom,
    ! [I: real,J2: real,K: real,L: real] :
      ( ( ( I = J2 )
        & ( K = L ) )
     => ( ( plus_plus_real @ I @ K )
        = ( plus_plus_real @ J2 @ L ) ) ) ).

% add_mono_thms_linordered_semiring(4)
thf(fact_689_add__mono__thms__linordered__semiring_I4_J,axiom,
    ! [I: int,J2: int,K: int,L: int] :
      ( ( ( I = J2 )
        & ( K = L ) )
     => ( ( plus_plus_int @ I @ K )
        = ( plus_plus_int @ J2 @ L ) ) ) ).

% add_mono_thms_linordered_semiring(4)
thf(fact_690_ab__semigroup__add__class_Oadd__ac_I1_J,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( plus_plus_nat @ ( plus_plus_nat @ A @ B ) @ C )
      = ( plus_plus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).

% ab_semigroup_add_class.add_ac(1)
thf(fact_691_ab__semigroup__add__class_Oadd__ac_I1_J,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a] :
      ( ( plus_p7290290253215468682ring_a @ ( plus_p7290290253215468682ring_a @ A @ B ) @ C )
      = ( plus_p7290290253215468682ring_a @ A @ ( plus_p7290290253215468682ring_a @ B @ C ) ) ) ).

% ab_semigroup_add_class.add_ac(1)
thf(fact_692_ab__semigroup__add__class_Oadd__ac_I1_J,axiom,
    ! [A: real,B: real,C: real] :
      ( ( plus_plus_real @ ( plus_plus_real @ A @ B ) @ C )
      = ( plus_plus_real @ A @ ( plus_plus_real @ B @ C ) ) ) ).

% ab_semigroup_add_class.add_ac(1)
thf(fact_693_ab__semigroup__add__class_Oadd__ac_I1_J,axiom,
    ! [A: int,B: int,C: int] :
      ( ( plus_plus_int @ ( plus_plus_int @ A @ B ) @ C )
      = ( plus_plus_int @ A @ ( plus_plus_int @ B @ C ) ) ) ).

% ab_semigroup_add_class.add_ac(1)
thf(fact_694_ab__semigroup__add__class_Oadd__ac_I1_J,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a,C: finite_mod_ring_a] :
      ( ( plus_p6165643967897163644ring_a @ ( plus_p6165643967897163644ring_a @ A @ B ) @ C )
      = ( plus_p6165643967897163644ring_a @ A @ ( plus_p6165643967897163644ring_a @ B @ C ) ) ) ).

% ab_semigroup_add_class.add_ac(1)
thf(fact_695_ab__semigroup__add__class_Oadd__ac_I1_J,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a,C: kyber_qr_a] :
      ( ( plus_plus_Kyber_qr_a @ ( plus_plus_Kyber_qr_a @ A @ B ) @ C )
      = ( plus_plus_Kyber_qr_a @ A @ ( plus_plus_Kyber_qr_a @ B @ C ) ) ) ).

% ab_semigroup_add_class.add_ac(1)
thf(fact_696_equation__minus__iff,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a] :
      ( ( A
        = ( uminus3100561713750211260ring_a @ B ) )
      = ( B
        = ( uminus3100561713750211260ring_a @ A ) ) ) ).

% equation_minus_iff
thf(fact_697_equation__minus__iff,axiom,
    ! [A: real,B: real] :
      ( ( A
        = ( uminus_uminus_real @ B ) )
      = ( B
        = ( uminus_uminus_real @ A ) ) ) ).

% equation_minus_iff
thf(fact_698_minus__equation__iff,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a] :
      ( ( ( uminus3100561713750211260ring_a @ A )
        = B )
      = ( ( uminus3100561713750211260ring_a @ B )
        = A ) ) ).

% minus_equation_iff
thf(fact_699_minus__equation__iff,axiom,
    ! [A: real,B: real] :
      ( ( ( uminus_uminus_real @ A )
        = B )
      = ( ( uminus_uminus_real @ B )
        = A ) ) ).

% minus_equation_iff
thf(fact_700_mult_Ocomm__neutral,axiom,
    ! [A: finite_mod_ring_a] :
      ( ( times_5121417576591743744ring_a @ A @ one_on2109788427901206336ring_a )
      = A ) ).

% mult.comm_neutral
thf(fact_701_mult_Ocomm__neutral,axiom,
    ! [A: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ A @ one_on3394844594818161742ring_a )
      = A ) ).

% mult.comm_neutral
thf(fact_702_mult_Ocomm__neutral,axiom,
    ! [A: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ A @ one_one_Kyber_qr_a )
      = A ) ).

% mult.comm_neutral
thf(fact_703_mult_Ocomm__neutral,axiom,
    ! [A: real] :
      ( ( times_times_real @ A @ one_one_real )
      = A ) ).

% mult.comm_neutral
thf(fact_704_mult_Ocomm__neutral,axiom,
    ! [A: nat] :
      ( ( times_times_nat @ A @ one_one_nat )
      = A ) ).

% mult.comm_neutral
thf(fact_705_mult_Ocomm__neutral,axiom,
    ! [A: int] :
      ( ( times_times_int @ A @ one_one_int )
      = A ) ).

% mult.comm_neutral
thf(fact_706_comm__monoid__mult__class_Omult__1,axiom,
    ! [A: finite_mod_ring_a] :
      ( ( times_5121417576591743744ring_a @ one_on2109788427901206336ring_a @ A )
      = A ) ).

% comm_monoid_mult_class.mult_1
thf(fact_707_comm__monoid__mult__class_Omult__1,axiom,
    ! [A: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ one_on3394844594818161742ring_a @ A )
      = A ) ).

% comm_monoid_mult_class.mult_1
thf(fact_708_comm__monoid__mult__class_Omult__1,axiom,
    ! [A: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ one_one_Kyber_qr_a @ A )
      = A ) ).

% comm_monoid_mult_class.mult_1
thf(fact_709_comm__monoid__mult__class_Omult__1,axiom,
    ! [A: real] :
      ( ( times_times_real @ one_one_real @ A )
      = A ) ).

% comm_monoid_mult_class.mult_1
thf(fact_710_comm__monoid__mult__class_Omult__1,axiom,
    ! [A: nat] :
      ( ( times_times_nat @ one_one_nat @ A )
      = A ) ).

% comm_monoid_mult_class.mult_1
thf(fact_711_comm__monoid__mult__class_Omult__1,axiom,
    ! [A: int] :
      ( ( times_times_int @ one_one_int @ A )
      = A ) ).

% comm_monoid_mult_class.mult_1
thf(fact_712_add__less__imp__less__right,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) )
     => ( ord_less_nat @ A @ B ) ) ).

% add_less_imp_less_right
thf(fact_713_add__less__imp__less__right,axiom,
    ! [A: real,C: real,B: real] :
      ( ( ord_less_real @ ( plus_plus_real @ A @ C ) @ ( plus_plus_real @ B @ C ) )
     => ( ord_less_real @ A @ B ) ) ).

% add_less_imp_less_right
thf(fact_714_add__less__imp__less__right,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ord_less_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ C ) )
     => ( ord_less_int @ A @ B ) ) ).

% add_less_imp_less_right
thf(fact_715_add__less__imp__less__left,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) )
     => ( ord_less_nat @ A @ B ) ) ).

% add_less_imp_less_left
thf(fact_716_add__less__imp__less__left,axiom,
    ! [C: real,A: real,B: real] :
      ( ( ord_less_real @ ( plus_plus_real @ C @ A ) @ ( plus_plus_real @ C @ B ) )
     => ( ord_less_real @ A @ B ) ) ).

% add_less_imp_less_left
thf(fact_717_add__less__imp__less__left,axiom,
    ! [C: int,A: int,B: int] :
      ( ( ord_less_int @ ( plus_plus_int @ C @ A ) @ ( plus_plus_int @ C @ B ) )
     => ( ord_less_int @ A @ B ) ) ).

% add_less_imp_less_left
thf(fact_718_add__strict__right__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) ) ) ).

% add_strict_right_mono
thf(fact_719_add__strict__right__mono,axiom,
    ! [A: real,B: real,C: real] :
      ( ( ord_less_real @ A @ B )
     => ( ord_less_real @ ( plus_plus_real @ A @ C ) @ ( plus_plus_real @ B @ C ) ) ) ).

% add_strict_right_mono
thf(fact_720_add__strict__right__mono,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_int @ A @ B )
     => ( ord_less_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ C ) ) ) ).

% add_strict_right_mono
thf(fact_721_add__strict__left__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ord_less_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) ) ) ).

% add_strict_left_mono
thf(fact_722_add__strict__left__mono,axiom,
    ! [A: real,B: real,C: real] :
      ( ( ord_less_real @ A @ B )
     => ( ord_less_real @ ( plus_plus_real @ C @ A ) @ ( plus_plus_real @ C @ B ) ) ) ).

% add_strict_left_mono
thf(fact_723_add__strict__left__mono,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_int @ A @ B )
     => ( ord_less_int @ ( plus_plus_int @ C @ A ) @ ( plus_plus_int @ C @ B ) ) ) ).

% add_strict_left_mono
thf(fact_724_add__strict__mono,axiom,
    ! [A: nat,B: nat,C: nat,D: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_nat @ C @ D )
       => ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ D ) ) ) ) ).

% add_strict_mono
thf(fact_725_add__strict__mono,axiom,
    ! [A: real,B: real,C: real,D: real] :
      ( ( ord_less_real @ A @ B )
     => ( ( ord_less_real @ C @ D )
       => ( ord_less_real @ ( plus_plus_real @ A @ C ) @ ( plus_plus_real @ B @ D ) ) ) ) ).

% add_strict_mono
thf(fact_726_add__strict__mono,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ord_less_int @ A @ B )
     => ( ( ord_less_int @ C @ D )
       => ( ord_less_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ D ) ) ) ) ).

% add_strict_mono
thf(fact_727_add__mono__thms__linordered__field_I1_J,axiom,
    ! [I: nat,J2: nat,K: nat,L: nat] :
      ( ( ( ord_less_nat @ I @ J2 )
        & ( K = L ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J2 @ L ) ) ) ).

% add_mono_thms_linordered_field(1)
thf(fact_728_add__mono__thms__linordered__field_I1_J,axiom,
    ! [I: real,J2: real,K: real,L: real] :
      ( ( ( ord_less_real @ I @ J2 )
        & ( K = L ) )
     => ( ord_less_real @ ( plus_plus_real @ I @ K ) @ ( plus_plus_real @ J2 @ L ) ) ) ).

% add_mono_thms_linordered_field(1)
thf(fact_729_add__mono__thms__linordered__field_I1_J,axiom,
    ! [I: int,J2: int,K: int,L: int] :
      ( ( ( ord_less_int @ I @ J2 )
        & ( K = L ) )
     => ( ord_less_int @ ( plus_plus_int @ I @ K ) @ ( plus_plus_int @ J2 @ L ) ) ) ).

% add_mono_thms_linordered_field(1)
thf(fact_730_add__mono__thms__linordered__field_I2_J,axiom,
    ! [I: nat,J2: nat,K: nat,L: nat] :
      ( ( ( I = J2 )
        & ( ord_less_nat @ K @ L ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J2 @ L ) ) ) ).

% add_mono_thms_linordered_field(2)
thf(fact_731_add__mono__thms__linordered__field_I2_J,axiom,
    ! [I: real,J2: real,K: real,L: real] :
      ( ( ( I = J2 )
        & ( ord_less_real @ K @ L ) )
     => ( ord_less_real @ ( plus_plus_real @ I @ K ) @ ( plus_plus_real @ J2 @ L ) ) ) ).

% add_mono_thms_linordered_field(2)
thf(fact_732_add__mono__thms__linordered__field_I2_J,axiom,
    ! [I: int,J2: int,K: int,L: int] :
      ( ( ( I = J2 )
        & ( ord_less_int @ K @ L ) )
     => ( ord_less_int @ ( plus_plus_int @ I @ K ) @ ( plus_plus_int @ J2 @ L ) ) ) ).

% add_mono_thms_linordered_field(2)
thf(fact_733_add__mono__thms__linordered__field_I5_J,axiom,
    ! [I: nat,J2: nat,K: nat,L: nat] :
      ( ( ( ord_less_nat @ I @ J2 )
        & ( ord_less_nat @ K @ L ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J2 @ L ) ) ) ).

% add_mono_thms_linordered_field(5)
thf(fact_734_add__mono__thms__linordered__field_I5_J,axiom,
    ! [I: real,J2: real,K: real,L: real] :
      ( ( ( ord_less_real @ I @ J2 )
        & ( ord_less_real @ K @ L ) )
     => ( ord_less_real @ ( plus_plus_real @ I @ K ) @ ( plus_plus_real @ J2 @ L ) ) ) ).

% add_mono_thms_linordered_field(5)
thf(fact_735_add__mono__thms__linordered__field_I5_J,axiom,
    ! [I: int,J2: int,K: int,L: int] :
      ( ( ( ord_less_int @ I @ J2 )
        & ( ord_less_int @ K @ L ) )
     => ( ord_less_int @ ( plus_plus_int @ I @ K ) @ ( plus_plus_int @ J2 @ L ) ) ) ).

% add_mono_thms_linordered_field(5)
thf(fact_736_combine__common__factor,axiom,
    ! [A: finite_mod_ring_a,E: finite_mod_ring_a,B: finite_mod_ring_a,C: finite_mod_ring_a] :
      ( ( plus_p6165643967897163644ring_a @ ( times_5121417576591743744ring_a @ A @ E ) @ ( plus_p6165643967897163644ring_a @ ( times_5121417576591743744ring_a @ B @ E ) @ C ) )
      = ( plus_p6165643967897163644ring_a @ ( times_5121417576591743744ring_a @ ( plus_p6165643967897163644ring_a @ A @ B ) @ E ) @ C ) ) ).

% combine_common_factor
thf(fact_737_combine__common__factor,axiom,
    ! [A: poly_F3299452240248304339ring_a,E: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a] :
      ( ( plus_p7290290253215468682ring_a @ ( times_3242606764180207630ring_a @ A @ E ) @ ( plus_p7290290253215468682ring_a @ ( times_3242606764180207630ring_a @ B @ E ) @ C ) )
      = ( plus_p7290290253215468682ring_a @ ( times_3242606764180207630ring_a @ ( plus_p7290290253215468682ring_a @ A @ B ) @ E ) @ C ) ) ).

% combine_common_factor
thf(fact_738_combine__common__factor,axiom,
    ! [A: kyber_qr_a,E: kyber_qr_a,B: kyber_qr_a,C: kyber_qr_a] :
      ( ( plus_plus_Kyber_qr_a @ ( times_2095635435063429214r_qr_a @ A @ E ) @ ( plus_plus_Kyber_qr_a @ ( times_2095635435063429214r_qr_a @ B @ E ) @ C ) )
      = ( plus_plus_Kyber_qr_a @ ( times_2095635435063429214r_qr_a @ ( plus_plus_Kyber_qr_a @ A @ B ) @ E ) @ C ) ) ).

% combine_common_factor
thf(fact_739_combine__common__factor,axiom,
    ! [A: real,E: real,B: real,C: real] :
      ( ( plus_plus_real @ ( times_times_real @ A @ E ) @ ( plus_plus_real @ ( times_times_real @ B @ E ) @ C ) )
      = ( plus_plus_real @ ( times_times_real @ ( plus_plus_real @ A @ B ) @ E ) @ C ) ) ).

% combine_common_factor
thf(fact_740_combine__common__factor,axiom,
    ! [A: nat,E: nat,B: nat,C: nat] :
      ( ( plus_plus_nat @ ( times_times_nat @ A @ E ) @ ( plus_plus_nat @ ( times_times_nat @ B @ E ) @ C ) )
      = ( plus_plus_nat @ ( times_times_nat @ ( plus_plus_nat @ A @ B ) @ E ) @ C ) ) ).

% combine_common_factor
thf(fact_741_combine__common__factor,axiom,
    ! [A: int,E: int,B: int,C: int] :
      ( ( plus_plus_int @ ( times_times_int @ A @ E ) @ ( plus_plus_int @ ( times_times_int @ B @ E ) @ C ) )
      = ( plus_plus_int @ ( times_times_int @ ( plus_plus_int @ A @ B ) @ E ) @ C ) ) ).

% combine_common_factor
thf(fact_742_distrib__right,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a,C: finite_mod_ring_a] :
      ( ( times_5121417576591743744ring_a @ ( plus_p6165643967897163644ring_a @ A @ B ) @ C )
      = ( plus_p6165643967897163644ring_a @ ( times_5121417576591743744ring_a @ A @ C ) @ ( times_5121417576591743744ring_a @ B @ C ) ) ) ).

% distrib_right
thf(fact_743_distrib__right,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ ( plus_p7290290253215468682ring_a @ A @ B ) @ C )
      = ( plus_p7290290253215468682ring_a @ ( times_3242606764180207630ring_a @ A @ C ) @ ( times_3242606764180207630ring_a @ B @ C ) ) ) ).

% distrib_right
thf(fact_744_distrib__right,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a,C: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ ( plus_plus_Kyber_qr_a @ A @ B ) @ C )
      = ( plus_plus_Kyber_qr_a @ ( times_2095635435063429214r_qr_a @ A @ C ) @ ( times_2095635435063429214r_qr_a @ B @ C ) ) ) ).

% distrib_right
thf(fact_745_distrib__right,axiom,
    ! [A: real,B: real,C: real] :
      ( ( times_times_real @ ( plus_plus_real @ A @ B ) @ C )
      = ( plus_plus_real @ ( times_times_real @ A @ C ) @ ( times_times_real @ B @ C ) ) ) ).

% distrib_right
thf(fact_746_distrib__right,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( times_times_nat @ ( plus_plus_nat @ A @ B ) @ C )
      = ( plus_plus_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ C ) ) ) ).

% distrib_right
thf(fact_747_distrib__right,axiom,
    ! [A: int,B: int,C: int] :
      ( ( times_times_int @ ( plus_plus_int @ A @ B ) @ C )
      = ( plus_plus_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) ) ) ).

% distrib_right
thf(fact_748_distrib__left,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a,C: finite_mod_ring_a] :
      ( ( times_5121417576591743744ring_a @ A @ ( plus_p6165643967897163644ring_a @ B @ C ) )
      = ( plus_p6165643967897163644ring_a @ ( times_5121417576591743744ring_a @ A @ B ) @ ( times_5121417576591743744ring_a @ A @ C ) ) ) ).

% distrib_left
thf(fact_749_distrib__left,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ A @ ( plus_p7290290253215468682ring_a @ B @ C ) )
      = ( plus_p7290290253215468682ring_a @ ( times_3242606764180207630ring_a @ A @ B ) @ ( times_3242606764180207630ring_a @ A @ C ) ) ) ).

% distrib_left
thf(fact_750_distrib__left,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a,C: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ A @ ( plus_plus_Kyber_qr_a @ B @ C ) )
      = ( plus_plus_Kyber_qr_a @ ( times_2095635435063429214r_qr_a @ A @ B ) @ ( times_2095635435063429214r_qr_a @ A @ C ) ) ) ).

% distrib_left
thf(fact_751_distrib__left,axiom,
    ! [A: real,B: real,C: real] :
      ( ( times_times_real @ A @ ( plus_plus_real @ B @ C ) )
      = ( plus_plus_real @ ( times_times_real @ A @ B ) @ ( times_times_real @ A @ C ) ) ) ).

% distrib_left
thf(fact_752_distrib__left,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( times_times_nat @ A @ ( plus_plus_nat @ B @ C ) )
      = ( plus_plus_nat @ ( times_times_nat @ A @ B ) @ ( times_times_nat @ A @ C ) ) ) ).

% distrib_left
thf(fact_753_distrib__left,axiom,
    ! [A: int,B: int,C: int] :
      ( ( times_times_int @ A @ ( plus_plus_int @ B @ C ) )
      = ( plus_plus_int @ ( times_times_int @ A @ B ) @ ( times_times_int @ A @ C ) ) ) ).

% distrib_left
thf(fact_754_comm__semiring__class_Odistrib,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a,C: finite_mod_ring_a] :
      ( ( times_5121417576591743744ring_a @ ( plus_p6165643967897163644ring_a @ A @ B ) @ C )
      = ( plus_p6165643967897163644ring_a @ ( times_5121417576591743744ring_a @ A @ C ) @ ( times_5121417576591743744ring_a @ B @ C ) ) ) ).

% comm_semiring_class.distrib
thf(fact_755_comm__semiring__class_Odistrib,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ ( plus_p7290290253215468682ring_a @ A @ B ) @ C )
      = ( plus_p7290290253215468682ring_a @ ( times_3242606764180207630ring_a @ A @ C ) @ ( times_3242606764180207630ring_a @ B @ C ) ) ) ).

% comm_semiring_class.distrib
thf(fact_756_comm__semiring__class_Odistrib,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a,C: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ ( plus_plus_Kyber_qr_a @ A @ B ) @ C )
      = ( plus_plus_Kyber_qr_a @ ( times_2095635435063429214r_qr_a @ A @ C ) @ ( times_2095635435063429214r_qr_a @ B @ C ) ) ) ).

% comm_semiring_class.distrib
thf(fact_757_comm__semiring__class_Odistrib,axiom,
    ! [A: real,B: real,C: real] :
      ( ( times_times_real @ ( plus_plus_real @ A @ B ) @ C )
      = ( plus_plus_real @ ( times_times_real @ A @ C ) @ ( times_times_real @ B @ C ) ) ) ).

% comm_semiring_class.distrib
thf(fact_758_comm__semiring__class_Odistrib,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( times_times_nat @ ( plus_plus_nat @ A @ B ) @ C )
      = ( plus_plus_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ C ) ) ) ).

% comm_semiring_class.distrib
thf(fact_759_comm__semiring__class_Odistrib,axiom,
    ! [A: int,B: int,C: int] :
      ( ( times_times_int @ ( plus_plus_int @ A @ B ) @ C )
      = ( plus_plus_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) ) ) ).

% comm_semiring_class.distrib
thf(fact_760_ring__class_Oring__distribs_I1_J,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a,C: finite_mod_ring_a] :
      ( ( times_5121417576591743744ring_a @ A @ ( plus_p6165643967897163644ring_a @ B @ C ) )
      = ( plus_p6165643967897163644ring_a @ ( times_5121417576591743744ring_a @ A @ B ) @ ( times_5121417576591743744ring_a @ A @ C ) ) ) ).

% ring_class.ring_distribs(1)
thf(fact_761_ring__class_Oring__distribs_I1_J,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ A @ ( plus_p7290290253215468682ring_a @ B @ C ) )
      = ( plus_p7290290253215468682ring_a @ ( times_3242606764180207630ring_a @ A @ B ) @ ( times_3242606764180207630ring_a @ A @ C ) ) ) ).

% ring_class.ring_distribs(1)
thf(fact_762_ring__class_Oring__distribs_I1_J,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a,C: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ A @ ( plus_plus_Kyber_qr_a @ B @ C ) )
      = ( plus_plus_Kyber_qr_a @ ( times_2095635435063429214r_qr_a @ A @ B ) @ ( times_2095635435063429214r_qr_a @ A @ C ) ) ) ).

% ring_class.ring_distribs(1)
thf(fact_763_ring__class_Oring__distribs_I1_J,axiom,
    ! [A: real,B: real,C: real] :
      ( ( times_times_real @ A @ ( plus_plus_real @ B @ C ) )
      = ( plus_plus_real @ ( times_times_real @ A @ B ) @ ( times_times_real @ A @ C ) ) ) ).

% ring_class.ring_distribs(1)
thf(fact_764_ring__class_Oring__distribs_I1_J,axiom,
    ! [A: int,B: int,C: int] :
      ( ( times_times_int @ A @ ( plus_plus_int @ B @ C ) )
      = ( plus_plus_int @ ( times_times_int @ A @ B ) @ ( times_times_int @ A @ C ) ) ) ).

% ring_class.ring_distribs(1)
thf(fact_765_ring__class_Oring__distribs_I2_J,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a,C: finite_mod_ring_a] :
      ( ( times_5121417576591743744ring_a @ ( plus_p6165643967897163644ring_a @ A @ B ) @ C )
      = ( plus_p6165643967897163644ring_a @ ( times_5121417576591743744ring_a @ A @ C ) @ ( times_5121417576591743744ring_a @ B @ C ) ) ) ).

% ring_class.ring_distribs(2)
thf(fact_766_ring__class_Oring__distribs_I2_J,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ ( plus_p7290290253215468682ring_a @ A @ B ) @ C )
      = ( plus_p7290290253215468682ring_a @ ( times_3242606764180207630ring_a @ A @ C ) @ ( times_3242606764180207630ring_a @ B @ C ) ) ) ).

% ring_class.ring_distribs(2)
thf(fact_767_ring__class_Oring__distribs_I2_J,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a,C: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ ( plus_plus_Kyber_qr_a @ A @ B ) @ C )
      = ( plus_plus_Kyber_qr_a @ ( times_2095635435063429214r_qr_a @ A @ C ) @ ( times_2095635435063429214r_qr_a @ B @ C ) ) ) ).

% ring_class.ring_distribs(2)
thf(fact_768_ring__class_Oring__distribs_I2_J,axiom,
    ! [A: real,B: real,C: real] :
      ( ( times_times_real @ ( plus_plus_real @ A @ B ) @ C )
      = ( plus_plus_real @ ( times_times_real @ A @ C ) @ ( times_times_real @ B @ C ) ) ) ).

% ring_class.ring_distribs(2)
thf(fact_769_ring__class_Oring__distribs_I2_J,axiom,
    ! [A: int,B: int,C: int] :
      ( ( times_times_int @ ( plus_plus_int @ A @ B ) @ C )
      = ( plus_plus_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) ) ) ).

% ring_class.ring_distribs(2)
thf(fact_770_less__minus__iff,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ A @ ( uminus_uminus_int @ B ) )
      = ( ord_less_int @ B @ ( uminus_uminus_int @ A ) ) ) ).

% less_minus_iff
thf(fact_771_less__minus__iff,axiom,
    ! [A: real,B: real] :
      ( ( ord_less_real @ A @ ( uminus_uminus_real @ B ) )
      = ( ord_less_real @ B @ ( uminus_uminus_real @ A ) ) ) ).

% less_minus_iff
thf(fact_772_minus__less__iff,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ ( uminus_uminus_int @ A ) @ B )
      = ( ord_less_int @ ( uminus_uminus_int @ B ) @ A ) ) ).

% minus_less_iff
thf(fact_773_minus__less__iff,axiom,
    ! [A: real,B: real] :
      ( ( ord_less_real @ ( uminus_uminus_real @ A ) @ B )
      = ( ord_less_real @ ( uminus_uminus_real @ B ) @ A ) ) ).

% minus_less_iff
thf(fact_774_minus__mult__commute,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ ( uminus6490753114102738890ring_a @ A ) @ B )
      = ( times_3242606764180207630ring_a @ A @ ( uminus6490753114102738890ring_a @ B ) ) ) ).

% minus_mult_commute
thf(fact_775_minus__mult__commute,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ ( uminus3675112017196868514r_qr_a @ A ) @ B )
      = ( times_2095635435063429214r_qr_a @ A @ ( uminus3675112017196868514r_qr_a @ B ) ) ) ).

% minus_mult_commute
thf(fact_776_minus__mult__commute,axiom,
    ! [A: int,B: int] :
      ( ( times_times_int @ ( uminus_uminus_int @ A ) @ B )
      = ( times_times_int @ A @ ( uminus_uminus_int @ B ) ) ) ).

% minus_mult_commute
thf(fact_777_minus__mult__commute,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a] :
      ( ( times_5121417576591743744ring_a @ ( uminus3100561713750211260ring_a @ A ) @ B )
      = ( times_5121417576591743744ring_a @ A @ ( uminus3100561713750211260ring_a @ B ) ) ) ).

% minus_mult_commute
thf(fact_778_minus__mult__commute,axiom,
    ! [A: real,B: real] :
      ( ( times_times_real @ ( uminus_uminus_real @ A ) @ B )
      = ( times_times_real @ A @ ( uminus_uminus_real @ B ) ) ) ).

% minus_mult_commute
thf(fact_779_square__eq__iff,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a] :
      ( ( ( times_3242606764180207630ring_a @ A @ A )
        = ( times_3242606764180207630ring_a @ B @ B ) )
      = ( ( A = B )
        | ( A
          = ( uminus6490753114102738890ring_a @ B ) ) ) ) ).

% square_eq_iff
thf(fact_780_square__eq__iff,axiom,
    ! [A: int,B: int] :
      ( ( ( times_times_int @ A @ A )
        = ( times_times_int @ B @ B ) )
      = ( ( A = B )
        | ( A
          = ( uminus_uminus_int @ B ) ) ) ) ).

% square_eq_iff
thf(fact_781_square__eq__iff,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a] :
      ( ( ( times_5121417576591743744ring_a @ A @ A )
        = ( times_5121417576591743744ring_a @ B @ B ) )
      = ( ( A = B )
        | ( A
          = ( uminus3100561713750211260ring_a @ B ) ) ) ) ).

% square_eq_iff
thf(fact_782_square__eq__iff,axiom,
    ! [A: real,B: real] :
      ( ( ( times_times_real @ A @ A )
        = ( times_times_real @ B @ B ) )
      = ( ( A = B )
        | ( A
          = ( uminus_uminus_real @ B ) ) ) ) ).

% square_eq_iff
thf(fact_783_add_Oinverse__distrib__swap,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a] :
      ( ( uminus6490753114102738890ring_a @ ( plus_p7290290253215468682ring_a @ A @ B ) )
      = ( plus_p7290290253215468682ring_a @ ( uminus6490753114102738890ring_a @ B ) @ ( uminus6490753114102738890ring_a @ A ) ) ) ).

% add.inverse_distrib_swap
thf(fact_784_add_Oinverse__distrib__swap,axiom,
    ! [A: int,B: int] :
      ( ( uminus_uminus_int @ ( plus_plus_int @ A @ B ) )
      = ( plus_plus_int @ ( uminus_uminus_int @ B ) @ ( uminus_uminus_int @ A ) ) ) ).

% add.inverse_distrib_swap
thf(fact_785_add_Oinverse__distrib__swap,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a] :
      ( ( uminus3675112017196868514r_qr_a @ ( plus_plus_Kyber_qr_a @ A @ B ) )
      = ( plus_plus_Kyber_qr_a @ ( uminus3675112017196868514r_qr_a @ B ) @ ( uminus3675112017196868514r_qr_a @ A ) ) ) ).

% add.inverse_distrib_swap
thf(fact_786_add_Oinverse__distrib__swap,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a] :
      ( ( uminus3100561713750211260ring_a @ ( plus_p6165643967897163644ring_a @ A @ B ) )
      = ( plus_p6165643967897163644ring_a @ ( uminus3100561713750211260ring_a @ B ) @ ( uminus3100561713750211260ring_a @ A ) ) ) ).

% add.inverse_distrib_swap
thf(fact_787_add_Oinverse__distrib__swap,axiom,
    ! [A: real,B: real] :
      ( ( uminus_uminus_real @ ( plus_plus_real @ A @ B ) )
      = ( plus_plus_real @ ( uminus_uminus_real @ B ) @ ( uminus_uminus_real @ A ) ) ) ).

% add.inverse_distrib_swap
thf(fact_788_group__cancel_Oneg1,axiom,
    ! [A2: poly_F3299452240248304339ring_a,K: poly_F3299452240248304339ring_a,A: poly_F3299452240248304339ring_a] :
      ( ( A2
        = ( plus_p7290290253215468682ring_a @ K @ A ) )
     => ( ( uminus6490753114102738890ring_a @ A2 )
        = ( plus_p7290290253215468682ring_a @ ( uminus6490753114102738890ring_a @ K ) @ ( uminus6490753114102738890ring_a @ A ) ) ) ) ).

% group_cancel.neg1
thf(fact_789_group__cancel_Oneg1,axiom,
    ! [A2: int,K: int,A: int] :
      ( ( A2
        = ( plus_plus_int @ K @ A ) )
     => ( ( uminus_uminus_int @ A2 )
        = ( plus_plus_int @ ( uminus_uminus_int @ K ) @ ( uminus_uminus_int @ A ) ) ) ) ).

% group_cancel.neg1
thf(fact_790_group__cancel_Oneg1,axiom,
    ! [A2: kyber_qr_a,K: kyber_qr_a,A: kyber_qr_a] :
      ( ( A2
        = ( plus_plus_Kyber_qr_a @ K @ A ) )
     => ( ( uminus3675112017196868514r_qr_a @ A2 )
        = ( plus_plus_Kyber_qr_a @ ( uminus3675112017196868514r_qr_a @ K ) @ ( uminus3675112017196868514r_qr_a @ A ) ) ) ) ).

% group_cancel.neg1
thf(fact_791_group__cancel_Oneg1,axiom,
    ! [A2: finite_mod_ring_a,K: finite_mod_ring_a,A: finite_mod_ring_a] :
      ( ( A2
        = ( plus_p6165643967897163644ring_a @ K @ A ) )
     => ( ( uminus3100561713750211260ring_a @ A2 )
        = ( plus_p6165643967897163644ring_a @ ( uminus3100561713750211260ring_a @ K ) @ ( uminus3100561713750211260ring_a @ A ) ) ) ) ).

% group_cancel.neg1
thf(fact_792_group__cancel_Oneg1,axiom,
    ! [A2: real,K: real,A: real] :
      ( ( A2
        = ( plus_plus_real @ K @ A ) )
     => ( ( uminus_uminus_real @ A2 )
        = ( plus_plus_real @ ( uminus_uminus_real @ K ) @ ( uminus_uminus_real @ A ) ) ) ) ).

% group_cancel.neg1
thf(fact_793_lambda__one,axiom,
    ( ( ^ [X2: finite_mod_ring_a] : X2 )
    = ( times_5121417576591743744ring_a @ one_on2109788427901206336ring_a ) ) ).

% lambda_one
thf(fact_794_lambda__one,axiom,
    ( ( ^ [X2: poly_F3299452240248304339ring_a] : X2 )
    = ( times_3242606764180207630ring_a @ one_on3394844594818161742ring_a ) ) ).

% lambda_one
thf(fact_795_lambda__one,axiom,
    ( ( ^ [X2: kyber_qr_a] : X2 )
    = ( times_2095635435063429214r_qr_a @ one_one_Kyber_qr_a ) ) ).

% lambda_one
thf(fact_796_lambda__one,axiom,
    ( ( ^ [X2: real] : X2 )
    = ( times_times_real @ one_one_real ) ) ).

% lambda_one
thf(fact_797_lambda__one,axiom,
    ( ( ^ [X2: nat] : X2 )
    = ( times_times_nat @ one_one_nat ) ) ).

% lambda_one
thf(fact_798_lambda__one,axiom,
    ( ( ^ [X2: int] : X2 )
    = ( times_times_int @ one_one_int ) ) ).

% lambda_one
thf(fact_799_less__1__mult,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ one_one_nat @ M )
     => ( ( ord_less_nat @ one_one_nat @ N )
       => ( ord_less_nat @ one_one_nat @ ( times_times_nat @ M @ N ) ) ) ) ).

% less_1_mult
thf(fact_800_less__1__mult,axiom,
    ! [M: real,N: real] :
      ( ( ord_less_real @ one_one_real @ M )
     => ( ( ord_less_real @ one_one_real @ N )
       => ( ord_less_real @ one_one_real @ ( times_times_real @ M @ N ) ) ) ) ).

% less_1_mult
thf(fact_801_less__1__mult,axiom,
    ! [M: int,N: int] :
      ( ( ord_less_int @ one_one_int @ M )
     => ( ( ord_less_int @ one_one_int @ N )
       => ( ord_less_int @ one_one_int @ ( times_times_int @ M @ N ) ) ) ) ).

% less_1_mult
thf(fact_802_add__mono1,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ord_less_nat @ ( plus_plus_nat @ A @ one_one_nat ) @ ( plus_plus_nat @ B @ one_one_nat ) ) ) ).

% add_mono1
thf(fact_803_add__mono1,axiom,
    ! [A: real,B: real] :
      ( ( ord_less_real @ A @ B )
     => ( ord_less_real @ ( plus_plus_real @ A @ one_one_real ) @ ( plus_plus_real @ B @ one_one_real ) ) ) ).

% add_mono1
thf(fact_804_add__mono1,axiom,
    ! [A: int,B: int] :
      ( ( ord_less_int @ A @ B )
     => ( ord_less_int @ ( plus_plus_int @ A @ one_one_int ) @ ( plus_plus_int @ B @ one_one_int ) ) ) ).

% add_mono1
thf(fact_805_less__add__one,axiom,
    ! [A: nat] : ( ord_less_nat @ A @ ( plus_plus_nat @ A @ one_one_nat ) ) ).

% less_add_one
thf(fact_806_less__add__one,axiom,
    ! [A: real] : ( ord_less_real @ A @ ( plus_plus_real @ A @ one_one_real ) ) ).

% less_add_one
thf(fact_807_less__add__one,axiom,
    ! [A: int] : ( ord_less_int @ A @ ( plus_plus_int @ A @ one_one_int ) ) ).

% less_add_one
thf(fact_808_square__eq__1__iff,axiom,
    ! [X: poly_F3299452240248304339ring_a] :
      ( ( ( times_3242606764180207630ring_a @ X @ X )
        = one_on3394844594818161742ring_a )
      = ( ( X = one_on3394844594818161742ring_a )
        | ( X
          = ( uminus6490753114102738890ring_a @ one_on3394844594818161742ring_a ) ) ) ) ).

% square_eq_1_iff
thf(fact_809_square__eq__1__iff,axiom,
    ! [X: int] :
      ( ( ( times_times_int @ X @ X )
        = one_one_int )
      = ( ( X = one_one_int )
        | ( X
          = ( uminus_uminus_int @ one_one_int ) ) ) ) ).

% square_eq_1_iff
thf(fact_810_square__eq__1__iff,axiom,
    ! [X: finite_mod_ring_a] :
      ( ( ( times_5121417576591743744ring_a @ X @ X )
        = one_on2109788427901206336ring_a )
      = ( ( X = one_on2109788427901206336ring_a )
        | ( X
          = ( uminus3100561713750211260ring_a @ one_on2109788427901206336ring_a ) ) ) ) ).

% square_eq_1_iff
thf(fact_811_square__eq__1__iff,axiom,
    ! [X: real] :
      ( ( ( times_times_real @ X @ X )
        = one_one_real )
      = ( ( X = one_one_real )
        | ( X
          = ( uminus_uminus_real @ one_one_real ) ) ) ) ).

% square_eq_1_iff
thf(fact_812_monic__power,axiom,
    ! [P2: poly_real,N: nat] :
      ( ( ( coeff_real @ P2 @ ( degree_real @ P2 ) )
        = one_one_real )
     => ( ( coeff_real @ ( power_8994544051960338110y_real @ P2 @ N ) @ ( degree_real @ ( power_8994544051960338110y_real @ P2 @ N ) ) )
        = one_one_real ) ) ).

% monic_power
thf(fact_813_monic__power,axiom,
    ! [P2: poly_int,N: nat] :
      ( ( ( coeff_int @ P2 @ ( degree_int @ P2 ) )
        = one_one_int )
     => ( ( coeff_int @ ( power_power_poly_int @ P2 @ N ) @ ( degree_int @ ( power_power_poly_int @ P2 @ N ) ) )
        = one_one_int ) ) ).

% monic_power
thf(fact_814_monic__power,axiom,
    ! [P2: poly_p2573953413498894561ring_a,N: nat] :
      ( ( ( coeff_7919988552178873973ring_a @ P2 @ ( degree617341119394917574ring_a @ P2 ) )
        = one_on3394844594818161742ring_a )
     => ( ( coeff_7919988552178873973ring_a @ ( power_3069662078305747927ring_a @ P2 @ N ) @ ( degree617341119394917574ring_a @ ( power_3069662078305747927ring_a @ P2 @ N ) ) )
        = one_on3394844594818161742ring_a ) ) ).

% monic_power
thf(fact_815_monic__power,axiom,
    ! [P2: poly_F3299452240248304339ring_a,N: nat] :
      ( ( ( coeff_1607515655354303335ring_a @ P2 @ ( degree4881254707062955960ring_a @ P2 ) )
        = one_on2109788427901206336ring_a )
     => ( ( coeff_1607515655354303335ring_a @ ( power_6500929916544582089ring_a @ P2 @ N ) @ ( degree4881254707062955960ring_a @ ( power_6500929916544582089ring_a @ P2 @ N ) ) )
        = one_on2109788427901206336ring_a ) ) ).

% monic_power
thf(fact_816_monic__factor,axiom,
    ! [P2: poly_real,Q: poly_real] :
      ( ( ( coeff_real @ ( times_7914811829580426937y_real @ P2 @ Q ) @ ( degree_real @ ( times_7914811829580426937y_real @ P2 @ Q ) ) )
        = one_one_real )
     => ( ( ( coeff_real @ P2 @ ( degree_real @ P2 ) )
          = one_one_real )
       => ( ( coeff_real @ Q @ ( degree_real @ Q ) )
          = one_one_real ) ) ) ).

% monic_factor
thf(fact_817_monic__factor,axiom,
    ! [P2: poly_int,Q: poly_int] :
      ( ( ( coeff_int @ ( times_times_poly_int @ P2 @ Q ) @ ( degree_int @ ( times_times_poly_int @ P2 @ Q ) ) )
        = one_one_int )
     => ( ( ( coeff_int @ P2 @ ( degree_int @ P2 ) )
          = one_one_int )
       => ( ( coeff_int @ Q @ ( degree_int @ Q ) )
          = one_one_int ) ) ) ).

% monic_factor
thf(fact_818_monic__factor,axiom,
    ! [P2: poly_p2573953413498894561ring_a,Q: poly_p2573953413498894561ring_a] :
      ( ( ( coeff_7919988552178873973ring_a @ ( times_7678616233722469404ring_a @ P2 @ Q ) @ ( degree617341119394917574ring_a @ ( times_7678616233722469404ring_a @ P2 @ Q ) ) )
        = one_on3394844594818161742ring_a )
     => ( ( ( coeff_7919988552178873973ring_a @ P2 @ ( degree617341119394917574ring_a @ P2 ) )
          = one_on3394844594818161742ring_a )
       => ( ( coeff_7919988552178873973ring_a @ Q @ ( degree617341119394917574ring_a @ Q ) )
          = one_on3394844594818161742ring_a ) ) ) ).

% monic_factor
thf(fact_819_monic__factor,axiom,
    ! [P2: poly_F3299452240248304339ring_a,Q: poly_F3299452240248304339ring_a] :
      ( ( ( coeff_1607515655354303335ring_a @ ( times_3242606764180207630ring_a @ P2 @ Q ) @ ( degree4881254707062955960ring_a @ ( times_3242606764180207630ring_a @ P2 @ Q ) ) )
        = one_on2109788427901206336ring_a )
     => ( ( ( coeff_1607515655354303335ring_a @ P2 @ ( degree4881254707062955960ring_a @ P2 ) )
          = one_on2109788427901206336ring_a )
       => ( ( coeff_1607515655354303335ring_a @ Q @ ( degree4881254707062955960ring_a @ Q ) )
          = one_on2109788427901206336ring_a ) ) ) ).

% monic_factor
thf(fact_820_monic__mult,axiom,
    ! [P2: poly_real,Q: poly_real] :
      ( ( ( coeff_real @ P2 @ ( degree_real @ P2 ) )
        = one_one_real )
     => ( ( ( coeff_real @ Q @ ( degree_real @ Q ) )
          = one_one_real )
       => ( ( coeff_real @ ( times_7914811829580426937y_real @ P2 @ Q ) @ ( degree_real @ ( times_7914811829580426937y_real @ P2 @ Q ) ) )
          = one_one_real ) ) ) ).

% monic_mult
thf(fact_821_monic__mult,axiom,
    ! [P2: poly_int,Q: poly_int] :
      ( ( ( coeff_int @ P2 @ ( degree_int @ P2 ) )
        = one_one_int )
     => ( ( ( coeff_int @ Q @ ( degree_int @ Q ) )
          = one_one_int )
       => ( ( coeff_int @ ( times_times_poly_int @ P2 @ Q ) @ ( degree_int @ ( times_times_poly_int @ P2 @ Q ) ) )
          = one_one_int ) ) ) ).

% monic_mult
thf(fact_822_monic__mult,axiom,
    ! [P2: poly_p2573953413498894561ring_a,Q: poly_p2573953413498894561ring_a] :
      ( ( ( coeff_7919988552178873973ring_a @ P2 @ ( degree617341119394917574ring_a @ P2 ) )
        = one_on3394844594818161742ring_a )
     => ( ( ( coeff_7919988552178873973ring_a @ Q @ ( degree617341119394917574ring_a @ Q ) )
          = one_on3394844594818161742ring_a )
       => ( ( coeff_7919988552178873973ring_a @ ( times_7678616233722469404ring_a @ P2 @ Q ) @ ( degree617341119394917574ring_a @ ( times_7678616233722469404ring_a @ P2 @ Q ) ) )
          = one_on3394844594818161742ring_a ) ) ) ).

% monic_mult
thf(fact_823_monic__mult,axiom,
    ! [P2: poly_F3299452240248304339ring_a,Q: poly_F3299452240248304339ring_a] :
      ( ( ( coeff_1607515655354303335ring_a @ P2 @ ( degree4881254707062955960ring_a @ P2 ) )
        = one_on2109788427901206336ring_a )
     => ( ( ( coeff_1607515655354303335ring_a @ Q @ ( degree4881254707062955960ring_a @ Q ) )
          = one_on2109788427901206336ring_a )
       => ( ( coeff_1607515655354303335ring_a @ ( times_3242606764180207630ring_a @ P2 @ Q ) @ ( degree4881254707062955960ring_a @ ( times_3242606764180207630ring_a @ P2 @ Q ) ) )
          = one_on2109788427901206336ring_a ) ) ) ).

% monic_mult
thf(fact_824_inj,axiom,
    ( inj_on_nat_nat
    @ ^ [J: nat] : ( x @ J @ i )
    @ ( set_ord_lessThan_nat @ n ) ) ).

% inj
thf(fact_825_psi__properties_I1_J,axiom,
    ( ( power_6826135765519566523ring_a @ psi @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
    = omega ) ).

% psi_properties(1)
thf(fact_826_psi__inv__exp,axiom,
    ! [I: nat] :
      ( ( times_5121417576591743744ring_a @ ( power_6826135765519566523ring_a @ psi @ I ) @ ( power_6826135765519566523ring_a @ psi_inv @ I ) )
      = one_on2109788427901206336ring_a ) ).

% psi_inv_exp
thf(fact_827_inv__psi__exp,axiom,
    ! [I: nat] :
      ( ( times_5121417576591743744ring_a @ ( power_6826135765519566523ring_a @ psi_inv @ I ) @ ( power_6826135765519566523ring_a @ psi @ I ) )
      = one_on2109788427901206336ring_a ) ).

% inv_psi_exp
thf(fact_828_poly__mod_Olead__coeff__monic__mult,axiom,
    ! [P2: poly_nat,Q: poly_nat] :
      ( ( ( coeff_nat @ P2 @ ( degree_nat @ P2 ) )
        = one_one_nat )
     => ( ( coeff_nat @ ( times_times_poly_nat @ P2 @ Q ) @ ( degree_nat @ ( times_times_poly_nat @ P2 @ Q ) ) )
        = ( coeff_nat @ Q @ ( degree_nat @ Q ) ) ) ) ).

% poly_mod.lead_coeff_monic_mult
thf(fact_829_poly__mod_Olead__coeff__monic__mult,axiom,
    ! [P2: poly_real,Q: poly_real] :
      ( ( ( coeff_real @ P2 @ ( degree_real @ P2 ) )
        = one_one_real )
     => ( ( coeff_real @ ( times_7914811829580426937y_real @ P2 @ Q ) @ ( degree_real @ ( times_7914811829580426937y_real @ P2 @ Q ) ) )
        = ( coeff_real @ Q @ ( degree_real @ Q ) ) ) ) ).

% poly_mod.lead_coeff_monic_mult
thf(fact_830_poly__mod_Olead__coeff__monic__mult,axiom,
    ! [P2: poly_int,Q: poly_int] :
      ( ( ( coeff_int @ P2 @ ( degree_int @ P2 ) )
        = one_one_int )
     => ( ( coeff_int @ ( times_times_poly_int @ P2 @ Q ) @ ( degree_int @ ( times_times_poly_int @ P2 @ Q ) ) )
        = ( coeff_int @ Q @ ( degree_int @ Q ) ) ) ) ).

% poly_mod.lead_coeff_monic_mult
thf(fact_831_poly__mod_Olead__coeff__monic__mult,axiom,
    ! [P2: poly_p2573953413498894561ring_a,Q: poly_p2573953413498894561ring_a] :
      ( ( ( coeff_7919988552178873973ring_a @ P2 @ ( degree617341119394917574ring_a @ P2 ) )
        = one_on3394844594818161742ring_a )
     => ( ( coeff_7919988552178873973ring_a @ ( times_7678616233722469404ring_a @ P2 @ Q ) @ ( degree617341119394917574ring_a @ ( times_7678616233722469404ring_a @ P2 @ Q ) ) )
        = ( coeff_7919988552178873973ring_a @ Q @ ( degree617341119394917574ring_a @ Q ) ) ) ) ).

% poly_mod.lead_coeff_monic_mult
thf(fact_832_poly__mod_Olead__coeff__monic__mult,axiom,
    ! [P2: poly_F3299452240248304339ring_a,Q: poly_F3299452240248304339ring_a] :
      ( ( ( coeff_1607515655354303335ring_a @ P2 @ ( degree4881254707062955960ring_a @ P2 ) )
        = one_on2109788427901206336ring_a )
     => ( ( coeff_1607515655354303335ring_a @ ( times_3242606764180207630ring_a @ P2 @ Q ) @ ( degree4881254707062955960ring_a @ ( times_3242606764180207630ring_a @ P2 @ Q ) ) )
        = ( coeff_1607515655354303335ring_a @ Q @ ( degree4881254707062955960ring_a @ Q ) ) ) ) ).

% poly_mod.lead_coeff_monic_mult
thf(fact_833_dbl__simps_I4_J,axiom,
    ( ( neg_numeral_dbl_int @ ( uminus_uminus_int @ one_one_int ) )
    = ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ).

% dbl_simps(4)
thf(fact_834_dbl__simps_I4_J,axiom,
    ( ( neg_nu2402578231030473156ring_a @ ( uminus6490753114102738890ring_a @ one_on3394844594818161742ring_a ) )
    = ( uminus6490753114102738890ring_a @ ( numera2966756627528668408ring_a @ ( bit0 @ one ) ) ) ) ).

% dbl_simps(4)
thf(fact_835_dbl__simps_I4_J,axiom,
    ( ( neg_nu4947752793073329704r_qr_a @ ( uminus3675112017196868514r_qr_a @ one_one_Kyber_qr_a ) )
    = ( uminus3675112017196868514r_qr_a @ ( numera2156158589294619636r_qr_a @ ( bit0 @ one ) ) ) ) ).

% dbl_simps(4)
thf(fact_836_dbl__simps_I4_J,axiom,
    ( ( neg_nu8930269994625468598ring_a @ ( uminus3100561713750211260ring_a @ one_on2109788427901206336ring_a ) )
    = ( uminus3100561713750211260ring_a @ ( numera7938180240421336042ring_a @ ( bit0 @ one ) ) ) ) ).

% dbl_simps(4)
thf(fact_837_dbl__simps_I4_J,axiom,
    ( ( neg_numeral_dbl_real @ ( uminus_uminus_real @ one_one_real ) )
    = ( uminus_uminus_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ).

% dbl_simps(4)
thf(fact_838_image__ident,axiom,
    ! [Y3: set_nat] :
      ( ( image_nat_nat
        @ ^ [X2: nat] : X2
        @ Y3 )
      = Y3 ) ).

% image_ident
thf(fact_839_psi__psiinv,axiom,
    ( ( times_5121417576591743744ring_a @ psi @ psi_inv )
    = one_on2109788427901206336ring_a ) ).

% psi_psiinv
thf(fact_840_omega__properties_I2_J,axiom,
    omega != one_on2109788427901206336ring_a ).

% omega_properties(2)
thf(fact_841_image__eqI,axiom,
    ! [B: nat,F: nat > nat,X: nat,A2: set_nat] :
      ( ( B
        = ( F @ X ) )
     => ( ( member_nat @ X @ A2 )
       => ( member_nat @ B @ ( image_nat_nat @ F @ A2 ) ) ) ) ).

% image_eqI
thf(fact_842_omega__properties_I1_J,axiom,
    ( ( power_6826135765519566523ring_a @ omega @ n )
    = one_on2109788427901206336ring_a ) ).

% omega_properties(1)
thf(fact_843_dbl__simps_I5_J,axiom,
    ! [K: num] :
      ( ( neg_numeral_dbl_real @ ( numeral_numeral_real @ K ) )
      = ( numeral_numeral_real @ ( bit0 @ K ) ) ) ).

% dbl_simps(5)
thf(fact_844_dbl__simps_I5_J,axiom,
    ! [K: num] :
      ( ( neg_numeral_dbl_int @ ( numeral_numeral_int @ K ) )
      = ( numeral_numeral_int @ ( bit0 @ K ) ) ) ).

% dbl_simps(5)
thf(fact_845_dbl__simps_I5_J,axiom,
    ! [K: num] :
      ( ( neg_nu2402578231030473156ring_a @ ( numera2966756627528668408ring_a @ K ) )
      = ( numera2966756627528668408ring_a @ ( bit0 @ K ) ) ) ).

% dbl_simps(5)
thf(fact_846_dbl__simps_I5_J,axiom,
    ! [K: num] :
      ( ( neg_nu8930269994625468598ring_a @ ( numera7938180240421336042ring_a @ K ) )
      = ( numera7938180240421336042ring_a @ ( bit0 @ K ) ) ) ).

% dbl_simps(5)
thf(fact_847_dbl__simps_I5_J,axiom,
    ! [K: num] :
      ( ( neg_nu4947752793073329704r_qr_a @ ( numera2156158589294619636r_qr_a @ K ) )
      = ( numera2156158589294619636r_qr_a @ ( bit0 @ K ) ) ) ).

% dbl_simps(5)
thf(fact_848_dbl__simps_I1_J,axiom,
    ! [K: num] :
      ( ( neg_numeral_dbl_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ K ) ) )
      = ( uminus_uminus_int @ ( neg_numeral_dbl_int @ ( numeral_numeral_int @ K ) ) ) ) ).

% dbl_simps(1)
thf(fact_849_dbl__simps_I1_J,axiom,
    ! [K: num] :
      ( ( neg_nu2402578231030473156ring_a @ ( uminus6490753114102738890ring_a @ ( numera2966756627528668408ring_a @ K ) ) )
      = ( uminus6490753114102738890ring_a @ ( neg_nu2402578231030473156ring_a @ ( numera2966756627528668408ring_a @ K ) ) ) ) ).

% dbl_simps(1)
thf(fact_850_dbl__simps_I1_J,axiom,
    ! [K: num] :
      ( ( neg_nu4947752793073329704r_qr_a @ ( uminus3675112017196868514r_qr_a @ ( numera2156158589294619636r_qr_a @ K ) ) )
      = ( uminus3675112017196868514r_qr_a @ ( neg_nu4947752793073329704r_qr_a @ ( numera2156158589294619636r_qr_a @ K ) ) ) ) ).

% dbl_simps(1)
thf(fact_851_dbl__simps_I1_J,axiom,
    ! [K: num] :
      ( ( neg_nu8930269994625468598ring_a @ ( uminus3100561713750211260ring_a @ ( numera7938180240421336042ring_a @ K ) ) )
      = ( uminus3100561713750211260ring_a @ ( neg_nu8930269994625468598ring_a @ ( numera7938180240421336042ring_a @ K ) ) ) ) ).

% dbl_simps(1)
thf(fact_852_dbl__simps_I1_J,axiom,
    ! [K: num] :
      ( ( neg_numeral_dbl_real @ ( uminus_uminus_real @ ( numeral_numeral_real @ K ) ) )
      = ( uminus_uminus_real @ ( neg_numeral_dbl_real @ ( numeral_numeral_real @ K ) ) ) ) ).

% dbl_simps(1)
thf(fact_853_dbl__simps_I3_J,axiom,
    ( ( neg_numeral_dbl_real @ one_one_real )
    = ( numeral_numeral_real @ ( bit0 @ one ) ) ) ).

% dbl_simps(3)
thf(fact_854_dbl__simps_I3_J,axiom,
    ( ( neg_numeral_dbl_int @ one_one_int )
    = ( numeral_numeral_int @ ( bit0 @ one ) ) ) ).

% dbl_simps(3)
thf(fact_855_dbl__simps_I3_J,axiom,
    ( ( neg_nu2402578231030473156ring_a @ one_on3394844594818161742ring_a )
    = ( numera2966756627528668408ring_a @ ( bit0 @ one ) ) ) ).

% dbl_simps(3)
thf(fact_856_dbl__simps_I3_J,axiom,
    ( ( neg_nu8930269994625468598ring_a @ one_on2109788427901206336ring_a )
    = ( numera7938180240421336042ring_a @ ( bit0 @ one ) ) ) ).

% dbl_simps(3)
thf(fact_857_dbl__simps_I3_J,axiom,
    ( ( neg_nu4947752793073329704r_qr_a @ one_one_Kyber_qr_a )
    = ( numera2156158589294619636r_qr_a @ ( bit0 @ one ) ) ) ).

% dbl_simps(3)
thf(fact_858_dbl__def,axiom,
    ( neg_nu2402578231030473156ring_a
    = ( ^ [X2: poly_F3299452240248304339ring_a] : ( plus_p7290290253215468682ring_a @ X2 @ X2 ) ) ) ).

% dbl_def
thf(fact_859_dbl__def,axiom,
    ( neg_numeral_dbl_real
    = ( ^ [X2: real] : ( plus_plus_real @ X2 @ X2 ) ) ) ).

% dbl_def
thf(fact_860_dbl__def,axiom,
    ( neg_numeral_dbl_int
    = ( ^ [X2: int] : ( plus_plus_int @ X2 @ X2 ) ) ) ).

% dbl_def
thf(fact_861_dbl__def,axiom,
    ( neg_nu8930269994625468598ring_a
    = ( ^ [X2: finite_mod_ring_a] : ( plus_p6165643967897163644ring_a @ X2 @ X2 ) ) ) ).

% dbl_def
thf(fact_862_dbl__def,axiom,
    ( neg_nu4947752793073329704r_qr_a
    = ( ^ [X2: kyber_qr_a] : ( plus_plus_Kyber_qr_a @ X2 @ X2 ) ) ) ).

% dbl_def
thf(fact_863_rev__image__eqI,axiom,
    ! [X: nat,A2: set_nat,B: nat,F: nat > nat] :
      ( ( member_nat @ X @ A2 )
     => ( ( B
          = ( F @ X ) )
       => ( member_nat @ B @ ( image_nat_nat @ F @ A2 ) ) ) ) ).

% rev_image_eqI
thf(fact_864_ball__imageD,axiom,
    ! [F: nat > nat,A2: set_nat,P: nat > $o] :
      ( ! [X3: nat] :
          ( ( member_nat @ X3 @ ( image_nat_nat @ F @ A2 ) )
         => ( P @ X3 ) )
     => ! [X4: nat] :
          ( ( member_nat @ X4 @ A2 )
         => ( P @ ( F @ X4 ) ) ) ) ).

% ball_imageD
thf(fact_865_image__cong,axiom,
    ! [M3: set_nat,N3: set_nat,F: nat > nat,G: nat > nat] :
      ( ( M3 = N3 )
     => ( ! [X3: nat] :
            ( ( member_nat @ X3 @ N3 )
           => ( ( F @ X3 )
              = ( G @ X3 ) ) )
       => ( ( image_nat_nat @ F @ M3 )
          = ( image_nat_nat @ G @ N3 ) ) ) ) ).

% image_cong
thf(fact_866_bex__imageD,axiom,
    ! [F: nat > nat,A2: set_nat,P: nat > $o] :
      ( ? [X4: nat] :
          ( ( member_nat @ X4 @ ( image_nat_nat @ F @ A2 ) )
          & ( P @ X4 ) )
     => ? [X3: nat] :
          ( ( member_nat @ X3 @ A2 )
          & ( P @ ( F @ X3 ) ) ) ) ).

% bex_imageD
thf(fact_867_image__iff,axiom,
    ! [Z: nat,F: nat > nat,A2: set_nat] :
      ( ( member_nat @ Z @ ( image_nat_nat @ F @ A2 ) )
      = ( ? [X2: nat] :
            ( ( member_nat @ X2 @ A2 )
            & ( Z
              = ( F @ X2 ) ) ) ) ) ).

% image_iff
thf(fact_868_imageI,axiom,
    ! [X: nat,A2: set_nat,F: nat > nat] :
      ( ( member_nat @ X @ A2 )
     => ( member_nat @ ( F @ X ) @ ( image_nat_nat @ F @ A2 ) ) ) ).

% imageI
thf(fact_869_psubsetD,axiom,
    ! [A2: set_nat,B3: set_nat,C: nat] :
      ( ( ord_less_set_nat @ A2 @ B3 )
     => ( ( member_nat @ C @ A2 )
       => ( member_nat @ C @ B3 ) ) ) ).

% psubsetD
thf(fact_870_Compr__image__eq,axiom,
    ! [F: nat > nat,A2: set_nat,P: nat > $o] :
      ( ( collect_nat
        @ ^ [X2: nat] :
            ( ( member_nat @ X2 @ ( image_nat_nat @ F @ A2 ) )
            & ( P @ X2 ) ) )
      = ( image_nat_nat @ F
        @ ( collect_nat
          @ ^ [X2: nat] :
              ( ( member_nat @ X2 @ A2 )
              & ( P @ ( F @ X2 ) ) ) ) ) ) ).

% Compr_image_eq
thf(fact_871_image__image,axiom,
    ! [F: nat > nat,G: nat > nat,A2: set_nat] :
      ( ( image_nat_nat @ F @ ( image_nat_nat @ G @ A2 ) )
      = ( image_nat_nat
        @ ^ [X2: nat] : ( F @ ( G @ X2 ) )
        @ A2 ) ) ).

% image_image
thf(fact_872_imageE,axiom,
    ! [B: nat,F: nat > nat,A2: set_nat] :
      ( ( member_nat @ B @ ( image_nat_nat @ F @ A2 ) )
     => ~ ! [X3: nat] :
            ( ( B
              = ( F @ X3 ) )
           => ~ ( member_nat @ X3 @ A2 ) ) ) ).

% imageE
thf(fact_873_less__set__def,axiom,
    ( ord_less_set_nat
    = ( ^ [A4: set_nat,B4: set_nat] :
          ( ord_less_nat_o
          @ ^ [X2: nat] : ( member_nat @ X2 @ A4 )
          @ ^ [X2: nat] : ( member_nat @ X2 @ B4 ) ) ) ) ).

% less_set_def
thf(fact_874_psiinv__prop,axiom,
    ( ( power_6826135765519566523ring_a @ psi_inv @ ( numeral_numeral_nat @ ( bit0 @ one ) ) )
    = mu ) ).

% psiinv_prop
thf(fact_875_negative__psi,axiom,
    ! [I: nat,J2: nat] :
      ( ( ord_less_nat @ I @ J2 )
     => ( ( times_5121417576591743744ring_a @ ( power_6826135765519566523ring_a @ psi @ J2 ) @ ( power_6826135765519566523ring_a @ psi_inv @ I ) )
        = ( power_6826135765519566523ring_a @ psi @ ( minus_minus_nat @ J2 @ I ) ) ) ) ).

% negative_psi
thf(fact_876_inj__uminus,axiom,
    ! [A2: set_Fi2982333969990053029ring_a] : ( inj_on1744613366418436273ring_a @ uminus3100561713750211260ring_a @ A2 ) ).

% inj_uminus
thf(fact_877_inj__uminus,axiom,
    ! [A2: set_real] : ( inj_on_real_real @ uminus_uminus_real @ A2 ) ).

% inj_uminus
thf(fact_878_kyber__ntt_Omu__properties,axiom,
    ( ( times_5121417576591743744ring_a @ mu @ omega )
    = one_on2109788427901206336ring_a ) ).

% kyber_ntt.mu_properties
thf(fact_879_sum_Oimage__eq,axiom,
    ! [G: nat > nat,A2: set_nat] :
      ( ( inj_on_nat_nat @ G @ A2 )
     => ( ( groups3542108847815614940at_nat
          @ ^ [X2: nat] : X2
          @ ( image_nat_nat @ G @ A2 ) )
        = ( groups3542108847815614940at_nat @ G @ A2 ) ) ) ).

% sum.image_eq
thf(fact_880_sum_Oimage__eq,axiom,
    ! [G: nat > finite_mod_ring_a,A2: set_nat] :
      ( ( inj_on1348749855087611458ring_a @ G @ A2 )
     => ( ( groups9063595720648671482ring_a
          @ ^ [X2: finite_mod_ring_a] : X2
          @ ( image_1980459031860794542ring_a @ G @ A2 ) )
        = ( groups3558780024651037881ring_a @ G @ A2 ) ) ) ).

% sum.image_eq
thf(fact_881_degree__drop__n,axiom,
    ! [F: poly_F3299452240248304339ring_a] :
      ( ( degree4881254707062955960ring_a @ ( nTT_ky790528430515779601ring_a @ n @ F ) )
      = ( minus_minus_nat @ ( degree4881254707062955960ring_a @ F ) @ n ) ) ).

% degree_drop_n
thf(fact_882_image__strict__mono,axiom,
    ! [F: nat > nat,B3: set_nat,A2: set_nat] :
      ( ( inj_on_nat_nat @ F @ B3 )
     => ( ( ord_less_set_nat @ A2 @ B3 )
       => ( ord_less_set_nat @ ( image_nat_nat @ F @ A2 ) @ ( image_nat_nat @ F @ B3 ) ) ) ) ).

% image_strict_mono
thf(fact_883_kyber__ntt_Omu__properties_H,axiom,
    mu != one_on2109788427901206336ring_a ).

% kyber_ntt.mu_properties'
thf(fact_884_add__diff__cancel__right_H,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a] :
      ( ( minus_3375643675566563378r_qr_a @ ( plus_plus_Kyber_qr_a @ A @ B ) @ B )
      = A ) ).

% add_diff_cancel_right'
thf(fact_885_add__diff__cancel__right_H,axiom,
    ! [A: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ A @ B ) @ B )
      = A ) ).

% add_diff_cancel_right'
thf(fact_886_add__diff__cancel__right_H,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a] :
      ( ( minus_5354101470050066234ring_a @ ( plus_p7290290253215468682ring_a @ A @ B ) @ B )
      = A ) ).

% add_diff_cancel_right'
thf(fact_887_add__diff__cancel__right_H,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a] :
      ( ( minus_3609261664126569004ring_a @ ( plus_p6165643967897163644ring_a @ A @ B ) @ B )
      = A ) ).

% add_diff_cancel_right'
thf(fact_888_add__diff__cancel__right_H,axiom,
    ! [A: real,B: real] :
      ( ( minus_minus_real @ ( plus_plus_real @ A @ B ) @ B )
      = A ) ).

% add_diff_cancel_right'
thf(fact_889_add__diff__cancel__right_H,axiom,
    ! [A: int,B: int] :
      ( ( minus_minus_int @ ( plus_plus_int @ A @ B ) @ B )
      = A ) ).

% add_diff_cancel_right'
thf(fact_890_add__diff__cancel__right,axiom,
    ! [A: kyber_qr_a,C: kyber_qr_a,B: kyber_qr_a] :
      ( ( minus_3375643675566563378r_qr_a @ ( plus_plus_Kyber_qr_a @ A @ C ) @ ( plus_plus_Kyber_qr_a @ B @ C ) )
      = ( minus_3375643675566563378r_qr_a @ A @ B ) ) ).

% add_diff_cancel_right
thf(fact_891_add__diff__cancel__right,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) )
      = ( minus_minus_nat @ A @ B ) ) ).

% add_diff_cancel_right
thf(fact_892_add__diff__cancel__right,axiom,
    ! [A: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a] :
      ( ( minus_5354101470050066234ring_a @ ( plus_p7290290253215468682ring_a @ A @ C ) @ ( plus_p7290290253215468682ring_a @ B @ C ) )
      = ( minus_5354101470050066234ring_a @ A @ B ) ) ).

% add_diff_cancel_right
thf(fact_893_add__diff__cancel__right,axiom,
    ! [A: finite_mod_ring_a,C: finite_mod_ring_a,B: finite_mod_ring_a] :
      ( ( minus_3609261664126569004ring_a @ ( plus_p6165643967897163644ring_a @ A @ C ) @ ( plus_p6165643967897163644ring_a @ B @ C ) )
      = ( minus_3609261664126569004ring_a @ A @ B ) ) ).

% add_diff_cancel_right
thf(fact_894_add__diff__cancel__right,axiom,
    ! [A: real,C: real,B: real] :
      ( ( minus_minus_real @ ( plus_plus_real @ A @ C ) @ ( plus_plus_real @ B @ C ) )
      = ( minus_minus_real @ A @ B ) ) ).

% add_diff_cancel_right
thf(fact_895_add__diff__cancel__right,axiom,
    ! [A: int,C: int,B: int] :
      ( ( minus_minus_int @ ( plus_plus_int @ A @ C ) @ ( plus_plus_int @ B @ C ) )
      = ( minus_minus_int @ A @ B ) ) ).

% add_diff_cancel_right
thf(fact_896_add__diff__cancel__left_H,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a] :
      ( ( minus_3375643675566563378r_qr_a @ ( plus_plus_Kyber_qr_a @ A @ B ) @ A )
      = B ) ).

% add_diff_cancel_left'
thf(fact_897_add__diff__cancel__left_H,axiom,
    ! [A: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ A @ B ) @ A )
      = B ) ).

% add_diff_cancel_left'
thf(fact_898_add__diff__cancel__left_H,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a] :
      ( ( minus_5354101470050066234ring_a @ ( plus_p7290290253215468682ring_a @ A @ B ) @ A )
      = B ) ).

% add_diff_cancel_left'
thf(fact_899_add__diff__cancel__left_H,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a] :
      ( ( minus_3609261664126569004ring_a @ ( plus_p6165643967897163644ring_a @ A @ B ) @ A )
      = B ) ).

% add_diff_cancel_left'
thf(fact_900_add__diff__cancel__left_H,axiom,
    ! [A: real,B: real] :
      ( ( minus_minus_real @ ( plus_plus_real @ A @ B ) @ A )
      = B ) ).

% add_diff_cancel_left'
thf(fact_901_add__diff__cancel__left_H,axiom,
    ! [A: int,B: int] :
      ( ( minus_minus_int @ ( plus_plus_int @ A @ B ) @ A )
      = B ) ).

% add_diff_cancel_left'
thf(fact_902_add__diff__cancel__left,axiom,
    ! [C: kyber_qr_a,A: kyber_qr_a,B: kyber_qr_a] :
      ( ( minus_3375643675566563378r_qr_a @ ( plus_plus_Kyber_qr_a @ C @ A ) @ ( plus_plus_Kyber_qr_a @ C @ B ) )
      = ( minus_3375643675566563378r_qr_a @ A @ B ) ) ).

% add_diff_cancel_left
thf(fact_903_add__diff__cancel__left,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) )
      = ( minus_minus_nat @ A @ B ) ) ).

% add_diff_cancel_left
thf(fact_904_add__diff__cancel__left,axiom,
    ! [C: poly_F3299452240248304339ring_a,A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a] :
      ( ( minus_5354101470050066234ring_a @ ( plus_p7290290253215468682ring_a @ C @ A ) @ ( plus_p7290290253215468682ring_a @ C @ B ) )
      = ( minus_5354101470050066234ring_a @ A @ B ) ) ).

% add_diff_cancel_left
thf(fact_905_add__diff__cancel__left,axiom,
    ! [C: finite_mod_ring_a,A: finite_mod_ring_a,B: finite_mod_ring_a] :
      ( ( minus_3609261664126569004ring_a @ ( plus_p6165643967897163644ring_a @ C @ A ) @ ( plus_p6165643967897163644ring_a @ C @ B ) )
      = ( minus_3609261664126569004ring_a @ A @ B ) ) ).

% add_diff_cancel_left
thf(fact_906_add__diff__cancel__left,axiom,
    ! [C: real,A: real,B: real] :
      ( ( minus_minus_real @ ( plus_plus_real @ C @ A ) @ ( plus_plus_real @ C @ B ) )
      = ( minus_minus_real @ A @ B ) ) ).

% add_diff_cancel_left
thf(fact_907_add__diff__cancel__left,axiom,
    ! [C: int,A: int,B: int] :
      ( ( minus_minus_int @ ( plus_plus_int @ C @ A ) @ ( plus_plus_int @ C @ B ) )
      = ( minus_minus_int @ A @ B ) ) ).

% add_diff_cancel_left
thf(fact_908_diff__add__cancel,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a] :
      ( ( plus_plus_Kyber_qr_a @ ( minus_3375643675566563378r_qr_a @ A @ B ) @ B )
      = A ) ).

% diff_add_cancel
thf(fact_909_diff__add__cancel,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a] :
      ( ( plus_p7290290253215468682ring_a @ ( minus_5354101470050066234ring_a @ A @ B ) @ B )
      = A ) ).

% diff_add_cancel
thf(fact_910_diff__add__cancel,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a] :
      ( ( plus_p6165643967897163644ring_a @ ( minus_3609261664126569004ring_a @ A @ B ) @ B )
      = A ) ).

% diff_add_cancel
thf(fact_911_diff__add__cancel,axiom,
    ! [A: real,B: real] :
      ( ( plus_plus_real @ ( minus_minus_real @ A @ B ) @ B )
      = A ) ).

% diff_add_cancel
thf(fact_912_diff__add__cancel,axiom,
    ! [A: int,B: int] :
      ( ( plus_plus_int @ ( minus_minus_int @ A @ B ) @ B )
      = A ) ).

% diff_add_cancel
thf(fact_913_add__diff__cancel,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a] :
      ( ( minus_3375643675566563378r_qr_a @ ( plus_plus_Kyber_qr_a @ A @ B ) @ B )
      = A ) ).

% add_diff_cancel
thf(fact_914_add__diff__cancel,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a] :
      ( ( minus_5354101470050066234ring_a @ ( plus_p7290290253215468682ring_a @ A @ B ) @ B )
      = A ) ).

% add_diff_cancel
thf(fact_915_add__diff__cancel,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a] :
      ( ( minus_3609261664126569004ring_a @ ( plus_p6165643967897163644ring_a @ A @ B ) @ B )
      = A ) ).

% add_diff_cancel
thf(fact_916_add__diff__cancel,axiom,
    ! [A: real,B: real] :
      ( ( minus_minus_real @ ( plus_plus_real @ A @ B ) @ B )
      = A ) ).

% add_diff_cancel
thf(fact_917_add__diff__cancel,axiom,
    ! [A: int,B: int] :
      ( ( minus_minus_int @ ( plus_plus_int @ A @ B ) @ B )
      = A ) ).

% add_diff_cancel
thf(fact_918_minus__diff__eq,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a] :
      ( ( uminus6490753114102738890ring_a @ ( minus_5354101470050066234ring_a @ A @ B ) )
      = ( minus_5354101470050066234ring_a @ B @ A ) ) ).

% minus_diff_eq
thf(fact_919_minus__diff__eq,axiom,
    ! [A: int,B: int] :
      ( ( uminus_uminus_int @ ( minus_minus_int @ A @ B ) )
      = ( minus_minus_int @ B @ A ) ) ).

% minus_diff_eq
thf(fact_920_minus__diff__eq,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a] :
      ( ( uminus3100561713750211260ring_a @ ( minus_3609261664126569004ring_a @ A @ B ) )
      = ( minus_3609261664126569004ring_a @ B @ A ) ) ).

% minus_diff_eq
thf(fact_921_minus__diff__eq,axiom,
    ! [A: real,B: real] :
      ( ( uminus_uminus_real @ ( minus_minus_real @ A @ B ) )
      = ( minus_minus_real @ B @ A ) ) ).

% minus_diff_eq
thf(fact_922_coeff__diff,axiom,
    ! [P2: poly_nat,Q: poly_nat,N: nat] :
      ( ( coeff_nat @ ( minus_minus_poly_nat @ P2 @ Q ) @ N )
      = ( minus_minus_nat @ ( coeff_nat @ P2 @ N ) @ ( coeff_nat @ Q @ N ) ) ) ).

% coeff_diff
thf(fact_923_coeff__diff,axiom,
    ! [P2: poly_p2573953413498894561ring_a,Q: poly_p2573953413498894561ring_a,N: nat] :
      ( ( coeff_7919988552178873973ring_a @ ( minus_8398332843867831112ring_a @ P2 @ Q ) @ N )
      = ( minus_5354101470050066234ring_a @ ( coeff_7919988552178873973ring_a @ P2 @ N ) @ ( coeff_7919988552178873973ring_a @ Q @ N ) ) ) ).

% coeff_diff
thf(fact_924_coeff__diff,axiom,
    ! [P2: poly_real,Q: poly_real,N: nat] :
      ( ( coeff_real @ ( minus_7737989384826904205y_real @ P2 @ Q ) @ N )
      = ( minus_minus_real @ ( coeff_real @ P2 @ N ) @ ( coeff_real @ Q @ N ) ) ) ).

% coeff_diff
thf(fact_925_coeff__diff,axiom,
    ! [P2: poly_int,Q: poly_int,N: nat] :
      ( ( coeff_int @ ( minus_minus_poly_int @ P2 @ Q ) @ N )
      = ( minus_minus_int @ ( coeff_int @ P2 @ N ) @ ( coeff_int @ Q @ N ) ) ) ).

% coeff_diff
thf(fact_926_coeff__diff,axiom,
    ! [P2: poly_F3299452240248304339ring_a,Q: poly_F3299452240248304339ring_a,N: nat] :
      ( ( coeff_1607515655354303335ring_a @ ( minus_5354101470050066234ring_a @ P2 @ Q ) @ N )
      = ( minus_3609261664126569004ring_a @ ( coeff_1607515655354303335ring_a @ P2 @ N ) @ ( coeff_1607515655354303335ring_a @ Q @ N ) ) ) ).

% coeff_diff
thf(fact_927_diff__diff__left,axiom,
    ! [I: nat,J2: nat,K: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ I @ J2 ) @ K )
      = ( minus_minus_nat @ I @ ( plus_plus_nat @ J2 @ K ) ) ) ).

% diff_diff_left
thf(fact_928_right__diff__distrib__numeral,axiom,
    ! [V: num,B: real,C: real] :
      ( ( times_times_real @ ( numeral_numeral_real @ V ) @ ( minus_minus_real @ B @ C ) )
      = ( minus_minus_real @ ( times_times_real @ ( numeral_numeral_real @ V ) @ B ) @ ( times_times_real @ ( numeral_numeral_real @ V ) @ C ) ) ) ).

% right_diff_distrib_numeral
thf(fact_929_right__diff__distrib__numeral,axiom,
    ! [V: num,B: int,C: int] :
      ( ( times_times_int @ ( numeral_numeral_int @ V ) @ ( minus_minus_int @ B @ C ) )
      = ( minus_minus_int @ ( times_times_int @ ( numeral_numeral_int @ V ) @ B ) @ ( times_times_int @ ( numeral_numeral_int @ V ) @ C ) ) ) ).

% right_diff_distrib_numeral
thf(fact_930_right__diff__distrib__numeral,axiom,
    ! [V: num,B: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ ( numera2966756627528668408ring_a @ V ) @ ( minus_5354101470050066234ring_a @ B @ C ) )
      = ( minus_5354101470050066234ring_a @ ( times_3242606764180207630ring_a @ ( numera2966756627528668408ring_a @ V ) @ B ) @ ( times_3242606764180207630ring_a @ ( numera2966756627528668408ring_a @ V ) @ C ) ) ) ).

% right_diff_distrib_numeral
thf(fact_931_right__diff__distrib__numeral,axiom,
    ! [V: num,B: finite_mod_ring_a,C: finite_mod_ring_a] :
      ( ( times_5121417576591743744ring_a @ ( numera7938180240421336042ring_a @ V ) @ ( minus_3609261664126569004ring_a @ B @ C ) )
      = ( minus_3609261664126569004ring_a @ ( times_5121417576591743744ring_a @ ( numera7938180240421336042ring_a @ V ) @ B ) @ ( times_5121417576591743744ring_a @ ( numera7938180240421336042ring_a @ V ) @ C ) ) ) ).

% right_diff_distrib_numeral
thf(fact_932_right__diff__distrib__numeral,axiom,
    ! [V: num,B: kyber_qr_a,C: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ ( numera2156158589294619636r_qr_a @ V ) @ ( minus_3375643675566563378r_qr_a @ B @ C ) )
      = ( minus_3375643675566563378r_qr_a @ ( times_2095635435063429214r_qr_a @ ( numera2156158589294619636r_qr_a @ V ) @ B ) @ ( times_2095635435063429214r_qr_a @ ( numera2156158589294619636r_qr_a @ V ) @ C ) ) ) ).

% right_diff_distrib_numeral
thf(fact_933_left__diff__distrib__numeral,axiom,
    ! [A: real,B: real,V: num] :
      ( ( times_times_real @ ( minus_minus_real @ A @ B ) @ ( numeral_numeral_real @ V ) )
      = ( minus_minus_real @ ( times_times_real @ A @ ( numeral_numeral_real @ V ) ) @ ( times_times_real @ B @ ( numeral_numeral_real @ V ) ) ) ) ).

% left_diff_distrib_numeral
thf(fact_934_left__diff__distrib__numeral,axiom,
    ! [A: int,B: int,V: num] :
      ( ( times_times_int @ ( minus_minus_int @ A @ B ) @ ( numeral_numeral_int @ V ) )
      = ( minus_minus_int @ ( times_times_int @ A @ ( numeral_numeral_int @ V ) ) @ ( times_times_int @ B @ ( numeral_numeral_int @ V ) ) ) ) ).

% left_diff_distrib_numeral
thf(fact_935_left__diff__distrib__numeral,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a,V: num] :
      ( ( times_3242606764180207630ring_a @ ( minus_5354101470050066234ring_a @ A @ B ) @ ( numera2966756627528668408ring_a @ V ) )
      = ( minus_5354101470050066234ring_a @ ( times_3242606764180207630ring_a @ A @ ( numera2966756627528668408ring_a @ V ) ) @ ( times_3242606764180207630ring_a @ B @ ( numera2966756627528668408ring_a @ V ) ) ) ) ).

% left_diff_distrib_numeral
thf(fact_936_left__diff__distrib__numeral,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a,V: num] :
      ( ( times_5121417576591743744ring_a @ ( minus_3609261664126569004ring_a @ A @ B ) @ ( numera7938180240421336042ring_a @ V ) )
      = ( minus_3609261664126569004ring_a @ ( times_5121417576591743744ring_a @ A @ ( numera7938180240421336042ring_a @ V ) ) @ ( times_5121417576591743744ring_a @ B @ ( numera7938180240421336042ring_a @ V ) ) ) ) ).

% left_diff_distrib_numeral
thf(fact_937_left__diff__distrib__numeral,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a,V: num] :
      ( ( times_2095635435063429214r_qr_a @ ( minus_3375643675566563378r_qr_a @ A @ B ) @ ( numera2156158589294619636r_qr_a @ V ) )
      = ( minus_3375643675566563378r_qr_a @ ( times_2095635435063429214r_qr_a @ A @ ( numera2156158589294619636r_qr_a @ V ) ) @ ( times_2095635435063429214r_qr_a @ B @ ( numera2156158589294619636r_qr_a @ V ) ) ) ) ).

% left_diff_distrib_numeral
thf(fact_938_uminus__add__conv__diff,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a] :
      ( ( plus_plus_Kyber_qr_a @ ( uminus3675112017196868514r_qr_a @ A ) @ B )
      = ( minus_3375643675566563378r_qr_a @ B @ A ) ) ).

% uminus_add_conv_diff
thf(fact_939_uminus__add__conv__diff,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a] :
      ( ( plus_p7290290253215468682ring_a @ ( uminus6490753114102738890ring_a @ A ) @ B )
      = ( minus_5354101470050066234ring_a @ B @ A ) ) ).

% uminus_add_conv_diff
thf(fact_940_uminus__add__conv__diff,axiom,
    ! [A: int,B: int] :
      ( ( plus_plus_int @ ( uminus_uminus_int @ A ) @ B )
      = ( minus_minus_int @ B @ A ) ) ).

% uminus_add_conv_diff
thf(fact_941_uminus__add__conv__diff,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a] :
      ( ( plus_p6165643967897163644ring_a @ ( uminus3100561713750211260ring_a @ A ) @ B )
      = ( minus_3609261664126569004ring_a @ B @ A ) ) ).

% uminus_add_conv_diff
thf(fact_942_uminus__add__conv__diff,axiom,
    ! [A: real,B: real] :
      ( ( plus_plus_real @ ( uminus_uminus_real @ A ) @ B )
      = ( minus_minus_real @ B @ A ) ) ).

% uminus_add_conv_diff
thf(fact_943_diff__minus__eq__add,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a] :
      ( ( minus_3375643675566563378r_qr_a @ A @ ( uminus3675112017196868514r_qr_a @ B ) )
      = ( plus_plus_Kyber_qr_a @ A @ B ) ) ).

% diff_minus_eq_add
thf(fact_944_diff__minus__eq__add,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a] :
      ( ( minus_5354101470050066234ring_a @ A @ ( uminus6490753114102738890ring_a @ B ) )
      = ( plus_p7290290253215468682ring_a @ A @ B ) ) ).

% diff_minus_eq_add
thf(fact_945_diff__minus__eq__add,axiom,
    ! [A: int,B: int] :
      ( ( minus_minus_int @ A @ ( uminus_uminus_int @ B ) )
      = ( plus_plus_int @ A @ B ) ) ).

% diff_minus_eq_add
thf(fact_946_diff__minus__eq__add,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a] :
      ( ( minus_3609261664126569004ring_a @ A @ ( uminus3100561713750211260ring_a @ B ) )
      = ( plus_p6165643967897163644ring_a @ A @ B ) ) ).

% diff_minus_eq_add
thf(fact_947_diff__minus__eq__add,axiom,
    ! [A: real,B: real] :
      ( ( minus_minus_real @ A @ ( uminus_uminus_real @ B ) )
      = ( plus_plus_real @ A @ B ) ) ).

% diff_minus_eq_add
thf(fact_948_diff__numeral__simps_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( minus_minus_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ ( numeral_numeral_int @ N ) )
      = ( uminus_uminus_int @ ( numeral_numeral_int @ ( plus_plus_num @ M @ N ) ) ) ) ).

% diff_numeral_simps(3)
thf(fact_949_diff__numeral__simps_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( minus_5354101470050066234ring_a @ ( uminus6490753114102738890ring_a @ ( numera2966756627528668408ring_a @ M ) ) @ ( numera2966756627528668408ring_a @ N ) )
      = ( uminus6490753114102738890ring_a @ ( numera2966756627528668408ring_a @ ( plus_plus_num @ M @ N ) ) ) ) ).

% diff_numeral_simps(3)
thf(fact_950_diff__numeral__simps_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( minus_3375643675566563378r_qr_a @ ( uminus3675112017196868514r_qr_a @ ( numera2156158589294619636r_qr_a @ M ) ) @ ( numera2156158589294619636r_qr_a @ N ) )
      = ( uminus3675112017196868514r_qr_a @ ( numera2156158589294619636r_qr_a @ ( plus_plus_num @ M @ N ) ) ) ) ).

% diff_numeral_simps(3)
thf(fact_951_diff__numeral__simps_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( minus_3609261664126569004ring_a @ ( uminus3100561713750211260ring_a @ ( numera7938180240421336042ring_a @ M ) ) @ ( numera7938180240421336042ring_a @ N ) )
      = ( uminus3100561713750211260ring_a @ ( numera7938180240421336042ring_a @ ( plus_plus_num @ M @ N ) ) ) ) ).

% diff_numeral_simps(3)
thf(fact_952_diff__numeral__simps_I3_J,axiom,
    ! [M: num,N: num] :
      ( ( minus_minus_real @ ( uminus_uminus_real @ ( numeral_numeral_real @ M ) ) @ ( numeral_numeral_real @ N ) )
      = ( uminus_uminus_real @ ( numeral_numeral_real @ ( plus_plus_num @ M @ N ) ) ) ) ).

% diff_numeral_simps(3)
thf(fact_953_diff__numeral__simps_I2_J,axiom,
    ! [M: num,N: num] :
      ( ( minus_minus_int @ ( numeral_numeral_int @ M ) @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( numeral_numeral_int @ ( plus_plus_num @ M @ N ) ) ) ).

% diff_numeral_simps(2)
thf(fact_954_diff__numeral__simps_I2_J,axiom,
    ! [M: num,N: num] :
      ( ( minus_5354101470050066234ring_a @ ( numera2966756627528668408ring_a @ M ) @ ( uminus6490753114102738890ring_a @ ( numera2966756627528668408ring_a @ N ) ) )
      = ( numera2966756627528668408ring_a @ ( plus_plus_num @ M @ N ) ) ) ).

% diff_numeral_simps(2)
thf(fact_955_diff__numeral__simps_I2_J,axiom,
    ! [M: num,N: num] :
      ( ( minus_3375643675566563378r_qr_a @ ( numera2156158589294619636r_qr_a @ M ) @ ( uminus3675112017196868514r_qr_a @ ( numera2156158589294619636r_qr_a @ N ) ) )
      = ( numera2156158589294619636r_qr_a @ ( plus_plus_num @ M @ N ) ) ) ).

% diff_numeral_simps(2)
thf(fact_956_diff__numeral__simps_I2_J,axiom,
    ! [M: num,N: num] :
      ( ( minus_3609261664126569004ring_a @ ( numera7938180240421336042ring_a @ M ) @ ( uminus3100561713750211260ring_a @ ( numera7938180240421336042ring_a @ N ) ) )
      = ( numera7938180240421336042ring_a @ ( plus_plus_num @ M @ N ) ) ) ).

% diff_numeral_simps(2)
thf(fact_957_diff__numeral__simps_I2_J,axiom,
    ! [M: num,N: num] :
      ( ( minus_minus_real @ ( numeral_numeral_real @ M ) @ ( uminus_uminus_real @ ( numeral_numeral_real @ N ) ) )
      = ( numeral_numeral_real @ ( plus_plus_num @ M @ N ) ) ) ).

% diff_numeral_simps(2)
thf(fact_958_diff__numeral__special_I10_J,axiom,
    ( ( minus_minus_int @ ( uminus_uminus_int @ one_one_int ) @ one_one_int )
    = ( uminus_uminus_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) ) ) ).

% diff_numeral_special(10)
thf(fact_959_diff__numeral__special_I10_J,axiom,
    ( ( minus_5354101470050066234ring_a @ ( uminus6490753114102738890ring_a @ one_on3394844594818161742ring_a ) @ one_on3394844594818161742ring_a )
    = ( uminus6490753114102738890ring_a @ ( numera2966756627528668408ring_a @ ( bit0 @ one ) ) ) ) ).

% diff_numeral_special(10)
thf(fact_960_diff__numeral__special_I10_J,axiom,
    ( ( minus_3375643675566563378r_qr_a @ ( uminus3675112017196868514r_qr_a @ one_one_Kyber_qr_a ) @ one_one_Kyber_qr_a )
    = ( uminus3675112017196868514r_qr_a @ ( numera2156158589294619636r_qr_a @ ( bit0 @ one ) ) ) ) ).

% diff_numeral_special(10)
thf(fact_961_diff__numeral__special_I10_J,axiom,
    ( ( minus_3609261664126569004ring_a @ ( uminus3100561713750211260ring_a @ one_on2109788427901206336ring_a ) @ one_on2109788427901206336ring_a )
    = ( uminus3100561713750211260ring_a @ ( numera7938180240421336042ring_a @ ( bit0 @ one ) ) ) ) ).

% diff_numeral_special(10)
thf(fact_962_diff__numeral__special_I10_J,axiom,
    ( ( minus_minus_real @ ( uminus_uminus_real @ one_one_real ) @ one_one_real )
    = ( uminus_uminus_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) ) ) ).

% diff_numeral_special(10)
thf(fact_963_diff__numeral__special_I11_J,axiom,
    ( ( minus_minus_int @ one_one_int @ ( uminus_uminus_int @ one_one_int ) )
    = ( numeral_numeral_int @ ( bit0 @ one ) ) ) ).

% diff_numeral_special(11)
thf(fact_964_diff__numeral__special_I11_J,axiom,
    ( ( minus_5354101470050066234ring_a @ one_on3394844594818161742ring_a @ ( uminus6490753114102738890ring_a @ one_on3394844594818161742ring_a ) )
    = ( numera2966756627528668408ring_a @ ( bit0 @ one ) ) ) ).

% diff_numeral_special(11)
thf(fact_965_diff__numeral__special_I11_J,axiom,
    ( ( minus_3375643675566563378r_qr_a @ one_one_Kyber_qr_a @ ( uminus3675112017196868514r_qr_a @ one_one_Kyber_qr_a ) )
    = ( numera2156158589294619636r_qr_a @ ( bit0 @ one ) ) ) ).

% diff_numeral_special(11)
thf(fact_966_diff__numeral__special_I11_J,axiom,
    ( ( minus_3609261664126569004ring_a @ one_on2109788427901206336ring_a @ ( uminus3100561713750211260ring_a @ one_on2109788427901206336ring_a ) )
    = ( numera7938180240421336042ring_a @ ( bit0 @ one ) ) ) ).

% diff_numeral_special(11)
thf(fact_967_diff__numeral__special_I11_J,axiom,
    ( ( minus_minus_real @ one_one_real @ ( uminus_uminus_real @ one_one_real ) )
    = ( numeral_numeral_real @ ( bit0 @ one ) ) ) ).

% diff_numeral_special(11)
thf(fact_968_diff__numeral__special_I3_J,axiom,
    ! [N: num] :
      ( ( minus_minus_int @ one_one_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ N ) ) )
      = ( numeral_numeral_int @ ( plus_plus_num @ one @ N ) ) ) ).

% diff_numeral_special(3)
thf(fact_969_diff__numeral__special_I3_J,axiom,
    ! [N: num] :
      ( ( minus_5354101470050066234ring_a @ one_on3394844594818161742ring_a @ ( uminus6490753114102738890ring_a @ ( numera2966756627528668408ring_a @ N ) ) )
      = ( numera2966756627528668408ring_a @ ( plus_plus_num @ one @ N ) ) ) ).

% diff_numeral_special(3)
thf(fact_970_diff__numeral__special_I3_J,axiom,
    ! [N: num] :
      ( ( minus_3375643675566563378r_qr_a @ one_one_Kyber_qr_a @ ( uminus3675112017196868514r_qr_a @ ( numera2156158589294619636r_qr_a @ N ) ) )
      = ( numera2156158589294619636r_qr_a @ ( plus_plus_num @ one @ N ) ) ) ).

% diff_numeral_special(3)
thf(fact_971_diff__numeral__special_I3_J,axiom,
    ! [N: num] :
      ( ( minus_3609261664126569004ring_a @ one_on2109788427901206336ring_a @ ( uminus3100561713750211260ring_a @ ( numera7938180240421336042ring_a @ N ) ) )
      = ( numera7938180240421336042ring_a @ ( plus_plus_num @ one @ N ) ) ) ).

% diff_numeral_special(3)
thf(fact_972_diff__numeral__special_I3_J,axiom,
    ! [N: num] :
      ( ( minus_minus_real @ one_one_real @ ( uminus_uminus_real @ ( numeral_numeral_real @ N ) ) )
      = ( numeral_numeral_real @ ( plus_plus_num @ one @ N ) ) ) ).

% diff_numeral_special(3)
thf(fact_973_diff__numeral__special_I4_J,axiom,
    ! [M: num] :
      ( ( minus_minus_int @ ( uminus_uminus_int @ ( numeral_numeral_int @ M ) ) @ one_one_int )
      = ( uminus_uminus_int @ ( numeral_numeral_int @ ( plus_plus_num @ M @ one ) ) ) ) ).

% diff_numeral_special(4)
thf(fact_974_diff__numeral__special_I4_J,axiom,
    ! [M: num] :
      ( ( minus_5354101470050066234ring_a @ ( uminus6490753114102738890ring_a @ ( numera2966756627528668408ring_a @ M ) ) @ one_on3394844594818161742ring_a )
      = ( uminus6490753114102738890ring_a @ ( numera2966756627528668408ring_a @ ( plus_plus_num @ M @ one ) ) ) ) ).

% diff_numeral_special(4)
thf(fact_975_diff__numeral__special_I4_J,axiom,
    ! [M: num] :
      ( ( minus_3375643675566563378r_qr_a @ ( uminus3675112017196868514r_qr_a @ ( numera2156158589294619636r_qr_a @ M ) ) @ one_one_Kyber_qr_a )
      = ( uminus3675112017196868514r_qr_a @ ( numera2156158589294619636r_qr_a @ ( plus_plus_num @ M @ one ) ) ) ) ).

% diff_numeral_special(4)
thf(fact_976_diff__numeral__special_I4_J,axiom,
    ! [M: num] :
      ( ( minus_3609261664126569004ring_a @ ( uminus3100561713750211260ring_a @ ( numera7938180240421336042ring_a @ M ) ) @ one_on2109788427901206336ring_a )
      = ( uminus3100561713750211260ring_a @ ( numera7938180240421336042ring_a @ ( plus_plus_num @ M @ one ) ) ) ) ).

% diff_numeral_special(4)
thf(fact_977_diff__numeral__special_I4_J,axiom,
    ! [M: num] :
      ( ( minus_minus_real @ ( uminus_uminus_real @ ( numeral_numeral_real @ M ) ) @ one_one_real )
      = ( uminus_uminus_real @ ( numeral_numeral_real @ ( plus_plus_num @ M @ one ) ) ) ) ).

% diff_numeral_special(4)
thf(fact_978_inj__on__diff__left,axiom,
    ! [A: poly_F3299452240248304339ring_a,A2: set_po5729067318325380787ring_a] : ( inj_on3868492774389771825ring_a @ ( minus_5354101470050066234ring_a @ A ) @ A2 ) ).

% inj_on_diff_left
thf(fact_979_inj__on__diff__left,axiom,
    ! [A: finite_mod_ring_a,A2: set_Fi2982333969990053029ring_a] : ( inj_on1744613366418436273ring_a @ ( minus_3609261664126569004ring_a @ A ) @ A2 ) ).

% inj_on_diff_left
thf(fact_980_inj__on__diff__left,axiom,
    ! [A: real,A2: set_real] : ( inj_on_real_real @ ( minus_minus_real @ A ) @ A2 ) ).

% inj_on_diff_left
thf(fact_981_inj__on__diff__left,axiom,
    ! [A: int,A2: set_int] : ( inj_on_int_int @ ( minus_minus_int @ A ) @ A2 ) ).

% inj_on_diff_left
thf(fact_982_translation__subtract__diff,axiom,
    ! [A: poly_F3299452240248304339ring_a,S: set_po5729067318325380787ring_a,T: set_po5729067318325380787ring_a] :
      ( ( image_1595381290764371653ring_a
        @ ^ [X2: poly_F3299452240248304339ring_a] : ( minus_5354101470050066234ring_a @ X2 @ A )
        @ ( minus_7546863616404068122ring_a @ S @ T ) )
      = ( minus_7546863616404068122ring_a
        @ ( image_1595381290764371653ring_a
          @ ^ [X2: poly_F3299452240248304339ring_a] : ( minus_5354101470050066234ring_a @ X2 @ A )
          @ S )
        @ ( image_1595381290764371653ring_a
          @ ^ [X2: poly_F3299452240248304339ring_a] : ( minus_5354101470050066234ring_a @ X2 @ A )
          @ T ) ) ) ).

% translation_subtract_diff
thf(fact_983_translation__subtract__diff,axiom,
    ! [A: finite_mod_ring_a,S: set_Fi2982333969990053029ring_a,T: set_Fi2982333969990053029ring_a] :
      ( ( image_3815122860822722885ring_a
        @ ^ [X2: finite_mod_ring_a] : ( minus_3609261664126569004ring_a @ X2 @ A )
        @ ( minus_823531971556419340ring_a @ S @ T ) )
      = ( minus_823531971556419340ring_a
        @ ( image_3815122860822722885ring_a
          @ ^ [X2: finite_mod_ring_a] : ( minus_3609261664126569004ring_a @ X2 @ A )
          @ S )
        @ ( image_3815122860822722885ring_a
          @ ^ [X2: finite_mod_ring_a] : ( minus_3609261664126569004ring_a @ X2 @ A )
          @ T ) ) ) ).

% translation_subtract_diff
thf(fact_984_translation__subtract__diff,axiom,
    ! [A: real,S: set_real,T: set_real] :
      ( ( image_real_real
        @ ^ [X2: real] : ( minus_minus_real @ X2 @ A )
        @ ( minus_minus_set_real @ S @ T ) )
      = ( minus_minus_set_real
        @ ( image_real_real
          @ ^ [X2: real] : ( minus_minus_real @ X2 @ A )
          @ S )
        @ ( image_real_real
          @ ^ [X2: real] : ( minus_minus_real @ X2 @ A )
          @ T ) ) ) ).

% translation_subtract_diff
thf(fact_985_translation__subtract__diff,axiom,
    ! [A: int,S: set_int,T: set_int] :
      ( ( image_int_int
        @ ^ [X2: int] : ( minus_minus_int @ X2 @ A )
        @ ( minus_minus_set_int @ S @ T ) )
      = ( minus_minus_set_int
        @ ( image_int_int
          @ ^ [X2: int] : ( minus_minus_int @ X2 @ A )
          @ S )
        @ ( image_int_int
          @ ^ [X2: int] : ( minus_minus_int @ X2 @ A )
          @ T ) ) ) ).

% translation_subtract_diff
thf(fact_986_minus__poly_Orep__eq,axiom,
    ! [X: poly_nat,Xa: poly_nat] :
      ( ( coeff_nat @ ( minus_minus_poly_nat @ X @ Xa ) )
      = ( ^ [N4: nat] : ( minus_minus_nat @ ( coeff_nat @ X @ N4 ) @ ( coeff_nat @ Xa @ N4 ) ) ) ) ).

% minus_poly.rep_eq
thf(fact_987_minus__poly_Orep__eq,axiom,
    ! [X: poly_p2573953413498894561ring_a,Xa: poly_p2573953413498894561ring_a] :
      ( ( coeff_7919988552178873973ring_a @ ( minus_8398332843867831112ring_a @ X @ Xa ) )
      = ( ^ [N4: nat] : ( minus_5354101470050066234ring_a @ ( coeff_7919988552178873973ring_a @ X @ N4 ) @ ( coeff_7919988552178873973ring_a @ Xa @ N4 ) ) ) ) ).

% minus_poly.rep_eq
thf(fact_988_minus__poly_Orep__eq,axiom,
    ! [X: poly_real,Xa: poly_real] :
      ( ( coeff_real @ ( minus_7737989384826904205y_real @ X @ Xa ) )
      = ( ^ [N4: nat] : ( minus_minus_real @ ( coeff_real @ X @ N4 ) @ ( coeff_real @ Xa @ N4 ) ) ) ) ).

% minus_poly.rep_eq
thf(fact_989_minus__poly_Orep__eq,axiom,
    ! [X: poly_int,Xa: poly_int] :
      ( ( coeff_int @ ( minus_minus_poly_int @ X @ Xa ) )
      = ( ^ [N4: nat] : ( minus_minus_int @ ( coeff_int @ X @ N4 ) @ ( coeff_int @ Xa @ N4 ) ) ) ) ).

% minus_poly.rep_eq
thf(fact_990_minus__poly_Orep__eq,axiom,
    ! [X: poly_F3299452240248304339ring_a,Xa: poly_F3299452240248304339ring_a] :
      ( ( coeff_1607515655354303335ring_a @ ( minus_5354101470050066234ring_a @ X @ Xa ) )
      = ( ^ [N4: nat] : ( minus_3609261664126569004ring_a @ ( coeff_1607515655354303335ring_a @ X @ N4 ) @ ( coeff_1607515655354303335ring_a @ Xa @ N4 ) ) ) ) ).

% minus_poly.rep_eq
thf(fact_991_diff__left__imp__eq,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a] :
      ( ( ( minus_5354101470050066234ring_a @ A @ B )
        = ( minus_5354101470050066234ring_a @ A @ C ) )
     => ( B = C ) ) ).

% diff_left_imp_eq
thf(fact_992_diff__left__imp__eq,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a,C: finite_mod_ring_a] :
      ( ( ( minus_3609261664126569004ring_a @ A @ B )
        = ( minus_3609261664126569004ring_a @ A @ C ) )
     => ( B = C ) ) ).

% diff_left_imp_eq
thf(fact_993_diff__left__imp__eq,axiom,
    ! [A: real,B: real,C: real] :
      ( ( ( minus_minus_real @ A @ B )
        = ( minus_minus_real @ A @ C ) )
     => ( B = C ) ) ).

% diff_left_imp_eq
thf(fact_994_diff__left__imp__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ( minus_minus_int @ A @ B )
        = ( minus_minus_int @ A @ C ) )
     => ( B = C ) ) ).

% diff_left_imp_eq
thf(fact_995_diff__commute,axiom,
    ! [I: nat,J2: nat,K: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ I @ J2 ) @ K )
      = ( minus_minus_nat @ ( minus_minus_nat @ I @ K ) @ J2 ) ) ).

% diff_commute
thf(fact_996_cancel__ab__semigroup__add__class_Odiff__right__commute,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ A @ C ) @ B )
      = ( minus_minus_nat @ ( minus_minus_nat @ A @ B ) @ C ) ) ).

% cancel_ab_semigroup_add_class.diff_right_commute
thf(fact_997_cancel__ab__semigroup__add__class_Odiff__right__commute,axiom,
    ! [A: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a] :
      ( ( minus_5354101470050066234ring_a @ ( minus_5354101470050066234ring_a @ A @ C ) @ B )
      = ( minus_5354101470050066234ring_a @ ( minus_5354101470050066234ring_a @ A @ B ) @ C ) ) ).

% cancel_ab_semigroup_add_class.diff_right_commute
thf(fact_998_cancel__ab__semigroup__add__class_Odiff__right__commute,axiom,
    ! [A: finite_mod_ring_a,C: finite_mod_ring_a,B: finite_mod_ring_a] :
      ( ( minus_3609261664126569004ring_a @ ( minus_3609261664126569004ring_a @ A @ C ) @ B )
      = ( minus_3609261664126569004ring_a @ ( minus_3609261664126569004ring_a @ A @ B ) @ C ) ) ).

% cancel_ab_semigroup_add_class.diff_right_commute
thf(fact_999_cancel__ab__semigroup__add__class_Odiff__right__commute,axiom,
    ! [A: real,C: real,B: real] :
      ( ( minus_minus_real @ ( minus_minus_real @ A @ C ) @ B )
      = ( minus_minus_real @ ( minus_minus_real @ A @ B ) @ C ) ) ).

% cancel_ab_semigroup_add_class.diff_right_commute
thf(fact_1000_cancel__ab__semigroup__add__class_Odiff__right__commute,axiom,
    ! [A: int,C: int,B: int] :
      ( ( minus_minus_int @ ( minus_minus_int @ A @ C ) @ B )
      = ( minus_minus_int @ ( minus_minus_int @ A @ B ) @ C ) ) ).

% cancel_ab_semigroup_add_class.diff_right_commute
thf(fact_1001_diff__eq__diff__eq,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a,D: poly_F3299452240248304339ring_a] :
      ( ( ( minus_5354101470050066234ring_a @ A @ B )
        = ( minus_5354101470050066234ring_a @ C @ D ) )
     => ( ( A = B )
        = ( C = D ) ) ) ).

% diff_eq_diff_eq
thf(fact_1002_diff__eq__diff__eq,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a,C: finite_mod_ring_a,D: finite_mod_ring_a] :
      ( ( ( minus_3609261664126569004ring_a @ A @ B )
        = ( minus_3609261664126569004ring_a @ C @ D ) )
     => ( ( A = B )
        = ( C = D ) ) ) ).

% diff_eq_diff_eq
thf(fact_1003_diff__eq__diff__eq,axiom,
    ! [A: real,B: real,C: real,D: real] :
      ( ( ( minus_minus_real @ A @ B )
        = ( minus_minus_real @ C @ D ) )
     => ( ( A = B )
        = ( C = D ) ) ) ).

% diff_eq_diff_eq
thf(fact_1004_diff__eq__diff__eq,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ( minus_minus_int @ A @ B )
        = ( minus_minus_int @ C @ D ) )
     => ( ( A = B )
        = ( C = D ) ) ) ).

% diff_eq_diff_eq
thf(fact_1005_translation__subtract__Compl,axiom,
    ! [A: poly_F3299452240248304339ring_a,T: set_po5729067318325380787ring_a] :
      ( ( image_1595381290764371653ring_a
        @ ^ [X2: poly_F3299452240248304339ring_a] : ( minus_5354101470050066234ring_a @ X2 @ A )
        @ ( uminus5288747270251669418ring_a @ T ) )
      = ( uminus5288747270251669418ring_a
        @ ( image_1595381290764371653ring_a
          @ ^ [X2: poly_F3299452240248304339ring_a] : ( minus_5354101470050066234ring_a @ X2 @ A )
          @ T ) ) ) ).

% translation_subtract_Compl
thf(fact_1006_translation__subtract__Compl,axiom,
    ! [A: finite_mod_ring_a,T: set_Fi2982333969990053029ring_a] :
      ( ( image_3815122860822722885ring_a
        @ ^ [X2: finite_mod_ring_a] : ( minus_3609261664126569004ring_a @ X2 @ A )
        @ ( uminus8760797485591484316ring_a @ T ) )
      = ( uminus8760797485591484316ring_a
        @ ( image_3815122860822722885ring_a
          @ ^ [X2: finite_mod_ring_a] : ( minus_3609261664126569004ring_a @ X2 @ A )
          @ T ) ) ) ).

% translation_subtract_Compl
thf(fact_1007_translation__subtract__Compl,axiom,
    ! [A: real,T: set_real] :
      ( ( image_real_real
        @ ^ [X2: real] : ( minus_minus_real @ X2 @ A )
        @ ( uminus612125837232591019t_real @ T ) )
      = ( uminus612125837232591019t_real
        @ ( image_real_real
          @ ^ [X2: real] : ( minus_minus_real @ X2 @ A )
          @ T ) ) ) ).

% translation_subtract_Compl
thf(fact_1008_translation__subtract__Compl,axiom,
    ! [A: int,T: set_int] :
      ( ( image_int_int
        @ ^ [X2: int] : ( minus_minus_int @ X2 @ A )
        @ ( uminus1532241313380277803et_int @ T ) )
      = ( uminus1532241313380277803et_int
        @ ( image_int_int
          @ ^ [X2: int] : ( minus_minus_int @ X2 @ A )
          @ T ) ) ) ).

% translation_subtract_Compl
thf(fact_1009_sum__subtractf,axiom,
    ! [F: nat > finite_mod_ring_a,G: nat > finite_mod_ring_a,A2: set_nat] :
      ( ( groups3558780024651037881ring_a
        @ ^ [X2: nat] : ( minus_3609261664126569004ring_a @ ( F @ X2 ) @ ( G @ X2 ) )
        @ A2 )
      = ( minus_3609261664126569004ring_a @ ( groups3558780024651037881ring_a @ F @ A2 ) @ ( groups3558780024651037881ring_a @ G @ A2 ) ) ) ).

% sum_subtractf
thf(fact_1010_inj__on__diff__right,axiom,
    ! [A: poly_F3299452240248304339ring_a,A2: set_po5729067318325380787ring_a] :
      ( inj_on3868492774389771825ring_a
      @ ^ [B2: poly_F3299452240248304339ring_a] : ( minus_5354101470050066234ring_a @ B2 @ A )
      @ A2 ) ).

% inj_on_diff_right
thf(fact_1011_inj__on__diff__right,axiom,
    ! [A: finite_mod_ring_a,A2: set_Fi2982333969990053029ring_a] :
      ( inj_on1744613366418436273ring_a
      @ ^ [B2: finite_mod_ring_a] : ( minus_3609261664126569004ring_a @ B2 @ A )
      @ A2 ) ).

% inj_on_diff_right
thf(fact_1012_inj__on__diff__right,axiom,
    ! [A: real,A2: set_real] :
      ( inj_on_real_real
      @ ^ [B2: real] : ( minus_minus_real @ B2 @ A )
      @ A2 ) ).

% inj_on_diff_right
thf(fact_1013_inj__on__diff__right,axiom,
    ! [A: int,A2: set_int] :
      ( inj_on_int_int
      @ ^ [B2: int] : ( minus_minus_int @ B2 @ A )
      @ A2 ) ).

% inj_on_diff_right
thf(fact_1014_diff__strict__mono,axiom,
    ! [A: real,B: real,D: real,C: real] :
      ( ( ord_less_real @ A @ B )
     => ( ( ord_less_real @ D @ C )
       => ( ord_less_real @ ( minus_minus_real @ A @ C ) @ ( minus_minus_real @ B @ D ) ) ) ) ).

% diff_strict_mono
thf(fact_1015_diff__strict__mono,axiom,
    ! [A: int,B: int,D: int,C: int] :
      ( ( ord_less_int @ A @ B )
     => ( ( ord_less_int @ D @ C )
       => ( ord_less_int @ ( minus_minus_int @ A @ C ) @ ( minus_minus_int @ B @ D ) ) ) ) ).

% diff_strict_mono
thf(fact_1016_diff__eq__diff__less,axiom,
    ! [A: real,B: real,C: real,D: real] :
      ( ( ( minus_minus_real @ A @ B )
        = ( minus_minus_real @ C @ D ) )
     => ( ( ord_less_real @ A @ B )
        = ( ord_less_real @ C @ D ) ) ) ).

% diff_eq_diff_less
thf(fact_1017_diff__eq__diff__less,axiom,
    ! [A: int,B: int,C: int,D: int] :
      ( ( ( minus_minus_int @ A @ B )
        = ( minus_minus_int @ C @ D ) )
     => ( ( ord_less_int @ A @ B )
        = ( ord_less_int @ C @ D ) ) ) ).

% diff_eq_diff_less
thf(fact_1018_diff__strict__left__mono,axiom,
    ! [B: real,A: real,C: real] :
      ( ( ord_less_real @ B @ A )
     => ( ord_less_real @ ( minus_minus_real @ C @ A ) @ ( minus_minus_real @ C @ B ) ) ) ).

% diff_strict_left_mono
thf(fact_1019_diff__strict__left__mono,axiom,
    ! [B: int,A: int,C: int] :
      ( ( ord_less_int @ B @ A )
     => ( ord_less_int @ ( minus_minus_int @ C @ A ) @ ( minus_minus_int @ C @ B ) ) ) ).

% diff_strict_left_mono
thf(fact_1020_diff__strict__right__mono,axiom,
    ! [A: real,B: real,C: real] :
      ( ( ord_less_real @ A @ B )
     => ( ord_less_real @ ( minus_minus_real @ A @ C ) @ ( minus_minus_real @ B @ C ) ) ) ).

% diff_strict_right_mono
thf(fact_1021_diff__strict__right__mono,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_int @ A @ B )
     => ( ord_less_int @ ( minus_minus_int @ A @ C ) @ ( minus_minus_int @ B @ C ) ) ) ).

% diff_strict_right_mono
thf(fact_1022_right__diff__distrib_H,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a,C: finite_mod_ring_a] :
      ( ( times_5121417576591743744ring_a @ A @ ( minus_3609261664126569004ring_a @ B @ C ) )
      = ( minus_3609261664126569004ring_a @ ( times_5121417576591743744ring_a @ A @ B ) @ ( times_5121417576591743744ring_a @ A @ C ) ) ) ).

% right_diff_distrib'
thf(fact_1023_right__diff__distrib_H,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ A @ ( minus_5354101470050066234ring_a @ B @ C ) )
      = ( minus_5354101470050066234ring_a @ ( times_3242606764180207630ring_a @ A @ B ) @ ( times_3242606764180207630ring_a @ A @ C ) ) ) ).

% right_diff_distrib'
thf(fact_1024_right__diff__distrib_H,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a,C: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ A @ ( minus_3375643675566563378r_qr_a @ B @ C ) )
      = ( minus_3375643675566563378r_qr_a @ ( times_2095635435063429214r_qr_a @ A @ B ) @ ( times_2095635435063429214r_qr_a @ A @ C ) ) ) ).

% right_diff_distrib'
thf(fact_1025_right__diff__distrib_H,axiom,
    ! [A: real,B: real,C: real] :
      ( ( times_times_real @ A @ ( minus_minus_real @ B @ C ) )
      = ( minus_minus_real @ ( times_times_real @ A @ B ) @ ( times_times_real @ A @ C ) ) ) ).

% right_diff_distrib'
thf(fact_1026_right__diff__distrib_H,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( times_times_nat @ A @ ( minus_minus_nat @ B @ C ) )
      = ( minus_minus_nat @ ( times_times_nat @ A @ B ) @ ( times_times_nat @ A @ C ) ) ) ).

% right_diff_distrib'
thf(fact_1027_right__diff__distrib_H,axiom,
    ! [A: int,B: int,C: int] :
      ( ( times_times_int @ A @ ( minus_minus_int @ B @ C ) )
      = ( minus_minus_int @ ( times_times_int @ A @ B ) @ ( times_times_int @ A @ C ) ) ) ).

% right_diff_distrib'
thf(fact_1028_left__diff__distrib_H,axiom,
    ! [B: finite_mod_ring_a,C: finite_mod_ring_a,A: finite_mod_ring_a] :
      ( ( times_5121417576591743744ring_a @ ( minus_3609261664126569004ring_a @ B @ C ) @ A )
      = ( minus_3609261664126569004ring_a @ ( times_5121417576591743744ring_a @ B @ A ) @ ( times_5121417576591743744ring_a @ C @ A ) ) ) ).

% left_diff_distrib'
thf(fact_1029_left__diff__distrib_H,axiom,
    ! [B: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a,A: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ ( minus_5354101470050066234ring_a @ B @ C ) @ A )
      = ( minus_5354101470050066234ring_a @ ( times_3242606764180207630ring_a @ B @ A ) @ ( times_3242606764180207630ring_a @ C @ A ) ) ) ).

% left_diff_distrib'
thf(fact_1030_left__diff__distrib_H,axiom,
    ! [B: kyber_qr_a,C: kyber_qr_a,A: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ ( minus_3375643675566563378r_qr_a @ B @ C ) @ A )
      = ( minus_3375643675566563378r_qr_a @ ( times_2095635435063429214r_qr_a @ B @ A ) @ ( times_2095635435063429214r_qr_a @ C @ A ) ) ) ).

% left_diff_distrib'
thf(fact_1031_left__diff__distrib_H,axiom,
    ! [B: real,C: real,A: real] :
      ( ( times_times_real @ ( minus_minus_real @ B @ C ) @ A )
      = ( minus_minus_real @ ( times_times_real @ B @ A ) @ ( times_times_real @ C @ A ) ) ) ).

% left_diff_distrib'
thf(fact_1032_left__diff__distrib_H,axiom,
    ! [B: nat,C: nat,A: nat] :
      ( ( times_times_nat @ ( minus_minus_nat @ B @ C ) @ A )
      = ( minus_minus_nat @ ( times_times_nat @ B @ A ) @ ( times_times_nat @ C @ A ) ) ) ).

% left_diff_distrib'
thf(fact_1033_left__diff__distrib_H,axiom,
    ! [B: int,C: int,A: int] :
      ( ( times_times_int @ ( minus_minus_int @ B @ C ) @ A )
      = ( minus_minus_int @ ( times_times_int @ B @ A ) @ ( times_times_int @ C @ A ) ) ) ).

% left_diff_distrib'
thf(fact_1034_right__diff__distrib,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a,C: finite_mod_ring_a] :
      ( ( times_5121417576591743744ring_a @ A @ ( minus_3609261664126569004ring_a @ B @ C ) )
      = ( minus_3609261664126569004ring_a @ ( times_5121417576591743744ring_a @ A @ B ) @ ( times_5121417576591743744ring_a @ A @ C ) ) ) ).

% right_diff_distrib
thf(fact_1035_right__diff__distrib,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ A @ ( minus_5354101470050066234ring_a @ B @ C ) )
      = ( minus_5354101470050066234ring_a @ ( times_3242606764180207630ring_a @ A @ B ) @ ( times_3242606764180207630ring_a @ A @ C ) ) ) ).

% right_diff_distrib
thf(fact_1036_right__diff__distrib,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a,C: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ A @ ( minus_3375643675566563378r_qr_a @ B @ C ) )
      = ( minus_3375643675566563378r_qr_a @ ( times_2095635435063429214r_qr_a @ A @ B ) @ ( times_2095635435063429214r_qr_a @ A @ C ) ) ) ).

% right_diff_distrib
thf(fact_1037_right__diff__distrib,axiom,
    ! [A: real,B: real,C: real] :
      ( ( times_times_real @ A @ ( minus_minus_real @ B @ C ) )
      = ( minus_minus_real @ ( times_times_real @ A @ B ) @ ( times_times_real @ A @ C ) ) ) ).

% right_diff_distrib
thf(fact_1038_right__diff__distrib,axiom,
    ! [A: int,B: int,C: int] :
      ( ( times_times_int @ A @ ( minus_minus_int @ B @ C ) )
      = ( minus_minus_int @ ( times_times_int @ A @ B ) @ ( times_times_int @ A @ C ) ) ) ).

% right_diff_distrib
thf(fact_1039_left__diff__distrib,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a,C: finite_mod_ring_a] :
      ( ( times_5121417576591743744ring_a @ ( minus_3609261664126569004ring_a @ A @ B ) @ C )
      = ( minus_3609261664126569004ring_a @ ( times_5121417576591743744ring_a @ A @ C ) @ ( times_5121417576591743744ring_a @ B @ C ) ) ) ).

% left_diff_distrib
thf(fact_1040_left__diff__distrib,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a] :
      ( ( times_3242606764180207630ring_a @ ( minus_5354101470050066234ring_a @ A @ B ) @ C )
      = ( minus_5354101470050066234ring_a @ ( times_3242606764180207630ring_a @ A @ C ) @ ( times_3242606764180207630ring_a @ B @ C ) ) ) ).

% left_diff_distrib
thf(fact_1041_left__diff__distrib,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a,C: kyber_qr_a] :
      ( ( times_2095635435063429214r_qr_a @ ( minus_3375643675566563378r_qr_a @ A @ B ) @ C )
      = ( minus_3375643675566563378r_qr_a @ ( times_2095635435063429214r_qr_a @ A @ C ) @ ( times_2095635435063429214r_qr_a @ B @ C ) ) ) ).

% left_diff_distrib
thf(fact_1042_left__diff__distrib,axiom,
    ! [A: real,B: real,C: real] :
      ( ( times_times_real @ ( minus_minus_real @ A @ B ) @ C )
      = ( minus_minus_real @ ( times_times_real @ A @ C ) @ ( times_times_real @ B @ C ) ) ) ).

% left_diff_distrib
thf(fact_1043_left__diff__distrib,axiom,
    ! [A: int,B: int,C: int] :
      ( ( times_times_int @ ( minus_minus_int @ A @ B ) @ C )
      = ( minus_minus_int @ ( times_times_int @ A @ C ) @ ( times_times_int @ B @ C ) ) ) ).

% left_diff_distrib
thf(fact_1044_diff__diff__eq,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a,C: kyber_qr_a] :
      ( ( minus_3375643675566563378r_qr_a @ ( minus_3375643675566563378r_qr_a @ A @ B ) @ C )
      = ( minus_3375643675566563378r_qr_a @ A @ ( plus_plus_Kyber_qr_a @ B @ C ) ) ) ).

% diff_diff_eq
thf(fact_1045_diff__diff__eq,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ A @ B ) @ C )
      = ( minus_minus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).

% diff_diff_eq
thf(fact_1046_diff__diff__eq,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a] :
      ( ( minus_5354101470050066234ring_a @ ( minus_5354101470050066234ring_a @ A @ B ) @ C )
      = ( minus_5354101470050066234ring_a @ A @ ( plus_p7290290253215468682ring_a @ B @ C ) ) ) ).

% diff_diff_eq
thf(fact_1047_diff__diff__eq,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a,C: finite_mod_ring_a] :
      ( ( minus_3609261664126569004ring_a @ ( minus_3609261664126569004ring_a @ A @ B ) @ C )
      = ( minus_3609261664126569004ring_a @ A @ ( plus_p6165643967897163644ring_a @ B @ C ) ) ) ).

% diff_diff_eq
thf(fact_1048_diff__diff__eq,axiom,
    ! [A: real,B: real,C: real] :
      ( ( minus_minus_real @ ( minus_minus_real @ A @ B ) @ C )
      = ( minus_minus_real @ A @ ( plus_plus_real @ B @ C ) ) ) ).

% diff_diff_eq
thf(fact_1049_diff__diff__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( minus_minus_int @ ( minus_minus_int @ A @ B ) @ C )
      = ( minus_minus_int @ A @ ( plus_plus_int @ B @ C ) ) ) ).

% diff_diff_eq
thf(fact_1050_add__implies__diff,axiom,
    ! [C: kyber_qr_a,B: kyber_qr_a,A: kyber_qr_a] :
      ( ( ( plus_plus_Kyber_qr_a @ C @ B )
        = A )
     => ( C
        = ( minus_3375643675566563378r_qr_a @ A @ B ) ) ) ).

% add_implies_diff
thf(fact_1051_add__implies__diff,axiom,
    ! [C: nat,B: nat,A: nat] :
      ( ( ( plus_plus_nat @ C @ B )
        = A )
     => ( C
        = ( minus_minus_nat @ A @ B ) ) ) ).

% add_implies_diff
thf(fact_1052_add__implies__diff,axiom,
    ! [C: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a,A: poly_F3299452240248304339ring_a] :
      ( ( ( plus_p7290290253215468682ring_a @ C @ B )
        = A )
     => ( C
        = ( minus_5354101470050066234ring_a @ A @ B ) ) ) ).

% add_implies_diff
thf(fact_1053_add__implies__diff,axiom,
    ! [C: finite_mod_ring_a,B: finite_mod_ring_a,A: finite_mod_ring_a] :
      ( ( ( plus_p6165643967897163644ring_a @ C @ B )
        = A )
     => ( C
        = ( minus_3609261664126569004ring_a @ A @ B ) ) ) ).

% add_implies_diff
thf(fact_1054_add__implies__diff,axiom,
    ! [C: real,B: real,A: real] :
      ( ( ( plus_plus_real @ C @ B )
        = A )
     => ( C
        = ( minus_minus_real @ A @ B ) ) ) ).

% add_implies_diff
thf(fact_1055_add__implies__diff,axiom,
    ! [C: int,B: int,A: int] :
      ( ( ( plus_plus_int @ C @ B )
        = A )
     => ( C
        = ( minus_minus_int @ A @ B ) ) ) ).

% add_implies_diff
thf(fact_1056_diff__add__eq__diff__diff__swap,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a,C: kyber_qr_a] :
      ( ( minus_3375643675566563378r_qr_a @ A @ ( plus_plus_Kyber_qr_a @ B @ C ) )
      = ( minus_3375643675566563378r_qr_a @ ( minus_3375643675566563378r_qr_a @ A @ C ) @ B ) ) ).

% diff_add_eq_diff_diff_swap
thf(fact_1057_diff__add__eq__diff__diff__swap,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a] :
      ( ( minus_5354101470050066234ring_a @ A @ ( plus_p7290290253215468682ring_a @ B @ C ) )
      = ( minus_5354101470050066234ring_a @ ( minus_5354101470050066234ring_a @ A @ C ) @ B ) ) ).

% diff_add_eq_diff_diff_swap
thf(fact_1058_diff__add__eq__diff__diff__swap,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a,C: finite_mod_ring_a] :
      ( ( minus_3609261664126569004ring_a @ A @ ( plus_p6165643967897163644ring_a @ B @ C ) )
      = ( minus_3609261664126569004ring_a @ ( minus_3609261664126569004ring_a @ A @ C ) @ B ) ) ).

% diff_add_eq_diff_diff_swap
thf(fact_1059_diff__add__eq__diff__diff__swap,axiom,
    ! [A: real,B: real,C: real] :
      ( ( minus_minus_real @ A @ ( plus_plus_real @ B @ C ) )
      = ( minus_minus_real @ ( minus_minus_real @ A @ C ) @ B ) ) ).

% diff_add_eq_diff_diff_swap
thf(fact_1060_diff__add__eq__diff__diff__swap,axiom,
    ! [A: int,B: int,C: int] :
      ( ( minus_minus_int @ A @ ( plus_plus_int @ B @ C ) )
      = ( minus_minus_int @ ( minus_minus_int @ A @ C ) @ B ) ) ).

% diff_add_eq_diff_diff_swap
thf(fact_1061_diff__add__eq,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a,C: kyber_qr_a] :
      ( ( plus_plus_Kyber_qr_a @ ( minus_3375643675566563378r_qr_a @ A @ B ) @ C )
      = ( minus_3375643675566563378r_qr_a @ ( plus_plus_Kyber_qr_a @ A @ C ) @ B ) ) ).

% diff_add_eq
thf(fact_1062_diff__add__eq,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a] :
      ( ( plus_p7290290253215468682ring_a @ ( minus_5354101470050066234ring_a @ A @ B ) @ C )
      = ( minus_5354101470050066234ring_a @ ( plus_p7290290253215468682ring_a @ A @ C ) @ B ) ) ).

% diff_add_eq
thf(fact_1063_diff__add__eq,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a,C: finite_mod_ring_a] :
      ( ( plus_p6165643967897163644ring_a @ ( minus_3609261664126569004ring_a @ A @ B ) @ C )
      = ( minus_3609261664126569004ring_a @ ( plus_p6165643967897163644ring_a @ A @ C ) @ B ) ) ).

% diff_add_eq
thf(fact_1064_diff__add__eq,axiom,
    ! [A: real,B: real,C: real] :
      ( ( plus_plus_real @ ( minus_minus_real @ A @ B ) @ C )
      = ( minus_minus_real @ ( plus_plus_real @ A @ C ) @ B ) ) ).

% diff_add_eq
thf(fact_1065_diff__add__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( plus_plus_int @ ( minus_minus_int @ A @ B ) @ C )
      = ( minus_minus_int @ ( plus_plus_int @ A @ C ) @ B ) ) ).

% diff_add_eq
thf(fact_1066_diff__diff__eq2,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a,C: kyber_qr_a] :
      ( ( minus_3375643675566563378r_qr_a @ A @ ( minus_3375643675566563378r_qr_a @ B @ C ) )
      = ( minus_3375643675566563378r_qr_a @ ( plus_plus_Kyber_qr_a @ A @ C ) @ B ) ) ).

% diff_diff_eq2
thf(fact_1067_diff__diff__eq2,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a] :
      ( ( minus_5354101470050066234ring_a @ A @ ( minus_5354101470050066234ring_a @ B @ C ) )
      = ( minus_5354101470050066234ring_a @ ( plus_p7290290253215468682ring_a @ A @ C ) @ B ) ) ).

% diff_diff_eq2
thf(fact_1068_diff__diff__eq2,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a,C: finite_mod_ring_a] :
      ( ( minus_3609261664126569004ring_a @ A @ ( minus_3609261664126569004ring_a @ B @ C ) )
      = ( minus_3609261664126569004ring_a @ ( plus_p6165643967897163644ring_a @ A @ C ) @ B ) ) ).

% diff_diff_eq2
thf(fact_1069_diff__diff__eq2,axiom,
    ! [A: real,B: real,C: real] :
      ( ( minus_minus_real @ A @ ( minus_minus_real @ B @ C ) )
      = ( minus_minus_real @ ( plus_plus_real @ A @ C ) @ B ) ) ).

% diff_diff_eq2
thf(fact_1070_diff__diff__eq2,axiom,
    ! [A: int,B: int,C: int] :
      ( ( minus_minus_int @ A @ ( minus_minus_int @ B @ C ) )
      = ( minus_minus_int @ ( plus_plus_int @ A @ C ) @ B ) ) ).

% diff_diff_eq2
thf(fact_1071_add__diff__eq,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a,C: kyber_qr_a] :
      ( ( plus_plus_Kyber_qr_a @ A @ ( minus_3375643675566563378r_qr_a @ B @ C ) )
      = ( minus_3375643675566563378r_qr_a @ ( plus_plus_Kyber_qr_a @ A @ B ) @ C ) ) ).

% add_diff_eq
thf(fact_1072_add__diff__eq,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a] :
      ( ( plus_p7290290253215468682ring_a @ A @ ( minus_5354101470050066234ring_a @ B @ C ) )
      = ( minus_5354101470050066234ring_a @ ( plus_p7290290253215468682ring_a @ A @ B ) @ C ) ) ).

% add_diff_eq
thf(fact_1073_add__diff__eq,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a,C: finite_mod_ring_a] :
      ( ( plus_p6165643967897163644ring_a @ A @ ( minus_3609261664126569004ring_a @ B @ C ) )
      = ( minus_3609261664126569004ring_a @ ( plus_p6165643967897163644ring_a @ A @ B ) @ C ) ) ).

% add_diff_eq
thf(fact_1074_add__diff__eq,axiom,
    ! [A: real,B: real,C: real] :
      ( ( plus_plus_real @ A @ ( minus_minus_real @ B @ C ) )
      = ( minus_minus_real @ ( plus_plus_real @ A @ B ) @ C ) ) ).

% add_diff_eq
thf(fact_1075_add__diff__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( plus_plus_int @ A @ ( minus_minus_int @ B @ C ) )
      = ( minus_minus_int @ ( plus_plus_int @ A @ B ) @ C ) ) ).

% add_diff_eq
thf(fact_1076_eq__diff__eq,axiom,
    ! [A: kyber_qr_a,C: kyber_qr_a,B: kyber_qr_a] :
      ( ( A
        = ( minus_3375643675566563378r_qr_a @ C @ B ) )
      = ( ( plus_plus_Kyber_qr_a @ A @ B )
        = C ) ) ).

% eq_diff_eq
thf(fact_1077_eq__diff__eq,axiom,
    ! [A: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a] :
      ( ( A
        = ( minus_5354101470050066234ring_a @ C @ B ) )
      = ( ( plus_p7290290253215468682ring_a @ A @ B )
        = C ) ) ).

% eq_diff_eq
thf(fact_1078_eq__diff__eq,axiom,
    ! [A: finite_mod_ring_a,C: finite_mod_ring_a,B: finite_mod_ring_a] :
      ( ( A
        = ( minus_3609261664126569004ring_a @ C @ B ) )
      = ( ( plus_p6165643967897163644ring_a @ A @ B )
        = C ) ) ).

% eq_diff_eq
thf(fact_1079_eq__diff__eq,axiom,
    ! [A: real,C: real,B: real] :
      ( ( A
        = ( minus_minus_real @ C @ B ) )
      = ( ( plus_plus_real @ A @ B )
        = C ) ) ).

% eq_diff_eq
thf(fact_1080_eq__diff__eq,axiom,
    ! [A: int,C: int,B: int] :
      ( ( A
        = ( minus_minus_int @ C @ B ) )
      = ( ( plus_plus_int @ A @ B )
        = C ) ) ).

% eq_diff_eq
thf(fact_1081_diff__eq__eq,axiom,
    ! [A: kyber_qr_a,B: kyber_qr_a,C: kyber_qr_a] :
      ( ( ( minus_3375643675566563378r_qr_a @ A @ B )
        = C )
      = ( A
        = ( plus_plus_Kyber_qr_a @ C @ B ) ) ) ).

% diff_eq_eq
thf(fact_1082_diff__eq__eq,axiom,
    ! [A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a,C: poly_F3299452240248304339ring_a] :
      ( ( ( minus_5354101470050066234ring_a @ A @ B )
        = C )
      = ( A
        = ( plus_p7290290253215468682ring_a @ C @ B ) ) ) ).

% diff_eq_eq
thf(fact_1083_diff__eq__eq,axiom,
    ! [A: finite_mod_ring_a,B: finite_mod_ring_a,C: finite_mod_ring_a] :
      ( ( ( minus_3609261664126569004ring_a @ A @ B )
        = C )
      = ( A
        = ( plus_p6165643967897163644ring_a @ C @ B ) ) ) ).

% diff_eq_eq
thf(fact_1084_diff__eq__eq,axiom,
    ! [A: real,B: real,C: real] :
      ( ( ( minus_minus_real @ A @ B )
        = C )
      = ( A
        = ( plus_plus_real @ C @ B ) ) ) ).

% diff_eq_eq
thf(fact_1085_diff__eq__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ( minus_minus_int @ A @ B )
        = C )
      = ( A
        = ( plus_plus_int @ C @ B ) ) ) ).

% diff_eq_eq
thf(fact_1086_group__cancel_Osub1,axiom,
    ! [A2: kyber_qr_a,K: kyber_qr_a,A: kyber_qr_a,B: kyber_qr_a] :
      ( ( A2
        = ( plus_plus_Kyber_qr_a @ K @ A ) )
     => ( ( minus_3375643675566563378r_qr_a @ A2 @ B )
        = ( plus_plus_Kyber_qr_a @ K @ ( minus_3375643675566563378r_qr_a @ A @ B ) ) ) ) ).

% group_cancel.sub1
thf(fact_1087_group__cancel_Osub1,axiom,
    ! [A2: poly_F3299452240248304339ring_a,K: poly_F3299452240248304339ring_a,A: poly_F3299452240248304339ring_a,B: poly_F3299452240248304339ring_a] :
      ( ( A2
        = ( plus_p7290290253215468682ring_a @ K @ A ) )
     => ( ( minus_5354101470050066234ring_a @ A2 @ B )
        = ( plus_p7290290253215468682ring_a @ K @ ( minus_5354101470050066234ring_a @ A @ B ) ) ) ) ).

% group_cancel.sub1
thf(fact_1088_group__cancel_Osub1,axiom,
    ! [A2: finite_mod_ring_a,K: finite_mod_ring_a,A: finite_mod_ring_a,B: finite_mod_ring_a] :
      ( ( A2
        = ( plus_p6165643967897163644ring_a @ K @ A ) )
     => ( ( minus_3609261664126569004ring_a @ A2 @ B )
        = ( plus_p6165643967897163644ring_a @ K @ ( minus_3609261664126569004ring_a @ A @ B ) ) ) ) ).

% group_cancel.sub1
thf(fact_1089_group__cancel_Osub1,axiom,
    ! [A2: real,K: real,A: real,B: real] :
      ( ( A2
        = ( plus_plus_real @ K @ A ) )
     => ( ( minus_minus_real @ A2 @ B )
        = ( plus_plus_real @ K @ ( minus_minus_real @ A @ B ) ) ) ) ).

% group_cancel.sub1
thf(fact_1090_group__cancel_Osub1,axiom,
    ! [A2: int,K: int,A: int,B: int] :
      ( ( A2
        = ( plus_plus_int @ K @ A ) )
     => ( ( minus_minus_int @ A2 @ B )
        = ( plus_plus_int @ K @ ( minus_minus_int @ A @ B ) ) ) ) ).

% group_cancel.sub1
thf(fact_1091_minus__diff__commute,axiom,
    ! [B: poly_F3299452240248304339ring_a,A: poly_F3299452240248304339ring_a] :
      ( ( minus_5354101470050066234ring_a @ ( uminus6490753114102738890ring_a @ B ) @ A )
      = ( minus_5354101470050066234ring_a @ ( uminus6490753114102738890ring_a @ A ) @ B ) ) ).

% minus_diff_commute
thf(fact_1092_minus__diff__commute,axiom,
    ! [B: int,A: int] :
      ( ( minus_minus_int @ ( uminus_uminus_int @ B ) @ A )
      = ( minus_minus_int @ ( uminus_uminus_int @ A ) @ B ) ) ).

% minus_diff_commute
thf(fact_1093_minus__diff__commute,axiom,
    ! [B: finite_mod_ring_a,A: finite_mod_ring_a] :
      ( ( minus_3609261664126569004ring_a @ ( uminus3100561713750211260ring_a @ B ) @ A )
      = ( minus_3609261664126569004ring_a @ ( uminus3100561713750211260ring_a @ A ) @ B ) ) ).

% minus_diff_commute
thf(fact_1094_minus__diff__commute,axiom,
    ! [B: real,A: real] :
      ( ( minus_minus_real @ ( uminus_uminus_real @ B ) @ A )
      = ( minus_minus_real @ ( uminus_uminus_real @ A ) @ B ) ) ).

% minus_diff_commute
thf(fact_1095_diff__less__mono2,axiom,
    ! [M: nat,N: nat,L: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ( ord_less_nat @ M @ L )
       => ( ord_less_nat @ ( minus_minus_nat @ L @ N ) @ ( minus_minus_nat @ L @ M ) ) ) ) ).

% diff_less_mono2
thf(fact_1096_less__imp__diff__less,axiom,
    ! [J2: nat,K: nat,N: nat] :
      ( ( ord_less_nat @ J2 @ K )
     => ( ord_less_nat @ ( minus_minus_nat @ J2 @ N ) @ K ) ) ).

% less_imp_diff_less
thf(fact_1097_diff__add__inverse2,axiom,
    ! [M: nat,N: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ M @ N ) @ N )
      = M ) ).

% diff_add_inverse2
thf(fact_1098_diff__add__inverse,axiom,
    ! [N: nat,M: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ N @ M ) @ N )
      = M ) ).

% diff_add_inverse
thf(fact_1099_diff__cancel2,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ M @ K ) @ ( plus_plus_nat @ N @ K ) )
      = ( minus_minus_nat @ M @ N ) ) ).

% diff_cancel2
thf(fact_1100_Nat_Odiff__cancel,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ K @ M ) @ ( plus_plus_nat @ K @ N ) )
      = ( minus_minus_nat @ M @ N ) ) ).

% Nat.diff_cancel
thf(fact_1101_diff__mult__distrib2,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( times_times_nat @ K @ ( minus_minus_nat @ M @ N ) )
      = ( minus_minus_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) ) ) ).

% diff_mult_distrib2
thf(fact_1102_diff__mult__distrib,axiom,
    ! [M: nat,N: nat,K: nat] :
      ( ( times_times_nat @ ( minus_minus_nat @ M @ N ) @ K )
      = ( minus_minus_nat @ ( times_times_nat @ M @ K ) @ ( times_times_nat @ N @ K ) ) ) ).

% diff_mult_distrib
thf(fact_1103_diff__less__eq,axiom,
    ! [A: real,B: real,C: real] :
      ( ( ord_less_real @ ( minus_minus_real @ A @ B ) @ C )
      = ( ord_less_real @ A @ ( plus_plus_real @ C @ B ) ) ) ).

% diff_less_eq
thf(fact_1104_diff__less__eq,axiom,
    ! [A: int,B: int,C: int] :
      ( ( ord_less_int @ ( minus_minus_int @ A @ B ) @ C )
      = ( ord_less_int @ A @ ( plus_plus_int @ C @ B ) ) ) ).

% diff_less_eq
thf(fact_1105_less__diff__eq,axiom,
    ! [A: real,C: real,B: real] :
      ( ( ord_less_real @ A @ ( minus_minus_real @ C @ B ) )
      = ( ord_less_real @ ( plus_plus_real @ A @ B ) @ C ) ) ).

% less_diff_eq
thf(fact_1106_less__diff__eq,axiom,
    ! [A: int,C: int,B: int] :
      ( ( ord_less_int @ A @ ( minus_minus_int @ C @ B ) )
      = ( ord_less_int @ ( plus_plus_int @ A @ B ) @ C ) ) ).

% less_diff_eq
thf(fact_1107_less__diff__conv,axiom,
    ! [I: nat,J2: nat,K: nat] :
      ( ( ord_less_nat @ I @ ( minus_minus_nat @ J2 @ K ) )
      = ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ J2 ) ) ).

% less_diff_conv
thf(fact_1108_add__diff__inverse__nat,axiom,
    ! [M: nat,N: nat] :
      ( ~ ( ord_less_nat @ M @ N )
     => ( ( plus_plus_nat @ N @ ( minus_minus_nat @ M @ N ) )
        = M ) ) ).

% add_diff_inverse_nat
thf(fact_1109_negative__psi_H,axiom,
    ! [I: nat,J2: nat] :
      ( ( ord_less_eq_nat @ I @ J2 )
     => ( ( times_5121417576591743744ring_a @ ( power_6826135765519566523ring_a @ psi_inv @ I ) @ ( power_6826135765519566523ring_a @ psi @ J2 ) )
        = ( power_6826135765519566523ring_a @ psi @ ( minus_minus_nat @ J2 @ I ) ) ) ) ).

% negative_psi'
thf(fact_1110_four__x__squared,axiom,
    ! [X: real] :
      ( ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ ( bit0 @ one ) ) ) @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
      = ( power_power_real @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ X ) @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% four_x_squared
thf(fact_1111_nat__add__left__cancel__le,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ K @ M ) @ ( plus_plus_nat @ K @ N ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% nat_add_left_cancel_le
thf(fact_1112_diff__diff__cancel,axiom,
    ! [I: nat,N: nat] :
      ( ( ord_less_eq_nat @ I @ N )
     => ( ( minus_minus_nat @ N @ ( minus_minus_nat @ N @ I ) )
        = I ) ) ).

% diff_diff_cancel
thf(fact_1113_Nat_Oadd__diff__assoc,axiom,
    ! [K: nat,J2: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J2 )
     => ( ( plus_plus_nat @ I @ ( minus_minus_nat @ J2 @ K ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ I @ J2 ) @ K ) ) ) ).

% Nat.add_diff_assoc
thf(fact_1114_Nat_Oadd__diff__assoc2,axiom,
    ! [K: nat,J2: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J2 )
     => ( ( plus_plus_nat @ ( minus_minus_nat @ J2 @ K ) @ I )
        = ( minus_minus_nat @ ( plus_plus_nat @ J2 @ I ) @ K ) ) ) ).

% Nat.add_diff_assoc2
thf(fact_1115_Nat_Odiff__diff__right,axiom,
    ! [K: nat,J2: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J2 )
     => ( ( minus_minus_nat @ I @ ( minus_minus_nat @ J2 @ K ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ I @ K ) @ J2 ) ) ) ).

% Nat.diff_diff_right
thf(fact_1116_real__arch__pow,axiom,
    ! [X: real,Y: real] :
      ( ( ord_less_real @ one_one_real @ X )
     => ? [N2: nat] : ( ord_less_real @ Y @ ( power_power_real @ X @ N2 ) ) ) ).

% real_arch_pow
thf(fact_1117_le__refl,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ N @ N ) ).

% le_refl
thf(fact_1118_le__trans,axiom,
    ! [I: nat,J2: nat,K: nat] :
      ( ( ord_less_eq_nat @ I @ J2 )
     => ( ( ord_less_eq_nat @ J2 @ K )
       => ( ord_less_eq_nat @ I @ K ) ) ) ).

% le_trans
thf(fact_1119_eq__imp__le,axiom,
    ! [M: nat,N: nat] :
      ( ( M = N )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% eq_imp_le
thf(fact_1120_le__antisym,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( ord_less_eq_nat @ N @ M )
       => ( M = N ) ) ) ).

% le_antisym
thf(fact_1121_nat__le__linear,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
      | ( ord_less_eq_nat @ N @ M ) ) ).

% nat_le_linear
thf(fact_1122_Nat_Oex__has__greatest__nat,axiom,
    ! [P: nat > $o,K: nat,B: nat] :
      ( ( P @ K )
     => ( ! [Y4: nat] :
            ( ( P @ Y4 )
           => ( ord_less_eq_nat @ Y4 @ B ) )
       => ? [X3: nat] :
            ( ( P @ X3 )
            & ! [Y5: nat] :
                ( ( P @ Y5 )
               => ( ord_less_eq_nat @ Y5 @ X3 ) ) ) ) ) ).

% Nat.ex_has_greatest_nat
thf(fact_1123_bounded__Max__nat,axiom,
    ! [P: nat > $o,X: nat,M3: nat] :
      ( ( P @ X )
     => ( ! [X3: nat] :
            ( ( P @ X3 )
           => ( ord_less_eq_nat @ X3 @ M3 ) )
       => ~ ! [M4: nat] :
              ( ( P @ M4 )
             => ~ ! [X4: nat] :
                    ( ( P @ X4 )
                   => ( ord_less_eq_nat @ X4 @ M4 ) ) ) ) ) ).

% bounded_Max_nat
thf(fact_1124_less__mono__imp__le__mono,axiom,
    ! [F: nat > nat,I: nat,J2: nat] :
      ( ! [I4: nat,J3: nat] :
          ( ( ord_less_nat @ I4 @ J3 )
         => ( ord_less_nat @ ( F @ I4 ) @ ( F @ J3 ) ) )
     => ( ( ord_less_eq_nat @ I @ J2 )
       => ( ord_less_eq_nat @ ( F @ I ) @ ( F @ J2 ) ) ) ) ).

% less_mono_imp_le_mono
thf(fact_1125_le__neq__implies__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( M != N )
       => ( ord_less_nat @ M @ N ) ) ) ).

% le_neq_implies_less
thf(fact_1126_less__or__eq__imp__le,axiom,
    ! [M: nat,N: nat] :
      ( ( ( ord_less_nat @ M @ N )
        | ( M = N ) )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% less_or_eq_imp_le
thf(fact_1127_le__eq__less__or__eq,axiom,
    ( ord_less_eq_nat
    = ( ^ [M5: nat,N4: nat] :
          ( ( ord_less_nat @ M5 @ N4 )
          | ( M5 = N4 ) ) ) ) ).

% le_eq_less_or_eq
thf(fact_1128_less__imp__le__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% less_imp_le_nat
thf(fact_1129_nat__less__le,axiom,
    ( ord_less_nat
    = ( ^ [M5: nat,N4: nat] :
          ( ( ord_less_eq_nat @ M5 @ N4 )
          & ( M5 != N4 ) ) ) ) ).

% nat_less_le
thf(fact_1130_add__leE,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ M @ K ) @ N )
     => ~ ( ( ord_less_eq_nat @ M @ N )
         => ~ ( ord_less_eq_nat @ K @ N ) ) ) ).

% add_leE
thf(fact_1131_le__add1,axiom,
    ! [N: nat,M: nat] : ( ord_less_eq_nat @ N @ ( plus_plus_nat @ N @ M ) ) ).

% le_add1
thf(fact_1132_le__add2,axiom,
    ! [N: nat,M: nat] : ( ord_less_eq_nat @ N @ ( plus_plus_nat @ M @ N ) ) ).

% le_add2
thf(fact_1133_add__leD1,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ M @ K ) @ N )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% add_leD1
thf(fact_1134_add__leD2,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ M @ K ) @ N )
     => ( ord_less_eq_nat @ K @ N ) ) ).

% add_leD2
thf(fact_1135_le__Suc__ex,axiom,
    ! [K: nat,L: nat] :
      ( ( ord_less_eq_nat @ K @ L )
     => ? [N2: nat] :
          ( L
          = ( plus_plus_nat @ K @ N2 ) ) ) ).

% le_Suc_ex
thf(fact_1136_add__le__mono,axiom,
    ! [I: nat,J2: nat,K: nat,L: nat] :
      ( ( ord_less_eq_nat @ I @ J2 )
     => ( ( ord_less_eq_nat @ K @ L )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J2 @ L ) ) ) ) ).

% add_le_mono
thf(fact_1137_add__le__mono1,axiom,
    ! [I: nat,J2: nat,K: nat] :
      ( ( ord_less_eq_nat @ I @ J2 )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J2 @ K ) ) ) ).

% add_le_mono1
thf(fact_1138_trans__le__add1,axiom,
    ! [I: nat,J2: nat,M: nat] :
      ( ( ord_less_eq_nat @ I @ J2 )
     => ( ord_less_eq_nat @ I @ ( plus_plus_nat @ J2 @ M ) ) ) ).

% trans_le_add1
thf(fact_1139_trans__le__add2,axiom,
    ! [I: nat,J2: nat,M: nat] :
      ( ( ord_less_eq_nat @ I @ J2 )
     => ( ord_less_eq_nat @ I @ ( plus_plus_nat @ M @ J2 ) ) ) ).

% trans_le_add2
thf(fact_1140_nat__le__iff__add,axiom,
    ( ord_less_eq_nat
    = ( ^ [M5: nat,N4: nat] :
        ? [K2: nat] :
          ( N4
          = ( plus_plus_nat @ M5 @ K2 ) ) ) ) ).

% nat_le_iff_add
thf(fact_1141_eq__diff__iff,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M )
     => ( ( ord_less_eq_nat @ K @ N )
       => ( ( ( minus_minus_nat @ M @ K )
            = ( minus_minus_nat @ N @ K ) )
          = ( M = N ) ) ) ) ).

% eq_diff_iff
thf(fact_1142_le__diff__iff,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M )
     => ( ( ord_less_eq_nat @ K @ N )
       => ( ( ord_less_eq_nat @ ( minus_minus_nat @ M @ K ) @ ( minus_minus_nat @ N @ K ) )
          = ( ord_less_eq_nat @ M @ N ) ) ) ) ).

% le_diff_iff
thf(fact_1143_Nat_Odiff__diff__eq,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M )
     => ( ( ord_less_eq_nat @ K @ N )
       => ( ( minus_minus_nat @ ( minus_minus_nat @ M @ K ) @ ( minus_minus_nat @ N @ K ) )
          = ( minus_minus_nat @ M @ N ) ) ) ) ).

% Nat.diff_diff_eq
thf(fact_1144_diff__le__mono,axiom,
    ! [M: nat,N: nat,L: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_eq_nat @ ( minus_minus_nat @ M @ L ) @ ( minus_minus_nat @ N @ L ) ) ) ).

% diff_le_mono
thf(fact_1145_diff__le__self,axiom,
    ! [M: nat,N: nat] : ( ord_less_eq_nat @ ( minus_minus_nat @ M @ N ) @ M ) ).

% diff_le_self
thf(fact_1146_le__diff__iff_H,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ C )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ( ord_less_eq_nat @ ( minus_minus_nat @ C @ A ) @ ( minus_minus_nat @ C @ B ) )
          = ( ord_less_eq_nat @ B @ A ) ) ) ) ).

% le_diff_iff'
thf(fact_1147_diff__le__mono2,axiom,
    ! [M: nat,N: nat,L: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_eq_nat @ ( minus_minus_nat @ L @ N ) @ ( minus_minus_nat @ L @ M ) ) ) ).

% diff_le_mono2
thf(fact_1148_le__cube,axiom,
    ! [M: nat] : ( ord_less_eq_nat @ M @ ( times_times_nat @ M @ ( times_times_nat @ M @ M ) ) ) ).

% le_cube
thf(fact_1149_le__square,axiom,
    ! [M: nat] : ( ord_less_eq_nat @ M @ ( times_times_nat @ M @ M ) ) ).

% le_square
thf(fact_1150_mult__le__mono,axiom,
    ! [I: nat,J2: nat,K: nat,L: nat] :
      ( ( ord_less_eq_nat @ I @ J2 )
     => ( ( ord_less_eq_nat @ K @ L )
       => ( ord_less_eq_nat @ ( times_times_nat @ I @ K ) @ ( times_times_nat @ J2 @ L ) ) ) ) ).

% mult_le_mono
thf(fact_1151_mult__le__mono1,axiom,
    ! [I: nat,J2: nat,K: nat] :
      ( ( ord_less_eq_nat @ I @ J2 )
     => ( ord_less_eq_nat @ ( times_times_nat @ I @ K ) @ ( times_times_nat @ J2 @ K ) ) ) ).

% mult_le_mono1
thf(fact_1152_mult__le__mono2,axiom,
    ! [I: nat,J2: nat,K: nat] :
      ( ( ord_less_eq_nat @ I @ J2 )
     => ( ord_less_eq_nat @ ( times_times_nat @ K @ I ) @ ( times_times_nat @ K @ J2 ) ) ) ).

% mult_le_mono2
thf(fact_1153_mono__nat__linear__lb,axiom,
    ! [F: nat > nat,M: nat,K: nat] :
      ( ! [M4: nat,N2: nat] :
          ( ( ord_less_nat @ M4 @ N2 )
         => ( ord_less_nat @ ( F @ M4 ) @ ( F @ N2 ) ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ ( F @ M ) @ K ) @ ( F @ ( plus_plus_nat @ M @ K ) ) ) ) ).

% mono_nat_linear_lb
thf(fact_1154_diff__less__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C @ A )
       => ( ord_less_nat @ ( minus_minus_nat @ A @ C ) @ ( minus_minus_nat @ B @ C ) ) ) ) ).

% diff_less_mono
thf(fact_1155_less__diff__iff,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M )
     => ( ( ord_less_eq_nat @ K @ N )
       => ( ( ord_less_nat @ ( minus_minus_nat @ M @ K ) @ ( minus_minus_nat @ N @ K ) )
          = ( ord_less_nat @ M @ N ) ) ) ) ).

% less_diff_iff
thf(fact_1156_le__diff__conv,axiom,
    ! [J2: nat,K: nat,I: nat] :
      ( ( ord_less_eq_nat @ ( minus_minus_nat @ J2 @ K ) @ I )
      = ( ord_less_eq_nat @ J2 @ ( plus_plus_nat @ I @ K ) ) ) ).

% le_diff_conv
thf(fact_1157_Nat_Ole__diff__conv2,axiom,
    ! [K: nat,J2: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J2 )
     => ( ( ord_less_eq_nat @ I @ ( minus_minus_nat @ J2 @ K ) )
        = ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ J2 ) ) ) ).

% Nat.le_diff_conv2
thf(fact_1158_Nat_Odiff__add__assoc,axiom,
    ! [K: nat,J2: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J2 )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ I @ J2 ) @ K )
        = ( plus_plus_nat @ I @ ( minus_minus_nat @ J2 @ K ) ) ) ) ).

% Nat.diff_add_assoc
thf(fact_1159_Nat_Odiff__add__assoc2,axiom,
    ! [K: nat,J2: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J2 )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ J2 @ I ) @ K )
        = ( plus_plus_nat @ ( minus_minus_nat @ J2 @ K ) @ I ) ) ) ).

% Nat.diff_add_assoc2
thf(fact_1160_Nat_Ole__imp__diff__is__add,axiom,
    ! [I: nat,J2: nat,K: nat] :
      ( ( ord_less_eq_nat @ I @ J2 )
     => ( ( ( minus_minus_nat @ J2 @ I )
          = K )
        = ( J2
          = ( plus_plus_nat @ K @ I ) ) ) ) ).

% Nat.le_imp_diff_is_add
thf(fact_1161_pow_Osimps_I1_J,axiom,
    ! [X: num] :
      ( ( pow @ X @ one )
      = X ) ).

% pow.simps(1)
thf(fact_1162_inj__on__diff__nat,axiom,
    ! [N3: set_nat,K: nat] :
      ( ! [N2: nat] :
          ( ( member_nat @ N2 @ N3 )
         => ( ord_less_eq_nat @ K @ N2 ) )
     => ( inj_on_nat_nat
        @ ^ [N4: nat] : ( minus_minus_nat @ N4 @ K )
        @ N3 ) ) ).

% inj_on_diff_nat
thf(fact_1163_less__diff__conv2,axiom,
    ! [K: nat,J2: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J2 )
     => ( ( ord_less_nat @ ( minus_minus_nat @ J2 @ K ) @ I )
        = ( ord_less_nat @ J2 @ ( plus_plus_nat @ I @ K ) ) ) ) ).

% less_diff_conv2
thf(fact_1164_nat__eq__add__iff1,axiom,
    ! [J2: nat,I: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ J2 @ I )
     => ( ( ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ M )
          = ( plus_plus_nat @ ( times_times_nat @ J2 @ U ) @ N ) )
        = ( ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ I @ J2 ) @ U ) @ M )
          = N ) ) ) ).

% nat_eq_add_iff1
thf(fact_1165_nat__eq__add__iff2,axiom,
    ! [I: nat,J2: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ I @ J2 )
     => ( ( ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ M )
          = ( plus_plus_nat @ ( times_times_nat @ J2 @ U ) @ N ) )
        = ( M
          = ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ J2 @ I ) @ U ) @ N ) ) ) ) ).

% nat_eq_add_iff2
thf(fact_1166_nat__le__add__iff1,axiom,
    ! [J2: nat,I: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ J2 @ I )
     => ( ( ord_less_eq_nat @ ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ M ) @ ( plus_plus_nat @ ( times_times_nat @ J2 @ U ) @ N ) )
        = ( ord_less_eq_nat @ ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ I @ J2 ) @ U ) @ M ) @ N ) ) ) ).

% nat_le_add_iff1
thf(fact_1167_nat__le__add__iff2,axiom,
    ! [I: nat,J2: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ I @ J2 )
     => ( ( ord_less_eq_nat @ ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ M ) @ ( plus_plus_nat @ ( times_times_nat @ J2 @ U ) @ N ) )
        = ( ord_less_eq_nat @ M @ ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ J2 @ I ) @ U ) @ N ) ) ) ) ).

% nat_le_add_iff2
thf(fact_1168_nat__diff__add__eq1,axiom,
    ! [J2: nat,I: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ J2 @ I )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ M ) @ ( plus_plus_nat @ ( times_times_nat @ J2 @ U ) @ N ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ I @ J2 ) @ U ) @ M ) @ N ) ) ) ).

% nat_diff_add_eq1
thf(fact_1169_nat__diff__add__eq2,axiom,
    ! [I: nat,J2: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ I @ J2 )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ M ) @ ( plus_plus_nat @ ( times_times_nat @ J2 @ U ) @ N ) )
        = ( minus_minus_nat @ M @ ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ J2 @ I ) @ U ) @ N ) ) ) ) ).

% nat_diff_add_eq2
thf(fact_1170_self__le__ge2__pow,axiom,
    ! [K: nat,M: nat] :
      ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ K )
     => ( ord_less_eq_nat @ M @ ( power_power_nat @ K @ M ) ) ) ).

% self_le_ge2_pow
thf(fact_1171_power2__nat__le__eq__le,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( power_power_nat @ M @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_nat @ N @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% power2_nat_le_eq_le
thf(fact_1172_power2__nat__le__imp__le,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( power_power_nat @ M @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ N )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% power2_nat_le_imp_le
thf(fact_1173_nat__less__add__iff1,axiom,
    ! [J2: nat,I: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ J2 @ I )
     => ( ( ord_less_nat @ ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ M ) @ ( plus_plus_nat @ ( times_times_nat @ J2 @ U ) @ N ) )
        = ( ord_less_nat @ ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ I @ J2 ) @ U ) @ M ) @ N ) ) ) ).

% nat_less_add_iff1
thf(fact_1174_nat__less__add__iff2,axiom,
    ! [I: nat,J2: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ I @ J2 )
     => ( ( ord_less_nat @ ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ M ) @ ( plus_plus_nat @ ( times_times_nat @ J2 @ U ) @ N ) )
        = ( ord_less_nat @ M @ ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ J2 @ I ) @ U ) @ N ) ) ) ) ).

% nat_less_add_iff2
thf(fact_1175_diff__le__diff__pow,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ K )
     => ( ord_less_eq_nat @ ( minus_minus_nat @ M @ N ) @ ( minus_minus_nat @ ( power_power_nat @ K @ M ) @ ( power_power_nat @ K @ N ) ) ) ) ).

% diff_le_diff_pow
thf(fact_1176_ex__power__ivl1,axiom,
    ! [B: nat,K: nat] :
      ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ B )
     => ( ( ord_less_eq_nat @ one_one_nat @ K )
       => ? [N2: nat] :
            ( ( ord_less_eq_nat @ ( power_power_nat @ B @ N2 ) @ K )
            & ( ord_less_nat @ K @ ( power_power_nat @ B @ ( plus_plus_nat @ N2 @ one_one_nat ) ) ) ) ) ) ).

% ex_power_ivl1
thf(fact_1177_ex__power__ivl2,axiom,
    ! [B: nat,K: nat] :
      ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ B )
     => ( ( ord_less_eq_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ K )
       => ? [N2: nat] :
            ( ( ord_less_nat @ ( power_power_nat @ B @ N2 ) @ K )
            & ( ord_less_eq_nat @ K @ ( power_power_nat @ B @ ( plus_plus_nat @ N2 @ one_one_nat ) ) ) ) ) ) ).

% ex_power_ivl2
thf(fact_1178_split__mod__qr__poly,axiom,
    ! [F: poly_F3299452240248304339ring_a] :
      ( ( ord_less_eq_nat @ n @ ( degree4881254707062955960ring_a @ F ) )
     => ( F
        = ( plus_p7290290253215468682ring_a @ ( minus_5354101470050066234ring_a @ ( nTT_ky3493641264504450921ring_a @ n @ F ) @ ( nTT_ky790528430515779601ring_a @ n @ F ) ) @ ( times_3242606764180207630ring_a @ kyber_qr_poly_a @ ( nTT_ky790528430515779601ring_a @ n @ F ) ) ) ) ) ).

% split_mod_qr_poly
thf(fact_1179_mu__prop,axiom,
    ! [M2: nat] :
      ( ( ( ( power_6826135765519566523ring_a @ mu @ M2 )
          = one_on2109788427901206336ring_a )
        & ( M2 != zero_zero_nat ) )
     => ( ord_less_eq_nat @ n @ M2 ) ) ).

% mu_prop
thf(fact_1180_mu__prop_H,axiom,
    ! [M6: nat] :
      ( ( ( power_6826135765519566523ring_a @ mu @ M6 )
        = one_on2109788427901206336ring_a )
     => ( ( M6 != zero_zero_nat )
       => ( ord_less_eq_nat @ n @ M6 ) ) ) ).

% mu_prop'
thf(fact_1181_omega__properties_I3_J,axiom,
    ! [M2: nat] :
      ( ( ( ( power_6826135765519566523ring_a @ omega @ M2 )
          = one_on2109788427901206336ring_a )
        & ( M2 != zero_zero_nat ) )
     => ( ord_less_eq_nat @ n @ M2 ) ) ).

% omega_properties(3)
thf(fact_1182_omega__prop_H,axiom,
    ! [M6: nat] :
      ( ( ( power_6826135765519566523ring_a @ omega @ M6 )
        = one_on2109788427901206336ring_a )
     => ( ( M6 != zero_zero_nat )
       => ( ord_less_eq_nat @ n @ M6 ) ) ) ).

% omega_prop'
thf(fact_1183_bot__nat__0_Onot__eq__extremum,axiom,
    ! [A: nat] :
      ( ( A != zero_zero_nat )
      = ( ord_less_nat @ zero_zero_nat @ A ) ) ).

% bot_nat_0.not_eq_extremum
thf(fact_1184_neq0__conv,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
      = ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% neq0_conv
thf(fact_1185_less__nat__zero__code,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ zero_zero_nat ) ).

% less_nat_zero_code
thf(fact_1186_le0,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ zero_zero_nat @ N ) ).

% le0
thf(fact_1187_bot__nat__0_Oextremum,axiom,
    ! [A: nat] : ( ord_less_eq_nat @ zero_zero_nat @ A ) ).

% bot_nat_0.extremum
thf(fact_1188_Nat_Oadd__0__right,axiom,
    ! [M: nat] :
      ( ( plus_plus_nat @ M @ zero_zero_nat )
      = M ) ).

% Nat.add_0_right
thf(fact_1189_add__is__0,axiom,
    ! [M: nat,N: nat] :
      ( ( ( plus_plus_nat @ M @ N )
        = zero_zero_nat )
      = ( ( M = zero_zero_nat )
        & ( N = zero_zero_nat ) ) ) ).

% add_is_0
thf(fact_1190_diff__self__eq__0,axiom,
    ! [M: nat] :
      ( ( minus_minus_nat @ M @ M )
      = zero_zero_nat ) ).

% diff_self_eq_0
thf(fact_1191_diff__0__eq__0,axiom,
    ! [N: nat] :
      ( ( minus_minus_nat @ zero_zero_nat @ N )
      = zero_zero_nat ) ).

% diff_0_eq_0
thf(fact_1192_mult__cancel2,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ( times_times_nat @ M @ K )
        = ( times_times_nat @ N @ K ) )
      = ( ( M = N )
        | ( K = zero_zero_nat ) ) ) ).

% mult_cancel2
thf(fact_1193_mult__cancel1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ( times_times_nat @ K @ M )
        = ( times_times_nat @ K @ N ) )
      = ( ( M = N )
        | ( K = zero_zero_nat ) ) ) ).

% mult_cancel1
thf(fact_1194_mult__0__right,axiom,
    ! [M: nat] :
      ( ( times_times_nat @ M @ zero_zero_nat )
      = zero_zero_nat ) ).

% mult_0_right
thf(fact_1195_mult__is__0,axiom,
    ! [M: nat,N: nat] :
      ( ( ( times_times_nat @ M @ N )
        = zero_zero_nat )
      = ( ( M = zero_zero_nat )
        | ( N = zero_zero_nat ) ) ) ).

% mult_is_0
thf(fact_1196_semiring__norm_I71_J,axiom,
    ! [M: num,N: num] :
      ( ( ord_less_eq_num @ ( bit0 @ M ) @ ( bit0 @ N ) )
      = ( ord_less_eq_num @ M @ N ) ) ).

% semiring_norm(71)
thf(fact_1197_semiring__norm_I68_J,axiom,
    ! [N: num] : ( ord_less_eq_num @ one @ N ) ).

% semiring_norm(68)
thf(fact_1198_add__gr__0,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ M @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ M )
        | ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% add_gr_0
thf(fact_1199_less__one,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ N @ one_one_nat )
      = ( N = zero_zero_nat ) ) ).

% less_one
thf(fact_1200_zero__less__diff,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( minus_minus_nat @ N @ M ) )
      = ( ord_less_nat @ M @ N ) ) ).

% zero_less_diff
thf(fact_1201_mult__less__cancel2,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ord_less_nat @ ( times_times_nat @ M @ K ) @ ( times_times_nat @ N @ K ) )
      = ( ( ord_less_nat @ zero_zero_nat @ K )
        & ( ord_less_nat @ M @ N ) ) ) ).

% mult_less_cancel2
thf(fact_1202_nat__0__less__mult__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( times_times_nat @ M @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ M )
        & ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% nat_0_less_mult_iff
thf(fact_1203_nat__mult__less__cancel__disj,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ K )
        & ( ord_less_nat @ M @ N ) ) ) ).

% nat_mult_less_cancel_disj
thf(fact_1204_diff__is__0__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ( minus_minus_nat @ M @ N )
        = zero_zero_nat )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% diff_is_0_eq
thf(fact_1205_diff__is__0__eq_H,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( minus_minus_nat @ M @ N )
        = zero_zero_nat ) ) ).

% diff_is_0_eq'
thf(fact_1206_nat__zero__less__power__iff,axiom,
    ! [X: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( power_power_nat @ X @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ X )
        | ( N = zero_zero_nat ) ) ) ).

% nat_zero_less_power_iff
thf(fact_1207_semiring__norm_I69_J,axiom,
    ! [M: num] :
      ~ ( ord_less_eq_num @ ( bit0 @ M ) @ one ) ).

% semiring_norm(69)
thf(fact_1208_mult__le__cancel2,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( times_times_nat @ M @ K ) @ ( times_times_nat @ N @ K ) )
      = ( ( ord_less_nat @ zero_zero_nat @ K )
       => ( ord_less_eq_nat @ M @ N ) ) ) ).

% mult_le_cancel2
thf(fact_1209_nat__mult__le__cancel__disj,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ K )
       => ( ord_less_eq_nat @ M @ N ) ) ) ).

% nat_mult_le_cancel_disj
thf(fact_1210_n_H__gr__0,axiom,
    ord_less_nat @ zero_zero_nat @ n2 ).

% n'_gr_0
thf(fact_1211_less__eq__real__def,axiom,
    ( ord_less_eq_real
    = ( ^ [X2: real,Y6: real] :
          ( ( ord_less_real @ X2 @ Y6 )
          | ( X2 = Y6 ) ) ) ) ).

% less_eq_real_def
thf(fact_1212_le__num__One__iff,axiom,
    ! [X: num] :
      ( ( ord_less_eq_num @ X @ one )
      = ( X = one ) ) ).

% le_num_One_iff
thf(fact_1213_bot__nat__0_Oextremum__strict,axiom,
    ! [A: nat] :
      ~ ( ord_less_nat @ A @ zero_zero_nat ) ).

% bot_nat_0.extremum_strict
thf(fact_1214_gr0I,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
     => ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% gr0I
thf(fact_1215_not__gr0,axiom,
    ! [N: nat] :
      ( ( ~ ( ord_less_nat @ zero_zero_nat @ N ) )
      = ( N = zero_zero_nat ) ) ).

% not_gr0
thf(fact_1216_not__less0,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ zero_zero_nat ) ).

% not_less0
thf(fact_1217_less__zeroE,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ zero_zero_nat ) ).

% less_zeroE
thf(fact_1218_gr__implies__not0,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( N != zero_zero_nat ) ) ).

% gr_implies_not0
thf(fact_1219_infinite__descent0,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ zero_zero_nat )
     => ( ! [N2: nat] :
            ( ( ord_less_nat @ zero_zero_nat @ N2 )
           => ( ~ ( P @ N2 )
             => ? [M2: nat] :
                  ( ( ord_less_nat @ M2 @ N2 )
                  & ~ ( P @ M2 ) ) ) )
       => ( P @ N ) ) ) ).

% infinite_descent0
thf(fact_1220_le__0__eq,axiom,
    ! [N: nat] :
      ( ( ord_less_eq_nat @ N @ zero_zero_nat )
      = ( N = zero_zero_nat ) ) ).

% le_0_eq
thf(fact_1221_bot__nat__0_Oextremum__uniqueI,axiom,
    ! [A: nat] :
      ( ( ord_less_eq_nat @ A @ zero_zero_nat )
     => ( A = zero_zero_nat ) ) ).

% bot_nat_0.extremum_uniqueI
thf(fact_1222_bot__nat__0_Oextremum__unique,axiom,
    ! [A: nat] :
      ( ( ord_less_eq_nat @ A @ zero_zero_nat )
      = ( A = zero_zero_nat ) ) ).

% bot_nat_0.extremum_unique
thf(fact_1223_less__eq__nat_Osimps_I1_J,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ zero_zero_nat @ N ) ).

% less_eq_nat.simps(1)
thf(fact_1224_add__eq__self__zero,axiom,
    ! [M: nat,N: nat] :
      ( ( ( plus_plus_nat @ M @ N )
        = M )
     => ( N = zero_zero_nat ) ) ).

% add_eq_self_zero
thf(fact_1225_plus__nat_Oadd__0,axiom,
    ! [N: nat] :
      ( ( plus_plus_nat @ zero_zero_nat @ N )
      = N ) ).

% plus_nat.add_0
thf(fact_1226_diffs0__imp__equal,axiom,
    ! [M: nat,N: nat] :
      ( ( ( minus_minus_nat @ M @ N )
        = zero_zero_nat )
     => ( ( ( minus_minus_nat @ N @ M )
          = zero_zero_nat )
       => ( M = N ) ) ) ).

% diffs0_imp_equal
thf(fact_1227_minus__nat_Odiff__0,axiom,
    ! [M: nat] :
      ( ( minus_minus_nat @ M @ zero_zero_nat )
      = M ) ).

% minus_nat.diff_0
thf(fact_1228_mult__0,axiom,
    ! [N: nat] :
      ( ( times_times_nat @ zero_zero_nat @ N )
      = zero_zero_nat ) ).

% mult_0
thf(fact_1229_nat__mult__eq__cancel__disj,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ( times_times_nat @ K @ M )
        = ( times_times_nat @ K @ N ) )
      = ( ( K = zero_zero_nat )
        | ( M = N ) ) ) ).

% nat_mult_eq_cancel_disj
thf(fact_1230_ex__least__nat__le,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ N )
     => ( ~ ( P @ zero_zero_nat )
       => ? [K3: nat] :
            ( ( ord_less_eq_nat @ K3 @ N )
            & ! [I5: nat] :
                ( ( ord_less_nat @ I5 @ K3 )
               => ~ ( P @ I5 ) )
            & ( P @ K3 ) ) ) ) ).

% ex_least_nat_le
thf(fact_1231_less__imp__add__positive,axiom,
    ! [I: nat,J2: nat] :
      ( ( ord_less_nat @ I @ J2 )
     => ? [K3: nat] :
          ( ( ord_less_nat @ zero_zero_nat @ K3 )
          & ( ( plus_plus_nat @ I @ K3 )
            = J2 ) ) ) ).

% less_imp_add_positive
thf(fact_1232_diff__less,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_nat @ zero_zero_nat @ M )
       => ( ord_less_nat @ ( minus_minus_nat @ M @ N ) @ M ) ) ) ).

% diff_less
thf(fact_1233_mult__less__mono1,axiom,
    ! [I: nat,J2: nat,K: nat] :
      ( ( ord_less_nat @ I @ J2 )
     => ( ( ord_less_nat @ zero_zero_nat @ K )
       => ( ord_less_nat @ ( times_times_nat @ I @ K ) @ ( times_times_nat @ J2 @ K ) ) ) ) ).

% mult_less_mono1
thf(fact_1234_mult__less__mono2,axiom,
    ! [I: nat,J2: nat,K: nat] :
      ( ( ord_less_nat @ I @ J2 )
     => ( ( ord_less_nat @ zero_zero_nat @ K )
       => ( ord_less_nat @ ( times_times_nat @ K @ I ) @ ( times_times_nat @ K @ J2 ) ) ) ) ).

% mult_less_mono2
thf(fact_1235_nat__mult__eq__cancel1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ K )
     => ( ( ( times_times_nat @ K @ M )
          = ( times_times_nat @ K @ N ) )
        = ( M = N ) ) ) ).

% nat_mult_eq_cancel1
thf(fact_1236_nat__mult__less__cancel1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ K )
     => ( ( ord_less_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
        = ( ord_less_nat @ M @ N ) ) ) ).

% nat_mult_less_cancel1
thf(fact_1237_diff__add__0,axiom,
    ! [N: nat,M: nat] :
      ( ( minus_minus_nat @ N @ ( plus_plus_nat @ N @ M ) )
      = zero_zero_nat ) ).

% diff_add_0
thf(fact_1238_mult__eq__self__implies__10,axiom,
    ! [M: nat,N: nat] :
      ( ( M
        = ( times_times_nat @ M @ N ) )
     => ( ( N = one_one_nat )
        | ( M = zero_zero_nat ) ) ) ).

% mult_eq_self_implies_10
thf(fact_1239_nat__power__less__imp__less,axiom,
    ! [I: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ I )
     => ( ( ord_less_nat @ ( power_power_nat @ I @ M ) @ ( power_power_nat @ I @ N ) )
       => ( ord_less_nat @ M @ N ) ) ) ).

% nat_power_less_imp_less
thf(fact_1240_nat__mult__le__cancel1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ K )
     => ( ( ord_less_eq_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
        = ( ord_less_eq_nat @ M @ N ) ) ) ).

% nat_mult_le_cancel1
thf(fact_1241_nat__diff__split,axiom,
    ! [P: nat > $o,A: nat,B: nat] :
      ( ( P @ ( minus_minus_nat @ A @ B ) )
      = ( ( ( ord_less_nat @ A @ B )
         => ( P @ zero_zero_nat ) )
        & ! [D2: nat] :
            ( ( A
              = ( plus_plus_nat @ B @ D2 ) )
           => ( P @ D2 ) ) ) ) ).

% nat_diff_split
thf(fact_1242_nat__diff__split__asm,axiom,
    ! [P: nat > $o,A: nat,B: nat] :
      ( ( P @ ( minus_minus_nat @ A @ B ) )
      = ( ~ ( ( ( ord_less_nat @ A @ B )
              & ~ ( P @ zero_zero_nat ) )
            | ? [D2: nat] :
                ( ( A
                  = ( plus_plus_nat @ B @ D2 ) )
                & ~ ( P @ D2 ) ) ) ) ) ).

% nat_diff_split_asm
thf(fact_1243_realpow__square__minus__le,axiom,
    ! [U: real,X: real] : ( ord_less_eq_real @ ( uminus_uminus_real @ ( power_power_real @ U @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( power_power_real @ X @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ).

% realpow_square_minus_le
thf(fact_1244_two__realpow__ge__one,axiom,
    ! [N: nat] : ( ord_less_eq_real @ one_one_real @ ( power_power_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ N ) ) ).

% two_realpow_ge_one
thf(fact_1245_pos2,axiom,
    ord_less_nat @ zero_zero_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ).

% pos2
thf(fact_1246_mult__eq__if,axiom,
    ( times_times_nat
    = ( ^ [M5: nat,N4: nat] : ( if_nat @ ( M5 = zero_zero_nat ) @ zero_zero_nat @ ( plus_plus_nat @ N4 @ ( times_times_nat @ ( minus_minus_nat @ M5 @ one_one_nat ) @ N4 ) ) ) ) ) ).

% mult_eq_if
thf(fact_1247_nat__induct2,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ zero_zero_nat )
     => ( ( P @ one_one_nat )
       => ( ! [N2: nat] :
              ( ( P @ N2 )
             => ( P @ ( plus_plus_nat @ N2 @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) )
         => ( P @ N ) ) ) ) ).

% nat_induct2
thf(fact_1248_L2__set__mult__ineq__lemma,axiom,
    ! [A: real,C: real,B: real,D: real] : ( ord_less_eq_real @ ( times_times_real @ ( times_times_real @ ( numeral_numeral_real @ ( bit0 @ one ) ) @ ( times_times_real @ A @ C ) ) @ ( times_times_real @ B @ D ) ) @ ( plus_plus_real @ ( times_times_real @ ( power_power_real @ A @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ D @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) @ ( times_times_real @ ( power_power_real @ B @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) @ ( power_power_real @ C @ ( numeral_numeral_nat @ ( bit0 @ one ) ) ) ) ) ) ).

% L2_set_mult_ineq_lemma
thf(fact_1249_mod__qr__poly,axiom,
    ! [F: poly_F3299452240248304339ring_a] :
      ( ( ord_less_eq_nat @ n @ ( degree4881254707062955960ring_a @ F ) )
     => ( ( ord_less_nat @ ( degree4881254707062955960ring_a @ F ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ n ) )
       => ( ( modulo2591651872109920577ring_a @ F @ kyber_qr_poly_a )
          = ( minus_5354101470050066234ring_a @ ( nTT_ky3493641264504450921ring_a @ n @ F ) @ ( nTT_ky790528430515779601ring_a @ n @ F ) ) ) ) ) ).

% mod_qr_poly
thf(fact_1250_coeff__mod__qr__poly,axiom,
    ! [F: poly_F3299452240248304339ring_a,I: nat] :
      ( ( ord_less_eq_nat @ n @ ( degree4881254707062955960ring_a @ F ) )
     => ( ( ord_less_nat @ ( degree4881254707062955960ring_a @ F ) @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ n ) )
       => ( ( ord_less_nat @ I @ n )
         => ( ( coeff_1607515655354303335ring_a @ ( modulo2591651872109920577ring_a @ F @ kyber_qr_poly_a ) @ I )
            = ( minus_3609261664126569004ring_a @ ( coeff_1607515655354303335ring_a @ F @ I ) @ ( coeff_1607515655354303335ring_a @ F @ ( plus_plus_nat @ I @ n ) ) ) ) ) ) ) ).

% coeff_mod_qr_poly
thf(fact_1251_take__deg__monom__drop__deg,axiom,
    ! [F: poly_F3299452240248304339ring_a] :
      ( ( ord_less_eq_nat @ n @ ( degree4881254707062955960ring_a @ F ) )
     => ( F
        = ( plus_p7290290253215468682ring_a @ ( nTT_ky3493641264504450921ring_a @ n @ F ) @ ( times_3242606764180207630ring_a @ ( monom_8879022055327937434ring_a @ one_on2109788427901206336ring_a @ n ) @ ( nTT_ky790528430515779601ring_a @ n @ F ) ) ) ) ) ).

% take_deg_monom_drop_deg
thf(fact_1252_verit__eq__simplify_I8_J,axiom,
    ! [X22: num,Y22: num] :
      ( ( ( bit0 @ X22 )
        = ( bit0 @ Y22 ) )
      = ( X22 = Y22 ) ) ).

% verit_eq_simplify(8)
thf(fact_1253_coeff__of__qr__zero,axiom,
    ! [I: nat,F: kyber_qr_a] :
      ( ( ord_less_eq_nat @ n @ I )
     => ( ( coeff_1607515655354303335ring_a @ ( kyber_of_qr_a @ F ) @ I )
        = zero_z7902377541816115708ring_a ) ) ).

% coeff_of_qr_zero
thf(fact_1254_negacycl__conv__mod__qr__poly,axiom,
    ! [F: kyber_qr_a,G: kyber_qr_a] :
      ( ( modulo2591651872109920577ring_a @ ( kyber_of_qr_a @ ( nTT_ky7844408764402957685conv_a @ n @ F @ G ) ) @ kyber_qr_poly_a )
      = ( kyber_of_qr_a @ ( nTT_ky7844408764402957685conv_a @ n @ F @ G ) ) ) ).

% negacycl_conv_mod_qr_poly
thf(fact_1255_not__real__square__gt__zero,axiom,
    ! [X: real] :
      ( ( ~ ( ord_less_real @ zero_zero_real @ ( times_times_real @ X @ X ) ) )
      = ( X = zero_zero_real ) ) ).

% not_real_square_gt_zero
thf(fact_1256_real__add__less__0__iff,axiom,
    ! [X: real,Y: real] :
      ( ( ord_less_real @ ( plus_plus_real @ X @ Y ) @ zero_zero_real )
      = ( ord_less_real @ Y @ ( uminus_uminus_real @ X ) ) ) ).

% real_add_less_0_iff
thf(fact_1257_real__0__less__add__iff,axiom,
    ! [X: real,Y: real] :
      ( ( ord_less_real @ zero_zero_real @ ( plus_plus_real @ X @ Y ) )
      = ( ord_less_real @ ( uminus_uminus_real @ X ) @ Y ) ) ).

% real_0_less_add_iff
thf(fact_1258_minus__real__def,axiom,
    ( minus_minus_real
    = ( ^ [X2: real,Y6: real] : ( plus_plus_real @ X2 @ ( uminus_uminus_real @ Y6 ) ) ) ) ).

% minus_real_def
thf(fact_1259_real__arch__pow__inv,axiom,
    ! [Y: real,X: real] :
      ( ( ord_less_real @ zero_zero_real @ Y )
     => ( ( ord_less_real @ X @ one_one_real )
       => ? [N2: nat] : ( ord_less_real @ ( power_power_real @ X @ N2 ) @ Y ) ) ) ).

% real_arch_pow_inv
thf(fact_1260_realpow__pos__nth,axiom,
    ! [N: nat,A: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_real @ zero_zero_real @ A )
       => ? [R2: real] :
            ( ( ord_less_real @ zero_zero_real @ R2 )
            & ( ( power_power_real @ R2 @ N )
              = A ) ) ) ) ).

% realpow_pos_nth
thf(fact_1261_realpow__pos__nth__unique,axiom,
    ! [N: nat,A: real] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_real @ zero_zero_real @ A )
       => ? [X3: real] :
            ( ( ord_less_real @ zero_zero_real @ X3 )
            & ( ( power_power_real @ X3 @ N )
              = A )
            & ! [Y5: real] :
                ( ( ( ord_less_real @ zero_zero_real @ Y5 )
                  & ( ( power_power_real @ Y5 @ N )
                    = A ) )
               => ( Y5 = X3 ) ) ) ) ) ).

% realpow_pos_nth_unique
thf(fact_1262_verit__eq__simplify_I10_J,axiom,
    ! [X22: num] :
      ( one
     != ( bit0 @ X22 ) ) ).

% verit_eq_simplify(10)
thf(fact_1263_rewrite,axiom,
    ! [I: nat,J2: nat] :
      ( ( ord_less_nat @ I @ n )
     => ( ( ord_less_nat @ J2 @ n )
       => ( ( times_5121417576591743744ring_a @ ( times_5121417576591743744ring_a @ ( if_Finite_mod_ring_a @ ( ord_less_int @ ( minus_minus_int @ ( semiri1314217659103216013at_int @ J2 ) @ ( semiri1314217659103216013at_int @ I ) ) @ zero_zero_int ) @ ( uminus3100561713750211260ring_a @ one_on2109788427901206336ring_a ) @ one_on2109788427901206336ring_a ) @ ( power_6826135765519566523ring_a @ psi_inv @ ( times_times_nat @ I @ ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ l ) @ one_one_nat ) ) ) ) @ ( power_6826135765519566523ring_a @ psi @ ( times_times_nat @ J2 @ ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ l ) @ one_one_nat ) ) ) )
          = ( power_6826135765519566523ring_a @ psi @ ( times_times_nat @ ( x @ J2 @ I ) @ ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ l ) @ one_one_nat ) ) ) ) ) ) ).

% rewrite
thf(fact_1264_kyber__ntt_Oint__exp__hom,axiom,
    ! [X: nat,I: nat] :
      ( ( power_power_int @ ( semiri1314217659103216013at_int @ X ) @ I )
      = ( semiri1314217659103216013at_int @ ( power_power_nat @ X @ I ) ) ) ).

% kyber_ntt.int_exp_hom
thf(fact_1265_n__nonzero,axiom,
    ( ( semiri1314217659103216013at_int @ n )
   != zero_zero_int ) ).

% n_nonzero
thf(fact_1266_n__gt__1,axiom,
    ord_less_int @ one_one_int @ ( semiri1314217659103216013at_int @ n ) ).

% n_gt_1
thf(fact_1267_n__gt__zero,axiom,
    ord_less_int @ zero_zero_int @ ( semiri1314217659103216013at_int @ n ) ).

% n_gt_zero
thf(fact_1268_n__powr__2,axiom,
    ( ( semiri1314217659103216013at_int @ n )
    = ( power_power_int @ ( numeral_numeral_int @ ( bit0 @ one ) ) @ n2 ) ) ).

% n_powr_2

% Helper facts (5)
thf(help_If_2_1_If_001t__Nat__Onat_T,axiom,
    ! [X: nat,Y: nat] :
      ( ( if_nat @ $false @ X @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__Nat__Onat_T,axiom,
    ! [X: nat,Y: nat] :
      ( ( if_nat @ $true @ X @ Y )
      = X ) ).

thf(help_If_3_1_If_001t__Finite____Field__Omod____ring_Itf__a_J_T,axiom,
    ! [P: $o] :
      ( ( P = $true )
      | ( P = $false ) ) ).

thf(help_If_2_1_If_001t__Finite____Field__Omod____ring_Itf__a_J_T,axiom,
    ! [X: finite_mod_ring_a,Y: finite_mod_ring_a] :
      ( ( if_Finite_mod_ring_a @ $false @ X @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__Finite____Field__Omod____ring_Itf__a_J_T,axiom,
    ! [X: finite_mod_ring_a,Y: finite_mod_ring_a] :
      ( ( if_Finite_mod_ring_a @ $true @ X @ Y )
      = X ) ).

% Conjectures (1)
thf(conj_0,conjecture,
    ( ( groups3558780024651037881ring_a
      @ ^ [J: nat] : ( times_5121417576591743744ring_a @ ( coeff_1607515655354303335ring_a @ ( kyber_of_qr_a @ g ) @ ( x @ J @ i ) ) @ ( power_6826135765519566523ring_a @ psi @ ( times_times_nat @ ( x @ J @ i ) @ ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ l ) @ one_one_nat ) ) ) )
      @ ( set_ord_lessThan_nat @ n ) )
    = ( groups3558780024651037881ring_a
      @ ^ [X2: nat] : ( times_5121417576591743744ring_a @ ( coeff_1607515655354303335ring_a @ ( kyber_of_qr_a @ g ) @ X2 ) @ ( power_6826135765519566523ring_a @ psi @ ( times_times_nat @ X2 @ ( plus_plus_nat @ ( times_times_nat @ ( numeral_numeral_nat @ ( bit0 @ one ) ) @ l ) @ one_one_nat ) ) ) )
      @ ( set_ord_lessThan_nat @ n ) ) ) ).

%------------------------------------------------------------------------------