TPTP Problem File: SLH0029^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    : Commuting_Hermitian/0002_Commuting_Hermitian/prob_00323_012903__19381094_1 [Des23]

% Status   : Theorem
% Rating   : ? v8.2.0
% Syntax   : Number of formulae    : 1336 ( 551 unt; 226 typ;   0 def)
%            Number of atoms       : 3007 (1452 equ;   0 cnn)
%            Maximal formula atoms :   21 (   2 avg)
%            Number of connectives : 13363 ( 232   ~;  51   |; 186   &;11530   @)
%                                         (   0 <=>;1364  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   26 (   7 avg)
%            Number of types       :   27 (  26 usr)
%            Number of type conns  :  787 ( 787   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :  203 ( 200 usr;  16 con; 0-6 aty)
%            Number of variables   : 3723 (  93   ^;3557   !;  73   ?;3723   :)
% SPC      : TH0_THM_EQU_NAR

% Comments : This file was generated by Isabelle (most likely Sledgehammer)
%            2023-01-19 11:36:43.027
%------------------------------------------------------------------------------
% Could-be-implicit typings (26)
thf(ty_n_t__Product____Type__Oprod_I_062_It__Nat__Onat_M_062_It__Nat__Onat_Mt__Nat__Onat_J_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J_J,type,
    produc4471711990508489141at_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Matrix__Omat_It__Complex__Ocomplex_J_Mt__Matrix__Omat_It__Complex__Ocomplex_J_J,type,
    produc352478934956084711omplex: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    produc7248412053542808358at_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Matrix__Omat_It__Complex__Ocomplex_J_Mt__Complex__Ocomplex_J,type,
    produc4154176953909257092omplex: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Complex__Ocomplex_Mt__Matrix__Omat_It__Complex__Ocomplex_J_J,type,
    produc5852522195208431214omplex: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__Matrix__Omat_It__Complex__Ocomplex_J_J,type,
    produc3259542890344722124omplex: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Matrix__Omat_It__Complex__Ocomplex_J_Mt__Nat__Onat_J,type,
    produc4941145339993070502ex_nat: $tType ).

thf(ty_n_t__Matrix__Omat_It__Matrix__Omat_It__Matrix__Omat_It__Complex__Ocomplex_J_J_J,type,
    mat_mat_mat_complex: $tType ).

thf(ty_n_t__Set__Oset_It__Matrix__Omat_It__Matrix__Omat_It__Complex__Ocomplex_J_J_J,type,
    set_mat_mat_complex: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Complex__Ocomplex_Mt__Complex__Ocomplex_J,type,
    produc4411394909380815293omplex: $tType ).

thf(ty_n_t__Matrix__Omat_It__Matrix__Omat_It__Complex__Ocomplex_J_J,type,
    mat_mat_complex: $tType ).

thf(ty_n_t__Set__Oset_It__Matrix__Omat_It__Complex__Ocomplex_J_J,type,
    set_mat_complex: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    product_prod_nat_nat: $tType ).

thf(ty_n_t__Matrix__Omat_It__Matrix__Omat_It__Nat__Onat_J_J,type,
    mat_mat_nat: $tType ).

thf(ty_n_t__Set__Oset_It__Matrix__Omat_It__Nat__Onat_J_J,type,
    set_mat_nat: $tType ).

thf(ty_n_t__Matrix__Omat_It__Matrix__Omat_Itf__a_J_J,type,
    mat_mat_a: $tType ).

thf(ty_n_t__Set__Oset_It__Matrix__Omat_Itf__a_J_J,type,
    set_mat_a: $tType ).

thf(ty_n_t__Matrix__Omat_It__Complex__Ocomplex_J,type,
    mat_complex: $tType ).

thf(ty_n_t__Set__Oset_It__Complex__Ocomplex_J,type,
    set_complex: $tType ).

thf(ty_n_t__Matrix__Omat_It__Nat__Onat_J,type,
    mat_nat: $tType ).

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

thf(ty_n_t__Matrix__Omat_Itf__a_J,type,
    mat_a: $tType ).

thf(ty_n_t__Set__Oset_Itf__a_J,type,
    set_a: $tType ).

thf(ty_n_t__Complex__Ocomplex,type,
    complex: $tType ).

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

thf(ty_n_tf__a,type,
    a: $tType ).

% Explicit typings (200)
thf(sy_c_Column__Operations_Oadd__col__sub__row_001t__Complex__Ocomplex,type,
    column6029646570091773654omplex: complex > nat > nat > mat_complex > mat_complex ).

thf(sy_c_Column__Operations_Omat__addcol_001t__Complex__Ocomplex,type,
    column896436094548437152omplex: complex > nat > nat > mat_complex > mat_complex ).

thf(sy_c_Column__Operations_Omat__addcol_001t__Nat__Onat,type,
    column5442440509538803650ol_nat: nat > nat > nat > mat_nat > mat_nat ).

thf(sy_c_Column__Operations_Omat__multcol_001t__Complex__Ocomplex,type,
    column4410001698458707789omplex: nat > complex > mat_complex > mat_complex ).

thf(sy_c_Column__Operations_Omat__multcol_001t__Nat__Onat,type,
    column384608550491945071ol_nat: nat > nat > mat_nat > mat_nat ).

thf(sy_c_Column__Operations_Omat__swapcols_001t__Complex__Ocomplex,type,
    column4357519492343924999omplex: nat > nat > mat_complex > mat_complex ).

thf(sy_c_Column__Operations_Omat__swapcols_001t__Matrix__Omat_It__Complex__Ocomplex_J,type,
    column5864614067406638606omplex: nat > nat > mat_mat_complex > mat_mat_complex ).

thf(sy_c_Column__Operations_Omat__swapcols_001t__Nat__Onat,type,
    column8975334967120514601ls_nat: nat > nat > mat_nat > mat_nat ).

thf(sy_c_Column__Operations_Omat__swapcols_001tf__a,type,
    column2528828918332591333cols_a: nat > nat > mat_a > mat_a ).

thf(sy_c_Column__Operations_Oswap__cols__rows_001t__Complex__Ocomplex,type,
    column7161609239796038556omplex: nat > nat > mat_complex > mat_complex ).

thf(sy_c_Column__Operations_Oswap__cols__rows_001t__Matrix__Omat_It__Complex__Ocomplex_J,type,
    column1545125301662527289omplex: nat > nat > mat_mat_complex > mat_mat_complex ).

thf(sy_c_Column__Operations_Oswap__cols__rows_001t__Nat__Onat,type,
    column141131285749525182ws_nat: nat > nat > mat_nat > mat_nat ).

thf(sy_c_Column__Operations_Oswap__cols__rows_001tf__a,type,
    column5129559316938501008rows_a: nat > nat > mat_a > mat_a ).

thf(sy_c_Determinant_Opermutation__insert_001t__Complex__Ocomplex,type,
    permut138581522262023397omplex: complex > nat > ( complex > nat ) > complex > nat ).

thf(sy_c_Determinant_Opermutation__insert_001t__Nat__Onat,type,
    permut3695043542826343943rt_nat: nat > nat > ( nat > nat ) > nat > nat ).

thf(sy_c_Fun_Oid_001t__Complex__Ocomplex,type,
    id_complex: complex > complex ).

thf(sy_c_Fun_Oid_001t__Nat__Onat,type,
    id_nat: nat > nat ).

thf(sy_c_Gauss__Jordan__Elimination_Oaddrow__mat_001t__Complex__Ocomplex,type,
    gauss_947198734564870628omplex: nat > complex > nat > nat > mat_complex ).

thf(sy_c_Gauss__Jordan__Elimination_Oaddrow__mat_001t__Nat__Onat,type,
    gauss_6496870380031412486at_nat: nat > nat > nat > nat > mat_nat ).

thf(sy_c_Gauss__Jordan__Elimination_Omat__addrow__gen_001t__Complex__Ocomplex,type,
    gauss_5252963565656066424omplex: ( complex > complex > complex ) > ( complex > complex > complex ) > complex > nat > nat > mat_complex > mat_complex ).

thf(sy_c_Gauss__Jordan__Elimination_Omat__addrow__gen_001t__Matrix__Omat_It__Complex__Ocomplex_J,type,
    gauss_1372362650841364061omplex: ( mat_complex > mat_complex > mat_complex ) > ( mat_complex > mat_complex > mat_complex ) > mat_complex > nat > nat > mat_mat_complex > mat_mat_complex ).

thf(sy_c_Gauss__Jordan__Elimination_Omat__addrow__gen_001t__Nat__Onat,type,
    gauss_8885043348566651034en_nat: ( nat > nat > nat ) > ( nat > nat > nat ) > nat > nat > nat > mat_nat > mat_nat ).

thf(sy_c_Gauss__Jordan__Elimination_Omat__addrow__gen_001tf__a,type,
    gauss_3441994962245461172_gen_a: ( a > a > a ) > ( a > a > a ) > a > nat > nat > mat_a > mat_a ).

thf(sy_c_Gauss__Jordan__Elimination_Omat__multrow__gen_001t__Complex__Ocomplex,type,
    gauss_2324787009747932227omplex: ( complex > complex > complex ) > nat > complex > mat_complex > mat_complex ).

thf(sy_c_Gauss__Jordan__Elimination_Omat__multrow__gen_001t__Matrix__Omat_It__Complex__Ocomplex_J,type,
    gauss_8941138319910658002omplex: ( mat_complex > mat_complex > mat_complex ) > nat > mat_complex > mat_mat_complex > mat_mat_complex ).

thf(sy_c_Gauss__Jordan__Elimination_Omat__multrow__gen_001t__Nat__Onat,type,
    gauss_2409696420326117733en_nat: ( nat > nat > nat ) > nat > nat > mat_nat > mat_nat ).

thf(sy_c_Gauss__Jordan__Elimination_Omat__multrow__gen_001tf__a,type,
    gauss_5154200947219177641_gen_a: ( a > a > a ) > nat > a > mat_a > mat_a ).

thf(sy_c_Gauss__Jordan__Elimination_Omat__swaprows_001t__Complex__Ocomplex,type,
    gauss_1020679828357514249omplex: nat > nat > mat_complex > mat_complex ).

thf(sy_c_Gauss__Jordan__Elimination_Omat__swaprows_001t__Matrix__Omat_It__Complex__Ocomplex_J,type,
    gauss_2062035380492893324omplex: nat > nat > mat_mat_complex > mat_mat_complex ).

thf(sy_c_Gauss__Jordan__Elimination_Omat__swaprows_001t__Nat__Onat,type,
    gauss_2892196111178452267ws_nat: nat > nat > mat_nat > mat_nat ).

thf(sy_c_Gauss__Jordan__Elimination_Omat__swaprows_001tf__a,type,
    gauss_2482569599970757219rows_a: nat > nat > mat_a > mat_a ).

thf(sy_c_Gauss__Jordan__Elimination_Omultrow__mat_001t__Complex__Ocomplex,type,
    gauss_6868829418328711927omplex: nat > nat > complex > mat_complex ).

thf(sy_c_Gauss__Jordan__Elimination_Omultrow__mat_001t__Nat__Onat,type,
    gauss_3195076542185637913at_nat: nat > nat > nat > mat_nat ).

thf(sy_c_Gauss__Jordan__Elimination_Opivot__fun_001t__Complex__Ocomplex,type,
    gauss_2609248829700396350omplex: mat_complex > ( nat > nat ) > nat > $o ).

thf(sy_c_Gauss__Jordan__Elimination_Opivot__fun_001t__Nat__Onat,type,
    gauss_8416567519840421984un_nat: mat_nat > ( nat > nat ) > nat > $o ).

thf(sy_c_Gauss__Jordan__Elimination_Oswaprows__mat_001t__Complex__Ocomplex,type,
    gauss_8970452565587180529omplex: nat > nat > nat > mat_complex ).

thf(sy_c_Gauss__Jordan__Elimination_Oswaprows__mat_001t__Nat__Onat,type,
    gauss_4919907329869174035at_nat: nat > nat > nat > mat_nat ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Complex__Ocomplex,type,
    minus_minus_complex: complex > complex > complex ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Matrix__Omat_It__Complex__Ocomplex_J,type,
    minus_2412168080157227406omplex: mat_complex > mat_complex > mat_complex ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Matrix__Omat_It__Matrix__Omat_It__Complex__Ocomplex_J_J,type,
    minus_1104642222790461277omplex: mat_mat_complex > mat_mat_complex > mat_mat_complex ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Matrix__Omat_It__Nat__Onat_J,type,
    minus_minus_mat_nat: mat_nat > mat_nat > mat_nat ).

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__Product____Type__Oprod_It__Matrix__Omat_It__Complex__Ocomplex_J_Mt__Matrix__Omat_It__Complex__Ocomplex_J_J,type,
    minus_2734116836287720782omplex: produc352478934956084711omplex > produc352478934956084711omplex > produc352478934956084711omplex ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Product____Type__Oprod_It__Matrix__Omat_It__Complex__Ocomplex_J_Mt__Nat__Onat_J,type,
    minus_1583438508407137535ex_nat: produc4941145339993070502ex_nat > produc4941145339993070502ex_nat > produc4941145339993070502ex_nat ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Matrix__Omat_It__Complex__Ocomplex_J_J,type,
    minus_9125208095613564965omplex: produc3259542890344722124omplex > produc3259542890344722124omplex > produc3259542890344722124omplex ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    minus_4365393887724441320at_nat: product_prod_nat_nat > product_prod_nat_nat > product_prod_nat_nat ).

thf(sy_c_Groups_Oone__class_Oone_001t__Complex__Ocomplex,type,
    one_one_complex: complex ).

thf(sy_c_Groups_Oone__class_Oone_001t__Nat__Onat,type,
    one_one_nat: nat ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Complex__Ocomplex,type,
    plus_plus_complex: complex > complex > complex ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Matrix__Omat_It__Complex__Ocomplex_J,type,
    plus_p8323303612493835998omplex: mat_complex > mat_complex > mat_complex ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Matrix__Omat_It__Matrix__Omat_It__Complex__Ocomplex_J_J,type,
    plus_p8504688029521939981omplex: mat_mat_complex > mat_mat_complex > mat_mat_complex ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Matrix__Omat_It__Nat__Onat_J,type,
    plus_plus_mat_nat: mat_nat > mat_nat > mat_nat ).

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__Product____Type__Oprod_It__Matrix__Omat_It__Complex__Ocomplex_J_Mt__Matrix__Omat_It__Complex__Ocomplex_J_J,type,
    plus_p6104634242915576478omplex: produc352478934956084711omplex > produc352478934956084711omplex > produc352478934956084711omplex ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Product____Type__Oprod_It__Matrix__Omat_It__Complex__Ocomplex_J_Mt__Nat__Onat_J,type,
    plus_p679445643052534703ex_nat: produc4941145339993070502ex_nat > produc4941145339993070502ex_nat > produc4941145339993070502ex_nat ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Matrix__Omat_It__Complex__Ocomplex_J_J,type,
    plus_p8221215230258962133omplex: produc3259542890344722124omplex > produc3259542890344722124omplex > produc3259542890344722124omplex ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    plus_p9057090461656269880at_nat: product_prod_nat_nat > product_prod_nat_nat > product_prod_nat_nat ).

thf(sy_c_Groups_Otimes__class_Otimes_001t__Complex__Ocomplex,type,
    times_times_complex: complex > complex > complex ).

thf(sy_c_Groups_Otimes__class_Otimes_001t__Matrix__Omat_It__Complex__Ocomplex_J,type,
    times_8009071140041733218omplex: mat_complex > mat_complex > mat_complex ).

thf(sy_c_Groups_Otimes__class_Otimes_001t__Matrix__Omat_It__Nat__Onat_J,type,
    times_times_mat_nat: mat_nat > mat_nat > mat_nat ).

thf(sy_c_Groups_Otimes__class_Otimes_001t__Nat__Onat,type,
    times_times_nat: nat > nat > nat ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Complex__Ocomplex,type,
    uminus1482373934393186551omplex: complex > complex ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Matrix__Omat_It__Complex__Ocomplex_J,type,
    uminus467866341702955550omplex: mat_complex > mat_complex ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Matrix__Omat_It__Matrix__Omat_It__Complex__Ocomplex_J_J,type,
    uminus9210244920068684493omplex: mat_mat_complex > mat_mat_complex ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Product____Type__Oprod_It__Complex__Ocomplex_Mt__Complex__Ocomplex_J,type,
    uminus450828861088400436omplex: produc4411394909380815293omplex > produc4411394909380815293omplex ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Product____Type__Oprod_It__Complex__Ocomplex_Mt__Matrix__Omat_It__Complex__Ocomplex_J_J,type,
    uminus7576961702952235319omplex: produc5852522195208431214omplex > produc5852522195208431214omplex ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Product____Type__Oprod_It__Matrix__Omat_It__Complex__Ocomplex_J_Mt__Complex__Ocomplex_J,type,
    uminus5878616461653061197omplex: produc4154176953909257092omplex > produc4154176953909257092omplex ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Product____Type__Oprod_It__Matrix__Omat_It__Complex__Ocomplex_J_Mt__Matrix__Omat_It__Complex__Ocomplex_J_J,type,
    uminus1549559210541551070omplex: produc352478934956084711omplex > produc352478934956084711omplex ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Complex__Ocomplex,type,
    zero_zero_complex: complex ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Nat__Onat,type,
    zero_zero_nat: nat ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    zero_z3979849011205770936at_nat: product_prod_nat_nat ).

thf(sy_c_Groups_Ozero__class_Ozero_001tf__a,type,
    zero_zero_a: a ).

thf(sy_c_If_001_062_It__Complex__Ocomplex_Mt__Complex__Ocomplex_J,type,
    if_complex_complex: $o > ( complex > complex ) > ( complex > complex ) > complex > complex ).

thf(sy_c_If_001_062_It__Nat__Onat_Mt__Nat__Onat_J,type,
    if_nat_nat: $o > ( nat > nat ) > ( nat > nat ) > nat > nat ).

thf(sy_c_If_001t__Complex__Ocomplex,type,
    if_complex: $o > complex > complex > complex ).

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

thf(sy_c_Jordan__Normal__Form__Existence_Oev__block_001t__Complex__Ocomplex,type,
    jordan8042990603089931364omplex: nat > mat_complex > $o ).

thf(sy_c_Jordan__Normal__Form__Existence_Oev__blocks__part_001t__Complex__Ocomplex,type,
    jordan4637981584770492064omplex: nat > mat_complex > $o ).

thf(sy_c_Jordan__Normal__Form__Existence_Oinv__all_H_001t__Complex__Ocomplex,type,
    jordan5032732407113867375omplex: ( mat_complex > nat > nat > $o ) > mat_complex > $o ).

thf(sy_c_Jordan__Normal__Form__Existence_Osame__diag_001t__Complex__Ocomplex,type,
    jordan2620430285385836103omplex: nat > mat_complex > mat_complex > $o ).

thf(sy_c_Matrix_Oappend__rows_001t__Complex__Ocomplex,type,
    append_rows_complex: mat_complex > mat_complex > mat_complex ).

thf(sy_c_Matrix_Oappend__rows_001tf__a,type,
    append_rows_a: mat_a > mat_a > mat_a ).

thf(sy_c_Matrix_Ocarrier__mat_001t__Complex__Ocomplex,type,
    carrier_mat_complex: nat > nat > set_mat_complex ).

thf(sy_c_Matrix_Ocarrier__mat_001t__Matrix__Omat_It__Complex__Ocomplex_J,type,
    carrie8442657464762054641omplex: nat > nat > set_mat_mat_complex ).

thf(sy_c_Matrix_Ocarrier__mat_001t__Nat__Onat,type,
    carrier_mat_nat: nat > nat > set_mat_nat ).

thf(sy_c_Matrix_Ocarrier__mat_001tf__a,type,
    carrier_mat_a: nat > nat > set_mat_a ).

thf(sy_c_Matrix_Odiagonal__mat_001t__Complex__Ocomplex,type,
    diagonal_mat_complex: mat_complex > $o ).

thf(sy_c_Matrix_Odiagonal__mat_001t__Nat__Onat,type,
    diagonal_mat_nat: mat_nat > $o ).

thf(sy_c_Matrix_Odiagonal__mat_001tf__a,type,
    diagonal_mat_a: mat_a > $o ).

thf(sy_c_Matrix_Odim__col_001t__Complex__Ocomplex,type,
    dim_col_complex: mat_complex > nat ).

thf(sy_c_Matrix_Odim__col_001t__Matrix__Omat_It__Complex__Ocomplex_J,type,
    dim_col_mat_complex: mat_mat_complex > nat ).

thf(sy_c_Matrix_Odim__col_001t__Matrix__Omat_It__Matrix__Omat_It__Complex__Ocomplex_J_J,type,
    dim_co7545570394955013482omplex: mat_mat_mat_complex > nat ).

thf(sy_c_Matrix_Odim__col_001t__Matrix__Omat_It__Nat__Onat_J,type,
    dim_col_mat_nat: mat_mat_nat > nat ).

thf(sy_c_Matrix_Odim__col_001t__Matrix__Omat_Itf__a_J,type,
    dim_col_mat_a: mat_mat_a > nat ).

thf(sy_c_Matrix_Odim__col_001t__Nat__Onat,type,
    dim_col_nat: mat_nat > nat ).

thf(sy_c_Matrix_Odim__col_001tf__a,type,
    dim_col_a: mat_a > nat ).

thf(sy_c_Matrix_Odim__row_001t__Complex__Ocomplex,type,
    dim_row_complex: mat_complex > nat ).

thf(sy_c_Matrix_Odim__row_001t__Matrix__Omat_It__Complex__Ocomplex_J,type,
    dim_row_mat_complex: mat_mat_complex > nat ).

thf(sy_c_Matrix_Odim__row_001t__Matrix__Omat_It__Matrix__Omat_It__Complex__Ocomplex_J_J,type,
    dim_ro358828680681214724omplex: mat_mat_mat_complex > nat ).

thf(sy_c_Matrix_Odim__row_001t__Matrix__Omat_It__Nat__Onat_J,type,
    dim_row_mat_nat: mat_mat_nat > nat ).

thf(sy_c_Matrix_Odim__row_001t__Matrix__Omat_Itf__a_J,type,
    dim_row_mat_a: mat_mat_a > nat ).

thf(sy_c_Matrix_Odim__row_001t__Nat__Onat,type,
    dim_row_nat: mat_nat > nat ).

thf(sy_c_Matrix_Odim__row_001tf__a,type,
    dim_row_a: mat_a > nat ).

thf(sy_c_Matrix_Oelements__mat_001t__Complex__Ocomplex,type,
    elements_mat_complex: mat_complex > set_complex ).

thf(sy_c_Matrix_Oelements__mat_001t__Matrix__Omat_It__Complex__Ocomplex_J,type,
    elemen3580889201824698026omplex: mat_mat_complex > set_mat_complex ).

thf(sy_c_Matrix_Oelements__mat_001t__Matrix__Omat_It__Matrix__Omat_It__Complex__Ocomplex_J_J,type,
    elemen9025429746457212737omplex: mat_mat_mat_complex > set_mat_mat_complex ).

thf(sy_c_Matrix_Oelements__mat_001t__Matrix__Omat_It__Nat__Onat_J,type,
    elements_mat_mat_nat: mat_mat_nat > set_mat_nat ).

thf(sy_c_Matrix_Oelements__mat_001t__Matrix__Omat_Itf__a_J,type,
    elements_mat_mat_a: mat_mat_a > set_mat_a ).

thf(sy_c_Matrix_Oelements__mat_001t__Nat__Onat,type,
    elements_mat_nat: mat_nat > set_nat ).

thf(sy_c_Matrix_Oelements__mat_001tf__a,type,
    elements_mat_a: mat_a > set_a ).

thf(sy_c_Matrix_Ofour__block__mat_001t__Complex__Ocomplex,type,
    four_b559179830521662709omplex: mat_complex > mat_complex > mat_complex > mat_complex > mat_complex ).

thf(sy_c_Matrix_Ofour__block__mat_001t__Matrix__Omat_It__Complex__Ocomplex_J,type,
    four_b6598977876875187360omplex: mat_mat_complex > mat_mat_complex > mat_mat_complex > mat_mat_complex > mat_mat_complex ).

thf(sy_c_Matrix_Ofour__block__mat_001t__Nat__Onat,type,
    four_block_mat_nat: mat_nat > mat_nat > mat_nat > mat_nat > mat_nat ).

thf(sy_c_Matrix_Ofour__block__mat_001tf__a,type,
    four_block_mat_a: mat_a > mat_a > mat_a > mat_a > mat_a ).

thf(sy_c_Matrix_Oindex__mat_001t__Complex__Ocomplex,type,
    index_mat_complex: mat_complex > product_prod_nat_nat > complex ).

thf(sy_c_Matrix_Oindex__mat_001t__Matrix__Omat_It__Complex__Ocomplex_J,type,
    index_7093623372566408491omplex: mat_mat_complex > product_prod_nat_nat > mat_complex ).

thf(sy_c_Matrix_Oindex__mat_001t__Matrix__Omat_It__Matrix__Omat_It__Complex__Ocomplex_J_J,type,
    index_4240009552160427392omplex: mat_mat_mat_complex > product_prod_nat_nat > mat_mat_complex ).

thf(sy_c_Matrix_Oindex__mat_001t__Matrix__Omat_It__Nat__Onat_J,type,
    index_mat_mat_nat: mat_mat_nat > product_prod_nat_nat > mat_nat ).

thf(sy_c_Matrix_Oindex__mat_001t__Matrix__Omat_Itf__a_J,type,
    index_mat_mat_a: mat_mat_a > product_prod_nat_nat > mat_a ).

thf(sy_c_Matrix_Oindex__mat_001t__Nat__Onat,type,
    index_mat_nat: mat_nat > product_prod_nat_nat > nat ).

thf(sy_c_Matrix_Oindex__mat_001tf__a,type,
    index_mat_a: mat_a > product_prod_nat_nat > a ).

thf(sy_c_Matrix_Omap__mat_001t__Complex__Ocomplex_001t__Complex__Ocomplex,type,
    map_ma6508466363326507375omplex: ( complex > complex ) > mat_complex > mat_complex ).

thf(sy_c_Matrix_Omap__mat_001t__Complex__Ocomplex_001t__Nat__Onat,type,
    map_mat_complex_nat: ( complex > nat ) > mat_complex > mat_nat ).

thf(sy_c_Matrix_Omap__mat_001t__Complex__Ocomplex_001tf__a,type,
    map_mat_complex_a: ( complex > a ) > mat_complex > mat_a ).

thf(sy_c_Matrix_Omap__mat_001t__Matrix__Omat_It__Complex__Ocomplex_J_001t__Complex__Ocomplex,type,
    map_ma943020573011627268omplex: ( mat_complex > complex ) > mat_mat_complex > mat_complex ).

thf(sy_c_Matrix_Omap__mat_001t__Matrix__Omat_It__Complex__Ocomplex_J_001tf__a,type,
    map_ma1327204579214447656plex_a: ( mat_complex > a ) > mat_mat_complex > mat_a ).

thf(sy_c_Matrix_Omap__mat_001t__Nat__Onat_001t__Complex__Ocomplex,type,
    map_mat_nat_complex: ( nat > complex ) > mat_nat > mat_complex ).

thf(sy_c_Matrix_Omap__mat_001t__Nat__Onat_001t__Nat__Onat,type,
    map_mat_nat_nat: ( nat > nat ) > mat_nat > mat_nat ).

thf(sy_c_Matrix_Omap__mat_001t__Nat__Onat_001tf__a,type,
    map_mat_nat_a: ( nat > a ) > mat_nat > mat_a ).

thf(sy_c_Matrix_Omap__mat_001tf__a_001t__Complex__Ocomplex,type,
    map_mat_a_complex: ( a > complex ) > mat_a > mat_complex ).

thf(sy_c_Matrix_Omap__mat_001tf__a_001t__Nat__Onat,type,
    map_mat_a_nat: ( a > nat ) > mat_a > mat_nat ).

thf(sy_c_Matrix_Omap__mat_001tf__a_001tf__a,type,
    map_mat_a_a: ( a > a ) > mat_a > mat_a ).

thf(sy_c_Matrix_Osmult__mat_001t__Complex__Ocomplex,type,
    smult_mat_complex: complex > mat_complex > mat_complex ).

thf(sy_c_Matrix_Osmult__mat_001t__Matrix__Omat_It__Complex__Ocomplex_J,type,
    smult_779153608156729276omplex: mat_complex > mat_mat_complex > mat_mat_complex ).

thf(sy_c_Matrix_Osmult__mat_001t__Matrix__Omat_It__Nat__Onat_J,type,
    smult_mat_mat_nat: mat_nat > mat_mat_nat > mat_mat_nat ).

thf(sy_c_Matrix_Osmult__mat_001t__Nat__Onat,type,
    smult_mat_nat: nat > mat_nat > mat_nat ).

thf(sy_c_Matrix_Otranspose__mat_001t__Complex__Ocomplex,type,
    transp3074176993011536131omplex: mat_complex > mat_complex ).

thf(sy_c_Matrix_Otranspose__mat_001t__Matrix__Omat_It__Complex__Ocomplex_J,type,
    transp4906945491372815122omplex: mat_mat_complex > mat_mat_complex ).

thf(sy_c_Matrix_Otranspose__mat_001t__Nat__Onat,type,
    transpose_mat_nat: mat_nat > mat_nat ).

thf(sy_c_Matrix_Otranspose__mat_001tf__a,type,
    transpose_mat_a: mat_a > mat_a ).

thf(sy_c_Matrix_Oupdate__mat_001t__Complex__Ocomplex,type,
    update_mat_complex: mat_complex > product_prod_nat_nat > complex > mat_complex ).

thf(sy_c_Matrix_Oupdate__mat_001t__Matrix__Omat_It__Complex__Ocomplex_J,type,
    update2332872114388419836omplex: mat_mat_complex > product_prod_nat_nat > mat_complex > mat_mat_complex ).

thf(sy_c_Matrix_Oupdate__mat_001t__Nat__Onat,type,
    update_mat_nat: mat_nat > product_prod_nat_nat > nat > mat_nat ).

thf(sy_c_Matrix_Oupdate__mat_001tf__a,type,
    update_mat_a: mat_a > product_prod_nat_nat > a > mat_a ).

thf(sy_c_Matrix_Oupper__triangular_001t__Complex__Ocomplex,type,
    upper_4850907204721561915omplex: mat_complex > $o ).

thf(sy_c_Matrix_Oupper__triangular_001t__Nat__Onat,type,
    upper_triangular_nat: mat_nat > $o ).

thf(sy_c_Matrix_Oupper__triangular_001tf__a,type,
    upper_triangular_a: mat_a > $o ).

thf(sy_c_Matrix_Ozero__mat_001t__Complex__Ocomplex,type,
    zero_mat_complex: nat > nat > mat_complex ).

thf(sy_c_Matrix_Ozero__mat_001t__Nat__Onat,type,
    zero_mat_nat: nat > nat > mat_nat ).

thf(sy_c_Matrix_Ozero__mat_001tf__a,type,
    zero_mat_a: nat > nat > mat_a ).

thf(sy_c_Nat_OSuc,type,
    suc: nat > nat ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Complex__Ocomplex,type,
    ord_less_complex: complex > complex > $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__eq_001t__Complex__Ocomplex,type,
    ord_less_eq_complex: complex > complex > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Matrix__Omat_It__Complex__Ocomplex_J,type,
    ord_le1403324449407493959omplex: mat_complex > mat_complex > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Matrix__Omat_It__Nat__Onat_J,type,
    ord_less_eq_mat_nat: mat_nat > mat_nat > $o ).

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

thf(sy_c_Product__Type_OPair_001_062_It__Nat__Onat_M_062_It__Nat__Onat_Mt__Nat__Onat_J_J_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J_J,type,
    produc3209952032786966637at_nat: ( nat > nat > nat ) > produc7248412053542808358at_nat > produc4471711990508489141at_nat ).

thf(sy_c_Product__Type_OPair_001t__Complex__Ocomplex_001t__Complex__Ocomplex,type,
    produc101793102246108661omplex: complex > complex > produc4411394909380815293omplex ).

thf(sy_c_Product__Type_OPair_001t__Complex__Ocomplex_001t__Matrix__Omat_It__Complex__Ocomplex_J,type,
    produc7591729284011983776omplex: complex > mat_complex > produc5852522195208431214omplex ).

thf(sy_c_Product__Type_OPair_001t__Matrix__Omat_It__Complex__Ocomplex_J_001t__Complex__Ocomplex,type,
    produc5669106556224566526omplex: mat_complex > complex > produc4154176953909257092omplex ).

thf(sy_c_Product__Type_OPair_001t__Matrix__Omat_It__Complex__Ocomplex_J_001t__Matrix__Omat_It__Complex__Ocomplex_J,type,
    produc3658446505030690647omplex: mat_complex > mat_complex > produc352478934956084711omplex ).

thf(sy_c_Product__Type_OPair_001t__Matrix__Omat_It__Complex__Ocomplex_J_001t__Nat__Onat,type,
    produc3916067632315525152ex_nat: mat_complex > nat > produc4941145339993070502ex_nat ).

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__Matrix__Omat_It__Complex__Ocomplex_J,type,
    produc4998868960714853886omplex: nat > mat_complex > produc3259542890344722124omplex ).

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__Nat__Onat,type,
    product_Pair_nat_nat: nat > nat > product_prod_nat_nat ).

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001t__Product____Type__Oprod_It__Nat__Onat_Mt__Nat__Onat_J,type,
    produc487386426758144856at_nat: nat > product_prod_nat_nat > produc7248412053542808358at_nat ).

thf(sy_c_Projective__Measurements_Odensity__collapse,type,
    projec3470689467825365843llapse: mat_complex > mat_complex > mat_complex ).

thf(sy_c_Projective__Measurements_Odiag__elem__indices_001t__Complex__Ocomplex,type,
    projec1944845285785509306omplex: complex > mat_complex > set_nat ).

thf(sy_c_Projective__Measurements_Odiag__elem__indices_001t__Matrix__Omat_It__Complex__Ocomplex_J,type,
    projec62243536223845275omplex: mat_complex > mat_mat_complex > set_nat ).

thf(sy_c_Projective__Measurements_Odiag__elem__indices_001t__Nat__Onat,type,
    projec3388465016253909212es_nat: nat > mat_nat > set_nat ).

thf(sy_c_Projective__Measurements_Odiag__elem__indices_001tf__a,type,
    projec8096995296758946034ices_a: a > mat_a > set_nat ).

thf(sy_c_Projective__Measurements_Odiag__elems_001t__Complex__Ocomplex,type,
    projec2809893096078145286omplex: mat_complex > set_complex ).

thf(sy_c_Projective__Measurements_Odiag__elems_001t__Matrix__Omat_It__Complex__Ocomplex_J,type,
    projec1765981369499306831omplex: mat_mat_complex > set_mat_complex ).

thf(sy_c_Projective__Measurements_Odiag__elems_001t__Matrix__Omat_It__Matrix__Omat_It__Complex__Ocomplex_J_J,type,
    projec3672609643092728412omplex: mat_mat_mat_complex > set_mat_mat_complex ).

thf(sy_c_Projective__Measurements_Odiag__elems_001t__Matrix__Omat_It__Nat__Onat_J,type,
    projec9084014818998098289at_nat: mat_mat_nat > set_mat_nat ).

thf(sy_c_Projective__Measurements_Odiag__elems_001t__Matrix__Omat_Itf__a_J,type,
    projec9066127685012477747_mat_a: mat_mat_a > set_mat_a ).

thf(sy_c_Projective__Measurements_Odiag__elems_001t__Nat__Onat,type,
    projec8639844951311350312ms_nat: mat_nat > set_nat ).

thf(sy_c_Projective__Measurements_Odiag__elems_001tf__a,type,
    projec3180294917645509286lems_a: mat_a > set_a ).

thf(sy_c_Projective__Measurements_Ohermitian__decomp_001t__Complex__Ocomplex,type,
    projec5943904436471448624omplex: mat_complex > mat_complex > mat_complex > $o ).

thf(sy_c_Set_OCollect_001t__Matrix__Omat_It__Complex__Ocomplex_J,type,
    collect_mat_complex: ( mat_complex > $o ) > set_mat_complex ).

thf(sy_c_Set_OCollect_001t__Matrix__Omat_It__Matrix__Omat_It__Complex__Ocomplex_J_J,type,
    collec8095434345095979609omplex: ( mat_mat_complex > $o ) > set_mat_mat_complex ).

thf(sy_c_Set_OCollect_001t__Matrix__Omat_It__Nat__Onat_J,type,
    collect_mat_nat: ( mat_nat > $o ) > set_mat_nat ).

thf(sy_c_Set_OCollect_001t__Matrix__Omat_Itf__a_J,type,
    collect_mat_a: ( mat_a > $o ) > set_mat_a ).

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

thf(sy_c_Set_OCollect_001tf__a,type,
    collect_a: ( a > $o ) > set_a ).

thf(sy_c_member_001t__Complex__Ocomplex,type,
    member_complex: complex > set_complex > $o ).

thf(sy_c_member_001t__Matrix__Omat_It__Complex__Ocomplex_J,type,
    member_mat_complex: mat_complex > set_mat_complex > $o ).

thf(sy_c_member_001t__Matrix__Omat_It__Matrix__Omat_It__Complex__Ocomplex_J_J,type,
    member7752848204589936667omplex: mat_mat_complex > set_mat_mat_complex > $o ).

thf(sy_c_member_001t__Matrix__Omat_It__Nat__Onat_J,type,
    member_mat_nat: mat_nat > set_mat_nat > $o ).

thf(sy_c_member_001t__Matrix__Omat_Itf__a_J,type,
    member_mat_a: mat_a > set_mat_a > $o ).

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

thf(sy_c_member_001tf__a,type,
    member_a: a > set_a > $o ).

thf(sy_v_A1,type,
    a1: mat_a ).

thf(sy_v_A2,type,
    a2: mat_a ).

thf(sy_v_A____,type,
    a3: mat_a ).

thf(sy_v_B1,type,
    b1: mat_a ).

thf(sy_v_B2,type,
    b2: mat_a ).

thf(sy_v_B____,type,
    b: mat_a ).

thf(sy_v_i____,type,
    i: nat ).

thf(sy_v_j____,type,
    j: nat ).

% Relevant facts (1100)
thf(fact_0_assms_I2_J,axiom,
    ( ( dim_col_a @ a1 )
    = ( dim_col_a @ b1 ) ) ).

% assms(2)
thf(fact_1_assms_I1_J,axiom,
    ( ( dim_row_a @ a1 )
    = ( dim_row_a @ b1 ) ) ).

% assms(1)
thf(fact_2_assms_I3_J,axiom,
    ( ( four_block_mat_a @ a1 @ ( zero_mat_a @ ( dim_row_a @ a1 ) @ ( dim_col_a @ a2 ) ) @ ( zero_mat_a @ ( dim_row_a @ a2 ) @ ( dim_col_a @ a1 ) ) @ a2 )
    = ( four_block_mat_a @ b1 @ ( zero_mat_a @ ( dim_row_a @ b1 ) @ ( dim_col_a @ b2 ) ) @ ( zero_mat_a @ ( dim_row_a @ b2 ) @ ( dim_col_a @ b1 ) ) @ b2 ) ) ).

% assms(3)
thf(fact_3_B__def,axiom,
    ( b
    = ( four_block_mat_a @ b1 @ ( zero_mat_a @ ( dim_row_a @ b1 ) @ ( dim_col_a @ b2 ) ) @ ( zero_mat_a @ ( dim_row_a @ b2 ) @ ( dim_col_a @ b1 ) ) @ b2 ) ) ).

% B_def
thf(fact_4_ij_I2_J,axiom,
    ord_less_nat @ j @ ( dim_col_a @ b1 ) ).

% ij(2)
thf(fact_5_ij_I1_J,axiom,
    ord_less_nat @ i @ ( dim_row_a @ b1 ) ).

% ij(1)
thf(fact_6_A__def,axiom,
    ( a3
    = ( four_block_mat_a @ a1 @ ( zero_mat_a @ ( dim_row_a @ a1 ) @ ( dim_col_a @ a2 ) ) @ ( zero_mat_a @ ( dim_row_a @ a2 ) @ ( dim_col_a @ a1 ) ) @ a2 ) ) ).

% A_def
thf(fact_7_calculation,axiom,
    ( ( index_mat_a @ a1 @ ( product_Pair_nat_nat @ i @ j ) )
    = ( index_mat_a @ a3 @ ( product_Pair_nat_nat @ i @ j ) ) ) ).

% calculation
thf(fact_8__092_060open_062i_A_060_Adim__row_AA1_092_060close_062,axiom,
    ord_less_nat @ i @ ( dim_row_a @ a1 ) ).

% \<open>i < dim_row A1\<close>
thf(fact_9__092_060open_062j_A_060_Adim__col_AA1_092_060close_062,axiom,
    ord_less_nat @ j @ ( dim_col_a @ a1 ) ).

% \<open>j < dim_col A1\<close>
thf(fact_10_assoc__four__block__mat,axiom,
    ! [A: mat_nat,B: mat_nat,C: mat_nat] :
      ( ( four_block_mat_nat @ A @ ( zero_mat_nat @ ( dim_row_nat @ A ) @ ( dim_col_nat @ ( four_block_mat_nat @ B @ ( zero_mat_nat @ ( dim_row_nat @ B ) @ ( dim_col_nat @ C ) ) @ ( zero_mat_nat @ ( dim_row_nat @ C ) @ ( dim_col_nat @ B ) ) @ C ) ) ) @ ( zero_mat_nat @ ( dim_row_nat @ ( four_block_mat_nat @ B @ ( zero_mat_nat @ ( dim_row_nat @ B ) @ ( dim_col_nat @ C ) ) @ ( zero_mat_nat @ ( dim_row_nat @ C ) @ ( dim_col_nat @ B ) ) @ C ) ) @ ( dim_col_nat @ A ) ) @ ( four_block_mat_nat @ B @ ( zero_mat_nat @ ( dim_row_nat @ B ) @ ( dim_col_nat @ C ) ) @ ( zero_mat_nat @ ( dim_row_nat @ C ) @ ( dim_col_nat @ B ) ) @ C ) )
      = ( four_block_mat_nat @ ( four_block_mat_nat @ A @ ( zero_mat_nat @ ( dim_row_nat @ A ) @ ( dim_col_nat @ B ) ) @ ( zero_mat_nat @ ( dim_row_nat @ B ) @ ( dim_col_nat @ A ) ) @ B ) @ ( zero_mat_nat @ ( dim_row_nat @ ( four_block_mat_nat @ A @ ( zero_mat_nat @ ( dim_row_nat @ A ) @ ( dim_col_nat @ B ) ) @ ( zero_mat_nat @ ( dim_row_nat @ B ) @ ( dim_col_nat @ A ) ) @ B ) ) @ ( dim_col_nat @ C ) ) @ ( zero_mat_nat @ ( dim_row_nat @ C ) @ ( dim_col_nat @ ( four_block_mat_nat @ A @ ( zero_mat_nat @ ( dim_row_nat @ A ) @ ( dim_col_nat @ B ) ) @ ( zero_mat_nat @ ( dim_row_nat @ B ) @ ( dim_col_nat @ A ) ) @ B ) ) ) @ C ) ) ).

% assoc_four_block_mat
thf(fact_11_assoc__four__block__mat,axiom,
    ! [A: mat_complex,B: mat_complex,C: mat_complex] :
      ( ( four_b559179830521662709omplex @ A @ ( zero_mat_complex @ ( dim_row_complex @ A ) @ ( dim_col_complex @ ( four_b559179830521662709omplex @ B @ ( zero_mat_complex @ ( dim_row_complex @ B ) @ ( dim_col_complex @ C ) ) @ ( zero_mat_complex @ ( dim_row_complex @ C ) @ ( dim_col_complex @ B ) ) @ C ) ) ) @ ( zero_mat_complex @ ( dim_row_complex @ ( four_b559179830521662709omplex @ B @ ( zero_mat_complex @ ( dim_row_complex @ B ) @ ( dim_col_complex @ C ) ) @ ( zero_mat_complex @ ( dim_row_complex @ C ) @ ( dim_col_complex @ B ) ) @ C ) ) @ ( dim_col_complex @ A ) ) @ ( four_b559179830521662709omplex @ B @ ( zero_mat_complex @ ( dim_row_complex @ B ) @ ( dim_col_complex @ C ) ) @ ( zero_mat_complex @ ( dim_row_complex @ C ) @ ( dim_col_complex @ B ) ) @ C ) )
      = ( four_b559179830521662709omplex @ ( four_b559179830521662709omplex @ A @ ( zero_mat_complex @ ( dim_row_complex @ A ) @ ( dim_col_complex @ B ) ) @ ( zero_mat_complex @ ( dim_row_complex @ B ) @ ( dim_col_complex @ A ) ) @ B ) @ ( zero_mat_complex @ ( dim_row_complex @ ( four_b559179830521662709omplex @ A @ ( zero_mat_complex @ ( dim_row_complex @ A ) @ ( dim_col_complex @ B ) ) @ ( zero_mat_complex @ ( dim_row_complex @ B ) @ ( dim_col_complex @ A ) ) @ B ) ) @ ( dim_col_complex @ C ) ) @ ( zero_mat_complex @ ( dim_row_complex @ C ) @ ( dim_col_complex @ ( four_b559179830521662709omplex @ A @ ( zero_mat_complex @ ( dim_row_complex @ A ) @ ( dim_col_complex @ B ) ) @ ( zero_mat_complex @ ( dim_row_complex @ B ) @ ( dim_col_complex @ A ) ) @ B ) ) ) @ C ) ) ).

% assoc_four_block_mat
thf(fact_12_assoc__four__block__mat,axiom,
    ! [A: mat_a,B: mat_a,C: mat_a] :
      ( ( four_block_mat_a @ A @ ( zero_mat_a @ ( dim_row_a @ A ) @ ( dim_col_a @ ( four_block_mat_a @ B @ ( zero_mat_a @ ( dim_row_a @ B ) @ ( dim_col_a @ C ) ) @ ( zero_mat_a @ ( dim_row_a @ C ) @ ( dim_col_a @ B ) ) @ C ) ) ) @ ( zero_mat_a @ ( dim_row_a @ ( four_block_mat_a @ B @ ( zero_mat_a @ ( dim_row_a @ B ) @ ( dim_col_a @ C ) ) @ ( zero_mat_a @ ( dim_row_a @ C ) @ ( dim_col_a @ B ) ) @ C ) ) @ ( dim_col_a @ A ) ) @ ( four_block_mat_a @ B @ ( zero_mat_a @ ( dim_row_a @ B ) @ ( dim_col_a @ C ) ) @ ( zero_mat_a @ ( dim_row_a @ C ) @ ( dim_col_a @ B ) ) @ C ) )
      = ( four_block_mat_a @ ( four_block_mat_a @ A @ ( zero_mat_a @ ( dim_row_a @ A ) @ ( dim_col_a @ B ) ) @ ( zero_mat_a @ ( dim_row_a @ B ) @ ( dim_col_a @ A ) ) @ B ) @ ( zero_mat_a @ ( dim_row_a @ ( four_block_mat_a @ A @ ( zero_mat_a @ ( dim_row_a @ A ) @ ( dim_col_a @ B ) ) @ ( zero_mat_a @ ( dim_row_a @ B ) @ ( dim_col_a @ A ) ) @ B ) ) @ ( dim_col_a @ C ) ) @ ( zero_mat_a @ ( dim_row_a @ C ) @ ( dim_col_a @ ( four_block_mat_a @ A @ ( zero_mat_a @ ( dim_row_a @ A ) @ ( dim_col_a @ B ) ) @ ( zero_mat_a @ ( dim_row_a @ B ) @ ( dim_col_a @ A ) ) @ B ) ) ) @ C ) ) ).

% assoc_four_block_mat
thf(fact_13_index__zero__mat_I3_J,axiom,
    ! [Nr: nat,Nc: nat] :
      ( ( dim_col_complex @ ( zero_mat_complex @ Nr @ Nc ) )
      = Nc ) ).

% index_zero_mat(3)
thf(fact_14_index__zero__mat_I3_J,axiom,
    ! [Nr: nat,Nc: nat] :
      ( ( dim_col_nat @ ( zero_mat_nat @ Nr @ Nc ) )
      = Nc ) ).

% index_zero_mat(3)
thf(fact_15_index__zero__mat_I3_J,axiom,
    ! [Nr: nat,Nc: nat] :
      ( ( dim_col_a @ ( zero_mat_a @ Nr @ Nc ) )
      = Nc ) ).

% index_zero_mat(3)
thf(fact_16_index__zero__mat_I2_J,axiom,
    ! [Nr: nat,Nc: nat] :
      ( ( dim_row_nat @ ( zero_mat_nat @ Nr @ Nc ) )
      = Nr ) ).

% index_zero_mat(2)
thf(fact_17_index__zero__mat_I2_J,axiom,
    ! [Nr: nat,Nc: nat] :
      ( ( dim_row_complex @ ( zero_mat_complex @ Nr @ Nc ) )
      = Nr ) ).

% index_zero_mat(2)
thf(fact_18_index__zero__mat_I2_J,axiom,
    ! [Nr: nat,Nc: nat] :
      ( ( dim_row_a @ ( zero_mat_a @ Nr @ Nc ) )
      = Nr ) ).

% index_zero_mat(2)
thf(fact_19_cong__four__block__mat,axiom,
    ! [A1: mat_complex,B1: mat_complex,A2: mat_complex,B2: mat_complex,A3: mat_complex,B3: mat_complex,A4: mat_complex,B4: mat_complex] :
      ( ( A1 = B1 )
     => ( ( A2 = B2 )
       => ( ( A3 = B3 )
         => ( ( A4 = B4 )
           => ( ( four_b559179830521662709omplex @ A1 @ A2 @ A3 @ A4 )
              = ( four_b559179830521662709omplex @ B1 @ B2 @ B3 @ B4 ) ) ) ) ) ) ).

% cong_four_block_mat
thf(fact_20_cong__four__block__mat,axiom,
    ! [A1: mat_a,B1: mat_a,A2: mat_a,B2: mat_a,A3: mat_a,B3: mat_a,A4: mat_a,B4: mat_a] :
      ( ( A1 = B1 )
     => ( ( A2 = B2 )
       => ( ( A3 = B3 )
         => ( ( A4 = B4 )
           => ( ( four_block_mat_a @ A1 @ A2 @ A3 @ A4 )
              = ( four_block_mat_a @ B1 @ B2 @ B3 @ B4 ) ) ) ) ) ) ).

% cong_four_block_mat
thf(fact_21_bezw_Ocases,axiom,
    ! [X: product_prod_nat_nat] :
      ~ ! [X2: nat,Y: nat] :
          ( X
         != ( product_Pair_nat_nat @ X2 @ Y ) ) ).

% bezw.cases
thf(fact_22_prod_Osimps_I1_J,axiom,
    ! [X1: mat_complex,X22: mat_complex,Y1: mat_complex,Y2: mat_complex] :
      ( ( ( produc3658446505030690647omplex @ X1 @ X22 )
        = ( produc3658446505030690647omplex @ Y1 @ Y2 ) )
      = ( ( X1 = Y1 )
        & ( X22 = Y2 ) ) ) ).

% prod.simps(1)
thf(fact_23_prod_Osimps_I1_J,axiom,
    ! [X1: mat_complex,X22: nat,Y1: mat_complex,Y2: nat] :
      ( ( ( produc3916067632315525152ex_nat @ X1 @ X22 )
        = ( produc3916067632315525152ex_nat @ Y1 @ Y2 ) )
      = ( ( X1 = Y1 )
        & ( X22 = Y2 ) ) ) ).

% prod.simps(1)
thf(fact_24_prod_Osimps_I1_J,axiom,
    ! [X1: nat,X22: product_prod_nat_nat,Y1: nat,Y2: product_prod_nat_nat] :
      ( ( ( produc487386426758144856at_nat @ X1 @ X22 )
        = ( produc487386426758144856at_nat @ Y1 @ Y2 ) )
      = ( ( X1 = Y1 )
        & ( X22 = Y2 ) ) ) ).

% prod.simps(1)
thf(fact_25_prod_Osimps_I1_J,axiom,
    ! [X1: nat,X22: mat_complex,Y1: nat,Y2: mat_complex] :
      ( ( ( produc4998868960714853886omplex @ X1 @ X22 )
        = ( produc4998868960714853886omplex @ Y1 @ Y2 ) )
      = ( ( X1 = Y1 )
        & ( X22 = Y2 ) ) ) ).

% prod.simps(1)
thf(fact_26_prod_Osimps_I1_J,axiom,
    ! [X1: nat > nat > nat,X22: produc7248412053542808358at_nat,Y1: nat > nat > nat,Y2: produc7248412053542808358at_nat] :
      ( ( ( produc3209952032786966637at_nat @ X1 @ X22 )
        = ( produc3209952032786966637at_nat @ Y1 @ Y2 ) )
      = ( ( X1 = Y1 )
        & ( X22 = Y2 ) ) ) ).

% prod.simps(1)
thf(fact_27_prod_Osimps_I1_J,axiom,
    ! [X1: nat,X22: nat,Y1: nat,Y2: nat] :
      ( ( ( product_Pair_nat_nat @ X1 @ X22 )
        = ( product_Pair_nat_nat @ Y1 @ Y2 ) )
      = ( ( X1 = Y1 )
        & ( X22 = Y2 ) ) ) ).

% prod.simps(1)
thf(fact_28_mat__eq__iff,axiom,
    ( ( ^ [Y3: mat_mat_complex,Z: mat_mat_complex] : ( Y3 = Z ) )
    = ( ^ [X3: mat_mat_complex,Y4: mat_mat_complex] :
          ( ( ( dim_row_mat_complex @ X3 )
            = ( dim_row_mat_complex @ Y4 ) )
          & ( ( dim_col_mat_complex @ X3 )
            = ( dim_col_mat_complex @ Y4 ) )
          & ! [I: nat,J: nat] :
              ( ( ord_less_nat @ I @ ( dim_row_mat_complex @ Y4 ) )
             => ( ( ord_less_nat @ J @ ( dim_col_mat_complex @ Y4 ) )
               => ( ( index_7093623372566408491omplex @ X3 @ ( product_Pair_nat_nat @ I @ J ) )
                  = ( index_7093623372566408491omplex @ Y4 @ ( product_Pair_nat_nat @ I @ J ) ) ) ) ) ) ) ) ).

% mat_eq_iff
thf(fact_29_mat__eq__iff,axiom,
    ( ( ^ [Y3: mat_nat,Z: mat_nat] : ( Y3 = Z ) )
    = ( ^ [X3: mat_nat,Y4: mat_nat] :
          ( ( ( dim_row_nat @ X3 )
            = ( dim_row_nat @ Y4 ) )
          & ( ( dim_col_nat @ X3 )
            = ( dim_col_nat @ Y4 ) )
          & ! [I: nat,J: nat] :
              ( ( ord_less_nat @ I @ ( dim_row_nat @ Y4 ) )
             => ( ( ord_less_nat @ J @ ( dim_col_nat @ Y4 ) )
               => ( ( index_mat_nat @ X3 @ ( product_Pair_nat_nat @ I @ J ) )
                  = ( index_mat_nat @ Y4 @ ( product_Pair_nat_nat @ I @ J ) ) ) ) ) ) ) ) ).

% mat_eq_iff
thf(fact_30_mat__eq__iff,axiom,
    ( ( ^ [Y3: mat_complex,Z: mat_complex] : ( Y3 = Z ) )
    = ( ^ [X3: mat_complex,Y4: mat_complex] :
          ( ( ( dim_row_complex @ X3 )
            = ( dim_row_complex @ Y4 ) )
          & ( ( dim_col_complex @ X3 )
            = ( dim_col_complex @ Y4 ) )
          & ! [I: nat,J: nat] :
              ( ( ord_less_nat @ I @ ( dim_row_complex @ Y4 ) )
             => ( ( ord_less_nat @ J @ ( dim_col_complex @ Y4 ) )
               => ( ( index_mat_complex @ X3 @ ( product_Pair_nat_nat @ I @ J ) )
                  = ( index_mat_complex @ Y4 @ ( product_Pair_nat_nat @ I @ J ) ) ) ) ) ) ) ) ).

% mat_eq_iff
thf(fact_31_mat__eq__iff,axiom,
    ( ( ^ [Y3: mat_a,Z: mat_a] : ( Y3 = Z ) )
    = ( ^ [X3: mat_a,Y4: mat_a] :
          ( ( ( dim_row_a @ X3 )
            = ( dim_row_a @ Y4 ) )
          & ( ( dim_col_a @ X3 )
            = ( dim_col_a @ Y4 ) )
          & ! [I: nat,J: nat] :
              ( ( ord_less_nat @ I @ ( dim_row_a @ Y4 ) )
             => ( ( ord_less_nat @ J @ ( dim_col_a @ Y4 ) )
               => ( ( index_mat_a @ X3 @ ( product_Pair_nat_nat @ I @ J ) )
                  = ( index_mat_a @ Y4 @ ( product_Pair_nat_nat @ I @ J ) ) ) ) ) ) ) ) ).

% mat_eq_iff
thf(fact_32_eq__matI,axiom,
    ! [B: mat_mat_complex,A: mat_mat_complex] :
      ( ! [I2: nat,J2: nat] :
          ( ( ord_less_nat @ I2 @ ( dim_row_mat_complex @ B ) )
         => ( ( ord_less_nat @ J2 @ ( dim_col_mat_complex @ B ) )
           => ( ( index_7093623372566408491omplex @ A @ ( product_Pair_nat_nat @ I2 @ J2 ) )
              = ( index_7093623372566408491omplex @ B @ ( product_Pair_nat_nat @ I2 @ J2 ) ) ) ) )
     => ( ( ( dim_row_mat_complex @ A )
          = ( dim_row_mat_complex @ B ) )
       => ( ( ( dim_col_mat_complex @ A )
            = ( dim_col_mat_complex @ B ) )
         => ( A = B ) ) ) ) ).

% eq_matI
thf(fact_33_eq__matI,axiom,
    ! [B: mat_nat,A: mat_nat] :
      ( ! [I2: nat,J2: nat] :
          ( ( ord_less_nat @ I2 @ ( dim_row_nat @ B ) )
         => ( ( ord_less_nat @ J2 @ ( dim_col_nat @ B ) )
           => ( ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I2 @ J2 ) )
              = ( index_mat_nat @ B @ ( product_Pair_nat_nat @ I2 @ J2 ) ) ) ) )
     => ( ( ( dim_row_nat @ A )
          = ( dim_row_nat @ B ) )
       => ( ( ( dim_col_nat @ A )
            = ( dim_col_nat @ B ) )
         => ( A = B ) ) ) ) ).

% eq_matI
thf(fact_34_eq__matI,axiom,
    ! [B: mat_complex,A: mat_complex] :
      ( ! [I2: nat,J2: nat] :
          ( ( ord_less_nat @ I2 @ ( dim_row_complex @ B ) )
         => ( ( ord_less_nat @ J2 @ ( dim_col_complex @ B ) )
           => ( ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I2 @ J2 ) )
              = ( index_mat_complex @ B @ ( product_Pair_nat_nat @ I2 @ J2 ) ) ) ) )
     => ( ( ( dim_row_complex @ A )
          = ( dim_row_complex @ B ) )
       => ( ( ( dim_col_complex @ A )
            = ( dim_col_complex @ B ) )
         => ( A = B ) ) ) ) ).

% eq_matI
thf(fact_35_eq__matI,axiom,
    ! [B: mat_a,A: mat_a] :
      ( ! [I2: nat,J2: nat] :
          ( ( ord_less_nat @ I2 @ ( dim_row_a @ B ) )
         => ( ( ord_less_nat @ J2 @ ( dim_col_a @ B ) )
           => ( ( index_mat_a @ A @ ( product_Pair_nat_nat @ I2 @ J2 ) )
              = ( index_mat_a @ B @ ( product_Pair_nat_nat @ I2 @ J2 ) ) ) ) )
     => ( ( ( dim_row_a @ A )
          = ( dim_row_a @ B ) )
       => ( ( ( dim_col_a @ A )
            = ( dim_col_a @ B ) )
         => ( A = B ) ) ) ) ).

% eq_matI
thf(fact_36_prod__induct4,axiom,
    ! [P: produc4471711990508489141at_nat > $o,X: produc4471711990508489141at_nat] :
      ( ! [A5: nat > nat > nat,B5: nat,C2: nat,D: nat] : ( P @ ( produc3209952032786966637at_nat @ A5 @ ( produc487386426758144856at_nat @ B5 @ ( product_Pair_nat_nat @ C2 @ D ) ) ) )
     => ( P @ X ) ) ).

% prod_induct4
thf(fact_37_prod__induct3,axiom,
    ! [P: produc7248412053542808358at_nat > $o,X: produc7248412053542808358at_nat] :
      ( ! [A5: nat,B5: nat,C2: nat] : ( P @ ( produc487386426758144856at_nat @ A5 @ ( product_Pair_nat_nat @ B5 @ C2 ) ) )
     => ( P @ X ) ) ).

% prod_induct3
thf(fact_38_prod__induct3,axiom,
    ! [P: produc4471711990508489141at_nat > $o,X: produc4471711990508489141at_nat] :
      ( ! [A5: nat > nat > nat,B5: nat,C2: product_prod_nat_nat] : ( P @ ( produc3209952032786966637at_nat @ A5 @ ( produc487386426758144856at_nat @ B5 @ C2 ) ) )
     => ( P @ X ) ) ).

% prod_induct3
thf(fact_39_prod__cases4,axiom,
    ! [Y5: produc4471711990508489141at_nat] :
      ~ ! [A5: nat > nat > nat,B5: nat,C2: nat,D: nat] :
          ( Y5
         != ( produc3209952032786966637at_nat @ A5 @ ( produc487386426758144856at_nat @ B5 @ ( product_Pair_nat_nat @ C2 @ D ) ) ) ) ).

% prod_cases4
thf(fact_40_prod__cases3,axiom,
    ! [Y5: produc7248412053542808358at_nat] :
      ~ ! [A5: nat,B5: nat,C2: nat] :
          ( Y5
         != ( produc487386426758144856at_nat @ A5 @ ( product_Pair_nat_nat @ B5 @ C2 ) ) ) ).

% prod_cases3
thf(fact_41_prod__cases3,axiom,
    ! [Y5: produc4471711990508489141at_nat] :
      ~ ! [A5: nat > nat > nat,B5: nat,C2: product_prod_nat_nat] :
          ( Y5
         != ( produc3209952032786966637at_nat @ A5 @ ( produc487386426758144856at_nat @ B5 @ C2 ) ) ) ).

% prod_cases3
thf(fact_42_Pair__inject,axiom,
    ! [A6: mat_complex,B6: mat_complex,A7: mat_complex,B7: mat_complex] :
      ( ( ( produc3658446505030690647omplex @ A6 @ B6 )
        = ( produc3658446505030690647omplex @ A7 @ B7 ) )
     => ~ ( ( A6 = A7 )
         => ( B6 != B7 ) ) ) ).

% Pair_inject
thf(fact_43_Pair__inject,axiom,
    ! [A6: mat_complex,B6: nat,A7: mat_complex,B7: nat] :
      ( ( ( produc3916067632315525152ex_nat @ A6 @ B6 )
        = ( produc3916067632315525152ex_nat @ A7 @ B7 ) )
     => ~ ( ( A6 = A7 )
         => ( B6 != B7 ) ) ) ).

% Pair_inject
thf(fact_44_Pair__inject,axiom,
    ! [A6: nat,B6: product_prod_nat_nat,A7: nat,B7: product_prod_nat_nat] :
      ( ( ( produc487386426758144856at_nat @ A6 @ B6 )
        = ( produc487386426758144856at_nat @ A7 @ B7 ) )
     => ~ ( ( A6 = A7 )
         => ( B6 != B7 ) ) ) ).

% Pair_inject
thf(fact_45_Pair__inject,axiom,
    ! [A6: nat,B6: mat_complex,A7: nat,B7: mat_complex] :
      ( ( ( produc4998868960714853886omplex @ A6 @ B6 )
        = ( produc4998868960714853886omplex @ A7 @ B7 ) )
     => ~ ( ( A6 = A7 )
         => ( B6 != B7 ) ) ) ).

% Pair_inject
thf(fact_46_Pair__inject,axiom,
    ! [A6: nat > nat > nat,B6: produc7248412053542808358at_nat,A7: nat > nat > nat,B7: produc7248412053542808358at_nat] :
      ( ( ( produc3209952032786966637at_nat @ A6 @ B6 )
        = ( produc3209952032786966637at_nat @ A7 @ B7 ) )
     => ~ ( ( A6 = A7 )
         => ( B6 != B7 ) ) ) ).

% Pair_inject
thf(fact_47_Pair__inject,axiom,
    ! [A6: nat,B6: nat,A7: nat,B7: nat] :
      ( ( ( product_Pair_nat_nat @ A6 @ B6 )
        = ( product_Pair_nat_nat @ A7 @ B7 ) )
     => ~ ( ( A6 = A7 )
         => ( B6 != B7 ) ) ) ).

% Pair_inject
thf(fact_48_prod__cases,axiom,
    ! [P: produc352478934956084711omplex > $o,P2: produc352478934956084711omplex] :
      ( ! [A5: mat_complex,B5: mat_complex] : ( P @ ( produc3658446505030690647omplex @ A5 @ B5 ) )
     => ( P @ P2 ) ) ).

% prod_cases
thf(fact_49_prod__cases,axiom,
    ! [P: produc4941145339993070502ex_nat > $o,P2: produc4941145339993070502ex_nat] :
      ( ! [A5: mat_complex,B5: nat] : ( P @ ( produc3916067632315525152ex_nat @ A5 @ B5 ) )
     => ( P @ P2 ) ) ).

% prod_cases
thf(fact_50_prod__cases,axiom,
    ! [P: produc7248412053542808358at_nat > $o,P2: produc7248412053542808358at_nat] :
      ( ! [A5: nat,B5: product_prod_nat_nat] : ( P @ ( produc487386426758144856at_nat @ A5 @ B5 ) )
     => ( P @ P2 ) ) ).

% prod_cases
thf(fact_51_prod__cases,axiom,
    ! [P: produc3259542890344722124omplex > $o,P2: produc3259542890344722124omplex] :
      ( ! [A5: nat,B5: mat_complex] : ( P @ ( produc4998868960714853886omplex @ A5 @ B5 ) )
     => ( P @ P2 ) ) ).

% prod_cases
thf(fact_52_prod__cases,axiom,
    ! [P: produc4471711990508489141at_nat > $o,P2: produc4471711990508489141at_nat] :
      ( ! [A5: nat > nat > nat,B5: produc7248412053542808358at_nat] : ( P @ ( produc3209952032786966637at_nat @ A5 @ B5 ) )
     => ( P @ P2 ) ) ).

% prod_cases
thf(fact_53_prod__cases,axiom,
    ! [P: product_prod_nat_nat > $o,P2: product_prod_nat_nat] :
      ( ! [A5: nat,B5: nat] : ( P @ ( product_Pair_nat_nat @ A5 @ B5 ) )
     => ( P @ P2 ) ) ).

% prod_cases
thf(fact_54_surj__pair,axiom,
    ! [P2: produc352478934956084711omplex] :
    ? [X2: mat_complex,Y: mat_complex] :
      ( P2
      = ( produc3658446505030690647omplex @ X2 @ Y ) ) ).

% surj_pair
thf(fact_55_surj__pair,axiom,
    ! [P2: produc4941145339993070502ex_nat] :
    ? [X2: mat_complex,Y: nat] :
      ( P2
      = ( produc3916067632315525152ex_nat @ X2 @ Y ) ) ).

% surj_pair
thf(fact_56_surj__pair,axiom,
    ! [P2: produc7248412053542808358at_nat] :
    ? [X2: nat,Y: product_prod_nat_nat] :
      ( P2
      = ( produc487386426758144856at_nat @ X2 @ Y ) ) ).

% surj_pair
thf(fact_57_surj__pair,axiom,
    ! [P2: produc3259542890344722124omplex] :
    ? [X2: nat,Y: mat_complex] :
      ( P2
      = ( produc4998868960714853886omplex @ X2 @ Y ) ) ).

% surj_pair
thf(fact_58_surj__pair,axiom,
    ! [P2: produc4471711990508489141at_nat] :
    ? [X2: nat > nat > nat,Y: produc7248412053542808358at_nat] :
      ( P2
      = ( produc3209952032786966637at_nat @ X2 @ Y ) ) ).

% surj_pair
thf(fact_59_surj__pair,axiom,
    ! [P2: product_prod_nat_nat] :
    ? [X2: nat,Y: nat] :
      ( P2
      = ( product_Pair_nat_nat @ X2 @ Y ) ) ).

% surj_pair
thf(fact_60_old_Oprod_Oinducts,axiom,
    ! [P: produc352478934956084711omplex > $o,Prod: produc352478934956084711omplex] :
      ( ! [A5: mat_complex,B5: mat_complex] : ( P @ ( produc3658446505030690647omplex @ A5 @ B5 ) )
     => ( P @ Prod ) ) ).

% old.prod.inducts
thf(fact_61_old_Oprod_Oinducts,axiom,
    ! [P: produc4941145339993070502ex_nat > $o,Prod: produc4941145339993070502ex_nat] :
      ( ! [A5: mat_complex,B5: nat] : ( P @ ( produc3916067632315525152ex_nat @ A5 @ B5 ) )
     => ( P @ Prod ) ) ).

% old.prod.inducts
thf(fact_62_old_Oprod_Oinducts,axiom,
    ! [P: produc7248412053542808358at_nat > $o,Prod: produc7248412053542808358at_nat] :
      ( ! [A5: nat,B5: product_prod_nat_nat] : ( P @ ( produc487386426758144856at_nat @ A5 @ B5 ) )
     => ( P @ Prod ) ) ).

% old.prod.inducts
thf(fact_63_old_Oprod_Oinducts,axiom,
    ! [P: produc3259542890344722124omplex > $o,Prod: produc3259542890344722124omplex] :
      ( ! [A5: nat,B5: mat_complex] : ( P @ ( produc4998868960714853886omplex @ A5 @ B5 ) )
     => ( P @ Prod ) ) ).

% old.prod.inducts
thf(fact_64_old_Oprod_Oinducts,axiom,
    ! [P: produc4471711990508489141at_nat > $o,Prod: produc4471711990508489141at_nat] :
      ( ! [A5: nat > nat > nat,B5: produc7248412053542808358at_nat] : ( P @ ( produc3209952032786966637at_nat @ A5 @ B5 ) )
     => ( P @ Prod ) ) ).

% old.prod.inducts
thf(fact_65_old_Oprod_Oinducts,axiom,
    ! [P: product_prod_nat_nat > $o,Prod: product_prod_nat_nat] :
      ( ! [A5: nat,B5: nat] : ( P @ ( product_Pair_nat_nat @ A5 @ B5 ) )
     => ( P @ Prod ) ) ).

% old.prod.inducts
thf(fact_66_old_Oprod_Oexhaust,axiom,
    ! [Y5: produc352478934956084711omplex] :
      ~ ! [A5: mat_complex,B5: mat_complex] :
          ( Y5
         != ( produc3658446505030690647omplex @ A5 @ B5 ) ) ).

% old.prod.exhaust
thf(fact_67_old_Oprod_Oexhaust,axiom,
    ! [Y5: produc4941145339993070502ex_nat] :
      ~ ! [A5: mat_complex,B5: nat] :
          ( Y5
         != ( produc3916067632315525152ex_nat @ A5 @ B5 ) ) ).

% old.prod.exhaust
thf(fact_68_old_Oprod_Oexhaust,axiom,
    ! [Y5: produc7248412053542808358at_nat] :
      ~ ! [A5: nat,B5: product_prod_nat_nat] :
          ( Y5
         != ( produc487386426758144856at_nat @ A5 @ B5 ) ) ).

% old.prod.exhaust
thf(fact_69_old_Oprod_Oexhaust,axiom,
    ! [Y5: produc3259542890344722124omplex] :
      ~ ! [A5: nat,B5: mat_complex] :
          ( Y5
         != ( produc4998868960714853886omplex @ A5 @ B5 ) ) ).

% old.prod.exhaust
thf(fact_70_old_Oprod_Oexhaust,axiom,
    ! [Y5: produc4471711990508489141at_nat] :
      ~ ! [A5: nat > nat > nat,B5: produc7248412053542808358at_nat] :
          ( Y5
         != ( produc3209952032786966637at_nat @ A5 @ B5 ) ) ).

% old.prod.exhaust
thf(fact_71_old_Oprod_Oexhaust,axiom,
    ! [Y5: product_prod_nat_nat] :
      ~ ! [A5: nat,B5: nat] :
          ( Y5
         != ( product_Pair_nat_nat @ A5 @ B5 ) ) ).

% old.prod.exhaust
thf(fact_72_old_Oprod_Oinject,axiom,
    ! [A6: mat_complex,B6: mat_complex,A7: mat_complex,B7: mat_complex] :
      ( ( ( produc3658446505030690647omplex @ A6 @ B6 )
        = ( produc3658446505030690647omplex @ A7 @ B7 ) )
      = ( ( A6 = A7 )
        & ( B6 = B7 ) ) ) ).

% old.prod.inject
thf(fact_73_old_Oprod_Oinject,axiom,
    ! [A6: mat_complex,B6: nat,A7: mat_complex,B7: nat] :
      ( ( ( produc3916067632315525152ex_nat @ A6 @ B6 )
        = ( produc3916067632315525152ex_nat @ A7 @ B7 ) )
      = ( ( A6 = A7 )
        & ( B6 = B7 ) ) ) ).

% old.prod.inject
thf(fact_74_old_Oprod_Oinject,axiom,
    ! [A6: nat,B6: product_prod_nat_nat,A7: nat,B7: product_prod_nat_nat] :
      ( ( ( produc487386426758144856at_nat @ A6 @ B6 )
        = ( produc487386426758144856at_nat @ A7 @ B7 ) )
      = ( ( A6 = A7 )
        & ( B6 = B7 ) ) ) ).

% old.prod.inject
thf(fact_75_old_Oprod_Oinject,axiom,
    ! [A6: nat,B6: mat_complex,A7: nat,B7: mat_complex] :
      ( ( ( produc4998868960714853886omplex @ A6 @ B6 )
        = ( produc4998868960714853886omplex @ A7 @ B7 ) )
      = ( ( A6 = A7 )
        & ( B6 = B7 ) ) ) ).

% old.prod.inject
thf(fact_76_old_Oprod_Oinject,axiom,
    ! [A6: nat > nat > nat,B6: produc7248412053542808358at_nat,A7: nat > nat > nat,B7: produc7248412053542808358at_nat] :
      ( ( ( produc3209952032786966637at_nat @ A6 @ B6 )
        = ( produc3209952032786966637at_nat @ A7 @ B7 ) )
      = ( ( A6 = A7 )
        & ( B6 = B7 ) ) ) ).

% old.prod.inject
thf(fact_77_old_Oprod_Oinject,axiom,
    ! [A6: nat,B6: nat,A7: nat,B7: nat] :
      ( ( ( product_Pair_nat_nat @ A6 @ B6 )
        = ( product_Pair_nat_nat @ A7 @ B7 ) )
      = ( ( A6 = A7 )
        & ( B6 = B7 ) ) ) ).

% old.prod.inject
thf(fact_78_mem__Collect__eq,axiom,
    ! [A6: mat_mat_complex,P: mat_mat_complex > $o] :
      ( ( member7752848204589936667omplex @ A6 @ ( collec8095434345095979609omplex @ P ) )
      = ( P @ A6 ) ) ).

% mem_Collect_eq
thf(fact_79_mem__Collect__eq,axiom,
    ! [A6: mat_nat,P: mat_nat > $o] :
      ( ( member_mat_nat @ A6 @ ( collect_mat_nat @ P ) )
      = ( P @ A6 ) ) ).

% mem_Collect_eq
thf(fact_80_mem__Collect__eq,axiom,
    ! [A6: mat_a,P: mat_a > $o] :
      ( ( member_mat_a @ A6 @ ( collect_mat_a @ P ) )
      = ( P @ A6 ) ) ).

% mem_Collect_eq
thf(fact_81_mem__Collect__eq,axiom,
    ! [A6: nat,P: nat > $o] :
      ( ( member_nat @ A6 @ ( collect_nat @ P ) )
      = ( P @ A6 ) ) ).

% mem_Collect_eq
thf(fact_82_mem__Collect__eq,axiom,
    ! [A6: a,P: a > $o] :
      ( ( member_a @ A6 @ ( collect_a @ P ) )
      = ( P @ A6 ) ) ).

% mem_Collect_eq
thf(fact_83_mem__Collect__eq,axiom,
    ! [A6: mat_complex,P: mat_complex > $o] :
      ( ( member_mat_complex @ A6 @ ( collect_mat_complex @ P ) )
      = ( P @ A6 ) ) ).

% mem_Collect_eq
thf(fact_84_Collect__mem__eq,axiom,
    ! [A: set_mat_mat_complex] :
      ( ( collec8095434345095979609omplex
        @ ^ [X3: mat_mat_complex] : ( member7752848204589936667omplex @ X3 @ A ) )
      = A ) ).

% Collect_mem_eq
thf(fact_85_Collect__mem__eq,axiom,
    ! [A: set_mat_nat] :
      ( ( collect_mat_nat
        @ ^ [X3: mat_nat] : ( member_mat_nat @ X3 @ A ) )
      = A ) ).

% Collect_mem_eq
thf(fact_86_Collect__mem__eq,axiom,
    ! [A: set_mat_a] :
      ( ( collect_mat_a
        @ ^ [X3: mat_a] : ( member_mat_a @ X3 @ A ) )
      = A ) ).

% Collect_mem_eq
thf(fact_87_Collect__mem__eq,axiom,
    ! [A: set_nat] :
      ( ( collect_nat
        @ ^ [X3: nat] : ( member_nat @ X3 @ A ) )
      = A ) ).

% Collect_mem_eq
thf(fact_88_Collect__mem__eq,axiom,
    ! [A: set_a] :
      ( ( collect_a
        @ ^ [X3: a] : ( member_a @ X3 @ A ) )
      = A ) ).

% Collect_mem_eq
thf(fact_89_Collect__mem__eq,axiom,
    ! [A: set_mat_complex] :
      ( ( collect_mat_complex
        @ ^ [X3: mat_complex] : ( member_mat_complex @ X3 @ A ) )
      = A ) ).

% Collect_mem_eq
thf(fact_90_Collect__cong,axiom,
    ! [P: mat_complex > $o,Q: mat_complex > $o] :
      ( ! [X2: mat_complex] :
          ( ( P @ X2 )
          = ( Q @ X2 ) )
     => ( ( collect_mat_complex @ P )
        = ( collect_mat_complex @ Q ) ) ) ).

% Collect_cong
thf(fact_91_index__update__mat2,axiom,
    ! [I3: nat,A: mat_mat_complex,J3: nat,Ij: product_prod_nat_nat,A6: mat_complex] :
      ( ( ord_less_nat @ I3 @ ( dim_row_mat_complex @ A ) )
     => ( ( ord_less_nat @ J3 @ ( dim_col_mat_complex @ A ) )
       => ( ( ( product_Pair_nat_nat @ I3 @ J3 )
           != Ij )
         => ( ( index_7093623372566408491omplex @ ( update2332872114388419836omplex @ A @ Ij @ A6 ) @ ( product_Pair_nat_nat @ I3 @ J3 ) )
            = ( index_7093623372566408491omplex @ A @ ( product_Pair_nat_nat @ I3 @ J3 ) ) ) ) ) ) ).

% index_update_mat2
thf(fact_92_index__update__mat2,axiom,
    ! [I3: nat,A: mat_nat,J3: nat,Ij: product_prod_nat_nat,A6: nat] :
      ( ( ord_less_nat @ I3 @ ( dim_row_nat @ A ) )
     => ( ( ord_less_nat @ J3 @ ( dim_col_nat @ A ) )
       => ( ( ( product_Pair_nat_nat @ I3 @ J3 )
           != Ij )
         => ( ( index_mat_nat @ ( update_mat_nat @ A @ Ij @ A6 ) @ ( product_Pair_nat_nat @ I3 @ J3 ) )
            = ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I3 @ J3 ) ) ) ) ) ) ).

% index_update_mat2
thf(fact_93_index__update__mat2,axiom,
    ! [I3: nat,A: mat_complex,J3: nat,Ij: product_prod_nat_nat,A6: complex] :
      ( ( ord_less_nat @ I3 @ ( dim_row_complex @ A ) )
     => ( ( ord_less_nat @ J3 @ ( dim_col_complex @ A ) )
       => ( ( ( product_Pair_nat_nat @ I3 @ J3 )
           != Ij )
         => ( ( index_mat_complex @ ( update_mat_complex @ A @ Ij @ A6 ) @ ( product_Pair_nat_nat @ I3 @ J3 ) )
            = ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I3 @ J3 ) ) ) ) ) ) ).

% index_update_mat2
thf(fact_94_index__update__mat2,axiom,
    ! [I3: nat,A: mat_a,J3: nat,Ij: product_prod_nat_nat,A6: a] :
      ( ( ord_less_nat @ I3 @ ( dim_row_a @ A ) )
     => ( ( ord_less_nat @ J3 @ ( dim_col_a @ A ) )
       => ( ( ( product_Pair_nat_nat @ I3 @ J3 )
           != Ij )
         => ( ( index_mat_a @ ( update_mat_a @ A @ Ij @ A6 ) @ ( product_Pair_nat_nat @ I3 @ J3 ) )
            = ( index_mat_a @ A @ ( product_Pair_nat_nat @ I3 @ J3 ) ) ) ) ) ) ).

% index_update_mat2
thf(fact_95_index__update__mat1,axiom,
    ! [I4: nat,A: mat_mat_complex,J4: nat,A6: mat_complex] :
      ( ( ord_less_nat @ I4 @ ( dim_row_mat_complex @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_mat_complex @ A ) )
       => ( ( index_7093623372566408491omplex @ ( update2332872114388419836omplex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) @ A6 ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = A6 ) ) ) ).

% index_update_mat1
thf(fact_96_index__update__mat1,axiom,
    ! [I4: nat,A: mat_nat,J4: nat,A6: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_nat @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_nat @ A ) )
       => ( ( index_mat_nat @ ( update_mat_nat @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) @ A6 ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = A6 ) ) ) ).

% index_update_mat1
thf(fact_97_index__update__mat1,axiom,
    ! [I4: nat,A: mat_complex,J4: nat,A6: complex] :
      ( ( ord_less_nat @ I4 @ ( dim_row_complex @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_complex @ A ) )
       => ( ( index_mat_complex @ ( update_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) @ A6 ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = A6 ) ) ) ).

% index_update_mat1
thf(fact_98_index__update__mat1,axiom,
    ! [I4: nat,A: mat_a,J4: nat,A6: a] :
      ( ( ord_less_nat @ I4 @ ( dim_row_a @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_a @ A ) )
       => ( ( index_mat_a @ ( update_mat_a @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) @ A6 ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = A6 ) ) ) ).

% index_update_mat1
thf(fact_99_elements__matD,axiom,
    ! [A6: mat_mat_complex,A: mat_mat_mat_complex] :
      ( ( member7752848204589936667omplex @ A6 @ ( elemen9025429746457212737omplex @ A ) )
     => ? [I2: nat,J2: nat] :
          ( ( ord_less_nat @ I2 @ ( dim_ro358828680681214724omplex @ A ) )
          & ( ord_less_nat @ J2 @ ( dim_co7545570394955013482omplex @ A ) )
          & ( A6
            = ( index_4240009552160427392omplex @ A @ ( product_Pair_nat_nat @ I2 @ J2 ) ) ) ) ) ).

% elements_matD
thf(fact_100_elements__matD,axiom,
    ! [A6: mat_nat,A: mat_mat_nat] :
      ( ( member_mat_nat @ A6 @ ( elements_mat_mat_nat @ A ) )
     => ? [I2: nat,J2: nat] :
          ( ( ord_less_nat @ I2 @ ( dim_row_mat_nat @ A ) )
          & ( ord_less_nat @ J2 @ ( dim_col_mat_nat @ A ) )
          & ( A6
            = ( index_mat_mat_nat @ A @ ( product_Pair_nat_nat @ I2 @ J2 ) ) ) ) ) ).

% elements_matD
thf(fact_101_elements__matD,axiom,
    ! [A6: mat_a,A: mat_mat_a] :
      ( ( member_mat_a @ A6 @ ( elements_mat_mat_a @ A ) )
     => ? [I2: nat,J2: nat] :
          ( ( ord_less_nat @ I2 @ ( dim_row_mat_a @ A ) )
          & ( ord_less_nat @ J2 @ ( dim_col_mat_a @ A ) )
          & ( A6
            = ( index_mat_mat_a @ A @ ( product_Pair_nat_nat @ I2 @ J2 ) ) ) ) ) ).

% elements_matD
thf(fact_102_elements__matD,axiom,
    ! [A6: nat,A: mat_nat] :
      ( ( member_nat @ A6 @ ( elements_mat_nat @ A ) )
     => ? [I2: nat,J2: nat] :
          ( ( ord_less_nat @ I2 @ ( dim_row_nat @ A ) )
          & ( ord_less_nat @ J2 @ ( dim_col_nat @ A ) )
          & ( A6
            = ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I2 @ J2 ) ) ) ) ) ).

% elements_matD
thf(fact_103_elements__matD,axiom,
    ! [A6: mat_complex,A: mat_mat_complex] :
      ( ( member_mat_complex @ A6 @ ( elemen3580889201824698026omplex @ A ) )
     => ? [I2: nat,J2: nat] :
          ( ( ord_less_nat @ I2 @ ( dim_row_mat_complex @ A ) )
          & ( ord_less_nat @ J2 @ ( dim_col_mat_complex @ A ) )
          & ( A6
            = ( index_7093623372566408491omplex @ A @ ( product_Pair_nat_nat @ I2 @ J2 ) ) ) ) ) ).

% elements_matD
thf(fact_104_elements__matD,axiom,
    ! [A6: complex,A: mat_complex] :
      ( ( member_complex @ A6 @ ( elements_mat_complex @ A ) )
     => ? [I2: nat,J2: nat] :
          ( ( ord_less_nat @ I2 @ ( dim_row_complex @ A ) )
          & ( ord_less_nat @ J2 @ ( dim_col_complex @ A ) )
          & ( A6
            = ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I2 @ J2 ) ) ) ) ) ).

% elements_matD
thf(fact_105_elements__matD,axiom,
    ! [A6: a,A: mat_a] :
      ( ( member_a @ A6 @ ( elements_mat_a @ A ) )
     => ? [I2: nat,J2: nat] :
          ( ( ord_less_nat @ I2 @ ( dim_row_a @ A ) )
          & ( ord_less_nat @ J2 @ ( dim_col_a @ A ) )
          & ( A6
            = ( index_mat_a @ A @ ( product_Pair_nat_nat @ I2 @ J2 ) ) ) ) ) ).

% elements_matD
thf(fact_106_index__mat__addrow_I1_J,axiom,
    ! [I4: nat,A: mat_mat_complex,J4: nat,K: nat,Ad: mat_complex > mat_complex > mat_complex,Mul: mat_complex > mat_complex > mat_complex,A6: mat_complex,L: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_mat_complex @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_mat_complex @ A ) )
       => ( ( ( K = I4 )
           => ( ( index_7093623372566408491omplex @ ( gauss_1372362650841364061omplex @ Ad @ Mul @ A6 @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = ( Ad @ ( Mul @ A6 @ ( index_7093623372566408491omplex @ A @ ( product_Pair_nat_nat @ L @ J4 ) ) ) @ ( index_7093623372566408491omplex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) )
          & ( ( K != I4 )
           => ( ( index_7093623372566408491omplex @ ( gauss_1372362650841364061omplex @ Ad @ Mul @ A6 @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = ( index_7093623372566408491omplex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ) ).

% index_mat_addrow(1)
thf(fact_107_index__mat__addrow_I1_J,axiom,
    ! [I4: nat,A: mat_nat,J4: nat,K: nat,Ad: nat > nat > nat,Mul: nat > nat > nat,A6: nat,L: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_nat @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_nat @ A ) )
       => ( ( ( K = I4 )
           => ( ( index_mat_nat @ ( gauss_8885043348566651034en_nat @ Ad @ Mul @ A6 @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = ( Ad @ ( Mul @ A6 @ ( index_mat_nat @ A @ ( product_Pair_nat_nat @ L @ J4 ) ) ) @ ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) )
          & ( ( K != I4 )
           => ( ( index_mat_nat @ ( gauss_8885043348566651034en_nat @ Ad @ Mul @ A6 @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ) ).

% index_mat_addrow(1)
thf(fact_108_index__mat__addrow_I1_J,axiom,
    ! [I4: nat,A: mat_complex,J4: nat,K: nat,Ad: complex > complex > complex,Mul: complex > complex > complex,A6: complex,L: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_complex @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_complex @ A ) )
       => ( ( ( K = I4 )
           => ( ( index_mat_complex @ ( gauss_5252963565656066424omplex @ Ad @ Mul @ A6 @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = ( Ad @ ( Mul @ A6 @ ( index_mat_complex @ A @ ( product_Pair_nat_nat @ L @ J4 ) ) ) @ ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) )
          & ( ( K != I4 )
           => ( ( index_mat_complex @ ( gauss_5252963565656066424omplex @ Ad @ Mul @ A6 @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ) ).

% index_mat_addrow(1)
thf(fact_109_index__mat__addrow_I1_J,axiom,
    ! [I4: nat,A: mat_a,J4: nat,K: nat,Ad: a > a > a,Mul: a > a > a,A6: a,L: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_a @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_a @ A ) )
       => ( ( ( K = I4 )
           => ( ( index_mat_a @ ( gauss_3441994962245461172_gen_a @ Ad @ Mul @ A6 @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = ( Ad @ ( Mul @ A6 @ ( index_mat_a @ A @ ( product_Pair_nat_nat @ L @ J4 ) ) ) @ ( index_mat_a @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) )
          & ( ( K != I4 )
           => ( ( index_mat_a @ ( gauss_3441994962245461172_gen_a @ Ad @ Mul @ A6 @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = ( index_mat_a @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ) ).

% index_mat_addrow(1)
thf(fact_110_index__mat__addrow_I2_J,axiom,
    ! [I4: nat,A: mat_mat_complex,J4: nat,Ad: mat_complex > mat_complex > mat_complex,Mul: mat_complex > mat_complex > mat_complex,A6: mat_complex,L: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_mat_complex @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_mat_complex @ A ) )
       => ( ( index_7093623372566408491omplex @ ( gauss_1372362650841364061omplex @ Ad @ Mul @ A6 @ I4 @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( Ad @ ( Mul @ A6 @ ( index_7093623372566408491omplex @ A @ ( product_Pair_nat_nat @ L @ J4 ) ) ) @ ( index_7093623372566408491omplex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_mat_addrow(2)
thf(fact_111_index__mat__addrow_I2_J,axiom,
    ! [I4: nat,A: mat_nat,J4: nat,Ad: nat > nat > nat,Mul: nat > nat > nat,A6: nat,L: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_nat @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_nat @ A ) )
       => ( ( index_mat_nat @ ( gauss_8885043348566651034en_nat @ Ad @ Mul @ A6 @ I4 @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( Ad @ ( Mul @ A6 @ ( index_mat_nat @ A @ ( product_Pair_nat_nat @ L @ J4 ) ) ) @ ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_mat_addrow(2)
thf(fact_112_index__mat__addrow_I2_J,axiom,
    ! [I4: nat,A: mat_complex,J4: nat,Ad: complex > complex > complex,Mul: complex > complex > complex,A6: complex,L: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_complex @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_complex @ A ) )
       => ( ( index_mat_complex @ ( gauss_5252963565656066424omplex @ Ad @ Mul @ A6 @ I4 @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( Ad @ ( Mul @ A6 @ ( index_mat_complex @ A @ ( product_Pair_nat_nat @ L @ J4 ) ) ) @ ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_mat_addrow(2)
thf(fact_113_index__mat__addrow_I2_J,axiom,
    ! [I4: nat,A: mat_a,J4: nat,Ad: a > a > a,Mul: a > a > a,A6: a,L: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_a @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_a @ A ) )
       => ( ( index_mat_a @ ( gauss_3441994962245461172_gen_a @ Ad @ Mul @ A6 @ I4 @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( Ad @ ( Mul @ A6 @ ( index_mat_a @ A @ ( product_Pair_nat_nat @ L @ J4 ) ) ) @ ( index_mat_a @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_mat_addrow(2)
thf(fact_114_index__mat__addrow_I3_J,axiom,
    ! [I4: nat,A: mat_mat_complex,J4: nat,K: nat,Ad: mat_complex > mat_complex > mat_complex,Mul: mat_complex > mat_complex > mat_complex,A6: mat_complex,L: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_mat_complex @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_mat_complex @ A ) )
       => ( ( K != I4 )
         => ( ( index_7093623372566408491omplex @ ( gauss_1372362650841364061omplex @ Ad @ Mul @ A6 @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
            = ( index_7093623372566408491omplex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_mat_addrow(3)
thf(fact_115_index__mat__addrow_I3_J,axiom,
    ! [I4: nat,A: mat_nat,J4: nat,K: nat,Ad: nat > nat > nat,Mul: nat > nat > nat,A6: nat,L: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_nat @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_nat @ A ) )
       => ( ( K != I4 )
         => ( ( index_mat_nat @ ( gauss_8885043348566651034en_nat @ Ad @ Mul @ A6 @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
            = ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_mat_addrow(3)
thf(fact_116_index__mat__addrow_I3_J,axiom,
    ! [I4: nat,A: mat_complex,J4: nat,K: nat,Ad: complex > complex > complex,Mul: complex > complex > complex,A6: complex,L: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_complex @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_complex @ A ) )
       => ( ( K != I4 )
         => ( ( index_mat_complex @ ( gauss_5252963565656066424omplex @ Ad @ Mul @ A6 @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
            = ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_mat_addrow(3)
thf(fact_117_index__mat__addrow_I3_J,axiom,
    ! [I4: nat,A: mat_a,J4: nat,K: nat,Ad: a > a > a,Mul: a > a > a,A6: a,L: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_a @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_a @ A ) )
       => ( ( K != I4 )
         => ( ( index_mat_a @ ( gauss_3441994962245461172_gen_a @ Ad @ Mul @ A6 @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
            = ( index_mat_a @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_mat_addrow(3)
thf(fact_118_index__mat__swaprows_I1_J,axiom,
    ! [I4: nat,A: mat_mat_complex,J4: nat,K: nat,L: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_mat_complex @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_mat_complex @ A ) )
       => ( ( ( K = I4 )
           => ( ( index_7093623372566408491omplex @ ( gauss_2062035380492893324omplex @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = ( index_7093623372566408491omplex @ A @ ( product_Pair_nat_nat @ L @ J4 ) ) ) )
          & ( ( K != I4 )
           => ( ( ( L = I4 )
               => ( ( index_7093623372566408491omplex @ ( gauss_2062035380492893324omplex @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                  = ( index_7093623372566408491omplex @ A @ ( product_Pair_nat_nat @ K @ J4 ) ) ) )
              & ( ( L != I4 )
               => ( ( index_7093623372566408491omplex @ ( gauss_2062035380492893324omplex @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                  = ( index_7093623372566408491omplex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ) ) ) ).

% index_mat_swaprows(1)
thf(fact_119_index__mat__swaprows_I1_J,axiom,
    ! [I4: nat,A: mat_nat,J4: nat,K: nat,L: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_nat @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_nat @ A ) )
       => ( ( ( K = I4 )
           => ( ( index_mat_nat @ ( gauss_2892196111178452267ws_nat @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = ( index_mat_nat @ A @ ( product_Pair_nat_nat @ L @ J4 ) ) ) )
          & ( ( K != I4 )
           => ( ( ( L = I4 )
               => ( ( index_mat_nat @ ( gauss_2892196111178452267ws_nat @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                  = ( index_mat_nat @ A @ ( product_Pair_nat_nat @ K @ J4 ) ) ) )
              & ( ( L != I4 )
               => ( ( index_mat_nat @ ( gauss_2892196111178452267ws_nat @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                  = ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ) ) ) ).

% index_mat_swaprows(1)
thf(fact_120_index__mat__swaprows_I1_J,axiom,
    ! [I4: nat,A: mat_complex,J4: nat,K: nat,L: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_complex @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_complex @ A ) )
       => ( ( ( K = I4 )
           => ( ( index_mat_complex @ ( gauss_1020679828357514249omplex @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = ( index_mat_complex @ A @ ( product_Pair_nat_nat @ L @ J4 ) ) ) )
          & ( ( K != I4 )
           => ( ( ( L = I4 )
               => ( ( index_mat_complex @ ( gauss_1020679828357514249omplex @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                  = ( index_mat_complex @ A @ ( product_Pair_nat_nat @ K @ J4 ) ) ) )
              & ( ( L != I4 )
               => ( ( index_mat_complex @ ( gauss_1020679828357514249omplex @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                  = ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ) ) ) ).

% index_mat_swaprows(1)
thf(fact_121_index__mat__swaprows_I1_J,axiom,
    ! [I4: nat,A: mat_a,J4: nat,K: nat,L: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_a @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_a @ A ) )
       => ( ( ( K = I4 )
           => ( ( index_mat_a @ ( gauss_2482569599970757219rows_a @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = ( index_mat_a @ A @ ( product_Pair_nat_nat @ L @ J4 ) ) ) )
          & ( ( K != I4 )
           => ( ( ( L = I4 )
               => ( ( index_mat_a @ ( gauss_2482569599970757219rows_a @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                  = ( index_mat_a @ A @ ( product_Pair_nat_nat @ K @ J4 ) ) ) )
              & ( ( L != I4 )
               => ( ( index_mat_a @ ( gauss_2482569599970757219rows_a @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                  = ( index_mat_a @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ) ) ) ).

% index_mat_swaprows(1)
thf(fact_122_index__mat__multrow_I1_J,axiom,
    ! [I4: nat,A: mat_mat_complex,J4: nat,K: nat,Mul: mat_complex > mat_complex > mat_complex,A6: mat_complex] :
      ( ( ord_less_nat @ I4 @ ( dim_row_mat_complex @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_mat_complex @ A ) )
       => ( ( ( K = I4 )
           => ( ( index_7093623372566408491omplex @ ( gauss_8941138319910658002omplex @ Mul @ K @ A6 @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = ( Mul @ A6 @ ( index_7093623372566408491omplex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) )
          & ( ( K != I4 )
           => ( ( index_7093623372566408491omplex @ ( gauss_8941138319910658002omplex @ Mul @ K @ A6 @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = ( index_7093623372566408491omplex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ) ).

% index_mat_multrow(1)
thf(fact_123_index__mat__multrow_I1_J,axiom,
    ! [I4: nat,A: mat_nat,J4: nat,K: nat,Mul: nat > nat > nat,A6: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_nat @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_nat @ A ) )
       => ( ( ( K = I4 )
           => ( ( index_mat_nat @ ( gauss_2409696420326117733en_nat @ Mul @ K @ A6 @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = ( Mul @ A6 @ ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) )
          & ( ( K != I4 )
           => ( ( index_mat_nat @ ( gauss_2409696420326117733en_nat @ Mul @ K @ A6 @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ) ).

% index_mat_multrow(1)
thf(fact_124_index__mat__multrow_I1_J,axiom,
    ! [I4: nat,A: mat_complex,J4: nat,K: nat,Mul: complex > complex > complex,A6: complex] :
      ( ( ord_less_nat @ I4 @ ( dim_row_complex @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_complex @ A ) )
       => ( ( ( K = I4 )
           => ( ( index_mat_complex @ ( gauss_2324787009747932227omplex @ Mul @ K @ A6 @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = ( Mul @ A6 @ ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) )
          & ( ( K != I4 )
           => ( ( index_mat_complex @ ( gauss_2324787009747932227omplex @ Mul @ K @ A6 @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ) ).

% index_mat_multrow(1)
thf(fact_125_index__mat__multrow_I1_J,axiom,
    ! [I4: nat,A: mat_a,J4: nat,K: nat,Mul: a > a > a,A6: a] :
      ( ( ord_less_nat @ I4 @ ( dim_row_a @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_a @ A ) )
       => ( ( ( K = I4 )
           => ( ( index_mat_a @ ( gauss_5154200947219177641_gen_a @ Mul @ K @ A6 @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = ( Mul @ A6 @ ( index_mat_a @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) )
          & ( ( K != I4 )
           => ( ( index_mat_a @ ( gauss_5154200947219177641_gen_a @ Mul @ K @ A6 @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = ( index_mat_a @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ) ).

% index_mat_multrow(1)
thf(fact_126_index__mat__multrow_I2_J,axiom,
    ! [I4: nat,A: mat_mat_complex,J4: nat,Mul: mat_complex > mat_complex > mat_complex,A6: mat_complex] :
      ( ( ord_less_nat @ I4 @ ( dim_row_mat_complex @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_mat_complex @ A ) )
       => ( ( index_7093623372566408491omplex @ ( gauss_8941138319910658002omplex @ Mul @ I4 @ A6 @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( Mul @ A6 @ ( index_7093623372566408491omplex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_mat_multrow(2)
thf(fact_127_index__mat__multrow_I2_J,axiom,
    ! [I4: nat,A: mat_nat,J4: nat,Mul: nat > nat > nat,A6: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_nat @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_nat @ A ) )
       => ( ( index_mat_nat @ ( gauss_2409696420326117733en_nat @ Mul @ I4 @ A6 @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( Mul @ A6 @ ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_mat_multrow(2)
thf(fact_128_index__mat__multrow_I2_J,axiom,
    ! [I4: nat,A: mat_complex,J4: nat,Mul: complex > complex > complex,A6: complex] :
      ( ( ord_less_nat @ I4 @ ( dim_row_complex @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_complex @ A ) )
       => ( ( index_mat_complex @ ( gauss_2324787009747932227omplex @ Mul @ I4 @ A6 @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( Mul @ A6 @ ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_mat_multrow(2)
thf(fact_129_index__mat__multrow_I2_J,axiom,
    ! [I4: nat,A: mat_a,J4: nat,Mul: a > a > a,A6: a] :
      ( ( ord_less_nat @ I4 @ ( dim_row_a @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_a @ A ) )
       => ( ( index_mat_a @ ( gauss_5154200947219177641_gen_a @ Mul @ I4 @ A6 @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( Mul @ A6 @ ( index_mat_a @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_mat_multrow(2)
thf(fact_130_index__mat__multrow_I3_J,axiom,
    ! [I4: nat,A: mat_mat_complex,J4: nat,K: nat,Mul: mat_complex > mat_complex > mat_complex,A6: mat_complex] :
      ( ( ord_less_nat @ I4 @ ( dim_row_mat_complex @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_mat_complex @ A ) )
       => ( ( K != I4 )
         => ( ( index_7093623372566408491omplex @ ( gauss_8941138319910658002omplex @ Mul @ K @ A6 @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
            = ( index_7093623372566408491omplex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_mat_multrow(3)
thf(fact_131_index__mat__multrow_I3_J,axiom,
    ! [I4: nat,A: mat_nat,J4: nat,K: nat,Mul: nat > nat > nat,A6: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_nat @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_nat @ A ) )
       => ( ( K != I4 )
         => ( ( index_mat_nat @ ( gauss_2409696420326117733en_nat @ Mul @ K @ A6 @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
            = ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_mat_multrow(3)
thf(fact_132_index__mat__multrow_I3_J,axiom,
    ! [I4: nat,A: mat_complex,J4: nat,K: nat,Mul: complex > complex > complex,A6: complex] :
      ( ( ord_less_nat @ I4 @ ( dim_row_complex @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_complex @ A ) )
       => ( ( K != I4 )
         => ( ( index_mat_complex @ ( gauss_2324787009747932227omplex @ Mul @ K @ A6 @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
            = ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_mat_multrow(3)
thf(fact_133_index__mat__multrow_I3_J,axiom,
    ! [I4: nat,A: mat_a,J4: nat,K: nat,Mul: a > a > a,A6: a] :
      ( ( ord_less_nat @ I4 @ ( dim_row_a @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_a @ A ) )
       => ( ( K != I4 )
         => ( ( index_mat_a @ ( gauss_5154200947219177641_gen_a @ Mul @ K @ A6 @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
            = ( index_mat_a @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_mat_multrow(3)
thf(fact_134_index__mat__multcol_I3_J,axiom,
    ! [I4: nat,A: mat_nat,J4: nat,K: nat,A6: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_nat @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_nat @ A ) )
       => ( ( K != J4 )
         => ( ( index_mat_nat @ ( column384608550491945071ol_nat @ K @ A6 @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
            = ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_mat_multcol(3)
thf(fact_135_index__mat__multcol_I3_J,axiom,
    ! [I4: nat,A: mat_complex,J4: nat,K: nat,A6: complex] :
      ( ( ord_less_nat @ I4 @ ( dim_row_complex @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_complex @ A ) )
       => ( ( K != J4 )
         => ( ( index_mat_complex @ ( column4410001698458707789omplex @ K @ A6 @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
            = ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_mat_multcol(3)
thf(fact_136_index__mat__multcol_I4_J,axiom,
    ! [K: nat,A6: nat,A: mat_nat] :
      ( ( dim_row_nat @ ( column384608550491945071ol_nat @ K @ A6 @ A ) )
      = ( dim_row_nat @ A ) ) ).

% index_mat_multcol(4)
thf(fact_137_index__mat__multcol_I4_J,axiom,
    ! [K: nat,A6: complex,A: mat_complex] :
      ( ( dim_row_complex @ ( column4410001698458707789omplex @ K @ A6 @ A ) )
      = ( dim_row_complex @ A ) ) ).

% index_mat_multcol(4)
thf(fact_138_index__mat__multcol_I5_J,axiom,
    ! [K: nat,A6: complex,A: mat_complex] :
      ( ( dim_col_complex @ ( column4410001698458707789omplex @ K @ A6 @ A ) )
      = ( dim_col_complex @ A ) ) ).

% index_mat_multcol(5)
thf(fact_139_index__mat__multcol_I5_J,axiom,
    ! [K: nat,A6: nat,A: mat_nat] :
      ( ( dim_col_nat @ ( column384608550491945071ol_nat @ K @ A6 @ A ) )
      = ( dim_col_nat @ A ) ) ).

% index_mat_multcol(5)
thf(fact_140_index__mat__multrow_I4_J,axiom,
    ! [Mul: mat_complex > mat_complex > mat_complex,K: nat,A6: mat_complex,A: mat_mat_complex] :
      ( ( dim_row_mat_complex @ ( gauss_8941138319910658002omplex @ Mul @ K @ A6 @ A ) )
      = ( dim_row_mat_complex @ A ) ) ).

% index_mat_multrow(4)
thf(fact_141_index__mat__multrow_I4_J,axiom,
    ! [Mul: nat > nat > nat,K: nat,A6: nat,A: mat_nat] :
      ( ( dim_row_nat @ ( gauss_2409696420326117733en_nat @ Mul @ K @ A6 @ A ) )
      = ( dim_row_nat @ A ) ) ).

% index_mat_multrow(4)
thf(fact_142_index__mat__multrow_I4_J,axiom,
    ! [Mul: a > a > a,K: nat,A6: a,A: mat_a] :
      ( ( dim_row_a @ ( gauss_5154200947219177641_gen_a @ Mul @ K @ A6 @ A ) )
      = ( dim_row_a @ A ) ) ).

% index_mat_multrow(4)
thf(fact_143_index__mat__multrow_I4_J,axiom,
    ! [Mul: complex > complex > complex,K: nat,A6: complex,A: mat_complex] :
      ( ( dim_row_complex @ ( gauss_2324787009747932227omplex @ Mul @ K @ A6 @ A ) )
      = ( dim_row_complex @ A ) ) ).

% index_mat_multrow(4)
thf(fact_144_index__mat__multrow_I5_J,axiom,
    ! [Mul: mat_complex > mat_complex > mat_complex,K: nat,A6: mat_complex,A: mat_mat_complex] :
      ( ( dim_col_mat_complex @ ( gauss_8941138319910658002omplex @ Mul @ K @ A6 @ A ) )
      = ( dim_col_mat_complex @ A ) ) ).

% index_mat_multrow(5)
thf(fact_145_index__mat__multrow_I5_J,axiom,
    ! [Mul: complex > complex > complex,K: nat,A6: complex,A: mat_complex] :
      ( ( dim_col_complex @ ( gauss_2324787009747932227omplex @ Mul @ K @ A6 @ A ) )
      = ( dim_col_complex @ A ) ) ).

% index_mat_multrow(5)
thf(fact_146_index__mat__multrow_I5_J,axiom,
    ! [Mul: nat > nat > nat,K: nat,A6: nat,A: mat_nat] :
      ( ( dim_col_nat @ ( gauss_2409696420326117733en_nat @ Mul @ K @ A6 @ A ) )
      = ( dim_col_nat @ A ) ) ).

% index_mat_multrow(5)
thf(fact_147_index__mat__multrow_I5_J,axiom,
    ! [Mul: a > a > a,K: nat,A6: a,A: mat_a] :
      ( ( dim_col_a @ ( gauss_5154200947219177641_gen_a @ Mul @ K @ A6 @ A ) )
      = ( dim_col_a @ A ) ) ).

% index_mat_multrow(5)
thf(fact_148_index__mat__swaprows_I2_J,axiom,
    ! [K: nat,L: nat,A: mat_mat_complex] :
      ( ( dim_row_mat_complex @ ( gauss_2062035380492893324omplex @ K @ L @ A ) )
      = ( dim_row_mat_complex @ A ) ) ).

% index_mat_swaprows(2)
thf(fact_149_index__mat__swaprows_I2_J,axiom,
    ! [K: nat,L: nat,A: mat_nat] :
      ( ( dim_row_nat @ ( gauss_2892196111178452267ws_nat @ K @ L @ A ) )
      = ( dim_row_nat @ A ) ) ).

% index_mat_swaprows(2)
thf(fact_150_index__mat__swaprows_I2_J,axiom,
    ! [K: nat,L: nat,A: mat_a] :
      ( ( dim_row_a @ ( gauss_2482569599970757219rows_a @ K @ L @ A ) )
      = ( dim_row_a @ A ) ) ).

% index_mat_swaprows(2)
thf(fact_151_index__mat__swaprows_I2_J,axiom,
    ! [K: nat,L: nat,A: mat_complex] :
      ( ( dim_row_complex @ ( gauss_1020679828357514249omplex @ K @ L @ A ) )
      = ( dim_row_complex @ A ) ) ).

% index_mat_swaprows(2)
thf(fact_152_index__mat__swaprows_I3_J,axiom,
    ! [K: nat,L: nat,A: mat_mat_complex] :
      ( ( dim_col_mat_complex @ ( gauss_2062035380492893324omplex @ K @ L @ A ) )
      = ( dim_col_mat_complex @ A ) ) ).

% index_mat_swaprows(3)
thf(fact_153_index__mat__swaprows_I3_J,axiom,
    ! [K: nat,L: nat,A: mat_nat] :
      ( ( dim_col_nat @ ( gauss_2892196111178452267ws_nat @ K @ L @ A ) )
      = ( dim_col_nat @ A ) ) ).

% index_mat_swaprows(3)
thf(fact_154_index__mat__swaprows_I3_J,axiom,
    ! [K: nat,L: nat,A: mat_complex] :
      ( ( dim_col_complex @ ( gauss_1020679828357514249omplex @ K @ L @ A ) )
      = ( dim_col_complex @ A ) ) ).

% index_mat_swaprows(3)
thf(fact_155_index__mat__swaprows_I3_J,axiom,
    ! [K: nat,L: nat,A: mat_a] :
      ( ( dim_col_a @ ( gauss_2482569599970757219rows_a @ K @ L @ A ) )
      = ( dim_col_a @ A ) ) ).

% index_mat_swaprows(3)
thf(fact_156_index__mat__addrow_I4_J,axiom,
    ! [Ad: mat_complex > mat_complex > mat_complex,Mul: mat_complex > mat_complex > mat_complex,A6: mat_complex,K: nat,L: nat,A: mat_mat_complex] :
      ( ( dim_row_mat_complex @ ( gauss_1372362650841364061omplex @ Ad @ Mul @ A6 @ K @ L @ A ) )
      = ( dim_row_mat_complex @ A ) ) ).

% index_mat_addrow(4)
thf(fact_157_index__mat__addrow_I4_J,axiom,
    ! [Ad: nat > nat > nat,Mul: nat > nat > nat,A6: nat,K: nat,L: nat,A: mat_nat] :
      ( ( dim_row_nat @ ( gauss_8885043348566651034en_nat @ Ad @ Mul @ A6 @ K @ L @ A ) )
      = ( dim_row_nat @ A ) ) ).

% index_mat_addrow(4)
thf(fact_158_index__mat__addrow_I4_J,axiom,
    ! [Ad: a > a > a,Mul: a > a > a,A6: a,K: nat,L: nat,A: mat_a] :
      ( ( dim_row_a @ ( gauss_3441994962245461172_gen_a @ Ad @ Mul @ A6 @ K @ L @ A ) )
      = ( dim_row_a @ A ) ) ).

% index_mat_addrow(4)
thf(fact_159_index__mat__addrow_I4_J,axiom,
    ! [Ad: complex > complex > complex,Mul: complex > complex > complex,A6: complex,K: nat,L: nat,A: mat_complex] :
      ( ( dim_row_complex @ ( gauss_5252963565656066424omplex @ Ad @ Mul @ A6 @ K @ L @ A ) )
      = ( dim_row_complex @ A ) ) ).

% index_mat_addrow(4)
thf(fact_160_index__mat__addrow_I5_J,axiom,
    ! [Ad: mat_complex > mat_complex > mat_complex,Mul: mat_complex > mat_complex > mat_complex,A6: mat_complex,K: nat,L: nat,A: mat_mat_complex] :
      ( ( dim_col_mat_complex @ ( gauss_1372362650841364061omplex @ Ad @ Mul @ A6 @ K @ L @ A ) )
      = ( dim_col_mat_complex @ A ) ) ).

% index_mat_addrow(5)
thf(fact_161_index__mat__addrow_I5_J,axiom,
    ! [Ad: complex > complex > complex,Mul: complex > complex > complex,A6: complex,K: nat,L: nat,A: mat_complex] :
      ( ( dim_col_complex @ ( gauss_5252963565656066424omplex @ Ad @ Mul @ A6 @ K @ L @ A ) )
      = ( dim_col_complex @ A ) ) ).

% index_mat_addrow(5)
thf(fact_162_index__mat__addrow_I5_J,axiom,
    ! [Ad: nat > nat > nat,Mul: nat > nat > nat,A6: nat,K: nat,L: nat,A: mat_nat] :
      ( ( dim_col_nat @ ( gauss_8885043348566651034en_nat @ Ad @ Mul @ A6 @ K @ L @ A ) )
      = ( dim_col_nat @ A ) ) ).

% index_mat_addrow(5)
thf(fact_163_index__mat__addrow_I5_J,axiom,
    ! [Ad: a > a > a,Mul: a > a > a,A6: a,K: nat,L: nat,A: mat_a] :
      ( ( dim_col_a @ ( gauss_3441994962245461172_gen_a @ Ad @ Mul @ A6 @ K @ L @ A ) )
      = ( dim_col_a @ A ) ) ).

% index_mat_addrow(5)
thf(fact_164_dim__update__mat_I1_J,axiom,
    ! [A: mat_mat_complex,Ij: product_prod_nat_nat,A6: mat_complex] :
      ( ( dim_row_mat_complex @ ( update2332872114388419836omplex @ A @ Ij @ A6 ) )
      = ( dim_row_mat_complex @ A ) ) ).

% dim_update_mat(1)
thf(fact_165_dim__update__mat_I1_J,axiom,
    ! [A: mat_nat,Ij: product_prod_nat_nat,A6: nat] :
      ( ( dim_row_nat @ ( update_mat_nat @ A @ Ij @ A6 ) )
      = ( dim_row_nat @ A ) ) ).

% dim_update_mat(1)
thf(fact_166_dim__update__mat_I1_J,axiom,
    ! [A: mat_a,Ij: product_prod_nat_nat,A6: a] :
      ( ( dim_row_a @ ( update_mat_a @ A @ Ij @ A6 ) )
      = ( dim_row_a @ A ) ) ).

% dim_update_mat(1)
thf(fact_167_dim__update__mat_I1_J,axiom,
    ! [A: mat_complex,Ij: product_prod_nat_nat,A6: complex] :
      ( ( dim_row_complex @ ( update_mat_complex @ A @ Ij @ A6 ) )
      = ( dim_row_complex @ A ) ) ).

% dim_update_mat(1)
thf(fact_168_dim__update__mat_I2_J,axiom,
    ! [A: mat_mat_complex,Ij: product_prod_nat_nat,A6: mat_complex] :
      ( ( dim_col_mat_complex @ ( update2332872114388419836omplex @ A @ Ij @ A6 ) )
      = ( dim_col_mat_complex @ A ) ) ).

% dim_update_mat(2)
thf(fact_169_dim__update__mat_I2_J,axiom,
    ! [A: mat_nat,Ij: product_prod_nat_nat,A6: nat] :
      ( ( dim_col_nat @ ( update_mat_nat @ A @ Ij @ A6 ) )
      = ( dim_col_nat @ A ) ) ).

% dim_update_mat(2)
thf(fact_170_dim__update__mat_I2_J,axiom,
    ! [A: mat_complex,Ij: product_prod_nat_nat,A6: complex] :
      ( ( dim_col_complex @ ( update_mat_complex @ A @ Ij @ A6 ) )
      = ( dim_col_complex @ A ) ) ).

% dim_update_mat(2)
thf(fact_171_dim__update__mat_I2_J,axiom,
    ! [A: mat_a,Ij: product_prod_nat_nat,A6: a] :
      ( ( dim_col_a @ ( update_mat_a @ A @ Ij @ A6 ) )
      = ( dim_col_a @ A ) ) ).

% dim_update_mat(2)
thf(fact_172_index__mat__addcol_I3_J,axiom,
    ! [I4: nat,A: mat_nat,J4: nat,K: nat,A6: nat,L: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_nat @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_nat @ A ) )
       => ( ( K != J4 )
         => ( ( index_mat_nat @ ( column5442440509538803650ol_nat @ A6 @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
            = ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_mat_addcol(3)
thf(fact_173_index__mat__addcol_I3_J,axiom,
    ! [I4: nat,A: mat_complex,J4: nat,K: nat,A6: complex,L: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_complex @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_complex @ A ) )
       => ( ( K != J4 )
         => ( ( index_mat_complex @ ( column896436094548437152omplex @ A6 @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
            = ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_mat_addcol(3)
thf(fact_174_swap__cols__rows__index,axiom,
    ! [I4: nat,A: mat_mat_complex,J4: nat,A6: nat,B6: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_mat_complex @ A ) )
     => ( ( ord_less_nat @ I4 @ ( dim_col_mat_complex @ A ) )
       => ( ( ord_less_nat @ J4 @ ( dim_row_mat_complex @ A ) )
         => ( ( ord_less_nat @ J4 @ ( dim_col_mat_complex @ A ) )
           => ( ( ord_less_nat @ A6 @ ( dim_row_mat_complex @ A ) )
             => ( ( ord_less_nat @ B6 @ ( dim_row_mat_complex @ A ) )
               => ( ( index_7093623372566408491omplex @ ( column1545125301662527289omplex @ A6 @ B6 @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                  = ( index_7093623372566408491omplex @ A @ ( product_Pair_nat_nat @ ( if_nat @ ( I4 = A6 ) @ B6 @ ( if_nat @ ( I4 = B6 ) @ A6 @ I4 ) ) @ ( if_nat @ ( J4 = A6 ) @ B6 @ ( if_nat @ ( J4 = B6 ) @ A6 @ J4 ) ) ) ) ) ) ) ) ) ) ) ).

% swap_cols_rows_index
thf(fact_175_swap__cols__rows__index,axiom,
    ! [I4: nat,A: mat_nat,J4: nat,A6: nat,B6: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_nat @ A ) )
     => ( ( ord_less_nat @ I4 @ ( dim_col_nat @ A ) )
       => ( ( ord_less_nat @ J4 @ ( dim_row_nat @ A ) )
         => ( ( ord_less_nat @ J4 @ ( dim_col_nat @ A ) )
           => ( ( ord_less_nat @ A6 @ ( dim_row_nat @ A ) )
             => ( ( ord_less_nat @ B6 @ ( dim_row_nat @ A ) )
               => ( ( index_mat_nat @ ( column141131285749525182ws_nat @ A6 @ B6 @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                  = ( index_mat_nat @ A @ ( product_Pair_nat_nat @ ( if_nat @ ( I4 = A6 ) @ B6 @ ( if_nat @ ( I4 = B6 ) @ A6 @ I4 ) ) @ ( if_nat @ ( J4 = A6 ) @ B6 @ ( if_nat @ ( J4 = B6 ) @ A6 @ J4 ) ) ) ) ) ) ) ) ) ) ) ).

% swap_cols_rows_index
thf(fact_176_swap__cols__rows__index,axiom,
    ! [I4: nat,A: mat_complex,J4: nat,A6: nat,B6: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_complex @ A ) )
     => ( ( ord_less_nat @ I4 @ ( dim_col_complex @ A ) )
       => ( ( ord_less_nat @ J4 @ ( dim_row_complex @ A ) )
         => ( ( ord_less_nat @ J4 @ ( dim_col_complex @ A ) )
           => ( ( ord_less_nat @ A6 @ ( dim_row_complex @ A ) )
             => ( ( ord_less_nat @ B6 @ ( dim_row_complex @ A ) )
               => ( ( index_mat_complex @ ( column7161609239796038556omplex @ A6 @ B6 @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                  = ( index_mat_complex @ A @ ( product_Pair_nat_nat @ ( if_nat @ ( I4 = A6 ) @ B6 @ ( if_nat @ ( I4 = B6 ) @ A6 @ I4 ) ) @ ( if_nat @ ( J4 = A6 ) @ B6 @ ( if_nat @ ( J4 = B6 ) @ A6 @ J4 ) ) ) ) ) ) ) ) ) ) ) ).

% swap_cols_rows_index
thf(fact_177_swap__cols__rows__index,axiom,
    ! [I4: nat,A: mat_a,J4: nat,A6: nat,B6: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_a @ A ) )
     => ( ( ord_less_nat @ I4 @ ( dim_col_a @ A ) )
       => ( ( ord_less_nat @ J4 @ ( dim_row_a @ A ) )
         => ( ( ord_less_nat @ J4 @ ( dim_col_a @ A ) )
           => ( ( ord_less_nat @ A6 @ ( dim_row_a @ A ) )
             => ( ( ord_less_nat @ B6 @ ( dim_row_a @ A ) )
               => ( ( index_mat_a @ ( column5129559316938501008rows_a @ A6 @ B6 @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                  = ( index_mat_a @ A @ ( product_Pair_nat_nat @ ( if_nat @ ( I4 = A6 ) @ B6 @ ( if_nat @ ( I4 = B6 ) @ A6 @ I4 ) ) @ ( if_nat @ ( J4 = A6 ) @ B6 @ ( if_nat @ ( J4 = B6 ) @ A6 @ J4 ) ) ) ) ) ) ) ) ) ) ) ).

% swap_cols_rows_index
thf(fact_178_index__mat__swapcols_I1_J,axiom,
    ! [I4: nat,A: mat_mat_complex,J4: nat,K: nat,L: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_mat_complex @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_mat_complex @ A ) )
       => ( ( ( K = J4 )
           => ( ( index_7093623372566408491omplex @ ( column5864614067406638606omplex @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = ( index_7093623372566408491omplex @ A @ ( product_Pair_nat_nat @ I4 @ L ) ) ) )
          & ( ( K != J4 )
           => ( ( ( L = J4 )
               => ( ( index_7093623372566408491omplex @ ( column5864614067406638606omplex @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                  = ( index_7093623372566408491omplex @ A @ ( product_Pair_nat_nat @ I4 @ K ) ) ) )
              & ( ( L != J4 )
               => ( ( index_7093623372566408491omplex @ ( column5864614067406638606omplex @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                  = ( index_7093623372566408491omplex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ) ) ) ).

% index_mat_swapcols(1)
thf(fact_179_index__mat__swapcols_I1_J,axiom,
    ! [I4: nat,A: mat_nat,J4: nat,K: nat,L: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_nat @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_nat @ A ) )
       => ( ( ( K = J4 )
           => ( ( index_mat_nat @ ( column8975334967120514601ls_nat @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I4 @ L ) ) ) )
          & ( ( K != J4 )
           => ( ( ( L = J4 )
               => ( ( index_mat_nat @ ( column8975334967120514601ls_nat @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                  = ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I4 @ K ) ) ) )
              & ( ( L != J4 )
               => ( ( index_mat_nat @ ( column8975334967120514601ls_nat @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                  = ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ) ) ) ).

% index_mat_swapcols(1)
thf(fact_180_index__mat__swapcols_I1_J,axiom,
    ! [I4: nat,A: mat_complex,J4: nat,K: nat,L: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_complex @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_complex @ A ) )
       => ( ( ( K = J4 )
           => ( ( index_mat_complex @ ( column4357519492343924999omplex @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ L ) ) ) )
          & ( ( K != J4 )
           => ( ( ( L = J4 )
               => ( ( index_mat_complex @ ( column4357519492343924999omplex @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                  = ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ K ) ) ) )
              & ( ( L != J4 )
               => ( ( index_mat_complex @ ( column4357519492343924999omplex @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                  = ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ) ) ) ).

% index_mat_swapcols(1)
thf(fact_181_index__mat__swapcols_I1_J,axiom,
    ! [I4: nat,A: mat_a,J4: nat,K: nat,L: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_a @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_a @ A ) )
       => ( ( ( K = J4 )
           => ( ( index_mat_a @ ( column2528828918332591333cols_a @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = ( index_mat_a @ A @ ( product_Pair_nat_nat @ I4 @ L ) ) ) )
          & ( ( K != J4 )
           => ( ( ( L = J4 )
               => ( ( index_mat_a @ ( column2528828918332591333cols_a @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                  = ( index_mat_a @ A @ ( product_Pair_nat_nat @ I4 @ K ) ) ) )
              & ( ( L != J4 )
               => ( ( index_mat_a @ ( column2528828918332591333cols_a @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                  = ( index_mat_a @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ) ) ) ).

% index_mat_swapcols(1)
thf(fact_182_index__mat__multcol_I2_J,axiom,
    ! [I4: nat,A: mat_nat,J4: nat,A6: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_nat @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_nat @ A ) )
       => ( ( index_mat_nat @ ( column384608550491945071ol_nat @ J4 @ A6 @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( times_times_nat @ A6 @ ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_mat_multcol(2)
thf(fact_183_index__mat__multcol_I2_J,axiom,
    ! [I4: nat,A: mat_complex,J4: nat,A6: complex] :
      ( ( ord_less_nat @ I4 @ ( dim_row_complex @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_complex @ A ) )
       => ( ( index_mat_complex @ ( column4410001698458707789omplex @ J4 @ A6 @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( times_times_complex @ A6 @ ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_mat_multcol(2)
thf(fact_184_index__mat__multcol_I1_J,axiom,
    ! [I4: nat,A: mat_nat,J4: nat,K: nat,A6: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_nat @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_nat @ A ) )
       => ( ( ( K = J4 )
           => ( ( index_mat_nat @ ( column384608550491945071ol_nat @ K @ A6 @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = ( times_times_nat @ A6 @ ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) )
          & ( ( K != J4 )
           => ( ( index_mat_nat @ ( column384608550491945071ol_nat @ K @ A6 @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ) ).

% index_mat_multcol(1)
thf(fact_185_index__mat__multcol_I1_J,axiom,
    ! [I4: nat,A: mat_complex,J4: nat,K: nat,A6: complex] :
      ( ( ord_less_nat @ I4 @ ( dim_row_complex @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_complex @ A ) )
       => ( ( ( K = J4 )
           => ( ( index_mat_complex @ ( column4410001698458707789omplex @ K @ A6 @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = ( times_times_complex @ A6 @ ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) )
          & ( ( K != J4 )
           => ( ( index_mat_complex @ ( column4410001698458707789omplex @ K @ A6 @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ) ).

% index_mat_multcol(1)
thf(fact_186_index__map__mat_I1_J,axiom,
    ! [I4: nat,A: mat_complex,J4: nat,F: complex > a] :
      ( ( ord_less_nat @ I4 @ ( dim_row_complex @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_complex @ A ) )
       => ( ( index_mat_a @ ( map_mat_complex_a @ F @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( F @ ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_map_mat(1)
thf(fact_187_index__map__mat_I1_J,axiom,
    ! [I4: nat,A: mat_a,J4: nat,F: a > a] :
      ( ( ord_less_nat @ I4 @ ( dim_row_a @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_a @ A ) )
       => ( ( index_mat_a @ ( map_mat_a_a @ F @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( F @ ( index_mat_a @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_map_mat(1)
thf(fact_188_index__map__mat_I1_J,axiom,
    ! [I4: nat,A: mat_nat,J4: nat,F: nat > a] :
      ( ( ord_less_nat @ I4 @ ( dim_row_nat @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_nat @ A ) )
       => ( ( index_mat_a @ ( map_mat_nat_a @ F @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( F @ ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_map_mat(1)
thf(fact_189_index__map__mat_I1_J,axiom,
    ! [I4: nat,A: mat_a,J4: nat,F: a > complex] :
      ( ( ord_less_nat @ I4 @ ( dim_row_a @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_a @ A ) )
       => ( ( index_mat_complex @ ( map_mat_a_complex @ F @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( F @ ( index_mat_a @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_map_mat(1)
thf(fact_190_index__map__mat_I1_J,axiom,
    ! [I4: nat,A: mat_complex,J4: nat,F: complex > complex] :
      ( ( ord_less_nat @ I4 @ ( dim_row_complex @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_complex @ A ) )
       => ( ( index_mat_complex @ ( map_ma6508466363326507375omplex @ F @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( F @ ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_map_mat(1)
thf(fact_191_index__map__mat_I1_J,axiom,
    ! [I4: nat,A: mat_nat,J4: nat,F: nat > complex] :
      ( ( ord_less_nat @ I4 @ ( dim_row_nat @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_nat @ A ) )
       => ( ( index_mat_complex @ ( map_mat_nat_complex @ F @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( F @ ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_map_mat(1)
thf(fact_192_index__map__mat_I1_J,axiom,
    ! [I4: nat,A: mat_a,J4: nat,F: a > nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_a @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_a @ A ) )
       => ( ( index_mat_nat @ ( map_mat_a_nat @ F @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( F @ ( index_mat_a @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_map_mat(1)
thf(fact_193_index__map__mat_I1_J,axiom,
    ! [I4: nat,A: mat_complex,J4: nat,F: complex > nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_complex @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_complex @ A ) )
       => ( ( index_mat_nat @ ( map_mat_complex_nat @ F @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( F @ ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_map_mat(1)
thf(fact_194_index__map__mat_I1_J,axiom,
    ! [I4: nat,A: mat_nat,J4: nat,F: nat > nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_nat @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_nat @ A ) )
       => ( ( index_mat_nat @ ( map_mat_nat_nat @ F @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( F @ ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_map_mat(1)
thf(fact_195_index__map__mat_I1_J,axiom,
    ! [I4: nat,A: mat_mat_complex,J4: nat,F: mat_complex > a] :
      ( ( ord_less_nat @ I4 @ ( dim_row_mat_complex @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_mat_complex @ A ) )
       => ( ( index_mat_a @ ( map_ma1327204579214447656plex_a @ F @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( F @ ( index_7093623372566408491omplex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_map_mat(1)
thf(fact_196_index__transpose__mat_I1_J,axiom,
    ! [I4: nat,A: mat_mat_complex,J4: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_col_mat_complex @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_row_mat_complex @ A ) )
       => ( ( index_7093623372566408491omplex @ ( transp4906945491372815122omplex @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( index_7093623372566408491omplex @ A @ ( product_Pair_nat_nat @ J4 @ I4 ) ) ) ) ) ).

% index_transpose_mat(1)
thf(fact_197_index__transpose__mat_I1_J,axiom,
    ! [I4: nat,A: mat_nat,J4: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_col_nat @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_row_nat @ A ) )
       => ( ( index_mat_nat @ ( transpose_mat_nat @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( index_mat_nat @ A @ ( product_Pair_nat_nat @ J4 @ I4 ) ) ) ) ) ).

% index_transpose_mat(1)
thf(fact_198_index__transpose__mat_I1_J,axiom,
    ! [I4: nat,A: mat_complex,J4: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_col_complex @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_row_complex @ A ) )
       => ( ( index_mat_complex @ ( transp3074176993011536131omplex @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( index_mat_complex @ A @ ( product_Pair_nat_nat @ J4 @ I4 ) ) ) ) ) ).

% index_transpose_mat(1)
thf(fact_199_index__transpose__mat_I1_J,axiom,
    ! [I4: nat,A: mat_a,J4: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_col_a @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_row_a @ A ) )
       => ( ( index_mat_a @ ( transpose_mat_a @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( index_mat_a @ A @ ( product_Pair_nat_nat @ J4 @ I4 ) ) ) ) ) ).

% index_transpose_mat(1)
thf(fact_200_ev__blocks__part__def,axiom,
    ( jordan4637981584770492064omplex
    = ( ^ [M: nat,A8: mat_complex] :
        ! [I: nat,J: nat,K2: nat] :
          ( ( ord_less_nat @ I @ J )
         => ( ( ord_less_nat @ J @ K2 )
           => ( ( ord_less_nat @ K2 @ M )
             => ( ( ( index_mat_complex @ A8 @ ( product_Pair_nat_nat @ K2 @ K2 ) )
                  = ( index_mat_complex @ A8 @ ( product_Pair_nat_nat @ I @ I ) ) )
               => ( ( index_mat_complex @ A8 @ ( product_Pair_nat_nat @ J @ J ) )
                  = ( index_mat_complex @ A8 @ ( product_Pair_nat_nat @ I @ I ) ) ) ) ) ) ) ) ) ).

% ev_blocks_part_def
thf(fact_201_diag__elem__indices__elem,axiom,
    ! [A6: nat,X: mat_complex,B: mat_mat_complex] :
      ( ( member_nat @ A6 @ ( projec62243536223845275omplex @ X @ B ) )
     => ( ( ord_less_nat @ A6 @ ( dim_row_mat_complex @ B ) )
        & ( ( index_7093623372566408491omplex @ B @ ( product_Pair_nat_nat @ A6 @ A6 ) )
          = X ) ) ) ).

% diag_elem_indices_elem
thf(fact_202_diag__elem__indices__elem,axiom,
    ! [A6: nat,X: nat,B: mat_nat] :
      ( ( member_nat @ A6 @ ( projec3388465016253909212es_nat @ X @ B ) )
     => ( ( ord_less_nat @ A6 @ ( dim_row_nat @ B ) )
        & ( ( index_mat_nat @ B @ ( product_Pair_nat_nat @ A6 @ A6 ) )
          = X ) ) ) ).

% diag_elem_indices_elem
thf(fact_203_diag__elem__indices__elem,axiom,
    ! [A6: nat,X: complex,B: mat_complex] :
      ( ( member_nat @ A6 @ ( projec1944845285785509306omplex @ X @ B ) )
     => ( ( ord_less_nat @ A6 @ ( dim_row_complex @ B ) )
        & ( ( index_mat_complex @ B @ ( product_Pair_nat_nat @ A6 @ A6 ) )
          = X ) ) ) ).

% diag_elem_indices_elem
thf(fact_204_diag__elem__indices__elem,axiom,
    ! [A6: nat,X: a,B: mat_a] :
      ( ( member_nat @ A6 @ ( projec8096995296758946034ices_a @ X @ B ) )
     => ( ( ord_less_nat @ A6 @ ( dim_row_a @ B ) )
        & ( ( index_mat_a @ B @ ( product_Pair_nat_nat @ A6 @ A6 ) )
          = X ) ) ) ).

% diag_elem_indices_elem
thf(fact_205_Matrix_Otranspose__transpose,axiom,
    ! [A: mat_a] :
      ( ( transpose_mat_a @ ( transpose_mat_a @ A ) )
      = A ) ).

% Matrix.transpose_transpose
thf(fact_206_Matrix_Otranspose__transpose,axiom,
    ! [A: mat_complex] :
      ( ( transp3074176993011536131omplex @ ( transp3074176993011536131omplex @ A ) )
      = A ) ).

% Matrix.transpose_transpose
thf(fact_207_map__mat__transpose,axiom,
    ! [F: a > a,A: mat_a] :
      ( ( transpose_mat_a @ ( map_mat_a_a @ F @ A ) )
      = ( map_mat_a_a @ F @ ( transpose_mat_a @ A ) ) ) ).

% map_mat_transpose
thf(fact_208_map__mat__transpose,axiom,
    ! [F: complex > a,A: mat_complex] :
      ( ( transpose_mat_a @ ( map_mat_complex_a @ F @ A ) )
      = ( map_mat_complex_a @ F @ ( transp3074176993011536131omplex @ A ) ) ) ).

% map_mat_transpose
thf(fact_209_map__mat__transpose,axiom,
    ! [F: a > complex,A: mat_a] :
      ( ( transp3074176993011536131omplex @ ( map_mat_a_complex @ F @ A ) )
      = ( map_mat_a_complex @ F @ ( transpose_mat_a @ A ) ) ) ).

% map_mat_transpose
thf(fact_210_map__mat__transpose,axiom,
    ! [F: complex > complex,A: mat_complex] :
      ( ( transp3074176993011536131omplex @ ( map_ma6508466363326507375omplex @ F @ A ) )
      = ( map_ma6508466363326507375omplex @ F @ ( transp3074176993011536131omplex @ A ) ) ) ).

% map_mat_transpose
thf(fact_211_transpose__mat__eq,axiom,
    ! [A: mat_a,B: mat_a] :
      ( ( ( transpose_mat_a @ A )
        = ( transpose_mat_a @ B ) )
      = ( A = B ) ) ).

% transpose_mat_eq
thf(fact_212_transpose__mat__eq,axiom,
    ! [A: mat_complex,B: mat_complex] :
      ( ( ( transp3074176993011536131omplex @ A )
        = ( transp3074176993011536131omplex @ B ) )
      = ( A = B ) ) ).

% transpose_mat_eq
thf(fact_213_swap__cols__rows__def,axiom,
    ( column5129559316938501008rows_a
    = ( ^ [K2: nat,L2: nat,A8: mat_a] : ( gauss_2482569599970757219rows_a @ K2 @ L2 @ ( column2528828918332591333cols_a @ K2 @ L2 @ A8 ) ) ) ) ).

% swap_cols_rows_def
thf(fact_214_swap__cols__rows__def,axiom,
    ( column7161609239796038556omplex
    = ( ^ [K2: nat,L2: nat,A8: mat_complex] : ( gauss_1020679828357514249omplex @ K2 @ L2 @ ( column4357519492343924999omplex @ K2 @ L2 @ A8 ) ) ) ) ).

% swap_cols_rows_def
thf(fact_215_index__mult__mat_I2_J,axiom,
    ! [A: mat_nat,B: mat_nat] :
      ( ( dim_row_nat @ ( times_times_mat_nat @ A @ B ) )
      = ( dim_row_nat @ A ) ) ).

% index_mult_mat(2)
thf(fact_216_index__mult__mat_I2_J,axiom,
    ! [A: mat_complex,B: mat_complex] :
      ( ( dim_row_complex @ ( times_8009071140041733218omplex @ A @ B ) )
      = ( dim_row_complex @ A ) ) ).

% index_mult_mat(2)
thf(fact_217_index__mult__mat_I3_J,axiom,
    ! [A: mat_nat,B: mat_nat] :
      ( ( dim_col_nat @ ( times_times_mat_nat @ A @ B ) )
      = ( dim_col_nat @ B ) ) ).

% index_mult_mat(3)
thf(fact_218_index__mult__mat_I3_J,axiom,
    ! [A: mat_complex,B: mat_complex] :
      ( ( dim_col_complex @ ( times_8009071140041733218omplex @ A @ B ) )
      = ( dim_col_complex @ B ) ) ).

% index_mult_mat(3)
thf(fact_219_index__map__mat_I2_J,axiom,
    ! [F: a > a,A: mat_a] :
      ( ( dim_row_a @ ( map_mat_a_a @ F @ A ) )
      = ( dim_row_a @ A ) ) ).

% index_map_mat(2)
thf(fact_220_index__map__mat_I2_J,axiom,
    ! [F: complex > a,A: mat_complex] :
      ( ( dim_row_a @ ( map_mat_complex_a @ F @ A ) )
      = ( dim_row_complex @ A ) ) ).

% index_map_mat(2)
thf(fact_221_index__map__mat_I2_J,axiom,
    ! [F: a > complex,A: mat_a] :
      ( ( dim_row_complex @ ( map_mat_a_complex @ F @ A ) )
      = ( dim_row_a @ A ) ) ).

% index_map_mat(2)
thf(fact_222_index__map__mat_I2_J,axiom,
    ! [F: complex > complex,A: mat_complex] :
      ( ( dim_row_complex @ ( map_ma6508466363326507375omplex @ F @ A ) )
      = ( dim_row_complex @ A ) ) ).

% index_map_mat(2)
thf(fact_223_index__map__mat_I2_J,axiom,
    ! [F: nat > a,A: mat_nat] :
      ( ( dim_row_a @ ( map_mat_nat_a @ F @ A ) )
      = ( dim_row_nat @ A ) ) ).

% index_map_mat(2)
thf(fact_224_index__map__mat_I2_J,axiom,
    ! [F: nat > complex,A: mat_nat] :
      ( ( dim_row_complex @ ( map_mat_nat_complex @ F @ A ) )
      = ( dim_row_nat @ A ) ) ).

% index_map_mat(2)
thf(fact_225_index__map__mat_I2_J,axiom,
    ! [F: a > nat,A: mat_a] :
      ( ( dim_row_nat @ ( map_mat_a_nat @ F @ A ) )
      = ( dim_row_a @ A ) ) ).

% index_map_mat(2)
thf(fact_226_index__map__mat_I2_J,axiom,
    ! [F: complex > nat,A: mat_complex] :
      ( ( dim_row_nat @ ( map_mat_complex_nat @ F @ A ) )
      = ( dim_row_complex @ A ) ) ).

% index_map_mat(2)
thf(fact_227_index__map__mat_I2_J,axiom,
    ! [F: nat > nat,A: mat_nat] :
      ( ( dim_row_nat @ ( map_mat_nat_nat @ F @ A ) )
      = ( dim_row_nat @ A ) ) ).

% index_map_mat(2)
thf(fact_228_index__map__mat_I2_J,axiom,
    ! [F: mat_complex > a,A: mat_mat_complex] :
      ( ( dim_row_a @ ( map_ma1327204579214447656plex_a @ F @ A ) )
      = ( dim_row_mat_complex @ A ) ) ).

% index_map_mat(2)
thf(fact_229_zero__transpose__mat,axiom,
    ! [N: nat,M2: nat] :
      ( ( transpose_mat_nat @ ( zero_mat_nat @ N @ M2 ) )
      = ( zero_mat_nat @ M2 @ N ) ) ).

% zero_transpose_mat
thf(fact_230_zero__transpose__mat,axiom,
    ! [N: nat,M2: nat] :
      ( ( transp3074176993011536131omplex @ ( zero_mat_complex @ N @ M2 ) )
      = ( zero_mat_complex @ M2 @ N ) ) ).

% zero_transpose_mat
thf(fact_231_zero__transpose__mat,axiom,
    ! [N: nat,M2: nat] :
      ( ( transpose_mat_a @ ( zero_mat_a @ N @ M2 ) )
      = ( zero_mat_a @ M2 @ N ) ) ).

% zero_transpose_mat
thf(fact_232_index__map__mat_I3_J,axiom,
    ! [F: a > a,A: mat_a] :
      ( ( dim_col_a @ ( map_mat_a_a @ F @ A ) )
      = ( dim_col_a @ A ) ) ).

% index_map_mat(3)
thf(fact_233_index__map__mat_I3_J,axiom,
    ! [F: nat > a,A: mat_nat] :
      ( ( dim_col_a @ ( map_mat_nat_a @ F @ A ) )
      = ( dim_col_nat @ A ) ) ).

% index_map_mat(3)
thf(fact_234_index__map__mat_I3_J,axiom,
    ! [F: nat > complex,A: mat_nat] :
      ( ( dim_col_complex @ ( map_mat_nat_complex @ F @ A ) )
      = ( dim_col_nat @ A ) ) ).

% index_map_mat(3)
thf(fact_235_index__map__mat_I3_J,axiom,
    ! [F: a > nat,A: mat_a] :
      ( ( dim_col_nat @ ( map_mat_a_nat @ F @ A ) )
      = ( dim_col_a @ A ) ) ).

% index_map_mat(3)
thf(fact_236_index__map__mat_I3_J,axiom,
    ! [F: complex > nat,A: mat_complex] :
      ( ( dim_col_nat @ ( map_mat_complex_nat @ F @ A ) )
      = ( dim_col_complex @ A ) ) ).

% index_map_mat(3)
thf(fact_237_index__map__mat_I3_J,axiom,
    ! [F: nat > nat,A: mat_nat] :
      ( ( dim_col_nat @ ( map_mat_nat_nat @ F @ A ) )
      = ( dim_col_nat @ A ) ) ).

% index_map_mat(3)
thf(fact_238_index__map__mat_I3_J,axiom,
    ! [F: complex > a,A: mat_complex] :
      ( ( dim_col_a @ ( map_mat_complex_a @ F @ A ) )
      = ( dim_col_complex @ A ) ) ).

% index_map_mat(3)
thf(fact_239_index__map__mat_I3_J,axiom,
    ! [F: complex > complex,A: mat_complex] :
      ( ( dim_col_complex @ ( map_ma6508466363326507375omplex @ F @ A ) )
      = ( dim_col_complex @ A ) ) ).

% index_map_mat(3)
thf(fact_240_index__map__mat_I3_J,axiom,
    ! [F: a > complex,A: mat_a] :
      ( ( dim_col_complex @ ( map_mat_a_complex @ F @ A ) )
      = ( dim_col_a @ A ) ) ).

% index_map_mat(3)
thf(fact_241_index__map__mat_I3_J,axiom,
    ! [F: mat_complex > a,A: mat_mat_complex] :
      ( ( dim_col_a @ ( map_ma1327204579214447656plex_a @ F @ A ) )
      = ( dim_col_mat_complex @ A ) ) ).

% index_map_mat(3)
thf(fact_242_index__mat__swapcols_I2_J,axiom,
    ! [K: nat,L: nat,A: mat_mat_complex] :
      ( ( dim_row_mat_complex @ ( column5864614067406638606omplex @ K @ L @ A ) )
      = ( dim_row_mat_complex @ A ) ) ).

% index_mat_swapcols(2)
thf(fact_243_index__mat__swapcols_I2_J,axiom,
    ! [K: nat,L: nat,A: mat_nat] :
      ( ( dim_row_nat @ ( column8975334967120514601ls_nat @ K @ L @ A ) )
      = ( dim_row_nat @ A ) ) ).

% index_mat_swapcols(2)
thf(fact_244_index__mat__swapcols_I2_J,axiom,
    ! [K: nat,L: nat,A: mat_a] :
      ( ( dim_row_a @ ( column2528828918332591333cols_a @ K @ L @ A ) )
      = ( dim_row_a @ A ) ) ).

% index_mat_swapcols(2)
thf(fact_245_index__mat__swapcols_I2_J,axiom,
    ! [K: nat,L: nat,A: mat_complex] :
      ( ( dim_row_complex @ ( column4357519492343924999omplex @ K @ L @ A ) )
      = ( dim_row_complex @ A ) ) ).

% index_mat_swapcols(2)
thf(fact_246_index__mat__swapcols_I3_J,axiom,
    ! [K: nat,L: nat,A: mat_mat_complex] :
      ( ( dim_col_mat_complex @ ( column5864614067406638606omplex @ K @ L @ A ) )
      = ( dim_col_mat_complex @ A ) ) ).

% index_mat_swapcols(3)
thf(fact_247_index__mat__swapcols_I3_J,axiom,
    ! [K: nat,L: nat,A: mat_nat] :
      ( ( dim_col_nat @ ( column8975334967120514601ls_nat @ K @ L @ A ) )
      = ( dim_col_nat @ A ) ) ).

% index_mat_swapcols(3)
thf(fact_248_index__mat__swapcols_I3_J,axiom,
    ! [K: nat,L: nat,A: mat_complex] :
      ( ( dim_col_complex @ ( column4357519492343924999omplex @ K @ L @ A ) )
      = ( dim_col_complex @ A ) ) ).

% index_mat_swapcols(3)
thf(fact_249_index__mat__swapcols_I3_J,axiom,
    ! [K: nat,L: nat,A: mat_a] :
      ( ( dim_col_a @ ( column2528828918332591333cols_a @ K @ L @ A ) )
      = ( dim_col_a @ A ) ) ).

% index_mat_swapcols(3)
thf(fact_250_swap__cols__rows__carrier_I1_J,axiom,
    ! [K: nat,L: nat,A: mat_mat_complex] :
      ( ( dim_row_mat_complex @ ( column1545125301662527289omplex @ K @ L @ A ) )
      = ( dim_row_mat_complex @ A ) ) ).

% swap_cols_rows_carrier(1)
thf(fact_251_swap__cols__rows__carrier_I1_J,axiom,
    ! [K: nat,L: nat,A: mat_nat] :
      ( ( dim_row_nat @ ( column141131285749525182ws_nat @ K @ L @ A ) )
      = ( dim_row_nat @ A ) ) ).

% swap_cols_rows_carrier(1)
thf(fact_252_swap__cols__rows__carrier_I1_J,axiom,
    ! [K: nat,L: nat,A: mat_a] :
      ( ( dim_row_a @ ( column5129559316938501008rows_a @ K @ L @ A ) )
      = ( dim_row_a @ A ) ) ).

% swap_cols_rows_carrier(1)
thf(fact_253_swap__cols__rows__carrier_I1_J,axiom,
    ! [K: nat,L: nat,A: mat_complex] :
      ( ( dim_row_complex @ ( column7161609239796038556omplex @ K @ L @ A ) )
      = ( dim_row_complex @ A ) ) ).

% swap_cols_rows_carrier(1)
thf(fact_254_swap__cols__rows__carrier_I2_J,axiom,
    ! [K: nat,L: nat,A: mat_mat_complex] :
      ( ( dim_col_mat_complex @ ( column1545125301662527289omplex @ K @ L @ A ) )
      = ( dim_col_mat_complex @ A ) ) ).

% swap_cols_rows_carrier(2)
thf(fact_255_swap__cols__rows__carrier_I2_J,axiom,
    ! [K: nat,L: nat,A: mat_nat] :
      ( ( dim_col_nat @ ( column141131285749525182ws_nat @ K @ L @ A ) )
      = ( dim_col_nat @ A ) ) ).

% swap_cols_rows_carrier(2)
thf(fact_256_swap__cols__rows__carrier_I2_J,axiom,
    ! [K: nat,L: nat,A: mat_complex] :
      ( ( dim_col_complex @ ( column7161609239796038556omplex @ K @ L @ A ) )
      = ( dim_col_complex @ A ) ) ).

% swap_cols_rows_carrier(2)
thf(fact_257_swap__cols__rows__carrier_I2_J,axiom,
    ! [K: nat,L: nat,A: mat_a] :
      ( ( dim_col_a @ ( column5129559316938501008rows_a @ K @ L @ A ) )
      = ( dim_col_a @ A ) ) ).

% swap_cols_rows_carrier(2)
thf(fact_258_index__mat__addcol_I4_J,axiom,
    ! [A6: nat,K: nat,L: nat,A: mat_nat] :
      ( ( dim_row_nat @ ( column5442440509538803650ol_nat @ A6 @ K @ L @ A ) )
      = ( dim_row_nat @ A ) ) ).

% index_mat_addcol(4)
thf(fact_259_index__mat__addcol_I4_J,axiom,
    ! [A6: complex,K: nat,L: nat,A: mat_complex] :
      ( ( dim_row_complex @ ( column896436094548437152omplex @ A6 @ K @ L @ A ) )
      = ( dim_row_complex @ A ) ) ).

% index_mat_addcol(4)
thf(fact_260_index__mat__addcol_I5_J,axiom,
    ! [A6: complex,K: nat,L: nat,A: mat_complex] :
      ( ( dim_col_complex @ ( column896436094548437152omplex @ A6 @ K @ L @ A ) )
      = ( dim_col_complex @ A ) ) ).

% index_mat_addcol(5)
thf(fact_261_index__mat__addcol_I5_J,axiom,
    ! [A6: nat,K: nat,L: nat,A: mat_nat] :
      ( ( dim_col_nat @ ( column5442440509538803650ol_nat @ A6 @ K @ L @ A ) )
      = ( dim_col_nat @ A ) ) ).

% index_mat_addcol(5)
thf(fact_262_index__transpose__mat_I2_J,axiom,
    ! [A: mat_mat_complex] :
      ( ( dim_row_mat_complex @ ( transp4906945491372815122omplex @ A ) )
      = ( dim_col_mat_complex @ A ) ) ).

% index_transpose_mat(2)
thf(fact_263_index__transpose__mat_I2_J,axiom,
    ! [A: mat_nat] :
      ( ( dim_row_nat @ ( transpose_mat_nat @ A ) )
      = ( dim_col_nat @ A ) ) ).

% index_transpose_mat(2)
thf(fact_264_index__transpose__mat_I2_J,axiom,
    ! [A: mat_a] :
      ( ( dim_row_a @ ( transpose_mat_a @ A ) )
      = ( dim_col_a @ A ) ) ).

% index_transpose_mat(2)
thf(fact_265_index__transpose__mat_I2_J,axiom,
    ! [A: mat_complex] :
      ( ( dim_row_complex @ ( transp3074176993011536131omplex @ A ) )
      = ( dim_col_complex @ A ) ) ).

% index_transpose_mat(2)
thf(fact_266_index__transpose__mat_I3_J,axiom,
    ! [A: mat_mat_complex] :
      ( ( dim_col_mat_complex @ ( transp4906945491372815122omplex @ A ) )
      = ( dim_row_mat_complex @ A ) ) ).

% index_transpose_mat(3)
thf(fact_267_index__transpose__mat_I3_J,axiom,
    ! [A: mat_nat] :
      ( ( dim_col_nat @ ( transpose_mat_nat @ A ) )
      = ( dim_row_nat @ A ) ) ).

% index_transpose_mat(3)
thf(fact_268_index__transpose__mat_I3_J,axiom,
    ! [A: mat_a] :
      ( ( dim_col_a @ ( transpose_mat_a @ A ) )
      = ( dim_row_a @ A ) ) ).

% index_transpose_mat(3)
thf(fact_269_index__transpose__mat_I3_J,axiom,
    ! [A: mat_complex] :
      ( ( dim_col_complex @ ( transp3074176993011536131omplex @ A ) )
      = ( dim_row_complex @ A ) ) ).

% index_transpose_mat(3)
thf(fact_270_gcd_Ocases,axiom,
    ! [X: product_prod_nat_nat] :
      ~ ! [A5: nat,B5: nat] :
          ( X
         != ( product_Pair_nat_nat @ A5 @ B5 ) ) ).

% gcd.cases
thf(fact_271_right__mult__zero__mat_H,axiom,
    ! [A: mat_nat,N: nat,Nc: nat] :
      ( ( ( dim_col_nat @ A )
        = N )
     => ( ( times_times_mat_nat @ A @ ( zero_mat_nat @ N @ Nc ) )
        = ( zero_mat_nat @ ( dim_row_nat @ A ) @ Nc ) ) ) ).

% right_mult_zero_mat'
thf(fact_272_right__mult__zero__mat_H,axiom,
    ! [A: mat_complex,N: nat,Nc: nat] :
      ( ( ( dim_col_complex @ A )
        = N )
     => ( ( times_8009071140041733218omplex @ A @ ( zero_mat_complex @ N @ Nc ) )
        = ( zero_mat_complex @ ( dim_row_complex @ A ) @ Nc ) ) ) ).

% right_mult_zero_mat'
thf(fact_273_left__mult__zero__mat_H,axiom,
    ! [A: mat_nat,N: nat,Nr: nat] :
      ( ( ( dim_row_nat @ A )
        = N )
     => ( ( times_times_mat_nat @ ( zero_mat_nat @ Nr @ N ) @ A )
        = ( zero_mat_nat @ Nr @ ( dim_col_nat @ A ) ) ) ) ).

% left_mult_zero_mat'
thf(fact_274_left__mult__zero__mat_H,axiom,
    ! [A: mat_complex,N: nat,Nr: nat] :
      ( ( ( dim_row_complex @ A )
        = N )
     => ( ( times_8009071140041733218omplex @ ( zero_mat_complex @ Nr @ N ) @ A )
        = ( zero_mat_complex @ Nr @ ( dim_col_complex @ A ) ) ) ) ).

% left_mult_zero_mat'
thf(fact_275_diag__elem__indices__itself,axiom,
    ! [I4: nat,B: mat_mat_complex] :
      ( ( ord_less_nat @ I4 @ ( dim_row_mat_complex @ B ) )
     => ( member_nat @ I4 @ ( projec62243536223845275omplex @ ( index_7093623372566408491omplex @ B @ ( product_Pair_nat_nat @ I4 @ I4 ) ) @ B ) ) ) ).

% diag_elem_indices_itself
thf(fact_276_diag__elem__indices__itself,axiom,
    ! [I4: nat,B: mat_nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_nat @ B ) )
     => ( member_nat @ I4 @ ( projec3388465016253909212es_nat @ ( index_mat_nat @ B @ ( product_Pair_nat_nat @ I4 @ I4 ) ) @ B ) ) ) ).

% diag_elem_indices_itself
thf(fact_277_diag__elem__indices__itself,axiom,
    ! [I4: nat,B: mat_complex] :
      ( ( ord_less_nat @ I4 @ ( dim_row_complex @ B ) )
     => ( member_nat @ I4 @ ( projec1944845285785509306omplex @ ( index_mat_complex @ B @ ( product_Pair_nat_nat @ I4 @ I4 ) ) @ B ) ) ) ).

% diag_elem_indices_itself
thf(fact_278_diag__elem__indices__itself,axiom,
    ! [I4: nat,B: mat_a] :
      ( ( ord_less_nat @ I4 @ ( dim_row_a @ B ) )
     => ( member_nat @ I4 @ ( projec8096995296758946034ices_a @ ( index_mat_a @ B @ ( product_Pair_nat_nat @ I4 @ I4 ) ) @ B ) ) ) ).

% diag_elem_indices_itself
thf(fact_279_same__diag__def,axiom,
    ( jordan2620430285385836103omplex
    = ( ^ [N2: nat,A8: mat_complex,B8: mat_complex] :
        ! [I: nat] :
          ( ( ord_less_nat @ I @ N2 )
         => ( ( index_mat_complex @ A8 @ ( product_Pair_nat_nat @ I @ I ) )
            = ( index_mat_complex @ B8 @ ( product_Pair_nat_nat @ I @ I ) ) ) ) ) ) ).

% same_diag_def
thf(fact_280_inv__all_H__def,axiom,
    ( jordan5032732407113867375omplex
    = ( ^ [P3: mat_complex > nat > nat > $o,A8: mat_complex] :
        ! [I: nat,J: nat] :
          ( ( ord_less_nat @ I @ ( dim_row_complex @ A8 ) )
         => ( ( ord_less_nat @ J @ ( dim_row_complex @ A8 ) )
           => ( P3 @ A8 @ I @ J ) ) ) ) ) ).

% inv_all'_def
thf(fact_281_index__mat__addcol_I1_J,axiom,
    ! [I4: nat,A: mat_nat,J4: nat,K: nat,A6: nat,L: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_nat @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_nat @ A ) )
       => ( ( ( K = J4 )
           => ( ( index_mat_nat @ ( column5442440509538803650ol_nat @ A6 @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = ( plus_plus_nat @ ( times_times_nat @ A6 @ ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I4 @ L ) ) ) @ ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) )
          & ( ( K != J4 )
           => ( ( index_mat_nat @ ( column5442440509538803650ol_nat @ A6 @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ) ).

% index_mat_addcol(1)
thf(fact_282_index__mat__addcol_I1_J,axiom,
    ! [I4: nat,A: mat_complex,J4: nat,K: nat,A6: complex,L: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_complex @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_complex @ A ) )
       => ( ( ( K = J4 )
           => ( ( index_mat_complex @ ( column896436094548437152omplex @ A6 @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = ( plus_plus_complex @ ( times_times_complex @ A6 @ ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ L ) ) ) @ ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) )
          & ( ( K != J4 )
           => ( ( index_mat_complex @ ( column896436094548437152omplex @ A6 @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ) ).

% index_mat_addcol(1)
thf(fact_283_index__mat__addcol_I2_J,axiom,
    ! [I4: nat,A: mat_nat,J4: nat,A6: nat,L: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_nat @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_nat @ A ) )
       => ( ( index_mat_nat @ ( column5442440509538803650ol_nat @ A6 @ J4 @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( plus_plus_nat @ ( times_times_nat @ A6 @ ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I4 @ L ) ) ) @ ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_mat_addcol(2)
thf(fact_284_index__mat__addcol_I2_J,axiom,
    ! [I4: nat,A: mat_complex,J4: nat,A6: complex,L: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_complex @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_complex @ A ) )
       => ( ( index_mat_complex @ ( column896436094548437152omplex @ A6 @ J4 @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( plus_plus_complex @ ( times_times_complex @ A6 @ ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ L ) ) ) @ ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_mat_addcol(2)
thf(fact_285_diag__elems__mem,axiom,
    ! [I4: nat,B: mat_mat_mat_complex] :
      ( ( ord_less_nat @ I4 @ ( dim_ro358828680681214724omplex @ B ) )
     => ( member7752848204589936667omplex @ ( index_4240009552160427392omplex @ B @ ( product_Pair_nat_nat @ I4 @ I4 ) ) @ ( projec3672609643092728412omplex @ B ) ) ) ).

% diag_elems_mem
thf(fact_286_diag__elems__mem,axiom,
    ! [I4: nat,B: mat_mat_nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_mat_nat @ B ) )
     => ( member_mat_nat @ ( index_mat_mat_nat @ B @ ( product_Pair_nat_nat @ I4 @ I4 ) ) @ ( projec9084014818998098289at_nat @ B ) ) ) ).

% diag_elems_mem
thf(fact_287_diag__elems__mem,axiom,
    ! [I4: nat,B: mat_mat_a] :
      ( ( ord_less_nat @ I4 @ ( dim_row_mat_a @ B ) )
     => ( member_mat_a @ ( index_mat_mat_a @ B @ ( product_Pair_nat_nat @ I4 @ I4 ) ) @ ( projec9066127685012477747_mat_a @ B ) ) ) ).

% diag_elems_mem
thf(fact_288_diag__elems__mem,axiom,
    ! [I4: nat,B: mat_nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_nat @ B ) )
     => ( member_nat @ ( index_mat_nat @ B @ ( product_Pair_nat_nat @ I4 @ I4 ) ) @ ( projec8639844951311350312ms_nat @ B ) ) ) ).

% diag_elems_mem
thf(fact_289_diag__elems__mem,axiom,
    ! [I4: nat,B: mat_mat_complex] :
      ( ( ord_less_nat @ I4 @ ( dim_row_mat_complex @ B ) )
     => ( member_mat_complex @ ( index_7093623372566408491omplex @ B @ ( product_Pair_nat_nat @ I4 @ I4 ) ) @ ( projec1765981369499306831omplex @ B ) ) ) ).

% diag_elems_mem
thf(fact_290_diag__elems__mem,axiom,
    ! [I4: nat,B: mat_complex] :
      ( ( ord_less_nat @ I4 @ ( dim_row_complex @ B ) )
     => ( member_complex @ ( index_mat_complex @ B @ ( product_Pair_nat_nat @ I4 @ I4 ) ) @ ( projec2809893096078145286omplex @ B ) ) ) ).

% diag_elems_mem
thf(fact_291_diag__elems__mem,axiom,
    ! [I4: nat,B: mat_a] :
      ( ( ord_less_nat @ I4 @ ( dim_row_a @ B ) )
     => ( member_a @ ( index_mat_a @ B @ ( product_Pair_nat_nat @ I4 @ I4 ) ) @ ( projec3180294917645509286lems_a @ B ) ) ) ).

% diag_elems_mem
thf(fact_292_index__smult__mat_I1_J,axiom,
    ! [I4: nat,A: mat_mat_nat,J4: nat,A6: mat_nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_mat_nat @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_mat_nat @ A ) )
       => ( ( index_mat_mat_nat @ ( smult_mat_mat_nat @ A6 @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( times_times_mat_nat @ A6 @ ( index_mat_mat_nat @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_smult_mat(1)
thf(fact_293_index__smult__mat_I1_J,axiom,
    ! [I4: nat,A: mat_nat,J4: nat,A6: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_nat @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_nat @ A ) )
       => ( ( index_mat_nat @ ( smult_mat_nat @ A6 @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( times_times_nat @ A6 @ ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_smult_mat(1)
thf(fact_294_index__smult__mat_I1_J,axiom,
    ! [I4: nat,A: mat_mat_complex,J4: nat,A6: mat_complex] :
      ( ( ord_less_nat @ I4 @ ( dim_row_mat_complex @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_mat_complex @ A ) )
       => ( ( index_7093623372566408491omplex @ ( smult_779153608156729276omplex @ A6 @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( times_8009071140041733218omplex @ A6 @ ( index_7093623372566408491omplex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_smult_mat(1)
thf(fact_295_index__smult__mat_I1_J,axiom,
    ! [I4: nat,A: mat_complex,J4: nat,A6: complex] :
      ( ( ord_less_nat @ I4 @ ( dim_row_complex @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_complex @ A ) )
       => ( ( index_mat_complex @ ( smult_mat_complex @ A6 @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( times_times_complex @ A6 @ ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_smult_mat(1)
thf(fact_296_ev__block__def,axiom,
    ( jordan8042990603089931364omplex
    = ( ^ [N2: nat,A8: mat_complex] :
        ! [I: nat,J: nat] :
          ( ( ord_less_nat @ I @ N2 )
         => ( ( ord_less_nat @ J @ N2 )
           => ( ( index_mat_complex @ A8 @ ( product_Pair_nat_nat @ I @ I ) )
              = ( index_mat_complex @ A8 @ ( product_Pair_nat_nat @ J @ J ) ) ) ) ) ) ) ).

% ev_block_def
thf(fact_297_ev__blockD,axiom,
    ! [N: nat,A: mat_complex,I4: nat,J4: nat] :
      ( ( jordan8042990603089931364omplex @ N @ A )
     => ( ( ord_less_nat @ I4 @ N )
       => ( ( ord_less_nat @ J4 @ N )
         => ( ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ I4 ) )
            = ( index_mat_complex @ A @ ( product_Pair_nat_nat @ J4 @ J4 ) ) ) ) ) ) ).

% ev_blockD
thf(fact_298_swapcols__is__transp__swap__rows,axiom,
    ! [A: mat_nat,N: nat,M2: nat,K: nat,L: nat] :
      ( ( member_mat_nat @ A @ ( carrier_mat_nat @ N @ M2 ) )
     => ( ( ord_less_nat @ K @ M2 )
       => ( ( ord_less_nat @ L @ M2 )
         => ( ( column8975334967120514601ls_nat @ K @ L @ A )
            = ( transpose_mat_nat @ ( gauss_2892196111178452267ws_nat @ K @ L @ ( transpose_mat_nat @ A ) ) ) ) ) ) ) ).

% swapcols_is_transp_swap_rows
thf(fact_299_swapcols__is__transp__swap__rows,axiom,
    ! [A: mat_mat_complex,N: nat,M2: nat,K: nat,L: nat] :
      ( ( member7752848204589936667omplex @ A @ ( carrie8442657464762054641omplex @ N @ M2 ) )
     => ( ( ord_less_nat @ K @ M2 )
       => ( ( ord_less_nat @ L @ M2 )
         => ( ( column5864614067406638606omplex @ K @ L @ A )
            = ( transp4906945491372815122omplex @ ( gauss_2062035380492893324omplex @ K @ L @ ( transp4906945491372815122omplex @ A ) ) ) ) ) ) ) ).

% swapcols_is_transp_swap_rows
thf(fact_300_swapcols__is__transp__swap__rows,axiom,
    ! [A: mat_a,N: nat,M2: nat,K: nat,L: nat] :
      ( ( member_mat_a @ A @ ( carrier_mat_a @ N @ M2 ) )
     => ( ( ord_less_nat @ K @ M2 )
       => ( ( ord_less_nat @ L @ M2 )
         => ( ( column2528828918332591333cols_a @ K @ L @ A )
            = ( transpose_mat_a @ ( gauss_2482569599970757219rows_a @ K @ L @ ( transpose_mat_a @ A ) ) ) ) ) ) ) ).

% swapcols_is_transp_swap_rows
thf(fact_301_swapcols__is__transp__swap__rows,axiom,
    ! [A: mat_complex,N: nat,M2: nat,K: nat,L: nat] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ N @ M2 ) )
     => ( ( ord_less_nat @ K @ M2 )
       => ( ( ord_less_nat @ L @ M2 )
         => ( ( column4357519492343924999omplex @ K @ L @ A )
            = ( transp3074176993011536131omplex @ ( gauss_1020679828357514249omplex @ K @ L @ ( transp3074176993011536131omplex @ A ) ) ) ) ) ) ) ).

% swapcols_is_transp_swap_rows
thf(fact_302_mult__smult__assoc__mat,axiom,
    ! [A: mat_nat,Nr: nat,N: nat,B: mat_nat,Nc: nat,K: nat] :
      ( ( member_mat_nat @ A @ ( carrier_mat_nat @ Nr @ N ) )
     => ( ( member_mat_nat @ B @ ( carrier_mat_nat @ N @ Nc ) )
       => ( ( times_times_mat_nat @ ( smult_mat_nat @ K @ A ) @ B )
          = ( smult_mat_nat @ K @ ( times_times_mat_nat @ A @ B ) ) ) ) ) ).

% mult_smult_assoc_mat
thf(fact_303_mult__smult__assoc__mat,axiom,
    ! [A: mat_complex,Nr: nat,N: nat,B: mat_complex,Nc: nat,K: complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ N ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ N @ Nc ) )
       => ( ( times_8009071140041733218omplex @ ( smult_mat_complex @ K @ A ) @ B )
          = ( smult_mat_complex @ K @ ( times_8009071140041733218omplex @ A @ B ) ) ) ) ) ).

% mult_smult_assoc_mat
thf(fact_304_mult__add__distrib__mat,axiom,
    ! [A: mat_nat,Nr: nat,N: nat,B: mat_nat,Nc: nat,C: mat_nat] :
      ( ( member_mat_nat @ A @ ( carrier_mat_nat @ Nr @ N ) )
     => ( ( member_mat_nat @ B @ ( carrier_mat_nat @ N @ Nc ) )
       => ( ( member_mat_nat @ C @ ( carrier_mat_nat @ N @ Nc ) )
         => ( ( times_times_mat_nat @ A @ ( plus_plus_mat_nat @ B @ C ) )
            = ( plus_plus_mat_nat @ ( times_times_mat_nat @ A @ B ) @ ( times_times_mat_nat @ A @ C ) ) ) ) ) ) ).

% mult_add_distrib_mat
thf(fact_305_mult__add__distrib__mat,axiom,
    ! [A: mat_complex,Nr: nat,N: nat,B: mat_complex,Nc: nat,C: mat_complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ N ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ N @ Nc ) )
       => ( ( member_mat_complex @ C @ ( carrier_mat_complex @ N @ Nc ) )
         => ( ( times_8009071140041733218omplex @ A @ ( plus_p8323303612493835998omplex @ B @ C ) )
            = ( plus_p8323303612493835998omplex @ ( times_8009071140041733218omplex @ A @ B ) @ ( times_8009071140041733218omplex @ A @ C ) ) ) ) ) ) ).

% mult_add_distrib_mat
thf(fact_306_add__mult__distrib__mat,axiom,
    ! [A: mat_nat,Nr: nat,N: nat,B: mat_nat,C: mat_nat,Nc: nat] :
      ( ( member_mat_nat @ A @ ( carrier_mat_nat @ Nr @ N ) )
     => ( ( member_mat_nat @ B @ ( carrier_mat_nat @ Nr @ N ) )
       => ( ( member_mat_nat @ C @ ( carrier_mat_nat @ N @ Nc ) )
         => ( ( times_times_mat_nat @ ( plus_plus_mat_nat @ A @ B ) @ C )
            = ( plus_plus_mat_nat @ ( times_times_mat_nat @ A @ C ) @ ( times_times_mat_nat @ B @ C ) ) ) ) ) ) ).

% add_mult_distrib_mat
thf(fact_307_add__mult__distrib__mat,axiom,
    ! [A: mat_complex,Nr: nat,N: nat,B: mat_complex,C: mat_complex,Nc: nat] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ N ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ Nr @ N ) )
       => ( ( member_mat_complex @ C @ ( carrier_mat_complex @ N @ Nc ) )
         => ( ( times_8009071140041733218omplex @ ( plus_p8323303612493835998omplex @ A @ B ) @ C )
            = ( plus_p8323303612493835998omplex @ ( times_8009071140041733218omplex @ A @ C ) @ ( times_8009071140041733218omplex @ B @ C ) ) ) ) ) ) ).

% add_mult_distrib_mat
thf(fact_308_mult__smult__distrib,axiom,
    ! [A: mat_nat,Nr: nat,N: nat,B: mat_nat,Nc: nat,K: nat] :
      ( ( member_mat_nat @ A @ ( carrier_mat_nat @ Nr @ N ) )
     => ( ( member_mat_nat @ B @ ( carrier_mat_nat @ N @ Nc ) )
       => ( ( times_times_mat_nat @ A @ ( smult_mat_nat @ K @ B ) )
          = ( smult_mat_nat @ K @ ( times_times_mat_nat @ A @ B ) ) ) ) ) ).

% mult_smult_distrib
thf(fact_309_mult__smult__distrib,axiom,
    ! [A: mat_complex,Nr: nat,N: nat,B: mat_complex,Nc: nat,K: complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ N ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ N @ Nc ) )
       => ( ( times_8009071140041733218omplex @ A @ ( smult_mat_complex @ K @ B ) )
          = ( smult_mat_complex @ K @ ( times_8009071140041733218omplex @ A @ B ) ) ) ) ) ).

% mult_smult_distrib
thf(fact_310_mult__carrier__mat,axiom,
    ! [A: mat_nat,Nr: nat,N: nat,B: mat_nat,Nc: nat] :
      ( ( member_mat_nat @ A @ ( carrier_mat_nat @ Nr @ N ) )
     => ( ( member_mat_nat @ B @ ( carrier_mat_nat @ N @ Nc ) )
       => ( member_mat_nat @ ( times_times_mat_nat @ A @ B ) @ ( carrier_mat_nat @ Nr @ Nc ) ) ) ) ).

% mult_carrier_mat
thf(fact_311_mult__carrier__mat,axiom,
    ! [A: mat_complex,Nr: nat,N: nat,B: mat_complex,Nc: nat] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ N ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ N @ Nc ) )
       => ( member_mat_complex @ ( times_8009071140041733218omplex @ A @ B ) @ ( carrier_mat_complex @ Nr @ Nc ) ) ) ) ).

% mult_carrier_mat
thf(fact_312_assoc__mult__mat,axiom,
    ! [A: mat_nat,N_1: nat,N_2: nat,B: mat_nat,N_3: nat,C: mat_nat,N_4: nat] :
      ( ( member_mat_nat @ A @ ( carrier_mat_nat @ N_1 @ N_2 ) )
     => ( ( member_mat_nat @ B @ ( carrier_mat_nat @ N_2 @ N_3 ) )
       => ( ( member_mat_nat @ C @ ( carrier_mat_nat @ N_3 @ N_4 ) )
         => ( ( times_times_mat_nat @ ( times_times_mat_nat @ A @ B ) @ C )
            = ( times_times_mat_nat @ A @ ( times_times_mat_nat @ B @ C ) ) ) ) ) ) ).

% assoc_mult_mat
thf(fact_313_assoc__mult__mat,axiom,
    ! [A: mat_complex,N_1: nat,N_2: nat,B: mat_complex,N_3: nat,C: mat_complex,N_4: nat] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ N_1 @ N_2 ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ N_2 @ N_3 ) )
       => ( ( member_mat_complex @ C @ ( carrier_mat_complex @ N_3 @ N_4 ) )
         => ( ( times_8009071140041733218omplex @ ( times_8009071140041733218omplex @ A @ B ) @ C )
            = ( times_8009071140041733218omplex @ A @ ( times_8009071140041733218omplex @ B @ C ) ) ) ) ) ) ).

% assoc_mult_mat
thf(fact_314_comm__add__mat,axiom,
    ! [A: mat_nat,Nr: nat,Nc: nat,B: mat_nat] :
      ( ( member_mat_nat @ A @ ( carrier_mat_nat @ Nr @ Nc ) )
     => ( ( member_mat_nat @ B @ ( carrier_mat_nat @ Nr @ Nc ) )
       => ( ( plus_plus_mat_nat @ A @ B )
          = ( plus_plus_mat_nat @ B @ A ) ) ) ) ).

% comm_add_mat
thf(fact_315_comm__add__mat,axiom,
    ! [A: mat_complex,Nr: nat,Nc: nat,B: mat_complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ Nc ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ Nr @ Nc ) )
       => ( ( plus_p8323303612493835998omplex @ A @ B )
          = ( plus_p8323303612493835998omplex @ B @ A ) ) ) ) ).

% comm_add_mat
thf(fact_316_assoc__add__mat,axiom,
    ! [A: mat_nat,Nr: nat,Nc: nat,B: mat_nat,C: mat_nat] :
      ( ( member_mat_nat @ A @ ( carrier_mat_nat @ Nr @ Nc ) )
     => ( ( member_mat_nat @ B @ ( carrier_mat_nat @ Nr @ Nc ) )
       => ( ( member_mat_nat @ C @ ( carrier_mat_nat @ Nr @ Nc ) )
         => ( ( plus_plus_mat_nat @ ( plus_plus_mat_nat @ A @ B ) @ C )
            = ( plus_plus_mat_nat @ A @ ( plus_plus_mat_nat @ B @ C ) ) ) ) ) ) ).

% assoc_add_mat
thf(fact_317_assoc__add__mat,axiom,
    ! [A: mat_complex,Nr: nat,Nc: nat,B: mat_complex,C: mat_complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ Nc ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ Nr @ Nc ) )
       => ( ( member_mat_complex @ C @ ( carrier_mat_complex @ Nr @ Nc ) )
         => ( ( plus_p8323303612493835998omplex @ ( plus_p8323303612493835998omplex @ A @ B ) @ C )
            = ( plus_p8323303612493835998omplex @ A @ ( plus_p8323303612493835998omplex @ B @ C ) ) ) ) ) ) ).

% assoc_add_mat
thf(fact_318_add__carrier__mat,axiom,
    ! [B: mat_mat_complex,Nr: nat,Nc: nat,A: mat_mat_complex] :
      ( ( member7752848204589936667omplex @ B @ ( carrie8442657464762054641omplex @ Nr @ Nc ) )
     => ( member7752848204589936667omplex @ ( plus_p8504688029521939981omplex @ A @ B ) @ ( carrie8442657464762054641omplex @ Nr @ Nc ) ) ) ).

% add_carrier_mat
thf(fact_319_add__carrier__mat,axiom,
    ! [B: mat_nat,Nr: nat,Nc: nat,A: mat_nat] :
      ( ( member_mat_nat @ B @ ( carrier_mat_nat @ Nr @ Nc ) )
     => ( member_mat_nat @ ( plus_plus_mat_nat @ A @ B ) @ ( carrier_mat_nat @ Nr @ Nc ) ) ) ).

% add_carrier_mat
thf(fact_320_add__carrier__mat,axiom,
    ! [B: mat_complex,Nr: nat,Nc: nat,A: mat_complex] :
      ( ( member_mat_complex @ B @ ( carrier_mat_complex @ Nr @ Nc ) )
     => ( member_mat_complex @ ( plus_p8323303612493835998omplex @ A @ B ) @ ( carrier_mat_complex @ Nr @ Nc ) ) ) ).

% add_carrier_mat
thf(fact_321_smult__carrier__mat,axiom,
    ! [A: mat_nat,Nr: nat,Nc: nat,K: nat] :
      ( ( member_mat_nat @ A @ ( carrier_mat_nat @ Nr @ Nc ) )
     => ( member_mat_nat @ ( smult_mat_nat @ K @ A ) @ ( carrier_mat_nat @ Nr @ Nc ) ) ) ).

% smult_carrier_mat
thf(fact_322_smult__carrier__mat,axiom,
    ! [A: mat_mat_complex,Nr: nat,Nc: nat,K: mat_complex] :
      ( ( member7752848204589936667omplex @ A @ ( carrie8442657464762054641omplex @ Nr @ Nc ) )
     => ( member7752848204589936667omplex @ ( smult_779153608156729276omplex @ K @ A ) @ ( carrie8442657464762054641omplex @ Nr @ Nc ) ) ) ).

% smult_carrier_mat
thf(fact_323_smult__carrier__mat,axiom,
    ! [A: mat_complex,Nr: nat,Nc: nat,K: complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ Nc ) )
     => ( member_mat_complex @ ( smult_mat_complex @ K @ A ) @ ( carrier_mat_complex @ Nr @ Nc ) ) ) ).

% smult_carrier_mat
thf(fact_324_add__smult__distrib__left__mat,axiom,
    ! [A: mat_nat,Nr: nat,Nc: nat,B: mat_nat,K: nat] :
      ( ( member_mat_nat @ A @ ( carrier_mat_nat @ Nr @ Nc ) )
     => ( ( member_mat_nat @ B @ ( carrier_mat_nat @ Nr @ Nc ) )
       => ( ( smult_mat_nat @ K @ ( plus_plus_mat_nat @ A @ B ) )
          = ( plus_plus_mat_nat @ ( smult_mat_nat @ K @ A ) @ ( smult_mat_nat @ K @ B ) ) ) ) ) ).

% add_smult_distrib_left_mat
thf(fact_325_add__smult__distrib__left__mat,axiom,
    ! [A: mat_complex,Nr: nat,Nc: nat,B: mat_complex,K: complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ Nc ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ Nr @ Nc ) )
       => ( ( smult_mat_complex @ K @ ( plus_p8323303612493835998omplex @ A @ B ) )
          = ( plus_p8323303612493835998omplex @ ( smult_mat_complex @ K @ A ) @ ( smult_mat_complex @ K @ B ) ) ) ) ) ).

% add_smult_distrib_left_mat
thf(fact_326_add__smult__distrib__right__mat,axiom,
    ! [A: mat_complex,Nr: nat,Nc: nat,K: complex,L: complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ Nc ) )
     => ( ( smult_mat_complex @ ( plus_plus_complex @ K @ L ) @ A )
        = ( plus_p8323303612493835998omplex @ ( smult_mat_complex @ K @ A ) @ ( smult_mat_complex @ L @ A ) ) ) ) ).

% add_smult_distrib_right_mat
thf(fact_327_add__smult__distrib__right__mat,axiom,
    ! [A: mat_nat,Nr: nat,Nc: nat,K: nat,L: nat] :
      ( ( member_mat_nat @ A @ ( carrier_mat_nat @ Nr @ Nc ) )
     => ( ( smult_mat_nat @ ( plus_plus_nat @ K @ L ) @ A )
        = ( plus_plus_mat_nat @ ( smult_mat_nat @ K @ A ) @ ( smult_mat_nat @ L @ A ) ) ) ) ).

% add_smult_distrib_right_mat
thf(fact_328_Matrix_Oright__add__zero__mat,axiom,
    ! [A: mat_nat,Nr: nat,Nc: nat] :
      ( ( member_mat_nat @ A @ ( carrier_mat_nat @ Nr @ Nc ) )
     => ( ( plus_plus_mat_nat @ A @ ( zero_mat_nat @ Nr @ Nc ) )
        = A ) ) ).

% Matrix.right_add_zero_mat
thf(fact_329_Matrix_Oright__add__zero__mat,axiom,
    ! [A: mat_complex,Nr: nat,Nc: nat] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ Nc ) )
     => ( ( plus_p8323303612493835998omplex @ A @ ( zero_mat_complex @ Nr @ Nc ) )
        = A ) ) ).

% Matrix.right_add_zero_mat
thf(fact_330_add__inv__exists__mat,axiom,
    ! [A: mat_complex,Nr: nat,Nc: nat] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ Nc ) )
     => ? [X2: mat_complex] :
          ( ( member_mat_complex @ X2 @ ( carrier_mat_complex @ Nr @ Nc ) )
          & ( ( plus_p8323303612493835998omplex @ X2 @ A )
            = ( zero_mat_complex @ Nr @ Nc ) )
          & ( ( plus_p8323303612493835998omplex @ A @ X2 )
            = ( zero_mat_complex @ Nr @ Nc ) ) ) ) ).

% add_inv_exists_mat
thf(fact_331_left__add__zero__mat,axiom,
    ! [A: mat_nat,Nr: nat,Nc: nat] :
      ( ( member_mat_nat @ A @ ( carrier_mat_nat @ Nr @ Nc ) )
     => ( ( plus_plus_mat_nat @ ( zero_mat_nat @ Nr @ Nc ) @ A )
        = A ) ) ).

% left_add_zero_mat
thf(fact_332_left__add__zero__mat,axiom,
    ! [A: mat_complex,Nr: nat,Nc: nat] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ Nc ) )
     => ( ( plus_p8323303612493835998omplex @ ( zero_mat_complex @ Nr @ Nc ) @ A )
        = A ) ) ).

% left_add_zero_mat
thf(fact_333_smult__four__block__mat,axiom,
    ! [A: mat_nat,Nr1: nat,Nc1: nat,B: mat_nat,Nc2: nat,C: mat_nat,Nr2: nat,D2: mat_nat,A6: nat] :
      ( ( member_mat_nat @ A @ ( carrier_mat_nat @ Nr1 @ Nc1 ) )
     => ( ( member_mat_nat @ B @ ( carrier_mat_nat @ Nr1 @ Nc2 ) )
       => ( ( member_mat_nat @ C @ ( carrier_mat_nat @ Nr2 @ Nc1 ) )
         => ( ( member_mat_nat @ D2 @ ( carrier_mat_nat @ Nr2 @ Nc2 ) )
           => ( ( smult_mat_nat @ A6 @ ( four_block_mat_nat @ A @ B @ C @ D2 ) )
              = ( four_block_mat_nat @ ( smult_mat_nat @ A6 @ A ) @ ( smult_mat_nat @ A6 @ B ) @ ( smult_mat_nat @ A6 @ C ) @ ( smult_mat_nat @ A6 @ D2 ) ) ) ) ) ) ) ).

% smult_four_block_mat
thf(fact_334_smult__four__block__mat,axiom,
    ! [A: mat_mat_complex,Nr1: nat,Nc1: nat,B: mat_mat_complex,Nc2: nat,C: mat_mat_complex,Nr2: nat,D2: mat_mat_complex,A6: mat_complex] :
      ( ( member7752848204589936667omplex @ A @ ( carrie8442657464762054641omplex @ Nr1 @ Nc1 ) )
     => ( ( member7752848204589936667omplex @ B @ ( carrie8442657464762054641omplex @ Nr1 @ Nc2 ) )
       => ( ( member7752848204589936667omplex @ C @ ( carrie8442657464762054641omplex @ Nr2 @ Nc1 ) )
         => ( ( member7752848204589936667omplex @ D2 @ ( carrie8442657464762054641omplex @ Nr2 @ Nc2 ) )
           => ( ( smult_779153608156729276omplex @ A6 @ ( four_b6598977876875187360omplex @ A @ B @ C @ D2 ) )
              = ( four_b6598977876875187360omplex @ ( smult_779153608156729276omplex @ A6 @ A ) @ ( smult_779153608156729276omplex @ A6 @ B ) @ ( smult_779153608156729276omplex @ A6 @ C ) @ ( smult_779153608156729276omplex @ A6 @ D2 ) ) ) ) ) ) ) ).

% smult_four_block_mat
thf(fact_335_smult__four__block__mat,axiom,
    ! [A: mat_complex,Nr1: nat,Nc1: nat,B: mat_complex,Nc2: nat,C: mat_complex,Nr2: nat,D2: mat_complex,A6: complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr1 @ Nc1 ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ Nr1 @ Nc2 ) )
       => ( ( member_mat_complex @ C @ ( carrier_mat_complex @ Nr2 @ Nc1 ) )
         => ( ( member_mat_complex @ D2 @ ( carrier_mat_complex @ Nr2 @ Nc2 ) )
           => ( ( smult_mat_complex @ A6 @ ( four_b559179830521662709omplex @ A @ B @ C @ D2 ) )
              = ( four_b559179830521662709omplex @ ( smult_mat_complex @ A6 @ A ) @ ( smult_mat_complex @ A6 @ B ) @ ( smult_mat_complex @ A6 @ C ) @ ( smult_mat_complex @ A6 @ D2 ) ) ) ) ) ) ) ).

% smult_four_block_mat
thf(fact_336_add__four__block__mat,axiom,
    ! [A1: mat_mat_complex,Nr1: nat,Nc1: nat,B1: mat_mat_complex,Nc2: nat,C1: mat_mat_complex,Nr2: nat,D1: mat_mat_complex,A2: mat_mat_complex,B2: mat_mat_complex,C22: mat_mat_complex,D22: mat_mat_complex] :
      ( ( member7752848204589936667omplex @ A1 @ ( carrie8442657464762054641omplex @ Nr1 @ Nc1 ) )
     => ( ( member7752848204589936667omplex @ B1 @ ( carrie8442657464762054641omplex @ Nr1 @ Nc2 ) )
       => ( ( member7752848204589936667omplex @ C1 @ ( carrie8442657464762054641omplex @ Nr2 @ Nc1 ) )
         => ( ( member7752848204589936667omplex @ D1 @ ( carrie8442657464762054641omplex @ Nr2 @ Nc2 ) )
           => ( ( member7752848204589936667omplex @ A2 @ ( carrie8442657464762054641omplex @ Nr1 @ Nc1 ) )
             => ( ( member7752848204589936667omplex @ B2 @ ( carrie8442657464762054641omplex @ Nr1 @ Nc2 ) )
               => ( ( member7752848204589936667omplex @ C22 @ ( carrie8442657464762054641omplex @ Nr2 @ Nc1 ) )
                 => ( ( member7752848204589936667omplex @ D22 @ ( carrie8442657464762054641omplex @ Nr2 @ Nc2 ) )
                   => ( ( plus_p8504688029521939981omplex @ ( four_b6598977876875187360omplex @ A1 @ B1 @ C1 @ D1 ) @ ( four_b6598977876875187360omplex @ A2 @ B2 @ C22 @ D22 ) )
                      = ( four_b6598977876875187360omplex @ ( plus_p8504688029521939981omplex @ A1 @ A2 ) @ ( plus_p8504688029521939981omplex @ B1 @ B2 ) @ ( plus_p8504688029521939981omplex @ C1 @ C22 ) @ ( plus_p8504688029521939981omplex @ D1 @ D22 ) ) ) ) ) ) ) ) ) ) ) ).

% add_four_block_mat
thf(fact_337_add__four__block__mat,axiom,
    ! [A1: mat_nat,Nr1: nat,Nc1: nat,B1: mat_nat,Nc2: nat,C1: mat_nat,Nr2: nat,D1: mat_nat,A2: mat_nat,B2: mat_nat,C22: mat_nat,D22: mat_nat] :
      ( ( member_mat_nat @ A1 @ ( carrier_mat_nat @ Nr1 @ Nc1 ) )
     => ( ( member_mat_nat @ B1 @ ( carrier_mat_nat @ Nr1 @ Nc2 ) )
       => ( ( member_mat_nat @ C1 @ ( carrier_mat_nat @ Nr2 @ Nc1 ) )
         => ( ( member_mat_nat @ D1 @ ( carrier_mat_nat @ Nr2 @ Nc2 ) )
           => ( ( member_mat_nat @ A2 @ ( carrier_mat_nat @ Nr1 @ Nc1 ) )
             => ( ( member_mat_nat @ B2 @ ( carrier_mat_nat @ Nr1 @ Nc2 ) )
               => ( ( member_mat_nat @ C22 @ ( carrier_mat_nat @ Nr2 @ Nc1 ) )
                 => ( ( member_mat_nat @ D22 @ ( carrier_mat_nat @ Nr2 @ Nc2 ) )
                   => ( ( plus_plus_mat_nat @ ( four_block_mat_nat @ A1 @ B1 @ C1 @ D1 ) @ ( four_block_mat_nat @ A2 @ B2 @ C22 @ D22 ) )
                      = ( four_block_mat_nat @ ( plus_plus_mat_nat @ A1 @ A2 ) @ ( plus_plus_mat_nat @ B1 @ B2 ) @ ( plus_plus_mat_nat @ C1 @ C22 ) @ ( plus_plus_mat_nat @ D1 @ D22 ) ) ) ) ) ) ) ) ) ) ) ).

% add_four_block_mat
thf(fact_338_add__four__block__mat,axiom,
    ! [A1: mat_complex,Nr1: nat,Nc1: nat,B1: mat_complex,Nc2: nat,C1: mat_complex,Nr2: nat,D1: mat_complex,A2: mat_complex,B2: mat_complex,C22: mat_complex,D22: mat_complex] :
      ( ( member_mat_complex @ A1 @ ( carrier_mat_complex @ Nr1 @ Nc1 ) )
     => ( ( member_mat_complex @ B1 @ ( carrier_mat_complex @ Nr1 @ Nc2 ) )
       => ( ( member_mat_complex @ C1 @ ( carrier_mat_complex @ Nr2 @ Nc1 ) )
         => ( ( member_mat_complex @ D1 @ ( carrier_mat_complex @ Nr2 @ Nc2 ) )
           => ( ( member_mat_complex @ A2 @ ( carrier_mat_complex @ Nr1 @ Nc1 ) )
             => ( ( member_mat_complex @ B2 @ ( carrier_mat_complex @ Nr1 @ Nc2 ) )
               => ( ( member_mat_complex @ C22 @ ( carrier_mat_complex @ Nr2 @ Nc1 ) )
                 => ( ( member_mat_complex @ D22 @ ( carrier_mat_complex @ Nr2 @ Nc2 ) )
                   => ( ( plus_p8323303612493835998omplex @ ( four_b559179830521662709omplex @ A1 @ B1 @ C1 @ D1 ) @ ( four_b559179830521662709omplex @ A2 @ B2 @ C22 @ D22 ) )
                      = ( four_b559179830521662709omplex @ ( plus_p8323303612493835998omplex @ A1 @ A2 ) @ ( plus_p8323303612493835998omplex @ B1 @ B2 ) @ ( plus_p8323303612493835998omplex @ C1 @ C22 ) @ ( plus_p8323303612493835998omplex @ D1 @ D22 ) ) ) ) ) ) ) ) ) ) ) ).

% add_four_block_mat
thf(fact_339_mult__four__block__mat,axiom,
    ! [A1: mat_nat,Nr1: nat,N1: nat,B1: mat_nat,N22: nat,C1: mat_nat,Nr2: nat,D1: mat_nat,A2: mat_nat,Nc1: nat,B2: mat_nat,Nc2: nat,C22: mat_nat,D22: mat_nat] :
      ( ( member_mat_nat @ A1 @ ( carrier_mat_nat @ Nr1 @ N1 ) )
     => ( ( member_mat_nat @ B1 @ ( carrier_mat_nat @ Nr1 @ N22 ) )
       => ( ( member_mat_nat @ C1 @ ( carrier_mat_nat @ Nr2 @ N1 ) )
         => ( ( member_mat_nat @ D1 @ ( carrier_mat_nat @ Nr2 @ N22 ) )
           => ( ( member_mat_nat @ A2 @ ( carrier_mat_nat @ N1 @ Nc1 ) )
             => ( ( member_mat_nat @ B2 @ ( carrier_mat_nat @ N1 @ Nc2 ) )
               => ( ( member_mat_nat @ C22 @ ( carrier_mat_nat @ N22 @ Nc1 ) )
                 => ( ( member_mat_nat @ D22 @ ( carrier_mat_nat @ N22 @ Nc2 ) )
                   => ( ( times_times_mat_nat @ ( four_block_mat_nat @ A1 @ B1 @ C1 @ D1 ) @ ( four_block_mat_nat @ A2 @ B2 @ C22 @ D22 ) )
                      = ( four_block_mat_nat @ ( plus_plus_mat_nat @ ( times_times_mat_nat @ A1 @ A2 ) @ ( times_times_mat_nat @ B1 @ C22 ) ) @ ( plus_plus_mat_nat @ ( times_times_mat_nat @ A1 @ B2 ) @ ( times_times_mat_nat @ B1 @ D22 ) ) @ ( plus_plus_mat_nat @ ( times_times_mat_nat @ C1 @ A2 ) @ ( times_times_mat_nat @ D1 @ C22 ) ) @ ( plus_plus_mat_nat @ ( times_times_mat_nat @ C1 @ B2 ) @ ( times_times_mat_nat @ D1 @ D22 ) ) ) ) ) ) ) ) ) ) ) ) ).

% mult_four_block_mat
thf(fact_340_mult__four__block__mat,axiom,
    ! [A1: mat_complex,Nr1: nat,N1: nat,B1: mat_complex,N22: nat,C1: mat_complex,Nr2: nat,D1: mat_complex,A2: mat_complex,Nc1: nat,B2: mat_complex,Nc2: nat,C22: mat_complex,D22: mat_complex] :
      ( ( member_mat_complex @ A1 @ ( carrier_mat_complex @ Nr1 @ N1 ) )
     => ( ( member_mat_complex @ B1 @ ( carrier_mat_complex @ Nr1 @ N22 ) )
       => ( ( member_mat_complex @ C1 @ ( carrier_mat_complex @ Nr2 @ N1 ) )
         => ( ( member_mat_complex @ D1 @ ( carrier_mat_complex @ Nr2 @ N22 ) )
           => ( ( member_mat_complex @ A2 @ ( carrier_mat_complex @ N1 @ Nc1 ) )
             => ( ( member_mat_complex @ B2 @ ( carrier_mat_complex @ N1 @ Nc2 ) )
               => ( ( member_mat_complex @ C22 @ ( carrier_mat_complex @ N22 @ Nc1 ) )
                 => ( ( member_mat_complex @ D22 @ ( carrier_mat_complex @ N22 @ Nc2 ) )
                   => ( ( times_8009071140041733218omplex @ ( four_b559179830521662709omplex @ A1 @ B1 @ C1 @ D1 ) @ ( four_b559179830521662709omplex @ A2 @ B2 @ C22 @ D22 ) )
                      = ( four_b559179830521662709omplex @ ( plus_p8323303612493835998omplex @ ( times_8009071140041733218omplex @ A1 @ A2 ) @ ( times_8009071140041733218omplex @ B1 @ C22 ) ) @ ( plus_p8323303612493835998omplex @ ( times_8009071140041733218omplex @ A1 @ B2 ) @ ( times_8009071140041733218omplex @ B1 @ D22 ) ) @ ( plus_p8323303612493835998omplex @ ( times_8009071140041733218omplex @ C1 @ A2 ) @ ( times_8009071140041733218omplex @ D1 @ C22 ) ) @ ( plus_p8323303612493835998omplex @ ( times_8009071140041733218omplex @ C1 @ B2 ) @ ( times_8009071140041733218omplex @ D1 @ D22 ) ) ) ) ) ) ) ) ) ) ) ) ).

% mult_four_block_mat
thf(fact_341_four__block__carrier__mat,axiom,
    ! [A: mat_nat,Nr1: nat,Nc1: nat,D2: mat_nat,Nr2: nat,Nc2: nat,B: mat_nat,C: mat_nat] :
      ( ( member_mat_nat @ A @ ( carrier_mat_nat @ Nr1 @ Nc1 ) )
     => ( ( member_mat_nat @ D2 @ ( carrier_mat_nat @ Nr2 @ Nc2 ) )
       => ( member_mat_nat @ ( four_block_mat_nat @ A @ B @ C @ D2 ) @ ( carrier_mat_nat @ ( plus_plus_nat @ Nr1 @ Nr2 ) @ ( plus_plus_nat @ Nc1 @ Nc2 ) ) ) ) ) ).

% four_block_carrier_mat
thf(fact_342_four__block__carrier__mat,axiom,
    ! [A: mat_mat_complex,Nr1: nat,Nc1: nat,D2: mat_mat_complex,Nr2: nat,Nc2: nat,B: mat_mat_complex,C: mat_mat_complex] :
      ( ( member7752848204589936667omplex @ A @ ( carrie8442657464762054641omplex @ Nr1 @ Nc1 ) )
     => ( ( member7752848204589936667omplex @ D2 @ ( carrie8442657464762054641omplex @ Nr2 @ Nc2 ) )
       => ( member7752848204589936667omplex @ ( four_b6598977876875187360omplex @ A @ B @ C @ D2 ) @ ( carrie8442657464762054641omplex @ ( plus_plus_nat @ Nr1 @ Nr2 ) @ ( plus_plus_nat @ Nc1 @ Nc2 ) ) ) ) ) ).

% four_block_carrier_mat
thf(fact_343_four__block__carrier__mat,axiom,
    ! [A: mat_complex,Nr1: nat,Nc1: nat,D2: mat_complex,Nr2: nat,Nc2: nat,B: mat_complex,C: mat_complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr1 @ Nc1 ) )
     => ( ( member_mat_complex @ D2 @ ( carrier_mat_complex @ Nr2 @ Nc2 ) )
       => ( member_mat_complex @ ( four_b559179830521662709omplex @ A @ B @ C @ D2 ) @ ( carrier_mat_complex @ ( plus_plus_nat @ Nr1 @ Nr2 ) @ ( plus_plus_nat @ Nc1 @ Nc2 ) ) ) ) ) ).

% four_block_carrier_mat
thf(fact_344_four__block__carrier__mat,axiom,
    ! [A: mat_a,Nr1: nat,Nc1: nat,D2: mat_a,Nr2: nat,Nc2: nat,B: mat_a,C: mat_a] :
      ( ( member_mat_a @ A @ ( carrier_mat_a @ Nr1 @ Nc1 ) )
     => ( ( member_mat_a @ D2 @ ( carrier_mat_a @ Nr2 @ Nc2 ) )
       => ( member_mat_a @ ( four_block_mat_a @ A @ B @ C @ D2 ) @ ( carrier_mat_a @ ( plus_plus_nat @ Nr1 @ Nr2 ) @ ( plus_plus_nat @ Nc1 @ Nc2 ) ) ) ) ) ).

% four_block_carrier_mat
thf(fact_345_transpose__add,axiom,
    ! [A: mat_mat_complex,Nr: nat,Nc: nat,B: mat_mat_complex] :
      ( ( member7752848204589936667omplex @ A @ ( carrie8442657464762054641omplex @ Nr @ Nc ) )
     => ( ( member7752848204589936667omplex @ B @ ( carrie8442657464762054641omplex @ Nr @ Nc ) )
       => ( ( transp4906945491372815122omplex @ ( plus_p8504688029521939981omplex @ A @ B ) )
          = ( plus_p8504688029521939981omplex @ ( transp4906945491372815122omplex @ A ) @ ( transp4906945491372815122omplex @ B ) ) ) ) ) ).

% transpose_add
thf(fact_346_transpose__add,axiom,
    ! [A: mat_nat,Nr: nat,Nc: nat,B: mat_nat] :
      ( ( member_mat_nat @ A @ ( carrier_mat_nat @ Nr @ Nc ) )
     => ( ( member_mat_nat @ B @ ( carrier_mat_nat @ Nr @ Nc ) )
       => ( ( transpose_mat_nat @ ( plus_plus_mat_nat @ A @ B ) )
          = ( plus_plus_mat_nat @ ( transpose_mat_nat @ A ) @ ( transpose_mat_nat @ B ) ) ) ) ) ).

% transpose_add
thf(fact_347_transpose__add,axiom,
    ! [A: mat_complex,Nr: nat,Nc: nat,B: mat_complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ Nc ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ Nr @ Nc ) )
       => ( ( transp3074176993011536131omplex @ ( plus_p8323303612493835998omplex @ A @ B ) )
          = ( plus_p8323303612493835998omplex @ ( transp3074176993011536131omplex @ A ) @ ( transp3074176993011536131omplex @ B ) ) ) ) ) ).

% transpose_add
thf(fact_348_carrier__matD_I1_J,axiom,
    ! [A: mat_nat,Nr: nat,Nc: nat] :
      ( ( member_mat_nat @ A @ ( carrier_mat_nat @ Nr @ Nc ) )
     => ( ( dim_row_nat @ A )
        = Nr ) ) ).

% carrier_matD(1)
thf(fact_349_carrier__matD_I1_J,axiom,
    ! [A: mat_mat_complex,Nr: nat,Nc: nat] :
      ( ( member7752848204589936667omplex @ A @ ( carrie8442657464762054641omplex @ Nr @ Nc ) )
     => ( ( dim_row_mat_complex @ A )
        = Nr ) ) ).

% carrier_matD(1)
thf(fact_350_carrier__matD_I1_J,axiom,
    ! [A: mat_a,Nr: nat,Nc: nat] :
      ( ( member_mat_a @ A @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( ( dim_row_a @ A )
        = Nr ) ) ).

% carrier_matD(1)
thf(fact_351_carrier__matD_I1_J,axiom,
    ! [A: mat_complex,Nr: nat,Nc: nat] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ Nc ) )
     => ( ( dim_row_complex @ A )
        = Nr ) ) ).

% carrier_matD(1)
thf(fact_352_carrier__matD_I2_J,axiom,
    ! [A: mat_nat,Nr: nat,Nc: nat] :
      ( ( member_mat_nat @ A @ ( carrier_mat_nat @ Nr @ Nc ) )
     => ( ( dim_col_nat @ A )
        = Nc ) ) ).

% carrier_matD(2)
thf(fact_353_carrier__matD_I2_J,axiom,
    ! [A: mat_mat_complex,Nr: nat,Nc: nat] :
      ( ( member7752848204589936667omplex @ A @ ( carrie8442657464762054641omplex @ Nr @ Nc ) )
     => ( ( dim_col_mat_complex @ A )
        = Nc ) ) ).

% carrier_matD(2)
thf(fact_354_carrier__matD_I2_J,axiom,
    ! [A: mat_a,Nr: nat,Nc: nat] :
      ( ( member_mat_a @ A @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( ( dim_col_a @ A )
        = Nc ) ) ).

% carrier_matD(2)
thf(fact_355_carrier__matD_I2_J,axiom,
    ! [A: mat_complex,Nr: nat,Nc: nat] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ Nc ) )
     => ( ( dim_col_complex @ A )
        = Nc ) ) ).

% carrier_matD(2)
thf(fact_356_index__smult__mat_I2_J,axiom,
    ! [A6: mat_complex,A: mat_mat_complex] :
      ( ( dim_row_mat_complex @ ( smult_779153608156729276omplex @ A6 @ A ) )
      = ( dim_row_mat_complex @ A ) ) ).

% index_smult_mat(2)
thf(fact_357_index__smult__mat_I2_J,axiom,
    ! [A6: nat,A: mat_nat] :
      ( ( dim_row_nat @ ( smult_mat_nat @ A6 @ A ) )
      = ( dim_row_nat @ A ) ) ).

% index_smult_mat(2)
thf(fact_358_index__smult__mat_I2_J,axiom,
    ! [A6: complex,A: mat_complex] :
      ( ( dim_row_complex @ ( smult_mat_complex @ A6 @ A ) )
      = ( dim_row_complex @ A ) ) ).

% index_smult_mat(2)
thf(fact_359_index__smult__mat_I3_J,axiom,
    ! [A6: mat_complex,A: mat_mat_complex] :
      ( ( dim_col_mat_complex @ ( smult_779153608156729276omplex @ A6 @ A ) )
      = ( dim_col_mat_complex @ A ) ) ).

% index_smult_mat(3)
thf(fact_360_index__smult__mat_I3_J,axiom,
    ! [A6: nat,A: mat_nat] :
      ( ( dim_col_nat @ ( smult_mat_nat @ A6 @ A ) )
      = ( dim_col_nat @ A ) ) ).

% index_smult_mat(3)
thf(fact_361_index__smult__mat_I3_J,axiom,
    ! [A6: complex,A: mat_complex] :
      ( ( dim_col_complex @ ( smult_mat_complex @ A6 @ A ) )
      = ( dim_col_complex @ A ) ) ).

% index_smult_mat(3)
thf(fact_362_zero__carrier__mat,axiom,
    ! [Nr: nat,Nc: nat] : ( member_mat_nat @ ( zero_mat_nat @ Nr @ Nc ) @ ( carrier_mat_nat @ Nr @ Nc ) ) ).

% zero_carrier_mat
thf(fact_363_zero__carrier__mat,axiom,
    ! [Nr: nat,Nc: nat] : ( member_mat_a @ ( zero_mat_a @ Nr @ Nc ) @ ( carrier_mat_a @ Nr @ Nc ) ) ).

% zero_carrier_mat
thf(fact_364_zero__carrier__mat,axiom,
    ! [Nr: nat,Nc: nat] : ( member_mat_complex @ ( zero_mat_complex @ Nr @ Nc ) @ ( carrier_mat_complex @ Nr @ Nc ) ) ).

% zero_carrier_mat
thf(fact_365_right__mult__zero__mat,axiom,
    ! [A: mat_nat,Nr: nat,N: nat,Nc: nat] :
      ( ( member_mat_nat @ A @ ( carrier_mat_nat @ Nr @ N ) )
     => ( ( times_times_mat_nat @ A @ ( zero_mat_nat @ N @ Nc ) )
        = ( zero_mat_nat @ Nr @ Nc ) ) ) ).

% right_mult_zero_mat
thf(fact_366_right__mult__zero__mat,axiom,
    ! [A: mat_complex,Nr: nat,N: nat,Nc: nat] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ N ) )
     => ( ( times_8009071140041733218omplex @ A @ ( zero_mat_complex @ N @ Nc ) )
        = ( zero_mat_complex @ Nr @ Nc ) ) ) ).

% right_mult_zero_mat
thf(fact_367_left__mult__zero__mat,axiom,
    ! [A: mat_nat,N: nat,Nc: nat,Nr: nat] :
      ( ( member_mat_nat @ A @ ( carrier_mat_nat @ N @ Nc ) )
     => ( ( times_times_mat_nat @ ( zero_mat_nat @ Nr @ N ) @ A )
        = ( zero_mat_nat @ Nr @ Nc ) ) ) ).

% left_mult_zero_mat
thf(fact_368_left__mult__zero__mat,axiom,
    ! [A: mat_complex,N: nat,Nc: nat,Nr: nat] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ N @ Nc ) )
     => ( ( times_8009071140041733218omplex @ ( zero_mat_complex @ Nr @ N ) @ A )
        = ( zero_mat_complex @ Nr @ Nc ) ) ) ).

% left_mult_zero_mat
thf(fact_369_index__add__mat_I2_J,axiom,
    ! [A: mat_mat_complex,B: mat_mat_complex] :
      ( ( dim_row_mat_complex @ ( plus_p8504688029521939981omplex @ A @ B ) )
      = ( dim_row_mat_complex @ B ) ) ).

% index_add_mat(2)
thf(fact_370_index__add__mat_I2_J,axiom,
    ! [A: mat_nat,B: mat_nat] :
      ( ( dim_row_nat @ ( plus_plus_mat_nat @ A @ B ) )
      = ( dim_row_nat @ B ) ) ).

% index_add_mat(2)
thf(fact_371_index__add__mat_I2_J,axiom,
    ! [A: mat_complex,B: mat_complex] :
      ( ( dim_row_complex @ ( plus_p8323303612493835998omplex @ A @ B ) )
      = ( dim_row_complex @ B ) ) ).

% index_add_mat(2)
thf(fact_372_index__add__mat_I3_J,axiom,
    ! [A: mat_mat_complex,B: mat_mat_complex] :
      ( ( dim_col_mat_complex @ ( plus_p8504688029521939981omplex @ A @ B ) )
      = ( dim_col_mat_complex @ B ) ) ).

% index_add_mat(3)
thf(fact_373_index__add__mat_I3_J,axiom,
    ! [A: mat_nat,B: mat_nat] :
      ( ( dim_col_nat @ ( plus_plus_mat_nat @ A @ B ) )
      = ( dim_col_nat @ B ) ) ).

% index_add_mat(3)
thf(fact_374_index__add__mat_I3_J,axiom,
    ! [A: mat_complex,B: mat_complex] :
      ( ( dim_col_complex @ ( plus_p8323303612493835998omplex @ A @ B ) )
      = ( dim_col_complex @ B ) ) ).

% index_add_mat(3)
thf(fact_375_map__carrier__mat,axiom,
    ! [F: complex > complex,A: mat_complex,Nr: nat,Nc: nat] :
      ( ( member_mat_complex @ ( map_ma6508466363326507375omplex @ F @ A ) @ ( carrier_mat_complex @ Nr @ Nc ) )
      = ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ Nc ) ) ) ).

% map_carrier_mat
thf(fact_376_map__carrier__mat,axiom,
    ! [F: nat > complex,A: mat_nat,Nr: nat,Nc: nat] :
      ( ( member_mat_complex @ ( map_mat_nat_complex @ F @ A ) @ ( carrier_mat_complex @ Nr @ Nc ) )
      = ( member_mat_nat @ A @ ( carrier_mat_nat @ Nr @ Nc ) ) ) ).

% map_carrier_mat
thf(fact_377_map__carrier__mat,axiom,
    ! [F: a > complex,A: mat_a,Nr: nat,Nc: nat] :
      ( ( member_mat_complex @ ( map_mat_a_complex @ F @ A ) @ ( carrier_mat_complex @ Nr @ Nc ) )
      = ( member_mat_a @ A @ ( carrier_mat_a @ Nr @ Nc ) ) ) ).

% map_carrier_mat
thf(fact_378_map__carrier__mat,axiom,
    ! [F: complex > nat,A: mat_complex,Nr: nat,Nc: nat] :
      ( ( member_mat_nat @ ( map_mat_complex_nat @ F @ A ) @ ( carrier_mat_nat @ Nr @ Nc ) )
      = ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ Nc ) ) ) ).

% map_carrier_mat
thf(fact_379_map__carrier__mat,axiom,
    ! [F: nat > nat,A: mat_nat,Nr: nat,Nc: nat] :
      ( ( member_mat_nat @ ( map_mat_nat_nat @ F @ A ) @ ( carrier_mat_nat @ Nr @ Nc ) )
      = ( member_mat_nat @ A @ ( carrier_mat_nat @ Nr @ Nc ) ) ) ).

% map_carrier_mat
thf(fact_380_map__carrier__mat,axiom,
    ! [F: a > nat,A: mat_a,Nr: nat,Nc: nat] :
      ( ( member_mat_nat @ ( map_mat_a_nat @ F @ A ) @ ( carrier_mat_nat @ Nr @ Nc ) )
      = ( member_mat_a @ A @ ( carrier_mat_a @ Nr @ Nc ) ) ) ).

% map_carrier_mat
thf(fact_381_map__carrier__mat,axiom,
    ! [F: complex > a,A: mat_complex,Nr: nat,Nc: nat] :
      ( ( member_mat_a @ ( map_mat_complex_a @ F @ A ) @ ( carrier_mat_a @ Nr @ Nc ) )
      = ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ Nc ) ) ) ).

% map_carrier_mat
thf(fact_382_map__carrier__mat,axiom,
    ! [F: nat > a,A: mat_nat,Nr: nat,Nc: nat] :
      ( ( member_mat_a @ ( map_mat_nat_a @ F @ A ) @ ( carrier_mat_a @ Nr @ Nc ) )
      = ( member_mat_nat @ A @ ( carrier_mat_nat @ Nr @ Nc ) ) ) ).

% map_carrier_mat
thf(fact_383_map__carrier__mat,axiom,
    ! [F: a > a,A: mat_a,Nr: nat,Nc: nat] :
      ( ( member_mat_a @ ( map_mat_a_a @ F @ A ) @ ( carrier_mat_a @ Nr @ Nc ) )
      = ( member_mat_a @ A @ ( carrier_mat_a @ Nr @ Nc ) ) ) ).

% map_carrier_mat
thf(fact_384_map__carrier__mat,axiom,
    ! [F: mat_complex > complex,A: mat_mat_complex,Nr: nat,Nc: nat] :
      ( ( member_mat_complex @ ( map_ma943020573011627268omplex @ F @ A ) @ ( carrier_mat_complex @ Nr @ Nc ) )
      = ( member7752848204589936667omplex @ A @ ( carrie8442657464762054641omplex @ Nr @ Nc ) ) ) ).

% map_carrier_mat
thf(fact_385_smult__zero__mat,axiom,
    ! [K: nat,Nr: nat,Nc: nat] :
      ( ( smult_mat_nat @ K @ ( zero_mat_nat @ Nr @ Nc ) )
      = ( zero_mat_nat @ Nr @ Nc ) ) ).

% smult_zero_mat
thf(fact_386_smult__zero__mat,axiom,
    ! [K: complex,Nr: nat,Nc: nat] :
      ( ( smult_mat_complex @ K @ ( zero_mat_complex @ Nr @ Nc ) )
      = ( zero_mat_complex @ Nr @ Nc ) ) ).

% smult_zero_mat
thf(fact_387_transpose__mult,axiom,
    ! [A: mat_nat,Nr: nat,N: nat,B: mat_nat,Nc: nat] :
      ( ( member_mat_nat @ A @ ( carrier_mat_nat @ Nr @ N ) )
     => ( ( member_mat_nat @ B @ ( carrier_mat_nat @ N @ Nc ) )
       => ( ( transpose_mat_nat @ ( times_times_mat_nat @ A @ B ) )
          = ( times_times_mat_nat @ ( transpose_mat_nat @ B ) @ ( transpose_mat_nat @ A ) ) ) ) ) ).

% transpose_mult
thf(fact_388_transpose__mult,axiom,
    ! [A: mat_complex,Nr: nat,N: nat,B: mat_complex,Nc: nat] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ N ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ N @ Nc ) )
       => ( ( transp3074176993011536131omplex @ ( times_8009071140041733218omplex @ A @ B ) )
          = ( times_8009071140041733218omplex @ ( transp3074176993011536131omplex @ B ) @ ( transp3074176993011536131omplex @ A ) ) ) ) ) ).

% transpose_mult
thf(fact_389_transpose__carrier__mat,axiom,
    ! [A: mat_nat,Nc: nat,Nr: nat] :
      ( ( member_mat_nat @ ( transpose_mat_nat @ A ) @ ( carrier_mat_nat @ Nc @ Nr ) )
      = ( member_mat_nat @ A @ ( carrier_mat_nat @ Nr @ Nc ) ) ) ).

% transpose_carrier_mat
thf(fact_390_transpose__carrier__mat,axiom,
    ! [A: mat_mat_complex,Nc: nat,Nr: nat] :
      ( ( member7752848204589936667omplex @ ( transp4906945491372815122omplex @ A ) @ ( carrie8442657464762054641omplex @ Nc @ Nr ) )
      = ( member7752848204589936667omplex @ A @ ( carrie8442657464762054641omplex @ Nr @ Nc ) ) ) ).

% transpose_carrier_mat
thf(fact_391_transpose__carrier__mat,axiom,
    ! [A: mat_a,Nc: nat,Nr: nat] :
      ( ( member_mat_a @ ( transpose_mat_a @ A ) @ ( carrier_mat_a @ Nc @ Nr ) )
      = ( member_mat_a @ A @ ( carrier_mat_a @ Nr @ Nc ) ) ) ).

% transpose_carrier_mat
thf(fact_392_transpose__carrier__mat,axiom,
    ! [A: mat_complex,Nc: nat,Nr: nat] :
      ( ( member_mat_complex @ ( transp3074176993011536131omplex @ A ) @ ( carrier_mat_complex @ Nc @ Nr ) )
      = ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ Nc ) ) ) ).

% transpose_carrier_mat
thf(fact_393_swaprows__carrier,axiom,
    ! [K: nat,L: nat,A: mat_nat,N: nat,Nc: nat] :
      ( ( member_mat_nat @ ( gauss_2892196111178452267ws_nat @ K @ L @ A ) @ ( carrier_mat_nat @ N @ Nc ) )
      = ( member_mat_nat @ A @ ( carrier_mat_nat @ N @ Nc ) ) ) ).

% swaprows_carrier
thf(fact_394_swaprows__carrier,axiom,
    ! [K: nat,L: nat,A: mat_mat_complex,N: nat,Nc: nat] :
      ( ( member7752848204589936667omplex @ ( gauss_2062035380492893324omplex @ K @ L @ A ) @ ( carrie8442657464762054641omplex @ N @ Nc ) )
      = ( member7752848204589936667omplex @ A @ ( carrie8442657464762054641omplex @ N @ Nc ) ) ) ).

% swaprows_carrier
thf(fact_395_swaprows__carrier,axiom,
    ! [K: nat,L: nat,A: mat_a,N: nat,Nc: nat] :
      ( ( member_mat_a @ ( gauss_2482569599970757219rows_a @ K @ L @ A ) @ ( carrier_mat_a @ N @ Nc ) )
      = ( member_mat_a @ A @ ( carrier_mat_a @ N @ Nc ) ) ) ).

% swaprows_carrier
thf(fact_396_swaprows__carrier,axiom,
    ! [K: nat,L: nat,A: mat_complex,N: nat,Nc: nat] :
      ( ( member_mat_complex @ ( gauss_1020679828357514249omplex @ K @ L @ A ) @ ( carrier_mat_complex @ N @ Nc ) )
      = ( member_mat_complex @ A @ ( carrier_mat_complex @ N @ Nc ) ) ) ).

% swaprows_carrier
thf(fact_397_multrow__carrier,axiom,
    ! [Mul: mat_complex > mat_complex > mat_complex,K: nat,A6: mat_complex,A: mat_mat_complex,N: nat,Nc: nat] :
      ( ( member7752848204589936667omplex @ ( gauss_8941138319910658002omplex @ Mul @ K @ A6 @ A ) @ ( carrie8442657464762054641omplex @ N @ Nc ) )
      = ( member7752848204589936667omplex @ A @ ( carrie8442657464762054641omplex @ N @ Nc ) ) ) ).

% multrow_carrier
thf(fact_398_multrow__carrier,axiom,
    ! [Mul: a > a > a,K: nat,A6: a,A: mat_a,N: nat,Nc: nat] :
      ( ( member_mat_a @ ( gauss_5154200947219177641_gen_a @ Mul @ K @ A6 @ A ) @ ( carrier_mat_a @ N @ Nc ) )
      = ( member_mat_a @ A @ ( carrier_mat_a @ N @ Nc ) ) ) ).

% multrow_carrier
thf(fact_399_multrow__carrier,axiom,
    ! [Mul: nat > nat > nat,K: nat,A6: nat,A: mat_nat,N: nat,Nc: nat] :
      ( ( member_mat_nat @ ( gauss_2409696420326117733en_nat @ Mul @ K @ A6 @ A ) @ ( carrier_mat_nat @ N @ Nc ) )
      = ( member_mat_nat @ A @ ( carrier_mat_nat @ N @ Nc ) ) ) ).

% multrow_carrier
thf(fact_400_multrow__carrier,axiom,
    ! [Mul: complex > complex > complex,K: nat,A6: complex,A: mat_complex,N: nat,Nc: nat] :
      ( ( member_mat_complex @ ( gauss_2324787009747932227omplex @ Mul @ K @ A6 @ A ) @ ( carrier_mat_complex @ N @ Nc ) )
      = ( member_mat_complex @ A @ ( carrier_mat_complex @ N @ Nc ) ) ) ).

% multrow_carrier
thf(fact_401_addrow__carrier,axiom,
    ! [Ad: mat_complex > mat_complex > mat_complex,Mul: mat_complex > mat_complex > mat_complex,A6: mat_complex,K: nat,L: nat,A: mat_mat_complex,N: nat,Nc: nat] :
      ( ( member7752848204589936667omplex @ ( gauss_1372362650841364061omplex @ Ad @ Mul @ A6 @ K @ L @ A ) @ ( carrie8442657464762054641omplex @ N @ Nc ) )
      = ( member7752848204589936667omplex @ A @ ( carrie8442657464762054641omplex @ N @ Nc ) ) ) ).

% addrow_carrier
thf(fact_402_addrow__carrier,axiom,
    ! [Ad: a > a > a,Mul: a > a > a,A6: a,K: nat,L: nat,A: mat_a,N: nat,Nc: nat] :
      ( ( member_mat_a @ ( gauss_3441994962245461172_gen_a @ Ad @ Mul @ A6 @ K @ L @ A ) @ ( carrier_mat_a @ N @ Nc ) )
      = ( member_mat_a @ A @ ( carrier_mat_a @ N @ Nc ) ) ) ).

% addrow_carrier
thf(fact_403_addrow__carrier,axiom,
    ! [Ad: nat > nat > nat,Mul: nat > nat > nat,A6: nat,K: nat,L: nat,A: mat_nat,N: nat,Nc: nat] :
      ( ( member_mat_nat @ ( gauss_8885043348566651034en_nat @ Ad @ Mul @ A6 @ K @ L @ A ) @ ( carrier_mat_nat @ N @ Nc ) )
      = ( member_mat_nat @ A @ ( carrier_mat_nat @ N @ Nc ) ) ) ).

% addrow_carrier
thf(fact_404_addrow__carrier,axiom,
    ! [Ad: complex > complex > complex,Mul: complex > complex > complex,A6: complex,K: nat,L: nat,A: mat_complex,N: nat,Nc: nat] :
      ( ( member_mat_complex @ ( gauss_5252963565656066424omplex @ Ad @ Mul @ A6 @ K @ L @ A ) @ ( carrier_mat_complex @ N @ Nc ) )
      = ( member_mat_complex @ A @ ( carrier_mat_complex @ N @ Nc ) ) ) ).

% addrow_carrier
thf(fact_405_swapcols__carrier,axiom,
    ! [L: nat,K: nat,A: mat_nat,N: nat,M2: nat] :
      ( ( member_mat_nat @ ( column8975334967120514601ls_nat @ L @ K @ A ) @ ( carrier_mat_nat @ N @ M2 ) )
      = ( member_mat_nat @ A @ ( carrier_mat_nat @ N @ M2 ) ) ) ).

% swapcols_carrier
thf(fact_406_swapcols__carrier,axiom,
    ! [L: nat,K: nat,A: mat_mat_complex,N: nat,M2: nat] :
      ( ( member7752848204589936667omplex @ ( column5864614067406638606omplex @ L @ K @ A ) @ ( carrie8442657464762054641omplex @ N @ M2 ) )
      = ( member7752848204589936667omplex @ A @ ( carrie8442657464762054641omplex @ N @ M2 ) ) ) ).

% swapcols_carrier
thf(fact_407_swapcols__carrier,axiom,
    ! [L: nat,K: nat,A: mat_a,N: nat,M2: nat] :
      ( ( member_mat_a @ ( column2528828918332591333cols_a @ L @ K @ A ) @ ( carrier_mat_a @ N @ M2 ) )
      = ( member_mat_a @ A @ ( carrier_mat_a @ N @ M2 ) ) ) ).

% swapcols_carrier
thf(fact_408_swapcols__carrier,axiom,
    ! [L: nat,K: nat,A: mat_complex,N: nat,M2: nat] :
      ( ( member_mat_complex @ ( column4357519492343924999omplex @ L @ K @ A ) @ ( carrier_mat_complex @ N @ M2 ) )
      = ( member_mat_complex @ A @ ( carrier_mat_complex @ N @ M2 ) ) ) ).

% swapcols_carrier
thf(fact_409_swap__cols__rows__carrier_I3_J,axiom,
    ! [A: mat_nat,N: nat,K: nat,L: nat] :
      ( ( member_mat_nat @ A @ ( carrier_mat_nat @ N @ N ) )
     => ( member_mat_nat @ ( column141131285749525182ws_nat @ K @ L @ A ) @ ( carrier_mat_nat @ N @ N ) ) ) ).

% swap_cols_rows_carrier(3)
thf(fact_410_swap__cols__rows__carrier_I3_J,axiom,
    ! [A: mat_mat_complex,N: nat,K: nat,L: nat] :
      ( ( member7752848204589936667omplex @ A @ ( carrie8442657464762054641omplex @ N @ N ) )
     => ( member7752848204589936667omplex @ ( column1545125301662527289omplex @ K @ L @ A ) @ ( carrie8442657464762054641omplex @ N @ N ) ) ) ).

% swap_cols_rows_carrier(3)
thf(fact_411_swap__cols__rows__carrier_I3_J,axiom,
    ! [A: mat_a,N: nat,K: nat,L: nat] :
      ( ( member_mat_a @ A @ ( carrier_mat_a @ N @ N ) )
     => ( member_mat_a @ ( column5129559316938501008rows_a @ K @ L @ A ) @ ( carrier_mat_a @ N @ N ) ) ) ).

% swap_cols_rows_carrier(3)
thf(fact_412_swap__cols__rows__carrier_I3_J,axiom,
    ! [A: mat_complex,N: nat,K: nat,L: nat] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ N @ N ) )
     => ( member_mat_complex @ ( column7161609239796038556omplex @ K @ L @ A ) @ ( carrier_mat_complex @ N @ N ) ) ) ).

% swap_cols_rows_carrier(3)
thf(fact_413_carrier__matI,axiom,
    ! [A: mat_nat,Nr: nat,Nc: nat] :
      ( ( ( dim_row_nat @ A )
        = Nr )
     => ( ( ( dim_col_nat @ A )
          = Nc )
       => ( member_mat_nat @ A @ ( carrier_mat_nat @ Nr @ Nc ) ) ) ) ).

% carrier_matI
thf(fact_414_carrier__matI,axiom,
    ! [A: mat_mat_complex,Nr: nat,Nc: nat] :
      ( ( ( dim_row_mat_complex @ A )
        = Nr )
     => ( ( ( dim_col_mat_complex @ A )
          = Nc )
       => ( member7752848204589936667omplex @ A @ ( carrie8442657464762054641omplex @ Nr @ Nc ) ) ) ) ).

% carrier_matI
thf(fact_415_carrier__matI,axiom,
    ! [A: mat_a,Nr: nat,Nc: nat] :
      ( ( ( dim_row_a @ A )
        = Nr )
     => ( ( ( dim_col_a @ A )
          = Nc )
       => ( member_mat_a @ A @ ( carrier_mat_a @ Nr @ Nc ) ) ) ) ).

% carrier_matI
thf(fact_416_carrier__matI,axiom,
    ! [A: mat_complex,Nr: nat,Nc: nat] :
      ( ( ( dim_row_complex @ A )
        = Nr )
     => ( ( ( dim_col_complex @ A )
          = Nc )
       => ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ Nc ) ) ) ) ).

% carrier_matI
thf(fact_417_carrier__mat__triv,axiom,
    ! [M2: mat_nat] : ( member_mat_nat @ M2 @ ( carrier_mat_nat @ ( dim_row_nat @ M2 ) @ ( dim_col_nat @ M2 ) ) ) ).

% carrier_mat_triv
thf(fact_418_carrier__mat__triv,axiom,
    ! [M2: mat_mat_complex] : ( member7752848204589936667omplex @ M2 @ ( carrie8442657464762054641omplex @ ( dim_row_mat_complex @ M2 ) @ ( dim_col_mat_complex @ M2 ) ) ) ).

% carrier_mat_triv
thf(fact_419_carrier__mat__triv,axiom,
    ! [M2: mat_a] : ( member_mat_a @ M2 @ ( carrier_mat_a @ ( dim_row_a @ M2 ) @ ( dim_col_a @ M2 ) ) ) ).

% carrier_mat_triv
thf(fact_420_carrier__mat__triv,axiom,
    ! [M2: mat_complex] : ( member_mat_complex @ M2 @ ( carrier_mat_complex @ ( dim_row_complex @ M2 ) @ ( dim_col_complex @ M2 ) ) ) ).

% carrier_mat_triv
thf(fact_421_map__four__block__mat,axiom,
    ! [A: mat_nat,Nr1: nat,Nc1: nat,B: mat_nat,Nc2: nat,C: mat_nat,Nr2: nat,D2: mat_nat,F: nat > a] :
      ( ( member_mat_nat @ A @ ( carrier_mat_nat @ Nr1 @ Nc1 ) )
     => ( ( member_mat_nat @ B @ ( carrier_mat_nat @ Nr1 @ Nc2 ) )
       => ( ( member_mat_nat @ C @ ( carrier_mat_nat @ Nr2 @ Nc1 ) )
         => ( ( member_mat_nat @ D2 @ ( carrier_mat_nat @ Nr2 @ Nc2 ) )
           => ( ( map_mat_nat_a @ F @ ( four_block_mat_nat @ A @ B @ C @ D2 ) )
              = ( four_block_mat_a @ ( map_mat_nat_a @ F @ A ) @ ( map_mat_nat_a @ F @ B ) @ ( map_mat_nat_a @ F @ C ) @ ( map_mat_nat_a @ F @ D2 ) ) ) ) ) ) ) ).

% map_four_block_mat
thf(fact_422_map__four__block__mat,axiom,
    ! [A: mat_mat_complex,Nr1: nat,Nc1: nat,B: mat_mat_complex,Nc2: nat,C: mat_mat_complex,Nr2: nat,D2: mat_mat_complex,F: mat_complex > a] :
      ( ( member7752848204589936667omplex @ A @ ( carrie8442657464762054641omplex @ Nr1 @ Nc1 ) )
     => ( ( member7752848204589936667omplex @ B @ ( carrie8442657464762054641omplex @ Nr1 @ Nc2 ) )
       => ( ( member7752848204589936667omplex @ C @ ( carrie8442657464762054641omplex @ Nr2 @ Nc1 ) )
         => ( ( member7752848204589936667omplex @ D2 @ ( carrie8442657464762054641omplex @ Nr2 @ Nc2 ) )
           => ( ( map_ma1327204579214447656plex_a @ F @ ( four_b6598977876875187360omplex @ A @ B @ C @ D2 ) )
              = ( four_block_mat_a @ ( map_ma1327204579214447656plex_a @ F @ A ) @ ( map_ma1327204579214447656plex_a @ F @ B ) @ ( map_ma1327204579214447656plex_a @ F @ C ) @ ( map_ma1327204579214447656plex_a @ F @ D2 ) ) ) ) ) ) ) ).

% map_four_block_mat
thf(fact_423_map__four__block__mat,axiom,
    ! [A: mat_nat,Nr1: nat,Nc1: nat,B: mat_nat,Nc2: nat,C: mat_nat,Nr2: nat,D2: mat_nat,F: nat > complex] :
      ( ( member_mat_nat @ A @ ( carrier_mat_nat @ Nr1 @ Nc1 ) )
     => ( ( member_mat_nat @ B @ ( carrier_mat_nat @ Nr1 @ Nc2 ) )
       => ( ( member_mat_nat @ C @ ( carrier_mat_nat @ Nr2 @ Nc1 ) )
         => ( ( member_mat_nat @ D2 @ ( carrier_mat_nat @ Nr2 @ Nc2 ) )
           => ( ( map_mat_nat_complex @ F @ ( four_block_mat_nat @ A @ B @ C @ D2 ) )
              = ( four_b559179830521662709omplex @ ( map_mat_nat_complex @ F @ A ) @ ( map_mat_nat_complex @ F @ B ) @ ( map_mat_nat_complex @ F @ C ) @ ( map_mat_nat_complex @ F @ D2 ) ) ) ) ) ) ) ).

% map_four_block_mat
thf(fact_424_map__four__block__mat,axiom,
    ! [A: mat_mat_complex,Nr1: nat,Nc1: nat,B: mat_mat_complex,Nc2: nat,C: mat_mat_complex,Nr2: nat,D2: mat_mat_complex,F: mat_complex > complex] :
      ( ( member7752848204589936667omplex @ A @ ( carrie8442657464762054641omplex @ Nr1 @ Nc1 ) )
     => ( ( member7752848204589936667omplex @ B @ ( carrie8442657464762054641omplex @ Nr1 @ Nc2 ) )
       => ( ( member7752848204589936667omplex @ C @ ( carrie8442657464762054641omplex @ Nr2 @ Nc1 ) )
         => ( ( member7752848204589936667omplex @ D2 @ ( carrie8442657464762054641omplex @ Nr2 @ Nc2 ) )
           => ( ( map_ma943020573011627268omplex @ F @ ( four_b6598977876875187360omplex @ A @ B @ C @ D2 ) )
              = ( four_b559179830521662709omplex @ ( map_ma943020573011627268omplex @ F @ A ) @ ( map_ma943020573011627268omplex @ F @ B ) @ ( map_ma943020573011627268omplex @ F @ C ) @ ( map_ma943020573011627268omplex @ F @ D2 ) ) ) ) ) ) ) ).

% map_four_block_mat
thf(fact_425_map__four__block__mat,axiom,
    ! [A: mat_a,Nr1: nat,Nc1: nat,B: mat_a,Nc2: nat,C: mat_a,Nr2: nat,D2: mat_a,F: a > complex] :
      ( ( member_mat_a @ A @ ( carrier_mat_a @ Nr1 @ Nc1 ) )
     => ( ( member_mat_a @ B @ ( carrier_mat_a @ Nr1 @ Nc2 ) )
       => ( ( member_mat_a @ C @ ( carrier_mat_a @ Nr2 @ Nc1 ) )
         => ( ( member_mat_a @ D2 @ ( carrier_mat_a @ Nr2 @ Nc2 ) )
           => ( ( map_mat_a_complex @ F @ ( four_block_mat_a @ A @ B @ C @ D2 ) )
              = ( four_b559179830521662709omplex @ ( map_mat_a_complex @ F @ A ) @ ( map_mat_a_complex @ F @ B ) @ ( map_mat_a_complex @ F @ C ) @ ( map_mat_a_complex @ F @ D2 ) ) ) ) ) ) ) ).

% map_four_block_mat
thf(fact_426_map__four__block__mat,axiom,
    ! [A: mat_complex,Nr1: nat,Nc1: nat,B: mat_complex,Nc2: nat,C: mat_complex,Nr2: nat,D2: mat_complex,F: complex > complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr1 @ Nc1 ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ Nr1 @ Nc2 ) )
       => ( ( member_mat_complex @ C @ ( carrier_mat_complex @ Nr2 @ Nc1 ) )
         => ( ( member_mat_complex @ D2 @ ( carrier_mat_complex @ Nr2 @ Nc2 ) )
           => ( ( map_ma6508466363326507375omplex @ F @ ( four_b559179830521662709omplex @ A @ B @ C @ D2 ) )
              = ( four_b559179830521662709omplex @ ( map_ma6508466363326507375omplex @ F @ A ) @ ( map_ma6508466363326507375omplex @ F @ B ) @ ( map_ma6508466363326507375omplex @ F @ C ) @ ( map_ma6508466363326507375omplex @ F @ D2 ) ) ) ) ) ) ) ).

% map_four_block_mat
thf(fact_427_map__four__block__mat,axiom,
    ! [A: mat_complex,Nr1: nat,Nc1: nat,B: mat_complex,Nc2: nat,C: mat_complex,Nr2: nat,D2: mat_complex,F: complex > a] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr1 @ Nc1 ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ Nr1 @ Nc2 ) )
       => ( ( member_mat_complex @ C @ ( carrier_mat_complex @ Nr2 @ Nc1 ) )
         => ( ( member_mat_complex @ D2 @ ( carrier_mat_complex @ Nr2 @ Nc2 ) )
           => ( ( map_mat_complex_a @ F @ ( four_b559179830521662709omplex @ A @ B @ C @ D2 ) )
              = ( four_block_mat_a @ ( map_mat_complex_a @ F @ A ) @ ( map_mat_complex_a @ F @ B ) @ ( map_mat_complex_a @ F @ C ) @ ( map_mat_complex_a @ F @ D2 ) ) ) ) ) ) ) ).

% map_four_block_mat
thf(fact_428_map__four__block__mat,axiom,
    ! [A: mat_a,Nr1: nat,Nc1: nat,B: mat_a,Nc2: nat,C: mat_a,Nr2: nat,D2: mat_a,F: a > a] :
      ( ( member_mat_a @ A @ ( carrier_mat_a @ Nr1 @ Nc1 ) )
     => ( ( member_mat_a @ B @ ( carrier_mat_a @ Nr1 @ Nc2 ) )
       => ( ( member_mat_a @ C @ ( carrier_mat_a @ Nr2 @ Nc1 ) )
         => ( ( member_mat_a @ D2 @ ( carrier_mat_a @ Nr2 @ Nc2 ) )
           => ( ( map_mat_a_a @ F @ ( four_block_mat_a @ A @ B @ C @ D2 ) )
              = ( four_block_mat_a @ ( map_mat_a_a @ F @ A ) @ ( map_mat_a_a @ F @ B ) @ ( map_mat_a_a @ F @ C ) @ ( map_mat_a_a @ F @ D2 ) ) ) ) ) ) ) ).

% map_four_block_mat
thf(fact_429_transpose__four__block__mat,axiom,
    ! [A: mat_nat,Nr1: nat,Nc1: nat,B: mat_nat,Nc2: nat,C: mat_nat,Nr2: nat,D2: mat_nat] :
      ( ( member_mat_nat @ A @ ( carrier_mat_nat @ Nr1 @ Nc1 ) )
     => ( ( member_mat_nat @ B @ ( carrier_mat_nat @ Nr1 @ Nc2 ) )
       => ( ( member_mat_nat @ C @ ( carrier_mat_nat @ Nr2 @ Nc1 ) )
         => ( ( member_mat_nat @ D2 @ ( carrier_mat_nat @ Nr2 @ Nc2 ) )
           => ( ( transpose_mat_nat @ ( four_block_mat_nat @ A @ B @ C @ D2 ) )
              = ( four_block_mat_nat @ ( transpose_mat_nat @ A ) @ ( transpose_mat_nat @ C ) @ ( transpose_mat_nat @ B ) @ ( transpose_mat_nat @ D2 ) ) ) ) ) ) ) ).

% transpose_four_block_mat
thf(fact_430_transpose__four__block__mat,axiom,
    ! [A: mat_mat_complex,Nr1: nat,Nc1: nat,B: mat_mat_complex,Nc2: nat,C: mat_mat_complex,Nr2: nat,D2: mat_mat_complex] :
      ( ( member7752848204589936667omplex @ A @ ( carrie8442657464762054641omplex @ Nr1 @ Nc1 ) )
     => ( ( member7752848204589936667omplex @ B @ ( carrie8442657464762054641omplex @ Nr1 @ Nc2 ) )
       => ( ( member7752848204589936667omplex @ C @ ( carrie8442657464762054641omplex @ Nr2 @ Nc1 ) )
         => ( ( member7752848204589936667omplex @ D2 @ ( carrie8442657464762054641omplex @ Nr2 @ Nc2 ) )
           => ( ( transp4906945491372815122omplex @ ( four_b6598977876875187360omplex @ A @ B @ C @ D2 ) )
              = ( four_b6598977876875187360omplex @ ( transp4906945491372815122omplex @ A ) @ ( transp4906945491372815122omplex @ C ) @ ( transp4906945491372815122omplex @ B ) @ ( transp4906945491372815122omplex @ D2 ) ) ) ) ) ) ) ).

% transpose_four_block_mat
thf(fact_431_transpose__four__block__mat,axiom,
    ! [A: mat_complex,Nr1: nat,Nc1: nat,B: mat_complex,Nc2: nat,C: mat_complex,Nr2: nat,D2: mat_complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr1 @ Nc1 ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ Nr1 @ Nc2 ) )
       => ( ( member_mat_complex @ C @ ( carrier_mat_complex @ Nr2 @ Nc1 ) )
         => ( ( member_mat_complex @ D2 @ ( carrier_mat_complex @ Nr2 @ Nc2 ) )
           => ( ( transp3074176993011536131omplex @ ( four_b559179830521662709omplex @ A @ B @ C @ D2 ) )
              = ( four_b559179830521662709omplex @ ( transp3074176993011536131omplex @ A ) @ ( transp3074176993011536131omplex @ C ) @ ( transp3074176993011536131omplex @ B ) @ ( transp3074176993011536131omplex @ D2 ) ) ) ) ) ) ) ).

% transpose_four_block_mat
thf(fact_432_transpose__four__block__mat,axiom,
    ! [A: mat_a,Nr1: nat,Nc1: nat,B: mat_a,Nc2: nat,C: mat_a,Nr2: nat,D2: mat_a] :
      ( ( member_mat_a @ A @ ( carrier_mat_a @ Nr1 @ Nc1 ) )
     => ( ( member_mat_a @ B @ ( carrier_mat_a @ Nr1 @ Nc2 ) )
       => ( ( member_mat_a @ C @ ( carrier_mat_a @ Nr2 @ Nc1 ) )
         => ( ( member_mat_a @ D2 @ ( carrier_mat_a @ Nr2 @ Nc2 ) )
           => ( ( transpose_mat_a @ ( four_block_mat_a @ A @ B @ C @ D2 ) )
              = ( four_block_mat_a @ ( transpose_mat_a @ A ) @ ( transpose_mat_a @ C ) @ ( transpose_mat_a @ B ) @ ( transpose_mat_a @ D2 ) ) ) ) ) ) ) ).

% transpose_four_block_mat
thf(fact_433_index__mat__four__block_I2_J,axiom,
    ! [A: mat_mat_complex,B: mat_mat_complex,C: mat_mat_complex,D2: mat_mat_complex] :
      ( ( dim_row_mat_complex @ ( four_b6598977876875187360omplex @ A @ B @ C @ D2 ) )
      = ( plus_plus_nat @ ( dim_row_mat_complex @ A ) @ ( dim_row_mat_complex @ D2 ) ) ) ).

% index_mat_four_block(2)
thf(fact_434_index__mat__four__block_I2_J,axiom,
    ! [A: mat_nat,B: mat_nat,C: mat_nat,D2: mat_nat] :
      ( ( dim_row_nat @ ( four_block_mat_nat @ A @ B @ C @ D2 ) )
      = ( plus_plus_nat @ ( dim_row_nat @ A ) @ ( dim_row_nat @ D2 ) ) ) ).

% index_mat_four_block(2)
thf(fact_435_index__mat__four__block_I2_J,axiom,
    ! [A: mat_complex,B: mat_complex,C: mat_complex,D2: mat_complex] :
      ( ( dim_row_complex @ ( four_b559179830521662709omplex @ A @ B @ C @ D2 ) )
      = ( plus_plus_nat @ ( dim_row_complex @ A ) @ ( dim_row_complex @ D2 ) ) ) ).

% index_mat_four_block(2)
thf(fact_436_index__mat__four__block_I2_J,axiom,
    ! [A: mat_a,B: mat_a,C: mat_a,D2: mat_a] :
      ( ( dim_row_a @ ( four_block_mat_a @ A @ B @ C @ D2 ) )
      = ( plus_plus_nat @ ( dim_row_a @ A ) @ ( dim_row_a @ D2 ) ) ) ).

% index_mat_four_block(2)
thf(fact_437_index__mat__four__block_I3_J,axiom,
    ! [A: mat_a,B: mat_a,C: mat_a,D2: mat_a] :
      ( ( dim_col_a @ ( four_block_mat_a @ A @ B @ C @ D2 ) )
      = ( plus_plus_nat @ ( dim_col_a @ A ) @ ( dim_col_a @ D2 ) ) ) ).

% index_mat_four_block(3)
thf(fact_438_four__block__zero__mat,axiom,
    ! [Nr1: nat,Nc1: nat,Nc2: nat,Nr2: nat] :
      ( ( four_block_mat_a @ ( zero_mat_a @ Nr1 @ Nc1 ) @ ( zero_mat_a @ Nr1 @ Nc2 ) @ ( zero_mat_a @ Nr2 @ Nc1 ) @ ( zero_mat_a @ Nr2 @ Nc2 ) )
      = ( zero_mat_a @ ( plus_plus_nat @ Nr1 @ Nr2 ) @ ( plus_plus_nat @ Nc1 @ Nc2 ) ) ) ).

% four_block_zero_mat
thf(fact_439_index__add__mat_I1_J,axiom,
    ! [I4: nat,B: mat_nat,J4: nat,A: mat_nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_nat @ B ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_nat @ B ) )
       => ( ( index_mat_nat @ ( plus_plus_mat_nat @ A @ B ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( plus_plus_nat @ ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) @ ( index_mat_nat @ B @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_add_mat(1)
thf(fact_440_index__add__mat_I1_J,axiom,
    ! [I4: nat,B: mat_mat_complex,J4: nat,A: mat_mat_complex] :
      ( ( ord_less_nat @ I4 @ ( dim_row_mat_complex @ B ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_mat_complex @ B ) )
       => ( ( index_7093623372566408491omplex @ ( plus_p8504688029521939981omplex @ A @ B ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( plus_p8323303612493835998omplex @ ( index_7093623372566408491omplex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) @ ( index_7093623372566408491omplex @ B @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_add_mat(1)
thf(fact_441_index__add__mat_I1_J,axiom,
    ! [I4: nat,B: mat_complex,J4: nat,A: mat_complex] :
      ( ( ord_less_nat @ I4 @ ( dim_row_complex @ B ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_complex @ B ) )
       => ( ( index_mat_complex @ ( plus_p8323303612493835998omplex @ A @ B ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( plus_plus_complex @ ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) @ ( index_mat_complex @ B @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_add_mat(1)
thf(fact_442_elements__matI,axiom,
    ! [A: mat_mat_complex,Nr: nat,Nc: nat,I4: nat,J4: nat,A6: mat_complex] :
      ( ( member7752848204589936667omplex @ A @ ( carrie8442657464762054641omplex @ Nr @ Nc ) )
     => ( ( ord_less_nat @ I4 @ Nr )
       => ( ( ord_less_nat @ J4 @ Nc )
         => ( ( A6
              = ( index_7093623372566408491omplex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) )
           => ( member_mat_complex @ A6 @ ( elemen3580889201824698026omplex @ A ) ) ) ) ) ) ).

% elements_matI
thf(fact_443_elements__matI,axiom,
    ! [A: mat_a,Nr: nat,Nc: nat,I4: nat,J4: nat,A6: a] :
      ( ( member_mat_a @ A @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( ( ord_less_nat @ I4 @ Nr )
       => ( ( ord_less_nat @ J4 @ Nc )
         => ( ( A6
              = ( index_mat_a @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) )
           => ( member_a @ A6 @ ( elements_mat_a @ A ) ) ) ) ) ) ).

% elements_matI
thf(fact_444_elements__matI,axiom,
    ! [A: mat_complex,Nr: nat,Nc: nat,I4: nat,J4: nat,A6: complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ Nc ) )
     => ( ( ord_less_nat @ I4 @ Nr )
       => ( ( ord_less_nat @ J4 @ Nc )
         => ( ( A6
              = ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) )
           => ( member_complex @ A6 @ ( elements_mat_complex @ A ) ) ) ) ) ) ).

% elements_matI
thf(fact_445_addrow__mat,axiom,
    ! [A: mat_nat,N: nat,Nc: nat,L: nat,A6: nat,K: nat] :
      ( ( member_mat_nat @ A @ ( carrier_mat_nat @ N @ Nc ) )
     => ( ( ord_less_nat @ L @ N )
       => ( ( gauss_8885043348566651034en_nat @ plus_plus_nat @ times_times_nat @ A6 @ K @ L @ A )
          = ( times_times_mat_nat @ ( gauss_6496870380031412486at_nat @ N @ A6 @ K @ L ) @ A ) ) ) ) ).

% addrow_mat
thf(fact_446_addrow__mat,axiom,
    ! [A: mat_complex,N: nat,Nc: nat,L: nat,A6: complex,K: nat] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ N @ Nc ) )
     => ( ( ord_less_nat @ L @ N )
       => ( ( gauss_5252963565656066424omplex @ plus_plus_complex @ times_times_complex @ A6 @ K @ L @ A )
          = ( times_8009071140041733218omplex @ ( gauss_947198734564870628omplex @ N @ A6 @ K @ L ) @ A ) ) ) ) ).

% addrow_mat
thf(fact_447_smult__smult__times,axiom,
    ! [A6: nat,K: nat,A: mat_nat] :
      ( ( smult_mat_nat @ A6 @ ( smult_mat_nat @ K @ A ) )
      = ( smult_mat_nat @ ( times_times_nat @ A6 @ K ) @ A ) ) ).

% smult_smult_times
thf(fact_448_smult__smult__times,axiom,
    ! [A6: complex,K: complex,A: mat_complex] :
      ( ( smult_mat_complex @ A6 @ ( smult_mat_complex @ K @ A ) )
      = ( smult_mat_complex @ ( times_times_complex @ A6 @ K ) @ A ) ) ).

% smult_smult_times
thf(fact_449_addcol__mat,axiom,
    ! [A: mat_complex,Nr: nat,N: nat,K: nat,A6: complex,L: nat] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ N ) )
     => ( ( ord_less_nat @ K @ N )
       => ( ( column896436094548437152omplex @ A6 @ L @ K @ A )
          = ( times_8009071140041733218omplex @ A @ ( gauss_947198734564870628omplex @ N @ A6 @ K @ L ) ) ) ) ) ).

% addcol_mat
thf(fact_450_multrow__mat,axiom,
    ! [A: mat_nat,N: nat,Nc: nat,K: nat,A6: nat] :
      ( ( member_mat_nat @ A @ ( carrier_mat_nat @ N @ Nc ) )
     => ( ( gauss_2409696420326117733en_nat @ times_times_nat @ K @ A6 @ A )
        = ( times_times_mat_nat @ ( gauss_3195076542185637913at_nat @ N @ K @ A6 ) @ A ) ) ) ).

% multrow_mat
thf(fact_451_multrow__mat,axiom,
    ! [A: mat_complex,N: nat,Nc: nat,K: nat,A6: complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ N @ Nc ) )
     => ( ( gauss_2324787009747932227omplex @ times_times_complex @ K @ A6 @ A )
        = ( times_8009071140041733218omplex @ ( gauss_6868829418328711927omplex @ N @ K @ A6 ) @ A ) ) ) ).

% multrow_mat
thf(fact_452_hermitian__decomp__dim__carrier,axiom,
    ! [A: mat_complex,B: mat_complex,U: mat_complex] :
      ( ( projec5943904436471448624omplex @ A @ B @ U )
     => ( member_mat_complex @ B @ ( carrier_mat_complex @ ( dim_row_complex @ A ) @ ( dim_col_complex @ A ) ) ) ) ).

% hermitian_decomp_dim_carrier
thf(fact_453_add__Pair,axiom,
    ! [A6: nat,B6: nat,C3: nat,D3: nat] :
      ( ( plus_p9057090461656269880at_nat @ ( product_Pair_nat_nat @ A6 @ B6 ) @ ( product_Pair_nat_nat @ C3 @ D3 ) )
      = ( product_Pair_nat_nat @ ( plus_plus_nat @ A6 @ C3 ) @ ( plus_plus_nat @ B6 @ D3 ) ) ) ).

% add_Pair
thf(fact_454_add__Pair,axiom,
    ! [A6: nat,B6: mat_complex,C3: nat,D3: mat_complex] :
      ( ( plus_p8221215230258962133omplex @ ( produc4998868960714853886omplex @ A6 @ B6 ) @ ( produc4998868960714853886omplex @ C3 @ D3 ) )
      = ( produc4998868960714853886omplex @ ( plus_plus_nat @ A6 @ C3 ) @ ( plus_p8323303612493835998omplex @ B6 @ D3 ) ) ) ).

% add_Pair
thf(fact_455_add__Pair,axiom,
    ! [A6: mat_complex,B6: nat,C3: mat_complex,D3: nat] :
      ( ( plus_p679445643052534703ex_nat @ ( produc3916067632315525152ex_nat @ A6 @ B6 ) @ ( produc3916067632315525152ex_nat @ C3 @ D3 ) )
      = ( produc3916067632315525152ex_nat @ ( plus_p8323303612493835998omplex @ A6 @ C3 ) @ ( plus_plus_nat @ B6 @ D3 ) ) ) ).

% add_Pair
thf(fact_456_add__Pair,axiom,
    ! [A6: mat_complex,B6: mat_complex,C3: mat_complex,D3: mat_complex] :
      ( ( plus_p6104634242915576478omplex @ ( produc3658446505030690647omplex @ A6 @ B6 ) @ ( produc3658446505030690647omplex @ C3 @ D3 ) )
      = ( produc3658446505030690647omplex @ ( plus_p8323303612493835998omplex @ A6 @ C3 ) @ ( plus_p8323303612493835998omplex @ B6 @ D3 ) ) ) ).

% add_Pair
thf(fact_457_add__less__imp__less__right,axiom,
    ! [A6: nat,C3: nat,B6: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ A6 @ C3 ) @ ( plus_plus_nat @ B6 @ C3 ) )
     => ( ord_less_nat @ A6 @ B6 ) ) ).

% add_less_imp_less_right
thf(fact_458_add__less__imp__less__left,axiom,
    ! [C3: nat,A6: nat,B6: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ C3 @ A6 ) @ ( plus_plus_nat @ C3 @ B6 ) )
     => ( ord_less_nat @ A6 @ B6 ) ) ).

% add_less_imp_less_left
thf(fact_459_multrow__mat__carrier,axiom,
    ! [N: nat,K: nat,A6: complex] : ( member_mat_complex @ ( gauss_6868829418328711927omplex @ N @ K @ A6 ) @ ( carrier_mat_complex @ N @ N ) ) ).

% multrow_mat_carrier
thf(fact_460_addrow__mat__carrier,axiom,
    ! [N: nat,A6: complex,K: nat,L: nat] : ( member_mat_complex @ ( gauss_947198734564870628omplex @ N @ A6 @ K @ L ) @ ( carrier_mat_complex @ N @ N ) ) ).

% addrow_mat_carrier
thf(fact_461_index__mat__multrow__mat_I2_J,axiom,
    ! [N: nat,K: nat,A6: complex] :
      ( ( dim_row_complex @ ( gauss_6868829418328711927omplex @ N @ K @ A6 ) )
      = N ) ).

% index_mat_multrow_mat(2)
thf(fact_462_index__mat__addrow__mat_I2_J,axiom,
    ! [N: nat,A6: complex,K: nat,L: nat] :
      ( ( dim_row_complex @ ( gauss_947198734564870628omplex @ N @ A6 @ K @ L ) )
      = N ) ).

% index_mat_addrow_mat(2)
thf(fact_463_Groups_Omult__ac_I3_J,axiom,
    ! [B6: nat,A6: nat,C3: nat] :
      ( ( times_times_nat @ B6 @ ( times_times_nat @ A6 @ C3 ) )
      = ( times_times_nat @ A6 @ ( times_times_nat @ B6 @ C3 ) ) ) ).

% Groups.mult_ac(3)
thf(fact_464_Groups_Omult__ac_I3_J,axiom,
    ! [B6: complex,A6: complex,C3: complex] :
      ( ( times_times_complex @ B6 @ ( times_times_complex @ A6 @ C3 ) )
      = ( times_times_complex @ A6 @ ( times_times_complex @ B6 @ C3 ) ) ) ).

% Groups.mult_ac(3)
thf(fact_465_Groups_Omult__ac_I2_J,axiom,
    ( times_times_nat
    = ( ^ [A9: nat,B9: nat] : ( times_times_nat @ B9 @ A9 ) ) ) ).

% Groups.mult_ac(2)
thf(fact_466_Groups_Omult__ac_I2_J,axiom,
    ( times_times_complex
    = ( ^ [A9: complex,B9: complex] : ( times_times_complex @ B9 @ A9 ) ) ) ).

% Groups.mult_ac(2)
thf(fact_467_Groups_Omult__ac_I1_J,axiom,
    ! [A6: nat,B6: nat,C3: nat] :
      ( ( times_times_nat @ ( times_times_nat @ A6 @ B6 ) @ C3 )
      = ( times_times_nat @ A6 @ ( times_times_nat @ B6 @ C3 ) ) ) ).

% Groups.mult_ac(1)
thf(fact_468_Groups_Omult__ac_I1_J,axiom,
    ! [A6: complex,B6: complex,C3: complex] :
      ( ( times_times_complex @ ( times_times_complex @ A6 @ B6 ) @ C3 )
      = ( times_times_complex @ A6 @ ( times_times_complex @ B6 @ C3 ) ) ) ).

% Groups.mult_ac(1)
thf(fact_469_ab__semigroup__mult__class_Omult__ac_I1_J,axiom,
    ! [A6: nat,B6: nat,C3: nat] :
      ( ( times_times_nat @ ( times_times_nat @ A6 @ B6 ) @ C3 )
      = ( times_times_nat @ A6 @ ( times_times_nat @ B6 @ C3 ) ) ) ).

% ab_semigroup_mult_class.mult_ac(1)
thf(fact_470_ab__semigroup__mult__class_Omult__ac_I1_J,axiom,
    ! [A6: complex,B6: complex,C3: complex] :
      ( ( times_times_complex @ ( times_times_complex @ A6 @ B6 ) @ C3 )
      = ( times_times_complex @ A6 @ ( times_times_complex @ B6 @ C3 ) ) ) ).

% ab_semigroup_mult_class.mult_ac(1)
thf(fact_471_Groups_Oadd__ac_I3_J,axiom,
    ! [B6: nat,A6: nat,C3: nat] :
      ( ( plus_plus_nat @ B6 @ ( plus_plus_nat @ A6 @ C3 ) )
      = ( plus_plus_nat @ A6 @ ( plus_plus_nat @ B6 @ C3 ) ) ) ).

% Groups.add_ac(3)
thf(fact_472_Groups_Oadd__ac_I2_J,axiom,
    ( plus_plus_nat
    = ( ^ [A9: nat,B9: nat] : ( plus_plus_nat @ B9 @ A9 ) ) ) ).

% Groups.add_ac(2)
thf(fact_473_Groups_Oadd__ac_I1_J,axiom,
    ! [A6: nat,B6: nat,C3: nat] :
      ( ( plus_plus_nat @ ( plus_plus_nat @ A6 @ B6 ) @ C3 )
      = ( plus_plus_nat @ A6 @ ( plus_plus_nat @ B6 @ C3 ) ) ) ).

% Groups.add_ac(1)
thf(fact_474_ab__semigroup__add__class_Oadd__ac_I1_J,axiom,
    ! [A6: nat,B6: nat,C3: nat] :
      ( ( plus_plus_nat @ ( plus_plus_nat @ A6 @ B6 ) @ C3 )
      = ( plus_plus_nat @ A6 @ ( plus_plus_nat @ B6 @ C3 ) ) ) ).

% ab_semigroup_add_class.add_ac(1)
thf(fact_475_add__mono__thms__linordered__semiring_I4_J,axiom,
    ! [I4: nat,J4: nat,K: nat,L: nat] :
      ( ( ( I4 = J4 )
        & ( K = L ) )
     => ( ( plus_plus_nat @ I4 @ K )
        = ( plus_plus_nat @ J4 @ L ) ) ) ).

% add_mono_thms_linordered_semiring(4)
thf(fact_476_group__cancel_Oadd1,axiom,
    ! [A: nat,K: nat,A6: nat,B6: nat] :
      ( ( A
        = ( plus_plus_nat @ K @ A6 ) )
     => ( ( plus_plus_nat @ A @ B6 )
        = ( plus_plus_nat @ K @ ( plus_plus_nat @ A6 @ B6 ) ) ) ) ).

% group_cancel.add1
thf(fact_477_group__cancel_Oadd2,axiom,
    ! [B: nat,K: nat,B6: nat,A6: nat] :
      ( ( B
        = ( plus_plus_nat @ K @ B6 ) )
     => ( ( plus_plus_nat @ A6 @ B )
        = ( plus_plus_nat @ K @ ( plus_plus_nat @ A6 @ B6 ) ) ) ) ).

% group_cancel.add2
thf(fact_478_add__left__cancel,axiom,
    ! [A6: nat,B6: nat,C3: nat] :
      ( ( ( plus_plus_nat @ A6 @ B6 )
        = ( plus_plus_nat @ A6 @ C3 ) )
      = ( B6 = C3 ) ) ).

% add_left_cancel
thf(fact_479_add__left__imp__eq,axiom,
    ! [A6: nat,B6: nat,C3: nat] :
      ( ( ( plus_plus_nat @ A6 @ B6 )
        = ( plus_plus_nat @ A6 @ C3 ) )
     => ( B6 = C3 ) ) ).

% add_left_imp_eq
thf(fact_480_add__right__cancel,axiom,
    ! [B6: nat,A6: nat,C3: nat] :
      ( ( ( plus_plus_nat @ B6 @ A6 )
        = ( plus_plus_nat @ C3 @ A6 ) )
      = ( B6 = C3 ) ) ).

% add_right_cancel
thf(fact_481_add__right__imp__eq,axiom,
    ! [B6: nat,A6: nat,C3: nat] :
      ( ( ( plus_plus_nat @ B6 @ A6 )
        = ( plus_plus_nat @ C3 @ A6 ) )
     => ( B6 = C3 ) ) ).

% add_right_imp_eq
thf(fact_482_swap__plus__mat,axiom,
    ! [A: mat_complex,N: nat,B: mat_complex,C: mat_complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ N @ N ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ N @ N ) )
       => ( ( member_mat_complex @ C @ ( carrier_mat_complex @ N @ N ) )
         => ( ( plus_p8323303612493835998omplex @ ( plus_p8323303612493835998omplex @ A @ B ) @ C )
            = ( plus_p8323303612493835998omplex @ ( plus_p8323303612493835998omplex @ A @ C ) @ B ) ) ) ) ) ).

% swap_plus_mat
thf(fact_483_add__carrier__mat_H,axiom,
    ! [A: mat_complex,Nr: nat,Nc: nat,B: mat_complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ Nc ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ Nr @ Nc ) )
       => ( member_mat_complex @ ( plus_p8323303612493835998omplex @ A @ B ) @ ( carrier_mat_complex @ Nr @ Nc ) ) ) ) ).

% add_carrier_mat'
thf(fact_484_multcol__mat,axiom,
    ! [A: mat_complex,Nr: nat,N: nat,K: nat,A6: complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ N ) )
     => ( ( column4410001698458707789omplex @ K @ A6 @ A )
        = ( times_8009071140041733218omplex @ A @ ( gauss_6868829418328711927omplex @ N @ K @ A6 ) ) ) ) ).

% multcol_mat
thf(fact_485_add__mono__thms__linordered__field_I5_J,axiom,
    ! [I4: nat,J4: nat,K: nat,L: nat] :
      ( ( ( ord_less_nat @ I4 @ J4 )
        & ( ord_less_nat @ K @ L ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I4 @ K ) @ ( plus_plus_nat @ J4 @ L ) ) ) ).

% add_mono_thms_linordered_field(5)
thf(fact_486_add__mono__thms__linordered__field_I2_J,axiom,
    ! [I4: nat,J4: nat,K: nat,L: nat] :
      ( ( ( I4 = J4 )
        & ( ord_less_nat @ K @ L ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I4 @ K ) @ ( plus_plus_nat @ J4 @ L ) ) ) ).

% add_mono_thms_linordered_field(2)
thf(fact_487_add__mono__thms__linordered__field_I1_J,axiom,
    ! [I4: nat,J4: nat,K: nat,L: nat] :
      ( ( ( ord_less_nat @ I4 @ J4 )
        & ( K = L ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I4 @ K ) @ ( plus_plus_nat @ J4 @ L ) ) ) ).

% add_mono_thms_linordered_field(1)
thf(fact_488_add__strict__mono,axiom,
    ! [A6: nat,B6: nat,C3: nat,D3: nat] :
      ( ( ord_less_nat @ A6 @ B6 )
     => ( ( ord_less_nat @ C3 @ D3 )
       => ( ord_less_nat @ ( plus_plus_nat @ A6 @ C3 ) @ ( plus_plus_nat @ B6 @ D3 ) ) ) ) ).

% add_strict_mono
thf(fact_489_add__less__cancel__left,axiom,
    ! [C3: nat,A6: nat,B6: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ C3 @ A6 ) @ ( plus_plus_nat @ C3 @ B6 ) )
      = ( ord_less_nat @ A6 @ B6 ) ) ).

% add_less_cancel_left
thf(fact_490_add__strict__left__mono,axiom,
    ! [A6: nat,B6: nat,C3: nat] :
      ( ( ord_less_nat @ A6 @ B6 )
     => ( ord_less_nat @ ( plus_plus_nat @ C3 @ A6 ) @ ( plus_plus_nat @ C3 @ B6 ) ) ) ).

% add_strict_left_mono
thf(fact_491_add__less__cancel__right,axiom,
    ! [A6: nat,C3: nat,B6: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ A6 @ C3 ) @ ( plus_plus_nat @ B6 @ C3 ) )
      = ( ord_less_nat @ A6 @ B6 ) ) ).

% add_less_cancel_right
thf(fact_492_add__strict__right__mono,axiom,
    ! [A6: nat,B6: nat,C3: nat] :
      ( ( ord_less_nat @ A6 @ B6 )
     => ( ord_less_nat @ ( plus_plus_nat @ A6 @ C3 ) @ ( plus_plus_nat @ B6 @ C3 ) ) ) ).

% add_strict_right_mono
thf(fact_493_index__mat__four__block_I1_J,axiom,
    ! [I4: nat,A: mat_complex,D2: mat_complex,J4: nat,B: mat_complex,C: mat_complex] :
      ( ( ord_less_nat @ I4 @ ( plus_plus_nat @ ( dim_row_complex @ A ) @ ( dim_row_complex @ D2 ) ) )
     => ( ( ord_less_nat @ J4 @ ( plus_plus_nat @ ( dim_col_complex @ A ) @ ( dim_col_complex @ D2 ) ) )
       => ( ( ( ord_less_nat @ I4 @ ( dim_row_complex @ A ) )
           => ( ( ( ord_less_nat @ J4 @ ( dim_col_complex @ A ) )
               => ( ( index_mat_complex @ ( four_b559179830521662709omplex @ A @ B @ C @ D2 ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                  = ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) )
              & ( ~ ( ord_less_nat @ J4 @ ( dim_col_complex @ A ) )
               => ( ( index_mat_complex @ ( four_b559179830521662709omplex @ A @ B @ C @ D2 ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                  = ( index_mat_complex @ B @ ( product_Pair_nat_nat @ I4 @ ( minus_minus_nat @ J4 @ ( dim_col_complex @ A ) ) ) ) ) ) ) )
          & ( ~ ( ord_less_nat @ I4 @ ( dim_row_complex @ A ) )
           => ( ( ( ord_less_nat @ J4 @ ( dim_col_complex @ A ) )
               => ( ( index_mat_complex @ ( four_b559179830521662709omplex @ A @ B @ C @ D2 ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                  = ( index_mat_complex @ C @ ( product_Pair_nat_nat @ ( minus_minus_nat @ I4 @ ( dim_row_complex @ A ) ) @ J4 ) ) ) )
              & ( ~ ( ord_less_nat @ J4 @ ( dim_col_complex @ A ) )
               => ( ( index_mat_complex @ ( four_b559179830521662709omplex @ A @ B @ C @ D2 ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                  = ( index_mat_complex @ D2 @ ( product_Pair_nat_nat @ ( minus_minus_nat @ I4 @ ( dim_row_complex @ A ) ) @ ( minus_minus_nat @ J4 @ ( dim_col_complex @ A ) ) ) ) ) ) ) ) ) ) ) ).

% index_mat_four_block(1)
thf(fact_494_index__mat__four__block_I1_J,axiom,
    ! [I4: nat,A: mat_a,D2: mat_a,J4: nat,B: mat_a,C: mat_a] :
      ( ( ord_less_nat @ I4 @ ( plus_plus_nat @ ( dim_row_a @ A ) @ ( dim_row_a @ D2 ) ) )
     => ( ( ord_less_nat @ J4 @ ( plus_plus_nat @ ( dim_col_a @ A ) @ ( dim_col_a @ D2 ) ) )
       => ( ( ( ord_less_nat @ I4 @ ( dim_row_a @ A ) )
           => ( ( ( ord_less_nat @ J4 @ ( dim_col_a @ A ) )
               => ( ( index_mat_a @ ( four_block_mat_a @ A @ B @ C @ D2 ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                  = ( index_mat_a @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) )
              & ( ~ ( ord_less_nat @ J4 @ ( dim_col_a @ A ) )
               => ( ( index_mat_a @ ( four_block_mat_a @ A @ B @ C @ D2 ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                  = ( index_mat_a @ B @ ( product_Pair_nat_nat @ I4 @ ( minus_minus_nat @ J4 @ ( dim_col_a @ A ) ) ) ) ) ) ) )
          & ( ~ ( ord_less_nat @ I4 @ ( dim_row_a @ A ) )
           => ( ( ( ord_less_nat @ J4 @ ( dim_col_a @ A ) )
               => ( ( index_mat_a @ ( four_block_mat_a @ A @ B @ C @ D2 ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                  = ( index_mat_a @ C @ ( product_Pair_nat_nat @ ( minus_minus_nat @ I4 @ ( dim_row_a @ A ) ) @ J4 ) ) ) )
              & ( ~ ( ord_less_nat @ J4 @ ( dim_col_a @ A ) )
               => ( ( index_mat_a @ ( four_block_mat_a @ A @ B @ C @ D2 ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                  = ( index_mat_a @ D2 @ ( product_Pair_nat_nat @ ( minus_minus_nat @ I4 @ ( dim_row_a @ A ) ) @ ( minus_minus_nat @ J4 @ ( dim_col_a @ A ) ) ) ) ) ) ) ) ) ) ) ).

% index_mat_four_block(1)
thf(fact_495_add__lessD1,axiom,
    ! [I4: nat,J4: nat,K: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ I4 @ J4 ) @ K )
     => ( ord_less_nat @ I4 @ K ) ) ).

% add_lessD1
thf(fact_496_add__less__mono,axiom,
    ! [I4: nat,J4: nat,K: nat,L: nat] :
      ( ( ord_less_nat @ I4 @ J4 )
     => ( ( ord_less_nat @ K @ L )
       => ( ord_less_nat @ ( plus_plus_nat @ I4 @ K ) @ ( plus_plus_nat @ J4 @ L ) ) ) ) ).

% add_less_mono
thf(fact_497_not__add__less1,axiom,
    ! [I4: nat,J4: nat] :
      ~ ( ord_less_nat @ ( plus_plus_nat @ I4 @ J4 ) @ I4 ) ).

% not_add_less1
thf(fact_498_not__add__less2,axiom,
    ! [J4: nat,I4: nat] :
      ~ ( ord_less_nat @ ( plus_plus_nat @ J4 @ I4 ) @ I4 ) ).

% not_add_less2
thf(fact_499_add__less__mono1,axiom,
    ! [I4: nat,J4: nat,K: nat] :
      ( ( ord_less_nat @ I4 @ J4 )
     => ( ord_less_nat @ ( plus_plus_nat @ I4 @ K ) @ ( plus_plus_nat @ J4 @ K ) ) ) ).

% add_less_mono1
thf(fact_500_trans__less__add1,axiom,
    ! [I4: nat,J4: nat,M2: nat] :
      ( ( ord_less_nat @ I4 @ J4 )
     => ( ord_less_nat @ I4 @ ( plus_plus_nat @ J4 @ M2 ) ) ) ).

% trans_less_add1
thf(fact_501_trans__less__add2,axiom,
    ! [I4: nat,J4: nat,M2: nat] :
      ( ( ord_less_nat @ I4 @ J4 )
     => ( ord_less_nat @ I4 @ ( plus_plus_nat @ M2 @ J4 ) ) ) ).

% trans_less_add2
thf(fact_502_diff__add__inverse2,axiom,
    ! [M2: nat,N: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ M2 @ N ) @ N )
      = M2 ) ).

% diff_add_inverse2
thf(fact_503_diff__add__inverse,axiom,
    ! [N: nat,M2: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ N @ M2 ) @ N )
      = M2 ) ).

% diff_add_inverse
thf(fact_504_diff__diff__left,axiom,
    ! [I4: nat,J4: nat,K: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ I4 @ J4 ) @ K )
      = ( minus_minus_nat @ I4 @ ( plus_plus_nat @ J4 @ K ) ) ) ).

% diff_diff_left
thf(fact_505_diff__cancel2,axiom,
    ! [M2: nat,K: nat,N: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ M2 @ K ) @ ( plus_plus_nat @ N @ K ) )
      = ( minus_minus_nat @ M2 @ N ) ) ).

% diff_cancel2
thf(fact_506_Nat_Odiff__cancel,axiom,
    ! [K: nat,M2: nat,N: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ K @ M2 ) @ ( plus_plus_nat @ K @ N ) )
      = ( minus_minus_nat @ M2 @ N ) ) ).

% Nat.diff_cancel
thf(fact_507_diff__Pair,axiom,
    ! [A6: nat,B6: nat,C3: nat,D3: nat] :
      ( ( minus_4365393887724441320at_nat @ ( product_Pair_nat_nat @ A6 @ B6 ) @ ( product_Pair_nat_nat @ C3 @ D3 ) )
      = ( product_Pair_nat_nat @ ( minus_minus_nat @ A6 @ C3 ) @ ( minus_minus_nat @ B6 @ D3 ) ) ) ).

% diff_Pair
thf(fact_508_diff__Pair,axiom,
    ! [A6: nat,B6: mat_complex,C3: nat,D3: mat_complex] :
      ( ( minus_9125208095613564965omplex @ ( produc4998868960714853886omplex @ A6 @ B6 ) @ ( produc4998868960714853886omplex @ C3 @ D3 ) )
      = ( produc4998868960714853886omplex @ ( minus_minus_nat @ A6 @ C3 ) @ ( minus_2412168080157227406omplex @ B6 @ D3 ) ) ) ).

% diff_Pair
thf(fact_509_diff__Pair,axiom,
    ! [A6: mat_complex,B6: nat,C3: mat_complex,D3: nat] :
      ( ( minus_1583438508407137535ex_nat @ ( produc3916067632315525152ex_nat @ A6 @ B6 ) @ ( produc3916067632315525152ex_nat @ C3 @ D3 ) )
      = ( produc3916067632315525152ex_nat @ ( minus_2412168080157227406omplex @ A6 @ C3 ) @ ( minus_minus_nat @ B6 @ D3 ) ) ) ).

% diff_Pair
thf(fact_510_diff__Pair,axiom,
    ! [A6: mat_complex,B6: mat_complex,C3: mat_complex,D3: mat_complex] :
      ( ( minus_2734116836287720782omplex @ ( produc3658446505030690647omplex @ A6 @ B6 ) @ ( produc3658446505030690647omplex @ C3 @ D3 ) )
      = ( produc3658446505030690647omplex @ ( minus_2412168080157227406omplex @ A6 @ C3 ) @ ( minus_2412168080157227406omplex @ B6 @ D3 ) ) ) ).

% diff_Pair
thf(fact_511_cancel__ab__semigroup__add__class_Odiff__right__commute,axiom,
    ! [A6: nat,C3: nat,B6: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ A6 @ C3 ) @ B6 )
      = ( minus_minus_nat @ ( minus_minus_nat @ A6 @ B6 ) @ C3 ) ) ).

% cancel_ab_semigroup_add_class.diff_right_commute
thf(fact_512_diff__less__mono2,axiom,
    ! [M2: nat,N: nat,L: nat] :
      ( ( ord_less_nat @ M2 @ N )
     => ( ( ord_less_nat @ M2 @ L )
       => ( ord_less_nat @ ( minus_minus_nat @ L @ N ) @ ( minus_minus_nat @ L @ M2 ) ) ) ) ).

% diff_less_mono2
thf(fact_513_less__imp__diff__less,axiom,
    ! [J4: nat,K: nat,N: nat] :
      ( ( ord_less_nat @ J4 @ K )
     => ( ord_less_nat @ ( minus_minus_nat @ J4 @ N ) @ K ) ) ).

% less_imp_diff_less
thf(fact_514_diff__diff__add,axiom,
    ! [A6: nat,B6: nat,C3: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ A6 @ B6 ) @ C3 )
      = ( minus_minus_nat @ A6 @ ( plus_plus_nat @ B6 @ C3 ) ) ) ).

% diff_diff_add
thf(fact_515_add__implies__diff,axiom,
    ! [C3: nat,B6: nat,A6: nat] :
      ( ( ( plus_plus_nat @ C3 @ B6 )
        = A6 )
     => ( C3
        = ( minus_minus_nat @ A6 @ B6 ) ) ) ).

% add_implies_diff
thf(fact_516_add__diff__cancel__left,axiom,
    ! [C3: nat,A6: nat,B6: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ C3 @ A6 ) @ ( plus_plus_nat @ C3 @ B6 ) )
      = ( minus_minus_nat @ A6 @ B6 ) ) ).

% add_diff_cancel_left
thf(fact_517_add__diff__cancel__left_H,axiom,
    ! [A6: nat,B6: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ A6 @ B6 ) @ A6 )
      = B6 ) ).

% add_diff_cancel_left'
thf(fact_518_add__diff__cancel__right,axiom,
    ! [A6: nat,C3: nat,B6: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ A6 @ C3 ) @ ( plus_plus_nat @ B6 @ C3 ) )
      = ( minus_minus_nat @ A6 @ B6 ) ) ).

% add_diff_cancel_right
thf(fact_519_add__diff__cancel__right_H,axiom,
    ! [A6: nat,B6: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ A6 @ B6 ) @ B6 )
      = A6 ) ).

% add_diff_cancel_right'
thf(fact_520_less__diff__conv,axiom,
    ! [I4: nat,J4: nat,K: nat] :
      ( ( ord_less_nat @ I4 @ ( minus_minus_nat @ J4 @ K ) )
      = ( ord_less_nat @ ( plus_plus_nat @ I4 @ K ) @ J4 ) ) ).

% less_diff_conv
thf(fact_521_add__diff__inverse__nat,axiom,
    ! [M2: nat,N: nat] :
      ( ~ ( ord_less_nat @ M2 @ N )
     => ( ( plus_plus_nat @ N @ ( minus_minus_nat @ M2 @ N ) )
        = M2 ) ) ).

% add_diff_inverse_nat
thf(fact_522_index__minus__mat_I1_J,axiom,
    ! [I4: nat,B: mat_nat,J4: nat,A: mat_nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_nat @ B ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_nat @ B ) )
       => ( ( index_mat_nat @ ( minus_minus_mat_nat @ A @ B ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( minus_minus_nat @ ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) @ ( index_mat_nat @ B @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_minus_mat(1)
thf(fact_523_index__minus__mat_I1_J,axiom,
    ! [I4: nat,B: mat_mat_complex,J4: nat,A: mat_mat_complex] :
      ( ( ord_less_nat @ I4 @ ( dim_row_mat_complex @ B ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_mat_complex @ B ) )
       => ( ( index_7093623372566408491omplex @ ( minus_1104642222790461277omplex @ A @ B ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( minus_2412168080157227406omplex @ ( index_7093623372566408491omplex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) @ ( index_7093623372566408491omplex @ B @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_minus_mat(1)
thf(fact_524_index__minus__mat_I1_J,axiom,
    ! [I4: nat,B: mat_complex,J4: nat,A: mat_complex] :
      ( ( ord_less_nat @ I4 @ ( dim_row_complex @ B ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_complex @ B ) )
       => ( ( index_mat_complex @ ( minus_2412168080157227406omplex @ A @ B ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( minus_minus_complex @ ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) @ ( index_mat_complex @ B @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_minus_mat(1)
thf(fact_525_linorder__neqE__nat,axiom,
    ! [X: nat,Y5: nat] :
      ( ( X != Y5 )
     => ( ~ ( ord_less_nat @ X @ Y5 )
       => ( ord_less_nat @ Y5 @ X ) ) ) ).

% linorder_neqE_nat
thf(fact_526_infinite__descent,axiom,
    ! [P: nat > $o,N: nat] :
      ( ! [N3: nat] :
          ( ~ ( P @ N3 )
         => ? [M3: nat] :
              ( ( ord_less_nat @ M3 @ N3 )
              & ~ ( P @ M3 ) ) )
     => ( P @ N ) ) ).

% infinite_descent
thf(fact_527_nat__less__induct,axiom,
    ! [P: nat > $o,N: nat] :
      ( ! [N3: nat] :
          ( ! [M3: nat] :
              ( ( ord_less_nat @ M3 @ N3 )
             => ( P @ M3 ) )
         => ( P @ N3 ) )
     => ( P @ N ) ) ).

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

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

% less_not_refl3
thf(fact_530_less__not__refl2,axiom,
    ! [N: nat,M2: nat] :
      ( ( ord_less_nat @ N @ M2 )
     => ( M2 != N ) ) ).

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

% less_not_refl
thf(fact_532_nat__neq__iff,axiom,
    ! [M2: nat,N: nat] :
      ( ( M2 != N )
      = ( ( ord_less_nat @ M2 @ N )
        | ( ord_less_nat @ N @ M2 ) ) ) ).

% nat_neq_iff
thf(fact_533_add__mult__distrib2,axiom,
    ! [K: nat,M2: nat,N: nat] :
      ( ( times_times_nat @ K @ ( plus_plus_nat @ M2 @ N ) )
      = ( plus_plus_nat @ ( times_times_nat @ K @ M2 ) @ ( times_times_nat @ K @ N ) ) ) ).

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

% add_mult_distrib
thf(fact_535_nat__distrib_I2_J,axiom,
    ! [A6: nat,B6: nat,C3: nat] :
      ( ( times_times_nat @ A6 @ ( plus_plus_nat @ B6 @ C3 ) )
      = ( plus_plus_nat @ ( times_times_nat @ A6 @ B6 ) @ ( times_times_nat @ A6 @ C3 ) ) ) ).

% nat_distrib(2)
thf(fact_536_nat__distrib_I2_J,axiom,
    ! [A6: complex,B6: complex,C3: complex] :
      ( ( times_times_complex @ A6 @ ( plus_plus_complex @ B6 @ C3 ) )
      = ( plus_plus_complex @ ( times_times_complex @ A6 @ B6 ) @ ( times_times_complex @ A6 @ C3 ) ) ) ).

% nat_distrib(2)
thf(fact_537_nat__add__left__cancel__less,axiom,
    ! [K: nat,M2: nat,N: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ K @ M2 ) @ ( plus_plus_nat @ K @ N ) )
      = ( ord_less_nat @ M2 @ N ) ) ).

% nat_add_left_cancel_less
thf(fact_538_less__add__eq__less,axiom,
    ! [K: nat,L: nat,M2: nat,N: nat] :
      ( ( ord_less_nat @ K @ L )
     => ( ( ( plus_plus_nat @ M2 @ L )
          = ( plus_plus_nat @ K @ N ) )
       => ( ord_less_nat @ M2 @ N ) ) ) ).

% less_add_eq_less
thf(fact_539_less__add__iff1,axiom,
    ! [A6: complex,E: complex,C3: complex,B6: complex,D3: complex] :
      ( ( ord_less_complex @ ( plus_plus_complex @ ( times_times_complex @ A6 @ E ) @ C3 ) @ ( plus_plus_complex @ ( times_times_complex @ B6 @ E ) @ D3 ) )
      = ( ord_less_complex @ ( plus_plus_complex @ ( times_times_complex @ ( minus_minus_complex @ A6 @ B6 ) @ E ) @ C3 ) @ D3 ) ) ).

% less_add_iff1
thf(fact_540_less__add__iff2,axiom,
    ! [A6: complex,E: complex,C3: complex,B6: complex,D3: complex] :
      ( ( ord_less_complex @ ( plus_plus_complex @ ( times_times_complex @ A6 @ E ) @ C3 ) @ ( plus_plus_complex @ ( times_times_complex @ B6 @ E ) @ D3 ) )
      = ( ord_less_complex @ C3 @ ( plus_plus_complex @ ( times_times_complex @ ( minus_minus_complex @ B6 @ A6 ) @ E ) @ D3 ) ) ) ).

% less_add_iff2
thf(fact_541_add__col__sub__index__row,axiom,
    ! [I4: nat,A: mat_complex,J4: nat,L: nat,K: nat,A6: complex] :
      ( ( ord_less_nat @ I4 @ ( dim_row_complex @ A ) )
     => ( ( ord_less_nat @ I4 @ ( dim_col_complex @ A ) )
       => ( ( ord_less_nat @ J4 @ ( dim_row_complex @ A ) )
         => ( ( ord_less_nat @ J4 @ ( dim_col_complex @ A ) )
           => ( ( ord_less_nat @ L @ ( dim_row_complex @ A ) )
             => ( ( ( ( I4 = K )
                    & ( J4 = L ) )
                 => ( ( index_mat_complex @ ( column6029646570091773654omplex @ A6 @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                    = ( minus_minus_complex @ ( minus_minus_complex @ ( plus_plus_complex @ ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) @ ( times_times_complex @ A6 @ ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ I4 ) ) ) ) @ ( times_times_complex @ ( times_times_complex @ A6 @ A6 ) @ ( index_mat_complex @ A @ ( product_Pair_nat_nat @ J4 @ I4 ) ) ) ) @ ( times_times_complex @ A6 @ ( index_mat_complex @ A @ ( product_Pair_nat_nat @ J4 @ J4 ) ) ) ) ) )
                & ( ~ ( ( I4 = K )
                      & ( J4 = L ) )
                 => ( ( ( ( I4 = K )
                        & ( J4 != L ) )
                     => ( ( index_mat_complex @ ( column6029646570091773654omplex @ A6 @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                        = ( minus_minus_complex @ ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) @ ( times_times_complex @ A6 @ ( index_mat_complex @ A @ ( product_Pair_nat_nat @ L @ J4 ) ) ) ) ) )
                    & ( ~ ( ( I4 = K )
                          & ( J4 != L ) )
                     => ( ( ( ( I4 != K )
                            & ( J4 = L ) )
                         => ( ( index_mat_complex @ ( column6029646570091773654omplex @ A6 @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                            = ( plus_plus_complex @ ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) @ ( times_times_complex @ A6 @ ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ K ) ) ) ) ) )
                        & ( ~ ( ( I4 != K )
                              & ( J4 = L ) )
                         => ( ( index_mat_complex @ ( column6029646570091773654omplex @ A6 @ K @ L @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                            = ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ) ) ) ) ) ) ) ) ).

% add_col_sub_index_row
thf(fact_542_linordered__semidom__class_Oadd__diff__inverse,axiom,
    ! [A6: nat,B6: nat] :
      ( ~ ( ord_less_nat @ A6 @ B6 )
     => ( ( plus_plus_nat @ B6 @ ( minus_minus_nat @ A6 @ B6 ) )
        = A6 ) ) ).

% linordered_semidom_class.add_diff_inverse
thf(fact_543_eq__add__iff1,axiom,
    ! [A6: complex,E: complex,C3: complex,B6: complex,D3: complex] :
      ( ( ( plus_plus_complex @ ( times_times_complex @ A6 @ E ) @ C3 )
        = ( plus_plus_complex @ ( times_times_complex @ B6 @ E ) @ D3 ) )
      = ( ( plus_plus_complex @ ( times_times_complex @ ( minus_minus_complex @ A6 @ B6 ) @ E ) @ C3 )
        = D3 ) ) ).

% eq_add_iff1
thf(fact_544_minus__carrier__mat_H,axiom,
    ! [A: mat_complex,Nr: nat,Nc: nat,B: mat_complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ Nc ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ Nr @ Nc ) )
       => ( member_mat_complex @ ( minus_2412168080157227406omplex @ A @ B ) @ ( carrier_mat_complex @ Nr @ Nc ) ) ) ) ).

% minus_carrier_mat'
thf(fact_545_minus__carrier__mat,axiom,
    ! [B: mat_complex,Nr: nat,Nc: nat,A: mat_complex] :
      ( ( member_mat_complex @ B @ ( carrier_mat_complex @ Nr @ Nc ) )
     => ( member_mat_complex @ ( minus_2412168080157227406omplex @ A @ B ) @ ( carrier_mat_complex @ Nr @ Nc ) ) ) ).

% minus_carrier_mat
thf(fact_546_index__minus__mat_I2_J,axiom,
    ! [A: mat_complex,B: mat_complex] :
      ( ( dim_row_complex @ ( minus_2412168080157227406omplex @ A @ B ) )
      = ( dim_row_complex @ B ) ) ).

% index_minus_mat(2)
thf(fact_547_index__minus__mat_I3_J,axiom,
    ! [A: mat_complex,B: mat_complex] :
      ( ( dim_col_complex @ ( minus_2412168080157227406omplex @ A @ B ) )
      = ( dim_col_complex @ B ) ) ).

% index_minus_mat(3)
thf(fact_548_add__col__sub__row__carrier_I3_J,axiom,
    ! [A: mat_complex,N: nat,A6: complex,K: nat,L: nat] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ N @ N ) )
     => ( member_mat_complex @ ( column6029646570091773654omplex @ A6 @ K @ L @ A ) @ ( carrier_mat_complex @ N @ N ) ) ) ).

% add_col_sub_row_carrier(3)
thf(fact_549_add__col__sub__row__carrier_I1_J,axiom,
    ! [A6: complex,K: nat,L: nat,A: mat_complex] :
      ( ( dim_row_complex @ ( column6029646570091773654omplex @ A6 @ K @ L @ A ) )
      = ( dim_row_complex @ A ) ) ).

% add_col_sub_row_carrier(1)
thf(fact_550_minus__mult__distrib__mat,axiom,
    ! [A: mat_complex,Nr: nat,N: nat,B: mat_complex,C: mat_complex,Nc: nat] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ N ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ Nr @ N ) )
       => ( ( member_mat_complex @ C @ ( carrier_mat_complex @ N @ Nc ) )
         => ( ( times_8009071140041733218omplex @ ( minus_2412168080157227406omplex @ A @ B ) @ C )
            = ( minus_2412168080157227406omplex @ ( times_8009071140041733218omplex @ A @ C ) @ ( times_8009071140041733218omplex @ B @ C ) ) ) ) ) ) ).

% minus_mult_distrib_mat
thf(fact_551_mult__minus__distrib__mat,axiom,
    ! [A: mat_complex,Nr: nat,N: nat,B: mat_complex,Nc: nat,C: mat_complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ N ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ N @ Nc ) )
       => ( ( member_mat_complex @ C @ ( carrier_mat_complex @ N @ Nc ) )
         => ( ( times_8009071140041733218omplex @ A @ ( minus_2412168080157227406omplex @ B @ C ) )
            = ( minus_2412168080157227406omplex @ ( times_8009071140041733218omplex @ A @ B ) @ ( times_8009071140041733218omplex @ A @ C ) ) ) ) ) ) ).

% mult_minus_distrib_mat
thf(fact_552_minus__r__inv__mat,axiom,
    ! [A: mat_complex,Nr: nat,Nc: nat] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ Nc ) )
     => ( ( minus_2412168080157227406omplex @ A @ A )
        = ( zero_mat_complex @ Nr @ Nc ) ) ) ).

% minus_r_inv_mat
thf(fact_553_mat__minus__minus,axiom,
    ! [A: mat_complex,N: nat,M2: nat,B: mat_complex,C: mat_complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ N @ M2 ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ N @ M2 ) )
       => ( ( member_mat_complex @ C @ ( carrier_mat_complex @ N @ M2 ) )
         => ( ( minus_2412168080157227406omplex @ A @ ( minus_2412168080157227406omplex @ B @ C ) )
            = ( plus_p8323303612493835998omplex @ ( minus_2412168080157227406omplex @ A @ B ) @ C ) ) ) ) ) ).

% mat_minus_minus
thf(fact_554_minus__add__minus__mat,axiom,
    ! [U2: mat_complex,Nr: nat,Nc: nat,V: mat_complex,W: mat_complex] :
      ( ( member_mat_complex @ U2 @ ( carrier_mat_complex @ Nr @ Nc ) )
     => ( ( member_mat_complex @ V @ ( carrier_mat_complex @ Nr @ Nc ) )
       => ( ( member_mat_complex @ W @ ( carrier_mat_complex @ Nr @ Nc ) )
         => ( ( minus_2412168080157227406omplex @ U2 @ ( plus_p8323303612493835998omplex @ V @ W ) )
            = ( minus_2412168080157227406omplex @ ( minus_2412168080157227406omplex @ U2 @ V ) @ W ) ) ) ) ) ).

% minus_add_minus_mat
thf(fact_555_smult__distrib__left__minus__mat,axiom,
    ! [A: mat_complex,N: nat,B: mat_complex,C3: complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ N @ N ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ N @ N ) )
       => ( ( smult_mat_complex @ C3 @ ( minus_2412168080157227406omplex @ B @ A ) )
          = ( minus_2412168080157227406omplex @ ( smult_mat_complex @ C3 @ B ) @ ( smult_mat_complex @ C3 @ A ) ) ) ) ) ).

% smult_distrib_left_minus_mat
thf(fact_556_transpose__minus,axiom,
    ! [A: mat_complex,Nr: nat,Nc: nat,B: mat_complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ Nc ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ Nr @ Nc ) )
       => ( ( transp3074176993011536131omplex @ ( minus_2412168080157227406omplex @ A @ B ) )
          = ( minus_2412168080157227406omplex @ ( transp3074176993011536131omplex @ A ) @ ( transp3074176993011536131omplex @ B ) ) ) ) ) ).

% transpose_minus
thf(fact_557_cross3__simps_I49_J,axiom,
    ! [A6: complex,B6: complex,X: complex] :
      ( ( times_times_complex @ ( plus_plus_complex @ A6 @ B6 ) @ X )
      = ( plus_plus_complex @ ( times_times_complex @ A6 @ X ) @ ( times_times_complex @ B6 @ X ) ) ) ).

% cross3_simps(49)
thf(fact_558_cross3__simps_I48_J,axiom,
    ! [A6: complex,X: complex,Y5: complex] :
      ( ( times_times_complex @ A6 @ ( plus_plus_complex @ X @ Y5 ) )
      = ( plus_plus_complex @ ( times_times_complex @ A6 @ X ) @ ( times_times_complex @ A6 @ Y5 ) ) ) ).

% cross3_simps(48)
thf(fact_559_cross3__simps_I23_J,axiom,
    ! [A6: nat,B6: nat,C3: nat] :
      ( ( times_times_nat @ ( plus_plus_nat @ A6 @ B6 ) @ C3 )
      = ( plus_plus_nat @ ( times_times_nat @ A6 @ C3 ) @ ( times_times_nat @ B6 @ C3 ) ) ) ).

% cross3_simps(23)
thf(fact_560_cross3__simps_I23_J,axiom,
    ! [A6: complex,B6: complex,C3: complex] :
      ( ( times_times_complex @ ( plus_plus_complex @ A6 @ B6 ) @ C3 )
      = ( plus_plus_complex @ ( times_times_complex @ A6 @ C3 ) @ ( times_times_complex @ B6 @ C3 ) ) ) ).

% cross3_simps(23)
thf(fact_561_ring__class_Oring__distribs_I2_J,axiom,
    ! [A6: complex,B6: complex,C3: complex] :
      ( ( times_times_complex @ ( plus_plus_complex @ A6 @ B6 ) @ C3 )
      = ( plus_plus_complex @ ( times_times_complex @ A6 @ C3 ) @ ( times_times_complex @ B6 @ C3 ) ) ) ).

% ring_class.ring_distribs(2)
thf(fact_562_ring__class_Oring__distribs_I1_J,axiom,
    ! [A6: complex,B6: complex,C3: complex] :
      ( ( times_times_complex @ A6 @ ( plus_plus_complex @ B6 @ C3 ) )
      = ( plus_plus_complex @ ( times_times_complex @ A6 @ B6 ) @ ( times_times_complex @ A6 @ C3 ) ) ) ).

% ring_class.ring_distribs(1)
thf(fact_563_comm__semiring__class_Odistrib,axiom,
    ! [A6: nat,B6: nat,C3: nat] :
      ( ( times_times_nat @ ( plus_plus_nat @ A6 @ B6 ) @ C3 )
      = ( plus_plus_nat @ ( times_times_nat @ A6 @ C3 ) @ ( times_times_nat @ B6 @ C3 ) ) ) ).

% comm_semiring_class.distrib
thf(fact_564_comm__semiring__class_Odistrib,axiom,
    ! [A6: complex,B6: complex,C3: complex] :
      ( ( times_times_complex @ ( plus_plus_complex @ A6 @ B6 ) @ C3 )
      = ( plus_plus_complex @ ( times_times_complex @ A6 @ C3 ) @ ( times_times_complex @ B6 @ C3 ) ) ) ).

% comm_semiring_class.distrib
thf(fact_565_combine__common__factor,axiom,
    ! [A6: nat,E: nat,B6: nat,C3: nat] :
      ( ( plus_plus_nat @ ( times_times_nat @ A6 @ E ) @ ( plus_plus_nat @ ( times_times_nat @ B6 @ E ) @ C3 ) )
      = ( plus_plus_nat @ ( times_times_nat @ ( plus_plus_nat @ A6 @ B6 ) @ E ) @ C3 ) ) ).

% combine_common_factor
thf(fact_566_combine__common__factor,axiom,
    ! [A6: complex,E: complex,B6: complex,C3: complex] :
      ( ( plus_plus_complex @ ( times_times_complex @ A6 @ E ) @ ( plus_plus_complex @ ( times_times_complex @ B6 @ E ) @ C3 ) )
      = ( plus_plus_complex @ ( times_times_complex @ ( plus_plus_complex @ A6 @ B6 ) @ E ) @ C3 ) ) ).

% combine_common_factor
thf(fact_567_right__diff__distrib_H,axiom,
    ! [A6: nat,B6: nat,C3: nat] :
      ( ( times_times_nat @ A6 @ ( minus_minus_nat @ B6 @ C3 ) )
      = ( minus_minus_nat @ ( times_times_nat @ A6 @ B6 ) @ ( times_times_nat @ A6 @ C3 ) ) ) ).

% right_diff_distrib'
thf(fact_568_right__diff__distrib_H,axiom,
    ! [A6: complex,B6: complex,C3: complex] :
      ( ( times_times_complex @ A6 @ ( minus_minus_complex @ B6 @ C3 ) )
      = ( minus_minus_complex @ ( times_times_complex @ A6 @ B6 ) @ ( times_times_complex @ A6 @ C3 ) ) ) ).

% right_diff_distrib'
thf(fact_569_left__diff__distrib_H,axiom,
    ! [B6: nat,C3: nat,A6: nat] :
      ( ( times_times_nat @ ( minus_minus_nat @ B6 @ C3 ) @ A6 )
      = ( minus_minus_nat @ ( times_times_nat @ B6 @ A6 ) @ ( times_times_nat @ C3 @ A6 ) ) ) ).

% left_diff_distrib'
thf(fact_570_left__diff__distrib_H,axiom,
    ! [B6: complex,C3: complex,A6: complex] :
      ( ( times_times_complex @ ( minus_minus_complex @ B6 @ C3 ) @ A6 )
      = ( minus_minus_complex @ ( times_times_complex @ B6 @ A6 ) @ ( times_times_complex @ C3 @ A6 ) ) ) ).

% left_diff_distrib'
thf(fact_571_right__diff__distrib,axiom,
    ! [A6: complex,B6: complex,C3: complex] :
      ( ( times_times_complex @ A6 @ ( minus_minus_complex @ B6 @ C3 ) )
      = ( minus_minus_complex @ ( times_times_complex @ A6 @ B6 ) @ ( times_times_complex @ A6 @ C3 ) ) ) ).

% right_diff_distrib
thf(fact_572_left__diff__distrib,axiom,
    ! [A6: complex,B6: complex,C3: complex] :
      ( ( times_times_complex @ ( minus_minus_complex @ A6 @ B6 ) @ C3 )
      = ( minus_minus_complex @ ( times_times_complex @ A6 @ C3 ) @ ( times_times_complex @ B6 @ C3 ) ) ) ).

% left_diff_distrib
thf(fact_573_cross3__simps_I50_J,axiom,
    ! [A6: complex,B6: complex,X: complex] :
      ( ( times_times_complex @ ( minus_minus_complex @ A6 @ B6 ) @ X )
      = ( minus_minus_complex @ ( times_times_complex @ A6 @ X ) @ ( times_times_complex @ B6 @ X ) ) ) ).

% cross3_simps(50)
thf(fact_574_cross3__simps_I51_J,axiom,
    ! [A6: complex,X: complex,Y5: complex] :
      ( ( times_times_complex @ A6 @ ( minus_minus_complex @ X @ Y5 ) )
      = ( minus_minus_complex @ ( times_times_complex @ A6 @ X ) @ ( times_times_complex @ A6 @ Y5 ) ) ) ).

% cross3_simps(51)
thf(fact_575_square__diff__square__factored,axiom,
    ! [X: complex,Y5: complex] :
      ( ( minus_minus_complex @ ( times_times_complex @ X @ X ) @ ( times_times_complex @ Y5 @ Y5 ) )
      = ( times_times_complex @ ( plus_plus_complex @ X @ Y5 ) @ ( minus_minus_complex @ X @ Y5 ) ) ) ).

% square_diff_square_factored
thf(fact_576_eq__add__iff2,axiom,
    ! [A6: complex,E: complex,C3: complex,B6: complex,D3: complex] :
      ( ( ( plus_plus_complex @ ( times_times_complex @ A6 @ E ) @ C3 )
        = ( plus_plus_complex @ ( times_times_complex @ B6 @ E ) @ D3 ) )
      = ( C3
        = ( plus_plus_complex @ ( times_times_complex @ ( minus_minus_complex @ B6 @ A6 ) @ E ) @ D3 ) ) ) ).

% eq_add_iff2
thf(fact_577_right__minus__zero__mat,axiom,
    ! [A: mat_complex] :
      ( ( minus_2412168080157227406omplex @ A @ ( zero_mat_complex @ ( dim_row_complex @ A ) @ ( dim_col_complex @ A ) ) )
      = A ) ).

% right_minus_zero_mat
thf(fact_578_mult__diff__mult,axiom,
    ! [X: complex,Y5: complex,A6: complex,B6: complex] :
      ( ( minus_minus_complex @ ( times_times_complex @ X @ Y5 ) @ ( times_times_complex @ A6 @ B6 ) )
      = ( plus_plus_complex @ ( times_times_complex @ X @ ( minus_minus_complex @ Y5 @ B6 ) ) @ ( times_times_complex @ ( minus_minus_complex @ X @ A6 ) @ B6 ) ) ) ).

% mult_diff_mult
thf(fact_579_left__add__mult__distrib,axiom,
    ! [I4: nat,U2: nat,J4: nat,K: nat] :
      ( ( plus_plus_nat @ ( times_times_nat @ I4 @ U2 ) @ ( plus_plus_nat @ ( times_times_nat @ J4 @ U2 ) @ K ) )
      = ( plus_plus_nat @ ( times_times_nat @ ( plus_plus_nat @ I4 @ J4 ) @ U2 ) @ K ) ) ).

% left_add_mult_distrib
thf(fact_580_inf__period_I1_J,axiom,
    ! [P: complex > $o,D2: complex,Q: complex > $o] :
      ( ! [X2: complex,K3: complex] :
          ( ( P @ X2 )
          = ( P @ ( minus_minus_complex @ X2 @ ( times_times_complex @ K3 @ D2 ) ) ) )
     => ( ! [X2: complex,K3: complex] :
            ( ( Q @ X2 )
            = ( Q @ ( minus_minus_complex @ X2 @ ( times_times_complex @ K3 @ D2 ) ) ) )
       => ! [X4: complex,K4: complex] :
            ( ( ( P @ X4 )
              & ( Q @ X4 ) )
            = ( ( P @ ( minus_minus_complex @ X4 @ ( times_times_complex @ K4 @ D2 ) ) )
              & ( Q @ ( minus_minus_complex @ X4 @ ( times_times_complex @ K4 @ D2 ) ) ) ) ) ) ) ).

% inf_period(1)
thf(fact_581_vector__space__over__itself_Oscale__left__commute,axiom,
    ! [A6: complex,B6: complex,X: complex] :
      ( ( times_times_complex @ A6 @ ( times_times_complex @ B6 @ X ) )
      = ( times_times_complex @ B6 @ ( times_times_complex @ A6 @ X ) ) ) ).

% vector_space_over_itself.scale_left_commute
thf(fact_582_vector__space__over__itself_Oscale__scale,axiom,
    ! [A6: complex,B6: complex,X: complex] :
      ( ( times_times_complex @ A6 @ ( times_times_complex @ B6 @ X ) )
      = ( times_times_complex @ ( times_times_complex @ A6 @ B6 ) @ X ) ) ).

% vector_space_over_itself.scale_scale
thf(fact_583_pinf_I1_J,axiom,
    ! [P: nat > $o,P4: nat > $o,Q: nat > $o,Q2: nat > $o] :
      ( ? [Z2: nat] :
        ! [X2: nat] :
          ( ( ord_less_nat @ Z2 @ X2 )
         => ( ( P @ X2 )
            = ( P4 @ X2 ) ) )
     => ( ? [Z2: nat] :
          ! [X2: nat] :
            ( ( ord_less_nat @ Z2 @ X2 )
           => ( ( Q @ X2 )
              = ( Q2 @ X2 ) ) )
       => ? [Z3: nat] :
          ! [X4: nat] :
            ( ( ord_less_nat @ Z3 @ X4 )
           => ( ( ( P @ X4 )
                & ( Q @ X4 ) )
              = ( ( P4 @ X4 )
                & ( Q2 @ X4 ) ) ) ) ) ) ).

% pinf(1)
thf(fact_584_pinf_I2_J,axiom,
    ! [P: nat > $o,P4: nat > $o,Q: nat > $o,Q2: nat > $o] :
      ( ? [Z2: nat] :
        ! [X2: nat] :
          ( ( ord_less_nat @ Z2 @ X2 )
         => ( ( P @ X2 )
            = ( P4 @ X2 ) ) )
     => ( ? [Z2: nat] :
          ! [X2: nat] :
            ( ( ord_less_nat @ Z2 @ X2 )
           => ( ( Q @ X2 )
              = ( Q2 @ X2 ) ) )
       => ? [Z3: nat] :
          ! [X4: nat] :
            ( ( ord_less_nat @ Z3 @ X4 )
           => ( ( ( P @ X4 )
                | ( Q @ X4 ) )
              = ( ( P4 @ X4 )
                | ( Q2 @ X4 ) ) ) ) ) ) ).

% pinf(2)
thf(fact_585_pinf_I3_J,axiom,
    ! [T: nat] :
    ? [Z3: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ Z3 @ X4 )
     => ( X4 != T ) ) ).

% pinf(3)
thf(fact_586_pinf_I4_J,axiom,
    ! [T: nat] :
    ? [Z3: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ Z3 @ X4 )
     => ( X4 != T ) ) ).

% pinf(4)
thf(fact_587_pinf_I5_J,axiom,
    ! [T: nat] :
    ? [Z3: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ Z3 @ X4 )
     => ~ ( ord_less_nat @ X4 @ T ) ) ).

% pinf(5)
thf(fact_588_pinf_I7_J,axiom,
    ! [T: nat] :
    ? [Z3: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ Z3 @ X4 )
     => ( ord_less_nat @ T @ X4 ) ) ).

% pinf(7)
thf(fact_589_minf_I1_J,axiom,
    ! [P: nat > $o,P4: nat > $o,Q: nat > $o,Q2: nat > $o] :
      ( ? [Z2: nat] :
        ! [X2: nat] :
          ( ( ord_less_nat @ X2 @ Z2 )
         => ( ( P @ X2 )
            = ( P4 @ X2 ) ) )
     => ( ? [Z2: nat] :
          ! [X2: nat] :
            ( ( ord_less_nat @ X2 @ Z2 )
           => ( ( Q @ X2 )
              = ( Q2 @ X2 ) ) )
       => ? [Z3: nat] :
          ! [X4: nat] :
            ( ( ord_less_nat @ X4 @ Z3 )
           => ( ( ( P @ X4 )
                & ( Q @ X4 ) )
              = ( ( P4 @ X4 )
                & ( Q2 @ X4 ) ) ) ) ) ) ).

% minf(1)
thf(fact_590_minf_I2_J,axiom,
    ! [P: nat > $o,P4: nat > $o,Q: nat > $o,Q2: nat > $o] :
      ( ? [Z2: nat] :
        ! [X2: nat] :
          ( ( ord_less_nat @ X2 @ Z2 )
         => ( ( P @ X2 )
            = ( P4 @ X2 ) ) )
     => ( ? [Z2: nat] :
          ! [X2: nat] :
            ( ( ord_less_nat @ X2 @ Z2 )
           => ( ( Q @ X2 )
              = ( Q2 @ X2 ) ) )
       => ? [Z3: nat] :
          ! [X4: nat] :
            ( ( ord_less_nat @ X4 @ Z3 )
           => ( ( ( P @ X4 )
                | ( Q @ X4 ) )
              = ( ( P4 @ X4 )
                | ( Q2 @ X4 ) ) ) ) ) ) ).

% minf(2)
thf(fact_591_minf_I3_J,axiom,
    ! [T: nat] :
    ? [Z3: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ X4 @ Z3 )
     => ( X4 != T ) ) ).

% minf(3)
thf(fact_592_minf_I4_J,axiom,
    ! [T: nat] :
    ? [Z3: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ X4 @ Z3 )
     => ( X4 != T ) ) ).

% minf(4)
thf(fact_593_minf_I5_J,axiom,
    ! [T: nat] :
    ? [Z3: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ X4 @ Z3 )
     => ( ord_less_nat @ X4 @ T ) ) ).

% minf(5)
thf(fact_594_minf_I7_J,axiom,
    ! [T: nat] :
    ? [Z3: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ X4 @ Z3 )
     => ~ ( ord_less_nat @ T @ X4 ) ) ).

% minf(7)
thf(fact_595_inf__period_I2_J,axiom,
    ! [P: complex > $o,D2: complex,Q: complex > $o] :
      ( ! [X2: complex,K3: complex] :
          ( ( P @ X2 )
          = ( P @ ( minus_minus_complex @ X2 @ ( times_times_complex @ K3 @ D2 ) ) ) )
     => ( ! [X2: complex,K3: complex] :
            ( ( Q @ X2 )
            = ( Q @ ( minus_minus_complex @ X2 @ ( times_times_complex @ K3 @ D2 ) ) ) )
       => ! [X4: complex,K4: complex] :
            ( ( ( P @ X4 )
              | ( Q @ X4 ) )
            = ( ( P @ ( minus_minus_complex @ X4 @ ( times_times_complex @ K4 @ D2 ) ) )
              | ( Q @ ( minus_minus_complex @ X4 @ ( times_times_complex @ K4 @ D2 ) ) ) ) ) ) ) ).

% inf_period(2)
thf(fact_596_diagonal__mat__mult__index_H,axiom,
    ! [A: mat_complex,N: nat,B: mat_complex,J4: nat,I4: nat] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ N @ N ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ N @ N ) )
       => ( ( diagonal_mat_complex @ B )
         => ( ( ord_less_nat @ J4 @ N )
           => ( ( ord_less_nat @ I4 @ N )
             => ( ( index_mat_complex @ ( times_8009071140041733218omplex @ A @ B ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                = ( times_times_complex @ ( index_mat_complex @ B @ ( product_Pair_nat_nat @ J4 @ J4 ) ) @ ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ) ) ) ).

% diagonal_mat_mult_index'
thf(fact_597_diagonal__mat__mult__index,axiom,
    ! [A: mat_complex,N: nat,B: mat_complex,I4: nat,J4: nat] :
      ( ( diagonal_mat_complex @ A )
     => ( ( member_mat_complex @ A @ ( carrier_mat_complex @ N @ N ) )
       => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ N @ N ) )
         => ( ( ord_less_nat @ I4 @ N )
           => ( ( ord_less_nat @ J4 @ N )
             => ( ( index_mat_complex @ ( times_8009071140041733218omplex @ A @ B ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                = ( times_times_complex @ ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ I4 ) ) @ ( index_mat_complex @ B @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ) ) ) ).

% diagonal_mat_mult_index
thf(fact_598_diagonal__mat__sq__index_H,axiom,
    ! [B: mat_complex,N: nat,I4: nat,J4: nat] :
      ( ( diagonal_mat_complex @ B )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ N @ N ) )
       => ( ( ord_less_nat @ I4 @ N )
         => ( ( ord_less_nat @ J4 @ N )
           => ( ( index_mat_complex @ ( times_8009071140041733218omplex @ B @ B ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = ( times_times_complex @ ( index_mat_complex @ B @ ( product_Pair_nat_nat @ I4 @ J4 ) ) @ ( index_mat_complex @ B @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ) ) ).

% diagonal_mat_sq_index'
thf(fact_599_diagonal__mat__sq__index,axiom,
    ! [B: mat_complex,N: nat,I4: nat,J4: nat] :
      ( ( diagonal_mat_complex @ B )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ N @ N ) )
       => ( ( ord_less_nat @ I4 @ N )
         => ( ( ord_less_nat @ J4 @ N )
           => ( ( index_mat_complex @ ( times_8009071140041733218omplex @ B @ B ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = ( times_times_complex @ ( index_mat_complex @ B @ ( product_Pair_nat_nat @ I4 @ I4 ) ) @ ( index_mat_complex @ B @ ( product_Pair_nat_nat @ J4 @ I4 ) ) ) ) ) ) ) ) ).

% diagonal_mat_sq_index
thf(fact_600_crossproduct__noteq,axiom,
    ! [A6: nat,B6: nat,C3: nat,D3: nat] :
      ( ( ( A6 != B6 )
        & ( C3 != D3 ) )
      = ( ( plus_plus_nat @ ( times_times_nat @ A6 @ C3 ) @ ( times_times_nat @ B6 @ D3 ) )
       != ( plus_plus_nat @ ( times_times_nat @ A6 @ D3 ) @ ( times_times_nat @ B6 @ C3 ) ) ) ) ).

% crossproduct_noteq
thf(fact_601_crossproduct__noteq,axiom,
    ! [A6: complex,B6: complex,C3: complex,D3: complex] :
      ( ( ( A6 != B6 )
        & ( C3 != D3 ) )
      = ( ( plus_plus_complex @ ( times_times_complex @ A6 @ C3 ) @ ( times_times_complex @ B6 @ D3 ) )
       != ( plus_plus_complex @ ( times_times_complex @ A6 @ D3 ) @ ( times_times_complex @ B6 @ C3 ) ) ) ) ).

% crossproduct_noteq
thf(fact_602_crossproduct__eq,axiom,
    ! [W: nat,Y5: nat,X: nat,Z4: nat] :
      ( ( ( plus_plus_nat @ ( times_times_nat @ W @ Y5 ) @ ( times_times_nat @ X @ Z4 ) )
        = ( plus_plus_nat @ ( times_times_nat @ W @ Z4 ) @ ( times_times_nat @ X @ Y5 ) ) )
      = ( ( W = X )
        | ( Y5 = Z4 ) ) ) ).

% crossproduct_eq
thf(fact_603_crossproduct__eq,axiom,
    ! [W: complex,Y5: complex,X: complex,Z4: complex] :
      ( ( ( plus_plus_complex @ ( times_times_complex @ W @ Y5 ) @ ( times_times_complex @ X @ Z4 ) )
        = ( plus_plus_complex @ ( times_times_complex @ W @ Z4 ) @ ( times_times_complex @ X @ Y5 ) ) )
      = ( ( W = X )
        | ( Y5 = Z4 ) ) ) ).

% crossproduct_eq
thf(fact_604_diagonal__mat__smult,axiom,
    ! [A: mat_complex,X: complex] :
      ( ( diagonal_mat_complex @ A )
     => ( diagonal_mat_complex @ ( smult_mat_complex @ X @ A ) ) ) ).

% diagonal_mat_smult
thf(fact_605_diagonal__mat__times__diag,axiom,
    ! [A: mat_complex,N: nat,B: mat_complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ N @ N ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ N @ N ) )
       => ( ( diagonal_mat_complex @ A )
         => ( ( diagonal_mat_complex @ B )
           => ( diagonal_mat_complex @ ( times_8009071140041733218omplex @ A @ B ) ) ) ) ) ) ).

% diagonal_mat_times_diag
thf(fact_606_diagonal__mat__sq__diag,axiom,
    ! [B: mat_complex,N: nat] :
      ( ( diagonal_mat_complex @ B )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ N @ N ) )
       => ( diagonal_mat_complex @ ( times_8009071140041733218omplex @ B @ B ) ) ) ) ).

% diagonal_mat_sq_diag
thf(fact_607_diagonal__mat__commute,axiom,
    ! [A: mat_complex,N: nat,B: mat_complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ N @ N ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ N @ N ) )
       => ( ( diagonal_mat_complex @ A )
         => ( ( diagonal_mat_complex @ B )
           => ( ( times_8009071140041733218omplex @ A @ B )
              = ( times_8009071140041733218omplex @ B @ A ) ) ) ) ) ) ).

% diagonal_mat_commute
thf(fact_608_diagonal__mat__def,axiom,
    ( diagonal_mat_complex
    = ( ^ [A8: mat_complex] :
        ! [I: nat] :
          ( ( ord_less_nat @ I @ ( dim_row_complex @ A8 ) )
         => ! [J: nat] :
              ( ( ord_less_nat @ J @ ( dim_col_complex @ A8 ) )
             => ( ( I != J )
               => ( ( index_mat_complex @ A8 @ ( product_Pair_nat_nat @ I @ J ) )
                  = zero_zero_complex ) ) ) ) ) ) ).

% diagonal_mat_def
thf(fact_609_diagonal__mat__def,axiom,
    ( diagonal_mat_a
    = ( ^ [A8: mat_a] :
        ! [I: nat] :
          ( ( ord_less_nat @ I @ ( dim_row_a @ A8 ) )
         => ! [J: nat] :
              ( ( ord_less_nat @ J @ ( dim_col_a @ A8 ) )
             => ( ( I != J )
               => ( ( index_mat_a @ A8 @ ( product_Pair_nat_nat @ I @ J ) )
                  = zero_zero_a ) ) ) ) ) ) ).

% diagonal_mat_def
thf(fact_610_diagonal__mat__def,axiom,
    ( diagonal_mat_nat
    = ( ^ [A8: mat_nat] :
        ! [I: nat] :
          ( ( ord_less_nat @ I @ ( dim_row_nat @ A8 ) )
         => ! [J: nat] :
              ( ( ord_less_nat @ J @ ( dim_col_nat @ A8 ) )
             => ( ( I != J )
               => ( ( index_mat_nat @ A8 @ ( product_Pair_nat_nat @ I @ J ) )
                  = zero_zero_nat ) ) ) ) ) ) ).

% diagonal_mat_def
thf(fact_611_commute__diag__mat__zero__comp,axiom,
    ! [D2: mat_complex,N: nat,B: mat_complex,I4: nat,J4: nat] :
      ( ( diagonal_mat_complex @ D2 )
     => ( ( member_mat_complex @ D2 @ ( carrier_mat_complex @ N @ N ) )
       => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ N @ N ) )
         => ( ( ( times_8009071140041733218omplex @ B @ D2 )
              = ( times_8009071140041733218omplex @ D2 @ B ) )
           => ( ( ord_less_nat @ I4 @ N )
             => ( ( ord_less_nat @ J4 @ N )
               => ( ( ( index_mat_complex @ D2 @ ( product_Pair_nat_nat @ I4 @ I4 ) )
                   != ( index_mat_complex @ D2 @ ( product_Pair_nat_nat @ J4 @ J4 ) ) )
                 => ( ( index_mat_complex @ B @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                    = zero_zero_complex ) ) ) ) ) ) ) ) ).

% commute_diag_mat_zero_comp
thf(fact_612_mult__hom_Ohom__add,axiom,
    ! [C3: nat,X: nat,Y5: nat] :
      ( ( times_times_nat @ C3 @ ( plus_plus_nat @ X @ Y5 ) )
      = ( plus_plus_nat @ ( times_times_nat @ C3 @ X ) @ ( times_times_nat @ C3 @ Y5 ) ) ) ).

% mult_hom.hom_add
thf(fact_613_mult__hom_Ohom__add,axiom,
    ! [C3: complex,X: complex,Y5: complex] :
      ( ( times_times_complex @ C3 @ ( plus_plus_complex @ X @ Y5 ) )
      = ( plus_plus_complex @ ( times_times_complex @ C3 @ X ) @ ( times_times_complex @ C3 @ Y5 ) ) ) ).

% mult_hom.hom_add
thf(fact_614_swapcols__mat,axiom,
    ! [A: mat_complex,Nr: nat,N: nat,K: nat,L: nat] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ N ) )
     => ( ( ord_less_nat @ K @ N )
       => ( ( ord_less_nat @ L @ N )
         => ( ( column4357519492343924999omplex @ K @ L @ A )
            = ( times_8009071140041733218omplex @ A @ ( gauss_8970452565587180529omplex @ N @ K @ L ) ) ) ) ) ) ).

% swapcols_mat
thf(fact_615_add__col__sub__row__def,axiom,
    ( column6029646570091773654omplex
    = ( ^ [A9: complex,K2: nat,L2: nat,A8: mat_complex] : ( gauss_5252963565656066424omplex @ plus_plus_complex @ times_times_complex @ ( uminus1482373934393186551omplex @ A9 ) @ K2 @ L2 @ ( column896436094548437152omplex @ A9 @ L2 @ K2 @ A8 ) ) ) ) ).

% add_col_sub_row_def
thf(fact_616_diff__0,axiom,
    ! [A6: complex] :
      ( ( minus_minus_complex @ zero_zero_complex @ A6 )
      = ( uminus1482373934393186551omplex @ A6 ) ) ).

% diff_0
thf(fact_617_mult__hom_Ohom__zero,axiom,
    ! [C3: nat] :
      ( ( times_times_nat @ C3 @ zero_zero_nat )
      = zero_zero_nat ) ).

% mult_hom.hom_zero
thf(fact_618_mult__hom_Ohom__zero,axiom,
    ! [C3: complex] :
      ( ( times_times_complex @ C3 @ zero_zero_complex )
      = zero_zero_complex ) ).

% mult_hom.hom_zero
thf(fact_619_ab__left__minus,axiom,
    ! [A6: complex] :
      ( ( plus_plus_complex @ ( uminus1482373934393186551omplex @ A6 ) @ A6 )
      = zero_zero_complex ) ).

% ab_left_minus
thf(fact_620_neg__eq__iff__add__eq__0,axiom,
    ! [A6: complex,B6: complex] :
      ( ( ( uminus1482373934393186551omplex @ A6 )
        = B6 )
      = ( ( plus_plus_complex @ A6 @ B6 )
        = zero_zero_complex ) ) ).

% neg_eq_iff_add_eq_0
thf(fact_621_eq__neg__iff__add__eq__0,axiom,
    ! [A6: complex,B6: complex] :
      ( ( A6
        = ( uminus1482373934393186551omplex @ B6 ) )
      = ( ( plus_plus_complex @ A6 @ B6 )
        = zero_zero_complex ) ) ).

% eq_neg_iff_add_eq_0
thf(fact_622_add_Oinverse__unique,axiom,
    ! [A6: complex,B6: complex] :
      ( ( ( plus_plus_complex @ A6 @ B6 )
        = zero_zero_complex )
     => ( ( uminus1482373934393186551omplex @ A6 )
        = B6 ) ) ).

% add.inverse_unique
thf(fact_623_add_Oright__inverse,axiom,
    ! [A6: complex] :
      ( ( plus_plus_complex @ A6 @ ( uminus1482373934393186551omplex @ A6 ) )
      = zero_zero_complex ) ).

% add.right_inverse
thf(fact_624_ab__group__add__class_Oab__left__minus,axiom,
    ! [A6: complex] :
      ( ( plus_plus_complex @ ( uminus1482373934393186551omplex @ A6 ) @ A6 )
      = zero_zero_complex ) ).

% ab_group_add_class.ab_left_minus
thf(fact_625_add__eq__0__iff,axiom,
    ! [A6: complex,B6: complex] :
      ( ( ( plus_plus_complex @ A6 @ B6 )
        = zero_zero_complex )
      = ( B6
        = ( uminus1482373934393186551omplex @ A6 ) ) ) ).

% add_eq_0_iff
thf(fact_626_uminus__Pair,axiom,
    ! [A6: mat_complex,B6: mat_complex] :
      ( ( uminus1549559210541551070omplex @ ( produc3658446505030690647omplex @ A6 @ B6 ) )
      = ( produc3658446505030690647omplex @ ( uminus467866341702955550omplex @ A6 ) @ ( uminus467866341702955550omplex @ B6 ) ) ) ).

% uminus_Pair
thf(fact_627_uminus__Pair,axiom,
    ! [A6: mat_complex,B6: complex] :
      ( ( uminus5878616461653061197omplex @ ( produc5669106556224566526omplex @ A6 @ B6 ) )
      = ( produc5669106556224566526omplex @ ( uminus467866341702955550omplex @ A6 ) @ ( uminus1482373934393186551omplex @ B6 ) ) ) ).

% uminus_Pair
thf(fact_628_uminus__Pair,axiom,
    ! [A6: complex,B6: mat_complex] :
      ( ( uminus7576961702952235319omplex @ ( produc7591729284011983776omplex @ A6 @ B6 ) )
      = ( produc7591729284011983776omplex @ ( uminus1482373934393186551omplex @ A6 ) @ ( uminus467866341702955550omplex @ B6 ) ) ) ).

% uminus_Pair
thf(fact_629_uminus__Pair,axiom,
    ! [A6: complex,B6: complex] :
      ( ( uminus450828861088400436omplex @ ( produc101793102246108661omplex @ A6 @ B6 ) )
      = ( produc101793102246108661omplex @ ( uminus1482373934393186551omplex @ A6 ) @ ( uminus1482373934393186551omplex @ B6 ) ) ) ).

% uminus_Pair
thf(fact_630_zero__prod__def,axiom,
    ( zero_z3979849011205770936at_nat
    = ( product_Pair_nat_nat @ zero_zero_nat @ zero_zero_nat ) ) ).

% zero_prod_def
thf(fact_631_minus__zero,axiom,
    ( ( uminus1482373934393186551omplex @ zero_zero_complex )
    = zero_zero_complex ) ).

% minus_zero
thf(fact_632_minus__minus,axiom,
    ! [A6: complex] :
      ( ( uminus1482373934393186551omplex @ ( uminus1482373934393186551omplex @ A6 ) )
      = A6 ) ).

% minus_minus
thf(fact_633_equation__minus__iff,axiom,
    ! [A6: complex,B6: complex] :
      ( ( A6
        = ( uminus1482373934393186551omplex @ B6 ) )
      = ( B6
        = ( uminus1482373934393186551omplex @ A6 ) ) ) ).

% equation_minus_iff
thf(fact_634_minus__equation__iff,axiom,
    ! [A6: complex,B6: complex] :
      ( ( ( uminus1482373934393186551omplex @ A6 )
        = B6 )
      = ( ( uminus1482373934393186551omplex @ B6 )
        = A6 ) ) ).

% minus_equation_iff
thf(fact_635_neg__equal__iff__equal,axiom,
    ! [A6: complex,B6: complex] :
      ( ( ( uminus1482373934393186551omplex @ A6 )
        = ( uminus1482373934393186551omplex @ B6 ) )
      = ( A6 = B6 ) ) ).

% neg_equal_iff_equal
thf(fact_636_neg__0__equal__iff__equal,axiom,
    ! [A6: complex] :
      ( ( zero_zero_complex
        = ( uminus1482373934393186551omplex @ A6 ) )
      = ( zero_zero_complex = A6 ) ) ).

% neg_0_equal_iff_equal
thf(fact_637_neg__equal__0__iff__equal,axiom,
    ! [A6: complex] :
      ( ( ( uminus1482373934393186551omplex @ A6 )
        = zero_zero_complex )
      = ( A6 = zero_zero_complex ) ) ).

% neg_equal_0_iff_equal
thf(fact_638_zero__reorient,axiom,
    ! [X: nat] :
      ( ( zero_zero_nat = X )
      = ( X = zero_zero_nat ) ) ).

% zero_reorient
thf(fact_639_neg__less__0__iff__less,axiom,
    ! [A6: complex] :
      ( ( ord_less_complex @ ( uminus1482373934393186551omplex @ A6 ) @ zero_zero_complex )
      = ( ord_less_complex @ zero_zero_complex @ A6 ) ) ).

% neg_less_0_iff_less
thf(fact_640_neg__0__less__iff__less,axiom,
    ! [A6: complex] :
      ( ( ord_less_complex @ zero_zero_complex @ ( uminus1482373934393186551omplex @ A6 ) )
      = ( ord_less_complex @ A6 @ zero_zero_complex ) ) ).

% neg_0_less_iff_less
thf(fact_641_vector__space__over__itself_Oscale__minus__right,axiom,
    ! [A6: complex,X: complex] :
      ( ( times_times_complex @ A6 @ ( uminus1482373934393186551omplex @ X ) )
      = ( uminus1482373934393186551omplex @ ( times_times_complex @ A6 @ X ) ) ) ).

% vector_space_over_itself.scale_minus_right
thf(fact_642_vector__space__over__itself_Oscale__minus__left,axiom,
    ! [A6: complex,X: complex] :
      ( ( times_times_complex @ ( uminus1482373934393186551omplex @ A6 ) @ X )
      = ( uminus1482373934393186551omplex @ ( times_times_complex @ A6 @ X ) ) ) ).

% vector_space_over_itself.scale_minus_left
thf(fact_643_square__eq__iff,axiom,
    ! [A6: complex,B6: complex] :
      ( ( ( times_times_complex @ A6 @ A6 )
        = ( times_times_complex @ B6 @ B6 ) )
      = ( ( A6 = B6 )
        | ( A6
          = ( uminus1482373934393186551omplex @ B6 ) ) ) ) ).

% square_eq_iff
thf(fact_644_minus__mult__left,axiom,
    ! [A6: complex,B6: complex] :
      ( ( uminus1482373934393186551omplex @ ( times_times_complex @ A6 @ B6 ) )
      = ( times_times_complex @ ( uminus1482373934393186551omplex @ A6 ) @ B6 ) ) ).

% minus_mult_left
thf(fact_645_minus__mult__minus,axiom,
    ! [A6: complex,B6: complex] :
      ( ( times_times_complex @ ( uminus1482373934393186551omplex @ A6 ) @ ( uminus1482373934393186551omplex @ B6 ) )
      = ( times_times_complex @ A6 @ B6 ) ) ).

% minus_mult_minus
thf(fact_646_minus__mult__right,axiom,
    ! [A6: complex,B6: complex] :
      ( ( uminus1482373934393186551omplex @ ( times_times_complex @ A6 @ B6 ) )
      = ( times_times_complex @ A6 @ ( uminus1482373934393186551omplex @ B6 ) ) ) ).

% minus_mult_right
thf(fact_647_minus__mult__commute,axiom,
    ! [A6: complex,B6: complex] :
      ( ( times_times_complex @ ( uminus1482373934393186551omplex @ A6 ) @ B6 )
      = ( times_times_complex @ A6 @ ( uminus1482373934393186551omplex @ B6 ) ) ) ).

% minus_mult_commute
thf(fact_648_less__minus__iff,axiom,
    ! [A6: complex,B6: complex] :
      ( ( ord_less_complex @ A6 @ ( uminus1482373934393186551omplex @ B6 ) )
      = ( ord_less_complex @ B6 @ ( uminus1482373934393186551omplex @ A6 ) ) ) ).

% less_minus_iff
thf(fact_649_minus__less__iff,axiom,
    ! [A6: complex,B6: complex] :
      ( ( ord_less_complex @ ( uminus1482373934393186551omplex @ A6 ) @ B6 )
      = ( ord_less_complex @ ( uminus1482373934393186551omplex @ B6 ) @ A6 ) ) ).

% minus_less_iff
thf(fact_650_neg__less__iff__less,axiom,
    ! [B6: complex,A6: complex] :
      ( ( ord_less_complex @ ( uminus1482373934393186551omplex @ B6 ) @ ( uminus1482373934393186551omplex @ A6 ) )
      = ( ord_less_complex @ A6 @ B6 ) ) ).

% neg_less_iff_less
thf(fact_651_add_Oinverse__distrib__swap,axiom,
    ! [A6: complex,B6: complex] :
      ( ( uminus1482373934393186551omplex @ ( plus_plus_complex @ A6 @ B6 ) )
      = ( plus_plus_complex @ ( uminus1482373934393186551omplex @ B6 ) @ ( uminus1482373934393186551omplex @ A6 ) ) ) ).

% add.inverse_distrib_swap
thf(fact_652_minus__add__distrib,axiom,
    ! [A6: complex,B6: complex] :
      ( ( uminus1482373934393186551omplex @ ( plus_plus_complex @ A6 @ B6 ) )
      = ( plus_plus_complex @ ( uminus1482373934393186551omplex @ A6 ) @ ( uminus1482373934393186551omplex @ B6 ) ) ) ).

% minus_add_distrib
thf(fact_653_minus__add__cancel,axiom,
    ! [A6: complex,B6: complex] :
      ( ( plus_plus_complex @ ( uminus1482373934393186551omplex @ A6 ) @ ( plus_plus_complex @ A6 @ B6 ) )
      = B6 ) ).

% minus_add_cancel
thf(fact_654_add__minus__cancel,axiom,
    ! [A6: complex,B6: complex] :
      ( ( plus_plus_complex @ A6 @ ( plus_plus_complex @ ( uminus1482373934393186551omplex @ A6 ) @ B6 ) )
      = B6 ) ).

% add_minus_cancel
thf(fact_655_group__cancel_Oneg1,axiom,
    ! [A: complex,K: complex,A6: complex] :
      ( ( A
        = ( plus_plus_complex @ K @ A6 ) )
     => ( ( uminus1482373934393186551omplex @ A )
        = ( plus_plus_complex @ ( uminus1482373934393186551omplex @ K ) @ ( uminus1482373934393186551omplex @ A6 ) ) ) ) ).

% group_cancel.neg1
thf(fact_656_minus__diff__eq,axiom,
    ! [A6: complex,B6: complex] :
      ( ( uminus1482373934393186551omplex @ ( minus_minus_complex @ A6 @ B6 ) )
      = ( minus_minus_complex @ B6 @ A6 ) ) ).

% minus_diff_eq
thf(fact_657_minus__diff__commute,axiom,
    ! [B6: complex,A6: complex] :
      ( ( minus_minus_complex @ ( uminus1482373934393186551omplex @ B6 ) @ A6 )
      = ( minus_minus_complex @ ( uminus1482373934393186551omplex @ A6 ) @ B6 ) ) ).

% minus_diff_commute
thf(fact_658_uminus__carrier__mat,axiom,
    ! [A: mat_complex,Nr: nat,Nc: nat] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ Nc ) )
     => ( member_mat_complex @ ( uminus467866341702955550omplex @ A ) @ ( carrier_mat_complex @ Nr @ Nc ) ) ) ).

% uminus_carrier_mat
thf(fact_659_uminus__carrier__iff__mat,axiom,
    ! [A: mat_complex,Nr: nat,Nc: nat] :
      ( ( member_mat_complex @ ( uminus467866341702955550omplex @ A ) @ ( carrier_mat_complex @ Nr @ Nc ) )
      = ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ Nc ) ) ) ).

% uminus_carrier_iff_mat
thf(fact_660_index__uminus__mat_I2_J,axiom,
    ! [A: mat_complex] :
      ( ( dim_row_complex @ ( uminus467866341702955550omplex @ A ) )
      = ( dim_row_complex @ A ) ) ).

% index_uminus_mat(2)
thf(fact_661_index__uminus__mat_I3_J,axiom,
    ! [A: mat_complex] :
      ( ( dim_col_complex @ ( uminus467866341702955550omplex @ A ) )
      = ( dim_col_complex @ A ) ) ).

% index_uminus_mat(3)
thf(fact_662_vector__space__over__itself_Oscale__right__imp__eq,axiom,
    ! [X: complex,A6: complex,B6: complex] :
      ( ( X != zero_zero_complex )
     => ( ( ( times_times_complex @ A6 @ X )
          = ( times_times_complex @ B6 @ X ) )
       => ( A6 = B6 ) ) ) ).

% vector_space_over_itself.scale_right_imp_eq
thf(fact_663_vector__space__over__itself_Oscale__cancel__right,axiom,
    ! [A6: complex,X: complex,B6: complex] :
      ( ( ( times_times_complex @ A6 @ X )
        = ( times_times_complex @ B6 @ X ) )
      = ( ( A6 = B6 )
        | ( X = zero_zero_complex ) ) ) ).

% vector_space_over_itself.scale_cancel_right
thf(fact_664_vector__space__over__itself_Oscale__left__imp__eq,axiom,
    ! [A6: complex,X: complex,Y5: complex] :
      ( ( A6 != zero_zero_complex )
     => ( ( ( times_times_complex @ A6 @ X )
          = ( times_times_complex @ A6 @ Y5 ) )
       => ( X = Y5 ) ) ) ).

% vector_space_over_itself.scale_left_imp_eq
thf(fact_665_vector__space__over__itself_Oscale__cancel__left,axiom,
    ! [A6: complex,X: complex,Y5: complex] :
      ( ( ( times_times_complex @ A6 @ X )
        = ( times_times_complex @ A6 @ Y5 ) )
      = ( ( X = Y5 )
        | ( A6 = zero_zero_complex ) ) ) ).

% vector_space_over_itself.scale_cancel_left
thf(fact_666_vector__space__over__itself_Oscale__zero__right,axiom,
    ! [A6: complex] :
      ( ( times_times_complex @ A6 @ zero_zero_complex )
      = zero_zero_complex ) ).

% vector_space_over_itself.scale_zero_right
thf(fact_667_vector__space__over__itself_Oscale__zero__left,axiom,
    ! [X: complex] :
      ( ( times_times_complex @ zero_zero_complex @ X )
      = zero_zero_complex ) ).

% vector_space_over_itself.scale_zero_left
thf(fact_668_vector__space__over__itself_Oscale__eq__0__iff,axiom,
    ! [A6: complex,X: complex] :
      ( ( ( times_times_complex @ A6 @ X )
        = zero_zero_complex )
      = ( ( A6 = zero_zero_complex )
        | ( X = zero_zero_complex ) ) ) ).

% vector_space_over_itself.scale_eq_0_iff
thf(fact_669_semiring__norm_I63_J,axiom,
    ! [A6: nat] :
      ( ( times_times_nat @ zero_zero_nat @ A6 )
      = zero_zero_nat ) ).

% semiring_norm(63)
thf(fact_670_semiring__norm_I63_J,axiom,
    ! [A6: complex] :
      ( ( times_times_complex @ zero_zero_complex @ A6 )
      = zero_zero_complex ) ).

% semiring_norm(63)
thf(fact_671_semiring__norm_I64_J,axiom,
    ! [A6: nat] :
      ( ( times_times_nat @ A6 @ zero_zero_nat )
      = zero_zero_nat ) ).

% semiring_norm(64)
thf(fact_672_semiring__norm_I64_J,axiom,
    ! [A6: complex] :
      ( ( times_times_complex @ A6 @ zero_zero_complex )
      = zero_zero_complex ) ).

% semiring_norm(64)
thf(fact_673_mult__not__zero,axiom,
    ! [A6: nat,B6: nat] :
      ( ( ( times_times_nat @ A6 @ B6 )
       != zero_zero_nat )
     => ( ( A6 != zero_zero_nat )
        & ( B6 != zero_zero_nat ) ) ) ).

% mult_not_zero
thf(fact_674_mult__not__zero,axiom,
    ! [A6: complex,B6: complex] :
      ( ( ( times_times_complex @ A6 @ B6 )
       != zero_zero_complex )
     => ( ( A6 != zero_zero_complex )
        & ( B6 != zero_zero_complex ) ) ) ).

% mult_not_zero
thf(fact_675_divisors__zero,axiom,
    ! [A6: nat,B6: nat] :
      ( ( ( times_times_nat @ A6 @ B6 )
        = zero_zero_nat )
     => ( ( A6 = zero_zero_nat )
        | ( B6 = zero_zero_nat ) ) ) ).

% divisors_zero
thf(fact_676_divisors__zero,axiom,
    ! [A6: complex,B6: complex] :
      ( ( ( times_times_complex @ A6 @ B6 )
        = zero_zero_complex )
     => ( ( A6 = zero_zero_complex )
        | ( B6 = zero_zero_complex ) ) ) ).

% divisors_zero
thf(fact_677_mult__eq__0__iff,axiom,
    ! [A6: nat,B6: nat] :
      ( ( ( times_times_nat @ A6 @ B6 )
        = zero_zero_nat )
      = ( ( A6 = zero_zero_nat )
        | ( B6 = zero_zero_nat ) ) ) ).

% mult_eq_0_iff
thf(fact_678_mult__eq__0__iff,axiom,
    ! [A6: complex,B6: complex] :
      ( ( ( times_times_complex @ A6 @ B6 )
        = zero_zero_complex )
      = ( ( A6 = zero_zero_complex )
        | ( B6 = zero_zero_complex ) ) ) ).

% mult_eq_0_iff
thf(fact_679_no__zero__divisors,axiom,
    ! [A6: nat,B6: nat] :
      ( ( A6 != zero_zero_nat )
     => ( ( B6 != zero_zero_nat )
       => ( ( times_times_nat @ A6 @ B6 )
         != zero_zero_nat ) ) ) ).

% no_zero_divisors
thf(fact_680_no__zero__divisors,axiom,
    ! [A6: complex,B6: complex] :
      ( ( A6 != zero_zero_complex )
     => ( ( B6 != zero_zero_complex )
       => ( ( times_times_complex @ A6 @ B6 )
         != zero_zero_complex ) ) ) ).

% no_zero_divisors
thf(fact_681_mult__cancel__left,axiom,
    ! [C3: nat,A6: nat,B6: nat] :
      ( ( ( times_times_nat @ C3 @ A6 )
        = ( times_times_nat @ C3 @ B6 ) )
      = ( ( C3 = zero_zero_nat )
        | ( A6 = B6 ) ) ) ).

% mult_cancel_left
thf(fact_682_mult__cancel__left,axiom,
    ! [C3: complex,A6: complex,B6: complex] :
      ( ( ( times_times_complex @ C3 @ A6 )
        = ( times_times_complex @ C3 @ B6 ) )
      = ( ( C3 = zero_zero_complex )
        | ( A6 = B6 ) ) ) ).

% mult_cancel_left
thf(fact_683_mult__left__cancel,axiom,
    ! [C3: nat,A6: nat,B6: nat] :
      ( ( C3 != zero_zero_nat )
     => ( ( ( times_times_nat @ C3 @ A6 )
          = ( times_times_nat @ C3 @ B6 ) )
        = ( A6 = B6 ) ) ) ).

% mult_left_cancel
thf(fact_684_mult__left__cancel,axiom,
    ! [C3: complex,A6: complex,B6: complex] :
      ( ( C3 != zero_zero_complex )
     => ( ( ( times_times_complex @ C3 @ A6 )
          = ( times_times_complex @ C3 @ B6 ) )
        = ( A6 = B6 ) ) ) ).

% mult_left_cancel
thf(fact_685_mult__cancel__right,axiom,
    ! [A6: nat,C3: nat,B6: nat] :
      ( ( ( times_times_nat @ A6 @ C3 )
        = ( times_times_nat @ B6 @ C3 ) )
      = ( ( C3 = zero_zero_nat )
        | ( A6 = B6 ) ) ) ).

% mult_cancel_right
thf(fact_686_mult__cancel__right,axiom,
    ! [A6: complex,C3: complex,B6: complex] :
      ( ( ( times_times_complex @ A6 @ C3 )
        = ( times_times_complex @ B6 @ C3 ) )
      = ( ( C3 = zero_zero_complex )
        | ( A6 = B6 ) ) ) ).

% mult_cancel_right
thf(fact_687_mult__right__cancel,axiom,
    ! [C3: nat,A6: nat,B6: nat] :
      ( ( C3 != zero_zero_nat )
     => ( ( ( times_times_nat @ A6 @ C3 )
          = ( times_times_nat @ B6 @ C3 ) )
        = ( A6 = B6 ) ) ) ).

% mult_right_cancel
thf(fact_688_mult__right__cancel,axiom,
    ! [C3: complex,A6: complex,B6: complex] :
      ( ( C3 != zero_zero_complex )
     => ( ( ( times_times_complex @ A6 @ C3 )
          = ( times_times_complex @ B6 @ C3 ) )
        = ( A6 = B6 ) ) ) ).

% mult_right_cancel
thf(fact_689_semiring__norm_I137_J,axiom,
    ~ ( ord_less_nat @ zero_zero_nat @ zero_zero_nat ) ).

% semiring_norm(137)
thf(fact_690_zero__less__iff__neq__zero,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
      = ( N != zero_zero_nat ) ) ).

% zero_less_iff_neq_zero
thf(fact_691_gr__implies__not__zero,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ M2 @ N )
     => ( N != zero_zero_nat ) ) ).

% gr_implies_not_zero
thf(fact_692_not__less__zero,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ zero_zero_nat ) ).

% not_less_zero
thf(fact_693_not__gr__zero,axiom,
    ! [N: nat] :
      ( ( ~ ( ord_less_nat @ zero_zero_nat @ N ) )
      = ( N = zero_zero_nat ) ) ).

% not_gr_zero
thf(fact_694_gr__zeroI,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
     => ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% gr_zeroI
thf(fact_695_semiring__norm_I51_J,axiom,
    ! [A6: nat] :
      ( ( plus_plus_nat @ A6 @ zero_zero_nat )
      = A6 ) ).

% semiring_norm(51)
thf(fact_696_semiring__norm_I50_J,axiom,
    ! [A6: nat] :
      ( ( plus_plus_nat @ zero_zero_nat @ A6 )
      = A6 ) ).

% semiring_norm(50)
thf(fact_697_nat__arith_Orule0,axiom,
    ! [A6: nat] :
      ( A6
      = ( plus_plus_nat @ A6 @ zero_zero_nat ) ) ).

% nat_arith.rule0
thf(fact_698_zero__eq__add__iff__both__eq__0,axiom,
    ! [X: nat,Y5: nat] :
      ( ( zero_zero_nat
        = ( plus_plus_nat @ X @ Y5 ) )
      = ( ( X = zero_zero_nat )
        & ( Y5 = zero_zero_nat ) ) ) ).

% zero_eq_add_iff_both_eq_0
thf(fact_699_add__eq__0__iff__both__eq__0,axiom,
    ! [X: nat,Y5: nat] :
      ( ( ( plus_plus_nat @ X @ Y5 )
        = zero_zero_nat )
      = ( ( X = zero_zero_nat )
        & ( Y5 = zero_zero_nat ) ) ) ).

% add_eq_0_iff_both_eq_0
thf(fact_700_add__cancel__right__right,axiom,
    ! [A6: nat,B6: nat] :
      ( ( A6
        = ( plus_plus_nat @ A6 @ B6 ) )
      = ( B6 = zero_zero_nat ) ) ).

% add_cancel_right_right
thf(fact_701_add__cancel__right__left,axiom,
    ! [A6: nat,B6: nat] :
      ( ( A6
        = ( plus_plus_nat @ B6 @ A6 ) )
      = ( B6 = zero_zero_nat ) ) ).

% add_cancel_right_left
thf(fact_702_add__cancel__left__right,axiom,
    ! [A6: nat,B6: nat] :
      ( ( ( plus_plus_nat @ A6 @ B6 )
        = A6 )
      = ( B6 = zero_zero_nat ) ) ).

% add_cancel_left_right
thf(fact_703_add__cancel__left__left,axiom,
    ! [B6: nat,A6: nat] :
      ( ( ( plus_plus_nat @ B6 @ A6 )
        = A6 )
      = ( B6 = zero_zero_nat ) ) ).

% add_cancel_left_left
thf(fact_704_comm__monoid__add__class_Oadd__0,axiom,
    ! [A6: nat] :
      ( ( plus_plus_nat @ zero_zero_nat @ A6 )
      = A6 ) ).

% comm_monoid_add_class.add_0
thf(fact_705_add__0__iff,axiom,
    ! [B6: nat,A6: nat] :
      ( ( B6
        = ( plus_plus_nat @ B6 @ A6 ) )
      = ( A6 = zero_zero_nat ) ) ).

% add_0_iff
thf(fact_706_zero__diff,axiom,
    ! [A6: nat] :
      ( ( minus_minus_nat @ zero_zero_nat @ A6 )
      = zero_zero_nat ) ).

% zero_diff
thf(fact_707_diff__zero,axiom,
    ! [A6: nat] :
      ( ( minus_minus_nat @ A6 @ zero_zero_nat )
      = A6 ) ).

% diff_zero
thf(fact_708_cancel__comm__monoid__add__class_Odiff__cancel,axiom,
    ! [A6: nat] :
      ( ( minus_minus_nat @ A6 @ A6 )
      = zero_zero_nat ) ).

% cancel_comm_monoid_add_class.diff_cancel
thf(fact_709_bot__nat__0_Oextremum__strict,axiom,
    ! [A6: nat] :
      ~ ( ord_less_nat @ A6 @ zero_zero_nat ) ).

% bot_nat_0.extremum_strict
thf(fact_710_bot__nat__0_Onot__eq__extremum,axiom,
    ! [A6: nat] :
      ( ( A6 != zero_zero_nat )
      = ( ord_less_nat @ zero_zero_nat @ A6 ) ) ).

% bot_nat_0.not_eq_extremum
thf(fact_711_gr0I,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
     => ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% gr0I
thf(fact_712_not__gr0,axiom,
    ! [N: nat] :
      ( ( ~ ( ord_less_nat @ zero_zero_nat @ N ) )
      = ( N = zero_zero_nat ) ) ).

% not_gr0
thf(fact_713_neq0__conv,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
      = ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% neq0_conv
thf(fact_714_not__less0,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ zero_zero_nat ) ).

% not_less0
thf(fact_715_less__zeroE,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ zero_zero_nat ) ).

% less_zeroE
thf(fact_716_gr__implies__not0,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ M2 @ N )
     => ( N != zero_zero_nat ) ) ).

% gr_implies_not0
thf(fact_717_infinite__descent0,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ zero_zero_nat )
     => ( ! [N3: nat] :
            ( ( ord_less_nat @ zero_zero_nat @ N3 )
           => ( ~ ( P @ N3 )
             => ? [M3: nat] :
                  ( ( ord_less_nat @ M3 @ N3 )
                  & ~ ( P @ M3 ) ) ) )
       => ( P @ N ) ) ) ).

% infinite_descent0
thf(fact_718_less__nat__zero__code,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ zero_zero_nat ) ).

% less_nat_zero_code
thf(fact_719_add__eq__self__zero,axiom,
    ! [M2: nat,N: nat] :
      ( ( ( plus_plus_nat @ M2 @ N )
        = M2 )
     => ( N = zero_zero_nat ) ) ).

% add_eq_self_zero
thf(fact_720_Nat_Oadd__0__right,axiom,
    ! [M2: nat] :
      ( ( plus_plus_nat @ M2 @ zero_zero_nat )
      = M2 ) ).

% Nat.add_0_right
thf(fact_721_add__is__0,axiom,
    ! [M2: nat,N: nat] :
      ( ( ( plus_plus_nat @ M2 @ N )
        = zero_zero_nat )
      = ( ( M2 = zero_zero_nat )
        & ( N = zero_zero_nat ) ) ) ).

% add_is_0
thf(fact_722_plus__nat_Oadd__0,axiom,
    ! [N: nat] :
      ( ( plus_plus_nat @ zero_zero_nat @ N )
      = N ) ).

% plus_nat.add_0
thf(fact_723_Euclid__induct,axiom,
    ! [P: nat > nat > $o,A6: nat,B6: nat] :
      ( ! [A5: nat,B5: nat] :
          ( ( P @ A5 @ B5 )
          = ( P @ B5 @ A5 ) )
     => ( ! [A5: nat] : ( P @ A5 @ zero_zero_nat )
       => ( ! [A5: nat,B5: nat] :
              ( ( P @ A5 @ B5 )
             => ( P @ A5 @ ( plus_plus_nat @ A5 @ B5 ) ) )
         => ( P @ A6 @ B6 ) ) ) ) ).

% Euclid_induct
thf(fact_724_transpose__uminus,axiom,
    ! [A: mat_complex] :
      ( ( transp3074176993011536131omplex @ ( uminus467866341702955550omplex @ A ) )
      = ( uminus467866341702955550omplex @ ( transp3074176993011536131omplex @ A ) ) ) ).

% transpose_uminus
thf(fact_725_mult__hom_Ohom__add__eq__zero,axiom,
    ! [X: nat,Y5: nat,C3: nat] :
      ( ( ( plus_plus_nat @ X @ Y5 )
        = zero_zero_nat )
     => ( ( plus_plus_nat @ ( times_times_nat @ C3 @ X ) @ ( times_times_nat @ C3 @ Y5 ) )
        = zero_zero_nat ) ) ).

% mult_hom.hom_add_eq_zero
thf(fact_726_mult__hom_Ohom__add__eq__zero,axiom,
    ! [X: complex,Y5: complex,C3: complex] :
      ( ( ( plus_plus_complex @ X @ Y5 )
        = zero_zero_complex )
     => ( ( plus_plus_complex @ ( times_times_complex @ C3 @ X ) @ ( times_times_complex @ C3 @ Y5 ) )
        = zero_zero_complex ) ) ).

% mult_hom.hom_add_eq_zero
thf(fact_727_swaprows__mat__carrier,axiom,
    ! [N: nat,K: nat,L: nat] : ( member_mat_complex @ ( gauss_8970452565587180529omplex @ N @ K @ L ) @ ( carrier_mat_complex @ N @ N ) ) ).

% swaprows_mat_carrier
thf(fact_728_index__mat__swaprows__mat_I2_J,axiom,
    ! [N: nat,K: nat,L: nat] :
      ( ( dim_row_complex @ ( gauss_8970452565587180529omplex @ N @ K @ L ) )
      = N ) ).

% index_mat_swaprows_mat(2)
thf(fact_729_ab__group__add__class_Oab__diff__conv__add__uminus,axiom,
    ( minus_minus_complex
    = ( ^ [A9: complex,B9: complex] : ( plus_plus_complex @ A9 @ ( uminus1482373934393186551omplex @ B9 ) ) ) ) ).

% ab_group_add_class.ab_diff_conv_add_uminus
thf(fact_730_uminus__add__conv__diff,axiom,
    ! [A6: complex,B6: complex] :
      ( ( plus_plus_complex @ ( uminus1482373934393186551omplex @ A6 ) @ B6 )
      = ( minus_minus_complex @ B6 @ A6 ) ) ).

% uminus_add_conv_diff
thf(fact_731_diff__conv__add__uminus,axiom,
    ( minus_minus_complex
    = ( ^ [A9: complex,B9: complex] : ( plus_plus_complex @ A9 @ ( uminus1482373934393186551omplex @ B9 ) ) ) ) ).

% diff_conv_add_uminus
thf(fact_732_diff__minus__eq__add,axiom,
    ! [A6: complex,B6: complex] :
      ( ( minus_minus_complex @ A6 @ ( uminus1482373934393186551omplex @ B6 ) )
      = ( plus_plus_complex @ A6 @ B6 ) ) ).

% diff_minus_eq_add
thf(fact_733_group__cancel_Osub2,axiom,
    ! [B: complex,K: complex,B6: complex,A6: complex] :
      ( ( B
        = ( plus_plus_complex @ K @ B6 ) )
     => ( ( minus_minus_complex @ A6 @ B )
        = ( plus_plus_complex @ ( uminus1482373934393186551omplex @ K ) @ ( minus_minus_complex @ A6 @ B6 ) ) ) ) ).

% group_cancel.sub2
thf(fact_734_mult__sign__intros_I7_J,axiom,
    ! [A6: nat,B6: nat] :
      ( ( ord_less_nat @ A6 @ zero_zero_nat )
     => ( ( ord_less_nat @ zero_zero_nat @ B6 )
       => ( ord_less_nat @ ( times_times_nat @ A6 @ B6 ) @ zero_zero_nat ) ) ) ).

% mult_sign_intros(7)
thf(fact_735_mult__sign__intros_I6_J,axiom,
    ! [A6: nat,B6: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A6 )
     => ( ( ord_less_nat @ B6 @ zero_zero_nat )
       => ( ord_less_nat @ ( times_times_nat @ A6 @ B6 ) @ zero_zero_nat ) ) ) ).

% mult_sign_intros(6)
thf(fact_736_mult__sign__intros_I5_J,axiom,
    ! [A6: nat,B6: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A6 )
     => ( ( ord_less_nat @ zero_zero_nat @ B6 )
       => ( ord_less_nat @ zero_zero_nat @ ( times_times_nat @ A6 @ B6 ) ) ) ) ).

% mult_sign_intros(5)
thf(fact_737_linordered__semiring__strict__class_Omult__pos__neg2,axiom,
    ! [A6: nat,B6: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A6 )
     => ( ( ord_less_nat @ B6 @ zero_zero_nat )
       => ( ord_less_nat @ ( times_times_nat @ B6 @ A6 ) @ zero_zero_nat ) ) ) ).

% linordered_semiring_strict_class.mult_pos_neg2
thf(fact_738_zero__less__mult__pos,axiom,
    ! [A6: nat,B6: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( times_times_nat @ A6 @ B6 ) )
     => ( ( ord_less_nat @ zero_zero_nat @ A6 )
       => ( ord_less_nat @ zero_zero_nat @ B6 ) ) ) ).

% zero_less_mult_pos
thf(fact_739_zero__less__mult__pos2,axiom,
    ! [B6: nat,A6: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( times_times_nat @ B6 @ A6 ) )
     => ( ( ord_less_nat @ zero_zero_nat @ A6 )
       => ( ord_less_nat @ zero_zero_nat @ B6 ) ) ) ).

% zero_less_mult_pos2
thf(fact_740_linordered__semiring__strict__class_Omult__strict__left__mono,axiom,
    ! [A6: nat,B6: nat,C3: nat] :
      ( ( ord_less_nat @ A6 @ B6 )
     => ( ( ord_less_nat @ zero_zero_nat @ C3 )
       => ( ord_less_nat @ ( times_times_nat @ C3 @ A6 ) @ ( times_times_nat @ C3 @ B6 ) ) ) ) ).

% linordered_semiring_strict_class.mult_strict_left_mono
thf(fact_741_linordered__semiring__strict__class_Omult__strict__right__mono,axiom,
    ! [A6: nat,B6: nat,C3: nat] :
      ( ( ord_less_nat @ A6 @ B6 )
     => ( ( ord_less_nat @ zero_zero_nat @ C3 )
       => ( ord_less_nat @ ( times_times_nat @ A6 @ C3 ) @ ( times_times_nat @ B6 @ C3 ) ) ) ) ).

% linordered_semiring_strict_class.mult_strict_right_mono
thf(fact_742_linordered__comm__semiring__strict__class_Ocomm__mult__strict__left__mono,axiom,
    ! [A6: nat,B6: nat,C3: nat] :
      ( ( ord_less_nat @ A6 @ B6 )
     => ( ( ord_less_nat @ zero_zero_nat @ C3 )
       => ( ord_less_nat @ ( times_times_nat @ C3 @ A6 ) @ ( times_times_nat @ C3 @ B6 ) ) ) ) ).

% linordered_comm_semiring_strict_class.comm_mult_strict_left_mono
thf(fact_743_add__scale__eq__noteq,axiom,
    ! [R: nat,A6: nat,B6: nat,C3: nat,D3: nat] :
      ( ( R != zero_zero_nat )
     => ( ( ( A6 = B6 )
          & ( C3 != D3 ) )
       => ( ( plus_plus_nat @ A6 @ ( times_times_nat @ R @ C3 ) )
         != ( plus_plus_nat @ B6 @ ( times_times_nat @ R @ D3 ) ) ) ) ) ).

% add_scale_eq_noteq
thf(fact_744_add__scale__eq__noteq,axiom,
    ! [R: complex,A6: complex,B6: complex,C3: complex,D3: complex] :
      ( ( R != zero_zero_complex )
     => ( ( ( A6 = B6 )
          & ( C3 != D3 ) )
       => ( ( plus_plus_complex @ A6 @ ( times_times_complex @ R @ C3 ) )
         != ( plus_plus_complex @ B6 @ ( times_times_complex @ R @ D3 ) ) ) ) ) ).

% add_scale_eq_noteq
thf(fact_745_add__sign__intros_I6_J,axiom,
    ! [A6: nat,B6: nat] :
      ( ( ord_less_nat @ A6 @ zero_zero_nat )
     => ( ( ord_less_nat @ B6 @ zero_zero_nat )
       => ( ord_less_nat @ ( plus_plus_nat @ A6 @ B6 ) @ zero_zero_nat ) ) ) ).

% add_sign_intros(6)
thf(fact_746_add__sign__intros_I2_J,axiom,
    ! [A6: nat,B6: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A6 )
     => ( ( ord_less_nat @ zero_zero_nat @ B6 )
       => ( ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ A6 @ B6 ) ) ) ) ).

% add_sign_intros(2)
thf(fact_747_canonically__ordered__monoid__add__class_OlessE,axiom,
    ! [A6: nat,B6: nat] :
      ( ( ord_less_nat @ A6 @ B6 )
     => ~ ! [C2: nat] :
            ( ( B6
              = ( plus_plus_nat @ A6 @ C2 ) )
           => ( C2 = zero_zero_nat ) ) ) ).

% canonically_ordered_monoid_add_class.lessE
thf(fact_748_pos__add__strict,axiom,
    ! [A6: nat,B6: nat,C3: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A6 )
     => ( ( ord_less_nat @ B6 @ C3 )
       => ( ord_less_nat @ B6 @ ( plus_plus_nat @ A6 @ C3 ) ) ) ) ).

% pos_add_strict
thf(fact_749_add__less__same__cancel1,axiom,
    ! [B6: nat,A6: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ B6 @ A6 ) @ B6 )
      = ( ord_less_nat @ A6 @ zero_zero_nat ) ) ).

% add_less_same_cancel1
thf(fact_750_add__less__same__cancel2,axiom,
    ! [A6: nat,B6: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ A6 @ B6 ) @ B6 )
      = ( ord_less_nat @ A6 @ zero_zero_nat ) ) ).

% add_less_same_cancel2
thf(fact_751_less__add__same__cancel1,axiom,
    ! [A6: nat,B6: nat] :
      ( ( ord_less_nat @ A6 @ ( plus_plus_nat @ A6 @ B6 ) )
      = ( ord_less_nat @ zero_zero_nat @ B6 ) ) ).

% less_add_same_cancel1
thf(fact_752_less__add__same__cancel2,axiom,
    ! [A6: nat,B6: nat] :
      ( ( ord_less_nat @ A6 @ ( plus_plus_nat @ B6 @ A6 ) )
      = ( ord_less_nat @ zero_zero_nat @ B6 ) ) ).

% less_add_same_cancel2
thf(fact_753_diff__add__zero,axiom,
    ! [A6: nat,B6: nat] :
      ( ( minus_minus_nat @ A6 @ ( plus_plus_nat @ A6 @ B6 ) )
      = zero_zero_nat ) ).

% diff_add_zero
thf(fact_754_uminus__add__mat,axiom,
    ! [A: mat_complex,Nr: nat,Nc: nat,B: mat_complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ Nc ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ Nr @ Nc ) )
       => ( ( uminus467866341702955550omplex @ ( plus_p8323303612493835998omplex @ A @ B ) )
          = ( plus_p8323303612493835998omplex @ ( uminus467866341702955550omplex @ B ) @ ( uminus467866341702955550omplex @ A ) ) ) ) ) ).

% uminus_add_mat
thf(fact_755_add__gr__0,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ M2 @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ M2 )
        | ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% add_gr_0
thf(fact_756_less__imp__add__positive,axiom,
    ! [I4: nat,J4: nat] :
      ( ( ord_less_nat @ I4 @ J4 )
     => ? [K3: nat] :
          ( ( ord_less_nat @ zero_zero_nat @ K3 )
          & ( ( plus_plus_nat @ I4 @ K3 )
            = J4 ) ) ) ).

% less_imp_add_positive
thf(fact_757_zero__less__diff,axiom,
    ! [N: nat,M2: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( minus_minus_nat @ N @ M2 ) )
      = ( ord_less_nat @ M2 @ N ) ) ).

% zero_less_diff
thf(fact_758_diff__less,axiom,
    ! [N: nat,M2: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_nat @ zero_zero_nat @ M2 )
       => ( ord_less_nat @ ( minus_minus_nat @ M2 @ N ) @ M2 ) ) ) ).

% diff_less
thf(fact_759_nat__mult__less__cancel__disj,axiom,
    ! [K: nat,M2: nat,N: nat] :
      ( ( ord_less_nat @ ( times_times_nat @ K @ M2 ) @ ( times_times_nat @ K @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ K )
        & ( ord_less_nat @ M2 @ N ) ) ) ).

% nat_mult_less_cancel_disj
thf(fact_760_nat__mult__less__cancel1,axiom,
    ! [K: nat,M2: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ K )
     => ( ( ord_less_nat @ ( times_times_nat @ K @ M2 ) @ ( times_times_nat @ K @ N ) )
        = ( ord_less_nat @ M2 @ N ) ) ) ).

% nat_mult_less_cancel1
thf(fact_761_nat__mult__eq__cancel1,axiom,
    ! [K: nat,M2: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ K )
     => ( ( ( times_times_nat @ K @ M2 )
          = ( times_times_nat @ K @ N ) )
        = ( M2 = N ) ) ) ).

% nat_mult_eq_cancel1
thf(fact_762_nat__0__less__mult__iff,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( times_times_nat @ M2 @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ M2 )
        & ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% nat_0_less_mult_iff
thf(fact_763_mult__less__cancel2,axiom,
    ! [M2: nat,K: nat,N: nat] :
      ( ( ord_less_nat @ ( times_times_nat @ M2 @ K ) @ ( times_times_nat @ N @ K ) )
      = ( ( ord_less_nat @ zero_zero_nat @ K )
        & ( ord_less_nat @ M2 @ N ) ) ) ).

% mult_less_cancel2
thf(fact_764_mult__less__mono2,axiom,
    ! [I4: nat,J4: nat,K: nat] :
      ( ( ord_less_nat @ I4 @ J4 )
     => ( ( ord_less_nat @ zero_zero_nat @ K )
       => ( ord_less_nat @ ( times_times_nat @ K @ I4 ) @ ( times_times_nat @ K @ J4 ) ) ) ) ).

% mult_less_mono2
thf(fact_765_mult__less__mono1,axiom,
    ! [I4: nat,J4: nat,K: nat] :
      ( ( ord_less_nat @ I4 @ J4 )
     => ( ( ord_less_nat @ zero_zero_nat @ K )
       => ( ord_less_nat @ ( times_times_nat @ I4 @ K ) @ ( times_times_nat @ J4 @ K ) ) ) ) ).

% mult_less_mono1
thf(fact_766_diff__add__0,axiom,
    ! [N: nat,M2: nat] :
      ( ( minus_minus_nat @ N @ ( plus_plus_nat @ N @ M2 ) )
      = zero_zero_nat ) ).

% diff_add_0
thf(fact_767_index__uminus__mat_I1_J,axiom,
    ! [I4: nat,A: mat_mat_complex,J4: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_mat_complex @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_mat_complex @ A ) )
       => ( ( index_7093623372566408491omplex @ ( uminus9210244920068684493omplex @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( uminus467866341702955550omplex @ ( index_7093623372566408491omplex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_uminus_mat(1)
thf(fact_768_index__uminus__mat_I1_J,axiom,
    ! [I4: nat,A: mat_complex,J4: nat] :
      ( ( ord_less_nat @ I4 @ ( dim_row_complex @ A ) )
     => ( ( ord_less_nat @ J4 @ ( dim_col_complex @ A ) )
       => ( ( index_mat_complex @ ( uminus467866341702955550omplex @ A ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( uminus1482373934393186551omplex @ ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) ) ) ) ) ) ).

% index_uminus_mat(1)
thf(fact_769_uminus__mult__left__mat,axiom,
    ! [A: mat_complex,B: mat_complex] :
      ( ( ( dim_col_complex @ A )
        = ( dim_row_complex @ B ) )
     => ( ( times_8009071140041733218omplex @ ( uminus467866341702955550omplex @ A ) @ B )
        = ( uminus467866341702955550omplex @ ( times_8009071140041733218omplex @ A @ B ) ) ) ) ).

% uminus_mult_left_mat
thf(fact_770_uminus__mult__right__mat,axiom,
    ! [A: mat_complex,B: mat_complex] :
      ( ( ( dim_col_complex @ A )
        = ( dim_row_complex @ B ) )
     => ( ( times_8009071140041733218omplex @ A @ ( uminus467866341702955550omplex @ B ) )
        = ( uminus467866341702955550omplex @ ( times_8009071140041733218omplex @ A @ B ) ) ) ) ).

% uminus_mult_right_mat
thf(fact_771_uminus__l__inv__mat,axiom,
    ! [A: mat_complex,Nr: nat,Nc: nat] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ Nc ) )
     => ( ( plus_p8323303612493835998omplex @ ( uminus467866341702955550omplex @ A ) @ A )
        = ( zero_mat_complex @ Nr @ Nc ) ) ) ).

% uminus_l_inv_mat
thf(fact_772_nat__diff__split__asm,axiom,
    ! [P: nat > $o,A6: nat,B6: nat] :
      ( ( P @ ( minus_minus_nat @ A6 @ B6 ) )
      = ( ~ ( ( ( ord_less_nat @ A6 @ B6 )
              & ~ ( P @ zero_zero_nat ) )
            | ? [D4: nat] :
                ( ( A6
                  = ( plus_plus_nat @ B6 @ D4 ) )
                & ~ ( P @ D4 ) ) ) ) ) ).

% nat_diff_split_asm
thf(fact_773_nat__diff__split,axiom,
    ! [P: nat > $o,A6: nat,B6: nat] :
      ( ( P @ ( minus_minus_nat @ A6 @ B6 ) )
      = ( ( ( ord_less_nat @ A6 @ B6 )
         => ( P @ zero_zero_nat ) )
        & ! [D4: nat] :
            ( ( A6
              = ( plus_plus_nat @ B6 @ D4 ) )
           => ( P @ D4 ) ) ) ) ).

% nat_diff_split
thf(fact_774_uminus__add__minus__mat,axiom,
    ! [L: mat_complex,Nr: nat,Nc: nat,R: mat_complex] :
      ( ( member_mat_complex @ L @ ( carrier_mat_complex @ Nr @ Nc ) )
     => ( ( member_mat_complex @ R @ ( carrier_mat_complex @ Nr @ Nc ) )
       => ( ( uminus467866341702955550omplex @ ( plus_p8323303612493835998omplex @ L @ R ) )
          = ( minus_2412168080157227406omplex @ ( uminus467866341702955550omplex @ L ) @ R ) ) ) ) ).

% uminus_add_minus_mat
thf(fact_775_minus__add__uminus__mat,axiom,
    ! [A: mat_complex,Nr: nat,Nc: nat,B: mat_complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ Nc ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ Nr @ Nc ) )
       => ( ( minus_2412168080157227406omplex @ A @ B )
          = ( plus_p8323303612493835998omplex @ A @ ( uminus467866341702955550omplex @ B ) ) ) ) ) ).

% minus_add_uminus_mat
thf(fact_776_add__uminus__minus__mat,axiom,
    ! [A: mat_complex,Nr: nat,Nc: nat,B: mat_complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ Nc ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ Nr @ Nc ) )
       => ( ( plus_p8323303612493835998omplex @ A @ ( uminus467866341702955550omplex @ B ) )
          = ( minus_2412168080157227406omplex @ A @ B ) ) ) ) ).

% add_uminus_minus_mat
thf(fact_777_index__zero__mat_I1_J,axiom,
    ! [I4: nat,Nr: nat,J4: nat,Nc: nat] :
      ( ( ord_less_nat @ I4 @ Nr )
     => ( ( ord_less_nat @ J4 @ Nc )
       => ( ( index_mat_a @ ( zero_mat_a @ Nr @ Nc ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = zero_zero_a ) ) ) ).

% index_zero_mat(1)
thf(fact_778_index__zero__mat_I1_J,axiom,
    ! [I4: nat,Nr: nat,J4: nat,Nc: nat] :
      ( ( ord_less_nat @ I4 @ Nr )
     => ( ( ord_less_nat @ J4 @ Nc )
       => ( ( index_mat_nat @ ( zero_mat_nat @ Nr @ Nc ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = zero_zero_nat ) ) ) ).

% index_zero_mat(1)
thf(fact_779_smult__zero,axiom,
    ! [A: mat_complex] :
      ( ( smult_mat_complex @ zero_zero_complex @ A )
      = ( zero_mat_complex @ ( dim_row_complex @ A ) @ ( dim_col_complex @ A ) ) ) ).

% smult_zero
thf(fact_780_swaprows__mat,axiom,
    ! [A: mat_complex,N: nat,Nc: nat,K: nat,L: nat] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ N @ Nc ) )
     => ( ( ord_less_nat @ K @ N )
       => ( ( ord_less_nat @ L @ N )
         => ( ( gauss_1020679828357514249omplex @ K @ L @ A )
            = ( times_8009071140041733218omplex @ ( gauss_8970452565587180529omplex @ N @ K @ L ) @ A ) ) ) ) ) ).

% swaprows_mat
thf(fact_781_pth__2,axiom,
    ( minus_minus_complex
    = ( ^ [X3: complex,Y4: complex] : ( plus_plus_complex @ X3 @ ( uminus1482373934393186551omplex @ Y4 ) ) ) ) ).

% pth_2
thf(fact_782_class__ring_Ominus__eq,axiom,
    ( minus_minus_complex
    = ( ^ [X3: complex,Y4: complex] : ( plus_plus_complex @ X3 @ ( uminus1482373934393186551omplex @ Y4 ) ) ) ) ).

% class_ring.minus_eq
thf(fact_783_uminus__eq__mat,axiom,
    ! [A: mat_complex,B: mat_complex] :
      ( ( ( uminus467866341702955550omplex @ A )
        = ( uminus467866341702955550omplex @ B ) )
      = ( A = B ) ) ).

% uminus_eq_mat
thf(fact_784_uminus__uminus__mat,axiom,
    ! [A: mat_complex] :
      ( ( uminus467866341702955550omplex @ ( uminus467866341702955550omplex @ A ) )
      = A ) ).

% uminus_uminus_mat
thf(fact_785_class__cring_Ofactors__equal,axiom,
    ! [A6: complex,B6: complex,C3: complex,D3: complex] :
      ( ( A6 = B6 )
     => ( ( C3 = D3 )
       => ( ( times_times_complex @ A6 @ C3 )
          = ( times_times_complex @ B6 @ D3 ) ) ) ) ).

% class_cring.factors_equal
thf(fact_786_class__semiring_Osummands__equal,axiom,
    ! [A6: nat,B6: nat,C3: nat,D3: nat] :
      ( ( A6 = B6 )
     => ( ( C3 = D3 )
       => ( ( plus_plus_nat @ A6 @ C3 )
          = ( plus_plus_nat @ B6 @ D3 ) ) ) ) ).

% class_semiring.summands_equal
thf(fact_787_is__num__normalize_I8_J,axiom,
    ! [A6: complex,B6: complex] :
      ( ( uminus1482373934393186551omplex @ ( plus_plus_complex @ A6 @ B6 ) )
      = ( plus_plus_complex @ ( uminus1482373934393186551omplex @ B6 ) @ ( uminus1482373934393186551omplex @ A6 ) ) ) ).

% is_num_normalize(8)
thf(fact_788_append__rows__def,axiom,
    ( append_rows_complex
    = ( ^ [A8: mat_complex,B8: mat_complex] : ( four_b559179830521662709omplex @ A8 @ ( zero_mat_complex @ ( dim_row_complex @ A8 ) @ zero_zero_nat ) @ B8 @ ( zero_mat_complex @ ( dim_row_complex @ B8 ) @ zero_zero_nat ) ) ) ) ).

% append_rows_def
thf(fact_789_append__rows__def,axiom,
    ( append_rows_a
    = ( ^ [A8: mat_a,B8: mat_a] : ( four_block_mat_a @ A8 @ ( zero_mat_a @ ( dim_row_a @ A8 ) @ zero_zero_nat ) @ B8 @ ( zero_mat_a @ ( dim_row_a @ B8 ) @ zero_zero_nat ) ) ) ) ).

% append_rows_def
thf(fact_790_poly__cancel__eq__conv,axiom,
    ! [X: complex,A6: complex,Y5: complex,B6: complex] :
      ( ( X = zero_zero_complex )
     => ( ( A6 != zero_zero_complex )
       => ( ( Y5 = zero_zero_complex )
          = ( ( minus_minus_complex @ ( times_times_complex @ A6 @ Y5 ) @ ( times_times_complex @ B6 @ X ) )
            = zero_zero_complex ) ) ) ) ).

% poly_cancel_eq_conv
thf(fact_791_carrier__append__rows,axiom,
    ! [A: mat_complex,Nr1: nat,Nc: nat,B: mat_complex,Nr2: nat] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr1 @ Nc ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ Nr2 @ Nc ) )
       => ( member_mat_complex @ ( append_rows_complex @ A @ B ) @ ( carrier_mat_complex @ ( plus_plus_nat @ Nr1 @ Nr2 ) @ Nc ) ) ) ) ).

% carrier_append_rows
thf(fact_792_density__collapse__carrier,axiom,
    ! [R2: mat_complex,P: mat_complex,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( dim_row_complex @ R2 ) )
     => ( ( member_mat_complex @ P @ ( carrier_mat_complex @ N @ N ) )
       => ( ( member_mat_complex @ R2 @ ( carrier_mat_complex @ N @ N ) )
         => ( member_mat_complex @ ( projec3470689467825365843llapse @ R2 @ P ) @ ( carrier_mat_complex @ N @ N ) ) ) ) ) ).

% density_collapse_carrier
thf(fact_793_mat__assoc__test_I4_J,axiom,
    ! [A: mat_complex,N: nat,B: mat_complex,C: mat_complex,D2: mat_complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ N @ N ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ N @ N ) )
       => ( ( member_mat_complex @ C @ ( carrier_mat_complex @ N @ N ) )
         => ( ( member_mat_complex @ D2 @ ( carrier_mat_complex @ N @ N ) )
           => ( ( plus_p8323303612493835998omplex @ ( minus_2412168080157227406omplex @ A @ B ) @ ( minus_2412168080157227406omplex @ B @ C ) )
              = ( plus_p8323303612493835998omplex @ ( plus_p8323303612493835998omplex @ ( plus_p8323303612493835998omplex @ A @ ( uminus467866341702955550omplex @ B ) ) @ B ) @ ( uminus467866341702955550omplex @ C ) ) ) ) ) ) ) ).

% mat_assoc_test(4)
thf(fact_794_mat__assoc__test_I9_J,axiom,
    ! [A: mat_complex,N: nat,B: mat_complex,C: mat_complex,D2: mat_complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ N @ N ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ N @ N ) )
       => ( ( member_mat_complex @ C @ ( carrier_mat_complex @ N @ N ) )
         => ( ( member_mat_complex @ D2 @ ( carrier_mat_complex @ N @ N ) )
           => ( ( times_8009071140041733218omplex @ ( times_8009071140041733218omplex @ A @ ( minus_2412168080157227406omplex @ B @ C ) ) @ D2 )
              = ( minus_2412168080157227406omplex @ ( times_8009071140041733218omplex @ ( times_8009071140041733218omplex @ A @ B ) @ D2 ) @ ( times_8009071140041733218omplex @ ( times_8009071140041733218omplex @ A @ C ) @ D2 ) ) ) ) ) ) ) ).

% mat_assoc_test(9)
thf(fact_795_mat__assoc__test_I5_J,axiom,
    ! [A: mat_complex,N: nat,B: mat_complex,C: mat_complex,D2: mat_complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ N @ N ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ N @ N ) )
       => ( ( member_mat_complex @ C @ ( carrier_mat_complex @ N @ N ) )
         => ( ( member_mat_complex @ D2 @ ( carrier_mat_complex @ N @ N ) )
           => ( ( plus_p8323303612493835998omplex @ A @ ( minus_2412168080157227406omplex @ B @ C ) )
              = ( minus_2412168080157227406omplex @ ( plus_p8323303612493835998omplex @ A @ B ) @ C ) ) ) ) ) ) ).

% mat_assoc_test(5)
thf(fact_796_mat__assoc__test_I6_J,axiom,
    ! [A: mat_complex,N: nat,B: mat_complex,C: mat_complex,D2: mat_complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ N @ N ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ N @ N ) )
       => ( ( member_mat_complex @ C @ ( carrier_mat_complex @ N @ N ) )
         => ( ( member_mat_complex @ D2 @ ( carrier_mat_complex @ N @ N ) )
           => ( ( minus_2412168080157227406omplex @ A @ ( plus_p8323303612493835998omplex @ ( plus_p8323303612493835998omplex @ B @ C ) @ D2 ) )
              = ( minus_2412168080157227406omplex @ ( minus_2412168080157227406omplex @ ( minus_2412168080157227406omplex @ A @ B ) @ C ) @ D2 ) ) ) ) ) ) ).

% mat_assoc_test(6)
thf(fact_797_smult__smult__mat,axiom,
    ! [A: mat_complex,Nr: nat,N: nat,K: complex,L: complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ Nr @ N ) )
     => ( ( smult_mat_complex @ K @ ( smult_mat_complex @ L @ A ) )
        = ( smult_mat_complex @ ( times_times_complex @ K @ L ) @ A ) ) ) ).

% smult_smult_mat
thf(fact_798_mat__assoc__test_I1_J,axiom,
    ! [A: mat_complex,N: nat,B: mat_complex,C: mat_complex,D2: mat_complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ N @ N ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ N @ N ) )
       => ( ( member_mat_complex @ C @ ( carrier_mat_complex @ N @ N ) )
         => ( ( member_mat_complex @ D2 @ ( carrier_mat_complex @ N @ N ) )
           => ( ( times_8009071140041733218omplex @ ( times_8009071140041733218omplex @ A @ B ) @ ( times_8009071140041733218omplex @ C @ D2 ) )
              = ( times_8009071140041733218omplex @ ( times_8009071140041733218omplex @ ( times_8009071140041733218omplex @ A @ B ) @ C ) @ D2 ) ) ) ) ) ) ).

% mat_assoc_test(1)
thf(fact_799_mat__assoc__test_I7_J,axiom,
    ! [A: mat_complex,N: nat,B: mat_complex,C: mat_complex,D2: mat_complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ N @ N ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ N @ N ) )
       => ( ( member_mat_complex @ C @ ( carrier_mat_complex @ N @ N ) )
         => ( ( member_mat_complex @ D2 @ ( carrier_mat_complex @ N @ N ) )
           => ( ( times_8009071140041733218omplex @ ( plus_p8323303612493835998omplex @ A @ B ) @ ( plus_p8323303612493835998omplex @ B @ C ) )
              = ( plus_p8323303612493835998omplex @ ( plus_p8323303612493835998omplex @ ( plus_p8323303612493835998omplex @ ( times_8009071140041733218omplex @ A @ B ) @ ( times_8009071140041733218omplex @ B @ B ) ) @ ( times_8009071140041733218omplex @ A @ C ) ) @ ( times_8009071140041733218omplex @ B @ C ) ) ) ) ) ) ) ).

% mat_assoc_test(7)
thf(fact_800_mat__assoc__test_I13_J,axiom,
    ! [A: mat_complex,N: nat,B: mat_complex,C: mat_complex,D2: mat_complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ N @ N ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ N @ N ) )
       => ( ( member_mat_complex @ C @ ( carrier_mat_complex @ N @ N ) )
         => ( ( member_mat_complex @ D2 @ ( carrier_mat_complex @ N @ N ) )
           => ( ( plus_p8323303612493835998omplex @ A @ B )
              = ( plus_p8323303612493835998omplex @ B @ A ) ) ) ) ) ) ).

% mat_assoc_test(13)
thf(fact_801_mat__assoc__test_I14_J,axiom,
    ! [A: mat_complex,N: nat,B: mat_complex,C: mat_complex,D2: mat_complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ N @ N ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ N @ N ) )
       => ( ( member_mat_complex @ C @ ( carrier_mat_complex @ N @ N ) )
         => ( ( member_mat_complex @ D2 @ ( carrier_mat_complex @ N @ N ) )
           => ( ( plus_p8323303612493835998omplex @ ( plus_p8323303612493835998omplex @ A @ B ) @ C )
              = ( plus_p8323303612493835998omplex @ ( plus_p8323303612493835998omplex @ C @ B ) @ A ) ) ) ) ) ) ).

% mat_assoc_test(14)
thf(fact_802_mat__assoc__test_I15_J,axiom,
    ! [A: mat_complex,N: nat,B: mat_complex,C: mat_complex,D2: mat_complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ N @ N ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ N @ N ) )
       => ( ( member_mat_complex @ C @ ( carrier_mat_complex @ N @ N ) )
         => ( ( member_mat_complex @ D2 @ ( carrier_mat_complex @ N @ N ) )
           => ( ( plus_p8323303612493835998omplex @ ( plus_p8323303612493835998omplex @ A @ B ) @ ( plus_p8323303612493835998omplex @ C @ D2 ) )
              = ( plus_p8323303612493835998omplex @ ( plus_p8323303612493835998omplex @ A @ C ) @ ( plus_p8323303612493835998omplex @ B @ D2 ) ) ) ) ) ) ) ).

% mat_assoc_test(15)
thf(fact_803_verit__negate__coefficient_I2_J,axiom,
    ! [A6: complex,B6: complex] :
      ( ( ord_less_complex @ A6 @ B6 )
     => ( ord_less_complex @ ( uminus1482373934393186551omplex @ B6 ) @ ( uminus1482373934393186551omplex @ A6 ) ) ) ).

% verit_negate_coefficient(2)
thf(fact_804_verit__sum__simplify,axiom,
    ! [A6: nat] :
      ( ( plus_plus_nat @ A6 @ zero_zero_nat )
      = A6 ) ).

% verit_sum_simplify
thf(fact_805_verit__comp__simplify1_I1_J,axiom,
    ! [A6: nat] :
      ~ ( ord_less_nat @ A6 @ A6 ) ).

% verit_comp_simplify1(1)
thf(fact_806_mult__delta__right,axiom,
    ! [B6: $o,X: nat,Y5: nat] :
      ( ( B6
       => ( ( times_times_nat @ X @ ( if_nat @ B6 @ Y5 @ zero_zero_nat ) )
          = ( times_times_nat @ X @ Y5 ) ) )
      & ( ~ B6
       => ( ( times_times_nat @ X @ ( if_nat @ B6 @ Y5 @ zero_zero_nat ) )
          = zero_zero_nat ) ) ) ).

% mult_delta_right
thf(fact_807_mult__delta__right,axiom,
    ! [B6: $o,X: complex,Y5: complex] :
      ( ( B6
       => ( ( times_times_complex @ X @ ( if_complex @ B6 @ Y5 @ zero_zero_complex ) )
          = ( times_times_complex @ X @ Y5 ) ) )
      & ( ~ B6
       => ( ( times_times_complex @ X @ ( if_complex @ B6 @ Y5 @ zero_zero_complex ) )
          = zero_zero_complex ) ) ) ).

% mult_delta_right
thf(fact_808_mult__delta__left,axiom,
    ! [B6: $o,X: nat,Y5: nat] :
      ( ( B6
       => ( ( times_times_nat @ ( if_nat @ B6 @ X @ zero_zero_nat ) @ Y5 )
          = ( times_times_nat @ X @ Y5 ) ) )
      & ( ~ B6
       => ( ( times_times_nat @ ( if_nat @ B6 @ X @ zero_zero_nat ) @ Y5 )
          = zero_zero_nat ) ) ) ).

% mult_delta_left
thf(fact_809_mult__delta__left,axiom,
    ! [B6: $o,X: complex,Y5: complex] :
      ( ( B6
       => ( ( times_times_complex @ ( if_complex @ B6 @ X @ zero_zero_complex ) @ Y5 )
          = ( times_times_complex @ X @ Y5 ) ) )
      & ( ~ B6
       => ( ( times_times_complex @ ( if_complex @ B6 @ X @ zero_zero_complex ) @ Y5 )
          = zero_zero_complex ) ) ) ).

% mult_delta_left
thf(fact_810_upper__triangular__def,axiom,
    ( upper_4850907204721561915omplex
    = ( ^ [A8: mat_complex] :
        ! [I: nat] :
          ( ( ord_less_nat @ I @ ( dim_row_complex @ A8 ) )
         => ! [J: nat] :
              ( ( ord_less_nat @ J @ I )
             => ( ( index_mat_complex @ A8 @ ( product_Pair_nat_nat @ I @ J ) )
                = zero_zero_complex ) ) ) ) ) ).

% upper_triangular_def
thf(fact_811_upper__triangular__def,axiom,
    ( upper_triangular_a
    = ( ^ [A8: mat_a] :
        ! [I: nat] :
          ( ( ord_less_nat @ I @ ( dim_row_a @ A8 ) )
         => ! [J: nat] :
              ( ( ord_less_nat @ J @ I )
             => ( ( index_mat_a @ A8 @ ( product_Pair_nat_nat @ I @ J ) )
                = zero_zero_a ) ) ) ) ) ).

% upper_triangular_def
thf(fact_812_upper__triangular__def,axiom,
    ( upper_triangular_nat
    = ( ^ [A8: mat_nat] :
        ! [I: nat] :
          ( ( ord_less_nat @ I @ ( dim_row_nat @ A8 ) )
         => ! [J: nat] :
              ( ( ord_less_nat @ J @ I )
             => ( ( index_mat_nat @ A8 @ ( product_Pair_nat_nat @ I @ J ) )
                = zero_zero_nat ) ) ) ) ) ).

% upper_triangular_def
thf(fact_813_upper__triangularI,axiom,
    ! [A: mat_complex] :
      ( ! [I2: nat,J2: nat] :
          ( ( ord_less_nat @ J2 @ I2 )
         => ( ( ord_less_nat @ I2 @ ( dim_row_complex @ A ) )
           => ( ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I2 @ J2 ) )
              = zero_zero_complex ) ) )
     => ( upper_4850907204721561915omplex @ A ) ) ).

% upper_triangularI
thf(fact_814_upper__triangularI,axiom,
    ! [A: mat_a] :
      ( ! [I2: nat,J2: nat] :
          ( ( ord_less_nat @ J2 @ I2 )
         => ( ( ord_less_nat @ I2 @ ( dim_row_a @ A ) )
           => ( ( index_mat_a @ A @ ( product_Pair_nat_nat @ I2 @ J2 ) )
              = zero_zero_a ) ) )
     => ( upper_triangular_a @ A ) ) ).

% upper_triangularI
thf(fact_815_upper__triangularI,axiom,
    ! [A: mat_nat] :
      ( ! [I2: nat,J2: nat] :
          ( ( ord_less_nat @ J2 @ I2 )
         => ( ( ord_less_nat @ I2 @ ( dim_row_nat @ A ) )
           => ( ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I2 @ J2 ) )
              = zero_zero_nat ) ) )
     => ( upper_triangular_nat @ A ) ) ).

% upper_triangularI
thf(fact_816_upper__triangularD,axiom,
    ! [A: mat_complex,J4: nat,I4: nat] :
      ( ( upper_4850907204721561915omplex @ A )
     => ( ( ord_less_nat @ J4 @ I4 )
       => ( ( ord_less_nat @ I4 @ ( dim_row_complex @ A ) )
         => ( ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) )
            = zero_zero_complex ) ) ) ) ).

% upper_triangularD
thf(fact_817_upper__triangularD,axiom,
    ! [A: mat_a,J4: nat,I4: nat] :
      ( ( upper_triangular_a @ A )
     => ( ( ord_less_nat @ J4 @ I4 )
       => ( ( ord_less_nat @ I4 @ ( dim_row_a @ A ) )
         => ( ( index_mat_a @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) )
            = zero_zero_a ) ) ) ) ).

% upper_triangularD
thf(fact_818_upper__triangularD,axiom,
    ! [A: mat_nat,J4: nat,I4: nat] :
      ( ( upper_triangular_nat @ A )
     => ( ( ord_less_nat @ J4 @ I4 )
       => ( ( ord_less_nat @ I4 @ ( dim_row_nat @ A ) )
         => ( ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) )
            = zero_zero_nat ) ) ) ) ).

% upper_triangularD
thf(fact_819_upper__triangular__zero,axiom,
    ! [N: nat] : ( upper_triangular_a @ ( zero_mat_a @ N @ N ) ) ).

% upper_triangular_zero
thf(fact_820_diagonal__imp__upper__triangular,axiom,
    ! [A: mat_complex,N: nat] :
      ( ( diagonal_mat_complex @ A )
     => ( ( member_mat_complex @ A @ ( carrier_mat_complex @ N @ N ) )
       => ( upper_4850907204721561915omplex @ A ) ) ) ).

% diagonal_imp_upper_triangular
thf(fact_821_upper__triangular__four__block,axiom,
    ! [A: mat_complex,N: nat,D2: mat_complex,M2: nat,B: mat_complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ N @ N ) )
     => ( ( member_mat_complex @ D2 @ ( carrier_mat_complex @ M2 @ M2 ) )
       => ( ( upper_4850907204721561915omplex @ A )
         => ( ( upper_4850907204721561915omplex @ D2 )
           => ( upper_4850907204721561915omplex @ ( four_b559179830521662709omplex @ A @ B @ ( zero_mat_complex @ M2 @ N ) @ D2 ) ) ) ) ) ) ).

% upper_triangular_four_block
thf(fact_822_upper__triangular__four__block,axiom,
    ! [A: mat_a,N: nat,D2: mat_a,M2: nat,B: mat_a] :
      ( ( member_mat_a @ A @ ( carrier_mat_a @ N @ N ) )
     => ( ( member_mat_a @ D2 @ ( carrier_mat_a @ M2 @ M2 ) )
       => ( ( upper_triangular_a @ A )
         => ( ( upper_triangular_a @ D2 )
           => ( upper_triangular_a @ ( four_block_mat_a @ A @ B @ ( zero_mat_a @ M2 @ N ) @ D2 ) ) ) ) ) ) ).

% upper_triangular_four_block
thf(fact_823_pivot__funD_I5_J,axiom,
    ! [A: mat_complex,Nr: nat,F: nat > nat,Nc: nat,I4: nat,I3: nat] :
      ( ( ( dim_row_complex @ A )
        = Nr )
     => ( ( gauss_2609248829700396350omplex @ A @ F @ Nc )
       => ( ( ord_less_nat @ I4 @ Nr )
         => ( ( ord_less_nat @ ( F @ I4 ) @ Nc )
           => ( ( ord_less_nat @ I3 @ Nr )
             => ( ( I3 != I4 )
               => ( ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I3 @ ( F @ I4 ) ) )
                  = zero_zero_complex ) ) ) ) ) ) ) ).

% pivot_funD(5)
thf(fact_824_pivot__funD_I5_J,axiom,
    ! [A: mat_nat,Nr: nat,F: nat > nat,Nc: nat,I4: nat,I3: nat] :
      ( ( ( dim_row_nat @ A )
        = Nr )
     => ( ( gauss_8416567519840421984un_nat @ A @ F @ Nc )
       => ( ( ord_less_nat @ I4 @ Nr )
         => ( ( ord_less_nat @ ( F @ I4 ) @ Nc )
           => ( ( ord_less_nat @ I3 @ Nr )
             => ( ( I3 != I4 )
               => ( ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I3 @ ( F @ I4 ) ) )
                  = zero_zero_nat ) ) ) ) ) ) ) ).

% pivot_funD(5)
thf(fact_825_pivot__funD_I2_J,axiom,
    ! [A: mat_complex,Nr: nat,F: nat > nat,Nc: nat,I4: nat,J4: nat] :
      ( ( ( dim_row_complex @ A )
        = Nr )
     => ( ( gauss_2609248829700396350omplex @ A @ F @ Nc )
       => ( ( ord_less_nat @ I4 @ Nr )
         => ( ( ord_less_nat @ J4 @ ( F @ I4 ) )
           => ( ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = zero_zero_complex ) ) ) ) ) ).

% pivot_funD(2)
thf(fact_826_pivot__funD_I2_J,axiom,
    ! [A: mat_nat,Nr: nat,F: nat > nat,Nc: nat,I4: nat,J4: nat] :
      ( ( ( dim_row_nat @ A )
        = Nr )
     => ( ( gauss_8416567519840421984un_nat @ A @ F @ Nc )
       => ( ( ord_less_nat @ I4 @ Nr )
         => ( ( ord_less_nat @ J4 @ ( F @ I4 ) )
           => ( ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = zero_zero_nat ) ) ) ) ) ).

% pivot_funD(2)
thf(fact_827_index__mat__multrow__mat_I1_J,axiom,
    ! [I4: nat,N: nat,J4: nat,K: nat,A6: complex] :
      ( ( ord_less_nat @ I4 @ N )
     => ( ( ord_less_nat @ J4 @ N )
       => ( ( ( ( K = I4 )
              & ( K = J4 ) )
           => ( ( index_mat_complex @ ( gauss_6868829418328711927omplex @ N @ K @ A6 ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = A6 ) )
          & ( ~ ( ( K = I4 )
                & ( K = J4 ) )
           => ( ( ( I4 = J4 )
               => ( ( index_mat_complex @ ( gauss_6868829418328711927omplex @ N @ K @ A6 ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                  = one_one_complex ) )
              & ( ( I4 != J4 )
               => ( ( index_mat_complex @ ( gauss_6868829418328711927omplex @ N @ K @ A6 ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                  = zero_zero_complex ) ) ) ) ) ) ) ).

% index_mat_multrow_mat(1)
thf(fact_828_index__mat__multrow__mat_I1_J,axiom,
    ! [I4: nat,N: nat,J4: nat,K: nat,A6: nat] :
      ( ( ord_less_nat @ I4 @ N )
     => ( ( ord_less_nat @ J4 @ N )
       => ( ( ( ( K = I4 )
              & ( K = J4 ) )
           => ( ( index_mat_nat @ ( gauss_3195076542185637913at_nat @ N @ K @ A6 ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = A6 ) )
          & ( ~ ( ( K = I4 )
                & ( K = J4 ) )
           => ( ( ( I4 = J4 )
               => ( ( index_mat_nat @ ( gauss_3195076542185637913at_nat @ N @ K @ A6 ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                  = one_one_nat ) )
              & ( ( I4 != J4 )
               => ( ( index_mat_nat @ ( gauss_3195076542185637913at_nat @ N @ K @ A6 ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
                  = zero_zero_nat ) ) ) ) ) ) ) ).

% index_mat_multrow_mat(1)
thf(fact_829_verit__prod__simplify_I2_J,axiom,
    ! [A6: nat] :
      ( ( times_times_nat @ A6 @ one_one_nat )
      = A6 ) ).

% verit_prod_simplify(2)
thf(fact_830_verit__prod__simplify_I2_J,axiom,
    ! [A6: complex] :
      ( ( times_times_complex @ A6 @ one_one_complex )
      = A6 ) ).

% verit_prod_simplify(2)
thf(fact_831_verit__prod__simplify_I1_J,axiom,
    ! [A6: nat] :
      ( ( times_times_nat @ one_one_nat @ A6 )
      = A6 ) ).

% verit_prod_simplify(1)
thf(fact_832_verit__prod__simplify_I1_J,axiom,
    ! [A6: complex] :
      ( ( times_times_complex @ one_one_complex @ A6 )
      = A6 ) ).

% verit_prod_simplify(1)
thf(fact_833_one__reorient,axiom,
    ! [X: nat] :
      ( ( one_one_nat = X )
      = ( X = one_one_nat ) ) ).

% one_reorient
thf(fact_834_one__reorient,axiom,
    ! [X: complex] :
      ( ( one_one_complex = X )
      = ( X = one_one_complex ) ) ).

% one_reorient
thf(fact_835_semiring__norm_I138_J,axiom,
    ~ ( ord_less_nat @ one_one_nat @ one_one_nat ) ).

% semiring_norm(138)
thf(fact_836_comm__monoid__mult__class_Omult__1,axiom,
    ! [A6: nat] :
      ( ( times_times_nat @ one_one_nat @ A6 )
      = A6 ) ).

% comm_monoid_mult_class.mult_1
thf(fact_837_comm__monoid__mult__class_Omult__1,axiom,
    ! [A6: complex] :
      ( ( times_times_complex @ one_one_complex @ A6 )
      = A6 ) ).

% comm_monoid_mult_class.mult_1
thf(fact_838_mult_Ocomm__neutral,axiom,
    ! [A6: nat] :
      ( ( times_times_nat @ A6 @ one_one_nat )
      = A6 ) ).

% mult.comm_neutral
thf(fact_839_mult_Ocomm__neutral,axiom,
    ! [A6: complex] :
      ( ( times_times_complex @ A6 @ one_one_complex )
      = A6 ) ).

% mult.comm_neutral
thf(fact_840_vector__space__over__itself_Ovector__space__assms_I4_J,axiom,
    ! [X: complex] :
      ( ( times_times_complex @ one_one_complex @ X )
      = X ) ).

% vector_space_over_itself.vector_space_assms(4)
thf(fact_841_Linear__Algebra__Complements_Osmult__one,axiom,
    ! [A: mat_nat] :
      ( ( smult_mat_nat @ one_one_nat @ A )
      = A ) ).

% Linear_Algebra_Complements.smult_one
thf(fact_842_Linear__Algebra__Complements_Osmult__one,axiom,
    ! [A: mat_complex] :
      ( ( smult_mat_complex @ one_one_complex @ A )
      = A ) ).

% Linear_Algebra_Complements.smult_one
thf(fact_843_mult__cancel__right2,axiom,
    ! [A6: complex,C3: complex] :
      ( ( ( times_times_complex @ A6 @ C3 )
        = C3 )
      = ( ( C3 = zero_zero_complex )
        | ( A6 = one_one_complex ) ) ) ).

% mult_cancel_right2
thf(fact_844_mult__cancel__right1,axiom,
    ! [C3: complex,B6: complex] :
      ( ( C3
        = ( times_times_complex @ B6 @ C3 ) )
      = ( ( C3 = zero_zero_complex )
        | ( B6 = one_one_complex ) ) ) ).

% mult_cancel_right1
thf(fact_845_mult__cancel__left2,axiom,
    ! [C3: complex,A6: complex] :
      ( ( ( times_times_complex @ C3 @ A6 )
        = C3 )
      = ( ( C3 = zero_zero_complex )
        | ( A6 = one_one_complex ) ) ) ).

% mult_cancel_left2
thf(fact_846_mult__cancel__left1,axiom,
    ! [C3: complex,B6: complex] :
      ( ( C3
        = ( times_times_complex @ C3 @ B6 ) )
      = ( ( C3 = zero_zero_complex )
        | ( B6 = one_one_complex ) ) ) ).

% mult_cancel_left1
thf(fact_847_rel__simps_I69_J,axiom,
    ~ ( ord_less_nat @ one_one_nat @ zero_zero_nat ) ).

% rel_simps(69)
thf(fact_848_rel__simps_I68_J,axiom,
    ord_less_nat @ zero_zero_nat @ one_one_nat ).

% rel_simps(68)
thf(fact_849_zero__less__one__class_Ozero__less__one,axiom,
    ord_less_nat @ zero_zero_nat @ one_one_nat ).

% zero_less_one_class.zero_less_one
thf(fact_850_less__1__mult,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ one_one_nat @ M2 )
     => ( ( ord_less_nat @ one_one_nat @ N )
       => ( ord_less_nat @ one_one_nat @ ( times_times_nat @ M2 @ N ) ) ) ) ).

% less_1_mult
thf(fact_851_add__mono1,axiom,
    ! [A6: nat,B6: nat] :
      ( ( ord_less_nat @ A6 @ B6 )
     => ( ord_less_nat @ ( plus_plus_nat @ A6 @ one_one_nat ) @ ( plus_plus_nat @ B6 @ one_one_nat ) ) ) ).

% add_mono1
thf(fact_852_less__add__one,axiom,
    ! [A6: nat] : ( ord_less_nat @ A6 @ ( plus_plus_nat @ A6 @ one_one_nat ) ) ).

% less_add_one
thf(fact_853_mult__minus1__right,axiom,
    ! [Z4: complex] :
      ( ( times_times_complex @ Z4 @ ( uminus1482373934393186551omplex @ one_one_complex ) )
      = ( uminus1482373934393186551omplex @ Z4 ) ) ).

% mult_minus1_right
thf(fact_854_mult__minus1,axiom,
    ! [Z4: complex] :
      ( ( times_times_complex @ ( uminus1482373934393186551omplex @ one_one_complex ) @ Z4 )
      = ( uminus1482373934393186551omplex @ Z4 ) ) ).

% mult_minus1
thf(fact_855_square__eq__1__iff,axiom,
    ! [X: complex] :
      ( ( ( times_times_complex @ X @ X )
        = one_one_complex )
      = ( ( X = one_one_complex )
        | ( X
          = ( uminus1482373934393186551omplex @ one_one_complex ) ) ) ) ).

% square_eq_1_iff
thf(fact_856_less__one,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ N @ one_one_nat )
      = ( N = zero_zero_nat ) ) ).

% less_one
thf(fact_857_pivot__funD_I4_J,axiom,
    ! [A: mat_nat,Nr: nat,F: nat > nat,Nc: nat,I4: nat] :
      ( ( ( dim_row_nat @ A )
        = Nr )
     => ( ( gauss_8416567519840421984un_nat @ A @ F @ Nc )
       => ( ( ord_less_nat @ I4 @ Nr )
         => ( ( ord_less_nat @ ( F @ I4 ) @ Nc )
           => ( ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I4 @ ( F @ I4 ) ) )
              = one_one_nat ) ) ) ) ) ).

% pivot_funD(4)
thf(fact_858_pivot__funD_I4_J,axiom,
    ! [A: mat_complex,Nr: nat,F: nat > nat,Nc: nat,I4: nat] :
      ( ( ( dim_row_complex @ A )
        = Nr )
     => ( ( gauss_2609248829700396350omplex @ A @ F @ Nc )
       => ( ( ord_less_nat @ I4 @ Nr )
         => ( ( ord_less_nat @ ( F @ I4 ) @ Nc )
           => ( ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I4 @ ( F @ I4 ) ) )
              = one_one_complex ) ) ) ) ) ).

% pivot_funD(4)
thf(fact_859_zero__less__two,axiom,
    ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ one_one_nat @ one_one_nat ) ).

% zero_less_two
thf(fact_860_arith__special_I11_J,axiom,
    ( ( plus_plus_complex @ ( uminus1482373934393186551omplex @ one_one_complex ) @ one_one_complex )
    = zero_zero_complex ) ).

% arith_special(11)
thf(fact_861_arith__special_I10_J,axiom,
    ( ( plus_plus_complex @ one_one_complex @ ( uminus1482373934393186551omplex @ one_one_complex ) )
    = zero_zero_complex ) ).

% arith_special(10)
thf(fact_862_square__diff__one__factored,axiom,
    ! [X: complex] :
      ( ( minus_minus_complex @ ( times_times_complex @ X @ X ) @ one_one_complex )
      = ( times_times_complex @ ( plus_plus_complex @ X @ one_one_complex ) @ ( minus_minus_complex @ X @ one_one_complex ) ) ) ).

% square_diff_one_factored
thf(fact_863_uminus__mat,axiom,
    ! [A: mat_complex,N: nat] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ N @ N ) )
     => ( ( uminus467866341702955550omplex @ A )
        = ( smult_mat_complex @ ( uminus1482373934393186551omplex @ one_one_complex ) @ A ) ) ) ).

% uminus_mat
thf(fact_864_mult__eq__if,axiom,
    ( times_times_nat
    = ( ^ [M: nat,N2: nat] : ( if_nat @ ( M = zero_zero_nat ) @ zero_zero_nat @ ( plus_plus_nat @ N2 @ ( times_times_nat @ ( minus_minus_nat @ M @ one_one_nat ) @ N2 ) ) ) ) ) ).

% mult_eq_if
thf(fact_865_mat__assoc__test_I8_J,axiom,
    ! [A: mat_complex,N: nat,B: mat_complex,C: mat_complex,D2: mat_complex] :
      ( ( member_mat_complex @ A @ ( carrier_mat_complex @ N @ N ) )
     => ( ( member_mat_complex @ B @ ( carrier_mat_complex @ N @ N ) )
       => ( ( member_mat_complex @ C @ ( carrier_mat_complex @ N @ N ) )
         => ( ( member_mat_complex @ D2 @ ( carrier_mat_complex @ N @ N ) )
           => ( ( minus_2412168080157227406omplex @ A @ B )
              = ( plus_p8323303612493835998omplex @ A @ ( smult_mat_complex @ ( uminus1482373934393186551omplex @ one_one_complex ) @ B ) ) ) ) ) ) ) ).

% mat_assoc_test(8)
thf(fact_866_index__mat__swaprows__mat_I1_J,axiom,
    ! [I4: nat,N: nat,J4: nat,K: nat,L: nat] :
      ( ( ord_less_nat @ I4 @ N )
     => ( ( ord_less_nat @ J4 @ N )
       => ( ( ( ( ( K = I4 )
                & ( L = J4 ) )
              | ( ( K = J4 )
                & ( L = I4 ) )
              | ( ( I4 = J4 )
                & ( I4 != K )
                & ( I4 != L ) ) )
           => ( ( index_mat_complex @ ( gauss_8970452565587180529omplex @ N @ K @ L ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = one_one_complex ) )
          & ( ~ ( ( ( K = I4 )
                  & ( L = J4 ) )
                | ( ( K = J4 )
                  & ( L = I4 ) )
                | ( ( I4 = J4 )
                  & ( I4 != K )
                  & ( I4 != L ) ) )
           => ( ( index_mat_complex @ ( gauss_8970452565587180529omplex @ N @ K @ L ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = zero_zero_complex ) ) ) ) ) ).

% index_mat_swaprows_mat(1)
thf(fact_867_index__mat__swaprows__mat_I1_J,axiom,
    ! [I4: nat,N: nat,J4: nat,K: nat,L: nat] :
      ( ( ord_less_nat @ I4 @ N )
     => ( ( ord_less_nat @ J4 @ N )
       => ( ( ( ( ( K = I4 )
                & ( L = J4 ) )
              | ( ( K = J4 )
                & ( L = I4 ) )
              | ( ( I4 = J4 )
                & ( I4 != K )
                & ( I4 != L ) ) )
           => ( ( index_mat_nat @ ( gauss_4919907329869174035at_nat @ N @ K @ L ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = one_one_nat ) )
          & ( ~ ( ( ( K = I4 )
                  & ( L = J4 ) )
                | ( ( K = J4 )
                  & ( L = I4 ) )
                | ( ( I4 = J4 )
                  & ( I4 != K )
                  & ( I4 != L ) ) )
           => ( ( index_mat_nat @ ( gauss_4919907329869174035at_nat @ N @ K @ L ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
              = zero_zero_nat ) ) ) ) ) ).

% index_mat_swaprows_mat(1)
thf(fact_868_mult__if__delta,axiom,
    ! [P: $o,Q3: nat] :
      ( ( P
       => ( ( times_times_nat @ ( if_nat @ P @ one_one_nat @ zero_zero_nat ) @ Q3 )
          = Q3 ) )
      & ( ~ P
       => ( ( times_times_nat @ ( if_nat @ P @ one_one_nat @ zero_zero_nat ) @ Q3 )
          = zero_zero_nat ) ) ) ).

% mult_if_delta
thf(fact_869_mult__if__delta,axiom,
    ! [P: $o,Q3: complex] :
      ( ( P
       => ( ( times_times_complex @ ( if_complex @ P @ one_one_complex @ zero_zero_complex ) @ Q3 )
          = Q3 ) )
      & ( ~ P
       => ( ( times_times_complex @ ( if_complex @ P @ one_one_complex @ zero_zero_complex ) @ Q3 )
          = zero_zero_complex ) ) ) ).

% mult_if_delta
thf(fact_870_step__3__a_Oinduct,axiom,
    ! [P: nat > nat > mat_complex > $o,A0: nat,A12: nat,A22: mat_complex] :
      ( ! [J2: nat,X_1: mat_complex] : ( P @ zero_zero_nat @ J2 @ X_1 )
     => ( ! [I2: nat,J2: nat,A10: mat_complex] :
            ( ! [Xa: mat_complex] :
                ( ( ( ( ( ( index_mat_complex @ A10 @ ( product_Pair_nat_nat @ I2 @ ( plus_plus_nat @ I2 @ one_one_nat ) ) )
                        = one_one_complex )
                      & ( ( index_mat_complex @ A10 @ ( product_Pair_nat_nat @ I2 @ J2 ) )
                       != zero_zero_complex ) )
                   => ( Xa
                      = ( column6029646570091773654omplex @ ( uminus1482373934393186551omplex @ ( index_mat_complex @ A10 @ ( product_Pair_nat_nat @ I2 @ J2 ) ) ) @ ( suc @ I2 ) @ J2 @ A10 ) ) )
                  & ( ~ ( ( ( index_mat_complex @ A10 @ ( product_Pair_nat_nat @ I2 @ ( plus_plus_nat @ I2 @ one_one_nat ) ) )
                          = one_one_complex )
                        & ( ( index_mat_complex @ A10 @ ( product_Pair_nat_nat @ I2 @ J2 ) )
                         != zero_zero_complex ) )
                   => ( Xa = A10 ) ) )
               => ( P @ I2 @ J2 @ Xa ) )
           => ( P @ ( suc @ I2 ) @ J2 @ A10 ) )
       => ( P @ A0 @ A12 @ A22 ) ) ) ).

% step_3_a.induct
thf(fact_871_index__mat__addrow__mat_I1_J,axiom,
    ! [I4: nat,N: nat,J4: nat,A6: complex,K: nat,L: nat] :
      ( ( ord_less_nat @ I4 @ N )
     => ( ( ord_less_nat @ J4 @ N )
       => ( ( index_mat_complex @ ( gauss_947198734564870628omplex @ N @ A6 @ K @ L ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( if_complex_complex
            @ ( ( K = I4 )
              & ( L = J4 ) )
            @ ( plus_plus_complex @ A6 )
            @ id_complex
            @ ( if_complex @ ( I4 = J4 ) @ one_one_complex @ zero_zero_complex ) ) ) ) ) ).

% index_mat_addrow_mat(1)
thf(fact_872_index__mat__addrow__mat_I1_J,axiom,
    ! [I4: nat,N: nat,J4: nat,A6: nat,K: nat,L: nat] :
      ( ( ord_less_nat @ I4 @ N )
     => ( ( ord_less_nat @ J4 @ N )
       => ( ( index_mat_nat @ ( gauss_6496870380031412486at_nat @ N @ A6 @ K @ L ) @ ( product_Pair_nat_nat @ I4 @ J4 ) )
          = ( if_nat_nat
            @ ( ( K = I4 )
              & ( L = J4 ) )
            @ ( plus_plus_nat @ A6 )
            @ id_nat
            @ ( if_nat @ ( I4 = J4 ) @ one_one_nat @ zero_zero_nat ) ) ) ) ) ).

% index_mat_addrow_mat(1)
thf(fact_873_Suc__eq__plus1,axiom,
    ( suc
    = ( ^ [N2: nat] : ( plus_plus_nat @ N2 @ one_one_nat ) ) ) ).

% Suc_eq_plus1
thf(fact_874_plus__1__eq__Suc,axiom,
    ( ( plus_plus_nat @ one_one_nat )
    = suc ) ).

% plus_1_eq_Suc
thf(fact_875_Suc__eq__plus1__left,axiom,
    ( suc
    = ( plus_plus_nat @ one_one_nat ) ) ).

% Suc_eq_plus1_left
thf(fact_876_semiring__norm_I163_J,axiom,
    ! [M2: nat,N: nat] :
      ( ( plus_plus_nat @ ( suc @ M2 ) @ N )
      = ( suc @ ( plus_plus_nat @ M2 @ N ) ) ) ).

% semiring_norm(163)
thf(fact_877_add__Suc__shift,axiom,
    ! [M2: nat,N: nat] :
      ( ( plus_plus_nat @ ( suc @ M2 ) @ N )
      = ( plus_plus_nat @ M2 @ ( suc @ N ) ) ) ).

% add_Suc_shift
thf(fact_878_add__Suc__right,axiom,
    ! [M2: nat,N: nat] :
      ( ( plus_plus_nat @ M2 @ ( suc @ N ) )
      = ( suc @ ( plus_plus_nat @ M2 @ N ) ) ) ).

% add_Suc_right
thf(fact_879_nat__arith_Osuc1,axiom,
    ! [A: nat,K: nat,A6: nat] :
      ( ( A
        = ( plus_plus_nat @ K @ A6 ) )
     => ( ( suc @ A )
        = ( plus_plus_nat @ K @ ( suc @ A6 ) ) ) ) ).

% nat_arith.suc1
thf(fact_880_unit__vecs__last_Oinduct,axiom,
    ! [P: nat > nat > $o,A0: nat,A12: nat] :
      ( ! [N3: nat] : ( P @ N3 @ zero_zero_nat )
     => ( ! [N3: nat,I2: nat] :
            ( ( P @ N3 @ I2 )
           => ( P @ N3 @ ( suc @ I2 ) ) )
       => ( P @ A0 @ A12 ) ) ) ).

% unit_vecs_last.induct
thf(fact_881_list__decode_Ocases,axiom,
    ! [X: nat] :
      ( ( X != zero_zero_nat )
     => ~ ! [N3: nat] :
            ( X
           != ( suc @ N3 ) ) ) ).

% list_decode.cases
thf(fact_882_not__less__less__Suc__eq,axiom,
    ! [N: nat,M2: nat] :
      ( ~ ( ord_less_nat @ N @ M2 )
     => ( ( ord_less_nat @ N @ ( suc @ M2 ) )
        = ( N = M2 ) ) ) ).

% not_less_less_Suc_eq
thf(fact_883_strict__inc__induct,axiom,
    ! [I4: nat,J4: nat,P: nat > $o] :
      ( ( ord_less_nat @ I4 @ J4 )
     => ( ! [I2: nat] :
            ( ( J4
              = ( suc @ I2 ) )
           => ( P @ I2 ) )
       => ( ! [I2: nat] :
              ( ( ord_less_nat @ I2 @ J4 )
             => ( ( P @ ( suc @ I2 ) )
               => ( P @ I2 ) ) )
         => ( P @ I4 ) ) ) ) ).

% strict_inc_induct
thf(fact_884_less__Suc__induct,axiom,
    ! [I4: nat,J4: nat,P: nat > nat > $o] :
      ( ( ord_less_nat @ I4 @ J4 )
     => ( ! [I2: nat] : ( P @ I2 @ ( suc @ I2 ) )
       => ( ! [I2: nat,J2: nat,K3: nat] :
              ( ( ord_less_nat @ I2 @ J2 )
             => ( ( ord_less_nat @ J2 @ K3 )
               => ( ( P @ I2 @ J2 )
                 => ( ( P @ J2 @ K3 )
                   => ( P @ I2 @ K3 ) ) ) ) )
         => ( P @ I4 @ J4 ) ) ) ) ).

% less_Suc_induct
thf(fact_885_less__trans__Suc,axiom,
    ! [I4: nat,J4: nat,K: nat] :
      ( ( ord_less_nat @ I4 @ J4 )
     => ( ( ord_less_nat @ J4 @ K )
       => ( ord_less_nat @ ( suc @ I4 ) @ K ) ) ) ).

% less_trans_Suc
thf(fact_886_Suc__less__SucD,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ ( suc @ M2 ) @ ( suc @ N ) )
     => ( ord_less_nat @ M2 @ N ) ) ).

% Suc_less_SucD
thf(fact_887_less__antisym,axiom,
    ! [N: nat,M2: nat] :
      ( ~ ( ord_less_nat @ N @ M2 )
     => ( ( ord_less_nat @ N @ ( suc @ M2 ) )
       => ( M2 = N ) ) ) ).

% less_antisym
thf(fact_888_Suc__less__eq2,axiom,
    ! [N: nat,M2: nat] :
      ( ( ord_less_nat @ ( suc @ N ) @ M2 )
      = ( ? [M4: nat] :
            ( ( M2
              = ( suc @ M4 ) )
            & ( ord_less_nat @ N @ M4 ) ) ) ) ).

% Suc_less_eq2
thf(fact_889_All__less__Suc,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ! [I: nat] :
            ( ( ord_less_nat @ I @ ( suc @ N ) )
           => ( P @ I ) ) )
      = ( ( P @ N )
        & ! [I: nat] :
            ( ( ord_less_nat @ I @ N )
           => ( P @ I ) ) ) ) ).

% All_less_Suc
thf(fact_890_not__less__eq,axiom,
    ! [M2: nat,N: nat] :
      ( ( ~ ( ord_less_nat @ M2 @ N ) )
      = ( ord_less_nat @ N @ ( suc @ M2 ) ) ) ).

% not_less_eq
thf(fact_891_less__Suc__eq,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ M2 @ ( suc @ N ) )
      = ( ( ord_less_nat @ M2 @ N )
        | ( M2 = N ) ) ) ).

% less_Suc_eq
thf(fact_892_Suc__less__eq,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ ( suc @ M2 ) @ ( suc @ N ) )
      = ( ord_less_nat @ M2 @ N ) ) ).

% Suc_less_eq
thf(fact_893_Ex__less__Suc,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ? [I: nat] :
            ( ( ord_less_nat @ I @ ( suc @ N ) )
            & ( P @ I ) ) )
      = ( ( P @ N )
        | ? [I: nat] :
            ( ( ord_less_nat @ I @ N )
            & ( P @ I ) ) ) ) ).

% Ex_less_Suc
thf(fact_894_less__SucI,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ M2 @ N )
     => ( ord_less_nat @ M2 @ ( suc @ N ) ) ) ).

% less_SucI
thf(fact_895_less__SucE,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ M2 @ ( suc @ N ) )
     => ( ~ ( ord_less_nat @ M2 @ N )
       => ( M2 = N ) ) ) ).

% less_SucE
thf(fact_896_Suc__lessI,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ M2 @ N )
     => ( ( ( suc @ M2 )
         != N )
       => ( ord_less_nat @ ( suc @ M2 ) @ N ) ) ) ).

% Suc_lessI
thf(fact_897_Suc__lessE,axiom,
    ! [I4: nat,K: nat] :
      ( ( ord_less_nat @ ( suc @ I4 ) @ K )
     => ~ ! [J2: nat] :
            ( ( ord_less_nat @ I4 @ J2 )
           => ( K
             != ( suc @ J2 ) ) ) ) ).

% Suc_lessE
thf(fact_898_Suc__lessD,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ ( suc @ M2 ) @ N )
     => ( ord_less_nat @ M2 @ N ) ) ).

% Suc_lessD
thf(fact_899_Suc__mono,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ M2 @ N )
     => ( ord_less_nat @ ( suc @ M2 ) @ ( suc @ N ) ) ) ).

% Suc_mono
thf(fact_900_lessI,axiom,
    ! [N: nat] : ( ord_less_nat @ N @ ( suc @ N ) ) ).

% lessI
thf(fact_901_Nat_OlessE,axiom,
    ! [I4: nat,K: nat] :
      ( ( ord_less_nat @ I4 @ K )
     => ( ( K
         != ( suc @ I4 ) )
       => ~ ! [J2: nat] :
              ( ( ord_less_nat @ I4 @ J2 )
             => ( K
               != ( suc @ J2 ) ) ) ) ) ).

% Nat.lessE
thf(fact_902_lift__Suc__mono__less__iff,axiom,
    ! [F: nat > nat,N: nat,M2: nat] :
      ( ! [N3: nat] : ( ord_less_nat @ ( F @ N3 ) @ ( F @ ( suc @ N3 ) ) )
     => ( ( ord_less_nat @ ( F @ N ) @ ( F @ M2 ) )
        = ( ord_less_nat @ N @ M2 ) ) ) ).

% lift_Suc_mono_less_iff
thf(fact_903_lift__Suc__mono__less,axiom,
    ! [F: nat > nat,N: nat,N4: nat] :
      ( ! [N3: nat] : ( ord_less_nat @ ( F @ N3 ) @ ( F @ ( suc @ N3 ) ) )
     => ( ( ord_less_nat @ N @ N4 )
       => ( ord_less_nat @ ( F @ N ) @ ( F @ N4 ) ) ) ) ).

% lift_Suc_mono_less
thf(fact_904_less__Suc0,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ N @ ( suc @ zero_zero_nat ) )
      = ( N = zero_zero_nat ) ) ).

% less_Suc0
thf(fact_905_Ex__less__Suc2,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ? [I: nat] :
            ( ( ord_less_nat @ I @ ( suc @ N ) )
            & ( P @ I ) ) )
      = ( ( P @ zero_zero_nat )
        | ? [I: nat] :
            ( ( ord_less_nat @ I @ N )
            & ( P @ ( suc @ I ) ) ) ) ) ).

% Ex_less_Suc2
thf(fact_906_gr0__conv__Suc,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
      = ( ? [M: nat] :
            ( N
            = ( suc @ M ) ) ) ) ).

% gr0_conv_Suc
thf(fact_907_All__less__Suc2,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ! [I: nat] :
            ( ( ord_less_nat @ I @ ( suc @ N ) )
           => ( P @ I ) ) )
      = ( ( P @ zero_zero_nat )
        & ! [I: nat] :
            ( ( ord_less_nat @ I @ N )
           => ( P @ ( suc @ I ) ) ) ) ) ).

% All_less_Suc2
thf(fact_908_zero__less__Suc,axiom,
    ! [N: nat] : ( ord_less_nat @ zero_zero_nat @ ( suc @ N ) ) ).

% zero_less_Suc
thf(fact_909_gr0__implies__Suc,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ? [M5: nat] :
          ( N
          = ( suc @ M5 ) ) ) ).

% gr0_implies_Suc
thf(fact_910_less__Suc__eq__0__disj,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ M2 @ ( suc @ N ) )
      = ( ( M2 = zero_zero_nat )
        | ? [J: nat] :
            ( ( M2
              = ( suc @ J ) )
            & ( ord_less_nat @ J @ N ) ) ) ) ).

% less_Suc_eq_0_disj
thf(fact_911_nat__induct__non__zero,axiom,
    ! [N: nat,P: nat > $o] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( P @ one_one_nat )
       => ( ! [N3: nat] :
              ( ( ord_less_nat @ zero_zero_nat @ N3 )
             => ( ( P @ N3 )
               => ( P @ ( suc @ N3 ) ) ) )
         => ( P @ N ) ) ) ) ).

% nat_induct_non_zero
thf(fact_912_add__is__1,axiom,
    ! [M2: nat,N: nat] :
      ( ( ( plus_plus_nat @ M2 @ N )
        = ( suc @ zero_zero_nat ) )
      = ( ( ( M2
            = ( suc @ zero_zero_nat ) )
          & ( N = zero_zero_nat ) )
        | ( ( M2 = zero_zero_nat )
          & ( N
            = ( suc @ zero_zero_nat ) ) ) ) ) ).

% add_is_1
thf(fact_913_one__is__add,axiom,
    ! [M2: nat,N: nat] :
      ( ( ( suc @ zero_zero_nat )
        = ( plus_plus_nat @ M2 @ N ) )
      = ( ( ( M2
            = ( suc @ zero_zero_nat ) )
          & ( N = zero_zero_nat ) )
        | ( ( M2 = zero_zero_nat )
          & ( N
            = ( suc @ zero_zero_nat ) ) ) ) ) ).

% one_is_add
thf(fact_914_less__natE,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ M2 @ N )
     => ~ ! [Q4: nat] :
            ( N
           != ( suc @ ( plus_plus_nat @ M2 @ Q4 ) ) ) ) ).

% less_natE
thf(fact_915_less__add__Suc1,axiom,
    ! [I4: nat,M2: nat] : ( ord_less_nat @ I4 @ ( suc @ ( plus_plus_nat @ I4 @ M2 ) ) ) ).

% less_add_Suc1
thf(fact_916_less__add__Suc2,axiom,
    ! [I4: nat,M2: nat] : ( ord_less_nat @ I4 @ ( suc @ ( plus_plus_nat @ M2 @ I4 ) ) ) ).

% less_add_Suc2
thf(fact_917_less__iff__Suc__add,axiom,
    ( ord_less_nat
    = ( ^ [M: nat,N2: nat] :
        ? [K2: nat] :
          ( N2
          = ( suc @ ( plus_plus_nat @ M @ K2 ) ) ) ) ) ).

% less_iff_Suc_add
thf(fact_918_less__imp__Suc__add,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ M2 @ N )
     => ? [K3: nat] :
          ( N
          = ( suc @ ( plus_plus_nat @ M2 @ K3 ) ) ) ) ).

% less_imp_Suc_add
thf(fact_919_unit__vecs__last_Ocases,axiom,
    ! [X: product_prod_nat_nat] :
      ( ! [N3: nat] :
          ( X
         != ( product_Pair_nat_nat @ N3 @ zero_zero_nat ) )
     => ~ ! [N3: nat,I2: nat] :
            ( X
           != ( product_Pair_nat_nat @ N3 @ ( suc @ I2 ) ) ) ) ).

% unit_vecs_last.cases
thf(fact_920_diff__less__Suc,axiom,
    ! [M2: nat,N: nat] : ( ord_less_nat @ ( minus_minus_nat @ M2 @ N ) @ ( suc @ M2 ) ) ).

% diff_less_Suc
thf(fact_921_Suc__diff__Suc,axiom,
    ! [N: nat,M2: nat] :
      ( ( ord_less_nat @ N @ M2 )
     => ( ( suc @ ( minus_minus_nat @ M2 @ ( suc @ N ) ) )
        = ( minus_minus_nat @ M2 @ N ) ) ) ).

% Suc_diff_Suc
thf(fact_922_Suc__mult__less__cancel1,axiom,
    ! [K: nat,M2: nat,N: nat] :
      ( ( ord_less_nat @ ( times_times_nat @ ( suc @ K ) @ M2 ) @ ( times_times_nat @ ( suc @ K ) @ N ) )
      = ( ord_less_nat @ M2 @ N ) ) ).

% Suc_mult_less_cancel1
thf(fact_923_times__nat_Osimps_I2_J,axiom,
    ! [M2: nat,N: nat] :
      ( ( times_times_nat @ ( suc @ M2 ) @ N )
      = ( plus_plus_nat @ N @ ( times_times_nat @ M2 @ N ) ) ) ).

% times_nat.simps(2)
thf(fact_924_mult__Suc__right,axiom,
    ! [M2: nat,N: nat] :
      ( ( times_times_nat @ M2 @ ( suc @ N ) )
      = ( plus_plus_nat @ M2 @ ( times_times_nat @ M2 @ N ) ) ) ).

% mult_Suc_right
thf(fact_925_Suc__pred,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( suc @ ( minus_minus_nat @ N @ ( suc @ zero_zero_nat ) ) )
        = N ) ) ).

% Suc_pred
thf(fact_926_diff__Suc__less,axiom,
    ! [N: nat,I4: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ord_less_nat @ ( minus_minus_nat @ N @ ( suc @ I4 ) ) @ N ) ) ).

% diff_Suc_less
thf(fact_927_Suc__pred_H,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( N
        = ( suc @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ).

% Suc_pred'
thf(fact_928_Suc__diff__1,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( suc @ ( minus_minus_nat @ N @ one_one_nat ) )
        = N ) ) ).

% Suc_diff_1
thf(fact_929_Suc__diff__eq__diff__pred,axiom,
    ! [N: nat,M2: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( minus_minus_nat @ ( suc @ M2 ) @ N )
        = ( minus_minus_nat @ M2 @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ).

% Suc_diff_eq_diff_pred
thf(fact_930_n__less__n__mult__m,axiom,
    ! [N: nat,M2: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_nat @ ( suc @ zero_zero_nat ) @ M2 )
       => ( ord_less_nat @ N @ ( times_times_nat @ N @ M2 ) ) ) ) ).

% n_less_n_mult_m
thf(fact_931_n__less__m__mult__n,axiom,
    ! [N: nat,M2: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_nat @ ( suc @ zero_zero_nat ) @ M2 )
       => ( ord_less_nat @ N @ ( times_times_nat @ M2 @ N ) ) ) ) ).

% n_less_m_mult_n
thf(fact_932_one__less__mult,axiom,
    ! [N: nat,M2: nat] :
      ( ( ord_less_nat @ ( suc @ zero_zero_nat ) @ N )
     => ( ( ord_less_nat @ ( suc @ zero_zero_nat ) @ M2 )
       => ( ord_less_nat @ ( suc @ zero_zero_nat ) @ ( times_times_nat @ M2 @ N ) ) ) ) ).

% one_less_mult
thf(fact_933_add__eq__if,axiom,
    ( plus_plus_nat
    = ( ^ [M: nat,N2: nat] : ( if_nat @ ( M = zero_zero_nat ) @ N2 @ ( suc @ ( plus_plus_nat @ ( minus_minus_nat @ M @ one_one_nat ) @ N2 ) ) ) ) ) ).

% add_eq_if
thf(fact_934_lookup__other__ev_Oinduct,axiom,
    ! [P: a > nat > mat_a > $o,A0: a,A12: nat,A22: mat_a] :
      ( ! [Ev: a,X_1: mat_a] : ( P @ Ev @ zero_zero_nat @ X_1 )
     => ( ! [Ev: a,I2: nat,A10: mat_a] :
            ( ( ( ( index_mat_a @ A10 @ ( product_Pair_nat_nat @ I2 @ I2 ) )
                = Ev )
             => ( P @ Ev @ I2 @ A10 ) )
           => ( P @ Ev @ ( suc @ I2 ) @ A10 ) )
       => ( P @ A0 @ A12 @ A22 ) ) ) ).

% lookup_other_ev.induct
thf(fact_935_lookup__ev_Oinduct,axiom,
    ! [P: a > nat > mat_a > $o,A0: a,A12: nat,A22: mat_a] :
      ( ! [Ev: a,X_1: mat_a] : ( P @ Ev @ zero_zero_nat @ X_1 )
     => ( ! [Ev: a,I2: nat,A10: mat_a] :
            ( ( ( ( index_mat_a @ A10 @ ( product_Pair_nat_nat @ I2 @ I2 ) )
               != Ev )
             => ( P @ Ev @ I2 @ A10 ) )
           => ( P @ Ev @ ( suc @ I2 ) @ A10 ) )
       => ( P @ A0 @ A12 @ A22 ) ) ) ).

% lookup_ev.induct
thf(fact_936_pivot__positions__main__gen_Oinduct,axiom,
    ! [Nr: nat,Nc: nat,A: mat_a,Zero: a,P: nat > nat > $o,A0: nat,A12: nat] :
      ( ! [I2: nat,J2: nat] :
          ( ( ( ord_less_nat @ I2 @ Nr )
           => ( ( ord_less_nat @ J2 @ Nc )
             => ( ( ( index_mat_a @ A @ ( product_Pair_nat_nat @ I2 @ J2 ) )
                  = Zero )
               => ( P @ I2 @ ( suc @ J2 ) ) ) ) )
         => ( ( ( ord_less_nat @ I2 @ Nr )
             => ( ( ord_less_nat @ J2 @ Nc )
               => ( ( ( index_mat_a @ A @ ( product_Pair_nat_nat @ I2 @ J2 ) )
                   != Zero )
                 => ( P @ ( suc @ I2 ) @ ( suc @ J2 ) ) ) ) )
           => ( P @ I2 @ J2 ) ) )
     => ( P @ A0 @ A12 ) ) ).

% pivot_positions_main_gen.induct
thf(fact_937_pivot__funD_I3_J,axiom,
    ! [A: mat_complex,Nr: nat,F: nat > nat,Nc: nat,I4: nat] :
      ( ( ( dim_row_complex @ A )
        = Nr )
     => ( ( gauss_2609248829700396350omplex @ A @ F @ Nc )
       => ( ( ord_less_nat @ I4 @ Nr )
         => ( ( ord_less_nat @ ( suc @ I4 ) @ Nr )
           => ( ( ord_less_nat @ ( F @ I4 ) @ ( F @ ( suc @ I4 ) ) )
              | ( ( F @ ( suc @ I4 ) )
                = Nc ) ) ) ) ) ) ).

% pivot_funD(3)
thf(fact_938_identify__block_Oinduct,axiom,
    ! [P: mat_nat > nat > $o,A0: mat_nat,A12: nat] :
      ( ! [A10: mat_nat] : ( P @ A10 @ zero_zero_nat )
     => ( ! [A10: mat_nat,I2: nat] :
            ( ( ( ( index_mat_nat @ A10 @ ( product_Pair_nat_nat @ I2 @ ( suc @ I2 ) ) )
                = one_one_nat )
             => ( P @ A10 @ I2 ) )
           => ( P @ A10 @ ( suc @ I2 ) ) )
       => ( P @ A0 @ A12 ) ) ) ).

% identify_block.induct
thf(fact_939_identify__block_Oinduct,axiom,
    ! [P: mat_complex > nat > $o,A0: mat_complex,A12: nat] :
      ( ! [A10: mat_complex] : ( P @ A10 @ zero_zero_nat )
     => ( ! [A10: mat_complex,I2: nat] :
            ( ( ( ( index_mat_complex @ A10 @ ( product_Pair_nat_nat @ I2 @ ( suc @ I2 ) ) )
                = one_one_complex )
             => ( P @ A10 @ I2 ) )
           => ( P @ A10 @ ( suc @ I2 ) ) )
       => ( P @ A0 @ A12 ) ) ) ).

% identify_block.induct
thf(fact_940_fold__atLeastAtMost__nat_Ocases,axiom,
    ! [X: produc4471711990508489141at_nat] :
      ~ ! [F2: nat > nat > nat,A5: nat,B5: nat,Acc: nat] :
          ( X
         != ( produc3209952032786966637at_nat @ F2 @ ( produc487386426758144856at_nat @ A5 @ ( product_Pair_nat_nat @ B5 @ Acc ) ) ) ) ).

% fold_atLeastAtMost_nat.cases
thf(fact_941_all__less__two,axiom,
    ! [P: nat > $o] :
      ( ( ! [I: nat] :
            ( ( ord_less_nat @ I @ ( suc @ ( suc @ zero_zero_nat ) ) )
           => ( P @ I ) ) )
      = ( ( P @ zero_zero_nat )
        & ( P @ ( suc @ zero_zero_nat ) ) ) ) ).

% all_less_two
thf(fact_942_pivot__funI,axiom,
    ! [A: mat_complex,Nr: nat,F: nat > nat,Nc: nat] :
      ( ( ( dim_row_complex @ A )
        = Nr )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ Nr )
           => ( ord_less_eq_nat @ ( F @ I2 ) @ Nc ) )
       => ( ! [I2: nat,J2: nat] :
              ( ( ord_less_nat @ I2 @ Nr )
             => ( ( ord_less_nat @ J2 @ ( F @ I2 ) )
               => ( ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I2 @ J2 ) )
                  = zero_zero_complex ) ) )
         => ( ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ Nr )
               => ( ( ord_less_nat @ ( suc @ I2 ) @ Nr )
                 => ( ( ord_less_nat @ ( F @ I2 ) @ ( F @ ( suc @ I2 ) ) )
                    | ( ( F @ ( suc @ I2 ) )
                      = Nc ) ) ) )
           => ( ! [I2: nat] :
                  ( ( ord_less_nat @ I2 @ Nr )
                 => ( ( ord_less_nat @ ( F @ I2 ) @ Nc )
                   => ( ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I2 @ ( F @ I2 ) ) )
                      = one_one_complex ) ) )
             => ( ! [I2: nat,I5: nat] :
                    ( ( ord_less_nat @ I2 @ Nr )
                   => ( ( ord_less_nat @ ( F @ I2 ) @ Nc )
                     => ( ( ord_less_nat @ I5 @ Nr )
                       => ( ( I5 != I2 )
                         => ( ( index_mat_complex @ A @ ( product_Pair_nat_nat @ I5 @ ( F @ I2 ) ) )
                            = zero_zero_complex ) ) ) ) )
               => ( gauss_2609248829700396350omplex @ A @ F @ Nc ) ) ) ) ) ) ) ).

% pivot_funI
thf(fact_943_pivot__funI,axiom,
    ! [A: mat_nat,Nr: nat,F: nat > nat,Nc: nat] :
      ( ( ( dim_row_nat @ A )
        = Nr )
     => ( ! [I2: nat] :
            ( ( ord_less_nat @ I2 @ Nr )
           => ( ord_less_eq_nat @ ( F @ I2 ) @ Nc ) )
       => ( ! [I2: nat,J2: nat] :
              ( ( ord_less_nat @ I2 @ Nr )
             => ( ( ord_less_nat @ J2 @ ( F @ I2 ) )
               => ( ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I2 @ J2 ) )
                  = zero_zero_nat ) ) )
         => ( ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ Nr )
               => ( ( ord_less_nat @ ( suc @ I2 ) @ Nr )
                 => ( ( ord_less_nat @ ( F @ I2 ) @ ( F @ ( suc @ I2 ) ) )
                    | ( ( F @ ( suc @ I2 ) )
                      = Nc ) ) ) )
           => ( ! [I2: nat] :
                  ( ( ord_less_nat @ I2 @ Nr )
                 => ( ( ord_less_nat @ ( F @ I2 ) @ Nc )
                   => ( ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I2 @ ( F @ I2 ) ) )
                      = one_one_nat ) ) )
             => ( ! [I2: nat,I5: nat] :
                    ( ( ord_less_nat @ I2 @ Nr )
                   => ( ( ord_less_nat @ ( F @ I2 ) @ Nc )
                     => ( ( ord_less_nat @ I5 @ Nr )
                       => ( ( I5 != I2 )
                         => ( ( index_mat_nat @ A @ ( product_Pair_nat_nat @ I5 @ ( F @ I2 ) ) )
                            = zero_zero_nat ) ) ) ) )
               => ( gauss_8416567519840421984un_nat @ A @ F @ Nc ) ) ) ) ) ) ) ).

% pivot_funI
thf(fact_944_permutation__insert__expand,axiom,
    ( permut138581522262023397omplex
    = ( ^ [I: complex,J: nat,P3: complex > nat,I6: complex] : ( if_nat @ ( ord_less_complex @ I6 @ I ) @ ( if_nat @ ( ord_less_nat @ ( P3 @ I6 ) @ J ) @ ( P3 @ I6 ) @ ( suc @ ( P3 @ I6 ) ) ) @ ( if_nat @ ( I6 = I ) @ J @ ( if_nat @ ( ord_less_nat @ ( P3 @ ( minus_minus_complex @ I6 @ one_one_complex ) ) @ J ) @ ( P3 @ ( minus_minus_complex @ I6 @ one_one_complex ) ) @ ( suc @ ( P3 @ ( minus_minus_complex @ I6 @ one_one_complex ) ) ) ) ) ) ) ) ).

% permutation_insert_expand
thf(fact_945_permutation__insert__expand,axiom,
    ( permut3695043542826343943rt_nat
    = ( ^ [I: nat,J: nat,P3: nat > nat,I6: nat] : ( if_nat @ ( ord_less_nat @ I6 @ I ) @ ( if_nat @ ( ord_less_nat @ ( P3 @ I6 ) @ J ) @ ( P3 @ I6 ) @ ( suc @ ( P3 @ I6 ) ) ) @ ( if_nat @ ( I6 = I ) @ J @ ( if_nat @ ( ord_less_nat @ ( P3 @ ( minus_minus_nat @ I6 @ one_one_nat ) ) @ J ) @ ( P3 @ ( minus_minus_nat @ I6 @ one_one_nat ) ) @ ( suc @ ( P3 @ ( minus_minus_nat @ I6 @ one_one_nat ) ) ) ) ) ) ) ) ).

% permutation_insert_expand
thf(fact_946_less__eq__mat__def,axiom,
    ( ord_le1403324449407493959omplex
    = ( ^ [A8: mat_complex,B8: mat_complex] :
          ( ( ( dim_row_complex @ A8 )
            = ( dim_row_complex @ B8 ) )
          & ( ( dim_col_complex @ A8 )
            = ( dim_col_complex @ B8 ) )
          & ! [I: nat] :
              ( ( ord_less_nat @ I @ ( dim_row_complex @ B8 ) )
             => ! [J: nat] :
                  ( ( ord_less_nat @ J @ ( dim_col_complex @ B8 ) )
                 => ( ord_less_eq_complex @ ( index_mat_complex @ A8 @ ( product_Pair_nat_nat @ I @ J ) ) @ ( index_mat_complex @ B8 @ ( product_Pair_nat_nat @ I @ J ) ) ) ) ) ) ) ) ).

% less_eq_mat_def
thf(fact_947_less__eq__mat__def,axiom,
    ( ord_less_eq_mat_nat
    = ( ^ [A8: mat_nat,B8: mat_nat] :
          ( ( ( dim_row_nat @ A8 )
            = ( dim_row_nat @ B8 ) )
          & ( ( dim_col_nat @ A8 )
            = ( dim_col_nat @ B8 ) )
          & ! [I: nat] :
              ( ( ord_less_nat @ I @ ( dim_row_nat @ B8 ) )
             => ! [J: nat] :
                  ( ( ord_less_nat @ J @ ( dim_col_nat @ B8 ) )
                 => ( ord_less_eq_nat @ ( index_mat_nat @ A8 @ ( product_Pair_nat_nat @ I @ J ) ) @ ( index_mat_nat @ B8 @ ( product_Pair_nat_nat @ I @ J ) ) ) ) ) ) ) ) ).

% less_eq_mat_def
thf(fact_948_inf__pigeonhole__principle,axiom,
    ! [N: nat,F: nat > nat > $o] :
      ( ! [K3: nat] :
        ? [I7: nat] :
          ( ( ord_less_nat @ I7 @ N )
          & ( F @ K3 @ I7 ) )
     => ? [I2: nat] :
          ( ( ord_less_nat @ I2 @ N )
          & ! [K4: nat] :
            ? [K5: nat] :
              ( ( ord_less_eq_nat @ K4 @ K5 )
              & ( F @ K5 @ I2 ) ) ) ) ).

% inf_pigeonhole_principle
thf(fact_949_prod__decode__aux_Oinduct,axiom,
    ! [P: nat > nat > $o,A0: nat,A12: nat] :
      ( ! [K3: nat,M5: nat] :
          ( ( ~ ( ord_less_eq_nat @ M5 @ K3 )
           => ( P @ ( suc @ K3 ) @ ( minus_minus_nat @ M5 @ ( suc @ K3 ) ) ) )
         => ( P @ K3 @ M5 ) )
     => ( P @ A0 @ A12 ) ) ).

% prod_decode_aux.induct
thf(fact_950_le__minus__iff,axiom,
    ! [A6: complex,B6: complex] :
      ( ( ord_less_eq_complex @ A6 @ ( uminus1482373934393186551omplex @ B6 ) )
      = ( ord_less_eq_complex @ B6 @ ( uminus1482373934393186551omplex @ A6 ) ) ) ).

% le_minus_iff
thf(fact_951_minus__le__iff,axiom,
    ! [A6: complex,B6: complex] :
      ( ( ord_less_eq_complex @ ( uminus1482373934393186551omplex @ A6 ) @ B6 )
      = ( ord_less_eq_complex @ ( uminus1482373934393186551omplex @ B6 ) @ A6 ) ) ).

% minus_le_iff
thf(fact_952_le__imp__neg__le,axiom,
    ! [A6: complex,B6: complex] :
      ( ( ord_less_eq_complex @ A6 @ B6 )
     => ( ord_less_eq_complex @ ( uminus1482373934393186551omplex @ B6 ) @ ( uminus1482373934393186551omplex @ A6 ) ) ) ).

% le_imp_neg_le
thf(fact_953_neg__le__iff__le,axiom,
    ! [B6: complex,A6: complex] :
      ( ( ord_less_eq_complex @ ( uminus1482373934393186551omplex @ B6 ) @ ( uminus1482373934393186551omplex @ A6 ) )
      = ( ord_less_eq_complex @ A6 @ B6 ) ) ).

% neg_le_iff_le
thf(fact_954_le__simps_I3_J,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( suc @ M2 ) @ N )
      = ( ord_less_nat @ M2 @ N ) ) ).

% le_simps(3)
thf(fact_955_le__simps_I2_J,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ M2 @ ( suc @ N ) )
      = ( ord_less_eq_nat @ M2 @ N ) ) ).

% le_simps(2)
thf(fact_956_not__less__simps_I2_J,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_eq_nat @ M2 @ N )
     => ( ( ord_less_nat @ N @ ( suc @ M2 ) )
        = ( N = M2 ) ) ) ).

% not_less_simps(2)
thf(fact_957_Suc__leI,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ M2 @ N )
     => ( ord_less_eq_nat @ ( suc @ M2 ) @ N ) ) ).

% Suc_leI
thf(fact_958_dec__induct,axiom,
    ! [I4: nat,J4: nat,P: nat > $o] :
      ( ( ord_less_eq_nat @ I4 @ J4 )
     => ( ( P @ I4 )
       => ( ! [N3: nat] :
              ( ( ord_less_eq_nat @ I4 @ N3 )
             => ( ( ord_less_nat @ N3 @ J4 )
               => ( ( P @ N3 )
                 => ( P @ ( suc @ N3 ) ) ) ) )
         => ( P @ J4 ) ) ) ) ).

% dec_induct
thf(fact_959_inc__induct,axiom,
    ! [I4: nat,J4: nat,P: nat > $o] :
      ( ( ord_less_eq_nat @ I4 @ J4 )
     => ( ( P @ J4 )
       => ( ! [N3: nat] :
              ( ( ord_less_eq_nat @ I4 @ N3 )
             => ( ( ord_less_nat @ N3 @ J4 )
               => ( ( P @ ( suc @ N3 ) )
                 => ( P @ N3 ) ) ) )
         => ( P @ I4 ) ) ) ) ).

% inc_induct
thf(fact_960_Suc__le__lessD,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( suc @ M2 ) @ N )
     => ( ord_less_nat @ M2 @ N ) ) ).

% Suc_le_lessD
thf(fact_961_less__eq__Suc__le,axiom,
    ( ord_less_nat
    = ( ^ [N2: nat] : ( ord_less_eq_nat @ ( suc @ N2 ) ) ) ) ).

% less_eq_Suc_le
thf(fact_962_le__imp__less__Suc,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_eq_nat @ M2 @ N )
     => ( ord_less_nat @ M2 @ ( suc @ N ) ) ) ).

% le_imp_less_Suc
thf(fact_963_mult__sign__intros_I4_J,axiom,
    ! [A6: complex,B6: complex] :
      ( ( ord_less_eq_complex @ A6 @ zero_zero_complex )
     => ( ( ord_less_eq_complex @ B6 @ zero_zero_complex )
       => ( ord_less_eq_complex @ zero_zero_complex @ ( times_times_complex @ A6 @ B6 ) ) ) ) ).

% mult_sign_intros(4)
thf(fact_964_mult__sign__intros_I3_J,axiom,
    ! [A6: complex,B6: complex] :
      ( ( ord_less_eq_complex @ A6 @ zero_zero_complex )
     => ( ( ord_less_eq_complex @ zero_zero_complex @ B6 )
       => ( ord_less_eq_complex @ ( times_times_complex @ A6 @ B6 ) @ zero_zero_complex ) ) ) ).

% mult_sign_intros(3)
thf(fact_965_mult__sign__intros_I3_J,axiom,
    ! [A6: nat,B6: nat] :
      ( ( ord_less_eq_nat @ A6 @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ B6 )
       => ( ord_less_eq_nat @ ( times_times_nat @ A6 @ B6 ) @ zero_zero_nat ) ) ) ).

% mult_sign_intros(3)
thf(fact_966_mult__sign__intros_I2_J,axiom,
    ! [A6: complex,B6: complex] :
      ( ( ord_less_eq_complex @ zero_zero_complex @ A6 )
     => ( ( ord_less_eq_complex @ B6 @ zero_zero_complex )
       => ( ord_less_eq_complex @ ( times_times_complex @ A6 @ B6 ) @ zero_zero_complex ) ) ) ).

% mult_sign_intros(2)
thf(fact_967_mult__sign__intros_I2_J,axiom,
    ! [A6: nat,B6: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A6 )
     => ( ( ord_less_eq_nat @ B6 @ zero_zero_nat )
       => ( ord_less_eq_nat @ ( times_times_nat @ A6 @ B6 ) @ zero_zero_nat ) ) ) ).

% mult_sign_intros(2)
thf(fact_968_mult__sign__intros_I1_J,axiom,
    ! [A6: complex,B6: complex] :
      ( ( ord_less_eq_complex @ zero_zero_complex @ A6 )
     => ( ( ord_less_eq_complex @ zero_zero_complex @ B6 )
       => ( ord_less_eq_complex @ zero_zero_complex @ ( times_times_complex @ A6 @ B6 ) ) ) ) ).

% mult_sign_intros(1)
thf(fact_969_mult__sign__intros_I1_J,axiom,
    ! [A6: nat,B6: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A6 )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ B6 )
       => ( ord_less_eq_nat @ zero_zero_nat @ ( times_times_nat @ A6 @ B6 ) ) ) ) ).

% mult_sign_intros(1)
thf(fact_970_mult__mono,axiom,
    ! [A6: complex,B6: complex,C3: complex,D3: complex] :
      ( ( ord_less_eq_complex @ A6 @ B6 )
     => ( ( ord_less_eq_complex @ C3 @ D3 )
       => ( ( ord_less_eq_complex @ zero_zero_complex @ B6 )
         => ( ( ord_less_eq_complex @ zero_zero_complex @ C3 )
           => ( ord_less_eq_complex @ ( times_times_complex @ A6 @ C3 ) @ ( times_times_complex @ B6 @ D3 ) ) ) ) ) ) ).

% mult_mono
thf(fact_971_mult__mono,axiom,
    ! [A6: nat,B6: nat,C3: nat,D3: nat] :
      ( ( ord_less_eq_nat @ A6 @ B6 )
     => ( ( ord_less_eq_nat @ C3 @ D3 )
       => ( ( ord_less_eq_nat @ zero_zero_nat @ B6 )
         => ( ( ord_less_eq_nat @ zero_zero_nat @ C3 )
           => ( ord_less_eq_nat @ ( times_times_nat @ A6 @ C3 ) @ ( times_times_nat @ B6 @ D3 ) ) ) ) ) ) ).

% mult_mono
thf(fact_972_mult__mono_H,axiom,
    ! [A6: complex,B6: complex,C3: complex,D3: complex] :
      ( ( ord_less_eq_complex @ A6 @ B6 )
     => ( ( ord_less_eq_complex @ C3 @ D3 )
       => ( ( ord_less_eq_complex @ zero_zero_complex @ A6 )
         => ( ( ord_less_eq_complex @ zero_zero_complex @ C3 )
           => ( ord_less_eq_complex @ ( times_times_complex @ A6 @ C3 ) @ ( times_times_complex @ B6 @ D3 ) ) ) ) ) ) ).

% mult_mono'
thf(fact_973_mult__mono_H,axiom,
    ! [A6: nat,B6: nat,C3: nat,D3: nat] :
      ( ( ord_less_eq_nat @ A6 @ B6 )
     => ( ( ord_less_eq_nat @ C3 @ D3 )
       => ( ( ord_less_eq_nat @ zero_zero_nat @ A6 )
         => ( ( ord_less_eq_nat @ zero_zero_nat @ C3 )
           => ( ord_less_eq_nat @ ( times_times_nat @ A6 @ C3 ) @ ( times_times_nat @ B6 @ D3 ) ) ) ) ) ) ).

% mult_mono'
thf(fact_974_split__mult__pos__le,axiom,
    ! [A6: complex,B6: complex] :
      ( ( ( ( ord_less_eq_complex @ zero_zero_complex @ A6 )
          & ( ord_less_eq_complex @ zero_zero_complex @ B6 ) )
        | ( ( ord_less_eq_complex @ A6 @ zero_zero_complex )
          & ( ord_less_eq_complex @ B6 @ zero_zero_complex ) ) )
     => ( ord_less_eq_complex @ zero_zero_complex @ ( times_times_complex @ A6 @ B6 ) ) ) ).

% split_mult_pos_le
thf(fact_975_mult__left__mono__neg,axiom,
    ! [B6: complex,A6: complex,C3: complex] :
      ( ( ord_less_eq_complex @ B6 @ A6 )
     => ( ( ord_less_eq_complex @ C3 @ zero_zero_complex )
       => ( ord_less_eq_complex @ ( times_times_complex @ C3 @ A6 ) @ ( times_times_complex @ C3 @ B6 ) ) ) ) ).

% mult_left_mono_neg
thf(fact_976_mult__left__mono,axiom,
    ! [A6: complex,B6: complex,C3: complex] :
      ( ( ord_less_eq_complex @ A6 @ B6 )
     => ( ( ord_less_eq_complex @ zero_zero_complex @ C3 )
       => ( ord_less_eq_complex @ ( times_times_complex @ C3 @ A6 ) @ ( times_times_complex @ C3 @ B6 ) ) ) ) ).

% mult_left_mono
thf(fact_977_mult__left__mono,axiom,
    ! [A6: nat,B6: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A6 @ B6 )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ C3 )
       => ( ord_less_eq_nat @ ( times_times_nat @ C3 @ A6 ) @ ( times_times_nat @ C3 @ B6 ) ) ) ) ).

% mult_left_mono
thf(fact_978_mult__right__mono__neg,axiom,
    ! [B6: complex,A6: complex,C3: complex] :
      ( ( ord_less_eq_complex @ B6 @ A6 )
     => ( ( ord_less_eq_complex @ C3 @ zero_zero_complex )
       => ( ord_less_eq_complex @ ( times_times_complex @ A6 @ C3 ) @ ( times_times_complex @ B6 @ C3 ) ) ) ) ).

% mult_right_mono_neg
thf(fact_979_mult__right__mono,axiom,
    ! [A6: complex,B6: complex,C3: complex] :
      ( ( ord_less_eq_complex @ A6 @ B6 )
     => ( ( ord_less_eq_complex @ zero_zero_complex @ C3 )
       => ( ord_less_eq_complex @ ( times_times_complex @ A6 @ C3 ) @ ( times_times_complex @ B6 @ C3 ) ) ) ) ).

% mult_right_mono
thf(fact_980_mult__right__mono,axiom,
    ! [A6: nat,B6: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A6 @ B6 )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ C3 )
       => ( ord_less_eq_nat @ ( times_times_nat @ A6 @ C3 ) @ ( times_times_nat @ B6 @ C3 ) ) ) ) ).

% mult_right_mono
thf(fact_981_split__mult__neg__le,axiom,
    ! [A6: complex,B6: complex] :
      ( ( ( ( ord_less_eq_complex @ zero_zero_complex @ A6 )
          & ( ord_less_eq_complex @ B6 @ zero_zero_complex ) )
        | ( ( ord_less_eq_complex @ A6 @ zero_zero_complex )
          & ( ord_less_eq_complex @ zero_zero_complex @ B6 ) ) )
     => ( ord_less_eq_complex @ ( times_times_complex @ A6 @ B6 ) @ zero_zero_complex ) ) ).

% split_mult_neg_le
thf(fact_982_split__mult__neg__le,axiom,
    ! [A6: nat,B6: nat] :
      ( ( ( ( ord_less_eq_nat @ zero_zero_nat @ A6 )
          & ( ord_less_eq_nat @ B6 @ zero_zero_nat ) )
        | ( ( ord_less_eq_nat @ A6 @ zero_zero_nat )
          & ( ord_less_eq_nat @ zero_zero_nat @ B6 ) ) )
     => ( ord_less_eq_nat @ ( times_times_nat @ A6 @ B6 ) @ zero_zero_nat ) ) ).

% split_mult_neg_le
thf(fact_983_mult__nonneg__nonpos2,axiom,
    ! [A6: complex,B6: complex] :
      ( ( ord_less_eq_complex @ zero_zero_complex @ A6 )
     => ( ( ord_less_eq_complex @ B6 @ zero_zero_complex )
       => ( ord_less_eq_complex @ ( times_times_complex @ B6 @ A6 ) @ zero_zero_complex ) ) ) ).

% mult_nonneg_nonpos2
thf(fact_984_mult__nonneg__nonpos2,axiom,
    ! [A6: nat,B6: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A6 )
     => ( ( ord_less_eq_nat @ B6 @ zero_zero_nat )
       => ( ord_less_eq_nat @ ( times_times_nat @ B6 @ A6 ) @ zero_zero_nat ) ) ) ).

% mult_nonneg_nonpos2
thf(fact_985_ordered__comm__semiring__class_Ocomm__mult__left__mono,axiom,
    ! [A6: complex,B6: complex,C3: complex] :
      ( ( ord_less_eq_complex @ A6 @ B6 )
     => ( ( ord_less_eq_complex @ zero_zero_complex @ C3 )
       => ( ord_less_eq_complex @ ( times_times_complex @ C3 @ A6 ) @ ( times_times_complex @ C3 @ B6 ) ) ) ) ).

% ordered_comm_semiring_class.comm_mult_left_mono
thf(fact_986_ordered__comm__semiring__class_Ocomm__mult__left__mono,axiom,
    ! [A6: nat,B6: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A6 @ B6 )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ C3 )
       => ( ord_less_eq_nat @ ( times_times_nat @ C3 @ A6 ) @ ( times_times_nat @ C3 @ B6 ) ) ) ) ).

% ordered_comm_semiring_class.comm_mult_left_mono
thf(fact_987_le__add__same__cancel2,axiom,
    ! [A6: nat,B6: nat] :
      ( ( ord_less_eq_nat @ A6 @ ( plus_plus_nat @ B6 @ A6 ) )
      = ( ord_less_eq_nat @ zero_zero_nat @ B6 ) ) ).

% le_add_same_cancel2
thf(fact_988_le__add__same__cancel1,axiom,
    ! [A6: nat,B6: nat] :
      ( ( ord_less_eq_nat @ A6 @ ( plus_plus_nat @ A6 @ B6 ) )
      = ( ord_less_eq_nat @ zero_zero_nat @ B6 ) ) ).

% le_add_same_cancel1
thf(fact_989_add__le__same__cancel2,axiom,
    ! [A6: nat,B6: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ A6 @ B6 ) @ B6 )
      = ( ord_less_eq_nat @ A6 @ zero_zero_nat ) ) ).

% add_le_same_cancel2
thf(fact_990_add__le__same__cancel1,axiom,
    ! [B6: nat,A6: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ B6 @ A6 ) @ B6 )
      = ( ord_less_eq_nat @ A6 @ zero_zero_nat ) ) ).

% add_le_same_cancel1
thf(fact_991_add__nonpos__eq__0__iff,axiom,
    ! [X: nat,Y5: nat] :
      ( ( ord_less_eq_nat @ X @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ Y5 @ zero_zero_nat )
       => ( ( ( plus_plus_nat @ X @ Y5 )
            = zero_zero_nat )
          = ( ( X = zero_zero_nat )
            & ( Y5 = zero_zero_nat ) ) ) ) ) ).

% add_nonpos_eq_0_iff
thf(fact_992_add__nonneg__eq__0__iff,axiom,
    ! [X: nat,Y5: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ X )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ Y5 )
       => ( ( ( plus_plus_nat @ X @ Y5 )
            = zero_zero_nat )
          = ( ( X = zero_zero_nat )
            & ( Y5 = zero_zero_nat ) ) ) ) ) ).

% add_nonneg_eq_0_iff
thf(fact_993_add__nonpos__nonpos,axiom,
    ! [A6: nat,B6: nat] :
      ( ( ord_less_eq_nat @ A6 @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ B6 @ zero_zero_nat )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ A6 @ B6 ) @ zero_zero_nat ) ) ) ).

% add_nonpos_nonpos
thf(fact_994_add__nonneg__nonneg,axiom,
    ! [A6: nat,B6: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A6 )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ B6 )
       => ( ord_less_eq_nat @ zero_zero_nat @ ( plus_plus_nat @ A6 @ B6 ) ) ) ) ).

% add_nonneg_nonneg
thf(fact_995_add__increasing2,axiom,
    ! [C3: nat,B6: nat,A6: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ C3 )
     => ( ( ord_less_eq_nat @ B6 @ A6 )
       => ( ord_less_eq_nat @ B6 @ ( plus_plus_nat @ A6 @ C3 ) ) ) ) ).

% add_increasing2
thf(fact_996_add__decreasing2,axiom,
    ! [C3: nat,A6: nat,B6: nat] :
      ( ( ord_less_eq_nat @ C3 @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ A6 @ B6 )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ A6 @ C3 ) @ B6 ) ) ) ).

% add_decreasing2
thf(fact_997_add__increasing,axiom,
    ! [A6: nat,B6: nat,C3: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A6 )
     => ( ( ord_less_eq_nat @ B6 @ C3 )
       => ( ord_less_eq_nat @ B6 @ ( plus_plus_nat @ A6 @ C3 ) ) ) ) ).

% add_increasing
thf(fact_998_add__decreasing,axiom,
    ! [A6: nat,C3: nat,B6: nat] :
      ( ( ord_less_eq_nat @ A6 @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ C3 @ B6 )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ A6 @ C3 ) @ B6 ) ) ) ).

% add_decreasing
thf(fact_999_add__mono__thms__linordered__field_I4_J,axiom,
    ! [I4: nat,J4: nat,K: nat,L: nat] :
      ( ( ( ord_less_eq_nat @ I4 @ J4 )
        & ( ord_less_nat @ K @ L ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I4 @ K ) @ ( plus_plus_nat @ J4 @ L ) ) ) ).

% add_mono_thms_linordered_field(4)
thf(fact_1000_add__mono__thms__linordered__field_I3_J,axiom,
    ! [I4: nat,J4: nat,K: nat,L: nat] :
      ( ( ( ord_less_nat @ I4 @ J4 )
        & ( ord_less_eq_nat @ K @ L ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I4 @ K ) @ ( plus_plus_nat @ J4 @ L ) ) ) ).

% add_mono_thms_linordered_field(3)
thf(fact_1001_add__le__less__mono,axiom,
    ! [A6: nat,B6: nat,C3: nat,D3: nat] :
      ( ( ord_less_eq_nat @ A6 @ B6 )
     => ( ( ord_less_nat @ C3 @ D3 )
       => ( ord_less_nat @ ( plus_plus_nat @ A6 @ C3 ) @ ( plus_plus_nat @ B6 @ D3 ) ) ) ) ).

% add_le_less_mono
thf(fact_1002_add__less__le__mono,axiom,
    ! [A6: nat,B6: nat,C3: nat,D3: nat] :
      ( ( ord_less_nat @ A6 @ B6 )
     => ( ( ord_less_eq_nat @ C3 @ D3 )
       => ( ord_less_nat @ ( plus_plus_nat @ A6 @ C3 ) @ ( plus_plus_nat @ B6 @ D3 ) ) ) ) ).

% add_less_le_mono
thf(fact_1003_neg__0__le__iff__le,axiom,
    ! [A6: complex] :
      ( ( ord_less_eq_complex @ zero_zero_complex @ ( uminus1482373934393186551omplex @ A6 ) )
      = ( ord_less_eq_complex @ A6 @ zero_zero_complex ) ) ).

% neg_0_le_iff_le
thf(fact_1004_neg__le__0__iff__le,axiom,
    ! [A6: complex] :
      ( ( ord_less_eq_complex @ ( uminus1482373934393186551omplex @ A6 ) @ zero_zero_complex )
      = ( ord_less_eq_complex @ zero_zero_complex @ A6 ) ) ).

% neg_le_0_iff_le
thf(fact_1005_ordered__cancel__comm__monoid__diff__class_Ole__imp__diff__is__add,axiom,
    ! [A6: nat,B6: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A6 @ B6 )
     => ( ( ord_less_eq_nat @ A6 @ B6 )
       => ( ( ( minus_minus_nat @ B6 @ A6 )
            = C3 )
          = ( B6
            = ( plus_plus_nat @ C3 @ A6 ) ) ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.le_imp_diff_is_add
thf(fact_1006_ordered__cancel__comm__monoid__diff__class_Oadd__diff__inverse,axiom,
    ! [A6: nat,B6: nat] :
      ( ( ord_less_eq_nat @ A6 @ B6 )
     => ( ( plus_plus_nat @ A6 @ ( minus_minus_nat @ B6 @ A6 ) )
        = B6 ) ) ).

% ordered_cancel_comm_monoid_diff_class.add_diff_inverse
thf(fact_1007_ordered__cancel__comm__monoid__diff__class_Odiff__diff__right,axiom,
    ! [A6: nat,B6: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A6 @ B6 )
     => ( ( minus_minus_nat @ C3 @ ( minus_minus_nat @ B6 @ A6 ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ C3 @ A6 ) @ B6 ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.diff_diff_right
thf(fact_1008_ordered__cancel__comm__monoid__diff__class_Odiff__add__assoc2,axiom,
    ! [A6: nat,B6: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A6 @ B6 )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ B6 @ C3 ) @ A6 )
        = ( plus_plus_nat @ ( minus_minus_nat @ B6 @ A6 ) @ C3 ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.diff_add_assoc2
thf(fact_1009_ordered__cancel__comm__monoid__diff__class_Oadd__diff__assoc2,axiom,
    ! [A6: nat,B6: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A6 @ B6 )
     => ( ( plus_plus_nat @ ( minus_minus_nat @ B6 @ A6 ) @ C3 )
        = ( minus_minus_nat @ ( plus_plus_nat @ B6 @ C3 ) @ A6 ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.add_diff_assoc2
thf(fact_1010_ordered__cancel__comm__monoid__diff__class_Odiff__add__assoc,axiom,
    ! [A6: nat,B6: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A6 @ B6 )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ C3 @ B6 ) @ A6 )
        = ( plus_plus_nat @ C3 @ ( minus_minus_nat @ B6 @ A6 ) ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.diff_add_assoc
thf(fact_1011_ordered__cancel__comm__monoid__diff__class_Oadd__diff__assoc,axiom,
    ! [A6: nat,B6: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A6 @ B6 )
     => ( ( plus_plus_nat @ C3 @ ( minus_minus_nat @ B6 @ A6 ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ C3 @ B6 ) @ A6 ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.add_diff_assoc
thf(fact_1012_ordered__cancel__comm__monoid__diff__class_Ole__diff__conv2,axiom,
    ! [A6: nat,B6: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A6 @ B6 )
     => ( ( ord_less_eq_nat @ C3 @ ( minus_minus_nat @ B6 @ A6 ) )
        = ( ord_less_eq_nat @ ( plus_plus_nat @ C3 @ A6 ) @ B6 ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.le_diff_conv2
thf(fact_1013_le__add__diff,axiom,
    ! [A6: nat,B6: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A6 @ B6 )
     => ( ord_less_eq_nat @ C3 @ ( minus_minus_nat @ ( plus_plus_nat @ B6 @ C3 ) @ A6 ) ) ) ).

% le_add_diff
thf(fact_1014_ordered__cancel__comm__monoid__diff__class_Odiff__add,axiom,
    ! [A6: nat,B6: nat] :
      ( ( ord_less_eq_nat @ A6 @ B6 )
     => ( ( plus_plus_nat @ ( minus_minus_nat @ B6 @ A6 ) @ A6 )
        = B6 ) ) ).

% ordered_cancel_comm_monoid_diff_class.diff_add
thf(fact_1015_add__le__add__imp__diff__le,axiom,
    ! [I4: nat,K: nat,N: nat,J4: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ I4 @ K ) @ N )
     => ( ( ord_less_eq_nat @ N @ ( plus_plus_nat @ J4 @ K ) )
       => ( ( ord_less_eq_nat @ ( plus_plus_nat @ I4 @ K ) @ N )
         => ( ( ord_less_eq_nat @ N @ ( plus_plus_nat @ J4 @ K ) )
           => ( ord_less_eq_nat @ ( minus_minus_nat @ N @ K ) @ J4 ) ) ) ) ) ).

% add_le_add_imp_diff_le
thf(fact_1016_le__add__diff__inverse2,axiom,
    ! [B6: nat,A6: nat] :
      ( ( ord_less_eq_nat @ B6 @ A6 )
     => ( ( plus_plus_nat @ ( minus_minus_nat @ A6 @ B6 ) @ B6 )
        = A6 ) ) ).

% le_add_diff_inverse2
thf(fact_1017_le__add__diff__inverse,axiom,
    ! [B6: nat,A6: nat] :
      ( ( ord_less_eq_nat @ B6 @ A6 )
     => ( ( plus_plus_nat @ B6 @ ( minus_minus_nat @ A6 @ B6 ) )
        = A6 ) ) ).

% le_add_diff_inverse
thf(fact_1018_add__le__imp__le__diff,axiom,
    ! [I4: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ I4 @ K ) @ N )
     => ( ord_less_eq_nat @ I4 @ ( minus_minus_nat @ N @ K ) ) ) ).

% add_le_imp_le_diff
thf(fact_1019_ex__least__nat__le,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ N )
     => ( ~ ( P @ zero_zero_nat )
       => ? [K3: nat] :
            ( ( ord_less_eq_nat @ K3 @ N )
            & ! [I7: nat] :
                ( ( ord_less_nat @ I7 @ K3 )
               => ~ ( P @ I7 ) )
            & ( P @ K3 ) ) ) ) ).

% ex_least_nat_le
thf(fact_1020_mono__nat__linear__lb,axiom,
    ! [F: nat > nat,M2: nat,K: nat] :
      ( ! [M5: nat,N3: nat] :
          ( ( ord_less_nat @ M5 @ N3 )
         => ( ord_less_nat @ ( F @ M5 ) @ ( F @ N3 ) ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ ( F @ M2 ) @ K ) @ ( F @ ( plus_plus_nat @ M2 @ K ) ) ) ) ).

% mono_nat_linear_lb
thf(fact_1021_diff__less__mono,axiom,
    ! [A6: nat,B6: nat,C3: nat] :
      ( ( ord_less_nat @ A6 @ B6 )
     => ( ( ord_less_eq_nat @ C3 @ A6 )
       => ( ord_less_nat @ ( minus_minus_nat @ A6 @ C3 ) @ ( minus_minus_nat @ B6 @ C3 ) ) ) ) ).

% diff_less_mono
thf(fact_1022_less__diff__iff,axiom,
    ! [K: nat,M2: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M2 )
     => ( ( ord_less_eq_nat @ K @ N )
       => ( ( ord_less_nat @ ( minus_minus_nat @ M2 @ K ) @ ( minus_minus_nat @ N @ K ) )
          = ( ord_less_nat @ M2 @ N ) ) ) ) ).

% less_diff_iff
thf(fact_1023_verit__comp__simplify_I3_J,axiom,
    ! [B7: nat,A7: nat] :
      ( ( ~ ( ord_less_eq_nat @ B7 @ A7 ) )
      = ( ord_less_nat @ A7 @ B7 ) ) ).

% verit_comp_simplify(3)
thf(fact_1024_le__simps_I1_J,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_nat @ M2 @ N )
     => ( ord_less_eq_nat @ M2 @ N ) ) ).

% le_simps(1)
thf(fact_1025_nat__less__le,axiom,
    ( ord_less_nat
    = ( ^ [M: nat,N2: nat] :
          ( ( ord_less_eq_nat @ M @ N2 )
          & ( M != N2 ) ) ) ) ).

% nat_less_le
thf(fact_1026_le__eq__less__or__eq,axiom,
    ( ord_less_eq_nat
    = ( ^ [M: nat,N2: nat] :
          ( ( ord_less_nat @ M @ N2 )
          | ( M = N2 ) ) ) ) ).

% le_eq_less_or_eq
thf(fact_1027_less__or__eq__imp__le,axiom,
    ! [M2: nat,N: nat] :
      ( ( ( ord_less_nat @ M2 @ N )
        | ( M2 = N ) )
     => ( ord_less_eq_nat @ M2 @ N ) ) ).

% less_or_eq_imp_le
thf(fact_1028_le__neq__implies__less,axiom,
    ! [M2: nat,N: nat] :
      ( ( ord_less_eq_nat @ M2 @ N )
     => ( ( M2 != N )
       => ( ord_less_nat @ M2 @ N ) ) ) ).

% le_neq_implies_less
thf(fact_1029_less__mono__imp__le__mono,axiom,
    ! [F: nat > nat,I4: nat,J4: nat] :
      ( ! [I2: nat,J2: nat] :
          ( ( ord_less_nat @ I2 @ J2 )
         => ( ord_less_nat @ ( F @ I2 ) @ ( F @ J2 ) ) )
     => ( ( ord_less_eq_nat @ I4 @ J4 )
       => ( ord_less_eq_nat @ ( F @ I4 ) @ ( F @ J4 ) ) ) ) ).

% less_mono_imp_le_mono
thf(fact_1030_minf_I8_J,axiom,
    ! [T: nat] :
    ? [Z3: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ X4 @ Z3 )
     => ~ ( ord_less_eq_nat @ T @ X4 ) ) ).

% minf(8)
thf(fact_1031_minf_I6_J,axiom,
    ! [T: nat] :
    ? [Z3: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ X4 @ Z3 )
     => ( ord_less_eq_nat @ X4 @ T ) ) ).

% minf(6)
thf(fact_1032_pinf_I8_J,axiom,
    ! [T: nat] :
    ? [Z3: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ Z3 @ X4 )
     => ( ord_less_eq_nat @ T @ X4 ) ) ).

% pinf(8)
thf(fact_1033_pinf_I6_J,axiom,
    ! [T: nat] :
    ? [Z3: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ Z3 @ X4 )
     => ~ ( ord_less_eq_nat @ X4 @ T ) ) ).

% pinf(6)
thf(fact_1034_zero__order_I2_J,axiom,
    ! [N: nat] :
      ( ( ord_less_eq_nat @ N @ zero_zero_nat )
      = ( N = zero_zero_nat ) ) ).

% zero_order(2)
thf(fact_1035_zero__order_I1_J,axiom,
    ! [X: nat] : ( ord_less_eq_nat @ zero_zero_nat @ X ) ).

% zero_order(1)
thf(fact_1036_add__mono__thms__linordered__semiring_I3_J,axiom,
    ! [I4: nat,J4: nat,K: nat,L: nat] :
      ( ( ( ord_less_eq_nat @ I4 @ J4 )
        & ( K = L ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I4 @ K ) @ ( plus_plus_nat @ J4 @ L ) ) ) ).

% add_mono_thms_linordered_semiring(3)
thf(fact_1037_add__mono__thms__linordered__semiring_I2_J,axiom,
    ! [I4: nat,J4: nat,K: nat,L: nat] :
      ( ( ( I4 = J4 )
        & ( ord_less_eq_nat @ K @ L ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I4 @ K ) @ ( plus_plus_nat @ J4 @ L ) ) ) ).

% add_mono_thms_linordered_semiring(2)
thf(fact_1038_add__mono__thms__linordered__semiring_I1_J,axiom,
    ! [I4: nat,J4: nat,K: nat,L: nat] :
      ( ( ( ord_less_eq_nat @ I4 @ J4 )
        & ( ord_less_eq_nat @ K @ L ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I4 @ K ) @ ( plus_plus_nat @ J4 @ L ) ) ) ).

% add_mono_thms_linordered_semiring(1)
thf(fact_1039_add__mono,axiom,
    ! [A6: nat,B6: nat,C3: nat,D3: nat] :
      ( ( ord_less_eq_nat @ A6 @ B6 )
     => ( ( ord_less_eq_nat @ C3 @ D3 )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ A6 @ C3 ) @ ( plus_plus_nat @ B6 @ D3 ) ) ) ) ).

% add_mono
thf(fact_1040_add__left__mono,axiom,
    ! [A6: nat,B6: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A6 @ B6 )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ C3 @ A6 ) @ ( plus_plus_nat @ C3 @ B6 ) ) ) ).

% add_left_mono
thf(fact_1041_less__eqE,axiom,
    ! [A6: nat,B6: nat] :
      ( ( ord_less_eq_nat @ A6 @ B6 )
     => ~ ! [C2: nat] :
            ( B6
           != ( plus_plus_nat @ A6 @ C2 ) ) ) ).

% less_eqE
thf(fact_1042_add__right__mono,axiom,
    ! [A6: nat,B6: nat,C3: nat] :
      ( ( ord_less_eq_nat @ A6 @ B6 )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ A6 @ C3 ) @ ( plus_plus_nat @ B6 @ C3 ) ) ) ).

% add_right_mono
thf(fact_1043_le__iff__add,axiom,
    ( ord_less_eq_nat
    = ( ^ [A9: nat,B9: nat] :
        ? [C4: nat] :
          ( B9
          = ( plus_plus_nat @ A9 @ C4 ) ) ) ) ).

% le_iff_add
thf(fact_1044_add__le__cancel__left,axiom,
    ! [C3: nat,A6: nat,B6: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ C3 @ A6 ) @ ( plus_plus_nat @ C3 @ B6 ) )
      = ( ord_less_eq_nat @ A6 @ B6 ) ) ).

% add_le_cancel_left
thf(fact_1045_add__le__imp__le__left,axiom,
    ! [C3: nat,A6: nat,B6: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ C3 @ A6 ) @ ( plus_plus_nat @ C3 @ B6 ) )
     => ( ord_less_eq_nat @ A6 @ B6 ) ) ).

% add_le_imp_le_left
thf(fact_1046_add__le__cancel__right,axiom,
    ! [A6: nat,C3: nat,B6: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ A6 @ C3 ) @ ( plus_plus_nat @ B6 @ C3 ) )
      = ( ord_less_eq_nat @ A6 @ B6 ) ) ).

% add_le_cancel_right
thf(fact_1047_add__le__imp__le__right,axiom,
    ! [A6: nat,C3: nat,B6: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ A6 @ C3 ) @ ( plus_plus_nat @ B6 @ C3 ) )
     => ( ord_less_eq_nat @ A6 @ B6 ) ) ).

% add_le_imp_le_right
thf(fact_1048_add__leE,axiom,
    ! [M2: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ M2 @ K ) @ N )
     => ~ ( ( ord_less_eq_nat @ M2 @ N )
         => ~ ( ord_less_eq_nat @ K @ N ) ) ) ).

% add_leE
thf(fact_1049_le__add1,axiom,
    ! [N: nat,M2: nat] : ( ord_less_eq_nat @ N @ ( plus_plus_nat @ N @ M2 ) ) ).

% le_add1
thf(fact_1050_le__add2,axiom,
    ! [N: nat,M2: nat] : ( ord_less_eq_nat @ N @ ( plus_plus_nat @ M2 @ N ) ) ).

% le_add2
thf(fact_1051_add__leD1,axiom,
    ! [M2: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ M2 @ K ) @ N )
     => ( ord_less_eq_nat @ M2 @ N ) ) ).

% add_leD1
thf(fact_1052_add__leD2,axiom,
    ! [M2: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ M2 @ K ) @ N )
     => ( ord_less_eq_nat @ K @ N ) ) ).

% add_leD2
thf(fact_1053_le__Suc__ex,axiom,
    ! [K: nat,L: nat] :
      ( ( ord_less_eq_nat @ K @ L )
     => ? [N3: nat] :
          ( L
          = ( plus_plus_nat @ K @ N3 ) ) ) ).

% le_Suc_ex
thf(fact_1054_add__le__mono,axiom,
    ! [I4: nat,J4: nat,K: nat,L: nat] :
      ( ( ord_less_eq_nat @ I4 @ J4 )
     => ( ( ord_less_eq_nat @ K @ L )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ I4 @ K ) @ ( plus_plus_nat @ J4 @ L ) ) ) ) ).

% add_le_mono
thf(fact_1055_add__le__mono1,axiom,
    ! [I4: nat,J4: nat,K: nat] :
      ( ( ord_less_eq_nat @ I4 @ J4 )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I4 @ K ) @ ( plus_plus_nat @ J4 @ K ) ) ) ).

% add_le_mono1
thf(fact_1056_trans__le__add1,axiom,
    ! [I4: nat,J4: nat,M2: nat] :
      ( ( ord_less_eq_nat @ I4 @ J4 )
     => ( ord_less_eq_nat @ I4 @ ( plus_plus_nat @ J4 @ M2 ) ) ) ).

% trans_le_add1
thf(fact_1057_trans__le__add2,axiom,
    ! [I4: nat,J4: nat,M2: nat] :
      ( ( ord_less_eq_nat @ I4 @ J4 )
     => ( ord_less_eq_nat @ I4 @ ( plus_plus_nat @ M2 @ J4 ) ) ) ).

% trans_le_add2
thf(fact_1058_nat__le__iff__add,axiom,
    ( ord_less_eq_nat
    = ( ^ [M: nat,N2: nat] :
        ? [K2: nat] :
          ( N2
          = ( plus_plus_nat @ M @ K2 ) ) ) ) ).

% nat_le_iff_add
thf(fact_1059_nat__add__left__cancel__le,axiom,
    ! [K: nat,M2: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ K @ M2 ) @ ( plus_plus_nat @ K @ N ) )
      = ( ord_less_eq_nat @ M2 @ N ) ) ).

% nat_add_left_cancel_le
thf(fact_1060_Nat_Ole__imp__diff__is__add,axiom,
    ! [I4: nat,J4: nat,K: nat] :
      ( ( ord_less_eq_nat @ I4 @ J4 )
     => ( ( ( minus_minus_nat @ J4 @ I4 )
          = K )
        = ( J4
          = ( plus_plus_nat @ K @ I4 ) ) ) ) ).

% Nat.le_imp_diff_is_add
thf(fact_1061_Nat_Odiff__diff__right,axiom,
    ! [K: nat,J4: nat,I4: nat] :
      ( ( ord_less_eq_nat @ K @ J4 )
     => ( ( minus_minus_nat @ I4 @ ( minus_minus_nat @ J4 @ K ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ I4 @ K ) @ J4 ) ) ) ).

% Nat.diff_diff_right
thf(fact_1062_Nat_Odiff__add__assoc2,axiom,
    ! [K: nat,J4: nat,I4: nat] :
      ( ( ord_less_eq_nat @ K @ J4 )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ J4 @ I4 ) @ K )
        = ( plus_plus_nat @ ( minus_minus_nat @ J4 @ K ) @ I4 ) ) ) ).

% Nat.diff_add_assoc2
thf(fact_1063_Nat_Oadd__diff__assoc2,axiom,
    ! [K: nat,J4: nat,I4: nat] :
      ( ( ord_less_eq_nat @ K @ J4 )
     => ( ( plus_plus_nat @ ( minus_minus_nat @ J4 @ K ) @ I4 )
        = ( minus_minus_nat @ ( plus_plus_nat @ J4 @ I4 ) @ K ) ) ) ).

% Nat.add_diff_assoc2
thf(fact_1064_Nat_Odiff__add__assoc,axiom,
    ! [K: nat,J4: nat,I4: nat] :
      ( ( ord_less_eq_nat @ K @ J4 )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ I4 @ J4 ) @ K )
        = ( plus_plus_nat @ I4 @ ( minus_minus_nat @ J4 @ K ) ) ) ) ).

% Nat.diff_add_assoc
thf(fact_1065_Nat_Oadd__diff__assoc,axiom,
    ! [K: nat,J4: nat,I4: nat] :
      ( ( ord_less_eq_nat @ K @ J4 )
     => ( ( plus_plus_nat @ I4 @ ( minus_minus_nat @ J4 @ K ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ I4 @ J4 ) @ K ) ) ) ).

% Nat.add_diff_assoc
thf(fact_1066_Nat_Ole__diff__conv2,axiom,
    ! [K: nat,J4: nat,I4: nat] :
      ( ( ord_less_eq_nat @ K @ J4 )
     => ( ( ord_less_eq_nat @ I4 @ ( minus_minus_nat @ J4 @ K ) )
        = ( ord_less_eq_nat @ ( plus_plus_nat @ I4 @ K ) @ J4 ) ) ) ).

% Nat.le_diff_conv2
thf(fact_1067_le__diff__conv,axiom,
    ! [J4: nat,K: nat,I4: nat] :
      ( ( ord_less_eq_nat @ ( minus_minus_nat @ J4 @ K ) @ I4 )
      = ( ord_less_eq_nat @ J4 @ ( plus_plus_nat @ I4 @ K ) ) ) ).

% le_diff_conv
thf(fact_1068_linordered__semiring__strict__class_Omult__less__le__imp__less,axiom,
    ! [A6: nat,B6: nat,C3: nat,D3: nat] :
      ( ( ord_less_nat @ A6 @ B6 )
     => ( ( ord_less_eq_nat @ C3 @ D3 )
       => ( ( ord_less_eq_nat @ zero_zero_nat @ A6 )
         => ( ( ord_less_nat @ zero_zero_nat @ C3 )
           => ( ord_less_nat @ ( times_times_nat @ A6 @ C3 ) @ ( times_times_nat @ B6 @ D3 ) ) ) ) ) ) ).

% linordered_semiring_strict_class.mult_less_le_imp_less
thf(fact_1069_linordered__semiring__strict__class_Omult__le__less__imp__less,axiom,
    ! [A6: nat,B6: nat,C3: nat,D3: nat] :
      ( ( ord_less_eq_nat @ A6 @ B6 )
     => ( ( ord_less_nat @ C3 @ D3 )
       => ( ( ord_less_nat @ zero_zero_nat @ A6 )
         => ( ( ord_less_eq_nat @ zero_zero_nat @ C3 )
           => ( ord_less_nat @ ( times_times_nat @ A6 @ C3 ) @ ( times_times_nat @ B6 @ D3 ) ) ) ) ) ) ).

% linordered_semiring_strict_class.mult_le_less_imp_less
thf(fact_1070_mult__right__le__imp__le,axiom,
    ! [A6: nat,C3: nat,B6: nat] :
      ( ( ord_less_eq_nat @ ( times_times_nat @ A6 @ C3 ) @ ( times_times_nat @ B6 @ C3 ) )
     => ( ( ord_less_nat @ zero_zero_nat @ C3 )
       => ( ord_less_eq_nat @ A6 @ B6 ) ) ) ).

% mult_right_le_imp_le
thf(fact_1071_mult__left__le__imp__le,axiom,
    ! [C3: nat,A6: nat,B6: nat] :
      ( ( ord_less_eq_nat @ ( times_times_nat @ C3 @ A6 ) @ ( times_times_nat @ C3 @ B6 ) )
     => ( ( ord_less_nat @ zero_zero_nat @ C3 )
       => ( ord_less_eq_nat @ A6 @ B6 ) ) ) ).

% mult_left_le_imp_le
thf(fact_1072_linordered__semiring__strict__class_Omult__strict__mono_H,axiom,
    ! [A6: nat,B6: nat,C3: nat,D3: nat] :
      ( ( ord_less_nat @ A6 @ B6 )
     => ( ( ord_less_nat @ C3 @ D3 )
       => ( ( ord_less_eq_nat @ zero_zero_nat @ A6 )
         => ( ( ord_less_eq_nat @ zero_zero_nat @ C3 )
           => ( ord_less_nat @ ( times_times_nat @ A6 @ C3 ) @ ( times_times_nat @ B6 @ D3 ) ) ) ) ) ) ).

% linordered_semiring_strict_class.mult_strict_mono'
thf(fact_1073_mult__right__less__imp__less,axiom,
    ! [A6: nat,C3: nat,B6: nat] :
      ( ( ord_less_nat @ ( times_times_nat @ A6 @ C3 ) @ ( times_times_nat @ B6 @ C3 ) )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ C3 )
       => ( ord_less_nat @ A6 @ B6 ) ) ) ).

% mult_right_less_imp_less
thf(fact_1074_linordered__semiring__strict__class_Omult__strict__mono,axiom,
    ! [A6: nat,B6: nat,C3: nat,D3: nat] :
      ( ( ord_less_nat @ A6 @ B6 )
     => ( ( ord_less_nat @ C3 @ D3 )
       => ( ( ord_less_nat @ zero_zero_nat @ B6 )
         => ( ( ord_less_eq_nat @ zero_zero_nat @ C3 )
           => ( ord_less_nat @ ( times_times_nat @ A6 @ C3 ) @ ( times_times_nat @ B6 @ D3 ) ) ) ) ) ) ).

% linordered_semiring_strict_class.mult_strict_mono
thf(fact_1075_mult__left__less__imp__less,axiom,
    ! [C3: nat,A6: nat,B6: nat] :
      ( ( ord_less_nat @ ( times_times_nat @ C3 @ A6 ) @ ( times_times_nat @ C3 @ B6 ) )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ C3 )
       => ( ord_less_nat @ A6 @ B6 ) ) ) ).

% mult_left_less_imp_less
thf(fact_1076_mult__le__one,axiom,
    ! [A6: nat,B6: nat] :
      ( ( ord_less_eq_nat @ A6 @ one_one_nat )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ B6 )
       => ( ( ord_less_eq_nat @ B6 @ one_one_nat )
         => ( ord_less_eq_nat @ ( times_times_nat @ A6 @ B6 ) @ one_one_nat ) ) ) ) ).

% mult_le_one
thf(fact_1077_mult__left__le,axiom,
    ! [C3: nat,A6: nat] :
      ( ( ord_less_eq_nat @ C3 @ one_one_nat )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ A6 )
       => ( ord_less_eq_nat @ ( times_times_nat @ A6 @ C3 ) @ A6 ) ) ) ).

% mult_left_le
thf(fact_1078_zero__compare__simps_I2_J,axiom,
    ! [A6: nat,B6: nat,C3: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A6 )
     => ( ( ord_less_nat @ B6 @ C3 )
       => ( ord_less_nat @ B6 @ ( plus_plus_nat @ A6 @ C3 ) ) ) ) ).

% zero_compare_simps(2)
thf(fact_1079_zero__compare__simps_I1_J,axiom,
    ! [A6: nat,B6: nat,C3: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A6 )
     => ( ( ord_less_eq_nat @ B6 @ C3 )
       => ( ord_less_nat @ B6 @ ( plus_plus_nat @ A6 @ C3 ) ) ) ) ).

% zero_compare_simps(1)
thf(fact_1080_add__sign__intros_I7_J,axiom,
    ! [A6: nat,B6: nat] :
      ( ( ord_less_eq_nat @ A6 @ zero_zero_nat )
     => ( ( ord_less_nat @ B6 @ zero_zero_nat )
       => ( ord_less_nat @ ( plus_plus_nat @ A6 @ B6 ) @ zero_zero_nat ) ) ) ).

% add_sign_intros(7)
thf(fact_1081_add__sign__intros_I5_J,axiom,
    ! [A6: nat,B6: nat] :
      ( ( ord_less_nat @ A6 @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ B6 @ zero_zero_nat )
       => ( ord_less_nat @ ( plus_plus_nat @ A6 @ B6 ) @ zero_zero_nat ) ) ) ).

% add_sign_intros(5)
thf(fact_1082_add__sign__intros_I3_J,axiom,
    ! [A6: nat,B6: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A6 )
     => ( ( ord_less_nat @ zero_zero_nat @ B6 )
       => ( ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ A6 @ B6 ) ) ) ) ).

% add_sign_intros(3)
thf(fact_1083_add__sign__intros_I1_J,axiom,
    ! [A6: nat,B6: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A6 )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ B6 )
       => ( ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ A6 @ B6 ) ) ) ) ).

% add_sign_intros(1)
thf(fact_1084_ordered__ring__class_Ole__add__iff1,axiom,
    ! [A6: complex,E: complex,C3: complex,B6: complex,D3: complex] :
      ( ( ord_less_eq_complex @ ( plus_plus_complex @ ( times_times_complex @ A6 @ E ) @ C3 ) @ ( plus_plus_complex @ ( times_times_complex @ B6 @ E ) @ D3 ) )
      = ( ord_less_eq_complex @ ( plus_plus_complex @ ( times_times_complex @ ( minus_minus_complex @ A6 @ B6 ) @ E ) @ C3 ) @ D3 ) ) ).

% ordered_ring_class.le_add_iff1
thf(fact_1085_ordered__ring__class_Ole__add__iff2,axiom,
    ! [A6: complex,E: complex,C3: complex,B6: complex,D3: complex] :
      ( ( ord_less_eq_complex @ ( plus_plus_complex @ ( times_times_complex @ A6 @ E ) @ C3 ) @ ( plus_plus_complex @ ( times_times_complex @ B6 @ E ) @ D3 ) )
      = ( ord_less_eq_complex @ C3 @ ( plus_plus_complex @ ( times_times_complex @ ( minus_minus_complex @ B6 @ A6 ) @ E ) @ D3 ) ) ) ).

% ordered_ring_class.le_add_iff2
thf(fact_1086_ex__least__nat__less,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ N )
     => ( ~ ( P @ zero_zero_nat )
       => ? [K3: nat] :
            ( ( ord_less_nat @ K3 @ N )
            & ! [I7: nat] :
                ( ( ord_less_eq_nat @ I7 @ K3 )
               => ~ ( P @ I7 ) )
            & ( P @ ( suc @ K3 ) ) ) ) ) ).

% ex_least_nat_less
thf(fact_1087_nat__mult__le__cancel1,axiom,
    ! [K: nat,M2: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ K )
     => ( ( ord_less_eq_nat @ ( times_times_nat @ K @ M2 ) @ ( times_times_nat @ K @ N ) )
        = ( ord_less_eq_nat @ M2 @ N ) ) ) ).

% nat_mult_le_cancel1
thf(fact_1088_nat__mult__le__cancel__disj,axiom,
    ! [K: nat,M2: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( times_times_nat @ K @ M2 ) @ ( times_times_nat @ K @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ K )
       => ( ord_less_eq_nat @ M2 @ N ) ) ) ).

% nat_mult_le_cancel_disj
thf(fact_1089_mult__le__cancel2,axiom,
    ! [M2: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( times_times_nat @ M2 @ K ) @ ( times_times_nat @ N @ K ) )
      = ( ( ord_less_nat @ zero_zero_nat @ K )
       => ( ord_less_eq_nat @ M2 @ N ) ) ) ).

% mult_le_cancel2
thf(fact_1090_less__diff__conv2,axiom,
    ! [K: nat,J4: nat,I4: nat] :
      ( ( ord_less_eq_nat @ K @ J4 )
     => ( ( ord_less_nat @ ( minus_minus_nat @ J4 @ K ) @ I4 )
        = ( ord_less_nat @ J4 @ ( plus_plus_nat @ I4 @ K ) ) ) ) ).

% less_diff_conv2
thf(fact_1091_diff__Suc__diff__eq1,axiom,
    ! [K: nat,J4: nat,I4: nat] :
      ( ( ord_less_eq_nat @ K @ J4 )
     => ( ( minus_minus_nat @ I4 @ ( suc @ ( minus_minus_nat @ J4 @ K ) ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ I4 @ K ) @ ( suc @ J4 ) ) ) ) ).

% diff_Suc_diff_eq1
thf(fact_1092_diff__Suc__diff__eq2,axiom,
    ! [K: nat,J4: nat,I4: nat] :
      ( ( ord_less_eq_nat @ K @ J4 )
     => ( ( minus_minus_nat @ ( suc @ ( minus_minus_nat @ J4 @ K ) ) @ I4 )
        = ( minus_minus_nat @ ( suc @ J4 ) @ ( plus_plus_nat @ K @ I4 ) ) ) ) ).

% diff_Suc_diff_eq2
thf(fact_1093_nat__diff__add__eq2,axiom,
    ! [I4: nat,J4: nat,U2: nat,M2: nat,N: nat] :
      ( ( ord_less_eq_nat @ I4 @ J4 )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ ( times_times_nat @ I4 @ U2 ) @ M2 ) @ ( plus_plus_nat @ ( times_times_nat @ J4 @ U2 ) @ N ) )
        = ( minus_minus_nat @ M2 @ ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ J4 @ I4 ) @ U2 ) @ N ) ) ) ) ).

% nat_diff_add_eq2
thf(fact_1094_nat__diff__add__eq1,axiom,
    ! [J4: nat,I4: nat,U2: nat,M2: nat,N: nat] :
      ( ( ord_less_eq_nat @ J4 @ I4 )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ ( times_times_nat @ I4 @ U2 ) @ M2 ) @ ( plus_plus_nat @ ( times_times_nat @ J4 @ U2 ) @ N ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ I4 @ J4 ) @ U2 ) @ M2 ) @ N ) ) ) ).

% nat_diff_add_eq1
thf(fact_1095_nat__le__add__iff2,axiom,
    ! [I4: nat,J4: nat,U2: nat,M2: nat,N: nat] :
      ( ( ord_less_eq_nat @ I4 @ J4 )
     => ( ( ord_less_eq_nat @ ( plus_plus_nat @ ( times_times_nat @ I4 @ U2 ) @ M2 ) @ ( plus_plus_nat @ ( times_times_nat @ J4 @ U2 ) @ N ) )
        = ( ord_less_eq_nat @ M2 @ ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ J4 @ I4 ) @ U2 ) @ N ) ) ) ) ).

% nat_le_add_iff2
thf(fact_1096_nat__le__add__iff1,axiom,
    ! [J4: nat,I4: nat,U2: nat,M2: nat,N: nat] :
      ( ( ord_less_eq_nat @ J4 @ I4 )
     => ( ( ord_less_eq_nat @ ( plus_plus_nat @ ( times_times_nat @ I4 @ U2 ) @ M2 ) @ ( plus_plus_nat @ ( times_times_nat @ J4 @ U2 ) @ N ) )
        = ( ord_less_eq_nat @ ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ I4 @ J4 ) @ U2 ) @ M2 ) @ N ) ) ) ).

% nat_le_add_iff1
thf(fact_1097_nat__eq__add__iff2,axiom,
    ! [I4: nat,J4: nat,U2: nat,M2: nat,N: nat] :
      ( ( ord_less_eq_nat @ I4 @ J4 )
     => ( ( ( plus_plus_nat @ ( times_times_nat @ I4 @ U2 ) @ M2 )
          = ( plus_plus_nat @ ( times_times_nat @ J4 @ U2 ) @ N ) )
        = ( M2
          = ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ J4 @ I4 ) @ U2 ) @ N ) ) ) ) ).

% nat_eq_add_iff2
thf(fact_1098_nat__eq__add__iff1,axiom,
    ! [J4: nat,I4: nat,U2: nat,M2: nat,N: nat] :
      ( ( ord_less_eq_nat @ J4 @ I4 )
     => ( ( ( plus_plus_nat @ ( times_times_nat @ I4 @ U2 ) @ M2 )
          = ( plus_plus_nat @ ( times_times_nat @ J4 @ U2 ) @ N ) )
        = ( ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ I4 @ J4 ) @ U2 ) @ M2 )
          = N ) ) ) ).

% nat_eq_add_iff1
thf(fact_1099_pivot__funD_I1_J,axiom,
    ! [A: mat_complex,Nr: nat,F: nat > nat,Nc: nat,I4: nat] :
      ( ( ( dim_row_complex @ A )
        = Nr )
     => ( ( gauss_2609248829700396350omplex @ A @ F @ Nc )
       => ( ( ord_less_nat @ I4 @ Nr )
         => ( ord_less_eq_nat @ ( F @ I4 ) @ Nc ) ) ) ) ).

% pivot_funD(1)

% Helper facts (9)
thf(help_If_2_1_If_001t__Nat__Onat_T,axiom,
    ! [X: nat,Y5: nat] :
      ( ( if_nat @ $false @ X @ Y5 )
      = Y5 ) ).

thf(help_If_1_1_If_001t__Nat__Onat_T,axiom,
    ! [X: nat,Y5: nat] :
      ( ( if_nat @ $true @ X @ Y5 )
      = X ) ).

thf(help_If_2_1_If_001t__Complex__Ocomplex_T,axiom,
    ! [X: complex,Y5: complex] :
      ( ( if_complex @ $false @ X @ Y5 )
      = Y5 ) ).

thf(help_If_1_1_If_001t__Complex__Ocomplex_T,axiom,
    ! [X: complex,Y5: complex] :
      ( ( if_complex @ $true @ X @ Y5 )
      = X ) ).

thf(help_If_2_1_If_001_062_It__Nat__Onat_Mt__Nat__Onat_J_T,axiom,
    ! [X: nat > nat,Y5: nat > nat] :
      ( ( if_nat_nat @ $false @ X @ Y5 )
      = Y5 ) ).

thf(help_If_1_1_If_001_062_It__Nat__Onat_Mt__Nat__Onat_J_T,axiom,
    ! [X: nat > nat,Y5: nat > nat] :
      ( ( if_nat_nat @ $true @ X @ Y5 )
      = X ) ).

thf(help_If_3_1_If_001_062_It__Complex__Ocomplex_Mt__Complex__Ocomplex_J_T,axiom,
    ! [P: $o] :
      ( ( P = $true )
      | ( P = $false ) ) ).

thf(help_If_2_1_If_001_062_It__Complex__Ocomplex_Mt__Complex__Ocomplex_J_T,axiom,
    ! [X: complex > complex,Y5: complex > complex] :
      ( ( if_complex_complex @ $false @ X @ Y5 )
      = Y5 ) ).

thf(help_If_1_1_If_001_062_It__Complex__Ocomplex_Mt__Complex__Ocomplex_J_T,axiom,
    ! [X: complex > complex,Y5: complex > complex] :
      ( ( if_complex_complex @ $true @ X @ Y5 )
      = X ) ).

% Conjectures (1)
thf(conj_0,conjecture,
    ( ( index_mat_a @ ( four_block_mat_a @ a1 @ ( zero_mat_a @ ( dim_row_a @ a1 ) @ ( dim_col_a @ a2 ) ) @ ( zero_mat_a @ ( dim_row_a @ a2 ) @ ( dim_col_a @ a1 ) ) @ a2 ) @ ( product_Pair_nat_nat @ i @ j ) )
    = ( index_mat_a @ ( four_block_mat_a @ b1 @ ( zero_mat_a @ ( dim_row_a @ b1 ) @ ( dim_col_a @ b2 ) ) @ ( zero_mat_a @ ( dim_row_a @ b2 ) @ ( dim_col_a @ b1 ) ) @ b2 ) @ ( product_Pair_nat_nat @ i @ j ) ) ) ).

%------------------------------------------------------------------------------