TPTP Problem File: SLH0003^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    : LP_Duality/0001_LP_Duality/prob_00116_004661__28749364_1 [Des23]

% Status   : Theorem
% Rating   : ? v8.2.0
% Syntax   : Number of formulae    : 1456 ( 475 unt; 185 typ;   0 def)
%            Number of atoms       : 3834 (1131 equ;   0 cnn)
%            Maximal formula atoms :   12 (   3 avg)
%            Number of connectives : 12437 ( 227   ~; 141   |; 162   &;10167   @)
%                                         (   0 <=>;1740  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   26 (   7 avg)
%            Number of types       :   21 (  20 usr)
%            Number of type conns  :  449 ( 449   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :  168 ( 165 usr;  21 con; 0-6 aty)
%            Number of variables   : 3674 ( 183   ^;3424   !;  67   ?;3674   :)
% SPC      : TH0_THM_EQU_NAR

% Comments : This file was generated by Isabelle (most likely Sledgehammer)
%            2023-01-19 13:56:25.418
%------------------------------------------------------------------------------
% Could-be-implicit typings (20)
thf(ty_n_t__Set__Oset_It__Matrix__Ovec_It__Matrix__Ovec_Itf__a_J_J_J,type,
    set_vec_vec_a: $tType ).

thf(ty_n_t__Set__Oset_It__Matrix__Ovec_It__Matrix__Omat_Itf__a_J_J_J,type,
    set_vec_mat_a: $tType ).

thf(ty_n_t__Set__Oset_It__Set__Oset_It__Matrix__Ovec_Itf__a_J_J_J,type,
    set_set_vec_a: $tType ).

thf(ty_n_t__Set__Oset_It__Set__Oset_It__Matrix__Omat_Itf__a_J_J_J,type,
    set_set_mat_a: $tType ).

thf(ty_n_t__Set__Oset_It__Matrix__Ovec_It__Nat__Onat_J_J,type,
    set_vec_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__Set__Oset_It__Set__Oset_It__Nat__Onat_J_J,type,
    set_set_nat: $tType ).

thf(ty_n_t__Matrix__Ovec_It__Matrix__Ovec_Itf__a_J_J,type,
    vec_vec_a: $tType ).

thf(ty_n_t__Matrix__Ovec_It__Matrix__Omat_Itf__a_J_J,type,
    vec_mat_a: $tType ).

thf(ty_n_t__Set__Oset_It__Matrix__Ovec_Itf__a_J_J,type,
    set_vec_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__Ovec_It__Nat__Onat_J,type,
    vec_nat: $tType ).

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

thf(ty_n_t__Polynomial__Opoly_Itf__a_J,type,
    poly_a: $tType ).

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

thf(ty_n_t__Matrix__Ovec_Itf__a_J,type,
    vec_a: $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__Nat__Onat,type,
    nat: $tType ).

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

% Explicit typings (165)
thf(sy_c_Determinant_Omat__delete_001tf__a,type,
    mat_delete_a: mat_a > nat > nat > mat_a ).

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_Oaddrow__mat_001tf__a,type,
    gauss_8159914756388622152_mat_a: nat > a > nat > nat > mat_a ).

thf(sy_c_Gauss__Jordan__Elimination_Ofind__base__vector_001tf__a,type,
    gauss_6280258074615264798ctor_a: mat_a > vec_a ).

thf(sy_c_Gauss__Jordan__Elimination_Ogauss__jordan__single_001tf__a,type,
    gauss_4684855476144371464ngle_a: mat_a > mat_a ).

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_Orow__echelon__form_001tf__a,type,
    gauss_5855338539171749649form_a: mat_a > $o ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Matrix__Omat_Itf__a_J,type,
    minus_minus_mat_a: mat_a > mat_a > mat_a ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Matrix__Ovec_It__Nat__Onat_J,type,
    minus_minus_vec_nat: vec_nat > vec_nat > vec_nat ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Matrix__Ovec_Itf__a_J,type,
    minus_minus_vec_a: vec_a > vec_a > vec_a ).

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

thf(sy_c_Groups_Ominus__class_Ominus_001t__Set__Oset_It__Matrix__Omat_Itf__a_J_J,type,
    minus_4757590266979429866_mat_a: set_mat_a > set_mat_a > set_mat_a ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Set__Oset_It__Matrix__Ovec_Itf__a_J_J,type,
    minus_6230920740010926198_vec_a: set_vec_a > set_vec_a > set_vec_a ).

thf(sy_c_Groups_Ominus__class_Ominus_001tf__a,type,
    minus_minus_a: a > a > a ).

thf(sy_c_Groups_Oone__class_Oone_001t__Nat__Onat,type,
    one_one_nat: nat ).

thf(sy_c_Groups_Oone__class_Oone_001tf__a,type,
    one_one_a: a ).

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__Matrix__Omat_Itf__a_J,type,
    plus_plus_mat_a: mat_a > mat_a > mat_a ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Matrix__Ovec_It__Matrix__Omat_Itf__a_J_J,type,
    plus_plus_vec_mat_a: vec_mat_a > vec_mat_a > vec_mat_a ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Matrix__Ovec_It__Matrix__Ovec_Itf__a_J_J,type,
    plus_plus_vec_vec_a: vec_vec_a > vec_vec_a > vec_vec_a ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Matrix__Ovec_It__Nat__Onat_J,type,
    plus_plus_vec_nat: vec_nat > vec_nat > vec_nat ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Matrix__Ovec_Itf__a_J,type,
    plus_plus_vec_a: vec_a > vec_a > vec_a ).

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

thf(sy_c_Groups_Oplus__class_Oplus_001t__Set__Oset_It__Matrix__Omat_It__Nat__Onat_J_J,type,
    plus_p2215855510709889632at_nat: set_mat_nat > set_mat_nat > set_mat_nat ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Set__Oset_It__Matrix__Omat_Itf__a_J_J,type,
    plus_plus_set_mat_a: set_mat_a > set_mat_a > set_mat_a ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Set__Oset_It__Matrix__Ovec_It__Matrix__Ovec_Itf__a_J_J_J,type,
    plus_p8188967515152927083_vec_a: set_vec_vec_a > set_vec_vec_a > set_vec_vec_a ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Set__Oset_It__Matrix__Ovec_It__Nat__Onat_J_J,type,
    plus_p1963516127331757268ec_nat: set_vec_nat > set_vec_nat > set_vec_nat ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Set__Oset_It__Matrix__Ovec_Itf__a_J_J,type,
    plus_plus_set_vec_a: set_vec_a > set_vec_a > set_vec_a ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Set__Oset_It__Nat__Onat_J,type,
    plus_plus_set_nat: set_nat > set_nat > set_nat ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Set__Oset_It__Set__Oset_It__Matrix__Omat_Itf__a_J_J_J,type,
    plus_p8188135320652551888_mat_a: set_set_mat_a > set_set_mat_a > set_set_mat_a ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Set__Oset_It__Set__Oset_It__Matrix__Ovec_Itf__a_J_J_J,type,
    plus_p5225466182533350236_vec_a: set_set_vec_a > set_set_vec_a > set_set_vec_a ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Set__Oset_It__Set__Oset_It__Nat__Onat_J_J,type,
    plus_p4817606893110106565et_nat: set_set_nat > set_set_nat > set_set_nat ).

thf(sy_c_Groups_Oplus__class_Oplus_001t__Set__Oset_Itf__a_J,type,
    plus_plus_set_a: set_a > set_a > set_a ).

thf(sy_c_Groups_Oplus__class_Oplus_001tf__a,type,
    plus_plus_a: a > a > a ).

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__Matrix__Omat_Itf__a_J,type,
    times_times_mat_a: mat_a > mat_a > mat_a ).

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

thf(sy_c_Groups_Otimes__class_Otimes_001t__Set__Oset_It__Matrix__Omat_Itf__a_J_J,type,
    times_1230744552615602198_mat_a: set_mat_a > set_mat_a > set_mat_a ).

thf(sy_c_Groups_Otimes__class_Otimes_001t__Set__Oset_It__Nat__Onat_J,type,
    times_times_set_nat: set_nat > set_nat > set_nat ).

thf(sy_c_Groups_Otimes__class_Otimes_001tf__a,type,
    times_times_a: a > a > a ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Matrix__Omat_Itf__a_J,type,
    uminus_uminus_mat_a: mat_a > mat_a ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Matrix__Ovec_It__Matrix__Omat_Itf__a_J_J,type,
    uminus6789456888195538751_mat_a: vec_mat_a > vec_mat_a ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Matrix__Ovec_It__Matrix__Ovec_Itf__a_J_J,type,
    uminus8262787361227035083_vec_a: vec_vec_a > vec_vec_a ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Matrix__Ovec_Itf__a_J,type,
    uminus_uminus_vec_a: vec_a > vec_a ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Set__Oset_It__Matrix__Omat_Itf__a_J_J,type,
    uminus1296375033039821146_mat_a: set_mat_a > set_mat_a ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001t__Set__Oset_It__Matrix__Ovec_Itf__a_J_J,type,
    uminus2769705506071317478_vec_a: set_vec_a > set_vec_a ).

thf(sy_c_Groups_Ouminus__class_Ouminus_001tf__a,type,
    uminus_uminus_a: a > a ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Nat__Onat,type,
    zero_zero_nat: nat ).

thf(sy_c_Groups_Ozero__class_Ozero_001tf__a,type,
    zero_zero_a: a ).

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

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

thf(sy_c_Matrix_Oappend__vec_001t__Matrix__Omat_Itf__a_J,type,
    append_vec_mat_a: vec_mat_a > vec_mat_a > vec_mat_a ).

thf(sy_c_Matrix_Oappend__vec_001t__Matrix__Ovec_Itf__a_J,type,
    append_vec_vec_a: vec_vec_a > vec_vec_a > vec_vec_a ).

thf(sy_c_Matrix_Oappend__vec_001t__Nat__Onat,type,
    append_vec_nat: vec_nat > vec_nat > vec_nat ).

thf(sy_c_Matrix_Oappend__vec_001tf__a,type,
    append_vec_a: vec_a > vec_a > vec_a ).

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_Ocarrier__vec_001t__Matrix__Omat_Itf__a_J,type,
    carrier_vec_mat_a: nat > set_vec_mat_a ).

thf(sy_c_Matrix_Ocarrier__vec_001t__Matrix__Ovec_Itf__a_J,type,
    carrier_vec_vec_a: nat > set_vec_vec_a ).

thf(sy_c_Matrix_Ocarrier__vec_001t__Nat__Onat,type,
    carrier_vec_nat: nat > set_vec_nat ).

thf(sy_c_Matrix_Ocarrier__vec_001tf__a,type,
    carrier_vec_a: nat > set_vec_a ).

thf(sy_c_Matrix_Ocomponent__mult_001t__Nat__Onat,type,
    component_mult_nat: vec_nat > vec_nat > vec_nat ).

thf(sy_c_Matrix_Ocomponent__mult_001tf__a,type,
    component_mult_a: vec_a > vec_a > vec_a ).

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

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

thf(sy_c_Matrix_Odim__vec_001t__Matrix__Omat_Itf__a_J,type,
    dim_vec_mat_a: vec_mat_a > nat ).

thf(sy_c_Matrix_Odim__vec_001t__Matrix__Ovec_Itf__a_J,type,
    dim_vec_vec_a: vec_vec_a > nat ).

thf(sy_c_Matrix_Odim__vec_001t__Nat__Onat,type,
    dim_vec_nat: vec_nat > nat ).

thf(sy_c_Matrix_Odim__vec_001tf__a,type,
    dim_vec_a: vec_a > 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_Oinverts__mat_001tf__a,type,
    inverts_mat_a: mat_a > mat_a > $o ).

thf(sy_c_Matrix_Omap__vec_001t__Matrix__Omat_Itf__a_J_001t__Nat__Onat,type,
    map_vec_mat_a_nat: ( mat_a > nat ) > vec_mat_a > vec_nat ).

thf(sy_c_Matrix_Omap__vec_001t__Matrix__Omat_Itf__a_J_001tf__a,type,
    map_vec_mat_a_a: ( mat_a > a ) > vec_mat_a > vec_a ).

thf(sy_c_Matrix_Omap__vec_001t__Matrix__Ovec_Itf__a_J_001t__Matrix__Ovec_Itf__a_J,type,
    map_vec_vec_a_vec_a: ( vec_a > vec_a ) > vec_vec_a > vec_vec_a ).

thf(sy_c_Matrix_Omap__vec_001t__Matrix__Ovec_Itf__a_J_001t__Nat__Onat,type,
    map_vec_vec_a_nat: ( vec_a > nat ) > vec_vec_a > vec_nat ).

thf(sy_c_Matrix_Omap__vec_001t__Matrix__Ovec_Itf__a_J_001tf__a,type,
    map_vec_vec_a_a: ( vec_a > a ) > vec_vec_a > vec_a ).

thf(sy_c_Matrix_Omap__vec_001t__Nat__Onat_001t__Matrix__Omat_Itf__a_J,type,
    map_vec_nat_mat_a: ( nat > mat_a ) > vec_nat > vec_mat_a ).

thf(sy_c_Matrix_Omap__vec_001t__Nat__Onat_001t__Matrix__Ovec_Itf__a_J,type,
    map_vec_nat_vec_a: ( nat > vec_a ) > vec_nat > vec_vec_a ).

thf(sy_c_Matrix_Omap__vec_001t__Nat__Onat_001t__Nat__Onat,type,
    map_vec_nat_nat: ( nat > nat ) > vec_nat > vec_nat ).

thf(sy_c_Matrix_Omap__vec_001t__Nat__Onat_001tf__a,type,
    map_vec_nat_a: ( nat > a ) > vec_nat > vec_a ).

thf(sy_c_Matrix_Omap__vec_001tf__a_001t__Matrix__Omat_Itf__a_J,type,
    map_vec_a_mat_a: ( a > mat_a ) > vec_a > vec_mat_a ).

thf(sy_c_Matrix_Omap__vec_001tf__a_001t__Matrix__Ovec_Itf__a_J,type,
    map_vec_a_vec_a: ( a > vec_a ) > vec_a > vec_vec_a ).

thf(sy_c_Matrix_Omap__vec_001tf__a_001t__Nat__Onat,type,
    map_vec_a_nat: ( a > nat ) > vec_a > vec_nat ).

thf(sy_c_Matrix_Omap__vec_001tf__a_001tf__a,type,
    map_vec_a_a: ( a > a ) > vec_a > vec_a ).

thf(sy_c_Matrix_Omat__of__row_001tf__a,type,
    mat_of_row_a: vec_a > mat_a ).

thf(sy_c_Matrix_Omult__mat__vec_001t__Nat__Onat,type,
    mult_mat_vec_nat: mat_nat > vec_nat > vec_nat ).

thf(sy_c_Matrix_Omult__mat__vec_001tf__a,type,
    mult_mat_vec_a: mat_a > vec_a > vec_a ).

thf(sy_c_Matrix_Oone__mat_001tf__a,type,
    one_mat_a: nat > mat_a ).

thf(sy_c_Matrix_Orow_001tf__a,type,
    row_a: mat_a > nat > vec_a ).

thf(sy_c_Matrix_Oscalar__prod_001t__Nat__Onat,type,
    scalar_prod_nat: vec_nat > vec_nat > nat ).

thf(sy_c_Matrix_Oscalar__prod_001tf__a,type,
    scalar_prod_a: vec_a > vec_a > a ).

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__vec_001tf__a,type,
    update_vec_a: vec_a > nat > a > vec_a ).

thf(sy_c_Matrix_Ovec__first_001t__Matrix__Omat_Itf__a_J,type,
    vec_first_mat_a: vec_mat_a > nat > vec_mat_a ).

thf(sy_c_Matrix_Ovec__first_001t__Matrix__Ovec_Itf__a_J,type,
    vec_first_vec_a: vec_vec_a > nat > vec_vec_a ).

thf(sy_c_Matrix_Ovec__first_001t__Nat__Onat,type,
    vec_first_nat: vec_nat > nat > vec_nat ).

thf(sy_c_Matrix_Ovec__first_001tf__a,type,
    vec_first_a: vec_a > nat > vec_a ).

thf(sy_c_Matrix_Ovec__index_001t__Matrix__Omat_Itf__a_J,type,
    vec_index_mat_a: vec_mat_a > nat > mat_a ).

thf(sy_c_Matrix_Ovec__index_001t__Matrix__Ovec_Itf__a_J,type,
    vec_index_vec_a: vec_vec_a > nat > vec_a ).

thf(sy_c_Matrix_Ovec__index_001t__Nat__Onat,type,
    vec_index_nat: vec_nat > nat > nat ).

thf(sy_c_Matrix_Ovec__index_001tf__a,type,
    vec_index_a: vec_a > nat > a ).

thf(sy_c_Matrix_Ovec__last_001t__Matrix__Omat_Itf__a_J,type,
    vec_last_mat_a: vec_mat_a > nat > vec_mat_a ).

thf(sy_c_Matrix_Ovec__last_001t__Matrix__Ovec_Itf__a_J,type,
    vec_last_vec_a: vec_vec_a > nat > vec_vec_a ).

thf(sy_c_Matrix_Ovec__last_001t__Nat__Onat,type,
    vec_last_nat: vec_nat > nat > vec_nat ).

thf(sy_c_Matrix_Ovec__last_001tf__a,type,
    vec_last_a: vec_a > nat > vec_a ).

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

thf(sy_c_Matrix_Ozero__vec_001t__Nat__Onat,type,
    zero_vec_nat: nat > vec_nat ).

thf(sy_c_Matrix_Ozero__vec_001tf__a,type,
    zero_vec_a: nat > vec_a ).

thf(sy_c_Matrix__Kernel_Ovardim_Ounpadl_001tf__a,type,
    matrix_unpadl_a: nat > vec_a > vec_a ).

thf(sy_c_Matrix__Kernel_Ovardim_Ounpadr_001tf__a,type,
    matrix_unpadr_a: nat > vec_a > vec_a ).

thf(sy_c_Missing__Matrix_Oappend__cols_001tf__a,type,
    missin386308114684349109cols_a: mat_a > mat_a > mat_a ).

thf(sy_c_Missing__Matrix_Omat__of__col_001tf__a,type,
    missing_mat_of_col_a: vec_a > mat_a ).

thf(sy_c_Missing__Matrix_Omat__row__first_001tf__a,type,
    missin3040492613037353666irst_a: mat_a > nat > mat_a ).

thf(sy_c_Missing__Matrix_Omat__row__last_001tf__a,type,
    missin5577565584678110354last_a: mat_a > nat > mat_a ).

thf(sy_c_Missing__Matrix_Ovec__of__scal_001tf__a,type,
    missin5951511974119752530scal_a: a > vec_a ).

thf(sy_c_Norms_Olinf__norm__vec_001tf__a,type,
    linf_norm_vec_a: vec_a > a ).

thf(sy_c_Norms_Onorm1_001tf__a,type,
    norm1_a: poly_a > a ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Matrix__Ovec_Itf__a_J,type,
    ord_less_vec_a: vec_a > vec_a > $o ).

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

thf(sy_c_Orderings_Oord__class_Oless_001t__Set__Oset_It__Matrix__Omat_Itf__a_J_J,type,
    ord_less_set_mat_a: set_mat_a > set_mat_a > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001t__Set__Oset_It__Matrix__Ovec_Itf__a_J_J,type,
    ord_less_set_vec_a: set_vec_a > set_vec_a > $o ).

thf(sy_c_Orderings_Oord__class_Oless_001tf__a,type,
    ord_less_a: a > a > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Matrix__Ovec_It__Matrix__Ovec_Itf__a_J_J,type,
    ord_le4012615358376148468_vec_a: vec_vec_a > vec_vec_a > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Matrix__Ovec_It__Nat__Onat_J,type,
    ord_less_eq_vec_nat: vec_nat > vec_nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Matrix__Ovec_Itf__a_J,type,
    ord_less_eq_vec_a: vec_a > vec_a > $o ).

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

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Matrix__Omat_Itf__a_J_J,type,
    ord_le3318621148231462513_mat_a: set_mat_a > set_mat_a > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Matrix__Ovec_Itf__a_J_J,type,
    ord_le4791951621262958845_vec_a: set_vec_a > set_vec_a > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Set__Oset_It__Nat__Onat_J,type,
    ord_less_eq_set_nat: set_nat > set_nat > $o ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001tf__a,type,
    ord_less_eq_a: a > a > $o ).

thf(sy_c_Schur__Decomposition_Ovec__inv_001tf__a,type,
    schur_vec_inv_a: vec_a > vec_a ).

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__Matrix__Ovec_It__Matrix__Ovec_Itf__a_J_J,type,
    collect_vec_vec_a: ( vec_vec_a > $o ) > set_vec_vec_a ).

thf(sy_c_Set_OCollect_001t__Matrix__Ovec_It__Nat__Onat_J,type,
    collect_vec_nat: ( vec_nat > $o ) > set_vec_nat ).

thf(sy_c_Set_OCollect_001t__Matrix__Ovec_Itf__a_J,type,
    collect_vec_a: ( vec_a > $o ) > set_vec_a ).

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

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__Matrix__Ovec_It__Matrix__Omat_Itf__a_J_J,type,
    member_vec_mat_a: vec_mat_a > set_vec_mat_a > $o ).

thf(sy_c_member_001t__Matrix__Ovec_It__Matrix__Ovec_Itf__a_J_J,type,
    member_vec_vec_a: vec_vec_a > set_vec_vec_a > $o ).

thf(sy_c_member_001t__Matrix__Ovec_It__Nat__Onat_J,type,
    member_vec_nat: vec_nat > set_vec_nat > $o ).

thf(sy_c_member_001t__Matrix__Ovec_Itf__a_J,type,
    member_vec_a: vec_a > set_vec_a > $o ).

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

thf(sy_c_member_001t__Set__Oset_It__Matrix__Omat_Itf__a_J_J,type,
    member_set_mat_a: set_mat_a > set_set_mat_a > $o ).

thf(sy_c_member_001t__Set__Oset_It__Matrix__Ovec_Itf__a_J_J,type,
    member_set_vec_a: set_vec_a > set_set_vec_a > $o ).

thf(sy_c_member_001t__Set__Oset_It__Nat__Onat_J,type,
    member_set_nat: set_nat > set_set_nat > $o ).

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

thf(sy_v_A,type,
    a2: mat_a ).

thf(sy_v_M____,type,
    m: mat_a ).

thf(sy_v_M__last____,type,
    m_last: mat_a ).

thf(sy_v_M__low____,type,
    m_low: mat_a ).

thf(sy_v_M__up____,type,
    m_up: mat_a ).

thf(sy_v_b,type,
    b: vec_a ).

thf(sy_v_bc____,type,
    bc: vec_a ).

thf(sy_v_c,type,
    c: vec_a ).

thf(sy_v_nc,type,
    nc: nat ).

thf(sy_v_nr,type,
    nr: nat ).

thf(sy_v_t____,type,
    t: vec_a ).

thf(sy_v_u1____,type,
    u1: vec_a ).

thf(sy_v_u2____,type,
    u2: vec_a ).

thf(sy_v_u3____,type,
    u3: vec_a ).

thf(sy_v_ulv____,type,
    ulv: vec_a ).

% Relevant facts (1267)
thf(fact_0_b,axiom,
    member_vec_a @ b @ ( carrier_vec_a @ nr ) ).

% b
thf(fact_1_t__def,axiom,
    ( t
    = ( vec_last_a @ ulv @ nr ) ) ).

% t_def
thf(fact_2_vec__last__carrier,axiom,
    ! [V: vec_nat,N: nat] : ( member_vec_nat @ ( vec_last_nat @ V @ N ) @ ( carrier_vec_nat @ N ) ) ).

% vec_last_carrier
thf(fact_3_vec__last__carrier,axiom,
    ! [V: vec_vec_a,N: nat] : ( member_vec_vec_a @ ( vec_last_vec_a @ V @ N ) @ ( carrier_vec_vec_a @ N ) ) ).

% vec_last_carrier
thf(fact_4_vec__last__carrier,axiom,
    ! [V: vec_a,N: nat] : ( member_vec_a @ ( vec_last_a @ V @ N ) @ ( carrier_vec_a @ N ) ) ).

% vec_last_carrier
thf(fact_5_c,axiom,
    member_vec_a @ c @ ( carrier_vec_a @ nc ) ).

% c
thf(fact_6_ulv,axiom,
    member_vec_a @ ulv @ ( carrier_vec_a @ ( plus_plus_nat @ ( plus_plus_nat @ ( plus_plus_nat @ nr @ one_one_nat ) @ ( plus_plus_nat @ nc @ nc ) ) @ nr ) ) ).

% ulv
thf(fact_7_ulvid,axiom,
    ( ulv
    = ( append_vec_a @ u1 @ t ) ) ).

% ulvid
thf(fact_8_vec__inv__closed,axiom,
    ! [V: vec_a,N: nat] :
      ( ( member_vec_a @ V @ ( carrier_vec_a @ N ) )
     => ( member_vec_a @ ( schur_vec_inv_a @ V ) @ ( carrier_vec_a @ N ) ) ) ).

% vec_inv_closed
thf(fact_9_bc,axiom,
    member_vec_a @ bc @ ( carrier_vec_a @ ( plus_plus_nat @ ( plus_plus_nat @ ( plus_plus_nat @ nr @ one_one_nat ) @ ( plus_plus_nat @ nc @ nc ) ) @ nr ) ) ).

% bc
thf(fact_10_A,axiom,
    member_mat_a @ a2 @ ( carrier_mat_a @ nr @ nc ) ).

% A
thf(fact_11_dim__vec__last,axiom,
    ! [V: vec_nat,N: nat] :
      ( ( dim_vec_nat @ ( vec_last_nat @ V @ N ) )
      = N ) ).

% dim_vec_last
thf(fact_12_dim__vec__last,axiom,
    ! [V: vec_mat_a,N: nat] :
      ( ( dim_vec_mat_a @ ( vec_last_mat_a @ V @ N ) )
      = N ) ).

% dim_vec_last
thf(fact_13_dim__vec__last,axiom,
    ! [V: vec_vec_a,N: nat] :
      ( ( dim_vec_vec_a @ ( vec_last_vec_a @ V @ N ) )
      = N ) ).

% dim_vec_last
thf(fact_14_dim__vec__last,axiom,
    ! [V: vec_a,N: nat] :
      ( ( dim_vec_a @ ( vec_last_a @ V @ N ) )
      = N ) ).

% dim_vec_last
thf(fact_15_u1__def,axiom,
    ( u1
    = ( vec_first_a @ ulv @ ( plus_plus_nat @ ( plus_plus_nat @ nr @ one_one_nat ) @ ( plus_plus_nat @ nc @ nc ) ) ) ) ).

% u1_def
thf(fact_16_map__carrier__vec,axiom,
    ! [H: nat > a,V: vec_nat,N: nat] :
      ( ( member_vec_a @ ( map_vec_nat_a @ H @ V ) @ ( carrier_vec_a @ N ) )
      = ( member_vec_nat @ V @ ( carrier_vec_nat @ N ) ) ) ).

% map_carrier_vec
thf(fact_17_map__carrier__vec,axiom,
    ! [H: vec_a > a,V: vec_vec_a,N: nat] :
      ( ( member_vec_a @ ( map_vec_vec_a_a @ H @ V ) @ ( carrier_vec_a @ N ) )
      = ( member_vec_vec_a @ V @ ( carrier_vec_vec_a @ N ) ) ) ).

% map_carrier_vec
thf(fact_18_map__carrier__vec,axiom,
    ! [H: a > nat,V: vec_a,N: nat] :
      ( ( member_vec_nat @ ( map_vec_a_nat @ H @ V ) @ ( carrier_vec_nat @ N ) )
      = ( member_vec_a @ V @ ( carrier_vec_a @ N ) ) ) ).

% map_carrier_vec
thf(fact_19_map__carrier__vec,axiom,
    ! [H: nat > nat,V: vec_nat,N: nat] :
      ( ( member_vec_nat @ ( map_vec_nat_nat @ H @ V ) @ ( carrier_vec_nat @ N ) )
      = ( member_vec_nat @ V @ ( carrier_vec_nat @ N ) ) ) ).

% map_carrier_vec
thf(fact_20_map__carrier__vec,axiom,
    ! [H: vec_a > nat,V: vec_vec_a,N: nat] :
      ( ( member_vec_nat @ ( map_vec_vec_a_nat @ H @ V ) @ ( carrier_vec_nat @ N ) )
      = ( member_vec_vec_a @ V @ ( carrier_vec_vec_a @ N ) ) ) ).

% map_carrier_vec
thf(fact_21_map__carrier__vec,axiom,
    ! [H: a > vec_a,V: vec_a,N: nat] :
      ( ( member_vec_vec_a @ ( map_vec_a_vec_a @ H @ V ) @ ( carrier_vec_vec_a @ N ) )
      = ( member_vec_a @ V @ ( carrier_vec_a @ N ) ) ) ).

% map_carrier_vec
thf(fact_22_map__carrier__vec,axiom,
    ! [H: nat > vec_a,V: vec_nat,N: nat] :
      ( ( member_vec_vec_a @ ( map_vec_nat_vec_a @ H @ V ) @ ( carrier_vec_vec_a @ N ) )
      = ( member_vec_nat @ V @ ( carrier_vec_nat @ N ) ) ) ).

% map_carrier_vec
thf(fact_23_map__carrier__vec,axiom,
    ! [H: vec_a > vec_a,V: vec_vec_a,N: nat] :
      ( ( member_vec_vec_a @ ( map_vec_vec_a_vec_a @ H @ V ) @ ( carrier_vec_vec_a @ N ) )
      = ( member_vec_vec_a @ V @ ( carrier_vec_vec_a @ N ) ) ) ).

% map_carrier_vec
thf(fact_24_map__carrier__vec,axiom,
    ! [H: a > a,V: vec_a,N: nat] :
      ( ( member_vec_a @ ( map_vec_a_a @ H @ V ) @ ( carrier_vec_a @ N ) )
      = ( member_vec_a @ V @ ( carrier_vec_a @ N ) ) ) ).

% map_carrier_vec
thf(fact_25_ulv0,axiom,
    ord_less_eq_vec_a @ ( zero_vec_a @ ( plus_plus_nat @ ( plus_plus_nat @ ( plus_plus_nat @ nr @ one_one_nat ) @ ( plus_plus_nat @ nc @ nc ) ) @ nr ) ) @ ulv ).

% ulv0
thf(fact_26_u3__def,axiom,
    ( u3
    = ( vec_last_a @ u1 @ ( plus_plus_nat @ nc @ nc ) ) ) ).

% u3_def
thf(fact_27_carrier__vecD,axiom,
    ! [V: vec_mat_a,N: nat] :
      ( ( member_vec_mat_a @ V @ ( carrier_vec_mat_a @ N ) )
     => ( ( dim_vec_mat_a @ V )
        = N ) ) ).

% carrier_vecD
thf(fact_28_carrier__vecD,axiom,
    ! [V: vec_nat,N: nat] :
      ( ( member_vec_nat @ V @ ( carrier_vec_nat @ N ) )
     => ( ( dim_vec_nat @ V )
        = N ) ) ).

% carrier_vecD
thf(fact_29_carrier__vecD,axiom,
    ! [V: vec_vec_a,N: nat] :
      ( ( member_vec_vec_a @ V @ ( carrier_vec_vec_a @ N ) )
     => ( ( dim_vec_vec_a @ V )
        = N ) ) ).

% carrier_vecD
thf(fact_30_carrier__vecD,axiom,
    ! [V: vec_a,N: nat] :
      ( ( member_vec_a @ V @ ( carrier_vec_a @ N ) )
     => ( ( dim_vec_a @ V )
        = N ) ) ).

% carrier_vecD
thf(fact_31_index__zero__vec_I2_J,axiom,
    ! [N: nat] :
      ( ( dim_vec_nat @ ( zero_vec_nat @ N ) )
      = N ) ).

% index_zero_vec(2)
thf(fact_32_index__zero__vec_I2_J,axiom,
    ! [N: nat] :
      ( ( dim_vec_a @ ( zero_vec_a @ N ) )
      = N ) ).

% index_zero_vec(2)
thf(fact_33_append__vec__eq,axiom,
    ! [V: vec_nat,N: nat,V2: vec_nat,W: vec_nat,W2: vec_nat] :
      ( ( member_vec_nat @ V @ ( carrier_vec_nat @ N ) )
     => ( ( member_vec_nat @ V2 @ ( carrier_vec_nat @ N ) )
       => ( ( ( append_vec_nat @ V @ W )
            = ( append_vec_nat @ V2 @ W2 ) )
          = ( ( V = V2 )
            & ( W = W2 ) ) ) ) ) ).

% append_vec_eq
thf(fact_34_append__vec__eq,axiom,
    ! [V: vec_vec_a,N: nat,V2: vec_vec_a,W: vec_vec_a,W2: vec_vec_a] :
      ( ( member_vec_vec_a @ V @ ( carrier_vec_vec_a @ N ) )
     => ( ( member_vec_vec_a @ V2 @ ( carrier_vec_vec_a @ N ) )
       => ( ( ( append_vec_vec_a @ V @ W )
            = ( append_vec_vec_a @ V2 @ W2 ) )
          = ( ( V = V2 )
            & ( W = W2 ) ) ) ) ) ).

% append_vec_eq
thf(fact_35_append__vec__eq,axiom,
    ! [V: vec_a,N: nat,V2: vec_a,W: vec_a,W2: vec_a] :
      ( ( member_vec_a @ V @ ( carrier_vec_a @ N ) )
     => ( ( member_vec_a @ V2 @ ( carrier_vec_a @ N ) )
       => ( ( ( append_vec_a @ V @ W )
            = ( append_vec_a @ V2 @ W2 ) )
          = ( ( V = V2 )
            & ( W = W2 ) ) ) ) ) ).

% append_vec_eq
thf(fact_36_index__map__vec_I2_J,axiom,
    ! [F: a > a,V: vec_a] :
      ( ( dim_vec_a @ ( map_vec_a_a @ F @ V ) )
      = ( dim_vec_a @ V ) ) ).

% index_map_vec(2)
thf(fact_37_index__map__vec_I2_J,axiom,
    ! [F: nat > a,V: vec_nat] :
      ( ( dim_vec_a @ ( map_vec_nat_a @ F @ V ) )
      = ( dim_vec_nat @ V ) ) ).

% index_map_vec(2)
thf(fact_38_index__map__vec_I2_J,axiom,
    ! [F: a > nat,V: vec_a] :
      ( ( dim_vec_nat @ ( map_vec_a_nat @ F @ V ) )
      = ( dim_vec_a @ V ) ) ).

% index_map_vec(2)
thf(fact_39_index__map__vec_I2_J,axiom,
    ! [F: nat > nat,V: vec_nat] :
      ( ( dim_vec_nat @ ( map_vec_nat_nat @ F @ V ) )
      = ( dim_vec_nat @ V ) ) ).

% index_map_vec(2)
thf(fact_40_index__map__vec_I2_J,axiom,
    ! [F: mat_a > a,V: vec_mat_a] :
      ( ( dim_vec_a @ ( map_vec_mat_a_a @ F @ V ) )
      = ( dim_vec_mat_a @ V ) ) ).

% index_map_vec(2)
thf(fact_41_index__map__vec_I2_J,axiom,
    ! [F: vec_a > a,V: vec_vec_a] :
      ( ( dim_vec_a @ ( map_vec_vec_a_a @ F @ V ) )
      = ( dim_vec_vec_a @ V ) ) ).

% index_map_vec(2)
thf(fact_42_index__map__vec_I2_J,axiom,
    ! [F: mat_a > nat,V: vec_mat_a] :
      ( ( dim_vec_nat @ ( map_vec_mat_a_nat @ F @ V ) )
      = ( dim_vec_mat_a @ V ) ) ).

% index_map_vec(2)
thf(fact_43_index__map__vec_I2_J,axiom,
    ! [F: vec_a > nat,V: vec_vec_a] :
      ( ( dim_vec_nat @ ( map_vec_vec_a_nat @ F @ V ) )
      = ( dim_vec_vec_a @ V ) ) ).

% index_map_vec(2)
thf(fact_44_index__map__vec_I2_J,axiom,
    ! [F: a > mat_a,V: vec_a] :
      ( ( dim_vec_mat_a @ ( map_vec_a_mat_a @ F @ V ) )
      = ( dim_vec_a @ V ) ) ).

% index_map_vec(2)
thf(fact_45_index__map__vec_I2_J,axiom,
    ! [F: nat > mat_a,V: vec_nat] :
      ( ( dim_vec_mat_a @ ( map_vec_nat_mat_a @ F @ V ) )
      = ( dim_vec_nat @ V ) ) ).

% index_map_vec(2)
thf(fact_46_dim__vec__first,axiom,
    ! [V: vec_nat,N: nat] :
      ( ( dim_vec_nat @ ( vec_first_nat @ V @ N ) )
      = N ) ).

% dim_vec_first
thf(fact_47_dim__vec__first,axiom,
    ! [V: vec_mat_a,N: nat] :
      ( ( dim_vec_mat_a @ ( vec_first_mat_a @ V @ N ) )
      = N ) ).

% dim_vec_first
thf(fact_48_dim__vec__first,axiom,
    ! [V: vec_vec_a,N: nat] :
      ( ( dim_vec_vec_a @ ( vec_first_vec_a @ V @ N ) )
      = N ) ).

% dim_vec_first
thf(fact_49_dim__vec__first,axiom,
    ! [V: vec_a,N: nat] :
      ( ( dim_vec_a @ ( vec_first_a @ V @ N ) )
      = N ) ).

% dim_vec_first
thf(fact_50_vec__inv__dim,axiom,
    ! [V: vec_a] :
      ( ( dim_vec_a @ ( schur_vec_inv_a @ V ) )
      = ( dim_vec_a @ V ) ) ).

% vec_inv_dim
thf(fact_51_append__carrier__vec,axiom,
    ! [V: vec_nat,N1: nat,W: vec_nat,N2: nat] :
      ( ( member_vec_nat @ V @ ( carrier_vec_nat @ N1 ) )
     => ( ( member_vec_nat @ W @ ( carrier_vec_nat @ N2 ) )
       => ( member_vec_nat @ ( append_vec_nat @ V @ W ) @ ( carrier_vec_nat @ ( plus_plus_nat @ N1 @ N2 ) ) ) ) ) ).

% append_carrier_vec
thf(fact_52_append__carrier__vec,axiom,
    ! [V: vec_vec_a,N1: nat,W: vec_vec_a,N2: nat] :
      ( ( member_vec_vec_a @ V @ ( carrier_vec_vec_a @ N1 ) )
     => ( ( member_vec_vec_a @ W @ ( carrier_vec_vec_a @ N2 ) )
       => ( member_vec_vec_a @ ( append_vec_vec_a @ V @ W ) @ ( carrier_vec_vec_a @ ( plus_plus_nat @ N1 @ N2 ) ) ) ) ) ).

% append_carrier_vec
thf(fact_53_append__carrier__vec,axiom,
    ! [V: vec_a,N1: nat,W: vec_a,N2: nat] :
      ( ( member_vec_a @ V @ ( carrier_vec_a @ N1 ) )
     => ( ( member_vec_a @ W @ ( carrier_vec_a @ N2 ) )
       => ( member_vec_a @ ( append_vec_a @ V @ W ) @ ( carrier_vec_a @ ( plus_plus_nat @ N1 @ N2 ) ) ) ) ) ).

% append_carrier_vec
thf(fact_54_index__append__vec_I2_J,axiom,
    ! [V: vec_mat_a,W: vec_mat_a] :
      ( ( dim_vec_mat_a @ ( append_vec_mat_a @ V @ W ) )
      = ( plus_plus_nat @ ( dim_vec_mat_a @ V ) @ ( dim_vec_mat_a @ W ) ) ) ).

% index_append_vec(2)
thf(fact_55_index__append__vec_I2_J,axiom,
    ! [V: vec_vec_a,W: vec_vec_a] :
      ( ( dim_vec_vec_a @ ( append_vec_vec_a @ V @ W ) )
      = ( plus_plus_nat @ ( dim_vec_vec_a @ V ) @ ( dim_vec_vec_a @ W ) ) ) ).

% index_append_vec(2)
thf(fact_56_index__append__vec_I2_J,axiom,
    ! [V: vec_nat,W: vec_nat] :
      ( ( dim_vec_nat @ ( append_vec_nat @ V @ W ) )
      = ( plus_plus_nat @ ( dim_vec_nat @ V ) @ ( dim_vec_nat @ W ) ) ) ).

% index_append_vec(2)
thf(fact_57_index__append__vec_I2_J,axiom,
    ! [V: vec_a,W: vec_a] :
      ( ( dim_vec_a @ ( append_vec_a @ V @ W ) )
      = ( plus_plus_nat @ ( dim_vec_a @ V ) @ ( dim_vec_a @ W ) ) ) ).

% index_append_vec(2)
thf(fact_58_u2__def,axiom,
    ( u2
    = ( vec_first_a @ u1 @ ( plus_plus_nat @ nr @ one_one_nat ) ) ) ).

% u2_def
thf(fact_59_vec__first__last__append,axiom,
    ! [V: vec_nat,N: nat,M: nat] :
      ( ( member_vec_nat @ V @ ( carrier_vec_nat @ ( plus_plus_nat @ N @ M ) ) )
     => ( ( append_vec_nat @ ( vec_first_nat @ V @ N ) @ ( vec_last_nat @ V @ M ) )
        = V ) ) ).

% vec_first_last_append
thf(fact_60_vec__first__last__append,axiom,
    ! [V: vec_vec_a,N: nat,M: nat] :
      ( ( member_vec_vec_a @ V @ ( carrier_vec_vec_a @ ( plus_plus_nat @ N @ M ) ) )
     => ( ( append_vec_vec_a @ ( vec_first_vec_a @ V @ N ) @ ( vec_last_vec_a @ V @ M ) )
        = V ) ) ).

% vec_first_last_append
thf(fact_61_vec__first__last__append,axiom,
    ! [V: vec_a,N: nat,M: nat] :
      ( ( member_vec_a @ V @ ( carrier_vec_a @ ( plus_plus_nat @ N @ M ) ) )
     => ( ( append_vec_a @ ( vec_first_a @ V @ N ) @ ( vec_last_a @ V @ M ) )
        = V ) ) ).

% vec_first_last_append
thf(fact_62_M__low,axiom,
    member_mat_a @ m_low @ ( carrier_mat_a @ ( plus_plus_nat @ nc @ nc ) @ ( plus_plus_nat @ nc @ nr ) ) ).

% M_low
thf(fact_63_M__last,axiom,
    member_mat_a @ m_last @ ( carrier_mat_a @ nr @ ( plus_plus_nat @ nc @ nr ) ) ).

% M_last
thf(fact_64_M,axiom,
    member_mat_a @ m @ ( carrier_mat_a @ ( plus_plus_nat @ ( plus_plus_nat @ ( plus_plus_nat @ nr @ one_one_nat ) @ ( plus_plus_nat @ nc @ nc ) ) @ nr ) @ ( plus_plus_nat @ nc @ nr ) ) ).

% M
thf(fact_65_M__up,axiom,
    member_mat_a @ m_up @ ( carrier_mat_a @ ( plus_plus_nat @ nr @ one_one_nat ) @ ( plus_plus_nat @ nc @ nr ) ) ).

% M_up
thf(fact_66_primal,axiom,
    ? [X: vec_a] :
      ( ( member_vec_a @ X @ ( carrier_vec_a @ nc ) )
      & ( ord_less_eq_vec_a @ ( mult_mat_vec_a @ a2 @ X ) @ b ) ) ).

% primal
thf(fact_67_append__vec__le,axiom,
    ! [V: vec_nat,N: nat,W: vec_nat,V2: vec_nat,W2: vec_nat] :
      ( ( member_vec_nat @ V @ ( carrier_vec_nat @ N ) )
     => ( ( member_vec_nat @ W @ ( carrier_vec_nat @ N ) )
       => ( ( ord_less_eq_vec_nat @ ( append_vec_nat @ V @ V2 ) @ ( append_vec_nat @ W @ W2 ) )
          = ( ( ord_less_eq_vec_nat @ V @ W )
            & ( ord_less_eq_vec_nat @ V2 @ W2 ) ) ) ) ) ).

% append_vec_le
thf(fact_68_append__vec__le,axiom,
    ! [V: vec_vec_a,N: nat,W: vec_vec_a,V2: vec_vec_a,W2: vec_vec_a] :
      ( ( member_vec_vec_a @ V @ ( carrier_vec_vec_a @ N ) )
     => ( ( member_vec_vec_a @ W @ ( carrier_vec_vec_a @ N ) )
       => ( ( ord_le4012615358376148468_vec_a @ ( append_vec_vec_a @ V @ V2 ) @ ( append_vec_vec_a @ W @ W2 ) )
          = ( ( ord_le4012615358376148468_vec_a @ V @ W )
            & ( ord_le4012615358376148468_vec_a @ V2 @ W2 ) ) ) ) ) ).

% append_vec_le
thf(fact_69_append__vec__le,axiom,
    ! [V: vec_a,N: nat,W: vec_a,V2: vec_a,W2: vec_a] :
      ( ( member_vec_a @ V @ ( carrier_vec_a @ N ) )
     => ( ( member_vec_a @ W @ ( carrier_vec_a @ N ) )
       => ( ( ord_less_eq_vec_a @ ( append_vec_a @ V @ V2 ) @ ( append_vec_a @ W @ W2 ) )
          = ( ( ord_less_eq_vec_a @ V @ W )
            & ( ord_less_eq_vec_a @ V2 @ W2 ) ) ) ) ) ).

% append_vec_le
thf(fact_70_all__vec__append,axiom,
    ! [N: nat,M: nat,P: vec_nat > $o] :
      ( ( ! [X2: vec_nat] :
            ( ( member_vec_nat @ X2 @ ( carrier_vec_nat @ ( plus_plus_nat @ N @ M ) ) )
           => ( P @ X2 ) ) )
      = ( ! [X2: vec_nat] :
            ( ( member_vec_nat @ X2 @ ( carrier_vec_nat @ N ) )
           => ! [Y: vec_nat] :
                ( ( member_vec_nat @ Y @ ( carrier_vec_nat @ M ) )
               => ( P @ ( append_vec_nat @ X2 @ Y ) ) ) ) ) ) ).

% all_vec_append
thf(fact_71_all__vec__append,axiom,
    ! [N: nat,M: nat,P: vec_vec_a > $o] :
      ( ( ! [X2: vec_vec_a] :
            ( ( member_vec_vec_a @ X2 @ ( carrier_vec_vec_a @ ( plus_plus_nat @ N @ M ) ) )
           => ( P @ X2 ) ) )
      = ( ! [X2: vec_vec_a] :
            ( ( member_vec_vec_a @ X2 @ ( carrier_vec_vec_a @ N ) )
           => ! [Y: vec_vec_a] :
                ( ( member_vec_vec_a @ Y @ ( carrier_vec_vec_a @ M ) )
               => ( P @ ( append_vec_vec_a @ X2 @ Y ) ) ) ) ) ) ).

% all_vec_append
thf(fact_72_all__vec__append,axiom,
    ! [N: nat,M: nat,P: vec_a > $o] :
      ( ( ! [X2: vec_a] :
            ( ( member_vec_a @ X2 @ ( carrier_vec_a @ ( plus_plus_nat @ N @ M ) ) )
           => ( P @ X2 ) ) )
      = ( ! [X2: vec_a] :
            ( ( member_vec_a @ X2 @ ( carrier_vec_a @ N ) )
           => ! [Y: vec_a] :
                ( ( member_vec_a @ Y @ ( carrier_vec_a @ M ) )
               => ( P @ ( append_vec_a @ X2 @ Y ) ) ) ) ) ) ).

% all_vec_append
thf(fact_73_carrier__vec__dim__vec,axiom,
    ! [V: vec_mat_a] : ( member_vec_mat_a @ V @ ( carrier_vec_mat_a @ ( dim_vec_mat_a @ V ) ) ) ).

% carrier_vec_dim_vec
thf(fact_74_carrier__vec__dim__vec,axiom,
    ! [V: vec_nat] : ( member_vec_nat @ V @ ( carrier_vec_nat @ ( dim_vec_nat @ V ) ) ) ).

% carrier_vec_dim_vec
thf(fact_75_carrier__vec__dim__vec,axiom,
    ! [V: vec_vec_a] : ( member_vec_vec_a @ V @ ( carrier_vec_vec_a @ ( dim_vec_vec_a @ V ) ) ) ).

% carrier_vec_dim_vec
thf(fact_76_carrier__vec__dim__vec,axiom,
    ! [V: vec_a] : ( member_vec_a @ V @ ( carrier_vec_a @ ( dim_vec_a @ V ) ) ) ).

% carrier_vec_dim_vec
thf(fact_77_carrier__dim__vec,axiom,
    ! [V: vec_mat_a,N: nat] :
      ( ( member_vec_mat_a @ V @ ( carrier_vec_mat_a @ N ) )
      = ( ( dim_vec_mat_a @ V )
        = N ) ) ).

% carrier_dim_vec
thf(fact_78_carrier__dim__vec,axiom,
    ! [V: vec_nat,N: nat] :
      ( ( member_vec_nat @ V @ ( carrier_vec_nat @ N ) )
      = ( ( dim_vec_nat @ V )
        = N ) ) ).

% carrier_dim_vec
thf(fact_79_carrier__dim__vec,axiom,
    ! [V: vec_vec_a,N: nat] :
      ( ( member_vec_vec_a @ V @ ( carrier_vec_vec_a @ N ) )
      = ( ( dim_vec_vec_a @ V )
        = N ) ) ).

% carrier_dim_vec
thf(fact_80_carrier__dim__vec,axiom,
    ! [V: vec_a,N: nat] :
      ( ( member_vec_a @ V @ ( carrier_vec_a @ N ) )
      = ( ( dim_vec_a @ V )
        = N ) ) ).

% carrier_dim_vec
thf(fact_81_carrier__vecI,axiom,
    ! [V: vec_mat_a,N: nat] :
      ( ( ( dim_vec_mat_a @ V )
        = N )
     => ( member_vec_mat_a @ V @ ( carrier_vec_mat_a @ N ) ) ) ).

% carrier_vecI
thf(fact_82_carrier__vecI,axiom,
    ! [V: vec_nat,N: nat] :
      ( ( ( dim_vec_nat @ V )
        = N )
     => ( member_vec_nat @ V @ ( carrier_vec_nat @ N ) ) ) ).

% carrier_vecI
thf(fact_83_carrier__vecI,axiom,
    ! [V: vec_vec_a,N: nat] :
      ( ( ( dim_vec_vec_a @ V )
        = N )
     => ( member_vec_vec_a @ V @ ( carrier_vec_vec_a @ N ) ) ) ).

% carrier_vecI
thf(fact_84_carrier__vecI,axiom,
    ! [V: vec_a,N: nat] :
      ( ( ( dim_vec_a @ V )
        = N )
     => ( member_vec_a @ V @ ( carrier_vec_a @ N ) ) ) ).

% carrier_vecI
thf(fact_85_zero__carrier__vec,axiom,
    ! [N: nat] : ( member_vec_nat @ ( zero_vec_nat @ N ) @ ( carrier_vec_nat @ N ) ) ).

% zero_carrier_vec
thf(fact_86_zero__carrier__vec,axiom,
    ! [N: nat] : ( member_vec_a @ ( zero_vec_a @ N ) @ ( carrier_vec_a @ N ) ) ).

% zero_carrier_vec
thf(fact_87_vec__first__carrier,axiom,
    ! [V: vec_nat,N: nat] : ( member_vec_nat @ ( vec_first_nat @ V @ N ) @ ( carrier_vec_nat @ N ) ) ).

% vec_first_carrier
thf(fact_88_vec__first__carrier,axiom,
    ! [V: vec_vec_a,N: nat] : ( member_vec_vec_a @ ( vec_first_vec_a @ V @ N ) @ ( carrier_vec_vec_a @ N ) ) ).

% vec_first_carrier
thf(fact_89_vec__first__carrier,axiom,
    ! [V: vec_a,N: nat] : ( member_vec_a @ ( vec_first_a @ V @ N ) @ ( carrier_vec_a @ N ) ) ).

% vec_first_carrier
thf(fact_90_bc__def,axiom,
    ( bc
    = ( append_vec_a @ ( append_vec_a @ ( append_vec_a @ b @ ( zero_vec_a @ one_one_nat ) ) @ ( append_vec_a @ c @ ( uminus_uminus_vec_a @ c ) ) ) @ ( zero_vec_a @ nr ) ) ) ).

% bc_def
thf(fact_91_add__le__cancel__left,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) )
      = ( ord_less_eq_nat @ A @ B ) ) ).

% add_le_cancel_left
thf(fact_92_add__le__cancel__left,axiom,
    ! [C: a,A: a,B: a] :
      ( ( ord_less_eq_a @ ( plus_plus_a @ C @ A ) @ ( plus_plus_a @ C @ B ) )
      = ( ord_less_eq_a @ A @ B ) ) ).

% add_le_cancel_left
thf(fact_93_add__le__cancel__right,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) )
      = ( ord_less_eq_nat @ A @ B ) ) ).

% add_le_cancel_right
thf(fact_94_add__le__cancel__right,axiom,
    ! [A: a,C: a,B: a] :
      ( ( ord_less_eq_a @ ( plus_plus_a @ A @ C ) @ ( plus_plus_a @ B @ C ) )
      = ( ord_less_eq_a @ A @ B ) ) ).

% add_le_cancel_right
thf(fact_95_vec__first__append,axiom,
    ! [V: vec_nat,N: nat,W: vec_nat] :
      ( ( member_vec_nat @ V @ ( carrier_vec_nat @ N ) )
     => ( ( vec_first_nat @ ( append_vec_nat @ V @ W ) @ N )
        = V ) ) ).

% vec_first_append
thf(fact_96_vec__first__append,axiom,
    ! [V: vec_vec_a,N: nat,W: vec_vec_a] :
      ( ( member_vec_vec_a @ V @ ( carrier_vec_vec_a @ N ) )
     => ( ( vec_first_vec_a @ ( append_vec_vec_a @ V @ W ) @ N )
        = V ) ) ).

% vec_first_append
thf(fact_97_vec__first__append,axiom,
    ! [V: vec_a,N: nat,W: vec_a] :
      ( ( member_vec_a @ V @ ( carrier_vec_a @ N ) )
     => ( ( vec_first_a @ ( append_vec_a @ V @ W ) @ N )
        = V ) ) ).

% vec_first_append
thf(fact_98_vardim_Opadr__padl__eq,axiom,
    ! [V: vec_nat,N: nat,M: nat,U: vec_nat] :
      ( ( member_vec_nat @ V @ ( carrier_vec_nat @ N ) )
     => ( ( ( append_vec_nat @ V @ ( zero_vec_nat @ M ) )
          = ( append_vec_nat @ ( zero_vec_nat @ N ) @ U ) )
        = ( ( V
            = ( zero_vec_nat @ N ) )
          & ( U
            = ( zero_vec_nat @ M ) ) ) ) ) ).

% vardim.padr_padl_eq
thf(fact_99_vardim_Opadr__padl__eq,axiom,
    ! [V: vec_a,N: nat,M: nat,U: vec_a] :
      ( ( member_vec_a @ V @ ( carrier_vec_a @ N ) )
     => ( ( ( append_vec_a @ V @ ( zero_vec_a @ M ) )
          = ( append_vec_a @ ( zero_vec_a @ N ) @ U ) )
        = ( ( V
            = ( zero_vec_a @ N ) )
          & ( U
            = ( zero_vec_a @ M ) ) ) ) ) ).

% vardim.padr_padl_eq
thf(fact_100_exists__vec__append,axiom,
    ! [N: nat,M: nat,P: vec_nat > $o] :
      ( ( ? [X2: vec_nat] :
            ( ( member_vec_nat @ X2 @ ( carrier_vec_nat @ ( plus_plus_nat @ N @ M ) ) )
            & ( P @ X2 ) ) )
      = ( ? [X2: vec_nat] :
            ( ( member_vec_nat @ X2 @ ( carrier_vec_nat @ N ) )
            & ? [Y: vec_nat] :
                ( ( member_vec_nat @ Y @ ( carrier_vec_nat @ M ) )
                & ( P @ ( append_vec_nat @ X2 @ Y ) ) ) ) ) ) ).

% exists_vec_append
thf(fact_101_exists__vec__append,axiom,
    ! [N: nat,M: nat,P: vec_vec_a > $o] :
      ( ( ? [X2: vec_vec_a] :
            ( ( member_vec_vec_a @ X2 @ ( carrier_vec_vec_a @ ( plus_plus_nat @ N @ M ) ) )
            & ( P @ X2 ) ) )
      = ( ? [X2: vec_vec_a] :
            ( ( member_vec_vec_a @ X2 @ ( carrier_vec_vec_a @ N ) )
            & ? [Y: vec_vec_a] :
                ( ( member_vec_vec_a @ Y @ ( carrier_vec_vec_a @ M ) )
                & ( P @ ( append_vec_vec_a @ X2 @ Y ) ) ) ) ) ) ).

% exists_vec_append
thf(fact_102_exists__vec__append,axiom,
    ! [N: nat,M: nat,P: vec_a > $o] :
      ( ( ? [X2: vec_a] :
            ( ( member_vec_a @ X2 @ ( carrier_vec_a @ ( plus_plus_nat @ N @ M ) ) )
            & ( P @ X2 ) ) )
      = ( ? [X2: vec_a] :
            ( ( member_vec_a @ X2 @ ( carrier_vec_a @ N ) )
            & ? [Y: vec_a] :
                ( ( member_vec_a @ Y @ ( carrier_vec_a @ M ) )
                & ( P @ ( append_vec_a @ X2 @ Y ) ) ) ) ) ) ).

% exists_vec_append
thf(fact_103_dual,axiom,
    ? [Y2: vec_a] :
      ( ( ord_less_eq_vec_a @ ( zero_vec_a @ nr ) @ Y2 )
      & ( ( mult_mat_vec_a @ ( transpose_mat_a @ a2 ) @ Y2 )
        = c ) ) ).

% dual
thf(fact_104_add__left__cancel,axiom,
    ! [A: a,B: a,C: a] :
      ( ( ( plus_plus_a @ A @ B )
        = ( plus_plus_a @ A @ C ) )
      = ( B = C ) ) ).

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

% add_left_cancel
thf(fact_106_add__right__cancel,axiom,
    ! [B: a,A: a,C: a] :
      ( ( ( plus_plus_a @ B @ A )
        = ( plus_plus_a @ C @ A ) )
      = ( B = C ) ) ).

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

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

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

% mem_Collect_eq
thf(fact_110_mem__Collect__eq,axiom,
    ! [A: vec_nat,P: vec_nat > $o] :
      ( ( member_vec_nat @ A @ ( collect_vec_nat @ P ) )
      = ( P @ A ) ) ).

% mem_Collect_eq
thf(fact_111_mem__Collect__eq,axiom,
    ! [A: vec_vec_a,P: vec_vec_a > $o] :
      ( ( member_vec_vec_a @ A @ ( collect_vec_vec_a @ P ) )
      = ( P @ A ) ) ).

% mem_Collect_eq
thf(fact_112_mem__Collect__eq,axiom,
    ! [A: vec_a,P: vec_a > $o] :
      ( ( member_vec_a @ A @ ( collect_vec_a @ P ) )
      = ( P @ A ) ) ).

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

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

% Collect_mem_eq
thf(fact_115_Collect__mem__eq,axiom,
    ! [A2: set_mat_nat] :
      ( ( collect_mat_nat
        @ ^ [X2: mat_nat] : ( member_mat_nat @ X2 @ A2 ) )
      = A2 ) ).

% Collect_mem_eq
thf(fact_116_Collect__mem__eq,axiom,
    ! [A2: set_vec_nat] :
      ( ( collect_vec_nat
        @ ^ [X2: vec_nat] : ( member_vec_nat @ X2 @ A2 ) )
      = A2 ) ).

% Collect_mem_eq
thf(fact_117_Collect__mem__eq,axiom,
    ! [A2: set_vec_vec_a] :
      ( ( collect_vec_vec_a
        @ ^ [X2: vec_vec_a] : ( member_vec_vec_a @ X2 @ A2 ) )
      = A2 ) ).

% Collect_mem_eq
thf(fact_118_Collect__mem__eq,axiom,
    ! [A2: set_vec_a] :
      ( ( collect_vec_a
        @ ^ [X2: vec_a] : ( member_vec_a @ X2 @ A2 ) )
      = A2 ) ).

% Collect_mem_eq
thf(fact_119_Collect__mem__eq,axiom,
    ! [A2: set_mat_a] :
      ( ( collect_mat_a
        @ ^ [X2: mat_a] : ( member_mat_a @ X2 @ A2 ) )
      = A2 ) ).

% Collect_mem_eq
thf(fact_120_Collect__cong,axiom,
    ! [P: mat_a > $o,Q: mat_a > $o] :
      ( ! [X: mat_a] :
          ( ( P @ X )
          = ( Q @ X ) )
     => ( ( collect_mat_a @ P )
        = ( collect_mat_a @ Q ) ) ) ).

% Collect_cong
thf(fact_121_Collect__cong,axiom,
    ! [P: vec_a > $o,Q: vec_a > $o] :
      ( ! [X: vec_a] :
          ( ( P @ X )
          = ( Q @ X ) )
     => ( ( collect_vec_a @ P )
        = ( collect_vec_a @ Q ) ) ) ).

% Collect_cong
thf(fact_122_set__plus__intro,axiom,
    ! [A: mat_nat,C2: set_mat_nat,B: mat_nat,D: set_mat_nat] :
      ( ( member_mat_nat @ A @ C2 )
     => ( ( member_mat_nat @ B @ D )
       => ( member_mat_nat @ ( plus_plus_mat_nat @ A @ B ) @ ( plus_p2215855510709889632at_nat @ C2 @ D ) ) ) ) ).

% set_plus_intro
thf(fact_123_set__plus__intro,axiom,
    ! [A: vec_nat,C2: set_vec_nat,B: vec_nat,D: set_vec_nat] :
      ( ( member_vec_nat @ A @ C2 )
     => ( ( member_vec_nat @ B @ D )
       => ( member_vec_nat @ ( plus_plus_vec_nat @ A @ B ) @ ( plus_p1963516127331757268ec_nat @ C2 @ D ) ) ) ) ).

% set_plus_intro
thf(fact_124_set__plus__intro,axiom,
    ! [A: vec_vec_a,C2: set_vec_vec_a,B: vec_vec_a,D: set_vec_vec_a] :
      ( ( member_vec_vec_a @ A @ C2 )
     => ( ( member_vec_vec_a @ B @ D )
       => ( member_vec_vec_a @ ( plus_plus_vec_vec_a @ A @ B ) @ ( plus_p8188967515152927083_vec_a @ C2 @ D ) ) ) ) ).

% set_plus_intro
thf(fact_125_set__plus__intro,axiom,
    ! [A: set_vec_a,C2: set_set_vec_a,B: set_vec_a,D: set_set_vec_a] :
      ( ( member_set_vec_a @ A @ C2 )
     => ( ( member_set_vec_a @ B @ D )
       => ( member_set_vec_a @ ( plus_plus_set_vec_a @ A @ B ) @ ( plus_p5225466182533350236_vec_a @ C2 @ D ) ) ) ) ).

% set_plus_intro
thf(fact_126_set__plus__intro,axiom,
    ! [A: set_mat_a,C2: set_set_mat_a,B: set_mat_a,D: set_set_mat_a] :
      ( ( member_set_mat_a @ A @ C2 )
     => ( ( member_set_mat_a @ B @ D )
       => ( member_set_mat_a @ ( plus_plus_set_mat_a @ A @ B ) @ ( plus_p8188135320652551888_mat_a @ C2 @ D ) ) ) ) ).

% set_plus_intro
thf(fact_127_set__plus__intro,axiom,
    ! [A: set_nat,C2: set_set_nat,B: set_nat,D: set_set_nat] :
      ( ( member_set_nat @ A @ C2 )
     => ( ( member_set_nat @ B @ D )
       => ( member_set_nat @ ( plus_plus_set_nat @ A @ B ) @ ( plus_p4817606893110106565et_nat @ C2 @ D ) ) ) ) ).

% set_plus_intro
thf(fact_128_set__plus__intro,axiom,
    ! [A: a,C2: set_a,B: a,D: set_a] :
      ( ( member_a @ A @ C2 )
     => ( ( member_a @ B @ D )
       => ( member_a @ ( plus_plus_a @ A @ B ) @ ( plus_plus_set_a @ C2 @ D ) ) ) ) ).

% set_plus_intro
thf(fact_129_set__plus__intro,axiom,
    ! [A: vec_a,C2: set_vec_a,B: vec_a,D: set_vec_a] :
      ( ( member_vec_a @ A @ C2 )
     => ( ( member_vec_a @ B @ D )
       => ( member_vec_a @ ( plus_plus_vec_a @ A @ B ) @ ( plus_plus_set_vec_a @ C2 @ D ) ) ) ) ).

% set_plus_intro
thf(fact_130_set__plus__intro,axiom,
    ! [A: mat_a,C2: set_mat_a,B: mat_a,D: set_mat_a] :
      ( ( member_mat_a @ A @ C2 )
     => ( ( member_mat_a @ B @ D )
       => ( member_mat_a @ ( plus_plus_mat_a @ A @ B ) @ ( plus_plus_set_mat_a @ C2 @ D ) ) ) ) ).

% set_plus_intro
thf(fact_131_set__plus__intro,axiom,
    ! [A: nat,C2: set_nat,B: nat,D: set_nat] :
      ( ( member_nat @ A @ C2 )
     => ( ( member_nat @ B @ D )
       => ( member_nat @ ( plus_plus_nat @ A @ B ) @ ( plus_plus_set_nat @ C2 @ D ) ) ) ) ).

% set_plus_intro
thf(fact_132_order__refl,axiom,
    ! [X3: set_vec_a] : ( ord_le4791951621262958845_vec_a @ X3 @ X3 ) ).

% order_refl
thf(fact_133_order__refl,axiom,
    ! [X3: set_mat_a] : ( ord_le3318621148231462513_mat_a @ X3 @ X3 ) ).

% order_refl
thf(fact_134_order__refl,axiom,
    ! [X3: vec_nat] : ( ord_less_eq_vec_nat @ X3 @ X3 ) ).

% order_refl
thf(fact_135_order__refl,axiom,
    ! [X3: vec_vec_a] : ( ord_le4012615358376148468_vec_a @ X3 @ X3 ) ).

% order_refl
thf(fact_136_order__refl,axiom,
    ! [X3: set_nat] : ( ord_less_eq_set_nat @ X3 @ X3 ) ).

% order_refl
thf(fact_137_order__refl,axiom,
    ! [X3: vec_a] : ( ord_less_eq_vec_a @ X3 @ X3 ) ).

% order_refl
thf(fact_138_order__refl,axiom,
    ! [X3: nat] : ( ord_less_eq_nat @ X3 @ X3 ) ).

% order_refl
thf(fact_139_order__refl,axiom,
    ! [X3: a] : ( ord_less_eq_a @ X3 @ X3 ) ).

% order_refl
thf(fact_140_dual__order_Orefl,axiom,
    ! [A: set_vec_a] : ( ord_le4791951621262958845_vec_a @ A @ A ) ).

% dual_order.refl
thf(fact_141_dual__order_Orefl,axiom,
    ! [A: set_mat_a] : ( ord_le3318621148231462513_mat_a @ A @ A ) ).

% dual_order.refl
thf(fact_142_dual__order_Orefl,axiom,
    ! [A: vec_nat] : ( ord_less_eq_vec_nat @ A @ A ) ).

% dual_order.refl
thf(fact_143_dual__order_Orefl,axiom,
    ! [A: vec_vec_a] : ( ord_le4012615358376148468_vec_a @ A @ A ) ).

% dual_order.refl
thf(fact_144_dual__order_Orefl,axiom,
    ! [A: set_nat] : ( ord_less_eq_set_nat @ A @ A ) ).

% dual_order.refl
thf(fact_145_dual__order_Orefl,axiom,
    ! [A: vec_a] : ( ord_less_eq_vec_a @ A @ A ) ).

% dual_order.refl
thf(fact_146_dual__order_Orefl,axiom,
    ! [A: nat] : ( ord_less_eq_nat @ A @ A ) ).

% dual_order.refl
thf(fact_147_dual__order_Orefl,axiom,
    ! [A: a] : ( ord_less_eq_a @ A @ A ) ).

% dual_order.refl
thf(fact_148_neg__equal__iff__equal,axiom,
    ! [A: a,B: a] :
      ( ( ( uminus_uminus_a @ A )
        = ( uminus_uminus_a @ B ) )
      = ( A = B ) ) ).

% neg_equal_iff_equal
thf(fact_149_add_Oinverse__inverse,axiom,
    ! [A: a] :
      ( ( uminus_uminus_a @ ( uminus_uminus_a @ A ) )
      = A ) ).

% add.inverse_inverse
thf(fact_150_assoc__add__mat,axiom,
    ! [A2: mat_nat,Nr: nat,Nc: nat,B2: mat_nat,C2: mat_nat] :
      ( ( member_mat_nat @ A2 @ ( carrier_mat_nat @ Nr @ Nc ) )
     => ( ( member_mat_nat @ B2 @ ( carrier_mat_nat @ Nr @ Nc ) )
       => ( ( member_mat_nat @ C2 @ ( carrier_mat_nat @ Nr @ Nc ) )
         => ( ( plus_plus_mat_nat @ ( plus_plus_mat_nat @ A2 @ B2 ) @ C2 )
            = ( plus_plus_mat_nat @ A2 @ ( plus_plus_mat_nat @ B2 @ C2 ) ) ) ) ) ) ).

% assoc_add_mat
thf(fact_151_assoc__add__mat,axiom,
    ! [A2: mat_a,Nr: nat,Nc: nat,B2: mat_a,C2: mat_a] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( ( member_mat_a @ B2 @ ( carrier_mat_a @ Nr @ Nc ) )
       => ( ( member_mat_a @ C2 @ ( carrier_mat_a @ Nr @ Nc ) )
         => ( ( plus_plus_mat_a @ ( plus_plus_mat_a @ A2 @ B2 ) @ C2 )
            = ( plus_plus_mat_a @ A2 @ ( plus_plus_mat_a @ B2 @ C2 ) ) ) ) ) ) ).

% assoc_add_mat
thf(fact_152_assoc__add__vec,axiom,
    ! [V_1: vec_nat,N: nat,V_2: vec_nat,V_3: vec_nat] :
      ( ( member_vec_nat @ V_1 @ ( carrier_vec_nat @ N ) )
     => ( ( member_vec_nat @ V_2 @ ( carrier_vec_nat @ N ) )
       => ( ( member_vec_nat @ V_3 @ ( carrier_vec_nat @ N ) )
         => ( ( plus_plus_vec_nat @ ( plus_plus_vec_nat @ V_1 @ V_2 ) @ V_3 )
            = ( plus_plus_vec_nat @ V_1 @ ( plus_plus_vec_nat @ V_2 @ V_3 ) ) ) ) ) ) ).

% assoc_add_vec
thf(fact_153_assoc__add__vec,axiom,
    ! [V_1: vec_a,N: nat,V_2: vec_a,V_3: vec_a] :
      ( ( member_vec_a @ V_1 @ ( carrier_vec_a @ N ) )
     => ( ( member_vec_a @ V_2 @ ( carrier_vec_a @ N ) )
       => ( ( member_vec_a @ V_3 @ ( carrier_vec_a @ N ) )
         => ( ( plus_plus_vec_a @ ( plus_plus_vec_a @ V_1 @ V_2 ) @ V_3 )
            = ( plus_plus_vec_a @ V_1 @ ( plus_plus_vec_a @ V_2 @ V_3 ) ) ) ) ) ) ).

% assoc_add_vec
thf(fact_154_index__add__vec_I2_J,axiom,
    ! [V_1: vec_nat,V_2: vec_nat] :
      ( ( dim_vec_nat @ ( plus_plus_vec_nat @ V_1 @ V_2 ) )
      = ( dim_vec_nat @ V_2 ) ) ).

% index_add_vec(2)
thf(fact_155_index__add__vec_I2_J,axiom,
    ! [V_1: vec_mat_a,V_2: vec_mat_a] :
      ( ( dim_vec_mat_a @ ( plus_plus_vec_mat_a @ V_1 @ V_2 ) )
      = ( dim_vec_mat_a @ V_2 ) ) ).

% index_add_vec(2)
thf(fact_156_index__add__vec_I2_J,axiom,
    ! [V_1: vec_vec_a,V_2: vec_vec_a] :
      ( ( dim_vec_vec_a @ ( plus_plus_vec_vec_a @ V_1 @ V_2 ) )
      = ( dim_vec_vec_a @ V_2 ) ) ).

% index_add_vec(2)
thf(fact_157_index__add__vec_I2_J,axiom,
    ! [V_1: vec_a,V_2: vec_a] :
      ( ( dim_vec_a @ ( plus_plus_vec_a @ V_1 @ V_2 ) )
      = ( dim_vec_a @ V_2 ) ) ).

% index_add_vec(2)
thf(fact_158_transpose__mat__eq,axiom,
    ! [A2: mat_nat,B2: mat_nat] :
      ( ( ( transpose_mat_nat @ A2 )
        = ( transpose_mat_nat @ B2 ) )
      = ( A2 = B2 ) ) ).

% transpose_mat_eq
thf(fact_159_transpose__mat__eq,axiom,
    ! [A2: mat_a,B2: mat_a] :
      ( ( ( transpose_mat_a @ A2 )
        = ( transpose_mat_a @ B2 ) )
      = ( A2 = B2 ) ) ).

% transpose_mat_eq
thf(fact_160_Matrix_Otranspose__transpose,axiom,
    ! [A2: mat_nat] :
      ( ( transpose_mat_nat @ ( transpose_mat_nat @ A2 ) )
      = A2 ) ).

% Matrix.transpose_transpose
thf(fact_161_Matrix_Otranspose__transpose,axiom,
    ! [A2: mat_a] :
      ( ( transpose_mat_a @ ( transpose_mat_a @ A2 ) )
      = A2 ) ).

% Matrix.transpose_transpose
thf(fact_162_set__plus__mono2,axiom,
    ! [C2: set_vec_a,D: set_vec_a,E: set_vec_a,F2: set_vec_a] :
      ( ( ord_le4791951621262958845_vec_a @ C2 @ D )
     => ( ( ord_le4791951621262958845_vec_a @ E @ F2 )
       => ( ord_le4791951621262958845_vec_a @ ( plus_plus_set_vec_a @ C2 @ E ) @ ( plus_plus_set_vec_a @ D @ F2 ) ) ) ) ).

% set_plus_mono2
thf(fact_163_set__plus__mono2,axiom,
    ! [C2: set_mat_a,D: set_mat_a,E: set_mat_a,F2: set_mat_a] :
      ( ( ord_le3318621148231462513_mat_a @ C2 @ D )
     => ( ( ord_le3318621148231462513_mat_a @ E @ F2 )
       => ( ord_le3318621148231462513_mat_a @ ( plus_plus_set_mat_a @ C2 @ E ) @ ( plus_plus_set_mat_a @ D @ F2 ) ) ) ) ).

% set_plus_mono2
thf(fact_164_set__plus__mono2,axiom,
    ! [C2: set_nat,D: set_nat,E: set_nat,F2: set_nat] :
      ( ( ord_less_eq_set_nat @ C2 @ D )
     => ( ( ord_less_eq_set_nat @ E @ F2 )
       => ( ord_less_eq_set_nat @ ( plus_plus_set_nat @ C2 @ E ) @ ( plus_plus_set_nat @ D @ F2 ) ) ) ) ).

% set_plus_mono2
thf(fact_165_uminus__eq__vec,axiom,
    ! [V: vec_a,W: vec_a] :
      ( ( ( uminus_uminus_vec_a @ V )
        = ( uminus_uminus_vec_a @ W ) )
      = ( V = W ) ) ).

% uminus_eq_vec
thf(fact_166_uminus__uminus__vec,axiom,
    ! [V: vec_a] :
      ( ( uminus_uminus_vec_a @ ( uminus_uminus_vec_a @ V ) )
      = V ) ).

% uminus_uminus_vec
thf(fact_167_Mulv,axiom,
    ( ( mult_mat_vec_a @ ( transpose_mat_a @ m ) @ ulv )
    = ( zero_vec_a @ ( plus_plus_nat @ nc @ nr ) ) ) ).

% Mulv
thf(fact_168_neg__le__iff__le,axiom,
    ! [B: a,A: a] :
      ( ( ord_less_eq_a @ ( uminus_uminus_a @ B ) @ ( uminus_uminus_a @ A ) )
      = ( ord_less_eq_a @ A @ B ) ) ).

% neg_le_iff_le
thf(fact_169_minus__add__distrib,axiom,
    ! [A: a,B: a] :
      ( ( uminus_uminus_a @ ( plus_plus_a @ A @ B ) )
      = ( plus_plus_a @ ( uminus_uminus_a @ A ) @ ( uminus_uminus_a @ B ) ) ) ).

% minus_add_distrib
thf(fact_170_minus__add__cancel,axiom,
    ! [A: a,B: a] :
      ( ( plus_plus_a @ ( uminus_uminus_a @ A ) @ ( plus_plus_a @ A @ B ) )
      = B ) ).

% minus_add_cancel
thf(fact_171_add__minus__cancel,axiom,
    ! [A: a,B: a] :
      ( ( plus_plus_a @ A @ ( plus_plus_a @ ( uminus_uminus_a @ A ) @ B ) )
      = B ) ).

% add_minus_cancel
thf(fact_172_right__zero__vec,axiom,
    ! [V: vec_nat,N: nat] :
      ( ( member_vec_nat @ V @ ( carrier_vec_nat @ N ) )
     => ( ( plus_plus_vec_nat @ V @ ( zero_vec_nat @ N ) )
        = V ) ) ).

% right_zero_vec
thf(fact_173_right__zero__vec,axiom,
    ! [V: vec_a,N: nat] :
      ( ( member_vec_a @ V @ ( carrier_vec_a @ N ) )
     => ( ( plus_plus_vec_a @ V @ ( zero_vec_a @ N ) )
        = V ) ) ).

% right_zero_vec
thf(fact_174_left__zero__vec,axiom,
    ! [V: vec_nat,N: nat] :
      ( ( member_vec_nat @ V @ ( carrier_vec_nat @ N ) )
     => ( ( plus_plus_vec_nat @ ( zero_vec_nat @ N ) @ V )
        = V ) ) ).

% left_zero_vec
thf(fact_175_left__zero__vec,axiom,
    ! [V: vec_a,N: nat] :
      ( ( member_vec_a @ V @ ( carrier_vec_a @ N ) )
     => ( ( plus_plus_vec_a @ ( zero_vec_a @ N ) @ V )
        = V ) ) ).

% left_zero_vec
thf(fact_176_transpose__carrier__mat,axiom,
    ! [A2: mat_nat,Nc: nat,Nr: nat] :
      ( ( member_mat_nat @ ( transpose_mat_nat @ A2 ) @ ( carrier_mat_nat @ Nc @ Nr ) )
      = ( member_mat_nat @ A2 @ ( carrier_mat_nat @ Nr @ Nc ) ) ) ).

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

% transpose_carrier_mat
thf(fact_178_uminus__carrier__vec,axiom,
    ! [V: vec_mat_a,N: nat] :
      ( ( member_vec_mat_a @ ( uminus6789456888195538751_mat_a @ V ) @ ( carrier_vec_mat_a @ N ) )
      = ( member_vec_mat_a @ V @ ( carrier_vec_mat_a @ N ) ) ) ).

% uminus_carrier_vec
thf(fact_179_uminus__carrier__vec,axiom,
    ! [V: vec_vec_a,N: nat] :
      ( ( member_vec_vec_a @ ( uminus8262787361227035083_vec_a @ V ) @ ( carrier_vec_vec_a @ N ) )
      = ( member_vec_vec_a @ V @ ( carrier_vec_vec_a @ N ) ) ) ).

% uminus_carrier_vec
thf(fact_180_uminus__carrier__vec,axiom,
    ! [V: vec_a,N: nat] :
      ( ( member_vec_a @ ( uminus_uminus_vec_a @ V ) @ ( carrier_vec_a @ N ) )
      = ( member_vec_a @ V @ ( carrier_vec_a @ N ) ) ) ).

% uminus_carrier_vec
thf(fact_181_uminus__zero__vec,axiom,
    ! [N: nat] :
      ( ( uminus_uminus_vec_a @ ( zero_vec_a @ N ) )
      = ( zero_vec_a @ N ) ) ).

% uminus_zero_vec
thf(fact_182_index__uminus__vec_I2_J,axiom,
    ! [V: vec_mat_a] :
      ( ( dim_vec_mat_a @ ( uminus6789456888195538751_mat_a @ V ) )
      = ( dim_vec_mat_a @ V ) ) ).

% index_uminus_vec(2)
thf(fact_183_index__uminus__vec_I2_J,axiom,
    ! [V: vec_vec_a] :
      ( ( dim_vec_vec_a @ ( uminus8262787361227035083_vec_a @ V ) )
      = ( dim_vec_vec_a @ V ) ) ).

% index_uminus_vec(2)
thf(fact_184_index__uminus__vec_I2_J,axiom,
    ! [V: vec_a] :
      ( ( dim_vec_a @ ( uminus_uminus_vec_a @ V ) )
      = ( dim_vec_a @ V ) ) ).

% index_uminus_vec(2)
thf(fact_185_vec__first__zero,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( vec_first_nat @ ( zero_vec_nat @ N ) @ M )
        = ( zero_vec_nat @ M ) ) ) ).

% vec_first_zero
thf(fact_186_vec__first__zero,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( vec_first_a @ ( zero_vec_a @ N ) @ M )
        = ( zero_vec_a @ M ) ) ) ).

% vec_first_zero
thf(fact_187_uminus__r__inv__vec,axiom,
    ! [V: vec_a,N: nat] :
      ( ( member_vec_a @ V @ ( carrier_vec_a @ N ) )
     => ( ( plus_plus_vec_a @ V @ ( uminus_uminus_vec_a @ V ) )
        = ( zero_vec_a @ N ) ) ) ).

% uminus_r_inv_vec
thf(fact_188_uminus__l__inv__vec,axiom,
    ! [V: vec_a,N: nat] :
      ( ( member_vec_a @ V @ ( carrier_vec_a @ N ) )
     => ( ( plus_plus_vec_a @ ( uminus_uminus_vec_a @ V ) @ V )
        = ( zero_vec_a @ N ) ) ) ).

% uminus_l_inv_vec
thf(fact_189_minus__equation__iff,axiom,
    ! [A: a,B: a] :
      ( ( ( uminus_uminus_a @ A )
        = B )
      = ( ( uminus_uminus_a @ B )
        = A ) ) ).

% minus_equation_iff
thf(fact_190_equation__minus__iff,axiom,
    ! [A: a,B: a] :
      ( ( A
        = ( uminus_uminus_a @ B ) )
      = ( B
        = ( uminus_uminus_a @ A ) ) ) ).

% equation_minus_iff
thf(fact_191_transpose__add,axiom,
    ! [A2: mat_nat,Nr: nat,Nc: nat,B2: mat_nat] :
      ( ( member_mat_nat @ A2 @ ( carrier_mat_nat @ Nr @ Nc ) )
     => ( ( member_mat_nat @ B2 @ ( carrier_mat_nat @ Nr @ Nc ) )
       => ( ( transpose_mat_nat @ ( plus_plus_mat_nat @ A2 @ B2 ) )
          = ( plus_plus_mat_nat @ ( transpose_mat_nat @ A2 ) @ ( transpose_mat_nat @ B2 ) ) ) ) ) ).

% transpose_add
thf(fact_192_transpose__add,axiom,
    ! [A2: mat_a,Nr: nat,Nc: nat,B2: mat_a] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( ( member_mat_a @ B2 @ ( carrier_mat_a @ Nr @ Nc ) )
       => ( ( transpose_mat_a @ ( plus_plus_mat_a @ A2 @ B2 ) )
          = ( plus_plus_mat_a @ ( transpose_mat_a @ A2 ) @ ( transpose_mat_a @ B2 ) ) ) ) ) ).

% transpose_add
thf(fact_193_le__imp__neg__le,axiom,
    ! [A: a,B: a] :
      ( ( ord_less_eq_a @ A @ B )
     => ( ord_less_eq_a @ ( uminus_uminus_a @ B ) @ ( uminus_uminus_a @ A ) ) ) ).

% le_imp_neg_le
thf(fact_194_minus__le__iff,axiom,
    ! [A: a,B: a] :
      ( ( ord_less_eq_a @ ( uminus_uminus_a @ A ) @ B )
      = ( ord_less_eq_a @ ( uminus_uminus_a @ B ) @ A ) ) ).

% minus_le_iff
thf(fact_195_le__minus__iff,axiom,
    ! [A: a,B: a] :
      ( ( ord_less_eq_a @ A @ ( uminus_uminus_a @ B ) )
      = ( ord_less_eq_a @ B @ ( uminus_uminus_a @ A ) ) ) ).

% le_minus_iff
thf(fact_196_add_Oinverse__distrib__swap,axiom,
    ! [A: a,B: a] :
      ( ( uminus_uminus_a @ ( plus_plus_a @ A @ B ) )
      = ( plus_plus_a @ ( uminus_uminus_a @ B ) @ ( uminus_uminus_a @ A ) ) ) ).

% add.inverse_distrib_swap
thf(fact_197_group__cancel_Oneg1,axiom,
    ! [A2: a,K: a,A: a] :
      ( ( A2
        = ( plus_plus_a @ K @ A ) )
     => ( ( uminus_uminus_a @ A2 )
        = ( plus_plus_a @ ( uminus_uminus_a @ K ) @ ( uminus_uminus_a @ A ) ) ) ) ).

% group_cancel.neg1
thf(fact_198_add__mult__distrib__mat__vec,axiom,
    ! [A2: mat_nat,Nr: nat,Nc: nat,B2: mat_nat,V: vec_nat] :
      ( ( member_mat_nat @ A2 @ ( carrier_mat_nat @ Nr @ Nc ) )
     => ( ( member_mat_nat @ B2 @ ( carrier_mat_nat @ Nr @ Nc ) )
       => ( ( member_vec_nat @ V @ ( carrier_vec_nat @ Nc ) )
         => ( ( mult_mat_vec_nat @ ( plus_plus_mat_nat @ A2 @ B2 ) @ V )
            = ( plus_plus_vec_nat @ ( mult_mat_vec_nat @ A2 @ V ) @ ( mult_mat_vec_nat @ B2 @ V ) ) ) ) ) ) ).

% add_mult_distrib_mat_vec
thf(fact_199_add__mult__distrib__mat__vec,axiom,
    ! [A2: mat_a,Nr: nat,Nc: nat,B2: mat_a,V: vec_a] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( ( member_mat_a @ B2 @ ( carrier_mat_a @ Nr @ Nc ) )
       => ( ( member_vec_a @ V @ ( carrier_vec_a @ Nc ) )
         => ( ( mult_mat_vec_a @ ( plus_plus_mat_a @ A2 @ B2 ) @ V )
            = ( plus_plus_vec_a @ ( mult_mat_vec_a @ A2 @ V ) @ ( mult_mat_vec_a @ B2 @ V ) ) ) ) ) ) ).

% add_mult_distrib_mat_vec
thf(fact_200_vec__first__add,axiom,
    ! [N: nat,X3: vec_nat,Y3: vec_nat] :
      ( ( ord_less_eq_nat @ N @ ( dim_vec_nat @ X3 ) )
     => ( ( ord_less_eq_nat @ N @ ( dim_vec_nat @ Y3 ) )
       => ( ( vec_first_nat @ ( plus_plus_vec_nat @ X3 @ Y3 ) @ N )
          = ( plus_plus_vec_nat @ ( vec_first_nat @ X3 @ N ) @ ( vec_first_nat @ Y3 @ N ) ) ) ) ) ).

% vec_first_add
thf(fact_201_vec__first__add,axiom,
    ! [N: nat,X3: vec_mat_a,Y3: vec_mat_a] :
      ( ( ord_less_eq_nat @ N @ ( dim_vec_mat_a @ X3 ) )
     => ( ( ord_less_eq_nat @ N @ ( dim_vec_mat_a @ Y3 ) )
       => ( ( vec_first_mat_a @ ( plus_plus_vec_mat_a @ X3 @ Y3 ) @ N )
          = ( plus_plus_vec_mat_a @ ( vec_first_mat_a @ X3 @ N ) @ ( vec_first_mat_a @ Y3 @ N ) ) ) ) ) ).

% vec_first_add
thf(fact_202_vec__first__add,axiom,
    ! [N: nat,X3: vec_vec_a,Y3: vec_vec_a] :
      ( ( ord_less_eq_nat @ N @ ( dim_vec_vec_a @ X3 ) )
     => ( ( ord_less_eq_nat @ N @ ( dim_vec_vec_a @ Y3 ) )
       => ( ( vec_first_vec_a @ ( plus_plus_vec_vec_a @ X3 @ Y3 ) @ N )
          = ( plus_plus_vec_vec_a @ ( vec_first_vec_a @ X3 @ N ) @ ( vec_first_vec_a @ Y3 @ N ) ) ) ) ) ).

% vec_first_add
thf(fact_203_vec__first__add,axiom,
    ! [N: nat,X3: vec_a,Y3: vec_a] :
      ( ( ord_less_eq_nat @ N @ ( dim_vec_a @ X3 ) )
     => ( ( ord_less_eq_nat @ N @ ( dim_vec_a @ Y3 ) )
       => ( ( vec_first_a @ ( plus_plus_vec_a @ X3 @ Y3 ) @ N )
          = ( plus_plus_vec_a @ ( vec_first_a @ X3 @ N ) @ ( vec_first_a @ Y3 @ N ) ) ) ) ) ).

% vec_first_add
thf(fact_204_mult__add__distrib__mat__vec,axiom,
    ! [A2: mat_nat,Nr: nat,Nc: nat,V_1: vec_nat,V_2: vec_nat] :
      ( ( member_mat_nat @ A2 @ ( carrier_mat_nat @ Nr @ Nc ) )
     => ( ( member_vec_nat @ V_1 @ ( carrier_vec_nat @ Nc ) )
       => ( ( member_vec_nat @ V_2 @ ( carrier_vec_nat @ Nc ) )
         => ( ( mult_mat_vec_nat @ A2 @ ( plus_plus_vec_nat @ V_1 @ V_2 ) )
            = ( plus_plus_vec_nat @ ( mult_mat_vec_nat @ A2 @ V_1 ) @ ( mult_mat_vec_nat @ A2 @ V_2 ) ) ) ) ) ) ).

% mult_add_distrib_mat_vec
thf(fact_205_mult__add__distrib__mat__vec,axiom,
    ! [A2: mat_a,Nr: nat,Nc: nat,V_1: vec_a,V_2: vec_a] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( ( member_vec_a @ V_1 @ ( carrier_vec_a @ Nc ) )
       => ( ( member_vec_a @ V_2 @ ( carrier_vec_a @ Nc ) )
         => ( ( mult_mat_vec_a @ A2 @ ( plus_plus_vec_a @ V_1 @ V_2 ) )
            = ( plus_plus_vec_a @ ( mult_mat_vec_a @ A2 @ V_1 ) @ ( mult_mat_vec_a @ A2 @ V_2 ) ) ) ) ) ) ).

% mult_add_distrib_mat_vec
thf(fact_206_add__carrier__mat,axiom,
    ! [B2: mat_nat,Nr: nat,Nc: nat,A2: mat_nat] :
      ( ( member_mat_nat @ B2 @ ( carrier_mat_nat @ Nr @ Nc ) )
     => ( member_mat_nat @ ( plus_plus_mat_nat @ A2 @ B2 ) @ ( carrier_mat_nat @ Nr @ Nc ) ) ) ).

% add_carrier_mat
thf(fact_207_add__carrier__mat,axiom,
    ! [B2: mat_a,Nr: nat,Nc: nat,A2: mat_a] :
      ( ( member_mat_a @ B2 @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( member_mat_a @ ( plus_plus_mat_a @ A2 @ B2 ) @ ( carrier_mat_a @ Nr @ Nc ) ) ) ).

% add_carrier_mat
thf(fact_208_comm__add__mat,axiom,
    ! [A2: mat_nat,Nr: nat,Nc: nat,B2: mat_nat] :
      ( ( member_mat_nat @ A2 @ ( carrier_mat_nat @ Nr @ Nc ) )
     => ( ( member_mat_nat @ B2 @ ( carrier_mat_nat @ Nr @ Nc ) )
       => ( ( plus_plus_mat_nat @ A2 @ B2 )
          = ( plus_plus_mat_nat @ B2 @ A2 ) ) ) ) ).

% comm_add_mat
thf(fact_209_comm__add__mat,axiom,
    ! [A2: mat_a,Nr: nat,Nc: nat,B2: mat_a] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( ( member_mat_a @ B2 @ ( carrier_mat_a @ Nr @ Nc ) )
       => ( ( plus_plus_mat_a @ A2 @ B2 )
          = ( plus_plus_mat_a @ B2 @ A2 ) ) ) ) ).

% comm_add_mat
thf(fact_210_comm__add__vec,axiom,
    ! [V_1: vec_nat,N: nat,V_2: vec_nat] :
      ( ( member_vec_nat @ V_1 @ ( carrier_vec_nat @ N ) )
     => ( ( member_vec_nat @ V_2 @ ( carrier_vec_nat @ N ) )
       => ( ( plus_plus_vec_nat @ V_1 @ V_2 )
          = ( plus_plus_vec_nat @ V_2 @ V_1 ) ) ) ) ).

% comm_add_vec
thf(fact_211_comm__add__vec,axiom,
    ! [V_1: vec_a,N: nat,V_2: vec_a] :
      ( ( member_vec_a @ V_1 @ ( carrier_vec_a @ N ) )
     => ( ( member_vec_a @ V_2 @ ( carrier_vec_a @ N ) )
       => ( ( plus_plus_vec_a @ V_1 @ V_2 )
          = ( plus_plus_vec_a @ V_2 @ V_1 ) ) ) ) ).

% comm_add_vec
thf(fact_212_add__carrier__vec,axiom,
    ! [V_1: vec_nat,N: nat,V_2: vec_nat] :
      ( ( member_vec_nat @ V_1 @ ( carrier_vec_nat @ N ) )
     => ( ( member_vec_nat @ V_2 @ ( carrier_vec_nat @ N ) )
       => ( member_vec_nat @ ( plus_plus_vec_nat @ V_1 @ V_2 ) @ ( carrier_vec_nat @ N ) ) ) ) ).

% add_carrier_vec
thf(fact_213_add__carrier__vec,axiom,
    ! [V_1: vec_vec_a,N: nat,V_2: vec_vec_a] :
      ( ( member_vec_vec_a @ V_1 @ ( carrier_vec_vec_a @ N ) )
     => ( ( member_vec_vec_a @ V_2 @ ( carrier_vec_vec_a @ N ) )
       => ( member_vec_vec_a @ ( plus_plus_vec_vec_a @ V_1 @ V_2 ) @ ( carrier_vec_vec_a @ N ) ) ) ) ).

% add_carrier_vec
thf(fact_214_add__carrier__vec,axiom,
    ! [V_1: vec_a,N: nat,V_2: vec_a] :
      ( ( member_vec_a @ V_1 @ ( carrier_vec_a @ N ) )
     => ( ( member_vec_a @ V_2 @ ( carrier_vec_a @ N ) )
       => ( member_vec_a @ ( plus_plus_vec_a @ V_1 @ V_2 ) @ ( carrier_vec_a @ N ) ) ) ) ).

% add_carrier_vec
thf(fact_215_vec__add__mono,axiom,
    ! [B: vec_nat,D2: vec_nat,A: vec_nat,C: vec_nat] :
      ( ( ( dim_vec_nat @ B )
        = ( dim_vec_nat @ D2 ) )
     => ( ( ord_less_eq_vec_nat @ A @ B )
       => ( ( ord_less_eq_vec_nat @ C @ D2 )
         => ( ord_less_eq_vec_nat @ ( plus_plus_vec_nat @ A @ C ) @ ( plus_plus_vec_nat @ B @ D2 ) ) ) ) ) ).

% vec_add_mono
thf(fact_216_vec__add__mono,axiom,
    ! [B: vec_a,D2: vec_a,A: vec_a,C: vec_a] :
      ( ( ( dim_vec_a @ B )
        = ( dim_vec_a @ D2 ) )
     => ( ( ord_less_eq_vec_a @ A @ B )
       => ( ( ord_less_eq_vec_a @ C @ D2 )
         => ( ord_less_eq_vec_a @ ( plus_plus_vec_a @ A @ C ) @ ( plus_plus_vec_a @ B @ D2 ) ) ) ) ) ).

% vec_add_mono
thf(fact_217_mult__mat__vec__carrier,axiom,
    ! [A2: mat_nat,Nr: nat,N: nat,V: vec_nat] :
      ( ( member_mat_nat @ A2 @ ( carrier_mat_nat @ Nr @ N ) )
     => ( ( member_vec_nat @ V @ ( carrier_vec_nat @ N ) )
       => ( member_vec_nat @ ( mult_mat_vec_nat @ A2 @ V ) @ ( carrier_vec_nat @ Nr ) ) ) ) ).

% mult_mat_vec_carrier
thf(fact_218_mult__mat__vec__carrier,axiom,
    ! [A2: mat_a,Nr: nat,N: nat,V: vec_a] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ N ) )
     => ( ( member_vec_a @ V @ ( carrier_vec_a @ N ) )
       => ( member_vec_a @ ( mult_mat_vec_a @ A2 @ V ) @ ( carrier_vec_a @ Nr ) ) ) ) ).

% mult_mat_vec_carrier
thf(fact_219_uminus__zero__vec__eq,axiom,
    ! [V: vec_a,N: nat] :
      ( ( member_vec_a @ V @ ( carrier_vec_a @ N ) )
     => ( ( ( uminus_uminus_vec_a @ V )
          = ( zero_vec_a @ N ) )
        = ( V
          = ( zero_vec_a @ N ) ) ) ) ).

% uminus_zero_vec_eq
thf(fact_220_add__inv__exists__vec,axiom,
    ! [V: vec_a,N: nat] :
      ( ( member_vec_a @ V @ ( carrier_vec_a @ N ) )
     => ? [X: vec_a] :
          ( ( member_vec_a @ X @ ( carrier_vec_a @ N ) )
          & ( ( plus_plus_vec_a @ X @ V )
            = ( zero_vec_a @ N ) )
          & ( ( plus_plus_vec_a @ V @ X )
            = ( zero_vec_a @ N ) ) ) ) ).

% add_inv_exists_vec
thf(fact_221_append__vec__add,axiom,
    ! [V: vec_nat,N: nat,V2: vec_nat,W: vec_nat,M: nat,W2: vec_nat] :
      ( ( member_vec_nat @ V @ ( carrier_vec_nat @ N ) )
     => ( ( member_vec_nat @ V2 @ ( carrier_vec_nat @ N ) )
       => ( ( member_vec_nat @ W @ ( carrier_vec_nat @ M ) )
         => ( ( member_vec_nat @ W2 @ ( carrier_vec_nat @ M ) )
           => ( ( plus_plus_vec_nat @ ( append_vec_nat @ V @ W ) @ ( append_vec_nat @ V2 @ W2 ) )
              = ( append_vec_nat @ ( plus_plus_vec_nat @ V @ V2 ) @ ( plus_plus_vec_nat @ W @ W2 ) ) ) ) ) ) ) ).

% append_vec_add
thf(fact_222_append__vec__add,axiom,
    ! [V: vec_vec_a,N: nat,V2: vec_vec_a,W: vec_vec_a,M: nat,W2: vec_vec_a] :
      ( ( member_vec_vec_a @ V @ ( carrier_vec_vec_a @ N ) )
     => ( ( member_vec_vec_a @ V2 @ ( carrier_vec_vec_a @ N ) )
       => ( ( member_vec_vec_a @ W @ ( carrier_vec_vec_a @ M ) )
         => ( ( member_vec_vec_a @ W2 @ ( carrier_vec_vec_a @ M ) )
           => ( ( plus_plus_vec_vec_a @ ( append_vec_vec_a @ V @ W ) @ ( append_vec_vec_a @ V2 @ W2 ) )
              = ( append_vec_vec_a @ ( plus_plus_vec_vec_a @ V @ V2 ) @ ( plus_plus_vec_vec_a @ W @ W2 ) ) ) ) ) ) ) ).

% append_vec_add
thf(fact_223_append__vec__add,axiom,
    ! [V: vec_a,N: nat,V2: vec_a,W: vec_a,M: nat,W2: vec_a] :
      ( ( member_vec_a @ V @ ( carrier_vec_a @ N ) )
     => ( ( member_vec_a @ V2 @ ( carrier_vec_a @ N ) )
       => ( ( member_vec_a @ W @ ( carrier_vec_a @ M ) )
         => ( ( member_vec_a @ W2 @ ( carrier_vec_a @ M ) )
           => ( ( plus_plus_vec_a @ ( append_vec_a @ V @ W ) @ ( append_vec_a @ V2 @ W2 ) )
              = ( append_vec_a @ ( plus_plus_vec_a @ V @ V2 ) @ ( plus_plus_vec_a @ W @ W2 ) ) ) ) ) ) ) ).

% append_vec_add
thf(fact_224_order__antisym__conv,axiom,
    ! [Y3: set_vec_a,X3: set_vec_a] :
      ( ( ord_le4791951621262958845_vec_a @ Y3 @ X3 )
     => ( ( ord_le4791951621262958845_vec_a @ X3 @ Y3 )
        = ( X3 = Y3 ) ) ) ).

% order_antisym_conv
thf(fact_225_order__antisym__conv,axiom,
    ! [Y3: set_mat_a,X3: set_mat_a] :
      ( ( ord_le3318621148231462513_mat_a @ Y3 @ X3 )
     => ( ( ord_le3318621148231462513_mat_a @ X3 @ Y3 )
        = ( X3 = Y3 ) ) ) ).

% order_antisym_conv
thf(fact_226_order__antisym__conv,axiom,
    ! [Y3: vec_nat,X3: vec_nat] :
      ( ( ord_less_eq_vec_nat @ Y3 @ X3 )
     => ( ( ord_less_eq_vec_nat @ X3 @ Y3 )
        = ( X3 = Y3 ) ) ) ).

% order_antisym_conv
thf(fact_227_order__antisym__conv,axiom,
    ! [Y3: vec_vec_a,X3: vec_vec_a] :
      ( ( ord_le4012615358376148468_vec_a @ Y3 @ X3 )
     => ( ( ord_le4012615358376148468_vec_a @ X3 @ Y3 )
        = ( X3 = Y3 ) ) ) ).

% order_antisym_conv
thf(fact_228_order__antisym__conv,axiom,
    ! [Y3: set_nat,X3: set_nat] :
      ( ( ord_less_eq_set_nat @ Y3 @ X3 )
     => ( ( ord_less_eq_set_nat @ X3 @ Y3 )
        = ( X3 = Y3 ) ) ) ).

% order_antisym_conv
thf(fact_229_order__antisym__conv,axiom,
    ! [Y3: vec_a,X3: vec_a] :
      ( ( ord_less_eq_vec_a @ Y3 @ X3 )
     => ( ( ord_less_eq_vec_a @ X3 @ Y3 )
        = ( X3 = Y3 ) ) ) ).

% order_antisym_conv
thf(fact_230_order__antisym__conv,axiom,
    ! [Y3: nat,X3: nat] :
      ( ( ord_less_eq_nat @ Y3 @ X3 )
     => ( ( ord_less_eq_nat @ X3 @ Y3 )
        = ( X3 = Y3 ) ) ) ).

% order_antisym_conv
thf(fact_231_order__antisym__conv,axiom,
    ! [Y3: a,X3: a] :
      ( ( ord_less_eq_a @ Y3 @ X3 )
     => ( ( ord_less_eq_a @ X3 @ Y3 )
        = ( X3 = Y3 ) ) ) ).

% order_antisym_conv
thf(fact_232_linorder__le__cases,axiom,
    ! [X3: nat,Y3: nat] :
      ( ~ ( ord_less_eq_nat @ X3 @ Y3 )
     => ( ord_less_eq_nat @ Y3 @ X3 ) ) ).

% linorder_le_cases
thf(fact_233_linorder__le__cases,axiom,
    ! [X3: a,Y3: a] :
      ( ~ ( ord_less_eq_a @ X3 @ Y3 )
     => ( ord_less_eq_a @ Y3 @ X3 ) ) ).

% linorder_le_cases
thf(fact_234_ord__le__eq__subst,axiom,
    ! [A: nat,B: nat,F: nat > nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_235_ord__le__eq__subst,axiom,
    ! [A: nat,B: nat,F: nat > a,C: a] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X @ Y2 )
             => ( ord_less_eq_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_a @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_236_ord__le__eq__subst,axiom,
    ! [A: a,B: a,F: a > nat,C: nat] :
      ( ( ord_less_eq_a @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X: a,Y2: a] :
              ( ( ord_less_eq_a @ X @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_237_ord__le__eq__subst,axiom,
    ! [A: a,B: a,F: a > a,C: a] :
      ( ( ord_less_eq_a @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X: a,Y2: a] :
              ( ( ord_less_eq_a @ X @ Y2 )
             => ( ord_less_eq_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_a @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_238_ord__le__eq__subst,axiom,
    ! [A: vec_a,B: vec_a,F: vec_a > nat,C: nat] :
      ( ( ord_less_eq_vec_a @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X: vec_a,Y2: vec_a] :
              ( ( ord_less_eq_vec_a @ X @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_239_ord__le__eq__subst,axiom,
    ! [A: vec_a,B: vec_a,F: vec_a > a,C: a] :
      ( ( ord_less_eq_vec_a @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X: vec_a,Y2: vec_a] :
              ( ( ord_less_eq_vec_a @ X @ Y2 )
             => ( ord_less_eq_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_a @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_240_ord__le__eq__subst,axiom,
    ! [A: nat,B: nat,F: nat > vec_a,C: vec_a] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X @ Y2 )
             => ( ord_less_eq_vec_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_vec_a @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_241_ord__le__eq__subst,axiom,
    ! [A: a,B: a,F: a > vec_a,C: vec_a] :
      ( ( ord_less_eq_a @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X: a,Y2: a] :
              ( ( ord_less_eq_a @ X @ Y2 )
             => ( ord_less_eq_vec_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_vec_a @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_242_ord__le__eq__subst,axiom,
    ! [A: vec_a,B: vec_a,F: vec_a > vec_a,C: vec_a] :
      ( ( ord_less_eq_vec_a @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X: vec_a,Y2: vec_a] :
              ( ( ord_less_eq_vec_a @ X @ Y2 )
             => ( ord_less_eq_vec_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_vec_a @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_243_ord__le__eq__subst,axiom,
    ! [A: nat,B: nat,F: nat > vec_nat,C: vec_nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X @ Y2 )
             => ( ord_less_eq_vec_nat @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_vec_nat @ ( F @ A ) @ C ) ) ) ) ).

% ord_le_eq_subst
thf(fact_244_ord__eq__le__subst,axiom,
    ! [A: nat,F: nat > nat,B: nat,C: nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_245_ord__eq__le__subst,axiom,
    ! [A: a,F: nat > a,B: nat,C: nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X @ Y2 )
             => ( ord_less_eq_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_a @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_246_ord__eq__le__subst,axiom,
    ! [A: nat,F: a > nat,B: a,C: a] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_a @ B @ C )
       => ( ! [X: a,Y2: a] :
              ( ( ord_less_eq_a @ X @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_247_ord__eq__le__subst,axiom,
    ! [A: a,F: a > a,B: a,C: a] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_a @ B @ C )
       => ( ! [X: a,Y2: a] :
              ( ( ord_less_eq_a @ X @ Y2 )
             => ( ord_less_eq_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_a @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_248_ord__eq__le__subst,axiom,
    ! [A: nat,F: vec_a > nat,B: vec_a,C: vec_a] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_vec_a @ B @ C )
       => ( ! [X: vec_a,Y2: vec_a] :
              ( ( ord_less_eq_vec_a @ X @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_249_ord__eq__le__subst,axiom,
    ! [A: a,F: vec_a > a,B: vec_a,C: vec_a] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_vec_a @ B @ C )
       => ( ! [X: vec_a,Y2: vec_a] :
              ( ( ord_less_eq_vec_a @ X @ Y2 )
             => ( ord_less_eq_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_a @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_250_ord__eq__le__subst,axiom,
    ! [A: vec_a,F: nat > vec_a,B: nat,C: nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X @ Y2 )
             => ( ord_less_eq_vec_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_vec_a @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_251_ord__eq__le__subst,axiom,
    ! [A: vec_a,F: a > vec_a,B: a,C: a] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_a @ B @ C )
       => ( ! [X: a,Y2: a] :
              ( ( ord_less_eq_a @ X @ Y2 )
             => ( ord_less_eq_vec_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_vec_a @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_252_ord__eq__le__subst,axiom,
    ! [A: vec_a,F: vec_a > vec_a,B: vec_a,C: vec_a] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_vec_a @ B @ C )
       => ( ! [X: vec_a,Y2: vec_a] :
              ( ( ord_less_eq_vec_a @ X @ Y2 )
             => ( ord_less_eq_vec_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_vec_a @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_253_ord__eq__le__subst,axiom,
    ! [A: vec_nat,F: nat > vec_nat,B: nat,C: nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X @ Y2 )
             => ( ord_less_eq_vec_nat @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_vec_nat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_le_subst
thf(fact_254_linorder__linear,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( ord_less_eq_nat @ X3 @ Y3 )
      | ( ord_less_eq_nat @ Y3 @ X3 ) ) ).

% linorder_linear
thf(fact_255_linorder__linear,axiom,
    ! [X3: a,Y3: a] :
      ( ( ord_less_eq_a @ X3 @ Y3 )
      | ( ord_less_eq_a @ Y3 @ X3 ) ) ).

% linorder_linear
thf(fact_256_order__eq__refl,axiom,
    ! [X3: set_vec_a,Y3: set_vec_a] :
      ( ( X3 = Y3 )
     => ( ord_le4791951621262958845_vec_a @ X3 @ Y3 ) ) ).

% order_eq_refl
thf(fact_257_order__eq__refl,axiom,
    ! [X3: set_mat_a,Y3: set_mat_a] :
      ( ( X3 = Y3 )
     => ( ord_le3318621148231462513_mat_a @ X3 @ Y3 ) ) ).

% order_eq_refl
thf(fact_258_order__eq__refl,axiom,
    ! [X3: vec_nat,Y3: vec_nat] :
      ( ( X3 = Y3 )
     => ( ord_less_eq_vec_nat @ X3 @ Y3 ) ) ).

% order_eq_refl
thf(fact_259_order__eq__refl,axiom,
    ! [X3: vec_vec_a,Y3: vec_vec_a] :
      ( ( X3 = Y3 )
     => ( ord_le4012615358376148468_vec_a @ X3 @ Y3 ) ) ).

% order_eq_refl
thf(fact_260_order__eq__refl,axiom,
    ! [X3: set_nat,Y3: set_nat] :
      ( ( X3 = Y3 )
     => ( ord_less_eq_set_nat @ X3 @ Y3 ) ) ).

% order_eq_refl
thf(fact_261_order__eq__refl,axiom,
    ! [X3: vec_a,Y3: vec_a] :
      ( ( X3 = Y3 )
     => ( ord_less_eq_vec_a @ X3 @ Y3 ) ) ).

% order_eq_refl
thf(fact_262_order__eq__refl,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( X3 = Y3 )
     => ( ord_less_eq_nat @ X3 @ Y3 ) ) ).

% order_eq_refl
thf(fact_263_order__eq__refl,axiom,
    ! [X3: a,Y3: a] :
      ( ( X3 = Y3 )
     => ( ord_less_eq_a @ X3 @ Y3 ) ) ).

% order_eq_refl
thf(fact_264_order__subst2,axiom,
    ! [A: nat,B: nat,F: nat > nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ ( F @ B ) @ C )
       => ( ! [X: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_265_order__subst2,axiom,
    ! [A: nat,B: nat,F: nat > a,C: a] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_a @ ( F @ B ) @ C )
       => ( ! [X: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X @ Y2 )
             => ( ord_less_eq_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_a @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_266_order__subst2,axiom,
    ! [A: a,B: a,F: a > nat,C: nat] :
      ( ( ord_less_eq_a @ A @ B )
     => ( ( ord_less_eq_nat @ ( F @ B ) @ C )
       => ( ! [X: a,Y2: a] :
              ( ( ord_less_eq_a @ X @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_267_order__subst2,axiom,
    ! [A: a,B: a,F: a > a,C: a] :
      ( ( ord_less_eq_a @ A @ B )
     => ( ( ord_less_eq_a @ ( F @ B ) @ C )
       => ( ! [X: a,Y2: a] :
              ( ( ord_less_eq_a @ X @ Y2 )
             => ( ord_less_eq_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_a @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_268_order__subst2,axiom,
    ! [A: vec_a,B: vec_a,F: vec_a > nat,C: nat] :
      ( ( ord_less_eq_vec_a @ A @ B )
     => ( ( ord_less_eq_nat @ ( F @ B ) @ C )
       => ( ! [X: vec_a,Y2: vec_a] :
              ( ( ord_less_eq_vec_a @ X @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_269_order__subst2,axiom,
    ! [A: vec_a,B: vec_a,F: vec_a > a,C: a] :
      ( ( ord_less_eq_vec_a @ A @ B )
     => ( ( ord_less_eq_a @ ( F @ B ) @ C )
       => ( ! [X: vec_a,Y2: vec_a] :
              ( ( ord_less_eq_vec_a @ X @ Y2 )
             => ( ord_less_eq_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_a @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_270_order__subst2,axiom,
    ! [A: nat,B: nat,F: nat > vec_a,C: vec_a] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_vec_a @ ( F @ B ) @ C )
       => ( ! [X: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X @ Y2 )
             => ( ord_less_eq_vec_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_vec_a @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_271_order__subst2,axiom,
    ! [A: a,B: a,F: a > vec_a,C: vec_a] :
      ( ( ord_less_eq_a @ A @ B )
     => ( ( ord_less_eq_vec_a @ ( F @ B ) @ C )
       => ( ! [X: a,Y2: a] :
              ( ( ord_less_eq_a @ X @ Y2 )
             => ( ord_less_eq_vec_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_vec_a @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_272_order__subst2,axiom,
    ! [A: vec_a,B: vec_a,F: vec_a > vec_a,C: vec_a] :
      ( ( ord_less_eq_vec_a @ A @ B )
     => ( ( ord_less_eq_vec_a @ ( F @ B ) @ C )
       => ( ! [X: vec_a,Y2: vec_a] :
              ( ( ord_less_eq_vec_a @ X @ Y2 )
             => ( ord_less_eq_vec_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_vec_a @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_273_order__subst2,axiom,
    ! [A: nat,B: nat,F: nat > vec_nat,C: vec_nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_vec_nat @ ( F @ B ) @ C )
       => ( ! [X: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X @ Y2 )
             => ( ord_less_eq_vec_nat @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_vec_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_subst2
thf(fact_274_order__subst1,axiom,
    ! [A: nat,F: nat > nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_275_order__subst1,axiom,
    ! [A: nat,F: a > nat,B: a,C: a] :
      ( ( ord_less_eq_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_a @ B @ C )
       => ( ! [X: a,Y2: a] :
              ( ( ord_less_eq_a @ X @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_276_order__subst1,axiom,
    ! [A: a,F: nat > a,B: nat,C: nat] :
      ( ( ord_less_eq_a @ A @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X @ Y2 )
             => ( ord_less_eq_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_a @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_277_order__subst1,axiom,
    ! [A: a,F: a > a,B: a,C: a] :
      ( ( ord_less_eq_a @ A @ ( F @ B ) )
     => ( ( ord_less_eq_a @ B @ C )
       => ( ! [X: a,Y2: a] :
              ( ( ord_less_eq_a @ X @ Y2 )
             => ( ord_less_eq_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_a @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_278_order__subst1,axiom,
    ! [A: vec_a,F: nat > vec_a,B: nat,C: nat] :
      ( ( ord_less_eq_vec_a @ A @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X @ Y2 )
             => ( ord_less_eq_vec_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_vec_a @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_279_order__subst1,axiom,
    ! [A: vec_a,F: a > vec_a,B: a,C: a] :
      ( ( ord_less_eq_vec_a @ A @ ( F @ B ) )
     => ( ( ord_less_eq_a @ B @ C )
       => ( ! [X: a,Y2: a] :
              ( ( ord_less_eq_a @ X @ Y2 )
             => ( ord_less_eq_vec_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_vec_a @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_280_order__subst1,axiom,
    ! [A: nat,F: vec_a > nat,B: vec_a,C: vec_a] :
      ( ( ord_less_eq_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_vec_a @ B @ C )
       => ( ! [X: vec_a,Y2: vec_a] :
              ( ( ord_less_eq_vec_a @ X @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_281_order__subst1,axiom,
    ! [A: a,F: vec_a > a,B: vec_a,C: vec_a] :
      ( ( ord_less_eq_a @ A @ ( F @ B ) )
     => ( ( ord_less_eq_vec_a @ B @ C )
       => ( ! [X: vec_a,Y2: vec_a] :
              ( ( ord_less_eq_vec_a @ X @ Y2 )
             => ( ord_less_eq_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_a @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_282_order__subst1,axiom,
    ! [A: vec_a,F: vec_a > vec_a,B: vec_a,C: vec_a] :
      ( ( ord_less_eq_vec_a @ A @ ( F @ B ) )
     => ( ( ord_less_eq_vec_a @ B @ C )
       => ( ! [X: vec_a,Y2: vec_a] :
              ( ( ord_less_eq_vec_a @ X @ Y2 )
             => ( ord_less_eq_vec_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_vec_a @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_283_order__subst1,axiom,
    ! [A: nat,F: vec_nat > nat,B: vec_nat,C: vec_nat] :
      ( ( ord_less_eq_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_vec_nat @ B @ C )
       => ( ! [X: vec_nat,Y2: vec_nat] :
              ( ( ord_less_eq_vec_nat @ X @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_eq_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_subst1
thf(fact_284_Orderings_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: set_vec_a,Z: set_vec_a] : ( Y4 = Z ) )
    = ( ^ [A3: set_vec_a,B3: set_vec_a] :
          ( ( ord_le4791951621262958845_vec_a @ A3 @ B3 )
          & ( ord_le4791951621262958845_vec_a @ B3 @ A3 ) ) ) ) ).

% Orderings.order_eq_iff
thf(fact_285_Orderings_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: set_mat_a,Z: set_mat_a] : ( Y4 = Z ) )
    = ( ^ [A3: set_mat_a,B3: set_mat_a] :
          ( ( ord_le3318621148231462513_mat_a @ A3 @ B3 )
          & ( ord_le3318621148231462513_mat_a @ B3 @ A3 ) ) ) ) ).

% Orderings.order_eq_iff
thf(fact_286_Orderings_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: vec_nat,Z: vec_nat] : ( Y4 = Z ) )
    = ( ^ [A3: vec_nat,B3: vec_nat] :
          ( ( ord_less_eq_vec_nat @ A3 @ B3 )
          & ( ord_less_eq_vec_nat @ B3 @ A3 ) ) ) ) ).

% Orderings.order_eq_iff
thf(fact_287_Orderings_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: vec_vec_a,Z: vec_vec_a] : ( Y4 = Z ) )
    = ( ^ [A3: vec_vec_a,B3: vec_vec_a] :
          ( ( ord_le4012615358376148468_vec_a @ A3 @ B3 )
          & ( ord_le4012615358376148468_vec_a @ B3 @ A3 ) ) ) ) ).

% Orderings.order_eq_iff
thf(fact_288_Orderings_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: set_nat,Z: set_nat] : ( Y4 = Z ) )
    = ( ^ [A3: set_nat,B3: set_nat] :
          ( ( ord_less_eq_set_nat @ A3 @ B3 )
          & ( ord_less_eq_set_nat @ B3 @ A3 ) ) ) ) ).

% Orderings.order_eq_iff
thf(fact_289_Orderings_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: vec_a,Z: vec_a] : ( Y4 = Z ) )
    = ( ^ [A3: vec_a,B3: vec_a] :
          ( ( ord_less_eq_vec_a @ A3 @ B3 )
          & ( ord_less_eq_vec_a @ B3 @ A3 ) ) ) ) ).

% Orderings.order_eq_iff
thf(fact_290_Orderings_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: nat,Z: nat] : ( Y4 = Z ) )
    = ( ^ [A3: nat,B3: nat] :
          ( ( ord_less_eq_nat @ A3 @ B3 )
          & ( ord_less_eq_nat @ B3 @ A3 ) ) ) ) ).

% Orderings.order_eq_iff
thf(fact_291_Orderings_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: a,Z: a] : ( Y4 = Z ) )
    = ( ^ [A3: a,B3: a] :
          ( ( ord_less_eq_a @ A3 @ B3 )
          & ( ord_less_eq_a @ B3 @ A3 ) ) ) ) ).

% Orderings.order_eq_iff
thf(fact_292_antisym,axiom,
    ! [A: set_vec_a,B: set_vec_a] :
      ( ( ord_le4791951621262958845_vec_a @ A @ B )
     => ( ( ord_le4791951621262958845_vec_a @ B @ A )
       => ( A = B ) ) ) ).

% antisym
thf(fact_293_antisym,axiom,
    ! [A: set_mat_a,B: set_mat_a] :
      ( ( ord_le3318621148231462513_mat_a @ A @ B )
     => ( ( ord_le3318621148231462513_mat_a @ B @ A )
       => ( A = B ) ) ) ).

% antisym
thf(fact_294_antisym,axiom,
    ! [A: vec_nat,B: vec_nat] :
      ( ( ord_less_eq_vec_nat @ A @ B )
     => ( ( ord_less_eq_vec_nat @ B @ A )
       => ( A = B ) ) ) ).

% antisym
thf(fact_295_antisym,axiom,
    ! [A: vec_vec_a,B: vec_vec_a] :
      ( ( ord_le4012615358376148468_vec_a @ A @ B )
     => ( ( ord_le4012615358376148468_vec_a @ B @ A )
       => ( A = B ) ) ) ).

% antisym
thf(fact_296_antisym,axiom,
    ! [A: set_nat,B: set_nat] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( ord_less_eq_set_nat @ B @ A )
       => ( A = B ) ) ) ).

% antisym
thf(fact_297_antisym,axiom,
    ! [A: vec_a,B: vec_a] :
      ( ( ord_less_eq_vec_a @ A @ B )
     => ( ( ord_less_eq_vec_a @ B @ A )
       => ( A = B ) ) ) ).

% antisym
thf(fact_298_antisym,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ B @ A )
       => ( A = B ) ) ) ).

% antisym
thf(fact_299_antisym,axiom,
    ! [A: a,B: a] :
      ( ( ord_less_eq_a @ A @ B )
     => ( ( ord_less_eq_a @ B @ A )
       => ( A = B ) ) ) ).

% antisym
thf(fact_300_dual__order_Otrans,axiom,
    ! [B: set_vec_a,A: set_vec_a,C: set_vec_a] :
      ( ( ord_le4791951621262958845_vec_a @ B @ A )
     => ( ( ord_le4791951621262958845_vec_a @ C @ B )
       => ( ord_le4791951621262958845_vec_a @ C @ A ) ) ) ).

% dual_order.trans
thf(fact_301_dual__order_Otrans,axiom,
    ! [B: set_mat_a,A: set_mat_a,C: set_mat_a] :
      ( ( ord_le3318621148231462513_mat_a @ B @ A )
     => ( ( ord_le3318621148231462513_mat_a @ C @ B )
       => ( ord_le3318621148231462513_mat_a @ C @ A ) ) ) ).

% dual_order.trans
thf(fact_302_dual__order_Otrans,axiom,
    ! [B: vec_nat,A: vec_nat,C: vec_nat] :
      ( ( ord_less_eq_vec_nat @ B @ A )
     => ( ( ord_less_eq_vec_nat @ C @ B )
       => ( ord_less_eq_vec_nat @ C @ A ) ) ) ).

% dual_order.trans
thf(fact_303_dual__order_Otrans,axiom,
    ! [B: vec_vec_a,A: vec_vec_a,C: vec_vec_a] :
      ( ( ord_le4012615358376148468_vec_a @ B @ A )
     => ( ( ord_le4012615358376148468_vec_a @ C @ B )
       => ( ord_le4012615358376148468_vec_a @ C @ A ) ) ) ).

% dual_order.trans
thf(fact_304_dual__order_Otrans,axiom,
    ! [B: set_nat,A: set_nat,C: set_nat] :
      ( ( ord_less_eq_set_nat @ B @ A )
     => ( ( ord_less_eq_set_nat @ C @ B )
       => ( ord_less_eq_set_nat @ C @ A ) ) ) ).

% dual_order.trans
thf(fact_305_dual__order_Otrans,axiom,
    ! [B: vec_a,A: vec_a,C: vec_a] :
      ( ( ord_less_eq_vec_a @ B @ A )
     => ( ( ord_less_eq_vec_a @ C @ B )
       => ( ord_less_eq_vec_a @ C @ A ) ) ) ).

% dual_order.trans
thf(fact_306_dual__order_Otrans,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( ord_less_eq_nat @ B @ A )
     => ( ( ord_less_eq_nat @ C @ B )
       => ( ord_less_eq_nat @ C @ A ) ) ) ).

% dual_order.trans
thf(fact_307_dual__order_Otrans,axiom,
    ! [B: a,A: a,C: a] :
      ( ( ord_less_eq_a @ B @ A )
     => ( ( ord_less_eq_a @ C @ B )
       => ( ord_less_eq_a @ C @ A ) ) ) ).

% dual_order.trans
thf(fact_308_dual__order_Oantisym,axiom,
    ! [B: set_vec_a,A: set_vec_a] :
      ( ( ord_le4791951621262958845_vec_a @ B @ A )
     => ( ( ord_le4791951621262958845_vec_a @ A @ B )
       => ( A = B ) ) ) ).

% dual_order.antisym
thf(fact_309_dual__order_Oantisym,axiom,
    ! [B: set_mat_a,A: set_mat_a] :
      ( ( ord_le3318621148231462513_mat_a @ B @ A )
     => ( ( ord_le3318621148231462513_mat_a @ A @ B )
       => ( A = B ) ) ) ).

% dual_order.antisym
thf(fact_310_dual__order_Oantisym,axiom,
    ! [B: vec_nat,A: vec_nat] :
      ( ( ord_less_eq_vec_nat @ B @ A )
     => ( ( ord_less_eq_vec_nat @ A @ B )
       => ( A = B ) ) ) ).

% dual_order.antisym
thf(fact_311_dual__order_Oantisym,axiom,
    ! [B: vec_vec_a,A: vec_vec_a] :
      ( ( ord_le4012615358376148468_vec_a @ B @ A )
     => ( ( ord_le4012615358376148468_vec_a @ A @ B )
       => ( A = B ) ) ) ).

% dual_order.antisym
thf(fact_312_dual__order_Oantisym,axiom,
    ! [B: set_nat,A: set_nat] :
      ( ( ord_less_eq_set_nat @ B @ A )
     => ( ( ord_less_eq_set_nat @ A @ B )
       => ( A = B ) ) ) ).

% dual_order.antisym
thf(fact_313_dual__order_Oantisym,axiom,
    ! [B: vec_a,A: vec_a] :
      ( ( ord_less_eq_vec_a @ B @ A )
     => ( ( ord_less_eq_vec_a @ A @ B )
       => ( A = B ) ) ) ).

% dual_order.antisym
thf(fact_314_dual__order_Oantisym,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_eq_nat @ B @ A )
     => ( ( ord_less_eq_nat @ A @ B )
       => ( A = B ) ) ) ).

% dual_order.antisym
thf(fact_315_dual__order_Oantisym,axiom,
    ! [B: a,A: a] :
      ( ( ord_less_eq_a @ B @ A )
     => ( ( ord_less_eq_a @ A @ B )
       => ( A = B ) ) ) ).

% dual_order.antisym
thf(fact_316_dual__order_Oeq__iff,axiom,
    ( ( ^ [Y4: set_vec_a,Z: set_vec_a] : ( Y4 = Z ) )
    = ( ^ [A3: set_vec_a,B3: set_vec_a] :
          ( ( ord_le4791951621262958845_vec_a @ B3 @ A3 )
          & ( ord_le4791951621262958845_vec_a @ A3 @ B3 ) ) ) ) ).

% dual_order.eq_iff
thf(fact_317_dual__order_Oeq__iff,axiom,
    ( ( ^ [Y4: set_mat_a,Z: set_mat_a] : ( Y4 = Z ) )
    = ( ^ [A3: set_mat_a,B3: set_mat_a] :
          ( ( ord_le3318621148231462513_mat_a @ B3 @ A3 )
          & ( ord_le3318621148231462513_mat_a @ A3 @ B3 ) ) ) ) ).

% dual_order.eq_iff
thf(fact_318_dual__order_Oeq__iff,axiom,
    ( ( ^ [Y4: vec_nat,Z: vec_nat] : ( Y4 = Z ) )
    = ( ^ [A3: vec_nat,B3: vec_nat] :
          ( ( ord_less_eq_vec_nat @ B3 @ A3 )
          & ( ord_less_eq_vec_nat @ A3 @ B3 ) ) ) ) ).

% dual_order.eq_iff
thf(fact_319_dual__order_Oeq__iff,axiom,
    ( ( ^ [Y4: vec_vec_a,Z: vec_vec_a] : ( Y4 = Z ) )
    = ( ^ [A3: vec_vec_a,B3: vec_vec_a] :
          ( ( ord_le4012615358376148468_vec_a @ B3 @ A3 )
          & ( ord_le4012615358376148468_vec_a @ A3 @ B3 ) ) ) ) ).

% dual_order.eq_iff
thf(fact_320_dual__order_Oeq__iff,axiom,
    ( ( ^ [Y4: set_nat,Z: set_nat] : ( Y4 = Z ) )
    = ( ^ [A3: set_nat,B3: set_nat] :
          ( ( ord_less_eq_set_nat @ B3 @ A3 )
          & ( ord_less_eq_set_nat @ A3 @ B3 ) ) ) ) ).

% dual_order.eq_iff
thf(fact_321_dual__order_Oeq__iff,axiom,
    ( ( ^ [Y4: vec_a,Z: vec_a] : ( Y4 = Z ) )
    = ( ^ [A3: vec_a,B3: vec_a] :
          ( ( ord_less_eq_vec_a @ B3 @ A3 )
          & ( ord_less_eq_vec_a @ A3 @ B3 ) ) ) ) ).

% dual_order.eq_iff
thf(fact_322_dual__order_Oeq__iff,axiom,
    ( ( ^ [Y4: nat,Z: nat] : ( Y4 = Z ) )
    = ( ^ [A3: nat,B3: nat] :
          ( ( ord_less_eq_nat @ B3 @ A3 )
          & ( ord_less_eq_nat @ A3 @ B3 ) ) ) ) ).

% dual_order.eq_iff
thf(fact_323_dual__order_Oeq__iff,axiom,
    ( ( ^ [Y4: a,Z: a] : ( Y4 = Z ) )
    = ( ^ [A3: a,B3: a] :
          ( ( ord_less_eq_a @ B3 @ A3 )
          & ( ord_less_eq_a @ A3 @ B3 ) ) ) ) ).

% dual_order.eq_iff
thf(fact_324_linorder__wlog,axiom,
    ! [P: nat > nat > $o,A: nat,B: nat] :
      ( ! [A4: nat,B4: nat] :
          ( ( ord_less_eq_nat @ A4 @ B4 )
         => ( P @ A4 @ B4 ) )
     => ( ! [A4: nat,B4: nat] :
            ( ( P @ B4 @ A4 )
           => ( P @ A4 @ B4 ) )
       => ( P @ A @ B ) ) ) ).

% linorder_wlog
thf(fact_325_linorder__wlog,axiom,
    ! [P: a > a > $o,A: a,B: a] :
      ( ! [A4: a,B4: a] :
          ( ( ord_less_eq_a @ A4 @ B4 )
         => ( P @ A4 @ B4 ) )
     => ( ! [A4: a,B4: a] :
            ( ( P @ B4 @ A4 )
           => ( P @ A4 @ B4 ) )
       => ( P @ A @ B ) ) ) ).

% linorder_wlog
thf(fact_326_order__trans,axiom,
    ! [X3: set_vec_a,Y3: set_vec_a,Z2: set_vec_a] :
      ( ( ord_le4791951621262958845_vec_a @ X3 @ Y3 )
     => ( ( ord_le4791951621262958845_vec_a @ Y3 @ Z2 )
       => ( ord_le4791951621262958845_vec_a @ X3 @ Z2 ) ) ) ).

% order_trans
thf(fact_327_order__trans,axiom,
    ! [X3: set_mat_a,Y3: set_mat_a,Z2: set_mat_a] :
      ( ( ord_le3318621148231462513_mat_a @ X3 @ Y3 )
     => ( ( ord_le3318621148231462513_mat_a @ Y3 @ Z2 )
       => ( ord_le3318621148231462513_mat_a @ X3 @ Z2 ) ) ) ).

% order_trans
thf(fact_328_order__trans,axiom,
    ! [X3: vec_nat,Y3: vec_nat,Z2: vec_nat] :
      ( ( ord_less_eq_vec_nat @ X3 @ Y3 )
     => ( ( ord_less_eq_vec_nat @ Y3 @ Z2 )
       => ( ord_less_eq_vec_nat @ X3 @ Z2 ) ) ) ).

% order_trans
thf(fact_329_order__trans,axiom,
    ! [X3: vec_vec_a,Y3: vec_vec_a,Z2: vec_vec_a] :
      ( ( ord_le4012615358376148468_vec_a @ X3 @ Y3 )
     => ( ( ord_le4012615358376148468_vec_a @ Y3 @ Z2 )
       => ( ord_le4012615358376148468_vec_a @ X3 @ Z2 ) ) ) ).

% order_trans
thf(fact_330_order__trans,axiom,
    ! [X3: set_nat,Y3: set_nat,Z2: set_nat] :
      ( ( ord_less_eq_set_nat @ X3 @ Y3 )
     => ( ( ord_less_eq_set_nat @ Y3 @ Z2 )
       => ( ord_less_eq_set_nat @ X3 @ Z2 ) ) ) ).

% order_trans
thf(fact_331_order__trans,axiom,
    ! [X3: vec_a,Y3: vec_a,Z2: vec_a] :
      ( ( ord_less_eq_vec_a @ X3 @ Y3 )
     => ( ( ord_less_eq_vec_a @ Y3 @ Z2 )
       => ( ord_less_eq_vec_a @ X3 @ Z2 ) ) ) ).

% order_trans
thf(fact_332_order__trans,axiom,
    ! [X3: nat,Y3: nat,Z2: nat] :
      ( ( ord_less_eq_nat @ X3 @ Y3 )
     => ( ( ord_less_eq_nat @ Y3 @ Z2 )
       => ( ord_less_eq_nat @ X3 @ Z2 ) ) ) ).

% order_trans
thf(fact_333_order__trans,axiom,
    ! [X3: a,Y3: a,Z2: a] :
      ( ( ord_less_eq_a @ X3 @ Y3 )
     => ( ( ord_less_eq_a @ Y3 @ Z2 )
       => ( ord_less_eq_a @ X3 @ Z2 ) ) ) ).

% order_trans
thf(fact_334_order_Otrans,axiom,
    ! [A: set_vec_a,B: set_vec_a,C: set_vec_a] :
      ( ( ord_le4791951621262958845_vec_a @ A @ B )
     => ( ( ord_le4791951621262958845_vec_a @ B @ C )
       => ( ord_le4791951621262958845_vec_a @ A @ C ) ) ) ).

% order.trans
thf(fact_335_order_Otrans,axiom,
    ! [A: set_mat_a,B: set_mat_a,C: set_mat_a] :
      ( ( ord_le3318621148231462513_mat_a @ A @ B )
     => ( ( ord_le3318621148231462513_mat_a @ B @ C )
       => ( ord_le3318621148231462513_mat_a @ A @ C ) ) ) ).

% order.trans
thf(fact_336_order_Otrans,axiom,
    ! [A: vec_nat,B: vec_nat,C: vec_nat] :
      ( ( ord_less_eq_vec_nat @ A @ B )
     => ( ( ord_less_eq_vec_nat @ B @ C )
       => ( ord_less_eq_vec_nat @ A @ C ) ) ) ).

% order.trans
thf(fact_337_order_Otrans,axiom,
    ! [A: vec_vec_a,B: vec_vec_a,C: vec_vec_a] :
      ( ( ord_le4012615358376148468_vec_a @ A @ B )
     => ( ( ord_le4012615358376148468_vec_a @ B @ C )
       => ( ord_le4012615358376148468_vec_a @ A @ C ) ) ) ).

% order.trans
thf(fact_338_order_Otrans,axiom,
    ! [A: set_nat,B: set_nat,C: set_nat] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( ord_less_eq_set_nat @ B @ C )
       => ( ord_less_eq_set_nat @ A @ C ) ) ) ).

% order.trans
thf(fact_339_order_Otrans,axiom,
    ! [A: vec_a,B: vec_a,C: vec_a] :
      ( ( ord_less_eq_vec_a @ A @ B )
     => ( ( ord_less_eq_vec_a @ B @ C )
       => ( ord_less_eq_vec_a @ A @ C ) ) ) ).

% order.trans
thf(fact_340_order_Otrans,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ord_less_eq_nat @ A @ C ) ) ) ).

% order.trans
thf(fact_341_order_Otrans,axiom,
    ! [A: a,B: a,C: a] :
      ( ( ord_less_eq_a @ A @ B )
     => ( ( ord_less_eq_a @ B @ C )
       => ( ord_less_eq_a @ A @ C ) ) ) ).

% order.trans
thf(fact_342_order__antisym,axiom,
    ! [X3: set_vec_a,Y3: set_vec_a] :
      ( ( ord_le4791951621262958845_vec_a @ X3 @ Y3 )
     => ( ( ord_le4791951621262958845_vec_a @ Y3 @ X3 )
       => ( X3 = Y3 ) ) ) ).

% order_antisym
thf(fact_343_order__antisym,axiom,
    ! [X3: set_mat_a,Y3: set_mat_a] :
      ( ( ord_le3318621148231462513_mat_a @ X3 @ Y3 )
     => ( ( ord_le3318621148231462513_mat_a @ Y3 @ X3 )
       => ( X3 = Y3 ) ) ) ).

% order_antisym
thf(fact_344_order__antisym,axiom,
    ! [X3: vec_nat,Y3: vec_nat] :
      ( ( ord_less_eq_vec_nat @ X3 @ Y3 )
     => ( ( ord_less_eq_vec_nat @ Y3 @ X3 )
       => ( X3 = Y3 ) ) ) ).

% order_antisym
thf(fact_345_order__antisym,axiom,
    ! [X3: vec_vec_a,Y3: vec_vec_a] :
      ( ( ord_le4012615358376148468_vec_a @ X3 @ Y3 )
     => ( ( ord_le4012615358376148468_vec_a @ Y3 @ X3 )
       => ( X3 = Y3 ) ) ) ).

% order_antisym
thf(fact_346_order__antisym,axiom,
    ! [X3: set_nat,Y3: set_nat] :
      ( ( ord_less_eq_set_nat @ X3 @ Y3 )
     => ( ( ord_less_eq_set_nat @ Y3 @ X3 )
       => ( X3 = Y3 ) ) ) ).

% order_antisym
thf(fact_347_order__antisym,axiom,
    ! [X3: vec_a,Y3: vec_a] :
      ( ( ord_less_eq_vec_a @ X3 @ Y3 )
     => ( ( ord_less_eq_vec_a @ Y3 @ X3 )
       => ( X3 = Y3 ) ) ) ).

% order_antisym
thf(fact_348_order__antisym,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( ord_less_eq_nat @ X3 @ Y3 )
     => ( ( ord_less_eq_nat @ Y3 @ X3 )
       => ( X3 = Y3 ) ) ) ).

% order_antisym
thf(fact_349_order__antisym,axiom,
    ! [X3: a,Y3: a] :
      ( ( ord_less_eq_a @ X3 @ Y3 )
     => ( ( ord_less_eq_a @ Y3 @ X3 )
       => ( X3 = Y3 ) ) ) ).

% order_antisym
thf(fact_350_ord__le__eq__trans,axiom,
    ! [A: vec_nat,B: vec_nat,C: vec_nat] :
      ( ( ord_less_eq_vec_nat @ A @ B )
     => ( ( B = C )
       => ( ord_less_eq_vec_nat @ A @ C ) ) ) ).

% ord_le_eq_trans
thf(fact_351_ord__le__eq__trans,axiom,
    ! [A: vec_vec_a,B: vec_vec_a,C: vec_vec_a] :
      ( ( ord_le4012615358376148468_vec_a @ A @ B )
     => ( ( B = C )
       => ( ord_le4012615358376148468_vec_a @ A @ C ) ) ) ).

% ord_le_eq_trans
thf(fact_352_ord__le__eq__trans,axiom,
    ! [A: set_nat,B: set_nat,C: set_nat] :
      ( ( ord_less_eq_set_nat @ A @ B )
     => ( ( B = C )
       => ( ord_less_eq_set_nat @ A @ C ) ) ) ).

% ord_le_eq_trans
thf(fact_353_ord__le__eq__trans,axiom,
    ! [A: vec_a,B: vec_a,C: vec_a] :
      ( ( ord_less_eq_vec_a @ A @ B )
     => ( ( B = C )
       => ( ord_less_eq_vec_a @ A @ C ) ) ) ).

% ord_le_eq_trans
thf(fact_354_ord__le__eq__trans,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( B = C )
       => ( ord_less_eq_nat @ A @ C ) ) ) ).

% ord_le_eq_trans
thf(fact_355_ord__le__eq__trans,axiom,
    ! [A: a,B: a,C: a] :
      ( ( ord_less_eq_a @ A @ B )
     => ( ( B = C )
       => ( ord_less_eq_a @ A @ C ) ) ) ).

% ord_le_eq_trans
thf(fact_356_ord__eq__le__trans,axiom,
    ! [A: vec_a,B: vec_a,C: vec_a] :
      ( ( A = B )
     => ( ( ord_less_eq_vec_a @ B @ C )
       => ( ord_less_eq_vec_a @ A @ C ) ) ) ).

% ord_eq_le_trans
thf(fact_357_ord__eq__le__trans,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( A = B )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ord_less_eq_nat @ A @ C ) ) ) ).

% ord_eq_le_trans
thf(fact_358_ord__eq__le__trans,axiom,
    ! [A: a,B: a,C: a] :
      ( ( A = B )
     => ( ( ord_less_eq_a @ B @ C )
       => ( ord_less_eq_a @ A @ C ) ) ) ).

% ord_eq_le_trans
thf(fact_359_order__class_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: vec_a,Z: vec_a] : ( Y4 = Z ) )
    = ( ^ [X2: vec_a,Y: vec_a] :
          ( ( ord_less_eq_vec_a @ X2 @ Y )
          & ( ord_less_eq_vec_a @ Y @ X2 ) ) ) ) ).

% order_class.order_eq_iff
thf(fact_360_order__class_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: nat,Z: nat] : ( Y4 = Z ) )
    = ( ^ [X2: nat,Y: nat] :
          ( ( ord_less_eq_nat @ X2 @ Y )
          & ( ord_less_eq_nat @ Y @ X2 ) ) ) ) ).

% order_class.order_eq_iff
thf(fact_361_order__class_Oorder__eq__iff,axiom,
    ( ( ^ [Y4: a,Z: a] : ( Y4 = Z ) )
    = ( ^ [X2: a,Y: a] :
          ( ( ord_less_eq_a @ X2 @ Y )
          & ( ord_less_eq_a @ Y @ X2 ) ) ) ) ).

% order_class.order_eq_iff
thf(fact_362_le__cases3,axiom,
    ! [X3: nat,Y3: nat,Z2: nat] :
      ( ( ( ord_less_eq_nat @ X3 @ Y3 )
       => ~ ( ord_less_eq_nat @ Y3 @ Z2 ) )
     => ( ( ( ord_less_eq_nat @ Y3 @ X3 )
         => ~ ( ord_less_eq_nat @ X3 @ Z2 ) )
       => ( ( ( ord_less_eq_nat @ X3 @ Z2 )
           => ~ ( ord_less_eq_nat @ Z2 @ Y3 ) )
         => ( ( ( ord_less_eq_nat @ Z2 @ Y3 )
             => ~ ( ord_less_eq_nat @ Y3 @ X3 ) )
           => ( ( ( ord_less_eq_nat @ Y3 @ Z2 )
               => ~ ( ord_less_eq_nat @ Z2 @ X3 ) )
             => ~ ( ( ord_less_eq_nat @ Z2 @ X3 )
                 => ~ ( ord_less_eq_nat @ X3 @ Y3 ) ) ) ) ) ) ) ).

% le_cases3
thf(fact_363_le__cases3,axiom,
    ! [X3: a,Y3: a,Z2: a] :
      ( ( ( ord_less_eq_a @ X3 @ Y3 )
       => ~ ( ord_less_eq_a @ Y3 @ Z2 ) )
     => ( ( ( ord_less_eq_a @ Y3 @ X3 )
         => ~ ( ord_less_eq_a @ X3 @ Z2 ) )
       => ( ( ( ord_less_eq_a @ X3 @ Z2 )
           => ~ ( ord_less_eq_a @ Z2 @ Y3 ) )
         => ( ( ( ord_less_eq_a @ Z2 @ Y3 )
             => ~ ( ord_less_eq_a @ Y3 @ X3 ) )
           => ( ( ( ord_less_eq_a @ Y3 @ Z2 )
               => ~ ( ord_less_eq_a @ Z2 @ X3 ) )
             => ~ ( ( ord_less_eq_a @ Z2 @ X3 )
                 => ~ ( ord_less_eq_a @ X3 @ Y3 ) ) ) ) ) ) ) ).

% le_cases3
thf(fact_364_nle__le,axiom,
    ! [A: nat,B: nat] :
      ( ( ~ ( ord_less_eq_nat @ A @ B ) )
      = ( ( ord_less_eq_nat @ B @ A )
        & ( B != A ) ) ) ).

% nle_le
thf(fact_365_nle__le,axiom,
    ! [A: a,B: a] :
      ( ( ~ ( ord_less_eq_a @ A @ B ) )
      = ( ( ord_less_eq_a @ B @ A )
        & ( B != A ) ) ) ).

% nle_le
thf(fact_366_one__reorient,axiom,
    ! [X3: nat] :
      ( ( one_one_nat = X3 )
      = ( X3 = one_one_nat ) ) ).

% one_reorient
thf(fact_367_set__plus__elim,axiom,
    ! [X3: vec_a,A2: set_vec_a,B2: set_vec_a] :
      ( ( member_vec_a @ X3 @ ( plus_plus_set_vec_a @ A2 @ B2 ) )
     => ~ ! [A4: vec_a,B4: vec_a] :
            ( ( X3
              = ( plus_plus_vec_a @ A4 @ B4 ) )
           => ( ( member_vec_a @ A4 @ A2 )
             => ~ ( member_vec_a @ B4 @ B2 ) ) ) ) ).

% set_plus_elim
thf(fact_368_set__plus__elim,axiom,
    ! [X3: mat_a,A2: set_mat_a,B2: set_mat_a] :
      ( ( member_mat_a @ X3 @ ( plus_plus_set_mat_a @ A2 @ B2 ) )
     => ~ ! [A4: mat_a,B4: mat_a] :
            ( ( X3
              = ( plus_plus_mat_a @ A4 @ B4 ) )
           => ( ( member_mat_a @ A4 @ A2 )
             => ~ ( member_mat_a @ B4 @ B2 ) ) ) ) ).

% set_plus_elim
thf(fact_369_set__plus__elim,axiom,
    ! [X3: nat,A2: set_nat,B2: set_nat] :
      ( ( member_nat @ X3 @ ( plus_plus_set_nat @ A2 @ B2 ) )
     => ~ ! [A4: nat,B4: nat] :
            ( ( X3
              = ( plus_plus_nat @ A4 @ B4 ) )
           => ( ( member_nat @ A4 @ A2 )
             => ~ ( member_nat @ B4 @ B2 ) ) ) ) ).

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

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

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

% add.left_commute
thf(fact_373_add_Ocommute,axiom,
    ( plus_plus_nat
    = ( ^ [A3: nat,B3: nat] : ( plus_plus_nat @ B3 @ A3 ) ) ) ).

% add.commute
thf(fact_374_add_Oassoc,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( plus_plus_nat @ ( plus_plus_nat @ A @ B ) @ C )
      = ( plus_plus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).

% add.assoc
thf(fact_375_group__cancel_Oadd2,axiom,
    ! [B2: nat,K: nat,B: nat,A: nat] :
      ( ( B2
        = ( plus_plus_nat @ K @ B ) )
     => ( ( plus_plus_nat @ A @ B2 )
        = ( plus_plus_nat @ K @ ( plus_plus_nat @ A @ B ) ) ) ) ).

% group_cancel.add2
thf(fact_376_group__cancel_Oadd1,axiom,
    ! [A2: nat,K: nat,A: nat,B: nat] :
      ( ( A2
        = ( plus_plus_nat @ K @ A ) )
     => ( ( plus_plus_nat @ A2 @ B )
        = ( plus_plus_nat @ K @ ( plus_plus_nat @ A @ B ) ) ) ) ).

% group_cancel.add1
thf(fact_377_add__mono__thms__linordered__semiring_I4_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( I = J )
        & ( K = L ) )
     => ( ( plus_plus_nat @ I @ K )
        = ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(4)
thf(fact_378_ab__semigroup__add__class_Oadd__ac_I1_J,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( plus_plus_nat @ ( plus_plus_nat @ A @ B ) @ C )
      = ( plus_plus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).

% ab_semigroup_add_class.add_ac(1)
thf(fact_379_add__le__imp__le__right,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) )
     => ( ord_less_eq_nat @ A @ B ) ) ).

% add_le_imp_le_right
thf(fact_380_add__le__imp__le__right,axiom,
    ! [A: a,C: a,B: a] :
      ( ( ord_less_eq_a @ ( plus_plus_a @ A @ C ) @ ( plus_plus_a @ B @ C ) )
     => ( ord_less_eq_a @ A @ B ) ) ).

% add_le_imp_le_right
thf(fact_381_add__le__imp__le__left,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) )
     => ( ord_less_eq_nat @ A @ B ) ) ).

% add_le_imp_le_left
thf(fact_382_add__le__imp__le__left,axiom,
    ! [C: a,A: a,B: a] :
      ( ( ord_less_eq_a @ ( plus_plus_a @ C @ A ) @ ( plus_plus_a @ C @ B ) )
     => ( ord_less_eq_a @ A @ B ) ) ).

% add_le_imp_le_left
thf(fact_383_le__iff__add,axiom,
    ( ord_less_eq_nat
    = ( ^ [A3: nat,B3: nat] :
        ? [C3: nat] :
          ( B3
          = ( plus_plus_nat @ A3 @ C3 ) ) ) ) ).

% le_iff_add
thf(fact_384_add__right__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) ) ) ).

% add_right_mono
thf(fact_385_add__right__mono,axiom,
    ! [A: a,B: a,C: a] :
      ( ( ord_less_eq_a @ A @ B )
     => ( ord_less_eq_a @ ( plus_plus_a @ A @ C ) @ ( plus_plus_a @ B @ C ) ) ) ).

% add_right_mono
thf(fact_386_less__eqE,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ~ ! [C4: nat] :
            ( B
           != ( plus_plus_nat @ A @ C4 ) ) ) ).

% less_eqE
thf(fact_387_add__left__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) ) ) ).

% add_left_mono
thf(fact_388_add__left__mono,axiom,
    ! [A: a,B: a,C: a] :
      ( ( ord_less_eq_a @ A @ B )
     => ( ord_less_eq_a @ ( plus_plus_a @ C @ A ) @ ( plus_plus_a @ C @ B ) ) ) ).

% add_left_mono
thf(fact_389_add__mono,axiom,
    ! [A: nat,B: nat,C: nat,D2: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C @ D2 )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ D2 ) ) ) ) ).

% add_mono
thf(fact_390_add__mono,axiom,
    ! [A: a,B: a,C: a,D2: a] :
      ( ( ord_less_eq_a @ A @ B )
     => ( ( ord_less_eq_a @ C @ D2 )
       => ( ord_less_eq_a @ ( plus_plus_a @ A @ C ) @ ( plus_plus_a @ B @ D2 ) ) ) ) ).

% add_mono
thf(fact_391_add__mono__thms__linordered__semiring_I1_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( ord_less_eq_nat @ I @ J )
        & ( ord_less_eq_nat @ K @ L ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(1)
thf(fact_392_add__mono__thms__linordered__semiring_I1_J,axiom,
    ! [I: a,J: a,K: a,L: a] :
      ( ( ( ord_less_eq_a @ I @ J )
        & ( ord_less_eq_a @ K @ L ) )
     => ( ord_less_eq_a @ ( plus_plus_a @ I @ K ) @ ( plus_plus_a @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(1)
thf(fact_393_add__mono__thms__linordered__semiring_I2_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( I = J )
        & ( ord_less_eq_nat @ K @ L ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(2)
thf(fact_394_add__mono__thms__linordered__semiring_I2_J,axiom,
    ! [I: a,J: a,K: a,L: a] :
      ( ( ( I = J )
        & ( ord_less_eq_a @ K @ L ) )
     => ( ord_less_eq_a @ ( plus_plus_a @ I @ K ) @ ( plus_plus_a @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(2)
thf(fact_395_add__mono__thms__linordered__semiring_I3_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( ord_less_eq_nat @ I @ J )
        & ( K = L ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(3)
thf(fact_396_add__mono__thms__linordered__semiring_I3_J,axiom,
    ! [I: a,J: a,K: a,L: a] :
      ( ( ( ord_less_eq_a @ I @ J )
        & ( K = L ) )
     => ( ord_less_eq_a @ ( plus_plus_a @ I @ K ) @ ( plus_plus_a @ J @ L ) ) ) ).

% add_mono_thms_linordered_semiring(3)
thf(fact_397_M__def,axiom,
    ( m
    = ( append_rows_a @ ( append_rows_a @ m_up @ m_low ) @ m_last ) ) ).

% M_def
thf(fact_398_le__minus__one__simps_I2_J,axiom,
    ord_less_eq_a @ ( uminus_uminus_a @ one_one_a ) @ one_one_a ).

% le_minus_one_simps(2)
thf(fact_399_le__minus__one__simps_I4_J,axiom,
    ~ ( ord_less_eq_a @ one_one_a @ ( uminus_uminus_a @ one_one_a ) ) ).

% le_minus_one_simps(4)
thf(fact_400_append__rows__le,axiom,
    ! [A2: mat_a,Nr1: nat,Nc: nat,B2: mat_a,Nr2: nat,A: vec_a,V: vec_a,B: vec_a] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr1 @ Nc ) )
     => ( ( member_mat_a @ B2 @ ( carrier_mat_a @ Nr2 @ Nc ) )
       => ( ( member_vec_a @ A @ ( carrier_vec_a @ Nr1 ) )
         => ( ( member_vec_a @ V @ ( carrier_vec_a @ Nc ) )
           => ( ( ord_less_eq_vec_a @ ( mult_mat_vec_a @ ( append_rows_a @ A2 @ B2 ) @ V ) @ ( append_vec_a @ A @ B ) )
              = ( ( ord_less_eq_vec_a @ ( mult_mat_vec_a @ A2 @ V ) @ A )
                & ( ord_less_eq_vec_a @ ( mult_mat_vec_a @ B2 @ V ) @ B ) ) ) ) ) ) ) ).

% append_rows_le
thf(fact_401_mat__mult__append__cols,axiom,
    ! [A2: mat_a,Nr: nat,Nc1: nat,B2: mat_a,Nc2: nat,V1: vec_a,V22: vec_a] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc1 ) )
     => ( ( member_mat_a @ B2 @ ( carrier_mat_a @ Nr @ Nc2 ) )
       => ( ( member_vec_a @ V1 @ ( carrier_vec_a @ Nc1 ) )
         => ( ( member_vec_a @ V22 @ ( carrier_vec_a @ Nc2 ) )
           => ( ( mult_mat_vec_a @ ( missin386308114684349109cols_a @ A2 @ B2 ) @ ( append_vec_a @ V1 @ V22 ) )
              = ( plus_plus_vec_a @ ( mult_mat_vec_a @ A2 @ V1 ) @ ( mult_mat_vec_a @ B2 @ V22 ) ) ) ) ) ) ) ).

% mat_mult_append_cols
thf(fact_402_sum__carrier__vec,axiom,
    ! [A2: set_vec_a,N: nat,B2: set_vec_a] :
      ( ( ord_le4791951621262958845_vec_a @ A2 @ ( carrier_vec_a @ N ) )
     => ( ( ord_le4791951621262958845_vec_a @ B2 @ ( carrier_vec_a @ N ) )
       => ( ord_le4791951621262958845_vec_a @ ( plus_plus_set_vec_a @ A2 @ B2 ) @ ( carrier_vec_a @ N ) ) ) ) ).

% sum_carrier_vec
thf(fact_403_nat__add__left__cancel__le,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ K @ M ) @ ( plus_plus_nat @ K @ N ) )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% nat_add_left_cancel_le
thf(fact_404_uminus__carrier__iff__mat,axiom,
    ! [A2: mat_a,Nr: nat,Nc: nat] :
      ( ( member_mat_a @ ( uminus_uminus_mat_a @ A2 ) @ ( carrier_mat_a @ Nr @ Nc ) )
      = ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc ) ) ) ).

% uminus_carrier_iff_mat
thf(fact_405_carrier__append__rows,axiom,
    ! [A2: mat_a,Nr1: nat,Nc: nat,B2: mat_a,Nr2: nat] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr1 @ Nc ) )
     => ( ( member_mat_a @ B2 @ ( carrier_mat_a @ Nr2 @ Nc ) )
       => ( member_mat_a @ ( append_rows_a @ A2 @ B2 ) @ ( carrier_mat_a @ ( plus_plus_nat @ Nr1 @ Nr2 ) @ Nc ) ) ) ) ).

% carrier_append_rows
thf(fact_406_carrier__append__cols,axiom,
    ! [A2: mat_a,Nr: nat,Nc1: nat,B2: mat_a,Nc2: nat] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc1 ) )
     => ( ( member_mat_a @ B2 @ ( carrier_mat_a @ Nr @ Nc2 ) )
       => ( member_mat_a @ ( missin386308114684349109cols_a @ A2 @ B2 ) @ ( carrier_mat_a @ Nr @ ( plus_plus_nat @ Nc1 @ Nc2 ) ) ) ) ) ).

% carrier_append_cols
thf(fact_407_le__refl,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ N @ N ) ).

% le_refl
thf(fact_408_le__trans,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( ord_less_eq_nat @ J @ K )
       => ( ord_less_eq_nat @ I @ K ) ) ) ).

% le_trans
thf(fact_409_eq__imp__le,axiom,
    ! [M: nat,N: nat] :
      ( ( M = N )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% eq_imp_le
thf(fact_410_le__antisym,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( ord_less_eq_nat @ N @ M )
       => ( M = N ) ) ) ).

% le_antisym
thf(fact_411_nat__le__linear,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
      | ( ord_less_eq_nat @ N @ M ) ) ).

% nat_le_linear
thf(fact_412_Nat_Oex__has__greatest__nat,axiom,
    ! [P: nat > $o,K: nat,B: nat] :
      ( ( P @ K )
     => ( ! [Y2: nat] :
            ( ( P @ Y2 )
           => ( ord_less_eq_nat @ Y2 @ B ) )
       => ? [X: nat] :
            ( ( P @ X )
            & ! [Y5: nat] :
                ( ( P @ Y5 )
               => ( ord_less_eq_nat @ Y5 @ X ) ) ) ) ) ).

% Nat.ex_has_greatest_nat
thf(fact_413_append__cols__def,axiom,
    ( missin386308114684349109cols_a
    = ( ^ [A5: mat_a,B5: mat_a] : ( transpose_mat_a @ ( append_rows_a @ ( transpose_mat_a @ A5 ) @ ( transpose_mat_a @ B5 ) ) ) ) ) ).

% append_cols_def
thf(fact_414_uminus__carrier__mat,axiom,
    ! [A2: mat_a,Nr: nat,Nc: nat] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( member_mat_a @ ( uminus_uminus_mat_a @ A2 ) @ ( carrier_mat_a @ Nr @ Nc ) ) ) ).

% uminus_carrier_mat
thf(fact_415_uminus__add__mat,axiom,
    ! [A2: mat_a,Nr: nat,Nc: nat,B2: mat_a] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( ( member_mat_a @ B2 @ ( carrier_mat_a @ Nr @ Nc ) )
       => ( ( uminus_uminus_mat_a @ ( plus_plus_mat_a @ A2 @ B2 ) )
          = ( plus_plus_mat_a @ ( uminus_uminus_mat_a @ B2 ) @ ( uminus_uminus_mat_a @ A2 ) ) ) ) ) ).

% uminus_add_mat
thf(fact_416_transpose__uminus,axiom,
    ! [A2: mat_a] :
      ( ( transpose_mat_a @ ( uminus_uminus_mat_a @ A2 ) )
      = ( uminus_uminus_mat_a @ ( transpose_mat_a @ A2 ) ) ) ).

% transpose_uminus
thf(fact_417_add__leE,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ M @ K ) @ N )
     => ~ ( ( ord_less_eq_nat @ M @ N )
         => ~ ( ord_less_eq_nat @ K @ N ) ) ) ).

% add_leE
thf(fact_418_le__add1,axiom,
    ! [N: nat,M: nat] : ( ord_less_eq_nat @ N @ ( plus_plus_nat @ N @ M ) ) ).

% le_add1
thf(fact_419_le__add2,axiom,
    ! [N: nat,M: nat] : ( ord_less_eq_nat @ N @ ( plus_plus_nat @ M @ N ) ) ).

% le_add2
thf(fact_420_add__leD1,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ M @ K ) @ N )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% add_leD1
thf(fact_421_add__leD2,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ M @ K ) @ N )
     => ( ord_less_eq_nat @ K @ N ) ) ).

% add_leD2
thf(fact_422_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_423_add__le__mono,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( ord_less_eq_nat @ K @ L )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ) ).

% add_le_mono
thf(fact_424_add__le__mono1,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ K ) ) ) ).

% add_le_mono1
thf(fact_425_trans__le__add1,axiom,
    ! [I: nat,J: nat,M: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ord_less_eq_nat @ I @ ( plus_plus_nat @ J @ M ) ) ) ).

% trans_le_add1
thf(fact_426_trans__le__add2,axiom,
    ! [I: nat,J: nat,M: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ord_less_eq_nat @ I @ ( plus_plus_nat @ M @ J ) ) ) ).

% trans_le_add2
thf(fact_427_nat__le__iff__add,axiom,
    ( ord_less_eq_nat
    = ( ^ [M2: nat,N4: nat] :
        ? [K2: nat] :
          ( N4
          = ( plus_plus_nat @ M2 @ K2 ) ) ) ) ).

% nat_le_iff_add
thf(fact_428_assoc__add__vecset,axiom,
    ! [A2: set_vec_a,N: nat,B2: set_vec_a,C2: set_vec_a] :
      ( ( ord_le4791951621262958845_vec_a @ A2 @ ( carrier_vec_a @ N ) )
     => ( ( ord_le4791951621262958845_vec_a @ B2 @ ( carrier_vec_a @ N ) )
       => ( ( ord_le4791951621262958845_vec_a @ C2 @ ( carrier_vec_a @ N ) )
         => ( ( plus_plus_set_vec_a @ A2 @ ( plus_plus_set_vec_a @ B2 @ C2 ) )
            = ( plus_plus_set_vec_a @ ( plus_plus_set_vec_a @ A2 @ B2 ) @ C2 ) ) ) ) ) ).

% assoc_add_vecset
thf(fact_429_comm__add__vecset,axiom,
    ! [A2: set_vec_a,N: nat,B2: set_vec_a] :
      ( ( ord_le4791951621262958845_vec_a @ A2 @ ( carrier_vec_a @ N ) )
     => ( ( ord_le4791951621262958845_vec_a @ B2 @ ( carrier_vec_a @ N ) )
       => ( ( plus_plus_set_vec_a @ A2 @ B2 )
          = ( plus_plus_set_vec_a @ B2 @ A2 ) ) ) ) ).

% comm_add_vecset
thf(fact_430_le__numeral__extra_I4_J,axiom,
    ord_less_eq_nat @ one_one_nat @ one_one_nat ).

% le_numeral_extra(4)
thf(fact_431_le__numeral__extra_I4_J,axiom,
    ord_less_eq_a @ one_one_a @ one_one_a ).

% le_numeral_extra(4)
thf(fact_432_mat__mult__append,axiom,
    ! [A2: mat_a,Nr1: nat,Nc: nat,B2: mat_a,Nr2: nat,V: vec_a] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr1 @ Nc ) )
     => ( ( member_mat_a @ B2 @ ( carrier_mat_a @ Nr2 @ Nc ) )
       => ( ( member_vec_a @ V @ ( carrier_vec_a @ Nc ) )
         => ( ( mult_mat_vec_a @ ( append_rows_a @ A2 @ B2 ) @ V )
            = ( append_vec_a @ ( mult_mat_vec_a @ A2 @ V ) @ ( mult_mat_vec_a @ B2 @ V ) ) ) ) ) ) ).

% mat_mult_append
thf(fact_433_subsetI,axiom,
    ! [A2: set_vec_a,B2: set_vec_a] :
      ( ! [X: vec_a] :
          ( ( member_vec_a @ X @ A2 )
         => ( member_vec_a @ X @ B2 ) )
     => ( ord_le4791951621262958845_vec_a @ A2 @ B2 ) ) ).

% subsetI
thf(fact_434_subsetI,axiom,
    ! [A2: set_mat_a,B2: set_mat_a] :
      ( ! [X: mat_a] :
          ( ( member_mat_a @ X @ A2 )
         => ( member_mat_a @ X @ B2 ) )
     => ( ord_le3318621148231462513_mat_a @ A2 @ B2 ) ) ).

% subsetI
thf(fact_435_weak__duality__theorem,axiom,
    ! [A2: mat_nat,Nr: nat,Nc: nat,B: vec_nat,C: vec_nat,X3: vec_nat,Y3: vec_nat] :
      ( ( member_mat_nat @ A2 @ ( carrier_mat_nat @ Nr @ Nc ) )
     => ( ( member_vec_nat @ B @ ( carrier_vec_nat @ Nr ) )
       => ( ( member_vec_nat @ C @ ( carrier_vec_nat @ Nc ) )
         => ( ( member_vec_nat @ X3 @ ( carrier_vec_nat @ Nc ) )
           => ( ( ord_less_eq_vec_nat @ ( mult_mat_vec_nat @ A2 @ X3 ) @ B )
             => ( ( ord_less_eq_vec_nat @ ( zero_vec_nat @ Nr ) @ Y3 )
               => ( ( ( mult_mat_vec_nat @ ( transpose_mat_nat @ A2 ) @ Y3 )
                    = C )
                 => ( ord_less_eq_nat @ ( scalar_prod_nat @ C @ X3 ) @ ( scalar_prod_nat @ B @ Y3 ) ) ) ) ) ) ) ) ) ).

% weak_duality_theorem
thf(fact_436_weak__duality__theorem,axiom,
    ! [A2: mat_a,Nr: nat,Nc: nat,B: vec_a,C: vec_a,X3: vec_a,Y3: vec_a] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( ( member_vec_a @ B @ ( carrier_vec_a @ Nr ) )
       => ( ( member_vec_a @ C @ ( carrier_vec_a @ Nc ) )
         => ( ( member_vec_a @ X3 @ ( carrier_vec_a @ Nc ) )
           => ( ( ord_less_eq_vec_a @ ( mult_mat_vec_a @ A2 @ X3 ) @ B )
             => ( ( ord_less_eq_vec_a @ ( zero_vec_a @ Nr ) @ Y3 )
               => ( ( ( mult_mat_vec_a @ ( transpose_mat_a @ A2 ) @ Y3 )
                    = C )
                 => ( ord_less_eq_a @ ( scalar_prod_a @ C @ X3 ) @ ( scalar_prod_a @ B @ Y3 ) ) ) ) ) ) ) ) ) ).

% weak_duality_theorem
thf(fact_437_unbounded__dual__solutions,axiom,
    ! [A2: mat_a,Nr: nat,Nc: nat,B: vec_a,C: vec_a] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( ( member_vec_a @ B @ ( carrier_vec_a @ Nr ) )
       => ( ( member_vec_a @ C @ ( carrier_vec_a @ Nc ) )
         => ( ! [V3: a] :
              ? [Y5: vec_a] :
                ( ( ord_less_eq_vec_a @ ( zero_vec_a @ Nr ) @ Y5 )
                & ( ( mult_mat_vec_a @ ( transpose_mat_a @ A2 ) @ Y5 )
                  = C )
                & ( ord_less_eq_a @ ( scalar_prod_a @ B @ Y5 ) @ V3 ) )
           => ~ ? [X4: vec_a] :
                  ( ( member_vec_a @ X4 @ ( carrier_vec_a @ Nc ) )
                  & ( ord_less_eq_vec_a @ ( mult_mat_vec_a @ A2 @ X4 ) @ B ) ) ) ) ) ) ).

% unbounded_dual_solutions
thf(fact_438_unbounded__primal__solutions,axiom,
    ! [A2: mat_a,Nr: nat,Nc: nat,B: vec_a,C: vec_a] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( ( member_vec_a @ B @ ( carrier_vec_a @ Nr ) )
       => ( ( member_vec_a @ C @ ( carrier_vec_a @ Nc ) )
         => ( ! [V3: a] :
              ? [X4: vec_a] :
                ( ( member_vec_a @ X4 @ ( carrier_vec_a @ Nc ) )
                & ( ord_less_eq_vec_a @ ( mult_mat_vec_a @ A2 @ X4 ) @ B )
                & ( ord_less_eq_a @ V3 @ ( scalar_prod_a @ C @ X4 ) ) )
           => ~ ? [Y5: vec_a] :
                  ( ( ord_less_eq_vec_a @ ( zero_vec_a @ Nr ) @ Y5 )
                  & ( ( mult_mat_vec_a @ ( transpose_mat_a @ A2 ) @ Y5 )
                    = C ) ) ) ) ) ) ).

% unbounded_primal_solutions
thf(fact_439_vec__of__scal__dim_I1_J,axiom,
    ! [X3: a] :
      ( ( dim_vec_a @ ( missin5951511974119752530scal_a @ X3 ) )
      = one_one_nat ) ).

% vec_of_scal_dim(1)
thf(fact_440_Compl__iff,axiom,
    ! [C: vec_a,A2: set_vec_a] :
      ( ( member_vec_a @ C @ ( uminus2769705506071317478_vec_a @ A2 ) )
      = ( ~ ( member_vec_a @ C @ A2 ) ) ) ).

% Compl_iff
thf(fact_441_Compl__iff,axiom,
    ! [C: mat_a,A2: set_mat_a] :
      ( ( member_mat_a @ C @ ( uminus1296375033039821146_mat_a @ A2 ) )
      = ( ~ ( member_mat_a @ C @ A2 ) ) ) ).

% Compl_iff
thf(fact_442_ComplI,axiom,
    ! [C: vec_a,A2: set_vec_a] :
      ( ~ ( member_vec_a @ C @ A2 )
     => ( member_vec_a @ C @ ( uminus2769705506071317478_vec_a @ A2 ) ) ) ).

% ComplI
thf(fact_443_ComplI,axiom,
    ! [C: mat_a,A2: set_mat_a] :
      ( ~ ( member_mat_a @ C @ A2 )
     => ( member_mat_a @ C @ ( uminus1296375033039821146_mat_a @ A2 ) ) ) ).

% ComplI
thf(fact_444_uminus__eq__mat,axiom,
    ! [A2: mat_a,B2: mat_a] :
      ( ( ( uminus_uminus_mat_a @ A2 )
        = ( uminus_uminus_mat_a @ B2 ) )
      = ( A2 = B2 ) ) ).

% uminus_eq_mat
thf(fact_445_uminus__uminus__mat,axiom,
    ! [A2: mat_a] :
      ( ( uminus_uminus_mat_a @ ( uminus_uminus_mat_a @ A2 ) )
      = A2 ) ).

% uminus_uminus_mat
thf(fact_446_scalar__prod__uminus__left,axiom,
    ! [V: vec_a,W: vec_a] :
      ( ( ( dim_vec_a @ V )
        = ( dim_vec_a @ W ) )
     => ( ( scalar_prod_a @ ( uminus_uminus_vec_a @ V ) @ W )
        = ( uminus_uminus_a @ ( scalar_prod_a @ V @ W ) ) ) ) ).

% scalar_prod_uminus_left
thf(fact_447_scalar__prod__uminus__right,axiom,
    ! [V: vec_a,W: vec_a] :
      ( ( ( dim_vec_a @ V )
        = ( dim_vec_a @ W ) )
     => ( ( scalar_prod_a @ V @ ( uminus_uminus_vec_a @ W ) )
        = ( uminus_uminus_a @ ( scalar_prod_a @ V @ W ) ) ) ) ).

% scalar_prod_uminus_right
thf(fact_448_vec__inv,axiom,
    ! [V: vec_a,N: nat] :
      ( ( member_vec_a @ V @ ( carrier_vec_a @ N ) )
     => ( ( V
         != ( zero_vec_a @ N ) )
       => ( ( scalar_prod_a @ ( schur_vec_inv_a @ V ) @ V )
          = one_one_a ) ) ) ).

% vec_inv
thf(fact_449_ComplD,axiom,
    ! [C: vec_a,A2: set_vec_a] :
      ( ( member_vec_a @ C @ ( uminus2769705506071317478_vec_a @ A2 ) )
     => ~ ( member_vec_a @ C @ A2 ) ) ).

% ComplD
thf(fact_450_ComplD,axiom,
    ! [C: mat_a,A2: set_mat_a] :
      ( ( member_mat_a @ C @ ( uminus1296375033039821146_mat_a @ A2 ) )
     => ~ ( member_mat_a @ C @ A2 ) ) ).

% ComplD
thf(fact_451_comm__scalar__prod,axiom,
    ! [V_1: vec_a,N: nat,V_2: vec_a] :
      ( ( member_vec_a @ V_1 @ ( carrier_vec_a @ N ) )
     => ( ( member_vec_a @ V_2 @ ( carrier_vec_a @ N ) )
       => ( ( scalar_prod_a @ V_1 @ V_2 )
          = ( scalar_prod_a @ V_2 @ V_1 ) ) ) ) ).

% comm_scalar_prod
thf(fact_452_scalar__prod__add__distrib,axiom,
    ! [V_1: vec_a,N: nat,V_2: vec_a,V_3: vec_a] :
      ( ( member_vec_a @ V_1 @ ( carrier_vec_a @ N ) )
     => ( ( member_vec_a @ V_2 @ ( carrier_vec_a @ N ) )
       => ( ( member_vec_a @ V_3 @ ( carrier_vec_a @ N ) )
         => ( ( scalar_prod_a @ V_1 @ ( plus_plus_vec_a @ V_2 @ V_3 ) )
            = ( plus_plus_a @ ( scalar_prod_a @ V_1 @ V_2 ) @ ( scalar_prod_a @ V_1 @ V_3 ) ) ) ) ) ) ).

% scalar_prod_add_distrib
thf(fact_453_scalar__prod__add__distrib,axiom,
    ! [V_1: vec_nat,N: nat,V_2: vec_nat,V_3: vec_nat] :
      ( ( member_vec_nat @ V_1 @ ( carrier_vec_nat @ N ) )
     => ( ( member_vec_nat @ V_2 @ ( carrier_vec_nat @ N ) )
       => ( ( member_vec_nat @ V_3 @ ( carrier_vec_nat @ N ) )
         => ( ( scalar_prod_nat @ V_1 @ ( plus_plus_vec_nat @ V_2 @ V_3 ) )
            = ( plus_plus_nat @ ( scalar_prod_nat @ V_1 @ V_2 ) @ ( scalar_prod_nat @ V_1 @ V_3 ) ) ) ) ) ) ).

% scalar_prod_add_distrib
thf(fact_454_add__scalar__prod__distrib,axiom,
    ! [V_1: vec_a,N: nat,V_2: vec_a,V_3: vec_a] :
      ( ( member_vec_a @ V_1 @ ( carrier_vec_a @ N ) )
     => ( ( member_vec_a @ V_2 @ ( carrier_vec_a @ N ) )
       => ( ( member_vec_a @ V_3 @ ( carrier_vec_a @ N ) )
         => ( ( scalar_prod_a @ ( plus_plus_vec_a @ V_1 @ V_2 ) @ V_3 )
            = ( plus_plus_a @ ( scalar_prod_a @ V_1 @ V_3 ) @ ( scalar_prod_a @ V_2 @ V_3 ) ) ) ) ) ) ).

% add_scalar_prod_distrib
thf(fact_455_add__scalar__prod__distrib,axiom,
    ! [V_1: vec_nat,N: nat,V_2: vec_nat,V_3: vec_nat] :
      ( ( member_vec_nat @ V_1 @ ( carrier_vec_nat @ N ) )
     => ( ( member_vec_nat @ V_2 @ ( carrier_vec_nat @ N ) )
       => ( ( member_vec_nat @ V_3 @ ( carrier_vec_nat @ N ) )
         => ( ( scalar_prod_nat @ ( plus_plus_vec_nat @ V_1 @ V_2 ) @ V_3 )
            = ( plus_plus_nat @ ( scalar_prod_nat @ V_1 @ V_3 ) @ ( scalar_prod_nat @ V_2 @ V_3 ) ) ) ) ) ) ).

% add_scalar_prod_distrib
thf(fact_456_scalar__prod__append,axiom,
    ! [V1: vec_a,N1: nat,V22: vec_a,N2: nat,W1: vec_a,W22: vec_a] :
      ( ( member_vec_a @ V1 @ ( carrier_vec_a @ N1 ) )
     => ( ( member_vec_a @ V22 @ ( carrier_vec_a @ N2 ) )
       => ( ( member_vec_a @ W1 @ ( carrier_vec_a @ N1 ) )
         => ( ( member_vec_a @ W22 @ ( carrier_vec_a @ N2 ) )
           => ( ( scalar_prod_a @ ( append_vec_a @ V1 @ V22 ) @ ( append_vec_a @ W1 @ W22 ) )
              = ( plus_plus_a @ ( scalar_prod_a @ V1 @ W1 ) @ ( scalar_prod_a @ V22 @ W22 ) ) ) ) ) ) ) ).

% scalar_prod_append
thf(fact_457_scalar__prod__append,axiom,
    ! [V1: vec_nat,N1: nat,V22: vec_nat,N2: nat,W1: vec_nat,W22: vec_nat] :
      ( ( member_vec_nat @ V1 @ ( carrier_vec_nat @ N1 ) )
     => ( ( member_vec_nat @ V22 @ ( carrier_vec_nat @ N2 ) )
       => ( ( member_vec_nat @ W1 @ ( carrier_vec_nat @ N1 ) )
         => ( ( member_vec_nat @ W22 @ ( carrier_vec_nat @ N2 ) )
           => ( ( scalar_prod_nat @ ( append_vec_nat @ V1 @ V22 ) @ ( append_vec_nat @ W1 @ W22 ) )
              = ( plus_plus_nat @ ( scalar_prod_nat @ V1 @ W1 ) @ ( scalar_prod_nat @ V22 @ W22 ) ) ) ) ) ) ) ).

% scalar_prod_append
thf(fact_458_uminus__scalar__prod,axiom,
    ! [V: vec_a,N: nat,W: vec_a] :
      ( ( member_vec_a @ V @ ( carrier_vec_a @ N ) )
     => ( ( member_vec_a @ W @ ( carrier_vec_a @ N ) )
       => ( ( uminus_uminus_a @ ( scalar_prod_a @ V @ W ) )
          = ( scalar_prod_a @ ( uminus_uminus_vec_a @ V ) @ W ) ) ) ) ).

% uminus_scalar_prod
thf(fact_459_verit__la__disequality,axiom,
    ! [A: nat,B: nat] :
      ( ( A = B )
      | ~ ( ord_less_eq_nat @ A @ B )
      | ~ ( ord_less_eq_nat @ B @ A ) ) ).

% verit_la_disequality
thf(fact_460_verit__la__disequality,axiom,
    ! [A: a,B: a] :
      ( ( A = B )
      | ~ ( ord_less_eq_a @ A @ B )
      | ~ ( ord_less_eq_a @ B @ A ) ) ).

% verit_la_disequality
thf(fact_461_verit__comp__simplify1_I2_J,axiom,
    ! [A: vec_a] : ( ord_less_eq_vec_a @ A @ A ) ).

% verit_comp_simplify1(2)
thf(fact_462_verit__comp__simplify1_I2_J,axiom,
    ! [A: nat] : ( ord_less_eq_nat @ A @ A ) ).

% verit_comp_simplify1(2)
thf(fact_463_verit__comp__simplify1_I2_J,axiom,
    ! [A: a] : ( ord_less_eq_a @ A @ A ) ).

% verit_comp_simplify1(2)
thf(fact_464_subset__iff,axiom,
    ( ord_le4791951621262958845_vec_a
    = ( ^ [A5: set_vec_a,B5: set_vec_a] :
        ! [T: vec_a] :
          ( ( member_vec_a @ T @ A5 )
         => ( member_vec_a @ T @ B5 ) ) ) ) ).

% subset_iff
thf(fact_465_subset__iff,axiom,
    ( ord_le3318621148231462513_mat_a
    = ( ^ [A5: set_mat_a,B5: set_mat_a] :
        ! [T: mat_a] :
          ( ( member_mat_a @ T @ A5 )
         => ( member_mat_a @ T @ B5 ) ) ) ) ).

% subset_iff
thf(fact_466_subset__eq,axiom,
    ( ord_le4791951621262958845_vec_a
    = ( ^ [A5: set_vec_a,B5: set_vec_a] :
        ! [X2: vec_a] :
          ( ( member_vec_a @ X2 @ A5 )
         => ( member_vec_a @ X2 @ B5 ) ) ) ) ).

% subset_eq
thf(fact_467_subset__eq,axiom,
    ( ord_le3318621148231462513_mat_a
    = ( ^ [A5: set_mat_a,B5: set_mat_a] :
        ! [X2: mat_a] :
          ( ( member_mat_a @ X2 @ A5 )
         => ( member_mat_a @ X2 @ B5 ) ) ) ) ).

% subset_eq
thf(fact_468_subsetD,axiom,
    ! [A2: set_vec_a,B2: set_vec_a,C: vec_a] :
      ( ( ord_le4791951621262958845_vec_a @ A2 @ B2 )
     => ( ( member_vec_a @ C @ A2 )
       => ( member_vec_a @ C @ B2 ) ) ) ).

% subsetD
thf(fact_469_subsetD,axiom,
    ! [A2: set_mat_a,B2: set_mat_a,C: mat_a] :
      ( ( ord_le3318621148231462513_mat_a @ A2 @ B2 )
     => ( ( member_mat_a @ C @ A2 )
       => ( member_mat_a @ C @ B2 ) ) ) ).

% subsetD
thf(fact_470_in__mono,axiom,
    ! [A2: set_vec_a,B2: set_vec_a,X3: vec_a] :
      ( ( ord_le4791951621262958845_vec_a @ A2 @ B2 )
     => ( ( member_vec_a @ X3 @ A2 )
       => ( member_vec_a @ X3 @ B2 ) ) ) ).

% in_mono
thf(fact_471_in__mono,axiom,
    ! [A2: set_mat_a,B2: set_mat_a,X3: mat_a] :
      ( ( ord_le3318621148231462513_mat_a @ A2 @ B2 )
     => ( ( member_mat_a @ X3 @ A2 )
       => ( member_mat_a @ X3 @ B2 ) ) ) ).

% in_mono
thf(fact_472_transpose__vec__mult__scalar,axiom,
    ! [A2: mat_a,Nr: nat,Nc: nat,X3: vec_a,Y3: vec_a] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( ( member_vec_a @ X3 @ ( carrier_vec_a @ Nc ) )
       => ( ( member_vec_a @ Y3 @ ( carrier_vec_a @ Nr ) )
         => ( ( scalar_prod_a @ ( mult_mat_vec_a @ ( transpose_mat_a @ A2 ) @ Y3 ) @ X3 )
            = ( scalar_prod_a @ Y3 @ ( mult_mat_vec_a @ A2 @ X3 ) ) ) ) ) ) ).

% transpose_vec_mult_scalar
thf(fact_473_vec__of__scal__dim_I2_J,axiom,
    ! [X3: a] : ( member_vec_a @ ( missin5951511974119752530scal_a @ X3 ) @ ( carrier_vec_a @ one_one_nat ) ) ).

% vec_of_scal_dim(2)
thf(fact_474_gram__schmidt_OFarkas__Lemma_H,axiom,
    ! [A2: mat_a,Nr: nat,Nc: nat,B: vec_a] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( ( member_vec_a @ B @ ( carrier_vec_a @ Nr ) )
       => ( ( ? [X2: vec_a] :
                ( ( member_vec_a @ X2 @ ( carrier_vec_a @ Nc ) )
                & ( ord_less_eq_vec_a @ ( mult_mat_vec_a @ A2 @ X2 ) @ B ) ) )
          = ( ! [Y: vec_a] :
                ( ( ( ord_less_eq_vec_a @ ( zero_vec_a @ Nr ) @ Y )
                  & ( ( mult_mat_vec_a @ ( transpose_mat_a @ A2 ) @ Y )
                    = ( zero_vec_a @ Nc ) ) )
               => ( ord_less_eq_a @ zero_zero_a @ ( scalar_prod_a @ Y @ B ) ) ) ) ) ) ) ).

% gram_schmidt.Farkas_Lemma'
thf(fact_475_gram__schmidt_OFarkas__Lemma,axiom,
    ! [A2: mat_a,N: nat,Nr: nat,B: vec_a] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ N @ Nr ) )
     => ( ( member_vec_a @ B @ ( carrier_vec_a @ N ) )
       => ( ( ? [X2: vec_a] :
                ( ( ord_less_eq_vec_a @ ( zero_vec_a @ Nr ) @ X2 )
                & ( ( mult_mat_vec_a @ A2 @ X2 )
                  = B ) ) )
          = ( ! [Y: vec_a] :
                ( ( member_vec_a @ Y @ ( carrier_vec_a @ N ) )
               => ( ( ord_less_eq_vec_a @ ( zero_vec_a @ Nr ) @ ( mult_mat_vec_a @ ( transpose_mat_a @ A2 ) @ Y ) )
                 => ( ord_less_eq_a @ zero_zero_a @ ( scalar_prod_a @ Y @ B ) ) ) ) ) ) ) ) ).

% gram_schmidt.Farkas_Lemma
thf(fact_476__092_060open_062dim__vec_A_I0_092_060_094sub_062v_A_Inr_A_L_A1_A_L_A_Inc_A_L_Anc_J_A_L_Anr_J_J_A_061_Adim__vec_Aulv_A_092_060and_062_A_I_092_060forall_062i_060dim__vec_Aulv_O_A0_092_060_094sub_062v_A_Inr_A_L_A1_A_L_A_Inc_A_L_Anc_J_A_L_Anr_J_A_E_Ai_A_092_060le_062_Aulv_A_E_Ai_J_092_060close_062,axiom,
    ( ( ( dim_vec_a @ ( zero_vec_a @ ( plus_plus_nat @ ( plus_plus_nat @ ( plus_plus_nat @ nr @ one_one_nat ) @ ( plus_plus_nat @ nc @ nc ) ) @ nr ) ) )
      = ( dim_vec_a @ ulv ) )
    & ! [I2: nat] :
        ( ( ord_less_nat @ I2 @ ( dim_vec_a @ ulv ) )
       => ( ord_less_eq_a @ ( vec_index_a @ ( zero_vec_a @ ( plus_plus_nat @ ( plus_plus_nat @ ( plus_plus_nat @ nr @ one_one_nat ) @ ( plus_plus_nat @ nc @ nc ) ) @ nr ) ) @ I2 ) @ ( vec_index_a @ ulv @ I2 ) ) ) ) ).

% \<open>dim_vec (0\<^sub>v (nr + 1 + (nc + nc) + nr)) = dim_vec ulv \<and> (\<forall>i<dim_vec ulv. 0\<^sub>v (nr + 1 + (nc + nc) + nr) $ i \<le> ulv $ i)\<close>
thf(fact_477_mat__of__row__carrier_I1_J,axiom,
    ! [Y3: vec_a,N: nat] :
      ( ( member_vec_a @ Y3 @ ( carrier_vec_a @ N ) )
     => ( member_mat_a @ ( mat_of_row_a @ Y3 ) @ ( carrier_mat_a @ one_one_nat @ N ) ) ) ).

% mat_of_row_carrier(1)
thf(fact_478_vardim_Ounpadr__padr,axiom,
    ! [M: nat,V: vec_a] :
      ( ( matrix_unpadr_a @ M @ ( append_vec_a @ V @ ( zero_vec_a @ M ) ) )
      = V ) ).

% vardim.unpadr_padr
thf(fact_479_vardim_Ounpadl__padl,axiom,
    ! [M: nat,V: vec_a] :
      ( ( matrix_unpadl_a @ M @ ( append_vec_a @ ( zero_vec_a @ M ) @ V ) )
      = V ) ).

% vardim.unpadl_padl
thf(fact_480_dim__update__vec,axiom,
    ! [V: vec_a,I: nat,A: a] :
      ( ( dim_vec_a @ ( update_vec_a @ V @ I @ A ) )
      = ( dim_vec_a @ V ) ) ).

% dim_update_vec
thf(fact_481_M__up__def,axiom,
    ( m_up
    = ( four_block_mat_a @ a2 @ ( zero_mat_a @ nr @ nr ) @ ( mat_of_row_a @ ( uminus_uminus_vec_a @ c ) ) @ ( mat_of_row_a @ b ) ) ) ).

% M_up_def
thf(fact_482_less__nat__zero__code,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ zero_zero_nat ) ).

% less_nat_zero_code
thf(fact_483_neq0__conv,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
      = ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% neq0_conv
thf(fact_484_bot__nat__0_Onot__eq__extremum,axiom,
    ! [A: nat] :
      ( ( A != zero_zero_nat )
      = ( ord_less_nat @ zero_zero_nat @ A ) ) ).

% bot_nat_0.not_eq_extremum
thf(fact_485_bot__nat__0_Oextremum,axiom,
    ! [A: nat] : ( ord_less_eq_nat @ zero_zero_nat @ A ) ).

% bot_nat_0.extremum
thf(fact_486_le0,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ zero_zero_nat @ N ) ).

% le0
thf(fact_487_add__is__0,axiom,
    ! [M: nat,N: nat] :
      ( ( ( plus_plus_nat @ M @ N )
        = zero_zero_nat )
      = ( ( M = zero_zero_nat )
        & ( N = zero_zero_nat ) ) ) ).

% add_is_0
thf(fact_488_Nat_Oadd__0__right,axiom,
    ! [M: nat] :
      ( ( plus_plus_nat @ M @ zero_zero_nat )
      = M ) ).

% Nat.add_0_right
thf(fact_489_le__zero__eq,axiom,
    ! [N: nat] :
      ( ( ord_less_eq_nat @ N @ zero_zero_nat )
      = ( N = zero_zero_nat ) ) ).

% le_zero_eq
thf(fact_490_not__gr__zero,axiom,
    ! [N: nat] :
      ( ( ~ ( ord_less_nat @ zero_zero_nat @ N ) )
      = ( N = zero_zero_nat ) ) ).

% not_gr_zero
thf(fact_491_add_Oright__neutral,axiom,
    ! [A: nat] :
      ( ( plus_plus_nat @ A @ zero_zero_nat )
      = A ) ).

% add.right_neutral
thf(fact_492_add__cancel__left__left,axiom,
    ! [B: nat,A: nat] :
      ( ( ( plus_plus_nat @ B @ A )
        = A )
      = ( B = zero_zero_nat ) ) ).

% add_cancel_left_left
thf(fact_493_add__cancel__left__right,axiom,
    ! [A: nat,B: nat] :
      ( ( ( plus_plus_nat @ A @ B )
        = A )
      = ( B = zero_zero_nat ) ) ).

% add_cancel_left_right
thf(fact_494_add__cancel__right__left,axiom,
    ! [A: nat,B: nat] :
      ( ( A
        = ( plus_plus_nat @ B @ A ) )
      = ( B = zero_zero_nat ) ) ).

% add_cancel_right_left
thf(fact_495_add__cancel__right__right,axiom,
    ! [A: nat,B: nat] :
      ( ( A
        = ( plus_plus_nat @ A @ B ) )
      = ( B = zero_zero_nat ) ) ).

% add_cancel_right_right
thf(fact_496_add__eq__0__iff__both__eq__0,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( ( plus_plus_nat @ X3 @ Y3 )
        = zero_zero_nat )
      = ( ( X3 = zero_zero_nat )
        & ( Y3 = zero_zero_nat ) ) ) ).

% add_eq_0_iff_both_eq_0
thf(fact_497_zero__eq__add__iff__both__eq__0,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( zero_zero_nat
        = ( plus_plus_nat @ X3 @ Y3 ) )
      = ( ( X3 = zero_zero_nat )
        & ( Y3 = zero_zero_nat ) ) ) ).

% zero_eq_add_iff_both_eq_0
thf(fact_498_add__0,axiom,
    ! [A: nat] :
      ( ( plus_plus_nat @ zero_zero_nat @ A )
      = A ) ).

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

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

% add_less_cancel_right
thf(fact_501_less__one,axiom,
    ! [N: nat] :
      ( ( ord_less_nat @ N @ one_one_nat )
      = ( N = zero_zero_nat ) ) ).

% less_one
thf(fact_502_add__gr__0,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ M @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ M )
        | ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

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

% nat_add_left_cancel_less
thf(fact_504_vec__of__dim__0,axiom,
    ! [V: vec_a] :
      ( ( ( dim_vec_a @ V )
        = zero_zero_nat )
      = ( V
        = ( zero_vec_a @ zero_zero_nat ) ) ) ).

% vec_of_dim_0
thf(fact_505_zero__transpose__mat,axiom,
    ! [N: nat,M: nat] :
      ( ( transpose_mat_a @ ( zero_mat_a @ N @ M ) )
      = ( zero_mat_a @ M @ N ) ) ).

% zero_transpose_mat
thf(fact_506_index__vec__of__scal,axiom,
    ! [X3: a] :
      ( ( vec_index_a @ ( missin5951511974119752530scal_a @ X3 ) @ zero_zero_nat )
      = X3 ) ).

% index_vec_of_scal
thf(fact_507_index__update__vec2,axiom,
    ! [I3: nat,I: nat,V: vec_a,A: a] :
      ( ( I3 != I )
     => ( ( vec_index_a @ ( update_vec_a @ V @ I @ A ) @ I3 )
        = ( vec_index_a @ V @ I3 ) ) ) ).

% index_update_vec2
thf(fact_508_add__le__same__cancel1,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ B @ A ) @ B )
      = ( ord_less_eq_nat @ A @ zero_zero_nat ) ) ).

% add_le_same_cancel1
thf(fact_509_add__le__same__cancel1,axiom,
    ! [B: a,A: a] :
      ( ( ord_less_eq_a @ ( plus_plus_a @ B @ A ) @ B )
      = ( ord_less_eq_a @ A @ zero_zero_a ) ) ).

% add_le_same_cancel1
thf(fact_510_add__le__same__cancel2,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ A @ B ) @ B )
      = ( ord_less_eq_nat @ A @ zero_zero_nat ) ) ).

% add_le_same_cancel2
thf(fact_511_add__le__same__cancel2,axiom,
    ! [A: a,B: a] :
      ( ( ord_less_eq_a @ ( plus_plus_a @ A @ B ) @ B )
      = ( ord_less_eq_a @ A @ zero_zero_a ) ) ).

% add_le_same_cancel2
thf(fact_512_le__add__same__cancel1,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ ( plus_plus_nat @ A @ B ) )
      = ( ord_less_eq_nat @ zero_zero_nat @ B ) ) ).

% le_add_same_cancel1
thf(fact_513_le__add__same__cancel1,axiom,
    ! [A: a,B: a] :
      ( ( ord_less_eq_a @ A @ ( plus_plus_a @ A @ B ) )
      = ( ord_less_eq_a @ zero_zero_a @ B ) ) ).

% le_add_same_cancel1
thf(fact_514_le__add__same__cancel2,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ ( plus_plus_nat @ B @ A ) )
      = ( ord_less_eq_nat @ zero_zero_nat @ B ) ) ).

% le_add_same_cancel2
thf(fact_515_le__add__same__cancel2,axiom,
    ! [A: a,B: a] :
      ( ( ord_less_eq_a @ A @ ( plus_plus_a @ B @ A ) )
      = ( ord_less_eq_a @ zero_zero_a @ B ) ) ).

% le_add_same_cancel2
thf(fact_516_double__add__le__zero__iff__single__add__le__zero,axiom,
    ! [A: a] :
      ( ( ord_less_eq_a @ ( plus_plus_a @ A @ A ) @ zero_zero_a )
      = ( ord_less_eq_a @ A @ zero_zero_a ) ) ).

% double_add_le_zero_iff_single_add_le_zero
thf(fact_517_zero__le__double__add__iff__zero__le__single__add,axiom,
    ! [A: a] :
      ( ( ord_less_eq_a @ zero_zero_a @ ( plus_plus_a @ A @ A ) )
      = ( ord_less_eq_a @ zero_zero_a @ A ) ) ).

% zero_le_double_add_iff_zero_le_single_add
thf(fact_518_add__less__same__cancel1,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ B @ A ) @ B )
      = ( ord_less_nat @ A @ zero_zero_nat ) ) ).

% add_less_same_cancel1
thf(fact_519_add__less__same__cancel2,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ A @ B ) @ B )
      = ( ord_less_nat @ A @ zero_zero_nat ) ) ).

% add_less_same_cancel2
thf(fact_520_less__add__same__cancel1,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ ( plus_plus_nat @ A @ B ) )
      = ( ord_less_nat @ zero_zero_nat @ B ) ) ).

% less_add_same_cancel1
thf(fact_521_less__add__same__cancel2,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ ( plus_plus_nat @ B @ A ) )
      = ( ord_less_nat @ zero_zero_nat @ B ) ) ).

% less_add_same_cancel2
thf(fact_522_neg__less__eq__nonneg,axiom,
    ! [A: a] :
      ( ( ord_less_eq_a @ ( uminus_uminus_a @ A ) @ A )
      = ( ord_less_eq_a @ zero_zero_a @ A ) ) ).

% neg_less_eq_nonneg
thf(fact_523_less__eq__neg__nonpos,axiom,
    ! [A: a] :
      ( ( ord_less_eq_a @ A @ ( uminus_uminus_a @ A ) )
      = ( ord_less_eq_a @ A @ zero_zero_a ) ) ).

% less_eq_neg_nonpos
thf(fact_524_neg__le__0__iff__le,axiom,
    ! [A: a] :
      ( ( ord_less_eq_a @ ( uminus_uminus_a @ A ) @ zero_zero_a )
      = ( ord_less_eq_a @ zero_zero_a @ A ) ) ).

% neg_le_0_iff_le
thf(fact_525_neg__0__le__iff__le,axiom,
    ! [A: a] :
      ( ( ord_less_eq_a @ zero_zero_a @ ( uminus_uminus_a @ A ) )
      = ( ord_less_eq_a @ A @ zero_zero_a ) ) ).

% neg_0_le_iff_le
thf(fact_526_eq__vecI,axiom,
    ! [W: vec_a,V: vec_a] :
      ( ! [I4: nat] :
          ( ( ord_less_nat @ I4 @ ( dim_vec_a @ W ) )
         => ( ( vec_index_a @ V @ I4 )
            = ( vec_index_a @ W @ I4 ) ) )
     => ( ( ( dim_vec_a @ V )
          = ( dim_vec_a @ W ) )
       => ( V = W ) ) ) ).

% eq_vecI
thf(fact_527_M__low__def,axiom,
    ( m_low
    = ( four_block_mat_a @ ( zero_mat_a @ nc @ nc ) @ ( transpose_mat_a @ a2 ) @ ( zero_mat_a @ nc @ nc ) @ ( uminus_uminus_mat_a @ ( transpose_mat_a @ a2 ) ) ) ) ).

% M_low_def
thf(fact_528_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_529_left__add__zero__mat,axiom,
    ! [A2: mat_a,Nr: nat,Nc: nat] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( ( plus_plus_mat_a @ ( zero_mat_a @ Nr @ Nc ) @ A2 )
        = A2 ) ) ).

% left_add_zero_mat
thf(fact_530_right__add__zero__mat,axiom,
    ! [A2: mat_a,Nr: nat,Nc: nat] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( ( plus_plus_mat_a @ A2 @ ( zero_mat_a @ Nr @ Nc ) )
        = A2 ) ) ).

% right_add_zero_mat
thf(fact_531_index__zero__vec_I1_J,axiom,
    ! [I: nat,N: nat] :
      ( ( ord_less_nat @ I @ N )
     => ( ( vec_index_a @ ( zero_vec_a @ N ) @ I )
        = zero_zero_a ) ) ).

% index_zero_vec(1)
thf(fact_532_index__zero__vec_I1_J,axiom,
    ! [I: nat,N: nat] :
      ( ( ord_less_nat @ I @ N )
     => ( ( vec_index_nat @ ( zero_vec_nat @ N ) @ I )
        = zero_zero_nat ) ) ).

% index_zero_vec(1)
thf(fact_533_scalar__prod__left__zero,axiom,
    ! [V: vec_a,N: nat] :
      ( ( member_vec_a @ V @ ( carrier_vec_a @ N ) )
     => ( ( scalar_prod_a @ ( zero_vec_a @ N ) @ V )
        = zero_zero_a ) ) ).

% scalar_prod_left_zero
thf(fact_534_scalar__prod__left__zero,axiom,
    ! [V: vec_nat,N: nat] :
      ( ( member_vec_nat @ V @ ( carrier_vec_nat @ N ) )
     => ( ( scalar_prod_nat @ ( zero_vec_nat @ N ) @ V )
        = zero_zero_nat ) ) ).

% scalar_prod_left_zero
thf(fact_535_scalar__prod__right__zero,axiom,
    ! [V: vec_a,N: nat] :
      ( ( member_vec_a @ V @ ( carrier_vec_a @ N ) )
     => ( ( scalar_prod_a @ V @ ( zero_vec_a @ N ) )
        = zero_zero_a ) ) ).

% scalar_prod_right_zero
thf(fact_536_scalar__prod__right__zero,axiom,
    ! [V: vec_nat,N: nat] :
      ( ( member_vec_nat @ V @ ( carrier_vec_nat @ N ) )
     => ( ( scalar_prod_nat @ V @ ( zero_vec_nat @ N ) )
        = zero_zero_nat ) ) ).

% scalar_prod_right_zero
thf(fact_537_index__map__vec_I1_J,axiom,
    ! [I: nat,V: vec_a,F: a > a] :
      ( ( ord_less_nat @ I @ ( dim_vec_a @ V ) )
     => ( ( vec_index_a @ ( map_vec_a_a @ F @ V ) @ I )
        = ( F @ ( vec_index_a @ V @ I ) ) ) ) ).

% index_map_vec(1)
thf(fact_538_zero__mat__mult__vector,axiom,
    ! [X3: vec_a,Nc: nat,Nr: nat] :
      ( ( member_vec_a @ X3 @ ( carrier_vec_a @ Nc ) )
     => ( ( mult_mat_vec_a @ ( zero_mat_a @ Nr @ Nc ) @ X3 )
        = ( zero_vec_a @ Nr ) ) ) ).

% zero_mat_mult_vector
thf(fact_539_uminus__l__inv__mat,axiom,
    ! [A2: mat_a,Nr: nat,Nc: nat] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( ( plus_plus_mat_a @ ( uminus_uminus_mat_a @ A2 ) @ A2 )
        = ( zero_mat_a @ Nr @ Nc ) ) ) ).

% uminus_l_inv_mat
thf(fact_540_index__update__vec1,axiom,
    ! [I: nat,V: vec_a,A: a] :
      ( ( ord_less_nat @ I @ ( dim_vec_a @ V ) )
     => ( ( vec_index_a @ ( update_vec_a @ V @ I @ A ) @ I )
        = A ) ) ).

% index_update_vec1
thf(fact_541_index__add__vec_I1_J,axiom,
    ! [I: nat,V_2: vec_a,V_1: vec_a] :
      ( ( ord_less_nat @ I @ ( dim_vec_a @ V_2 ) )
     => ( ( vec_index_a @ ( plus_plus_vec_a @ V_1 @ V_2 ) @ I )
        = ( plus_plus_a @ ( vec_index_a @ V_1 @ I ) @ ( vec_index_a @ V_2 @ I ) ) ) ) ).

% index_add_vec(1)
thf(fact_542_index__add__vec_I1_J,axiom,
    ! [I: nat,V_2: vec_nat,V_1: vec_nat] :
      ( ( ord_less_nat @ I @ ( dim_vec_nat @ V_2 ) )
     => ( ( vec_index_nat @ ( plus_plus_vec_nat @ V_1 @ V_2 ) @ I )
        = ( plus_plus_nat @ ( vec_index_nat @ V_1 @ I ) @ ( vec_index_nat @ V_2 @ I ) ) ) ) ).

% index_add_vec(1)
thf(fact_543_index__uminus__vec_I1_J,axiom,
    ! [I: nat,V: vec_vec_a] :
      ( ( ord_less_nat @ I @ ( dim_vec_vec_a @ V ) )
     => ( ( vec_index_vec_a @ ( uminus8262787361227035083_vec_a @ V ) @ I )
        = ( uminus_uminus_vec_a @ ( vec_index_vec_a @ V @ I ) ) ) ) ).

% index_uminus_vec(1)
thf(fact_544_index__uminus__vec_I1_J,axiom,
    ! [I: nat,V: vec_mat_a] :
      ( ( ord_less_nat @ I @ ( dim_vec_mat_a @ V ) )
     => ( ( vec_index_mat_a @ ( uminus6789456888195538751_mat_a @ V ) @ I )
        = ( uminus_uminus_mat_a @ ( vec_index_mat_a @ V @ I ) ) ) ) ).

% index_uminus_vec(1)
thf(fact_545_index__uminus__vec_I1_J,axiom,
    ! [I: nat,V: vec_a] :
      ( ( ord_less_nat @ I @ ( dim_vec_a @ V ) )
     => ( ( vec_index_a @ ( uminus_uminus_vec_a @ V ) @ I )
        = ( uminus_uminus_a @ ( vec_index_a @ V @ I ) ) ) ) ).

% index_uminus_vec(1)
thf(fact_546_verit__comp__simplify1_I1_J,axiom,
    ! [A: nat] :
      ~ ( ord_less_nat @ A @ A ) ).

% verit_comp_simplify1(1)
thf(fact_547_order__less__imp__not__less,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( ord_less_nat @ X3 @ Y3 )
     => ~ ( ord_less_nat @ Y3 @ X3 ) ) ).

% order_less_imp_not_less
thf(fact_548_order__less__imp__not__eq2,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( ord_less_nat @ X3 @ Y3 )
     => ( Y3 != X3 ) ) ).

% order_less_imp_not_eq2
thf(fact_549_order__less__imp__not__eq,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( ord_less_nat @ X3 @ Y3 )
     => ( X3 != Y3 ) ) ).

% order_less_imp_not_eq
thf(fact_550_linorder__less__linear,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( ord_less_nat @ X3 @ Y3 )
      | ( X3 = Y3 )
      | ( ord_less_nat @ Y3 @ X3 ) ) ).

% linorder_less_linear
thf(fact_551_order__less__imp__triv,axiom,
    ! [X3: nat,Y3: nat,P: $o] :
      ( ( ord_less_nat @ X3 @ Y3 )
     => ( ( ord_less_nat @ Y3 @ X3 )
       => P ) ) ).

% order_less_imp_triv
thf(fact_552_order__less__not__sym,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( ord_less_nat @ X3 @ Y3 )
     => ~ ( ord_less_nat @ Y3 @ X3 ) ) ).

% order_less_not_sym
thf(fact_553_order__less__subst2,axiom,
    ! [A: nat,B: nat,F: nat > nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_nat @ ( F @ B ) @ C )
       => ( ! [X: nat,Y2: nat] :
              ( ( ord_less_nat @ X @ Y2 )
             => ( ord_less_nat @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_less_subst2
thf(fact_554_order__less__subst1,axiom,
    ! [A: nat,F: nat > nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ ( F @ B ) )
     => ( ( ord_less_nat @ B @ C )
       => ( ! [X: nat,Y2: nat] :
              ( ( ord_less_nat @ X @ Y2 )
             => ( ord_less_nat @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_subst1
thf(fact_555_order__less__irrefl,axiom,
    ! [X3: nat] :
      ~ ( ord_less_nat @ X3 @ X3 ) ).

% order_less_irrefl
thf(fact_556_ord__less__eq__subst,axiom,
    ! [A: nat,B: nat,F: nat > nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ( F @ B )
          = C )
       => ( ! [X: nat,Y2: nat] :
              ( ( ord_less_nat @ X @ Y2 )
             => ( ord_less_nat @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C ) ) ) ) ).

% ord_less_eq_subst
thf(fact_557_ord__eq__less__subst,axiom,
    ! [A: nat,F: nat > nat,B: nat,C: nat] :
      ( ( A
        = ( F @ B ) )
     => ( ( ord_less_nat @ B @ C )
       => ( ! [X: nat,Y2: nat] :
              ( ( ord_less_nat @ X @ Y2 )
             => ( ord_less_nat @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ A @ ( F @ C ) ) ) ) ) ).

% ord_eq_less_subst
thf(fact_558_order__less__trans,axiom,
    ! [X3: nat,Y3: nat,Z2: nat] :
      ( ( ord_less_nat @ X3 @ Y3 )
     => ( ( ord_less_nat @ Y3 @ Z2 )
       => ( ord_less_nat @ X3 @ Z2 ) ) ) ).

% order_less_trans
thf(fact_559_order__less__asym_H,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ B )
     => ~ ( ord_less_nat @ B @ A ) ) ).

% order_less_asym'
thf(fact_560_linorder__neq__iff,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( X3 != Y3 )
      = ( ( ord_less_nat @ X3 @ Y3 )
        | ( ord_less_nat @ Y3 @ X3 ) ) ) ).

% linorder_neq_iff
thf(fact_561_order__less__asym,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( ord_less_nat @ X3 @ Y3 )
     => ~ ( ord_less_nat @ Y3 @ X3 ) ) ).

% order_less_asym
thf(fact_562_linorder__neqE,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( X3 != Y3 )
     => ( ~ ( ord_less_nat @ X3 @ Y3 )
       => ( ord_less_nat @ Y3 @ X3 ) ) ) ).

% linorder_neqE
thf(fact_563_zero__reorient,axiom,
    ! [X3: nat] :
      ( ( zero_zero_nat = X3 )
      = ( X3 = zero_zero_nat ) ) ).

% zero_reorient
thf(fact_564_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_565_gr__implies__not__zero,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( N != zero_zero_nat ) ) ).

% gr_implies_not_zero
thf(fact_566_not__less__zero,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ zero_zero_nat ) ).

% not_less_zero
thf(fact_567_dual__order_Ostrict__implies__not__eq,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_nat @ B @ A )
     => ( A != B ) ) ).

% dual_order.strict_implies_not_eq
thf(fact_568_gr__zeroI,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
     => ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% gr_zeroI
thf(fact_569_order_Ostrict__implies__not__eq,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( A != B ) ) ).

% order.strict_implies_not_eq
thf(fact_570_dual__order_Ostrict__trans,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( ord_less_nat @ B @ A )
     => ( ( ord_less_nat @ C @ B )
       => ( ord_less_nat @ C @ A ) ) ) ).

% dual_order.strict_trans
thf(fact_571_not__less__iff__gr__or__eq,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( ~ ( ord_less_nat @ X3 @ Y3 ) )
      = ( ( ord_less_nat @ Y3 @ X3 )
        | ( X3 = Y3 ) ) ) ).

% not_less_iff_gr_or_eq
thf(fact_572_order_Ostrict__trans,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_nat @ B @ C )
       => ( ord_less_nat @ A @ C ) ) ) ).

% order.strict_trans
thf(fact_573_linorder__less__wlog,axiom,
    ! [P: nat > nat > $o,A: nat,B: nat] :
      ( ! [A4: nat,B4: nat] :
          ( ( ord_less_nat @ A4 @ B4 )
         => ( P @ A4 @ B4 ) )
     => ( ! [A4: nat] : ( P @ A4 @ A4 )
       => ( ! [A4: nat,B4: nat] :
              ( ( P @ B4 @ A4 )
             => ( P @ A4 @ B4 ) )
         => ( P @ A @ B ) ) ) ) ).

% linorder_less_wlog
thf(fact_574_exists__least__iff,axiom,
    ( ( ^ [P2: nat > $o] :
        ? [X5: nat] : ( P2 @ X5 ) )
    = ( ^ [P3: nat > $o] :
        ? [N4: nat] :
          ( ( P3 @ N4 )
          & ! [M2: nat] :
              ( ( ord_less_nat @ M2 @ N4 )
             => ~ ( P3 @ M2 ) ) ) ) ) ).

% exists_least_iff
thf(fact_575_dual__order_Oirrefl,axiom,
    ! [A: nat] :
      ~ ( ord_less_nat @ A @ A ) ).

% dual_order.irrefl
thf(fact_576_dual__order_Oasym,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_nat @ B @ A )
     => ~ ( ord_less_nat @ A @ B ) ) ).

% dual_order.asym
thf(fact_577_linorder__cases,axiom,
    ! [X3: nat,Y3: nat] :
      ( ~ ( ord_less_nat @ X3 @ Y3 )
     => ( ( X3 != Y3 )
       => ( ord_less_nat @ Y3 @ X3 ) ) ) ).

% linorder_cases
thf(fact_578_antisym__conv3,axiom,
    ! [Y3: nat,X3: nat] :
      ( ~ ( ord_less_nat @ Y3 @ X3 )
     => ( ( ~ ( ord_less_nat @ X3 @ Y3 ) )
        = ( X3 = Y3 ) ) ) ).

% antisym_conv3
thf(fact_579_less__induct,axiom,
    ! [P: nat > $o,A: nat] :
      ( ! [X: nat] :
          ( ! [Y5: nat] :
              ( ( ord_less_nat @ Y5 @ X )
             => ( P @ Y5 ) )
         => ( P @ X ) )
     => ( P @ A ) ) ).

% less_induct
thf(fact_580_ord__less__eq__trans,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( B = C )
       => ( ord_less_nat @ A @ C ) ) ) ).

% ord_less_eq_trans
thf(fact_581_ord__eq__less__trans,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( A = B )
     => ( ( ord_less_nat @ B @ C )
       => ( ord_less_nat @ A @ C ) ) ) ).

% ord_eq_less_trans
thf(fact_582_order_Oasym,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ B )
     => ~ ( ord_less_nat @ B @ A ) ) ).

% order.asym
thf(fact_583_less__imp__neq,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( ord_less_nat @ X3 @ Y3 )
     => ( X3 != Y3 ) ) ).

% less_imp_neq
thf(fact_584_gt__ex,axiom,
    ! [X3: nat] :
    ? [X_1: nat] : ( ord_less_nat @ X3 @ X_1 ) ).

% gt_ex
thf(fact_585_cong__four__block__mat,axiom,
    ! [A1: mat_a,B1: mat_a,A22: mat_a,B22: mat_a,A32: mat_a,B32: mat_a,A42: mat_a,B42: mat_a] :
      ( ( A1 = B1 )
     => ( ( A22 = B22 )
       => ( ( A32 = B32 )
         => ( ( A42 = B42 )
           => ( ( four_block_mat_a @ A1 @ A22 @ A32 @ A42 )
              = ( four_block_mat_a @ B1 @ B22 @ B32 @ B42 ) ) ) ) ) ) ).

% cong_four_block_mat
thf(fact_586_vec__eq__iff,axiom,
    ( ( ^ [Y4: vec_a,Z: vec_a] : ( Y4 = Z ) )
    = ( ^ [X2: vec_a,Y: vec_a] :
          ( ( ( dim_vec_a @ X2 )
            = ( dim_vec_a @ Y ) )
          & ! [I5: nat] :
              ( ( ord_less_nat @ I5 @ ( dim_vec_a @ Y ) )
             => ( ( vec_index_a @ X2 @ I5 )
                = ( vec_index_a @ Y @ I5 ) ) ) ) ) ) ).

% vec_eq_iff
thf(fact_587_add__neg__neg,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ zero_zero_nat )
     => ( ( ord_less_nat @ B @ zero_zero_nat )
       => ( ord_less_nat @ ( plus_plus_nat @ A @ B ) @ zero_zero_nat ) ) ) ).

% add_neg_neg
thf(fact_588_add__pos__pos,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ B )
       => ( ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ A @ B ) ) ) ) ).

% add_pos_pos
thf(fact_589_canonically__ordered__monoid__add__class_OlessE,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ B )
     => ~ ! [C4: nat] :
            ( ( B
              = ( plus_plus_nat @ A @ C4 ) )
           => ( C4 = zero_zero_nat ) ) ) ).

% canonically_ordered_monoid_add_class.lessE
thf(fact_590_pos__add__strict,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ B @ C )
       => ( ord_less_nat @ B @ ( plus_plus_nat @ A @ C ) ) ) ) ).

% pos_add_strict
thf(fact_591_linorder__neqE__nat,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( X3 != Y3 )
     => ( ~ ( ord_less_nat @ X3 @ Y3 )
       => ( ord_less_nat @ Y3 @ X3 ) ) ) ).

% linorder_neqE_nat
thf(fact_592_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_593_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_594_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_595_less__irrefl__nat,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ N ) ).

% less_irrefl_nat
thf(fact_596_gr__implies__not0,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( N != zero_zero_nat ) ) ).

% gr_implies_not0
thf(fact_597_less__not__refl3,axiom,
    ! [S: nat,T2: nat] :
      ( ( ord_less_nat @ S @ T2 )
     => ( S != T2 ) ) ).

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

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

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

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

% less_zeroE
thf(fact_602_not__less0,axiom,
    ! [N: nat] :
      ~ ( ord_less_nat @ N @ zero_zero_nat ) ).

% not_less0
thf(fact_603_not__gr0,axiom,
    ! [N: nat] :
      ( ( ~ ( ord_less_nat @ zero_zero_nat @ N ) )
      = ( N = zero_zero_nat ) ) ).

% not_gr0
thf(fact_604_gr0I,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
     => ( ord_less_nat @ zero_zero_nat @ N ) ) ).

% gr0I
thf(fact_605_bot__nat__0_Oextremum__strict,axiom,
    ! [A: nat] :
      ~ ( ord_less_nat @ A @ zero_zero_nat ) ).

% bot_nat_0.extremum_strict
thf(fact_606_less__numeral__extra_I3_J,axiom,
    ~ ( ord_less_nat @ zero_zero_nat @ zero_zero_nat ) ).

% less_numeral_extra(3)
thf(fact_607_less__imp__add__positive,axiom,
    ! [I: nat,J: nat] :
      ( ( ord_less_nat @ I @ J )
     => ? [K3: nat] :
          ( ( ord_less_nat @ zero_zero_nat @ K3 )
          & ( ( plus_plus_nat @ I @ K3 )
            = J ) ) ) ).

% less_imp_add_positive
thf(fact_608_ex__least__nat__le,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ N )
     => ( ~ ( P @ zero_zero_nat )
       => ? [K3: nat] :
            ( ( ord_less_eq_nat @ K3 @ N )
            & ! [I2: nat] :
                ( ( ord_less_nat @ I2 @ K3 )
               => ~ ( P @ I2 ) )
            & ( P @ K3 ) ) ) ) ).

% ex_least_nat_le
thf(fact_609_less__numeral__extra_I1_J,axiom,
    ord_less_nat @ zero_zero_nat @ one_one_nat ).

% less_numeral_extra(1)
thf(fact_610_add__neg__nonpos,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ B @ zero_zero_nat )
       => ( ord_less_nat @ ( plus_plus_nat @ A @ B ) @ zero_zero_nat ) ) ) ).

% add_neg_nonpos
thf(fact_611_add__neg__nonpos,axiom,
    ! [A: a,B: a] :
      ( ( ord_less_a @ A @ zero_zero_a )
     => ( ( ord_less_eq_a @ B @ zero_zero_a )
       => ( ord_less_a @ ( plus_plus_a @ A @ B ) @ zero_zero_a ) ) ) ).

% add_neg_nonpos
thf(fact_612_add__nonneg__pos,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ B )
       => ( ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ A @ B ) ) ) ) ).

% add_nonneg_pos
thf(fact_613_add__nonneg__pos,axiom,
    ! [A: a,B: a] :
      ( ( ord_less_eq_a @ zero_zero_a @ A )
     => ( ( ord_less_a @ zero_zero_a @ B )
       => ( ord_less_a @ zero_zero_a @ ( plus_plus_a @ A @ B ) ) ) ) ).

% add_nonneg_pos
thf(fact_614_add__nonpos__neg,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ zero_zero_nat )
     => ( ( ord_less_nat @ B @ zero_zero_nat )
       => ( ord_less_nat @ ( plus_plus_nat @ A @ B ) @ zero_zero_nat ) ) ) ).

% add_nonpos_neg
thf(fact_615_add__nonpos__neg,axiom,
    ! [A: a,B: a] :
      ( ( ord_less_eq_a @ A @ zero_zero_a )
     => ( ( ord_less_a @ B @ zero_zero_a )
       => ( ord_less_a @ ( plus_plus_a @ A @ B ) @ zero_zero_a ) ) ) ).

% add_nonpos_neg
thf(fact_616_add__pos__nonneg,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
       => ( ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ A @ B ) ) ) ) ).

% add_pos_nonneg
thf(fact_617_add__pos__nonneg,axiom,
    ! [A: a,B: a] :
      ( ( ord_less_a @ zero_zero_a @ A )
     => ( ( ord_less_eq_a @ zero_zero_a @ B )
       => ( ord_less_a @ zero_zero_a @ ( plus_plus_a @ A @ B ) ) ) ) ).

% add_pos_nonneg
thf(fact_618_add__strict__increasing,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ord_less_nat @ B @ ( plus_plus_nat @ A @ C ) ) ) ) ).

% add_strict_increasing
thf(fact_619_add__strict__increasing,axiom,
    ! [A: a,B: a,C: a] :
      ( ( ord_less_a @ zero_zero_a @ A )
     => ( ( ord_less_eq_a @ B @ C )
       => ( ord_less_a @ B @ ( plus_plus_a @ A @ C ) ) ) ) ).

% add_strict_increasing
thf(fact_620_add__strict__increasing2,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ B @ C )
       => ( ord_less_nat @ B @ ( plus_plus_nat @ A @ C ) ) ) ) ).

% add_strict_increasing2
thf(fact_621_add__strict__increasing2,axiom,
    ! [A: a,B: a,C: a] :
      ( ( ord_less_eq_a @ zero_zero_a @ A )
     => ( ( ord_less_a @ B @ C )
       => ( ord_less_a @ B @ ( plus_plus_a @ A @ C ) ) ) ) ).

% add_strict_increasing2
thf(fact_622_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_623_leD,axiom,
    ! [Y3: vec_a,X3: vec_a] :
      ( ( ord_less_eq_vec_a @ Y3 @ X3 )
     => ~ ( ord_less_vec_a @ X3 @ Y3 ) ) ).

% leD
thf(fact_624_leD,axiom,
    ! [Y3: nat,X3: nat] :
      ( ( ord_less_eq_nat @ Y3 @ X3 )
     => ~ ( ord_less_nat @ X3 @ Y3 ) ) ).

% leD
thf(fact_625_leD,axiom,
    ! [Y3: a,X3: a] :
      ( ( ord_less_eq_a @ Y3 @ X3 )
     => ~ ( ord_less_a @ X3 @ Y3 ) ) ).

% leD
thf(fact_626_leI,axiom,
    ! [X3: nat,Y3: nat] :
      ( ~ ( ord_less_nat @ X3 @ Y3 )
     => ( ord_less_eq_nat @ Y3 @ X3 ) ) ).

% leI
thf(fact_627_leI,axiom,
    ! [X3: a,Y3: a] :
      ( ~ ( ord_less_a @ X3 @ Y3 )
     => ( ord_less_eq_a @ Y3 @ X3 ) ) ).

% leI
thf(fact_628_nless__le,axiom,
    ! [A: vec_a,B: vec_a] :
      ( ( ~ ( ord_less_vec_a @ A @ B ) )
      = ( ~ ( ord_less_eq_vec_a @ A @ B )
        | ( A = B ) ) ) ).

% nless_le
thf(fact_629_nless__le,axiom,
    ! [A: nat,B: nat] :
      ( ( ~ ( ord_less_nat @ A @ B ) )
      = ( ~ ( ord_less_eq_nat @ A @ B )
        | ( A = B ) ) ) ).

% nless_le
thf(fact_630_nless__le,axiom,
    ! [A: a,B: a] :
      ( ( ~ ( ord_less_a @ A @ B ) )
      = ( ~ ( ord_less_eq_a @ A @ B )
        | ( A = B ) ) ) ).

% nless_le
thf(fact_631_antisym__conv1,axiom,
    ! [X3: vec_a,Y3: vec_a] :
      ( ~ ( ord_less_vec_a @ X3 @ Y3 )
     => ( ( ord_less_eq_vec_a @ X3 @ Y3 )
        = ( X3 = Y3 ) ) ) ).

% antisym_conv1
thf(fact_632_antisym__conv1,axiom,
    ! [X3: nat,Y3: nat] :
      ( ~ ( ord_less_nat @ X3 @ Y3 )
     => ( ( ord_less_eq_nat @ X3 @ Y3 )
        = ( X3 = Y3 ) ) ) ).

% antisym_conv1
thf(fact_633_antisym__conv1,axiom,
    ! [X3: a,Y3: a] :
      ( ~ ( ord_less_a @ X3 @ Y3 )
     => ( ( ord_less_eq_a @ X3 @ Y3 )
        = ( X3 = Y3 ) ) ) ).

% antisym_conv1
thf(fact_634_antisym__conv2,axiom,
    ! [X3: vec_a,Y3: vec_a] :
      ( ( ord_less_eq_vec_a @ X3 @ Y3 )
     => ( ( ~ ( ord_less_vec_a @ X3 @ Y3 ) )
        = ( X3 = Y3 ) ) ) ).

% antisym_conv2
thf(fact_635_antisym__conv2,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( ord_less_eq_nat @ X3 @ Y3 )
     => ( ( ~ ( ord_less_nat @ X3 @ Y3 ) )
        = ( X3 = Y3 ) ) ) ).

% antisym_conv2
thf(fact_636_antisym__conv2,axiom,
    ! [X3: a,Y3: a] :
      ( ( ord_less_eq_a @ X3 @ Y3 )
     => ( ( ~ ( ord_less_a @ X3 @ Y3 ) )
        = ( X3 = Y3 ) ) ) ).

% antisym_conv2
thf(fact_637_dense__ge,axiom,
    ! [Z2: a,Y3: a] :
      ( ! [X: a] :
          ( ( ord_less_a @ Z2 @ X )
         => ( ord_less_eq_a @ Y3 @ X ) )
     => ( ord_less_eq_a @ Y3 @ Z2 ) ) ).

% dense_ge
thf(fact_638_dense__le,axiom,
    ! [Y3: a,Z2: a] :
      ( ! [X: a] :
          ( ( ord_less_a @ X @ Y3 )
         => ( ord_less_eq_a @ X @ Z2 ) )
     => ( ord_less_eq_a @ Y3 @ Z2 ) ) ).

% dense_le
thf(fact_639_less__le__not__le,axiom,
    ( ord_less_vec_a
    = ( ^ [X2: vec_a,Y: vec_a] :
          ( ( ord_less_eq_vec_a @ X2 @ Y )
          & ~ ( ord_less_eq_vec_a @ Y @ X2 ) ) ) ) ).

% less_le_not_le
thf(fact_640_less__le__not__le,axiom,
    ( ord_less_nat
    = ( ^ [X2: nat,Y: nat] :
          ( ( ord_less_eq_nat @ X2 @ Y )
          & ~ ( ord_less_eq_nat @ Y @ X2 ) ) ) ) ).

% less_le_not_le
thf(fact_641_less__le__not__le,axiom,
    ( ord_less_a
    = ( ^ [X2: a,Y: a] :
          ( ( ord_less_eq_a @ X2 @ Y )
          & ~ ( ord_less_eq_a @ Y @ X2 ) ) ) ) ).

% less_le_not_le
thf(fact_642_not__le__imp__less,axiom,
    ! [Y3: nat,X3: nat] :
      ( ~ ( ord_less_eq_nat @ Y3 @ X3 )
     => ( ord_less_nat @ X3 @ Y3 ) ) ).

% not_le_imp_less
thf(fact_643_not__le__imp__less,axiom,
    ! [Y3: a,X3: a] :
      ( ~ ( ord_less_eq_a @ Y3 @ X3 )
     => ( ord_less_a @ X3 @ Y3 ) ) ).

% not_le_imp_less
thf(fact_644_order_Oorder__iff__strict,axiom,
    ( ord_less_eq_vec_a
    = ( ^ [A3: vec_a,B3: vec_a] :
          ( ( ord_less_vec_a @ A3 @ B3 )
          | ( A3 = B3 ) ) ) ) ).

% order.order_iff_strict
thf(fact_645_order_Oorder__iff__strict,axiom,
    ( ord_less_eq_nat
    = ( ^ [A3: nat,B3: nat] :
          ( ( ord_less_nat @ A3 @ B3 )
          | ( A3 = B3 ) ) ) ) ).

% order.order_iff_strict
thf(fact_646_order_Oorder__iff__strict,axiom,
    ( ord_less_eq_a
    = ( ^ [A3: a,B3: a] :
          ( ( ord_less_a @ A3 @ B3 )
          | ( A3 = B3 ) ) ) ) ).

% order.order_iff_strict
thf(fact_647_order_Ostrict__iff__order,axiom,
    ( ord_less_vec_a
    = ( ^ [A3: vec_a,B3: vec_a] :
          ( ( ord_less_eq_vec_a @ A3 @ B3 )
          & ( A3 != B3 ) ) ) ) ).

% order.strict_iff_order
thf(fact_648_order_Ostrict__iff__order,axiom,
    ( ord_less_nat
    = ( ^ [A3: nat,B3: nat] :
          ( ( ord_less_eq_nat @ A3 @ B3 )
          & ( A3 != B3 ) ) ) ) ).

% order.strict_iff_order
thf(fact_649_order_Ostrict__iff__order,axiom,
    ( ord_less_a
    = ( ^ [A3: a,B3: a] :
          ( ( ord_less_eq_a @ A3 @ B3 )
          & ( A3 != B3 ) ) ) ) ).

% order.strict_iff_order
thf(fact_650_order_Ostrict__trans1,axiom,
    ! [A: vec_a,B: vec_a,C: vec_a] :
      ( ( ord_less_eq_vec_a @ A @ B )
     => ( ( ord_less_vec_a @ B @ C )
       => ( ord_less_vec_a @ A @ C ) ) ) ).

% order.strict_trans1
thf(fact_651_order_Ostrict__trans1,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_nat @ B @ C )
       => ( ord_less_nat @ A @ C ) ) ) ).

% order.strict_trans1
thf(fact_652_order_Ostrict__trans1,axiom,
    ! [A: a,B: a,C: a] :
      ( ( ord_less_eq_a @ A @ B )
     => ( ( ord_less_a @ B @ C )
       => ( ord_less_a @ A @ C ) ) ) ).

% order.strict_trans1
thf(fact_653_order_Ostrict__trans2,axiom,
    ! [A: vec_a,B: vec_a,C: vec_a] :
      ( ( ord_less_vec_a @ A @ B )
     => ( ( ord_less_eq_vec_a @ B @ C )
       => ( ord_less_vec_a @ A @ C ) ) ) ).

% order.strict_trans2
thf(fact_654_order_Ostrict__trans2,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ord_less_nat @ A @ C ) ) ) ).

% order.strict_trans2
thf(fact_655_order_Ostrict__trans2,axiom,
    ! [A: a,B: a,C: a] :
      ( ( ord_less_a @ A @ B )
     => ( ( ord_less_eq_a @ B @ C )
       => ( ord_less_a @ A @ C ) ) ) ).

% order.strict_trans2
thf(fact_656_order_Ostrict__iff__not,axiom,
    ( ord_less_vec_a
    = ( ^ [A3: vec_a,B3: vec_a] :
          ( ( ord_less_eq_vec_a @ A3 @ B3 )
          & ~ ( ord_less_eq_vec_a @ B3 @ A3 ) ) ) ) ).

% order.strict_iff_not
thf(fact_657_order_Ostrict__iff__not,axiom,
    ( ord_less_nat
    = ( ^ [A3: nat,B3: nat] :
          ( ( ord_less_eq_nat @ A3 @ B3 )
          & ~ ( ord_less_eq_nat @ B3 @ A3 ) ) ) ) ).

% order.strict_iff_not
thf(fact_658_order_Ostrict__iff__not,axiom,
    ( ord_less_a
    = ( ^ [A3: a,B3: a] :
          ( ( ord_less_eq_a @ A3 @ B3 )
          & ~ ( ord_less_eq_a @ B3 @ A3 ) ) ) ) ).

% order.strict_iff_not
thf(fact_659_dense__ge__bounded,axiom,
    ! [Z2: a,X3: a,Y3: a] :
      ( ( ord_less_a @ Z2 @ X3 )
     => ( ! [W3: a] :
            ( ( ord_less_a @ Z2 @ W3 )
           => ( ( ord_less_a @ W3 @ X3 )
             => ( ord_less_eq_a @ Y3 @ W3 ) ) )
       => ( ord_less_eq_a @ Y3 @ Z2 ) ) ) ).

% dense_ge_bounded
thf(fact_660_dense__le__bounded,axiom,
    ! [X3: a,Y3: a,Z2: a] :
      ( ( ord_less_a @ X3 @ Y3 )
     => ( ! [W3: a] :
            ( ( ord_less_a @ X3 @ W3 )
           => ( ( ord_less_a @ W3 @ Y3 )
             => ( ord_less_eq_a @ W3 @ Z2 ) ) )
       => ( ord_less_eq_a @ Y3 @ Z2 ) ) ) ).

% dense_le_bounded
thf(fact_661_dual__order_Oorder__iff__strict,axiom,
    ( ord_less_eq_vec_a
    = ( ^ [B3: vec_a,A3: vec_a] :
          ( ( ord_less_vec_a @ B3 @ A3 )
          | ( A3 = B3 ) ) ) ) ).

% dual_order.order_iff_strict
thf(fact_662_dual__order_Oorder__iff__strict,axiom,
    ( ord_less_eq_nat
    = ( ^ [B3: nat,A3: nat] :
          ( ( ord_less_nat @ B3 @ A3 )
          | ( A3 = B3 ) ) ) ) ).

% dual_order.order_iff_strict
thf(fact_663_dual__order_Oorder__iff__strict,axiom,
    ( ord_less_eq_a
    = ( ^ [B3: a,A3: a] :
          ( ( ord_less_a @ B3 @ A3 )
          | ( A3 = B3 ) ) ) ) ).

% dual_order.order_iff_strict
thf(fact_664_dual__order_Ostrict__iff__order,axiom,
    ( ord_less_vec_a
    = ( ^ [B3: vec_a,A3: vec_a] :
          ( ( ord_less_eq_vec_a @ B3 @ A3 )
          & ( A3 != B3 ) ) ) ) ).

% dual_order.strict_iff_order
thf(fact_665_dual__order_Ostrict__iff__order,axiom,
    ( ord_less_nat
    = ( ^ [B3: nat,A3: nat] :
          ( ( ord_less_eq_nat @ B3 @ A3 )
          & ( A3 != B3 ) ) ) ) ).

% dual_order.strict_iff_order
thf(fact_666_dual__order_Ostrict__iff__order,axiom,
    ( ord_less_a
    = ( ^ [B3: a,A3: a] :
          ( ( ord_less_eq_a @ B3 @ A3 )
          & ( A3 != B3 ) ) ) ) ).

% dual_order.strict_iff_order
thf(fact_667_dual__order_Ostrict__trans1,axiom,
    ! [B: vec_a,A: vec_a,C: vec_a] :
      ( ( ord_less_eq_vec_a @ B @ A )
     => ( ( ord_less_vec_a @ C @ B )
       => ( ord_less_vec_a @ C @ A ) ) ) ).

% dual_order.strict_trans1
thf(fact_668_dual__order_Ostrict__trans1,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( ord_less_eq_nat @ B @ A )
     => ( ( ord_less_nat @ C @ B )
       => ( ord_less_nat @ C @ A ) ) ) ).

% dual_order.strict_trans1
thf(fact_669_dual__order_Ostrict__trans1,axiom,
    ! [B: a,A: a,C: a] :
      ( ( ord_less_eq_a @ B @ A )
     => ( ( ord_less_a @ C @ B )
       => ( ord_less_a @ C @ A ) ) ) ).

% dual_order.strict_trans1
thf(fact_670_dual__order_Ostrict__trans2,axiom,
    ! [B: vec_a,A: vec_a,C: vec_a] :
      ( ( ord_less_vec_a @ B @ A )
     => ( ( ord_less_eq_vec_a @ C @ B )
       => ( ord_less_vec_a @ C @ A ) ) ) ).

% dual_order.strict_trans2
thf(fact_671_dual__order_Ostrict__trans2,axiom,
    ! [B: nat,A: nat,C: nat] :
      ( ( ord_less_nat @ B @ A )
     => ( ( ord_less_eq_nat @ C @ B )
       => ( ord_less_nat @ C @ A ) ) ) ).

% dual_order.strict_trans2
thf(fact_672_dual__order_Ostrict__trans2,axiom,
    ! [B: a,A: a,C: a] :
      ( ( ord_less_a @ B @ A )
     => ( ( ord_less_eq_a @ C @ B )
       => ( ord_less_a @ C @ A ) ) ) ).

% dual_order.strict_trans2
thf(fact_673_dual__order_Ostrict__iff__not,axiom,
    ( ord_less_vec_a
    = ( ^ [B3: vec_a,A3: vec_a] :
          ( ( ord_less_eq_vec_a @ B3 @ A3 )
          & ~ ( ord_less_eq_vec_a @ A3 @ B3 ) ) ) ) ).

% dual_order.strict_iff_not
thf(fact_674_dual__order_Ostrict__iff__not,axiom,
    ( ord_less_nat
    = ( ^ [B3: nat,A3: nat] :
          ( ( ord_less_eq_nat @ B3 @ A3 )
          & ~ ( ord_less_eq_nat @ A3 @ B3 ) ) ) ) ).

% dual_order.strict_iff_not
thf(fact_675_dual__order_Ostrict__iff__not,axiom,
    ( ord_less_a
    = ( ^ [B3: a,A3: a] :
          ( ( ord_less_eq_a @ B3 @ A3 )
          & ~ ( ord_less_eq_a @ A3 @ B3 ) ) ) ) ).

% dual_order.strict_iff_not
thf(fact_676_order_Ostrict__implies__order,axiom,
    ! [A: vec_a,B: vec_a] :
      ( ( ord_less_vec_a @ A @ B )
     => ( ord_less_eq_vec_a @ A @ B ) ) ).

% order.strict_implies_order
thf(fact_677_order_Ostrict__implies__order,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ord_less_eq_nat @ A @ B ) ) ).

% order.strict_implies_order
thf(fact_678_order_Ostrict__implies__order,axiom,
    ! [A: a,B: a] :
      ( ( ord_less_a @ A @ B )
     => ( ord_less_eq_a @ A @ B ) ) ).

% order.strict_implies_order
thf(fact_679_dual__order_Ostrict__implies__order,axiom,
    ! [B: vec_a,A: vec_a] :
      ( ( ord_less_vec_a @ B @ A )
     => ( ord_less_eq_vec_a @ B @ A ) ) ).

% dual_order.strict_implies_order
thf(fact_680_dual__order_Ostrict__implies__order,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_nat @ B @ A )
     => ( ord_less_eq_nat @ B @ A ) ) ).

% dual_order.strict_implies_order
thf(fact_681_dual__order_Ostrict__implies__order,axiom,
    ! [B: a,A: a] :
      ( ( ord_less_a @ B @ A )
     => ( ord_less_eq_a @ B @ A ) ) ).

% dual_order.strict_implies_order
thf(fact_682_order__le__less,axiom,
    ( ord_less_eq_vec_a
    = ( ^ [X2: vec_a,Y: vec_a] :
          ( ( ord_less_vec_a @ X2 @ Y )
          | ( X2 = Y ) ) ) ) ).

% order_le_less
thf(fact_683_order__le__less,axiom,
    ( ord_less_eq_nat
    = ( ^ [X2: nat,Y: nat] :
          ( ( ord_less_nat @ X2 @ Y )
          | ( X2 = Y ) ) ) ) ).

% order_le_less
thf(fact_684_order__le__less,axiom,
    ( ord_less_eq_a
    = ( ^ [X2: a,Y: a] :
          ( ( ord_less_a @ X2 @ Y )
          | ( X2 = Y ) ) ) ) ).

% order_le_less
thf(fact_685_order__less__le,axiom,
    ( ord_less_vec_a
    = ( ^ [X2: vec_a,Y: vec_a] :
          ( ( ord_less_eq_vec_a @ X2 @ Y )
          & ( X2 != Y ) ) ) ) ).

% order_less_le
thf(fact_686_order__less__le,axiom,
    ( ord_less_nat
    = ( ^ [X2: nat,Y: nat] :
          ( ( ord_less_eq_nat @ X2 @ Y )
          & ( X2 != Y ) ) ) ) ).

% order_less_le
thf(fact_687_order__less__le,axiom,
    ( ord_less_a
    = ( ^ [X2: a,Y: a] :
          ( ( ord_less_eq_a @ X2 @ Y )
          & ( X2 != Y ) ) ) ) ).

% order_less_le
thf(fact_688_linorder__not__le,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( ~ ( ord_less_eq_nat @ X3 @ Y3 ) )
      = ( ord_less_nat @ Y3 @ X3 ) ) ).

% linorder_not_le
thf(fact_689_linorder__not__le,axiom,
    ! [X3: a,Y3: a] :
      ( ( ~ ( ord_less_eq_a @ X3 @ Y3 ) )
      = ( ord_less_a @ Y3 @ X3 ) ) ).

% linorder_not_le
thf(fact_690_linorder__not__less,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( ~ ( ord_less_nat @ X3 @ Y3 ) )
      = ( ord_less_eq_nat @ Y3 @ X3 ) ) ).

% linorder_not_less
thf(fact_691_linorder__not__less,axiom,
    ! [X3: a,Y3: a] :
      ( ( ~ ( ord_less_a @ X3 @ Y3 ) )
      = ( ord_less_eq_a @ Y3 @ X3 ) ) ).

% linorder_not_less
thf(fact_692_order__less__imp__le,axiom,
    ! [X3: vec_a,Y3: vec_a] :
      ( ( ord_less_vec_a @ X3 @ Y3 )
     => ( ord_less_eq_vec_a @ X3 @ Y3 ) ) ).

% order_less_imp_le
thf(fact_693_order__less__imp__le,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( ord_less_nat @ X3 @ Y3 )
     => ( ord_less_eq_nat @ X3 @ Y3 ) ) ).

% order_less_imp_le
thf(fact_694_order__less__imp__le,axiom,
    ! [X3: a,Y3: a] :
      ( ( ord_less_a @ X3 @ Y3 )
     => ( ord_less_eq_a @ X3 @ Y3 ) ) ).

% order_less_imp_le
thf(fact_695_order__le__neq__trans,axiom,
    ! [A: vec_a,B: vec_a] :
      ( ( ord_less_eq_vec_a @ A @ B )
     => ( ( A != B )
       => ( ord_less_vec_a @ A @ B ) ) ) ).

% order_le_neq_trans
thf(fact_696_order__le__neq__trans,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( A != B )
       => ( ord_less_nat @ A @ B ) ) ) ).

% order_le_neq_trans
thf(fact_697_order__le__neq__trans,axiom,
    ! [A: a,B: a] :
      ( ( ord_less_eq_a @ A @ B )
     => ( ( A != B )
       => ( ord_less_a @ A @ B ) ) ) ).

% order_le_neq_trans
thf(fact_698_order__neq__le__trans,axiom,
    ! [A: vec_a,B: vec_a] :
      ( ( A != B )
     => ( ( ord_less_eq_vec_a @ A @ B )
       => ( ord_less_vec_a @ A @ B ) ) ) ).

% order_neq_le_trans
thf(fact_699_order__neq__le__trans,axiom,
    ! [A: nat,B: nat] :
      ( ( A != B )
     => ( ( ord_less_eq_nat @ A @ B )
       => ( ord_less_nat @ A @ B ) ) ) ).

% order_neq_le_trans
thf(fact_700_order__neq__le__trans,axiom,
    ! [A: a,B: a] :
      ( ( A != B )
     => ( ( ord_less_eq_a @ A @ B )
       => ( ord_less_a @ A @ B ) ) ) ).

% order_neq_le_trans
thf(fact_701_order__le__less__trans,axiom,
    ! [X3: vec_a,Y3: vec_a,Z2: vec_a] :
      ( ( ord_less_eq_vec_a @ X3 @ Y3 )
     => ( ( ord_less_vec_a @ Y3 @ Z2 )
       => ( ord_less_vec_a @ X3 @ Z2 ) ) ) ).

% order_le_less_trans
thf(fact_702_order__le__less__trans,axiom,
    ! [X3: nat,Y3: nat,Z2: nat] :
      ( ( ord_less_eq_nat @ X3 @ Y3 )
     => ( ( ord_less_nat @ Y3 @ Z2 )
       => ( ord_less_nat @ X3 @ Z2 ) ) ) ).

% order_le_less_trans
thf(fact_703_order__le__less__trans,axiom,
    ! [X3: a,Y3: a,Z2: a] :
      ( ( ord_less_eq_a @ X3 @ Y3 )
     => ( ( ord_less_a @ Y3 @ Z2 )
       => ( ord_less_a @ X3 @ Z2 ) ) ) ).

% order_le_less_trans
thf(fact_704_order__less__le__trans,axiom,
    ! [X3: vec_a,Y3: vec_a,Z2: vec_a] :
      ( ( ord_less_vec_a @ X3 @ Y3 )
     => ( ( ord_less_eq_vec_a @ Y3 @ Z2 )
       => ( ord_less_vec_a @ X3 @ Z2 ) ) ) ).

% order_less_le_trans
thf(fact_705_order__less__le__trans,axiom,
    ! [X3: nat,Y3: nat,Z2: nat] :
      ( ( ord_less_nat @ X3 @ Y3 )
     => ( ( ord_less_eq_nat @ Y3 @ Z2 )
       => ( ord_less_nat @ X3 @ Z2 ) ) ) ).

% order_less_le_trans
thf(fact_706_order__less__le__trans,axiom,
    ! [X3: a,Y3: a,Z2: a] :
      ( ( ord_less_a @ X3 @ Y3 )
     => ( ( ord_less_eq_a @ Y3 @ Z2 )
       => ( ord_less_a @ X3 @ Z2 ) ) ) ).

% order_less_le_trans
thf(fact_707_order__le__less__subst1,axiom,
    ! [A: vec_a,F: nat > vec_a,B: nat,C: nat] :
      ( ( ord_less_eq_vec_a @ A @ ( F @ B ) )
     => ( ( ord_less_nat @ B @ C )
       => ( ! [X: nat,Y2: nat] :
              ( ( ord_less_nat @ X @ Y2 )
             => ( ord_less_vec_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_vec_a @ A @ ( F @ C ) ) ) ) ) ).

% order_le_less_subst1
thf(fact_708_order__le__less__subst1,axiom,
    ! [A: nat,F: nat > nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ ( F @ B ) )
     => ( ( ord_less_nat @ B @ C )
       => ( ! [X: nat,Y2: nat] :
              ( ( ord_less_nat @ X @ Y2 )
             => ( ord_less_nat @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_le_less_subst1
thf(fact_709_order__le__less__subst1,axiom,
    ! [A: a,F: nat > a,B: nat,C: nat] :
      ( ( ord_less_eq_a @ A @ ( F @ B ) )
     => ( ( ord_less_nat @ B @ C )
       => ( ! [X: nat,Y2: nat] :
              ( ( ord_less_nat @ X @ Y2 )
             => ( ord_less_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_a @ A @ ( F @ C ) ) ) ) ) ).

% order_le_less_subst1
thf(fact_710_order__le__less__subst2,axiom,
    ! [A: vec_a,B: vec_a,F: vec_a > vec_a,C: vec_a] :
      ( ( ord_less_eq_vec_a @ A @ B )
     => ( ( ord_less_vec_a @ ( F @ B ) @ C )
       => ( ! [X: vec_a,Y2: vec_a] :
              ( ( ord_less_eq_vec_a @ X @ Y2 )
             => ( ord_less_eq_vec_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_vec_a @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_711_order__le__less__subst2,axiom,
    ! [A: vec_a,B: vec_a,F: vec_a > nat,C: nat] :
      ( ( ord_less_eq_vec_a @ A @ B )
     => ( ( ord_less_nat @ ( F @ B ) @ C )
       => ( ! [X: vec_a,Y2: vec_a] :
              ( ( ord_less_eq_vec_a @ X @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_712_order__le__less__subst2,axiom,
    ! [A: vec_a,B: vec_a,F: vec_a > a,C: a] :
      ( ( ord_less_eq_vec_a @ A @ B )
     => ( ( ord_less_a @ ( F @ B ) @ C )
       => ( ! [X: vec_a,Y2: vec_a] :
              ( ( ord_less_eq_vec_a @ X @ Y2 )
             => ( ord_less_eq_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_a @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_713_order__le__less__subst2,axiom,
    ! [A: nat,B: nat,F: nat > vec_a,C: vec_a] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_vec_a @ ( F @ B ) @ C )
       => ( ! [X: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X @ Y2 )
             => ( ord_less_eq_vec_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_vec_a @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_714_order__le__less__subst2,axiom,
    ! [A: nat,B: nat,F: nat > nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_nat @ ( F @ B ) @ C )
       => ( ! [X: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_715_order__le__less__subst2,axiom,
    ! [A: nat,B: nat,F: nat > a,C: a] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_a @ ( F @ B ) @ C )
       => ( ! [X: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X @ Y2 )
             => ( ord_less_eq_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_a @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_716_order__le__less__subst2,axiom,
    ! [A: a,B: a,F: a > vec_a,C: vec_a] :
      ( ( ord_less_eq_a @ A @ B )
     => ( ( ord_less_vec_a @ ( F @ B ) @ C )
       => ( ! [X: a,Y2: a] :
              ( ( ord_less_eq_a @ X @ Y2 )
             => ( ord_less_eq_vec_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_vec_a @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_717_order__le__less__subst2,axiom,
    ! [A: a,B: a,F: a > nat,C: nat] :
      ( ( ord_less_eq_a @ A @ B )
     => ( ( ord_less_nat @ ( F @ B ) @ C )
       => ( ! [X: a,Y2: a] :
              ( ( ord_less_eq_a @ X @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_718_order__le__less__subst2,axiom,
    ! [A: a,B: a,F: a > a,C: a] :
      ( ( ord_less_eq_a @ A @ B )
     => ( ( ord_less_a @ ( F @ B ) @ C )
       => ( ! [X: a,Y2: a] :
              ( ( ord_less_eq_a @ X @ Y2 )
             => ( ord_less_eq_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_a @ ( F @ A ) @ C ) ) ) ) ).

% order_le_less_subst2
thf(fact_719_order__less__le__subst1,axiom,
    ! [A: vec_a,F: vec_a > vec_a,B: vec_a,C: vec_a] :
      ( ( ord_less_vec_a @ A @ ( F @ B ) )
     => ( ( ord_less_eq_vec_a @ B @ C )
       => ( ! [X: vec_a,Y2: vec_a] :
              ( ( ord_less_eq_vec_a @ X @ Y2 )
             => ( ord_less_eq_vec_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_vec_a @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_720_order__less__le__subst1,axiom,
    ! [A: nat,F: vec_a > nat,B: vec_a,C: vec_a] :
      ( ( ord_less_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_vec_a @ B @ C )
       => ( ! [X: vec_a,Y2: vec_a] :
              ( ( ord_less_eq_vec_a @ X @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_721_order__less__le__subst1,axiom,
    ! [A: a,F: vec_a > a,B: vec_a,C: vec_a] :
      ( ( ord_less_a @ A @ ( F @ B ) )
     => ( ( ord_less_eq_vec_a @ B @ C )
       => ( ! [X: vec_a,Y2: vec_a] :
              ( ( ord_less_eq_vec_a @ X @ Y2 )
             => ( ord_less_eq_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_a @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_722_order__less__le__subst1,axiom,
    ! [A: vec_a,F: nat > vec_a,B: nat,C: nat] :
      ( ( ord_less_vec_a @ A @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X @ Y2 )
             => ( ord_less_eq_vec_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_vec_a @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_723_order__less__le__subst1,axiom,
    ! [A: nat,F: nat > nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_724_order__less__le__subst1,axiom,
    ! [A: a,F: nat > a,B: nat,C: nat] :
      ( ( ord_less_a @ A @ ( F @ B ) )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ! [X: nat,Y2: nat] :
              ( ( ord_less_eq_nat @ X @ Y2 )
             => ( ord_less_eq_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_a @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_725_order__less__le__subst1,axiom,
    ! [A: vec_a,F: a > vec_a,B: a,C: a] :
      ( ( ord_less_vec_a @ A @ ( F @ B ) )
     => ( ( ord_less_eq_a @ B @ C )
       => ( ! [X: a,Y2: a] :
              ( ( ord_less_eq_a @ X @ Y2 )
             => ( ord_less_eq_vec_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_vec_a @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_726_order__less__le__subst1,axiom,
    ! [A: nat,F: a > nat,B: a,C: a] :
      ( ( ord_less_nat @ A @ ( F @ B ) )
     => ( ( ord_less_eq_a @ B @ C )
       => ( ! [X: a,Y2: a] :
              ( ( ord_less_eq_a @ X @ Y2 )
             => ( ord_less_eq_nat @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_727_order__less__le__subst1,axiom,
    ! [A: a,F: a > a,B: a,C: a] :
      ( ( ord_less_a @ A @ ( F @ B ) )
     => ( ( ord_less_eq_a @ B @ C )
       => ( ! [X: a,Y2: a] :
              ( ( ord_less_eq_a @ X @ Y2 )
             => ( ord_less_eq_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_a @ A @ ( F @ C ) ) ) ) ) ).

% order_less_le_subst1
thf(fact_728_order__less__le__subst2,axiom,
    ! [A: nat,B: nat,F: nat > vec_a,C: vec_a] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_vec_a @ ( F @ B ) @ C )
       => ( ! [X: nat,Y2: nat] :
              ( ( ord_less_nat @ X @ Y2 )
             => ( ord_less_vec_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_vec_a @ ( F @ A ) @ C ) ) ) ) ).

% order_less_le_subst2
thf(fact_729_order__less__le__subst2,axiom,
    ! [A: nat,B: nat,F: nat > nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_nat @ ( F @ B ) @ C )
       => ( ! [X: nat,Y2: nat] :
              ( ( ord_less_nat @ X @ Y2 )
             => ( ord_less_nat @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_nat @ ( F @ A ) @ C ) ) ) ) ).

% order_less_le_subst2
thf(fact_730_order__less__le__subst2,axiom,
    ! [A: nat,B: nat,F: nat > a,C: a] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_a @ ( F @ B ) @ C )
       => ( ! [X: nat,Y2: nat] :
              ( ( ord_less_nat @ X @ Y2 )
             => ( ord_less_a @ ( F @ X ) @ ( F @ Y2 ) ) )
         => ( ord_less_a @ ( F @ A ) @ C ) ) ) ) ).

% order_less_le_subst2
thf(fact_731_linorder__le__less__linear,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( ord_less_eq_nat @ X3 @ Y3 )
      | ( ord_less_nat @ Y3 @ X3 ) ) ).

% linorder_le_less_linear
thf(fact_732_linorder__le__less__linear,axiom,
    ! [X3: a,Y3: a] :
      ( ( ord_less_eq_a @ X3 @ Y3 )
      | ( ord_less_a @ Y3 @ X3 ) ) ).

% linorder_le_less_linear
thf(fact_733_order__le__imp__less__or__eq,axiom,
    ! [X3: vec_a,Y3: vec_a] :
      ( ( ord_less_eq_vec_a @ X3 @ Y3 )
     => ( ( ord_less_vec_a @ X3 @ Y3 )
        | ( X3 = Y3 ) ) ) ).

% order_le_imp_less_or_eq
thf(fact_734_order__le__imp__less__or__eq,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( ord_less_eq_nat @ X3 @ Y3 )
     => ( ( ord_less_nat @ X3 @ Y3 )
        | ( X3 = Y3 ) ) ) ).

% order_le_imp_less_or_eq
thf(fact_735_order__le__imp__less__or__eq,axiom,
    ! [X3: a,Y3: a] :
      ( ( ord_less_eq_a @ X3 @ Y3 )
     => ( ( ord_less_a @ X3 @ Y3 )
        | ( X3 = Y3 ) ) ) ).

% order_le_imp_less_or_eq
thf(fact_736_verit__comp__simplify1_I3_J,axiom,
    ! [B6: nat,A6: nat] :
      ( ( ~ ( ord_less_eq_nat @ B6 @ A6 ) )
      = ( ord_less_nat @ A6 @ B6 ) ) ).

% verit_comp_simplify1(3)
thf(fact_737_verit__comp__simplify1_I3_J,axiom,
    ! [B6: a,A6: a] :
      ( ( ~ ( ord_less_eq_a @ B6 @ A6 ) )
      = ( ord_less_a @ A6 @ B6 ) ) ).

% verit_comp_simplify1(3)
thf(fact_738_less__numeral__extra_I4_J,axiom,
    ~ ( ord_less_nat @ one_one_nat @ one_one_nat ) ).

% less_numeral_extra(4)
thf(fact_739_add__mono__thms__linordered__field_I5_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( ord_less_nat @ I @ J )
        & ( ord_less_nat @ K @ L ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(5)
thf(fact_740_add__mono__thms__linordered__field_I2_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( I = J )
        & ( ord_less_nat @ K @ L ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(2)
thf(fact_741_add__mono__thms__linordered__field_I1_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( ord_less_nat @ I @ J )
        & ( K = L ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(1)
thf(fact_742_add__strict__mono,axiom,
    ! [A: nat,B: nat,C: nat,D2: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_nat @ C @ D2 )
       => ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ D2 ) ) ) ) ).

% add_strict_mono
thf(fact_743_add__strict__left__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ord_less_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) ) ) ).

% add_strict_left_mono
thf(fact_744_add__strict__right__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) ) ) ).

% add_strict_right_mono
thf(fact_745_add__less__imp__less__left,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) )
     => ( ord_less_nat @ A @ B ) ) ).

% add_less_imp_less_left
thf(fact_746_add__less__imp__less__right,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) )
     => ( ord_less_nat @ A @ B ) ) ).

% add_less_imp_less_right
thf(fact_747_nat__less__le,axiom,
    ( ord_less_nat
    = ( ^ [M2: nat,N4: nat] :
          ( ( ord_less_eq_nat @ M2 @ N4 )
          & ( M2 != N4 ) ) ) ) ).

% nat_less_le
thf(fact_748_less__imp__le__nat,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% less_imp_le_nat
thf(fact_749_le__eq__less__or__eq,axiom,
    ( ord_less_eq_nat
    = ( ^ [M2: nat,N4: nat] :
          ( ( ord_less_nat @ M2 @ N4 )
          | ( M2 = N4 ) ) ) ) ).

% le_eq_less_or_eq
thf(fact_750_less__or__eq__imp__le,axiom,
    ! [M: nat,N: nat] :
      ( ( ( ord_less_nat @ M @ N )
        | ( M = N ) )
     => ( ord_less_eq_nat @ M @ N ) ) ).

% less_or_eq_imp_le
thf(fact_751_le__neq__implies__less,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( M != N )
       => ( ord_less_nat @ M @ N ) ) ) ).

% le_neq_implies_less
thf(fact_752_less__mono__imp__le__mono,axiom,
    ! [F: nat > nat,I: nat,J: nat] :
      ( ! [I4: nat,J2: nat] :
          ( ( ord_less_nat @ I4 @ J2 )
         => ( ord_less_nat @ ( F @ I4 ) @ ( F @ J2 ) ) )
     => ( ( ord_less_eq_nat @ I @ J )
       => ( ord_less_eq_nat @ ( F @ I ) @ ( F @ J ) ) ) ) ).

% less_mono_imp_le_mono
thf(fact_753_add__lessD1,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ ( plus_plus_nat @ I @ J ) @ K )
     => ( ord_less_nat @ I @ K ) ) ).

% add_lessD1
thf(fact_754_add__less__mono,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ( ord_less_nat @ K @ L )
       => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ) ).

% add_less_mono
thf(fact_755_not__add__less1,axiom,
    ! [I: nat,J: nat] :
      ~ ( ord_less_nat @ ( plus_plus_nat @ I @ J ) @ I ) ).

% not_add_less1
thf(fact_756_not__add__less2,axiom,
    ! [J: nat,I: nat] :
      ~ ( ord_less_nat @ ( plus_plus_nat @ J @ I ) @ I ) ).

% not_add_less2
thf(fact_757_add__less__mono1,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ K ) ) ) ).

% add_less_mono1
thf(fact_758_trans__less__add1,axiom,
    ! [I: nat,J: nat,M: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ord_less_nat @ I @ ( plus_plus_nat @ J @ M ) ) ) ).

% trans_less_add1
thf(fact_759_trans__less__add2,axiom,
    ! [I: nat,J: nat,M: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ord_less_nat @ I @ ( plus_plus_nat @ M @ J ) ) ) ).

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

% less_add_eq_less
thf(fact_761_le__numeral__extra_I3_J,axiom,
    ord_less_eq_nat @ zero_zero_nat @ zero_zero_nat ).

% le_numeral_extra(3)
thf(fact_762_le__numeral__extra_I3_J,axiom,
    ord_less_eq_a @ zero_zero_a @ zero_zero_a ).

% le_numeral_extra(3)
thf(fact_763_zero__le,axiom,
    ! [X3: nat] : ( ord_less_eq_nat @ zero_zero_nat @ X3 ) ).

% zero_le
thf(fact_764_comm__monoid__add__class_Oadd__0,axiom,
    ! [A: nat] :
      ( ( plus_plus_nat @ zero_zero_nat @ A )
      = A ) ).

% comm_monoid_add_class.add_0
thf(fact_765_add_Ocomm__neutral,axiom,
    ! [A: nat] :
      ( ( plus_plus_nat @ A @ zero_zero_nat )
      = A ) ).

% add.comm_neutral
thf(fact_766_verit__sum__simplify,axiom,
    ! [A: nat] :
      ( ( plus_plus_nat @ A @ zero_zero_nat )
      = A ) ).

% verit_sum_simplify
thf(fact_767_less__eq__nat_Osimps_I1_J,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ zero_zero_nat @ N ) ).

% less_eq_nat.simps(1)
thf(fact_768_bot__nat__0_Oextremum__unique,axiom,
    ! [A: nat] :
      ( ( ord_less_eq_nat @ A @ zero_zero_nat )
      = ( A = zero_zero_nat ) ) ).

% bot_nat_0.extremum_unique
thf(fact_769_bot__nat__0_Oextremum__uniqueI,axiom,
    ! [A: nat] :
      ( ( ord_less_eq_nat @ A @ zero_zero_nat )
     => ( A = zero_zero_nat ) ) ).

% bot_nat_0.extremum_uniqueI
thf(fact_770_le__0__eq,axiom,
    ! [N: nat] :
      ( ( ord_less_eq_nat @ N @ zero_zero_nat )
      = ( N = zero_zero_nat ) ) ).

% le_0_eq
thf(fact_771_plus__nat_Oadd__0,axiom,
    ! [N: nat] :
      ( ( plus_plus_nat @ zero_zero_nat @ N )
      = N ) ).

% plus_nat.add_0
thf(fact_772_add__eq__self__zero,axiom,
    ! [M: nat,N: nat] :
      ( ( ( plus_plus_nat @ M @ N )
        = M )
     => ( N = zero_zero_nat ) ) ).

% add_eq_self_zero
thf(fact_773_lesseq__vecD,axiom,
    ! [W: vec_vec_a,N: nat,V: vec_vec_a,I: nat] :
      ( ( member_vec_vec_a @ W @ ( carrier_vec_vec_a @ N ) )
     => ( ( ord_le4012615358376148468_vec_a @ V @ W )
       => ( ( ord_less_nat @ I @ N )
         => ( ord_less_eq_vec_a @ ( vec_index_vec_a @ V @ I ) @ ( vec_index_vec_a @ W @ I ) ) ) ) ) ).

% lesseq_vecD
thf(fact_774_lesseq__vecD,axiom,
    ! [W: vec_nat,N: nat,V: vec_nat,I: nat] :
      ( ( member_vec_nat @ W @ ( carrier_vec_nat @ N ) )
     => ( ( ord_less_eq_vec_nat @ V @ W )
       => ( ( ord_less_nat @ I @ N )
         => ( ord_less_eq_nat @ ( vec_index_nat @ V @ I ) @ ( vec_index_nat @ W @ I ) ) ) ) ) ).

% lesseq_vecD
thf(fact_775_lesseq__vecD,axiom,
    ! [W: vec_a,N: nat,V: vec_a,I: nat] :
      ( ( member_vec_a @ W @ ( carrier_vec_a @ N ) )
     => ( ( ord_less_eq_vec_a @ V @ W )
       => ( ( ord_less_nat @ I @ N )
         => ( ord_less_eq_a @ ( vec_index_a @ V @ I ) @ ( vec_index_a @ W @ I ) ) ) ) ) ).

% lesseq_vecD
thf(fact_776_lesseq__vecI,axiom,
    ! [V: vec_vec_a,N: nat,W: vec_vec_a] :
      ( ( member_vec_vec_a @ V @ ( carrier_vec_vec_a @ N ) )
     => ( ( member_vec_vec_a @ W @ ( carrier_vec_vec_a @ N ) )
       => ( ! [I4: nat] :
              ( ( ord_less_nat @ I4 @ N )
             => ( ord_less_eq_vec_a @ ( vec_index_vec_a @ V @ I4 ) @ ( vec_index_vec_a @ W @ I4 ) ) )
         => ( ord_le4012615358376148468_vec_a @ V @ W ) ) ) ) ).

% lesseq_vecI
thf(fact_777_lesseq__vecI,axiom,
    ! [V: vec_nat,N: nat,W: vec_nat] :
      ( ( member_vec_nat @ V @ ( carrier_vec_nat @ N ) )
     => ( ( member_vec_nat @ W @ ( carrier_vec_nat @ N ) )
       => ( ! [I4: nat] :
              ( ( ord_less_nat @ I4 @ N )
             => ( ord_less_eq_nat @ ( vec_index_nat @ V @ I4 ) @ ( vec_index_nat @ W @ I4 ) ) )
         => ( ord_less_eq_vec_nat @ V @ W ) ) ) ) ).

% lesseq_vecI
thf(fact_778_lesseq__vecI,axiom,
    ! [V: vec_a,N: nat,W: vec_a] :
      ( ( member_vec_a @ V @ ( carrier_vec_a @ N ) )
     => ( ( member_vec_a @ W @ ( carrier_vec_a @ N ) )
       => ( ! [I4: nat] :
              ( ( ord_less_nat @ I4 @ N )
             => ( ord_less_eq_a @ ( vec_index_a @ V @ I4 ) @ ( vec_index_a @ W @ I4 ) ) )
         => ( ord_less_eq_vec_a @ V @ W ) ) ) ) ).

% lesseq_vecI
thf(fact_779_less__eq__vec__def,axiom,
    ( ord_le4012615358376148468_vec_a
    = ( ^ [V4: vec_vec_a,W4: vec_vec_a] :
          ( ( ( dim_vec_vec_a @ V4 )
            = ( dim_vec_vec_a @ W4 ) )
          & ! [I5: nat] :
              ( ( ord_less_nat @ I5 @ ( dim_vec_vec_a @ W4 ) )
             => ( ord_less_eq_vec_a @ ( vec_index_vec_a @ V4 @ I5 ) @ ( vec_index_vec_a @ W4 @ I5 ) ) ) ) ) ) ).

% less_eq_vec_def
thf(fact_780_less__eq__vec__def,axiom,
    ( ord_less_eq_vec_nat
    = ( ^ [V4: vec_nat,W4: vec_nat] :
          ( ( ( dim_vec_nat @ V4 )
            = ( dim_vec_nat @ W4 ) )
          & ! [I5: nat] :
              ( ( ord_less_nat @ I5 @ ( dim_vec_nat @ W4 ) )
             => ( ord_less_eq_nat @ ( vec_index_nat @ V4 @ I5 ) @ ( vec_index_nat @ W4 @ I5 ) ) ) ) ) ) ).

% less_eq_vec_def
thf(fact_781_less__eq__vec__def,axiom,
    ( ord_less_eq_vec_a
    = ( ^ [V4: vec_a,W4: vec_a] :
          ( ( ( dim_vec_a @ V4 )
            = ( dim_vec_a @ W4 ) )
          & ! [I5: nat] :
              ( ( ord_less_nat @ I5 @ ( dim_vec_a @ W4 ) )
             => ( ord_less_eq_a @ ( vec_index_a @ V4 @ I5 ) @ ( vec_index_a @ W4 @ I5 ) ) ) ) ) ) ).

% less_eq_vec_def
thf(fact_782_vec__first__index,axiom,
    ! [N: nat,V: vec_a,I: nat] :
      ( ( ord_less_eq_nat @ N @ ( dim_vec_a @ V ) )
     => ( ( ord_less_nat @ I @ N )
       => ( ( vec_index_a @ ( vec_first_a @ V @ N ) @ I )
          = ( vec_index_a @ V @ I ) ) ) ) ).

% vec_first_index
thf(fact_783_vec__last__index,axiom,
    ! [V: vec_a,N: nat,M: nat,I: nat] :
      ( ( member_vec_a @ V @ ( carrier_vec_a @ ( plus_plus_nat @ N @ M ) ) )
     => ( ( ord_less_nat @ I @ M )
       => ( ( vec_index_a @ ( vec_last_a @ V @ M ) @ I )
          = ( vec_index_a @ V @ ( plus_plus_nat @ N @ I ) ) ) ) ) ).

% vec_last_index
thf(fact_784_vec__of__scal__dim__1,axiom,
    ! [V: vec_a] :
      ( ( member_vec_a @ V @ ( carrier_vec_a @ one_one_nat ) )
      = ( V
        = ( missin5951511974119752530scal_a @ ( vec_index_a @ V @ zero_zero_nat ) ) ) ) ).

% vec_of_scal_dim_1
thf(fact_785_mult__mat__vec__split,axiom,
    ! [A2: mat_a,N: nat,D: mat_a,M: nat,A: vec_a,D2: vec_a] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ N @ N ) )
     => ( ( member_mat_a @ D @ ( carrier_mat_a @ M @ M ) )
       => ( ( member_vec_a @ A @ ( carrier_vec_a @ N ) )
         => ( ( member_vec_a @ D2 @ ( carrier_vec_a @ M ) )
           => ( ( mult_mat_vec_a @ ( four_block_mat_a @ A2 @ ( zero_mat_a @ N @ M ) @ ( zero_mat_a @ M @ N ) @ D ) @ ( append_vec_a @ A @ D2 ) )
              = ( append_vec_a @ ( mult_mat_vec_a @ A2 @ A ) @ ( mult_mat_vec_a @ D @ D2 ) ) ) ) ) ) ) ).

% mult_mat_vec_split
thf(fact_786_four__block__carrier__mat,axiom,
    ! [A2: mat_a,Nr1: nat,Nc1: nat,D: mat_a,Nr2: nat,Nc2: nat,B2: mat_a,C2: mat_a] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr1 @ Nc1 ) )
     => ( ( member_mat_a @ D @ ( carrier_mat_a @ Nr2 @ Nc2 ) )
       => ( member_mat_a @ ( four_block_mat_a @ A2 @ B2 @ C2 @ D ) @ ( carrier_mat_a @ ( plus_plus_nat @ Nr1 @ Nr2 ) @ ( plus_plus_nat @ Nc1 @ Nc2 ) ) ) ) ) ).

% four_block_carrier_mat
thf(fact_787_add__inv__exists__mat,axiom,
    ! [A2: mat_a,Nr: nat,Nc: nat] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc ) )
     => ? [X: mat_a] :
          ( ( member_mat_a @ X @ ( carrier_mat_a @ Nr @ Nc ) )
          & ( ( plus_plus_mat_a @ X @ A2 )
            = ( zero_mat_a @ Nr @ Nc ) )
          & ( ( plus_plus_mat_a @ A2 @ X )
            = ( zero_mat_a @ Nr @ Nc ) ) ) ) ).

% add_inv_exists_mat
thf(fact_788_add__mono__thms__linordered__field_I4_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( ord_less_eq_nat @ I @ J )
        & ( ord_less_nat @ K @ L ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(4)
thf(fact_789_add__mono__thms__linordered__field_I4_J,axiom,
    ! [I: a,J: a,K: a,L: a] :
      ( ( ( ord_less_eq_a @ I @ J )
        & ( ord_less_a @ K @ L ) )
     => ( ord_less_a @ ( plus_plus_a @ I @ K ) @ ( plus_plus_a @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(4)
thf(fact_790_add__mono__thms__linordered__field_I3_J,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ( ord_less_nat @ I @ J )
        & ( ord_less_eq_nat @ K @ L ) )
     => ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ ( plus_plus_nat @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(3)
thf(fact_791_add__mono__thms__linordered__field_I3_J,axiom,
    ! [I: a,J: a,K: a,L: a] :
      ( ( ( ord_less_a @ I @ J )
        & ( ord_less_eq_a @ K @ L ) )
     => ( ord_less_a @ ( plus_plus_a @ I @ K ) @ ( plus_plus_a @ J @ L ) ) ) ).

% add_mono_thms_linordered_field(3)
thf(fact_792_add__le__less__mono,axiom,
    ! [A: nat,B: nat,C: nat,D2: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_nat @ C @ D2 )
       => ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ D2 ) ) ) ) ).

% add_le_less_mono
thf(fact_793_add__le__less__mono,axiom,
    ! [A: a,B: a,C: a,D2: a] :
      ( ( ord_less_eq_a @ A @ B )
     => ( ( ord_less_a @ C @ D2 )
       => ( ord_less_a @ ( plus_plus_a @ A @ C ) @ ( plus_plus_a @ B @ D2 ) ) ) ) ).

% add_le_less_mono
thf(fact_794_add__less__le__mono,axiom,
    ! [A: nat,B: nat,C: nat,D2: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C @ D2 )
       => ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ D2 ) ) ) ) ).

% add_less_le_mono
thf(fact_795_add__less__le__mono,axiom,
    ! [A: a,B: a,C: a,D2: a] :
      ( ( ord_less_a @ A @ B )
     => ( ( ord_less_eq_a @ C @ D2 )
       => ( ord_less_a @ ( plus_plus_a @ A @ C ) @ ( plus_plus_a @ B @ D2 ) ) ) ) ).

% add_less_le_mono
thf(fact_796_transpose__four__block__mat,axiom,
    ! [A2: mat_a,Nr1: nat,Nc1: nat,B2: mat_a,Nc2: nat,C2: mat_a,Nr2: nat,D: mat_a] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr1 @ Nc1 ) )
     => ( ( member_mat_a @ B2 @ ( carrier_mat_a @ Nr1 @ Nc2 ) )
       => ( ( member_mat_a @ C2 @ ( carrier_mat_a @ Nr2 @ Nc1 ) )
         => ( ( member_mat_a @ D @ ( carrier_mat_a @ Nr2 @ Nc2 ) )
           => ( ( transpose_mat_a @ ( four_block_mat_a @ A2 @ B2 @ C2 @ D ) )
              = ( four_block_mat_a @ ( transpose_mat_a @ A2 ) @ ( transpose_mat_a @ C2 ) @ ( transpose_mat_a @ B2 ) @ ( transpose_mat_a @ D ) ) ) ) ) ) ) ).

% transpose_four_block_mat
thf(fact_797_add__four__block__mat,axiom,
    ! [A1: mat_a,Nr1: nat,Nc1: nat,B1: mat_a,Nc2: nat,C1: mat_a,Nr2: nat,D1: mat_a,A22: mat_a,B22: mat_a,C22: mat_a,D22: mat_a] :
      ( ( member_mat_a @ A1 @ ( carrier_mat_a @ Nr1 @ Nc1 ) )
     => ( ( member_mat_a @ B1 @ ( carrier_mat_a @ Nr1 @ Nc2 ) )
       => ( ( member_mat_a @ C1 @ ( carrier_mat_a @ Nr2 @ Nc1 ) )
         => ( ( member_mat_a @ D1 @ ( carrier_mat_a @ Nr2 @ Nc2 ) )
           => ( ( member_mat_a @ A22 @ ( carrier_mat_a @ Nr1 @ Nc1 ) )
             => ( ( member_mat_a @ B22 @ ( carrier_mat_a @ Nr1 @ Nc2 ) )
               => ( ( member_mat_a @ C22 @ ( carrier_mat_a @ Nr2 @ Nc1 ) )
                 => ( ( member_mat_a @ D22 @ ( carrier_mat_a @ Nr2 @ Nc2 ) )
                   => ( ( plus_plus_mat_a @ ( four_block_mat_a @ A1 @ B1 @ C1 @ D1 ) @ ( four_block_mat_a @ A22 @ B22 @ C22 @ D22 ) )
                      = ( four_block_mat_a @ ( plus_plus_mat_a @ A1 @ A22 ) @ ( plus_plus_mat_a @ B1 @ B22 ) @ ( plus_plus_mat_a @ C1 @ C22 ) @ ( plus_plus_mat_a @ D1 @ D22 ) ) ) ) ) ) ) ) ) ) ) ).

% add_four_block_mat
thf(fact_798_mono__nat__linear__lb,axiom,
    ! [F: nat > nat,M: nat,K: nat] :
      ( ! [M4: nat,N3: nat] :
          ( ( ord_less_nat @ M4 @ N3 )
         => ( ord_less_nat @ ( F @ M4 ) @ ( F @ N3 ) ) )
     => ( ord_less_eq_nat @ ( plus_plus_nat @ ( F @ M ) @ K ) @ ( F @ ( plus_plus_nat @ M @ K ) ) ) ) ).

% mono_nat_linear_lb
thf(fact_799_add__decreasing,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ C @ B )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ A @ C ) @ B ) ) ) ).

% add_decreasing
thf(fact_800_add__decreasing,axiom,
    ! [A: a,C: a,B: a] :
      ( ( ord_less_eq_a @ A @ zero_zero_a )
     => ( ( ord_less_eq_a @ C @ B )
       => ( ord_less_eq_a @ ( plus_plus_a @ A @ C ) @ B ) ) ) ).

% add_decreasing
thf(fact_801_add__increasing,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ord_less_eq_nat @ B @ ( plus_plus_nat @ A @ C ) ) ) ) ).

% add_increasing
thf(fact_802_add__increasing,axiom,
    ! [A: a,B: a,C: a] :
      ( ( ord_less_eq_a @ zero_zero_a @ A )
     => ( ( ord_less_eq_a @ B @ C )
       => ( ord_less_eq_a @ B @ ( plus_plus_a @ A @ C ) ) ) ) ).

% add_increasing
thf(fact_803_add__decreasing2,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ord_less_eq_nat @ C @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ A @ B )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ A @ C ) @ B ) ) ) ).

% add_decreasing2
thf(fact_804_add__decreasing2,axiom,
    ! [C: a,A: a,B: a] :
      ( ( ord_less_eq_a @ C @ zero_zero_a )
     => ( ( ord_less_eq_a @ A @ B )
       => ( ord_less_eq_a @ ( plus_plus_a @ A @ C ) @ B ) ) ) ).

% add_decreasing2
thf(fact_805_add__increasing2,axiom,
    ! [C: nat,B: nat,A: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ C )
     => ( ( ord_less_eq_nat @ B @ A )
       => ( ord_less_eq_nat @ B @ ( plus_plus_nat @ A @ C ) ) ) ) ).

% add_increasing2
thf(fact_806_add__increasing2,axiom,
    ! [C: a,B: a,A: a] :
      ( ( ord_less_eq_a @ zero_zero_a @ C )
     => ( ( ord_less_eq_a @ B @ A )
       => ( ord_less_eq_a @ B @ ( plus_plus_a @ A @ C ) ) ) ) ).

% add_increasing2
thf(fact_807_add__nonneg__nonneg,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
       => ( ord_less_eq_nat @ zero_zero_nat @ ( plus_plus_nat @ A @ B ) ) ) ) ).

% add_nonneg_nonneg
thf(fact_808_add__nonneg__nonneg,axiom,
    ! [A: a,B: a] :
      ( ( ord_less_eq_a @ zero_zero_a @ A )
     => ( ( ord_less_eq_a @ zero_zero_a @ B )
       => ( ord_less_eq_a @ zero_zero_a @ ( plus_plus_a @ A @ B ) ) ) ) ).

% add_nonneg_nonneg
thf(fact_809_add__nonpos__nonpos,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ B @ zero_zero_nat )
       => ( ord_less_eq_nat @ ( plus_plus_nat @ A @ B ) @ zero_zero_nat ) ) ) ).

% add_nonpos_nonpos
thf(fact_810_add__nonpos__nonpos,axiom,
    ! [A: a,B: a] :
      ( ( ord_less_eq_a @ A @ zero_zero_a )
     => ( ( ord_less_eq_a @ B @ zero_zero_a )
       => ( ord_less_eq_a @ ( plus_plus_a @ A @ B ) @ zero_zero_a ) ) ) ).

% add_nonpos_nonpos
thf(fact_811_add__nonneg__eq__0__iff,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ X3 )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ Y3 )
       => ( ( ( plus_plus_nat @ X3 @ Y3 )
            = zero_zero_nat )
          = ( ( X3 = zero_zero_nat )
            & ( Y3 = zero_zero_nat ) ) ) ) ) ).

% add_nonneg_eq_0_iff
thf(fact_812_add__nonneg__eq__0__iff,axiom,
    ! [X3: a,Y3: a] :
      ( ( ord_less_eq_a @ zero_zero_a @ X3 )
     => ( ( ord_less_eq_a @ zero_zero_a @ Y3 )
       => ( ( ( plus_plus_a @ X3 @ Y3 )
            = zero_zero_a )
          = ( ( X3 = zero_zero_a )
            & ( Y3 = zero_zero_a ) ) ) ) ) ).

% add_nonneg_eq_0_iff
thf(fact_813_add__nonpos__eq__0__iff,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( ord_less_eq_nat @ X3 @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ Y3 @ zero_zero_nat )
       => ( ( ( plus_plus_nat @ X3 @ Y3 )
            = zero_zero_nat )
          = ( ( X3 = zero_zero_nat )
            & ( Y3 = zero_zero_nat ) ) ) ) ) ).

% add_nonpos_eq_0_iff
thf(fact_814_add__nonpos__eq__0__iff,axiom,
    ! [X3: a,Y3: a] :
      ( ( ord_less_eq_a @ X3 @ zero_zero_a )
     => ( ( ord_less_eq_a @ Y3 @ zero_zero_a )
       => ( ( ( plus_plus_a @ X3 @ Y3 )
            = zero_zero_a )
          = ( ( X3 = zero_zero_a )
            & ( Y3 = zero_zero_a ) ) ) ) ) ).

% add_nonpos_eq_0_iff
thf(fact_815_set__zero__plus2,axiom,
    ! [A2: set_nat,B2: set_nat] :
      ( ( member_nat @ zero_zero_nat @ A2 )
     => ( ord_less_eq_set_nat @ B2 @ ( plus_plus_set_nat @ A2 @ B2 ) ) ) ).

% set_zero_plus2
thf(fact_816_le__minus__one__simps_I3_J,axiom,
    ~ ( ord_less_eq_a @ zero_zero_a @ ( uminus_uminus_a @ one_one_a ) ) ).

% le_minus_one_simps(3)
thf(fact_817_le__minus__one__simps_I1_J,axiom,
    ord_less_eq_a @ ( uminus_uminus_a @ one_one_a ) @ zero_zero_a ).

% le_minus_one_simps(1)
thf(fact_818_mat__of__row__uminus,axiom,
    ! [V: vec_a] :
      ( ( mat_of_row_a @ ( uminus_uminus_vec_a @ V ) )
      = ( uminus_uminus_mat_a @ ( mat_of_row_a @ V ) ) ) ).

% mat_of_row_uminus
thf(fact_819_four__block__mat__mult__vec,axiom,
    ! [A2: mat_a,Nr1: nat,Nc1: nat,B2: mat_a,Nc2: nat,C2: mat_a,Nr2: nat,D: mat_a,A: vec_a,D2: vec_a] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr1 @ Nc1 ) )
     => ( ( member_mat_a @ B2 @ ( carrier_mat_a @ Nr1 @ Nc2 ) )
       => ( ( member_mat_a @ C2 @ ( carrier_mat_a @ Nr2 @ Nc1 ) )
         => ( ( member_mat_a @ D @ ( carrier_mat_a @ Nr2 @ Nc2 ) )
           => ( ( member_vec_a @ A @ ( carrier_vec_a @ Nc1 ) )
             => ( ( member_vec_a @ D2 @ ( carrier_vec_a @ Nc2 ) )
               => ( ( mult_mat_vec_a @ ( four_block_mat_a @ A2 @ B2 @ C2 @ D ) @ ( append_vec_a @ A @ D2 ) )
                  = ( append_vec_a @ ( plus_plus_vec_a @ ( mult_mat_vec_a @ A2 @ A ) @ ( mult_mat_vec_a @ B2 @ D2 ) ) @ ( plus_plus_vec_a @ ( mult_mat_vec_a @ C2 @ A ) @ ( mult_mat_vec_a @ D @ D2 ) ) ) ) ) ) ) ) ) ) ).

% four_block_mat_mult_vec
thf(fact_820_M__last__def,axiom,
    ( m_last
    = ( missin386308114684349109cols_a @ ( zero_mat_a @ nr @ nc ) @ ( uminus_uminus_mat_a @ ( one_mat_a @ nr ) ) ) ) ).

% M_last_def
thf(fact_821_zero__less__two,axiom,
    ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ one_one_nat @ one_one_nat ) ).

% zero_less_two
thf(fact_822_real__add__le__cancel__right__pos,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ( ord_less_nat @ A @ zero_zero_nat )
        | ( A = zero_zero_nat )
        | ( ord_less_nat @ zero_zero_nat @ A ) )
     => ( ( ( ord_less_nat @ B @ zero_zero_nat )
          | ( B = zero_zero_nat )
          | ( ord_less_nat @ zero_zero_nat @ B ) )
       => ( ( ord_less_eq_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) )
          = ( ord_less_eq_nat @ A @ B ) ) ) ) ).

% real_add_le_cancel_right_pos
thf(fact_823_real__add__le__cancel__right__pos,axiom,
    ! [A: a,B: a,C: a] :
      ( ( ( ord_less_a @ A @ zero_zero_a )
        | ( A = zero_zero_a )
        | ( ord_less_a @ zero_zero_a @ A ) )
     => ( ( ( ord_less_a @ B @ zero_zero_a )
          | ( B = zero_zero_a )
          | ( ord_less_a @ zero_zero_a @ B ) )
       => ( ( ord_less_eq_a @ ( plus_plus_a @ A @ C ) @ ( plus_plus_a @ B @ C ) )
          = ( ord_less_eq_a @ A @ B ) ) ) ) ).

% real_add_le_cancel_right_pos
thf(fact_824_real__add__le__cancel__left__pos,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ( ord_less_nat @ A @ zero_zero_nat )
        | ( A = zero_zero_nat )
        | ( ord_less_nat @ zero_zero_nat @ A ) )
     => ( ( ( ord_less_nat @ B @ zero_zero_nat )
          | ( B = zero_zero_nat )
          | ( ord_less_nat @ zero_zero_nat @ B ) )
       => ( ( ord_less_eq_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) )
          = ( ord_less_eq_nat @ A @ B ) ) ) ) ).

% real_add_le_cancel_left_pos
thf(fact_825_real__add__le__cancel__left__pos,axiom,
    ! [A: a,B: a,C: a] :
      ( ( ( ord_less_a @ A @ zero_zero_a )
        | ( A = zero_zero_a )
        | ( ord_less_a @ zero_zero_a @ A ) )
     => ( ( ( ord_less_a @ B @ zero_zero_a )
          | ( B = zero_zero_a )
          | ( ord_less_a @ zero_zero_a @ B ) )
       => ( ( ord_less_eq_a @ ( plus_plus_a @ C @ A ) @ ( plus_plus_a @ C @ B ) )
          = ( ord_less_eq_a @ A @ B ) ) ) ) ).

% real_add_le_cancel_left_pos
thf(fact_826_field__le__epsilon,axiom,
    ! [X3: a,Y3: a] :
      ( ! [E2: a] :
          ( ( ord_less_a @ zero_zero_a @ E2 )
         => ( ord_less_eq_a @ X3 @ ( plus_plus_a @ Y3 @ E2 ) ) )
     => ( ord_less_eq_a @ X3 @ Y3 ) ) ).

% field_le_epsilon
thf(fact_827_transpose__one,axiom,
    ! [N: nat] :
      ( ( transpose_mat_a @ ( one_mat_a @ N ) )
      = ( one_mat_a @ N ) ) ).

% transpose_one
thf(fact_828_one__mult__mat__vec,axiom,
    ! [V: vec_a,N: nat] :
      ( ( member_vec_a @ V @ ( carrier_vec_a @ N ) )
     => ( ( mult_mat_vec_a @ ( one_mat_a @ N ) @ V )
        = V ) ) ).

% one_mult_mat_vec
thf(fact_829_four__block__one__mat,axiom,
    ! [N1: nat,N2: nat] :
      ( ( four_block_mat_a @ ( one_mat_a @ N1 ) @ ( zero_mat_a @ N1 @ N2 ) @ ( zero_mat_a @ N2 @ N1 ) @ ( one_mat_a @ N2 ) )
      = ( one_mat_a @ ( plus_plus_nat @ N1 @ N2 ) ) ) ).

% four_block_one_mat
thf(fact_830_one__carrier__mat,axiom,
    ! [N: nat] : ( member_mat_a @ ( one_mat_a @ N ) @ ( carrier_mat_a @ N @ N ) ) ).

% one_carrier_mat
thf(fact_831_less__vec__def,axiom,
    ( ord_less_vec_a
    = ( ^ [V4: vec_a,W4: vec_a] :
          ( ( ord_less_eq_vec_a @ V4 @ W4 )
          & ~ ( ord_less_eq_vec_a @ W4 @ V4 ) ) ) ) ).

% less_vec_def
thf(fact_832_class__semiring_Oadd_Ofactors__equal,axiom,
    ! [A: nat,B: nat,C: nat,D2: nat] :
      ( ( A = B )
     => ( ( C = D2 )
       => ( ( plus_plus_nat @ A @ C )
          = ( plus_plus_nat @ B @ D2 ) ) ) ) ).

% class_semiring.add.factors_equal
thf(fact_833_real__linorder__cases,axiom,
    ! [A: nat,B: nat] :
      ( ( ( ord_less_nat @ A @ zero_zero_nat )
        | ( A = zero_zero_nat )
        | ( ord_less_nat @ zero_zero_nat @ A ) )
     => ( ( ( ord_less_nat @ B @ zero_zero_nat )
          | ( B = zero_zero_nat )
          | ( ord_less_nat @ zero_zero_nat @ B ) )
       => ( ~ ( ord_less_nat @ A @ B )
         => ( ( A != B )
           => ( ord_less_nat @ B @ A ) ) ) ) ) ).

% real_linorder_cases
thf(fact_834_pos__pos__linear,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ B )
       => ( ( ord_less_nat @ A @ B )
          | ( A = B )
          | ( ord_less_nat @ B @ A ) ) ) ) ).

% pos_pos_linear
thf(fact_835_neg__neg__linear,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ zero_zero_nat )
     => ( ( ord_less_nat @ B @ zero_zero_nat )
       => ( ( ord_less_nat @ A @ B )
          | ( A = B )
          | ( ord_less_nat @ B @ A ) ) ) ) ).

% neg_neg_linear
thf(fact_836_real__linear,axiom,
    ! [A: nat,B: nat] :
      ( ( ( ord_less_nat @ A @ zero_zero_nat )
        | ( A = zero_zero_nat )
        | ( ord_less_nat @ zero_zero_nat @ A ) )
     => ( ( ( ord_less_nat @ B @ zero_zero_nat )
          | ( B = zero_zero_nat )
          | ( ord_less_nat @ zero_zero_nat @ B ) )
       => ( ( ord_less_nat @ A @ B )
          | ( A = B )
          | ( ord_less_nat @ B @ A ) ) ) ) ).

% real_linear
thf(fact_837_zero__neq__one,axiom,
    zero_zero_nat != one_one_nat ).

% zero_neq_one
thf(fact_838_not__le__real,axiom,
    ! [A: nat,B: nat] :
      ( ( ( ord_less_nat @ A @ zero_zero_nat )
        | ( A = zero_zero_nat )
        | ( ord_less_nat @ zero_zero_nat @ A ) )
     => ( ( ( ord_less_nat @ B @ zero_zero_nat )
          | ( B = zero_zero_nat )
          | ( ord_less_nat @ zero_zero_nat @ B ) )
       => ( ( ~ ( ord_less_eq_nat @ B @ A ) )
          = ( ord_less_nat @ A @ B ) ) ) ) ).

% not_le_real
thf(fact_839_not__le__real,axiom,
    ! [A: a,B: a] :
      ( ( ( ord_less_a @ A @ zero_zero_a )
        | ( A = zero_zero_a )
        | ( ord_less_a @ zero_zero_a @ A ) )
     => ( ( ( ord_less_a @ B @ zero_zero_a )
          | ( B = zero_zero_a )
          | ( ord_less_a @ zero_zero_a @ B ) )
       => ( ( ~ ( ord_less_eq_a @ B @ A ) )
          = ( ord_less_a @ A @ B ) ) ) ) ).

% not_le_real
thf(fact_840_not__less__real,axiom,
    ! [A: nat,B: nat] :
      ( ( ( ord_less_nat @ A @ zero_zero_nat )
        | ( A = zero_zero_nat )
        | ( ord_less_nat @ zero_zero_nat @ A ) )
     => ( ( ( ord_less_nat @ B @ zero_zero_nat )
          | ( B = zero_zero_nat )
          | ( ord_less_nat @ zero_zero_nat @ B ) )
       => ( ( ~ ( ord_less_nat @ B @ A ) )
          = ( ord_less_eq_nat @ A @ B ) ) ) ) ).

% not_less_real
thf(fact_841_not__less__real,axiom,
    ! [A: a,B: a] :
      ( ( ( ord_less_a @ A @ zero_zero_a )
        | ( A = zero_zero_a )
        | ( ord_less_a @ zero_zero_a @ A ) )
     => ( ( ( ord_less_a @ B @ zero_zero_a )
          | ( B = zero_zero_a )
          | ( ord_less_a @ zero_zero_a @ B ) )
       => ( ( ~ ( ord_less_a @ B @ A ) )
          = ( ord_less_eq_a @ A @ B ) ) ) ) ).

% not_less_real
thf(fact_842_nonneg__linorder__cases,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
       => ( ~ ( ord_less_nat @ A @ B )
         => ( ( A != B )
           => ( ord_less_nat @ B @ A ) ) ) ) ) ).

% nonneg_linorder_cases
thf(fact_843_nonneg__linorder__cases,axiom,
    ! [A: a,B: a] :
      ( ( ord_less_eq_a @ zero_zero_a @ A )
     => ( ( ord_less_eq_a @ zero_zero_a @ B )
       => ( ~ ( ord_less_a @ A @ B )
         => ( ( A != B )
           => ( ord_less_a @ B @ A ) ) ) ) ) ).

% nonneg_linorder_cases
thf(fact_844_nonpos__linorder__cases,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ B @ zero_zero_nat )
       => ( ~ ( ord_less_nat @ A @ B )
         => ( ( A != B )
           => ( ord_less_nat @ B @ A ) ) ) ) ) ).

% nonpos_linorder_cases
thf(fact_845_nonpos__linorder__cases,axiom,
    ! [A: a,B: a] :
      ( ( ord_less_eq_a @ A @ zero_zero_a )
     => ( ( ord_less_eq_a @ B @ zero_zero_a )
       => ( ~ ( ord_less_a @ A @ B )
         => ( ( A != B )
           => ( ord_less_a @ B @ A ) ) ) ) ) ).

% nonpos_linorder_cases
thf(fact_846_not__one__le__zero,axiom,
    ~ ( ord_less_eq_nat @ one_one_nat @ zero_zero_nat ) ).

% not_one_le_zero
thf(fact_847_not__one__le__zero,axiom,
    ~ ( ord_less_eq_a @ one_one_a @ zero_zero_a ) ).

% not_one_le_zero
thf(fact_848_linordered__nonzero__semiring__class_Ozero__le__one,axiom,
    ord_less_eq_nat @ zero_zero_nat @ one_one_nat ).

% linordered_nonzero_semiring_class.zero_le_one
thf(fact_849_linordered__nonzero__semiring__class_Ozero__le__one,axiom,
    ord_less_eq_a @ zero_zero_a @ one_one_a ).

% linordered_nonzero_semiring_class.zero_le_one
thf(fact_850_zero__less__one__class_Ozero__le__one,axiom,
    ord_less_eq_nat @ zero_zero_nat @ one_one_nat ).

% zero_less_one_class.zero_le_one
thf(fact_851_zero__less__one__class_Ozero__le__one,axiom,
    ord_less_eq_a @ zero_zero_a @ one_one_a ).

% zero_less_one_class.zero_le_one
thf(fact_852_not__one__less__zero,axiom,
    ~ ( ord_less_nat @ one_one_nat @ zero_zero_nat ) ).

% not_one_less_zero
thf(fact_853_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_854_add__neg__pos__is__real,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ zero_zero_nat )
     => ( ( ord_less_nat @ zero_zero_nat @ B )
       => ( ( ord_less_nat @ ( plus_plus_nat @ A @ B ) @ zero_zero_nat )
          | ( ( plus_plus_nat @ A @ B )
            = zero_zero_nat )
          | ( ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ A @ B ) ) ) ) ) ).

% add_neg_pos_is_real
thf(fact_855_add__pos__neg__is__real,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ B @ zero_zero_nat )
       => ( ( ord_less_nat @ ( plus_plus_nat @ A @ B ) @ zero_zero_nat )
          | ( ( plus_plus_nat @ A @ B )
            = zero_zero_nat )
          | ( ord_less_nat @ zero_zero_nat @ ( plus_plus_nat @ A @ B ) ) ) ) ) ).

% add_pos_neg_is_real
thf(fact_856_real__add__less__cancel__left__pos,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ( ord_less_nat @ A @ zero_zero_nat )
        | ( A = zero_zero_nat )
        | ( ord_less_nat @ zero_zero_nat @ A ) )
     => ( ( ( ord_less_nat @ B @ zero_zero_nat )
          | ( B = zero_zero_nat )
          | ( ord_less_nat @ zero_zero_nat @ B ) )
       => ( ( ord_less_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) )
          = ( ord_less_nat @ A @ B ) ) ) ) ).

% real_add_less_cancel_left_pos
thf(fact_857_real__add__less__cancel__right__pos,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ( ord_less_nat @ A @ zero_zero_nat )
        | ( A = zero_zero_nat )
        | ( ord_less_nat @ zero_zero_nat @ A ) )
     => ( ( ( ord_less_nat @ B @ zero_zero_nat )
          | ( B = zero_zero_nat )
          | ( ord_less_nat @ zero_zero_nat @ B ) )
       => ( ( ord_less_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) )
          = ( ord_less_nat @ A @ B ) ) ) ) ).

% real_add_less_cancel_right_pos
thf(fact_858_add__mono1,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ord_less_nat @ ( plus_plus_nat @ A @ one_one_nat ) @ ( plus_plus_nat @ B @ one_one_nat ) ) ) ).

% add_mono1
thf(fact_859_less__add__one,axiom,
    ! [A: nat] : ( ord_less_nat @ A @ ( plus_plus_nat @ A @ one_one_nat ) ) ).

% less_add_one
thf(fact_860_scalar__prod__ge__0,axiom,
    ! [X3: vec_a] : ( ord_less_eq_a @ zero_zero_a @ ( scalar_prod_a @ X3 @ X3 ) ) ).

% scalar_prod_ge_0
thf(fact_861_linf__norm__vec__greater__0,axiom,
    ! [V: vec_a,N: nat] :
      ( ( member_vec_a @ V @ ( carrier_vec_a @ N ) )
     => ( ( ord_less_a @ zero_zero_a @ ( linf_norm_vec_a @ V ) )
        = ( V
         != ( zero_vec_a @ N ) ) ) ) ).

% linf_norm_vec_greater_0
thf(fact_862_linf__norm__vec__ge__0,axiom,
    ! [V: vec_a] : ( ord_less_eq_a @ zero_zero_a @ ( linf_norm_vec_a @ V ) ) ).

% linf_norm_vec_ge_0
thf(fact_863_linf__norm__zero__vec,axiom,
    ! [N: nat] :
      ( ( linf_norm_vec_a @ ( zero_vec_a @ N ) )
      = zero_zero_a ) ).

% linf_norm_zero_vec
thf(fact_864_linf__norm__vec__eq__0,axiom,
    ! [V: vec_a,N: nat] :
      ( ( member_vec_a @ V @ ( carrier_vec_a @ N ) )
     => ( ( ( linf_norm_vec_a @ V )
          = zero_zero_a )
        = ( V
          = ( zero_vec_a @ N ) ) ) ) ).

% linf_norm_vec_eq_0
thf(fact_865_psubsetD,axiom,
    ! [A2: set_vec_a,B2: set_vec_a,C: vec_a] :
      ( ( ord_less_set_vec_a @ A2 @ B2 )
     => ( ( member_vec_a @ C @ A2 )
       => ( member_vec_a @ C @ B2 ) ) ) ).

% psubsetD
thf(fact_866_psubsetD,axiom,
    ! [A2: set_mat_a,B2: set_mat_a,C: mat_a] :
      ( ( ord_less_set_mat_a @ A2 @ B2 )
     => ( ( member_mat_a @ C @ A2 )
       => ( member_mat_a @ C @ B2 ) ) ) ).

% psubsetD
thf(fact_867_bounded__Max__nat,axiom,
    ! [P: nat > $o,X3: nat,M5: nat] :
      ( ( P @ X3 )
     => ( ! [X: nat] :
            ( ( P @ X )
           => ( ord_less_eq_nat @ X @ M5 ) )
       => ~ ! [M4: nat] :
              ( ( P @ M4 )
             => ~ ! [X4: nat] :
                    ( ( P @ X4 )
                   => ( ord_less_eq_nat @ X4 @ M4 ) ) ) ) ) ).

% bounded_Max_nat
thf(fact_868_norm1__ge__0,axiom,
    ! [F: poly_a] : ( ord_less_eq_a @ zero_zero_a @ ( norm1_a @ F ) ) ).

% norm1_ge_0
thf(fact_869_mat__of__row__mult__append__rows,axiom,
    ! [Y1: vec_a,Nr1: nat,Y22: vec_a,Nr2: nat,A1: mat_a,Nc: nat,A22: mat_a] :
      ( ( member_vec_a @ Y1 @ ( carrier_vec_a @ Nr1 ) )
     => ( ( member_vec_a @ Y22 @ ( carrier_vec_a @ Nr2 ) )
       => ( ( member_mat_a @ A1 @ ( carrier_mat_a @ Nr1 @ Nc ) )
         => ( ( member_mat_a @ A22 @ ( carrier_mat_a @ Nr2 @ Nc ) )
           => ( ( times_times_mat_a @ ( mat_of_row_a @ ( append_vec_a @ Y1 @ Y22 ) ) @ ( append_rows_a @ A1 @ A22 ) )
              = ( plus_plus_mat_a @ ( times_times_mat_a @ ( mat_of_row_a @ Y1 ) @ A1 ) @ ( times_times_mat_a @ ( mat_of_row_a @ Y22 ) @ A22 ) ) ) ) ) ) ) ).

% mat_of_row_mult_append_rows
thf(fact_870_Euclid__induct,axiom,
    ! [P: nat > nat > $o,A: nat,B: nat] :
      ( ! [A4: nat,B4: nat] :
          ( ( P @ A4 @ B4 )
          = ( P @ B4 @ A4 ) )
     => ( ! [A4: nat] : ( P @ A4 @ zero_zero_nat )
       => ( ! [A4: nat,B4: nat] :
              ( ( P @ A4 @ B4 )
             => ( P @ A4 @ ( plus_plus_nat @ A4 @ B4 ) ) )
         => ( P @ A @ B ) ) ) ) ).

% Euclid_induct
thf(fact_871_set__times__intro,axiom,
    ! [A: mat_a,C2: set_mat_a,B: mat_a,D: set_mat_a] :
      ( ( member_mat_a @ A @ C2 )
     => ( ( member_mat_a @ B @ D )
       => ( member_mat_a @ ( times_times_mat_a @ A @ B ) @ ( times_1230744552615602198_mat_a @ C2 @ D ) ) ) ) ).

% set_times_intro
thf(fact_872_set__times__intro,axiom,
    ! [A: nat,C2: set_nat,B: nat,D: set_nat] :
      ( ( member_nat @ A @ C2 )
     => ( ( member_nat @ B @ D )
       => ( member_nat @ ( times_times_nat @ A @ B ) @ ( times_times_set_nat @ C2 @ D ) ) ) ) ).

% set_times_intro
thf(fact_873_mult__cancel__right,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ( times_times_nat @ A @ C )
        = ( times_times_nat @ B @ C ) )
      = ( ( C = zero_zero_nat )
        | ( A = B ) ) ) ).

% mult_cancel_right
thf(fact_874_mult__cancel__left,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ( times_times_nat @ C @ A )
        = ( times_times_nat @ C @ B ) )
      = ( ( C = zero_zero_nat )
        | ( A = B ) ) ) ).

% mult_cancel_left
thf(fact_875_mult__eq__0__iff,axiom,
    ! [A: nat,B: nat] :
      ( ( ( times_times_nat @ A @ B )
        = zero_zero_nat )
      = ( ( A = zero_zero_nat )
        | ( B = zero_zero_nat ) ) ) ).

% mult_eq_0_iff
thf(fact_876_mult__zero__right,axiom,
    ! [A: nat] :
      ( ( times_times_nat @ A @ zero_zero_nat )
      = zero_zero_nat ) ).

% mult_zero_right
thf(fact_877_mult__zero__left,axiom,
    ! [A: nat] :
      ( ( times_times_nat @ zero_zero_nat @ A )
      = zero_zero_nat ) ).

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

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

% mult_1
thf(fact_880_assoc__mult__mat,axiom,
    ! [A2: mat_a,N_1: nat,N_2: nat,B2: mat_a,N_3: nat,C2: mat_a,N_4: nat] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ N_1 @ N_2 ) )
     => ( ( member_mat_a @ B2 @ ( carrier_mat_a @ N_2 @ N_3 ) )
       => ( ( member_mat_a @ C2 @ ( carrier_mat_a @ N_3 @ N_4 ) )
         => ( ( times_times_mat_a @ ( times_times_mat_a @ A2 @ B2 ) @ C2 )
            = ( times_times_mat_a @ A2 @ ( times_times_mat_a @ B2 @ C2 ) ) ) ) ) ) ).

% assoc_mult_mat
thf(fact_881_assoc__mult__mat__vec,axiom,
    ! [A2: mat_a,N_1: nat,N_2: nat,B2: mat_a,N_3: nat,V: vec_a] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ N_1 @ N_2 ) )
     => ( ( member_mat_a @ B2 @ ( carrier_mat_a @ N_2 @ N_3 ) )
       => ( ( member_vec_a @ V @ ( carrier_vec_a @ N_3 ) )
         => ( ( mult_mat_vec_a @ ( times_times_mat_a @ A2 @ B2 ) @ V )
            = ( mult_mat_vec_a @ A2 @ ( mult_mat_vec_a @ B2 @ V ) ) ) ) ) ) ).

% assoc_mult_mat_vec
thf(fact_882_ab__semigroup__mult__class_Omult__ac_I1_J,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( times_times_nat @ ( times_times_nat @ A @ B ) @ C )
      = ( times_times_nat @ A @ ( times_times_nat @ B @ C ) ) ) ).

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

% mult.assoc
thf(fact_884_mult_Ocommute,axiom,
    ( times_times_nat
    = ( ^ [A3: nat,B3: nat] : ( times_times_nat @ B3 @ A3 ) ) ) ).

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

% mult.left_commute
thf(fact_886_set__times__elim,axiom,
    ! [X3: mat_a,A2: set_mat_a,B2: set_mat_a] :
      ( ( member_mat_a @ X3 @ ( times_1230744552615602198_mat_a @ A2 @ B2 ) )
     => ~ ! [A4: mat_a,B4: mat_a] :
            ( ( X3
              = ( times_times_mat_a @ A4 @ B4 ) )
           => ( ( member_mat_a @ A4 @ A2 )
             => ~ ( member_mat_a @ B4 @ B2 ) ) ) ) ).

% set_times_elim
thf(fact_887_set__times__elim,axiom,
    ! [X3: nat,A2: set_nat,B2: set_nat] :
      ( ( member_nat @ X3 @ ( times_times_set_nat @ A2 @ B2 ) )
     => ~ ! [A4: nat,B4: nat] :
            ( ( X3
              = ( times_times_nat @ A4 @ B4 ) )
           => ( ( member_nat @ A4 @ A2 )
             => ~ ( member_nat @ B4 @ B2 ) ) ) ) ).

% set_times_elim
thf(fact_888_mult__carrier__mat,axiom,
    ! [A2: mat_a,Nr: nat,N: nat,B2: mat_a,Nc: nat] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ N ) )
     => ( ( member_mat_a @ B2 @ ( carrier_mat_a @ N @ Nc ) )
       => ( member_mat_a @ ( times_times_mat_a @ A2 @ B2 ) @ ( carrier_mat_a @ Nr @ Nc ) ) ) ) ).

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

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

% mult.comm_neutral
thf(fact_891_combine__common__factor,axiom,
    ! [A: nat,E3: nat,B: nat,C: nat] :
      ( ( plus_plus_nat @ ( times_times_nat @ A @ E3 ) @ ( plus_plus_nat @ ( times_times_nat @ B @ E3 ) @ C ) )
      = ( plus_plus_nat @ ( times_times_nat @ ( plus_plus_nat @ A @ B ) @ E3 ) @ C ) ) ).

% combine_common_factor
thf(fact_892_distrib__right,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( times_times_nat @ ( plus_plus_nat @ A @ B ) @ C )
      = ( plus_plus_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ C ) ) ) ).

% distrib_right
thf(fact_893_distrib__left,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( times_times_nat @ A @ ( plus_plus_nat @ B @ C ) )
      = ( plus_plus_nat @ ( times_times_nat @ A @ B ) @ ( times_times_nat @ A @ C ) ) ) ).

% distrib_left
thf(fact_894_comm__semiring__class_Odistrib,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( times_times_nat @ ( plus_plus_nat @ A @ B ) @ C )
      = ( plus_plus_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ C ) ) ) ).

% comm_semiring_class.distrib
thf(fact_895_mult__right__cancel,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( C != zero_zero_nat )
     => ( ( ( times_times_nat @ A @ C )
          = ( times_times_nat @ B @ C ) )
        = ( A = B ) ) ) ).

% mult_right_cancel
thf(fact_896_mult__left__cancel,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( C != zero_zero_nat )
     => ( ( ( times_times_nat @ C @ A )
          = ( times_times_nat @ C @ B ) )
        = ( A = B ) ) ) ).

% mult_left_cancel
thf(fact_897_no__zero__divisors,axiom,
    ! [A: nat,B: nat] :
      ( ( A != zero_zero_nat )
     => ( ( B != zero_zero_nat )
       => ( ( times_times_nat @ A @ B )
         != zero_zero_nat ) ) ) ).

% no_zero_divisors
thf(fact_898_divisors__zero,axiom,
    ! [A: nat,B: nat] :
      ( ( ( times_times_nat @ A @ B )
        = zero_zero_nat )
     => ( ( A = zero_zero_nat )
        | ( B = zero_zero_nat ) ) ) ).

% divisors_zero
thf(fact_899_mult__not__zero,axiom,
    ! [A: nat,B: nat] :
      ( ( ( times_times_nat @ A @ B )
       != zero_zero_nat )
     => ( ( A != zero_zero_nat )
        & ( B != zero_zero_nat ) ) ) ).

% mult_not_zero
thf(fact_900_mult__mono,axiom,
    ! [A: nat,B: nat,C: nat,D2: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C @ D2 )
       => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
         => ( ( ord_less_eq_nat @ zero_zero_nat @ C )
           => ( ord_less_eq_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ D2 ) ) ) ) ) ) ).

% mult_mono
thf(fact_901_mult__mono,axiom,
    ! [A: a,B: a,C: a,D2: a] :
      ( ( ord_less_eq_a @ A @ B )
     => ( ( ord_less_eq_a @ C @ D2 )
       => ( ( ord_less_eq_a @ zero_zero_a @ B )
         => ( ( ord_less_eq_a @ zero_zero_a @ C )
           => ( ord_less_eq_a @ ( times_times_a @ A @ C ) @ ( times_times_a @ B @ D2 ) ) ) ) ) ) ).

% mult_mono
thf(fact_902_mult__mono_H,axiom,
    ! [A: nat,B: nat,C: nat,D2: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C @ D2 )
       => ( ( ord_less_eq_nat @ zero_zero_nat @ A )
         => ( ( ord_less_eq_nat @ zero_zero_nat @ C )
           => ( ord_less_eq_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ D2 ) ) ) ) ) ) ).

% mult_mono'
thf(fact_903_mult__mono_H,axiom,
    ! [A: a,B: a,C: a,D2: a] :
      ( ( ord_less_eq_a @ A @ B )
     => ( ( ord_less_eq_a @ C @ D2 )
       => ( ( ord_less_eq_a @ zero_zero_a @ A )
         => ( ( ord_less_eq_a @ zero_zero_a @ C )
           => ( ord_less_eq_a @ ( times_times_a @ A @ C ) @ ( times_times_a @ B @ D2 ) ) ) ) ) ) ).

% mult_mono'
thf(fact_904_zero__le__square,axiom,
    ! [A: a] : ( ord_less_eq_a @ zero_zero_a @ ( times_times_a @ A @ A ) ) ).

% zero_le_square
thf(fact_905_split__mult__pos__le,axiom,
    ! [A: a,B: a] :
      ( ( ( ( ord_less_eq_a @ zero_zero_a @ A )
          & ( ord_less_eq_a @ zero_zero_a @ B ) )
        | ( ( ord_less_eq_a @ A @ zero_zero_a )
          & ( ord_less_eq_a @ B @ zero_zero_a ) ) )
     => ( ord_less_eq_a @ zero_zero_a @ ( times_times_a @ A @ B ) ) ) ).

% split_mult_pos_le
thf(fact_906_mult__left__mono__neg,axiom,
    ! [B: a,A: a,C: a] :
      ( ( ord_less_eq_a @ B @ A )
     => ( ( ord_less_eq_a @ C @ zero_zero_a )
       => ( ord_less_eq_a @ ( times_times_a @ C @ A ) @ ( times_times_a @ C @ B ) ) ) ) ).

% mult_left_mono_neg
thf(fact_907_mult__nonpos__nonpos,axiom,
    ! [A: a,B: a] :
      ( ( ord_less_eq_a @ A @ zero_zero_a )
     => ( ( ord_less_eq_a @ B @ zero_zero_a )
       => ( ord_less_eq_a @ zero_zero_a @ ( times_times_a @ A @ B ) ) ) ) ).

% mult_nonpos_nonpos
thf(fact_908_mult__left__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ C )
       => ( ord_less_eq_nat @ ( times_times_nat @ C @ A ) @ ( times_times_nat @ C @ B ) ) ) ) ).

% mult_left_mono
thf(fact_909_mult__left__mono,axiom,
    ! [A: a,B: a,C: a] :
      ( ( ord_less_eq_a @ A @ B )
     => ( ( ord_less_eq_a @ zero_zero_a @ C )
       => ( ord_less_eq_a @ ( times_times_a @ C @ A ) @ ( times_times_a @ C @ B ) ) ) ) ).

% mult_left_mono
thf(fact_910_mult__right__mono__neg,axiom,
    ! [B: a,A: a,C: a] :
      ( ( ord_less_eq_a @ B @ A )
     => ( ( ord_less_eq_a @ C @ zero_zero_a )
       => ( ord_less_eq_a @ ( times_times_a @ A @ C ) @ ( times_times_a @ B @ C ) ) ) ) ).

% mult_right_mono_neg
thf(fact_911_mult__right__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ C )
       => ( ord_less_eq_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ C ) ) ) ) ).

% mult_right_mono
thf(fact_912_mult__right__mono,axiom,
    ! [A: a,B: a,C: a] :
      ( ( ord_less_eq_a @ A @ B )
     => ( ( ord_less_eq_a @ zero_zero_a @ C )
       => ( ord_less_eq_a @ ( times_times_a @ A @ C ) @ ( times_times_a @ B @ C ) ) ) ) ).

% mult_right_mono
thf(fact_913_mult__le__0__iff,axiom,
    ! [A: a,B: a] :
      ( ( ord_less_eq_a @ ( times_times_a @ A @ B ) @ zero_zero_a )
      = ( ( ( ord_less_eq_a @ zero_zero_a @ A )
          & ( ord_less_eq_a @ B @ zero_zero_a ) )
        | ( ( ord_less_eq_a @ A @ zero_zero_a )
          & ( ord_less_eq_a @ zero_zero_a @ B ) ) ) ) ).

% mult_le_0_iff
thf(fact_914_split__mult__neg__le,axiom,
    ! [A: nat,B: nat] :
      ( ( ( ( ord_less_eq_nat @ zero_zero_nat @ A )
          & ( ord_less_eq_nat @ B @ zero_zero_nat ) )
        | ( ( ord_less_eq_nat @ A @ zero_zero_nat )
          & ( ord_less_eq_nat @ zero_zero_nat @ B ) ) )
     => ( ord_less_eq_nat @ ( times_times_nat @ A @ B ) @ zero_zero_nat ) ) ).

% split_mult_neg_le
thf(fact_915_split__mult__neg__le,axiom,
    ! [A: a,B: a] :
      ( ( ( ( ord_less_eq_a @ zero_zero_a @ A )
          & ( ord_less_eq_a @ B @ zero_zero_a ) )
        | ( ( ord_less_eq_a @ A @ zero_zero_a )
          & ( ord_less_eq_a @ zero_zero_a @ B ) ) )
     => ( ord_less_eq_a @ ( times_times_a @ A @ B ) @ zero_zero_a ) ) ).

% split_mult_neg_le
thf(fact_916_mult__nonneg__nonneg,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
       => ( ord_less_eq_nat @ zero_zero_nat @ ( times_times_nat @ A @ B ) ) ) ) ).

% mult_nonneg_nonneg
thf(fact_917_mult__nonneg__nonneg,axiom,
    ! [A: a,B: a] :
      ( ( ord_less_eq_a @ zero_zero_a @ A )
     => ( ( ord_less_eq_a @ zero_zero_a @ B )
       => ( ord_less_eq_a @ zero_zero_a @ ( times_times_a @ A @ B ) ) ) ) ).

% mult_nonneg_nonneg
thf(fact_918_mult__nonneg__nonpos,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_eq_nat @ B @ zero_zero_nat )
       => ( ord_less_eq_nat @ ( times_times_nat @ A @ B ) @ zero_zero_nat ) ) ) ).

% mult_nonneg_nonpos
thf(fact_919_mult__nonneg__nonpos,axiom,
    ! [A: a,B: a] :
      ( ( ord_less_eq_a @ zero_zero_a @ A )
     => ( ( ord_less_eq_a @ B @ zero_zero_a )
       => ( ord_less_eq_a @ ( times_times_a @ A @ B ) @ zero_zero_a ) ) ) ).

% mult_nonneg_nonpos
thf(fact_920_mult__nonpos__nonneg,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ zero_zero_nat )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
       => ( ord_less_eq_nat @ ( times_times_nat @ A @ B ) @ zero_zero_nat ) ) ) ).

% mult_nonpos_nonneg
thf(fact_921_mult__nonpos__nonneg,axiom,
    ! [A: a,B: a] :
      ( ( ord_less_eq_a @ A @ zero_zero_a )
     => ( ( ord_less_eq_a @ zero_zero_a @ B )
       => ( ord_less_eq_a @ ( times_times_a @ A @ B ) @ zero_zero_a ) ) ) ).

% mult_nonpos_nonneg
thf(fact_922_mult__nonneg__nonpos2,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ zero_zero_nat @ A )
     => ( ( ord_less_eq_nat @ B @ zero_zero_nat )
       => ( ord_less_eq_nat @ ( times_times_nat @ B @ A ) @ zero_zero_nat ) ) ) ).

% mult_nonneg_nonpos2
thf(fact_923_mult__nonneg__nonpos2,axiom,
    ! [A: a,B: a] :
      ( ( ord_less_eq_a @ zero_zero_a @ A )
     => ( ( ord_less_eq_a @ B @ zero_zero_a )
       => ( ord_less_eq_a @ ( times_times_a @ B @ A ) @ zero_zero_a ) ) ) ).

% mult_nonneg_nonpos2
thf(fact_924_zero__le__mult__iff,axiom,
    ! [A: a,B: a] :
      ( ( ord_less_eq_a @ zero_zero_a @ ( times_times_a @ A @ B ) )
      = ( ( ( ord_less_eq_a @ zero_zero_a @ A )
          & ( ord_less_eq_a @ zero_zero_a @ B ) )
        | ( ( ord_less_eq_a @ A @ zero_zero_a )
          & ( ord_less_eq_a @ B @ zero_zero_a ) ) ) ) ).

% zero_le_mult_iff
thf(fact_925_ordered__comm__semiring__class_Ocomm__mult__left__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ C )
       => ( ord_less_eq_nat @ ( times_times_nat @ C @ A ) @ ( times_times_nat @ C @ B ) ) ) ) ).

% ordered_comm_semiring_class.comm_mult_left_mono
thf(fact_926_ordered__comm__semiring__class_Ocomm__mult__left__mono,axiom,
    ! [A: a,B: a,C: a] :
      ( ( ord_less_eq_a @ A @ B )
     => ( ( ord_less_eq_a @ zero_zero_a @ C )
       => ( ord_less_eq_a @ ( times_times_a @ C @ A ) @ ( times_times_a @ C @ B ) ) ) ) ).

% ordered_comm_semiring_class.comm_mult_left_mono
thf(fact_927_linordered__comm__semiring__strict__class_Ocomm__mult__strict__left__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_nat @ zero_zero_nat @ C )
       => ( ord_less_nat @ ( times_times_nat @ C @ A ) @ ( times_times_nat @ C @ B ) ) ) ) ).

% linordered_comm_semiring_strict_class.comm_mult_strict_left_mono
thf(fact_928_real__mult__less__cancel__right__pos,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ( ord_less_nat @ A @ zero_zero_nat )
        | ( A = zero_zero_nat )
        | ( ord_less_nat @ zero_zero_nat @ A ) )
     => ( ( ( ord_less_nat @ B @ zero_zero_nat )
          | ( B = zero_zero_nat )
          | ( ord_less_nat @ zero_zero_nat @ B ) )
       => ( ( ord_less_nat @ zero_zero_nat @ C )
         => ( ( ord_less_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ C ) )
            = ( ord_less_nat @ A @ B ) ) ) ) ) ).

% real_mult_less_cancel_right_pos
thf(fact_929_linordered__semiring__strict__class_Omult__strict__right__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_nat @ zero_zero_nat @ C )
       => ( ord_less_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ C ) ) ) ) ).

% linordered_semiring_strict_class.mult_strict_right_mono
thf(fact_930_real__mult__less__cancel__left__pos,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ( ord_less_nat @ A @ zero_zero_nat )
        | ( A = zero_zero_nat )
        | ( ord_less_nat @ zero_zero_nat @ A ) )
     => ( ( ( ord_less_nat @ B @ zero_zero_nat )
          | ( B = zero_zero_nat )
          | ( ord_less_nat @ zero_zero_nat @ B ) )
       => ( ( ord_less_nat @ zero_zero_nat @ C )
         => ( ( ord_less_nat @ ( times_times_nat @ C @ A ) @ ( times_times_nat @ C @ B ) )
            = ( ord_less_nat @ A @ B ) ) ) ) ) ).

% real_mult_less_cancel_left_pos
thf(fact_931_linordered__semiring__strict__class_Omult__strict__left__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_nat @ zero_zero_nat @ C )
       => ( ord_less_nat @ ( times_times_nat @ C @ A ) @ ( times_times_nat @ C @ B ) ) ) ) ).

% linordered_semiring_strict_class.mult_strict_left_mono
thf(fact_932_zero__less__mult__pos2,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( times_times_nat @ B @ A ) )
     => ( ( ord_less_nat @ zero_zero_nat @ A )
       => ( ord_less_nat @ zero_zero_nat @ B ) ) ) ).

% zero_less_mult_pos2
thf(fact_933_zero__less__mult__pos,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( times_times_nat @ A @ B ) )
     => ( ( ord_less_nat @ zero_zero_nat @ A )
       => ( ord_less_nat @ zero_zero_nat @ B ) ) ) ).

% zero_less_mult_pos
thf(fact_934_linordered__semiring__strict__class_Omult__pos__neg2,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ B @ zero_zero_nat )
       => ( ord_less_nat @ ( times_times_nat @ B @ A ) @ zero_zero_nat ) ) ) ).

% linordered_semiring_strict_class.mult_pos_neg2
thf(fact_935_linordered__semiring__strict__class_Omult__pos__pos,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ B )
       => ( ord_less_nat @ zero_zero_nat @ ( times_times_nat @ A @ B ) ) ) ) ).

% linordered_semiring_strict_class.mult_pos_pos
thf(fact_936_linordered__semiring__strict__class_Omult__pos__neg,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ B @ zero_zero_nat )
       => ( ord_less_nat @ ( times_times_nat @ A @ B ) @ zero_zero_nat ) ) ) ).

% linordered_semiring_strict_class.mult_pos_neg
thf(fact_937_linordered__semiring__strict__class_Omult__neg__pos,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ zero_zero_nat )
     => ( ( ord_less_nat @ zero_zero_nat @ B )
       => ( ord_less_nat @ ( times_times_nat @ A @ B ) @ zero_zero_nat ) ) ) ).

% linordered_semiring_strict_class.mult_neg_pos
thf(fact_938_real__mult__eq__0__iff,axiom,
    ! [A: nat,B: nat] :
      ( ( ( ord_less_nat @ A @ zero_zero_nat )
        | ( A = zero_zero_nat )
        | ( ord_less_nat @ zero_zero_nat @ A ) )
     => ( ( ( ord_less_nat @ B @ zero_zero_nat )
          | ( B = zero_zero_nat )
          | ( ord_less_nat @ zero_zero_nat @ B ) )
       => ( ( ( times_times_nat @ A @ B )
            = zero_zero_nat )
          = ( ( A = zero_zero_nat )
            | ( B = zero_zero_nat ) ) ) ) ) ).

% real_mult_eq_0_iff
thf(fact_939_semiring__real__line__class_Omult__neg__neg,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ zero_zero_nat )
     => ( ( ord_less_nat @ B @ zero_zero_nat )
       => ( ord_less_nat @ zero_zero_nat @ ( times_times_nat @ A @ B ) ) ) ) ).

% semiring_real_line_class.mult_neg_neg
thf(fact_940_ordered__semiring__strict__class_Omult__neg__pos,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ A @ zero_zero_nat )
     => ( ( ord_less_nat @ zero_zero_nat @ B )
       => ( ord_less_nat @ ( times_times_nat @ A @ B ) @ zero_zero_nat ) ) ) ).

% ordered_semiring_strict_class.mult_neg_pos
thf(fact_941_ordered__semiring__strict__class_Omult__pos__neg,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ B @ zero_zero_nat )
       => ( ord_less_nat @ ( times_times_nat @ A @ B ) @ zero_zero_nat ) ) ) ).

% ordered_semiring_strict_class.mult_pos_neg
thf(fact_942_ordered__semiring__strict__class_Omult__pos__pos,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ zero_zero_nat @ B )
       => ( ord_less_nat @ zero_zero_nat @ ( times_times_nat @ A @ B ) ) ) ) ).

% ordered_semiring_strict_class.mult_pos_pos
thf(fact_943_ordered__semiring__strict__class_Omult__pos__neg2,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ A )
     => ( ( ord_less_nat @ B @ zero_zero_nat )
       => ( ord_less_nat @ ( times_times_nat @ B @ A ) @ zero_zero_nat ) ) ) ).

% ordered_semiring_strict_class.mult_pos_neg2
thf(fact_944_ordered__semiring__strict__class_Omult__strict__left__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_nat @ zero_zero_nat @ C )
       => ( ord_less_nat @ ( times_times_nat @ C @ A ) @ ( times_times_nat @ C @ B ) ) ) ) ).

% ordered_semiring_strict_class.mult_strict_left_mono
thf(fact_945_ordered__semiring__strict__class_Omult__strict__right__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_nat @ zero_zero_nat @ C )
       => ( ord_less_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ C ) ) ) ) ).

% ordered_semiring_strict_class.mult_strict_right_mono
thf(fact_946_less__1__mult,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ one_one_nat @ M )
     => ( ( ord_less_nat @ one_one_nat @ N )
       => ( ord_less_nat @ one_one_nat @ ( times_times_nat @ M @ N ) ) ) ) ).

% less_1_mult
thf(fact_947_left__mult__one__mat,axiom,
    ! [A2: mat_a,Nr: nat,Nc: nat] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( ( times_times_mat_a @ ( one_mat_a @ Nr ) @ A2 )
        = A2 ) ) ).

% left_mult_one_mat
thf(fact_948_right__mult__one__mat,axiom,
    ! [A2: mat_a,Nr: nat,Nc: nat] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( ( times_times_mat_a @ A2 @ ( one_mat_a @ Nc ) )
        = A2 ) ) ).

% right_mult_one_mat
thf(fact_949_left__mult__zero__mat,axiom,
    ! [A2: mat_a,N: nat,Nc: nat,Nr: nat] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ N @ Nc ) )
     => ( ( times_times_mat_a @ ( zero_mat_a @ Nr @ N ) @ A2 )
        = ( zero_mat_a @ Nr @ Nc ) ) ) ).

% left_mult_zero_mat
thf(fact_950_right__mult__zero__mat,axiom,
    ! [A2: mat_a,Nr: nat,N: nat,Nc: nat] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ N ) )
     => ( ( times_times_mat_a @ A2 @ ( zero_mat_a @ N @ Nc ) )
        = ( zero_mat_a @ Nr @ Nc ) ) ) ).

% right_mult_zero_mat
thf(fact_951_transpose__mult,axiom,
    ! [A2: mat_a,Nr: nat,N: nat,B2: mat_a,Nc: nat] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ N ) )
     => ( ( member_mat_a @ B2 @ ( carrier_mat_a @ N @ Nc ) )
       => ( ( transpose_mat_a @ ( times_times_mat_a @ A2 @ B2 ) )
          = ( times_times_mat_a @ ( transpose_mat_a @ B2 ) @ ( transpose_mat_a @ A2 ) ) ) ) ) ).

% transpose_mult
thf(fact_952_mult__add__distrib__mat,axiom,
    ! [A2: mat_a,Nr: nat,N: nat,B2: mat_a,Nc: nat,C2: mat_a] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ N ) )
     => ( ( member_mat_a @ B2 @ ( carrier_mat_a @ N @ Nc ) )
       => ( ( member_mat_a @ C2 @ ( carrier_mat_a @ N @ Nc ) )
         => ( ( times_times_mat_a @ A2 @ ( plus_plus_mat_a @ B2 @ C2 ) )
            = ( plus_plus_mat_a @ ( times_times_mat_a @ A2 @ B2 ) @ ( times_times_mat_a @ A2 @ C2 ) ) ) ) ) ) ).

% mult_add_distrib_mat
thf(fact_953_add__mult__distrib__mat,axiom,
    ! [A2: mat_a,Nr: nat,N: nat,B2: mat_a,C2: mat_a,Nc: nat] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ N ) )
     => ( ( member_mat_a @ B2 @ ( carrier_mat_a @ Nr @ N ) )
       => ( ( member_mat_a @ C2 @ ( carrier_mat_a @ N @ Nc ) )
         => ( ( times_times_mat_a @ ( plus_plus_mat_a @ A2 @ B2 ) @ C2 )
            = ( plus_plus_mat_a @ ( times_times_mat_a @ A2 @ C2 ) @ ( times_times_mat_a @ B2 @ C2 ) ) ) ) ) ) ).

% add_mult_distrib_mat
thf(fact_954_mult__le__cancel__left,axiom,
    ! [C: a,A: a,B: a] :
      ( ( ord_less_eq_a @ ( times_times_a @ C @ A ) @ ( times_times_a @ C @ B ) )
      = ( ( ( ord_less_a @ zero_zero_a @ C )
         => ( ord_less_eq_a @ A @ B ) )
        & ( ( ord_less_a @ C @ zero_zero_a )
         => ( ord_less_eq_a @ B @ A ) ) ) ) ).

% mult_le_cancel_left
thf(fact_955_mult__le__cancel__right,axiom,
    ! [A: a,C: a,B: a] :
      ( ( ord_less_eq_a @ ( times_times_a @ A @ C ) @ ( times_times_a @ B @ C ) )
      = ( ( ( ord_less_a @ zero_zero_a @ C )
         => ( ord_less_eq_a @ A @ B ) )
        & ( ( ord_less_a @ C @ zero_zero_a )
         => ( ord_less_eq_a @ B @ A ) ) ) ) ).

% mult_le_cancel_right
thf(fact_956_mult__left__less__imp__less,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ord_less_nat @ ( times_times_nat @ C @ A ) @ ( times_times_nat @ C @ B ) )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ C )
       => ( ord_less_nat @ A @ B ) ) ) ).

% mult_left_less_imp_less
thf(fact_957_mult__left__less__imp__less,axiom,
    ! [C: a,A: a,B: a] :
      ( ( ord_less_a @ ( times_times_a @ C @ A ) @ ( times_times_a @ C @ B ) )
     => ( ( ord_less_eq_a @ zero_zero_a @ C )
       => ( ord_less_a @ A @ B ) ) ) ).

% mult_left_less_imp_less
thf(fact_958_linordered__semiring__strict__class_Omult__strict__mono,axiom,
    ! [A: nat,B: nat,C: nat,D2: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_nat @ C @ D2 )
       => ( ( ord_less_nat @ zero_zero_nat @ B )
         => ( ( ord_less_eq_nat @ zero_zero_nat @ C )
           => ( ord_less_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ D2 ) ) ) ) ) ) ).

% linordered_semiring_strict_class.mult_strict_mono
thf(fact_959_linordered__semiring__strict__class_Omult__strict__mono,axiom,
    ! [A: a,B: a,C: a,D2: a] :
      ( ( ord_less_a @ A @ B )
     => ( ( ord_less_a @ C @ D2 )
       => ( ( ord_less_a @ zero_zero_a @ B )
         => ( ( ord_less_eq_a @ zero_zero_a @ C )
           => ( ord_less_a @ ( times_times_a @ A @ C ) @ ( times_times_a @ B @ D2 ) ) ) ) ) ) ).

% linordered_semiring_strict_class.mult_strict_mono
thf(fact_960_mult__less__cancel__left,axiom,
    ! [C: a,A: a,B: a] :
      ( ( ord_less_a @ ( times_times_a @ C @ A ) @ ( times_times_a @ C @ B ) )
      = ( ( ( ord_less_eq_a @ zero_zero_a @ C )
         => ( ord_less_a @ A @ B ) )
        & ( ( ord_less_eq_a @ C @ zero_zero_a )
         => ( ord_less_a @ B @ A ) ) ) ) ).

% mult_less_cancel_left
thf(fact_961_mult__right__less__imp__less,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ C ) )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ C )
       => ( ord_less_nat @ A @ B ) ) ) ).

% mult_right_less_imp_less
thf(fact_962_mult__right__less__imp__less,axiom,
    ! [A: a,C: a,B: a] :
      ( ( ord_less_a @ ( times_times_a @ A @ C ) @ ( times_times_a @ B @ C ) )
     => ( ( ord_less_eq_a @ zero_zero_a @ C )
       => ( ord_less_a @ A @ B ) ) ) ).

% mult_right_less_imp_less
thf(fact_963_linordered__semiring__strict__class_Omult__strict__mono_H,axiom,
    ! [A: nat,B: nat,C: nat,D2: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_nat @ C @ D2 )
       => ( ( ord_less_eq_nat @ zero_zero_nat @ A )
         => ( ( ord_less_eq_nat @ zero_zero_nat @ C )
           => ( ord_less_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ D2 ) ) ) ) ) ) ).

% linordered_semiring_strict_class.mult_strict_mono'
thf(fact_964_linordered__semiring__strict__class_Omult__strict__mono_H,axiom,
    ! [A: a,B: a,C: a,D2: a] :
      ( ( ord_less_a @ A @ B )
     => ( ( ord_less_a @ C @ D2 )
       => ( ( ord_less_eq_a @ zero_zero_a @ A )
         => ( ( ord_less_eq_a @ zero_zero_a @ C )
           => ( ord_less_a @ ( times_times_a @ A @ C ) @ ( times_times_a @ B @ D2 ) ) ) ) ) ) ).

% linordered_semiring_strict_class.mult_strict_mono'
thf(fact_965_mult__less__cancel__right,axiom,
    ! [A: a,C: a,B: a] :
      ( ( ord_less_a @ ( times_times_a @ A @ C ) @ ( times_times_a @ B @ C ) )
      = ( ( ( ord_less_eq_a @ zero_zero_a @ C )
         => ( ord_less_a @ A @ B ) )
        & ( ( ord_less_eq_a @ C @ zero_zero_a )
         => ( ord_less_a @ B @ A ) ) ) ) ).

% mult_less_cancel_right
thf(fact_966_mult__le__cancel__left__neg,axiom,
    ! [C: a,A: a,B: a] :
      ( ( ord_less_a @ C @ zero_zero_a )
     => ( ( ord_less_eq_a @ ( times_times_a @ C @ A ) @ ( times_times_a @ C @ B ) )
        = ( ord_less_eq_a @ B @ A ) ) ) ).

% mult_le_cancel_left_neg
thf(fact_967_mult__le__cancel__left__pos,axiom,
    ! [C: a,A: a,B: a] :
      ( ( ord_less_a @ zero_zero_a @ C )
     => ( ( ord_less_eq_a @ ( times_times_a @ C @ A ) @ ( times_times_a @ C @ B ) )
        = ( ord_less_eq_a @ A @ B ) ) ) ).

% mult_le_cancel_left_pos
thf(fact_968_mult__left__le__imp__le,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( times_times_nat @ C @ A ) @ ( times_times_nat @ C @ B ) )
     => ( ( ord_less_nat @ zero_zero_nat @ C )
       => ( ord_less_eq_nat @ A @ B ) ) ) ).

% mult_left_le_imp_le
thf(fact_969_mult__left__le__imp__le,axiom,
    ! [C: a,A: a,B: a] :
      ( ( ord_less_eq_a @ ( times_times_a @ C @ A ) @ ( times_times_a @ C @ B ) )
     => ( ( ord_less_a @ zero_zero_a @ C )
       => ( ord_less_eq_a @ A @ B ) ) ) ).

% mult_left_le_imp_le
thf(fact_970_real__mult__le__cancel__left__pos,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ( ord_less_nat @ A @ zero_zero_nat )
        | ( A = zero_zero_nat )
        | ( ord_less_nat @ zero_zero_nat @ A ) )
     => ( ( ( ord_less_nat @ B @ zero_zero_nat )
          | ( B = zero_zero_nat )
          | ( ord_less_nat @ zero_zero_nat @ B ) )
       => ( ( ord_less_nat @ zero_zero_nat @ C )
         => ( ( ord_less_eq_nat @ ( times_times_nat @ C @ A ) @ ( times_times_nat @ C @ B ) )
            = ( ord_less_eq_nat @ A @ B ) ) ) ) ) ).

% real_mult_le_cancel_left_pos
thf(fact_971_real__mult__le__cancel__left__pos,axiom,
    ! [A: a,B: a,C: a] :
      ( ( ( ord_less_a @ A @ zero_zero_a )
        | ( A = zero_zero_a )
        | ( ord_less_a @ zero_zero_a @ A ) )
     => ( ( ( ord_less_a @ B @ zero_zero_a )
          | ( B = zero_zero_a )
          | ( ord_less_a @ zero_zero_a @ B ) )
       => ( ( ord_less_a @ zero_zero_a @ C )
         => ( ( ord_less_eq_a @ ( times_times_a @ C @ A ) @ ( times_times_a @ C @ B ) )
            = ( ord_less_eq_a @ A @ B ) ) ) ) ) ).

% real_mult_le_cancel_left_pos
thf(fact_972_mult__right__le__imp__le,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_eq_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ C ) )
     => ( ( ord_less_nat @ zero_zero_nat @ C )
       => ( ord_less_eq_nat @ A @ B ) ) ) ).

% mult_right_le_imp_le
thf(fact_973_mult__right__le__imp__le,axiom,
    ! [A: a,C: a,B: a] :
      ( ( ord_less_eq_a @ ( times_times_a @ A @ C ) @ ( times_times_a @ B @ C ) )
     => ( ( ord_less_a @ zero_zero_a @ C )
       => ( ord_less_eq_a @ A @ B ) ) ) ).

% mult_right_le_imp_le
thf(fact_974_real__mult__le__cancel__right__pos,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ( ord_less_nat @ A @ zero_zero_nat )
        | ( A = zero_zero_nat )
        | ( ord_less_nat @ zero_zero_nat @ A ) )
     => ( ( ( ord_less_nat @ B @ zero_zero_nat )
          | ( B = zero_zero_nat )
          | ( ord_less_nat @ zero_zero_nat @ B ) )
       => ( ( ord_less_nat @ zero_zero_nat @ C )
         => ( ( ord_less_eq_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ C ) )
            = ( ord_less_eq_nat @ A @ B ) ) ) ) ) ).

% real_mult_le_cancel_right_pos
thf(fact_975_real__mult__le__cancel__right__pos,axiom,
    ! [A: a,B: a,C: a] :
      ( ( ( ord_less_a @ A @ zero_zero_a )
        | ( A = zero_zero_a )
        | ( ord_less_a @ zero_zero_a @ A ) )
     => ( ( ( ord_less_a @ B @ zero_zero_a )
          | ( B = zero_zero_a )
          | ( ord_less_a @ zero_zero_a @ B ) )
       => ( ( ord_less_a @ zero_zero_a @ C )
         => ( ( ord_less_eq_a @ ( times_times_a @ A @ C ) @ ( times_times_a @ B @ C ) )
            = ( ord_less_eq_a @ A @ B ) ) ) ) ) ).

% real_mult_le_cancel_right_pos
thf(fact_976_linordered__semiring__strict__class_Omult__le__less__imp__less,axiom,
    ! [A: nat,B: nat,C: nat,D2: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_nat @ C @ D2 )
       => ( ( ord_less_nat @ zero_zero_nat @ A )
         => ( ( ord_less_eq_nat @ zero_zero_nat @ C )
           => ( ord_less_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ D2 ) ) ) ) ) ) ).

% linordered_semiring_strict_class.mult_le_less_imp_less
thf(fact_977_linordered__semiring__strict__class_Omult__le__less__imp__less,axiom,
    ! [A: a,B: a,C: a,D2: a] :
      ( ( ord_less_eq_a @ A @ B )
     => ( ( ord_less_a @ C @ D2 )
       => ( ( ord_less_a @ zero_zero_a @ A )
         => ( ( ord_less_eq_a @ zero_zero_a @ C )
           => ( ord_less_a @ ( times_times_a @ A @ C ) @ ( times_times_a @ B @ D2 ) ) ) ) ) ) ).

% linordered_semiring_strict_class.mult_le_less_imp_less
thf(fact_978_linordered__semiring__strict__class_Omult__less__le__imp__less,axiom,
    ! [A: nat,B: nat,C: nat,D2: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C @ D2 )
       => ( ( ord_less_eq_nat @ zero_zero_nat @ A )
         => ( ( ord_less_nat @ zero_zero_nat @ C )
           => ( ord_less_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ D2 ) ) ) ) ) ) ).

% linordered_semiring_strict_class.mult_less_le_imp_less
thf(fact_979_linordered__semiring__strict__class_Omult__less__le__imp__less,axiom,
    ! [A: a,B: a,C: a,D2: a] :
      ( ( ord_less_a @ A @ B )
     => ( ( ord_less_eq_a @ C @ D2 )
       => ( ( ord_less_eq_a @ zero_zero_a @ A )
         => ( ( ord_less_a @ zero_zero_a @ C )
           => ( ord_less_a @ ( times_times_a @ A @ C ) @ ( times_times_a @ B @ D2 ) ) ) ) ) ) ).

% linordered_semiring_strict_class.mult_less_le_imp_less
thf(fact_980_ordered__semiring__strict__class_Omult__strict__mono,axiom,
    ! [A: nat,B: nat,C: nat,D2: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_nat @ C @ D2 )
       => ( ( ord_less_nat @ zero_zero_nat @ B )
         => ( ( ord_less_eq_nat @ zero_zero_nat @ C )
           => ( ord_less_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ D2 ) ) ) ) ) ) ).

% ordered_semiring_strict_class.mult_strict_mono
thf(fact_981_ordered__semiring__strict__class_Omult__strict__mono,axiom,
    ! [A: a,B: a,C: a,D2: a] :
      ( ( ord_less_a @ A @ B )
     => ( ( ord_less_a @ C @ D2 )
       => ( ( ord_less_a @ zero_zero_a @ B )
         => ( ( ord_less_eq_a @ zero_zero_a @ C )
           => ( ord_less_a @ ( times_times_a @ A @ C ) @ ( times_times_a @ B @ D2 ) ) ) ) ) ) ).

% ordered_semiring_strict_class.mult_strict_mono
thf(fact_982_ordered__semiring__strict__class_Omult__strict__mono_H,axiom,
    ! [A: nat,B: nat,C: nat,D2: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_nat @ C @ D2 )
       => ( ( ord_less_eq_nat @ zero_zero_nat @ A )
         => ( ( ord_less_eq_nat @ zero_zero_nat @ C )
           => ( ord_less_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ D2 ) ) ) ) ) ) ).

% ordered_semiring_strict_class.mult_strict_mono'
thf(fact_983_ordered__semiring__strict__class_Omult__strict__mono_H,axiom,
    ! [A: a,B: a,C: a,D2: a] :
      ( ( ord_less_a @ A @ B )
     => ( ( ord_less_a @ C @ D2 )
       => ( ( ord_less_eq_a @ zero_zero_a @ A )
         => ( ( ord_less_eq_a @ zero_zero_a @ C )
           => ( ord_less_a @ ( times_times_a @ A @ C ) @ ( times_times_a @ B @ D2 ) ) ) ) ) ) ).

% ordered_semiring_strict_class.mult_strict_mono'
thf(fact_984_ordered__semiring__strict__class_Omult__le__less__imp__less,axiom,
    ! [A: nat,B: nat,C: nat,D2: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_nat @ C @ D2 )
       => ( ( ord_less_nat @ zero_zero_nat @ A )
         => ( ( ord_less_eq_nat @ zero_zero_nat @ C )
           => ( ord_less_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ D2 ) ) ) ) ) ) ).

% ordered_semiring_strict_class.mult_le_less_imp_less
thf(fact_985_ordered__semiring__strict__class_Omult__le__less__imp__less,axiom,
    ! [A: a,B: a,C: a,D2: a] :
      ( ( ord_less_eq_a @ A @ B )
     => ( ( ord_less_a @ C @ D2 )
       => ( ( ord_less_a @ zero_zero_a @ A )
         => ( ( ord_less_eq_a @ zero_zero_a @ C )
           => ( ord_less_a @ ( times_times_a @ A @ C ) @ ( times_times_a @ B @ D2 ) ) ) ) ) ) ).

% ordered_semiring_strict_class.mult_le_less_imp_less
thf(fact_986_ordered__semiring__strict__class_Omult__less__le__imp__less,axiom,
    ! [A: nat,B: nat,C: nat,D2: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C @ D2 )
       => ( ( ord_less_eq_nat @ zero_zero_nat @ A )
         => ( ( ord_less_nat @ zero_zero_nat @ C )
           => ( ord_less_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ D2 ) ) ) ) ) ) ).

% ordered_semiring_strict_class.mult_less_le_imp_less
thf(fact_987_ordered__semiring__strict__class_Omult__less__le__imp__less,axiom,
    ! [A: a,B: a,C: a,D2: a] :
      ( ( ord_less_a @ A @ B )
     => ( ( ord_less_eq_a @ C @ D2 )
       => ( ( ord_less_eq_a @ zero_zero_a @ A )
         => ( ( ord_less_a @ zero_zero_a @ C )
           => ( ord_less_a @ ( times_times_a @ A @ C ) @ ( times_times_a @ B @ D2 ) ) ) ) ) ) ).

% ordered_semiring_strict_class.mult_less_le_imp_less
thf(fact_988_mult__left__le__one__le,axiom,
    ! [X3: a,Y3: a] :
      ( ( ord_less_eq_a @ zero_zero_a @ X3 )
     => ( ( ord_less_eq_a @ zero_zero_a @ Y3 )
       => ( ( ord_less_eq_a @ Y3 @ one_one_a )
         => ( ord_less_eq_a @ ( times_times_a @ Y3 @ X3 ) @ X3 ) ) ) ) ).

% mult_left_le_one_le
thf(fact_989_mult__right__le__one__le,axiom,
    ! [X3: a,Y3: a] :
      ( ( ord_less_eq_a @ zero_zero_a @ X3 )
     => ( ( ord_less_eq_a @ zero_zero_a @ Y3 )
       => ( ( ord_less_eq_a @ Y3 @ one_one_a )
         => ( ord_less_eq_a @ ( times_times_a @ X3 @ Y3 ) @ X3 ) ) ) ) ).

% mult_right_le_one_le
thf(fact_990_mult__le__one,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ one_one_nat )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ B )
       => ( ( ord_less_eq_nat @ B @ one_one_nat )
         => ( ord_less_eq_nat @ ( times_times_nat @ A @ B ) @ one_one_nat ) ) ) ) ).

% mult_le_one
thf(fact_991_mult__le__one,axiom,
    ! [A: a,B: a] :
      ( ( ord_less_eq_a @ A @ one_one_a )
     => ( ( ord_less_eq_a @ zero_zero_a @ B )
       => ( ( ord_less_eq_a @ B @ one_one_a )
         => ( ord_less_eq_a @ ( times_times_a @ A @ B ) @ one_one_a ) ) ) ) ).

% mult_le_one
thf(fact_992_mult__left__le,axiom,
    ! [C: nat,A: nat] :
      ( ( ord_less_eq_nat @ C @ one_one_nat )
     => ( ( ord_less_eq_nat @ zero_zero_nat @ A )
       => ( ord_less_eq_nat @ ( times_times_nat @ A @ C ) @ A ) ) ) ).

% mult_left_le
thf(fact_993_mult__left__le,axiom,
    ! [C: a,A: a] :
      ( ( ord_less_eq_a @ C @ one_one_a )
     => ( ( ord_less_eq_a @ zero_zero_a @ A )
       => ( ord_less_eq_a @ ( times_times_a @ A @ C ) @ A ) ) ) ).

% mult_left_le
thf(fact_994_sum__squares__ge__zero,axiom,
    ! [X3: a,Y3: a] : ( ord_less_eq_a @ zero_zero_a @ ( plus_plus_a @ ( times_times_a @ X3 @ X3 ) @ ( times_times_a @ Y3 @ Y3 ) ) ) ).

% sum_squares_ge_zero
thf(fact_995_mult__four__block__mat,axiom,
    ! [A1: mat_a,Nr1: nat,N1: nat,B1: mat_a,N2: nat,C1: mat_a,Nr2: nat,D1: mat_a,A22: mat_a,Nc1: nat,B22: mat_a,Nc2: nat,C22: mat_a,D22: mat_a] :
      ( ( member_mat_a @ A1 @ ( carrier_mat_a @ Nr1 @ N1 ) )
     => ( ( member_mat_a @ B1 @ ( carrier_mat_a @ Nr1 @ N2 ) )
       => ( ( member_mat_a @ C1 @ ( carrier_mat_a @ Nr2 @ N1 ) )
         => ( ( member_mat_a @ D1 @ ( carrier_mat_a @ Nr2 @ N2 ) )
           => ( ( member_mat_a @ A22 @ ( carrier_mat_a @ N1 @ Nc1 ) )
             => ( ( member_mat_a @ B22 @ ( carrier_mat_a @ N1 @ Nc2 ) )
               => ( ( member_mat_a @ C22 @ ( carrier_mat_a @ N2 @ Nc1 ) )
                 => ( ( member_mat_a @ D22 @ ( carrier_mat_a @ N2 @ Nc2 ) )
                   => ( ( times_times_mat_a @ ( four_block_mat_a @ A1 @ B1 @ C1 @ D1 ) @ ( four_block_mat_a @ A22 @ B22 @ C22 @ D22 ) )
                      = ( four_block_mat_a @ ( plus_plus_mat_a @ ( times_times_mat_a @ A1 @ A22 ) @ ( times_times_mat_a @ B1 @ C22 ) ) @ ( plus_plus_mat_a @ ( times_times_mat_a @ A1 @ B22 ) @ ( times_times_mat_a @ B1 @ D22 ) ) @ ( plus_plus_mat_a @ ( times_times_mat_a @ C1 @ A22 ) @ ( times_times_mat_a @ D1 @ C22 ) ) @ ( plus_plus_mat_a @ ( times_times_mat_a @ C1 @ B22 ) @ ( times_times_mat_a @ D1 @ D22 ) ) ) ) ) ) ) ) ) ) ) ) ).

% mult_four_block_mat
thf(fact_996_field__le__mult__one__interval,axiom,
    ! [X3: a,Y3: a] :
      ( ! [Z3: a] :
          ( ( ord_less_a @ zero_zero_a @ Z3 )
         => ( ( ord_less_a @ Z3 @ one_one_a )
           => ( ord_less_eq_a @ ( times_times_a @ Z3 @ X3 ) @ Y3 ) ) )
     => ( ord_less_eq_a @ X3 @ Y3 ) ) ).

% field_le_mult_one_interval
thf(fact_997_mult__less__cancel__right2,axiom,
    ! [A: a,C: a] :
      ( ( ord_less_a @ ( times_times_a @ A @ C ) @ C )
      = ( ( ( ord_less_eq_a @ zero_zero_a @ C )
         => ( ord_less_a @ A @ one_one_a ) )
        & ( ( ord_less_eq_a @ C @ zero_zero_a )
         => ( ord_less_a @ one_one_a @ A ) ) ) ) ).

% mult_less_cancel_right2
thf(fact_998_mult__less__cancel__right1,axiom,
    ! [C: a,B: a] :
      ( ( ord_less_a @ C @ ( times_times_a @ B @ C ) )
      = ( ( ( ord_less_eq_a @ zero_zero_a @ C )
         => ( ord_less_a @ one_one_a @ B ) )
        & ( ( ord_less_eq_a @ C @ zero_zero_a )
         => ( ord_less_a @ B @ one_one_a ) ) ) ) ).

% mult_less_cancel_right1
thf(fact_999_mult__less__cancel__left2,axiom,
    ! [C: a,A: a] :
      ( ( ord_less_a @ ( times_times_a @ C @ A ) @ C )
      = ( ( ( ord_less_eq_a @ zero_zero_a @ C )
         => ( ord_less_a @ A @ one_one_a ) )
        & ( ( ord_less_eq_a @ C @ zero_zero_a )
         => ( ord_less_a @ one_one_a @ A ) ) ) ) ).

% mult_less_cancel_left2
thf(fact_1000_mult__less__cancel__left1,axiom,
    ! [C: a,B: a] :
      ( ( ord_less_a @ C @ ( times_times_a @ C @ B ) )
      = ( ( ( ord_less_eq_a @ zero_zero_a @ C )
         => ( ord_less_a @ one_one_a @ B ) )
        & ( ( ord_less_eq_a @ C @ zero_zero_a )
         => ( ord_less_a @ B @ one_one_a ) ) ) ) ).

% mult_less_cancel_left1
thf(fact_1001_mult__le__cancel__right2,axiom,
    ! [A: a,C: a] :
      ( ( ord_less_eq_a @ ( times_times_a @ A @ C ) @ C )
      = ( ( ( ord_less_a @ zero_zero_a @ C )
         => ( ord_less_eq_a @ A @ one_one_a ) )
        & ( ( ord_less_a @ C @ zero_zero_a )
         => ( ord_less_eq_a @ one_one_a @ A ) ) ) ) ).

% mult_le_cancel_right2
thf(fact_1002_mult__le__cancel__right1,axiom,
    ! [C: a,B: a] :
      ( ( ord_less_eq_a @ C @ ( times_times_a @ B @ C ) )
      = ( ( ( ord_less_a @ zero_zero_a @ C )
         => ( ord_less_eq_a @ one_one_a @ B ) )
        & ( ( ord_less_a @ C @ zero_zero_a )
         => ( ord_less_eq_a @ B @ one_one_a ) ) ) ) ).

% mult_le_cancel_right1
thf(fact_1003_mult__le__cancel__left2,axiom,
    ! [C: a,A: a] :
      ( ( ord_less_eq_a @ ( times_times_a @ C @ A ) @ C )
      = ( ( ( ord_less_a @ zero_zero_a @ C )
         => ( ord_less_eq_a @ A @ one_one_a ) )
        & ( ( ord_less_a @ C @ zero_zero_a )
         => ( ord_less_eq_a @ one_one_a @ A ) ) ) ) ).

% mult_le_cancel_left2
thf(fact_1004_mult__le__cancel__left1,axiom,
    ! [C: a,B: a] :
      ( ( ord_less_eq_a @ C @ ( times_times_a @ C @ B ) )
      = ( ( ( ord_less_a @ zero_zero_a @ C )
         => ( ord_less_eq_a @ one_one_a @ B ) )
        & ( ( ord_less_a @ C @ zero_zero_a )
         => ( ord_less_eq_a @ B @ one_one_a ) ) ) ) ).

% mult_le_cancel_left1
thf(fact_1005_convex__bound__le,axiom,
    ! [X3: a,A: a,Y3: a,U: a,V: a] :
      ( ( ord_less_eq_a @ X3 @ A )
     => ( ( ord_less_eq_a @ Y3 @ A )
       => ( ( ord_less_eq_a @ zero_zero_a @ U )
         => ( ( ord_less_eq_a @ zero_zero_a @ V )
           => ( ( ( plus_plus_a @ U @ V )
                = one_one_a )
             => ( ord_less_eq_a @ ( plus_plus_a @ ( times_times_a @ U @ X3 ) @ ( times_times_a @ V @ Y3 ) ) @ A ) ) ) ) ) ) ).

% convex_bound_le
thf(fact_1006_convex__bound__lt,axiom,
    ! [X3: a,A: a,Y3: a,U: a,V: a] :
      ( ( ord_less_a @ X3 @ A )
     => ( ( ord_less_a @ Y3 @ A )
       => ( ( ord_less_eq_a @ zero_zero_a @ U )
         => ( ( ord_less_eq_a @ zero_zero_a @ V )
           => ( ( ( plus_plus_a @ U @ V )
                = one_one_a )
             => ( ord_less_a @ ( plus_plus_a @ ( times_times_a @ U @ X3 ) @ ( times_times_a @ V @ Y3 ) ) @ A ) ) ) ) ) ) ).

% convex_bound_lt
thf(fact_1007_mult__hom_Ohom__zero,axiom,
    ! [C: nat] :
      ( ( times_times_nat @ C @ zero_zero_nat )
      = zero_zero_nat ) ).

% mult_hom.hom_zero
thf(fact_1008_less__1__mult_H,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_nat @ one_one_nat @ A )
     => ( ( ord_less_eq_nat @ one_one_nat @ B )
       => ( ord_less_nat @ one_one_nat @ ( times_times_nat @ A @ B ) ) ) ) ).

% less_1_mult'
thf(fact_1009_less__1__mult_H,axiom,
    ! [A: a,B: a] :
      ( ( ord_less_a @ one_one_a @ A )
     => ( ( ord_less_eq_a @ one_one_a @ B )
       => ( ord_less_a @ one_one_a @ ( times_times_a @ A @ B ) ) ) ) ).

% less_1_mult'
thf(fact_1010_mult__is__0,axiom,
    ! [M: nat,N: nat] :
      ( ( ( times_times_nat @ M @ N )
        = zero_zero_nat )
      = ( ( M = zero_zero_nat )
        | ( N = zero_zero_nat ) ) ) ).

% mult_is_0
thf(fact_1011_mult__0__right,axiom,
    ! [M: nat] :
      ( ( times_times_nat @ M @ zero_zero_nat )
      = zero_zero_nat ) ).

% mult_0_right
thf(fact_1012_mult__cancel1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ( times_times_nat @ K @ M )
        = ( times_times_nat @ K @ N ) )
      = ( ( M = N )
        | ( K = zero_zero_nat ) ) ) ).

% mult_cancel1
thf(fact_1013_mult__cancel2,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ( times_times_nat @ M @ K )
        = ( times_times_nat @ N @ K ) )
      = ( ( M = N )
        | ( K = zero_zero_nat ) ) ) ).

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

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

% nat_mult_eq_1_iff
thf(fact_1016_nat__0__less__mult__iff,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( times_times_nat @ M @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ M )
        & ( ord_less_nat @ zero_zero_nat @ N ) ) ) ).

% nat_0_less_mult_iff
thf(fact_1017_mult__less__cancel2,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ord_less_nat @ ( times_times_nat @ M @ K ) @ ( times_times_nat @ N @ K ) )
      = ( ( ord_less_nat @ zero_zero_nat @ K )
        & ( ord_less_nat @ M @ N ) ) ) ).

% mult_less_cancel2
thf(fact_1018_mult__le__cancel2,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( times_times_nat @ M @ K ) @ ( times_times_nat @ N @ K ) )
      = ( ( ord_less_nat @ zero_zero_nat @ K )
       => ( ord_less_eq_nat @ M @ N ) ) ) ).

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

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

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

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

% nat_mult_1_right
thf(fact_1023_le__cube,axiom,
    ! [M: nat] : ( ord_less_eq_nat @ M @ ( times_times_nat @ M @ ( times_times_nat @ M @ M ) ) ) ).

% le_cube
thf(fact_1024_le__square,axiom,
    ! [M: nat] : ( ord_less_eq_nat @ M @ ( times_times_nat @ M @ M ) ) ).

% le_square
thf(fact_1025_mult__le__mono,axiom,
    ! [I: nat,J: nat,K: nat,L: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( ord_less_eq_nat @ K @ L )
       => ( ord_less_eq_nat @ ( times_times_nat @ I @ K ) @ ( times_times_nat @ J @ L ) ) ) ) ).

% mult_le_mono
thf(fact_1026_mult__le__mono1,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ord_less_eq_nat @ ( times_times_nat @ I @ K ) @ ( times_times_nat @ J @ K ) ) ) ).

% mult_le_mono1
thf(fact_1027_mult__le__mono2,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ord_less_eq_nat @ ( times_times_nat @ K @ I ) @ ( times_times_nat @ K @ J ) ) ) ).

% mult_le_mono2
thf(fact_1028_mult__0,axiom,
    ! [N: nat] :
      ( ( times_times_nat @ zero_zero_nat @ N )
      = zero_zero_nat ) ).

% mult_0
thf(fact_1029_mult__less__mono2,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ( ord_less_nat @ zero_zero_nat @ K )
       => ( ord_less_nat @ ( times_times_nat @ K @ I ) @ ( times_times_nat @ K @ J ) ) ) ) ).

% mult_less_mono2
thf(fact_1030_mult__less__mono1,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ I @ J )
     => ( ( ord_less_nat @ zero_zero_nat @ K )
       => ( ord_less_nat @ ( times_times_nat @ I @ K ) @ ( times_times_nat @ J @ K ) ) ) ) ).

% mult_less_mono1
thf(fact_1031_mult__eq__self__implies__10,axiom,
    ! [M: nat,N: nat] :
      ( ( M
        = ( times_times_nat @ M @ N ) )
     => ( ( N = one_one_nat )
        | ( M = zero_zero_nat ) ) ) ).

% mult_eq_self_implies_10
thf(fact_1032_mult__hom_Ohom__add,axiom,
    ! [C: nat,X3: nat,Y3: nat] :
      ( ( times_times_nat @ C @ ( plus_plus_nat @ X3 @ Y3 ) )
      = ( plus_plus_nat @ ( times_times_nat @ C @ X3 ) @ ( times_times_nat @ C @ Y3 ) ) ) ).

% mult_hom.hom_add
thf(fact_1033_mult__hom_Ohom__add__eq__zero,axiom,
    ! [X3: nat,Y3: nat,C: nat] :
      ( ( ( plus_plus_nat @ X3 @ Y3 )
        = zero_zero_nat )
     => ( ( plus_plus_nat @ ( times_times_nat @ C @ X3 ) @ ( times_times_nat @ C @ Y3 ) )
        = zero_zero_nat ) ) ).

% mult_hom.hom_add_eq_zero
thf(fact_1034_sum__squares__le__zero__iff,axiom,
    ! [X3: a,Y3: a] :
      ( ( ord_less_eq_a @ ( plus_plus_a @ ( times_times_a @ X3 @ X3 ) @ ( times_times_a @ Y3 @ Y3 ) ) @ zero_zero_a )
      = ( ( X3 = zero_zero_a )
        & ( Y3 = zero_zero_a ) ) ) ).

% sum_squares_le_zero_iff
thf(fact_1035_nat__mult__le__cancel__disj,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ K )
       => ( ord_less_eq_nat @ M @ N ) ) ) ).

% nat_mult_le_cancel_disj
thf(fact_1036_nat__mult__less__cancel__disj,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
      = ( ( ord_less_nat @ zero_zero_nat @ K )
        & ( ord_less_nat @ M @ N ) ) ) ).

% nat_mult_less_cancel_disj
thf(fact_1037_square__less__square,axiom,
    ! [X3: a,Y3: a] :
      ( ( ord_less_eq_a @ zero_zero_a @ X3 )
     => ( ( ord_less_eq_a @ zero_zero_a @ Y3 )
       => ( ( ord_less_a @ ( times_times_a @ X3 @ X3 ) @ ( times_times_a @ Y3 @ Y3 ) )
          = ( ord_less_a @ X3 @ Y3 ) ) ) ) ).

% square_less_square
thf(fact_1038_nat__mult__eq__cancel__disj,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ( times_times_nat @ K @ M )
        = ( times_times_nat @ K @ N ) )
      = ( ( K = zero_zero_nat )
        | ( M = N ) ) ) ).

% nat_mult_eq_cancel_disj
thf(fact_1039_left__add__mult__distrib,axiom,
    ! [I: nat,U: nat,J: nat,K: nat] :
      ( ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ K ) )
      = ( plus_plus_nat @ ( times_times_nat @ ( plus_plus_nat @ I @ J ) @ U ) @ K ) ) ).

% left_add_mult_distrib
thf(fact_1040_nat__mult__less__cancel1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ K )
     => ( ( ord_less_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
        = ( ord_less_nat @ M @ N ) ) ) ).

% nat_mult_less_cancel1
thf(fact_1041_nat__mult__eq__cancel1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ K )
     => ( ( ( times_times_nat @ K @ M )
          = ( times_times_nat @ K @ N ) )
        = ( M = N ) ) ) ).

% nat_mult_eq_cancel1
thf(fact_1042_square__lesseq__square,axiom,
    ! [X3: a,Y3: a] :
      ( ( ord_less_eq_a @ zero_zero_a @ X3 )
     => ( ( ord_less_eq_a @ zero_zero_a @ Y3 )
       => ( ( ord_less_eq_a @ ( times_times_a @ X3 @ X3 ) @ ( times_times_a @ Y3 @ Y3 ) )
          = ( ord_less_eq_a @ X3 @ Y3 ) ) ) ) ).

% square_lesseq_square
thf(fact_1043_nat__mult__le__cancel1,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ K )
     => ( ( ord_less_eq_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) )
        = ( ord_less_eq_nat @ M @ N ) ) ) ).

% nat_mult_le_cancel1
thf(fact_1044_mult__le__cancel__iff1,axiom,
    ! [Z2: a,X3: a,Y3: a] :
      ( ( ord_less_a @ zero_zero_a @ Z2 )
     => ( ( ord_less_eq_a @ ( times_times_a @ X3 @ Z2 ) @ ( times_times_a @ Y3 @ Z2 ) )
        = ( ord_less_eq_a @ X3 @ Y3 ) ) ) ).

% mult_le_cancel_iff1
thf(fact_1045_mult__le__cancel__iff2,axiom,
    ! [Z2: a,X3: a,Y3: a] :
      ( ( ord_less_a @ zero_zero_a @ Z2 )
     => ( ( ord_less_eq_a @ ( times_times_a @ Z2 @ X3 ) @ ( times_times_a @ Z2 @ Y3 ) )
        = ( ord_less_eq_a @ X3 @ Y3 ) ) ) ).

% mult_le_cancel_iff2
thf(fact_1046_index__component__mult,axiom,
    ! [I: nat,V: vec_a,W: vec_a] :
      ( ( ord_less_nat @ I @ ( dim_vec_a @ V ) )
     => ( ( ord_less_nat @ I @ ( dim_vec_a @ W ) )
       => ( ( vec_index_a @ ( component_mult_a @ V @ W ) @ I )
          = ( times_times_a @ ( vec_index_a @ V @ I ) @ ( vec_index_a @ W @ I ) ) ) ) ) ).

% index_component_mult
thf(fact_1047_index__component__mult,axiom,
    ! [I: nat,V: vec_nat,W: vec_nat] :
      ( ( ord_less_nat @ I @ ( dim_vec_nat @ V ) )
     => ( ( ord_less_nat @ I @ ( dim_vec_nat @ W ) )
       => ( ( vec_index_nat @ ( component_mult_nat @ V @ W ) @ I )
          = ( times_times_nat @ ( vec_index_nat @ V @ I ) @ ( vec_index_nat @ W @ I ) ) ) ) ) ).

% index_component_mult
thf(fact_1048_mat__mult__left__right__inverse,axiom,
    ! [A2: mat_a,N: nat,B2: mat_a] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ N @ N ) )
     => ( ( member_mat_a @ B2 @ ( carrier_mat_a @ N @ N ) )
       => ( ( ( times_times_mat_a @ A2 @ B2 )
            = ( one_mat_a @ N ) )
         => ( ( times_times_mat_a @ B2 @ A2 )
            = ( one_mat_a @ N ) ) ) ) ) ).

% mat_mult_left_right_inverse
thf(fact_1049_add__scale__eq__noteq,axiom,
    ! [R: nat,A: nat,B: nat,C: nat,D2: nat] :
      ( ( R != zero_zero_nat )
     => ( ( ( A = B )
          & ( C != D2 ) )
       => ( ( plus_plus_nat @ A @ ( times_times_nat @ R @ C ) )
         != ( plus_plus_nat @ B @ ( times_times_nat @ R @ D2 ) ) ) ) ) ).

% add_scale_eq_noteq
thf(fact_1050_add__0__iff,axiom,
    ! [B: nat,A: nat] :
      ( ( B
        = ( plus_plus_nat @ B @ A ) )
      = ( A = zero_zero_nat ) ) ).

% add_0_iff
thf(fact_1051_crossproduct__eq,axiom,
    ! [W: nat,Y3: nat,X3: nat,Z2: nat] :
      ( ( ( plus_plus_nat @ ( times_times_nat @ W @ Y3 ) @ ( times_times_nat @ X3 @ Z2 ) )
        = ( plus_plus_nat @ ( times_times_nat @ W @ Z2 ) @ ( times_times_nat @ X3 @ Y3 ) ) )
      = ( ( W = X3 )
        | ( Y3 = Z2 ) ) ) ).

% crossproduct_eq
thf(fact_1052_crossproduct__noteq,axiom,
    ! [A: nat,B: nat,C: nat,D2: nat] :
      ( ( ( A != B )
        & ( C != D2 ) )
      = ( ( plus_plus_nat @ ( times_times_nat @ A @ C ) @ ( times_times_nat @ B @ D2 ) )
       != ( plus_plus_nat @ ( times_times_nat @ A @ D2 ) @ ( times_times_nat @ B @ C ) ) ) ) ).

% crossproduct_noteq
thf(fact_1053_less__eq__fract__respect,axiom,
    ! [B: a,B6: a,D2: a,D3: a,A: a,A6: a,C: a,C5: a] :
      ( ( B != zero_zero_a )
     => ( ( B6 != zero_zero_a )
       => ( ( D2 != zero_zero_a )
         => ( ( D3 != zero_zero_a )
           => ( ( ( times_times_a @ A @ B6 )
                = ( times_times_a @ A6 @ B ) )
             => ( ( ( times_times_a @ C @ D3 )
                  = ( times_times_a @ C5 @ D2 ) )
               => ( ( ord_less_eq_a @ ( times_times_a @ ( times_times_a @ A @ D2 ) @ ( times_times_a @ B @ D2 ) ) @ ( times_times_a @ ( times_times_a @ C @ B ) @ ( times_times_a @ B @ D2 ) ) )
                  = ( ord_less_eq_a @ ( times_times_a @ ( times_times_a @ A6 @ D3 ) @ ( times_times_a @ B6 @ D3 ) ) @ ( times_times_a @ ( times_times_a @ C5 @ B6 ) @ ( times_times_a @ B6 @ D3 ) ) ) ) ) ) ) ) ) ) ).

% less_eq_fract_respect
thf(fact_1054_mult__mat__of__col,axiom,
    ! [A2: mat_a,Nr: nat,Nc: nat,V: vec_a] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( ( member_vec_a @ V @ ( carrier_vec_a @ Nc ) )
       => ( ( times_times_mat_a @ A2 @ ( missing_mat_of_col_a @ V ) )
          = ( missing_mat_of_col_a @ ( mult_mat_vec_a @ A2 @ V ) ) ) ) ) ).

% mult_mat_of_col
thf(fact_1055_mat__of__col__def,axiom,
    ( missing_mat_of_col_a
    = ( ^ [V4: vec_a] : ( transpose_mat_a @ ( mat_of_row_a @ V4 ) ) ) ) ).

% mat_of_col_def
thf(fact_1056_mat__of__col__dim_I3_J,axiom,
    ! [V: vec_a] : ( member_mat_a @ ( missing_mat_of_col_a @ V ) @ ( carrier_mat_a @ ( dim_vec_a @ V ) @ one_one_nat ) ) ).

% mat_of_col_dim(3)
thf(fact_1057_row__mat__of__col,axiom,
    ! [I: nat,V: vec_a] :
      ( ( ord_less_nat @ I @ ( dim_vec_a @ V ) )
     => ( ( row_a @ ( missing_mat_of_col_a @ V ) @ I )
        = ( missin5951511974119752530scal_a @ ( vec_index_a @ V @ I ) ) ) ) ).

% row_mat_of_col
thf(fact_1058_inf__pigeonhole__principle,axiom,
    ! [N: nat,F: nat > nat > $o] :
      ( ! [K3: nat] :
        ? [I2: nat] :
          ( ( ord_less_nat @ I2 @ N )
          & ( F @ K3 @ I2 ) )
     => ? [I4: nat] :
          ( ( ord_less_nat @ I4 @ N )
          & ! [K4: nat] :
            ? [K5: nat] :
              ( ( ord_less_eq_nat @ K4 @ K5 )
              & ( F @ K5 @ I4 ) ) ) ) ).

% inf_pigeonhole_principle
thf(fact_1059_row__mat__of__row,axiom,
    ! [Y3: vec_a] :
      ( ( row_a @ ( mat_of_row_a @ Y3 ) @ zero_zero_nat )
      = Y3 ) ).

% row_mat_of_row
thf(fact_1060_row__zero,axiom,
    ! [I: nat,Nr: nat,Nc: nat] :
      ( ( ord_less_nat @ I @ Nr )
     => ( ( row_a @ ( zero_mat_a @ Nr @ Nc ) @ I )
        = ( zero_vec_a @ Nc ) ) ) ).

% row_zero
thf(fact_1061_row__add_I1_J,axiom,
    ! [A2: mat_a,Nr: nat,Nc: nat,B2: mat_a,I: nat] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( ( member_mat_a @ B2 @ ( carrier_mat_a @ Nr @ Nc ) )
       => ( ( ord_less_nat @ I @ Nr )
         => ( ( row_a @ ( plus_plus_mat_a @ A2 @ B2 ) @ I )
            = ( plus_plus_vec_a @ ( row_a @ A2 @ I ) @ ( row_a @ B2 @ I ) ) ) ) ) ) ).

% row_add(1)
thf(fact_1062_row__carrier__vec,axiom,
    ! [I: nat,Nr: nat,A2: mat_a,Nc: nat] :
      ( ( ord_less_nat @ I @ Nr )
     => ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc ) )
       => ( member_vec_a @ ( row_a @ A2 @ I ) @ ( carrier_vec_a @ Nc ) ) ) ) ).

% row_carrier_vec
thf(fact_1063_append__rows__nth_I1_J,axiom,
    ! [A2: mat_a,Nr1: nat,Nc: nat,B2: mat_a,Nr2: nat,I: nat] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr1 @ Nc ) )
     => ( ( member_mat_a @ B2 @ ( carrier_mat_a @ Nr2 @ Nc ) )
       => ( ( ord_less_nat @ I @ Nr1 )
         => ( ( row_a @ ( append_rows_a @ A2 @ B2 ) @ I )
            = ( row_a @ A2 @ I ) ) ) ) ) ).

% append_rows_nth(1)
thf(fact_1064_row__four__block__mat_I1_J,axiom,
    ! [A2: mat_a,Nr1: nat,Nc1: nat,B2: mat_a,Nc2: nat,C2: mat_a,Nr2: nat,D: mat_a,I: nat] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr1 @ Nc1 ) )
     => ( ( member_mat_a @ B2 @ ( carrier_mat_a @ Nr1 @ Nc2 ) )
       => ( ( member_mat_a @ C2 @ ( carrier_mat_a @ Nr2 @ Nc1 ) )
         => ( ( member_mat_a @ D @ ( carrier_mat_a @ Nr2 @ Nc2 ) )
           => ( ( ord_less_nat @ I @ Nr1 )
             => ( ( row_a @ ( four_block_mat_a @ A2 @ B2 @ C2 @ D ) @ I )
                = ( append_vec_a @ ( row_a @ A2 @ I ) @ ( row_a @ B2 @ I ) ) ) ) ) ) ) ) ).

% row_four_block_mat(1)
thf(fact_1065_append__rows__nth_I2_J,axiom,
    ! [A2: mat_a,Nr1: nat,Nc: nat,B2: mat_a,Nr2: nat,I: nat] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr1 @ Nc ) )
     => ( ( member_mat_a @ B2 @ ( carrier_mat_a @ Nr2 @ Nc ) )
       => ( ( ord_less_eq_nat @ Nr1 @ I )
         => ( ( ord_less_nat @ I @ ( plus_plus_nat @ Nr1 @ Nr2 ) )
           => ( ( row_a @ ( append_rows_a @ A2 @ B2 ) @ I )
              = ( row_a @ B2 @ ( minus_minus_nat @ I @ Nr1 ) ) ) ) ) ) ) ).

% append_rows_nth(2)
thf(fact_1066_zero__diff,axiom,
    ! [A: nat] :
      ( ( minus_minus_nat @ zero_zero_nat @ A )
      = zero_zero_nat ) ).

% zero_diff
thf(fact_1067_diff__zero,axiom,
    ! [A: nat] :
      ( ( minus_minus_nat @ A @ zero_zero_nat )
      = A ) ).

% diff_zero
thf(fact_1068_cancel__comm__monoid__add__class_Odiff__cancel,axiom,
    ! [A: nat] :
      ( ( minus_minus_nat @ A @ A )
      = zero_zero_nat ) ).

% cancel_comm_monoid_add_class.diff_cancel
thf(fact_1069_add__diff__cancel__right_H,axiom,
    ! [A: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ A @ B ) @ B )
      = A ) ).

% add_diff_cancel_right'
thf(fact_1070_add__diff__cancel__right,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ A @ C ) @ ( plus_plus_nat @ B @ C ) )
      = ( minus_minus_nat @ A @ B ) ) ).

% add_diff_cancel_right
thf(fact_1071_add__diff__cancel__left_H,axiom,
    ! [A: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ A @ B ) @ A )
      = B ) ).

% add_diff_cancel_left'
thf(fact_1072_add__diff__cancel__left,axiom,
    ! [C: nat,A: nat,B: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ C @ A ) @ ( plus_plus_nat @ C @ B ) )
      = ( minus_minus_nat @ A @ B ) ) ).

% add_diff_cancel_left
thf(fact_1073_diff__self__eq__0,axiom,
    ! [M: nat] :
      ( ( minus_minus_nat @ M @ M )
      = zero_zero_nat ) ).

% diff_self_eq_0
thf(fact_1074_diff__0__eq__0,axiom,
    ! [N: nat] :
      ( ( minus_minus_nat @ zero_zero_nat @ N )
      = zero_zero_nat ) ).

% diff_0_eq_0
thf(fact_1075_diff__diff__cancel,axiom,
    ! [I: nat,N: nat] :
      ( ( ord_less_eq_nat @ I @ N )
     => ( ( minus_minus_nat @ N @ ( minus_minus_nat @ N @ I ) )
        = I ) ) ).

% diff_diff_cancel
thf(fact_1076_diff__diff__left,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ I @ J ) @ K )
      = ( minus_minus_nat @ I @ ( plus_plus_nat @ J @ K ) ) ) ).

% diff_diff_left
thf(fact_1077_diff__ge__0__iff__ge,axiom,
    ! [A: a,B: a] :
      ( ( ord_less_eq_a @ zero_zero_a @ ( minus_minus_a @ A @ B ) )
      = ( ord_less_eq_a @ B @ A ) ) ).

% diff_ge_0_iff_ge
thf(fact_1078_diff__add__zero,axiom,
    ! [A: nat,B: nat] :
      ( ( minus_minus_nat @ A @ ( plus_plus_nat @ A @ B ) )
      = zero_zero_nat ) ).

% diff_add_zero
thf(fact_1079_le__add__diff__inverse,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_eq_nat @ B @ A )
     => ( ( plus_plus_nat @ B @ ( minus_minus_nat @ A @ B ) )
        = A ) ) ).

% le_add_diff_inverse
thf(fact_1080_le__add__diff__inverse,axiom,
    ! [B: a,A: a] :
      ( ( ord_less_eq_a @ B @ A )
     => ( ( plus_plus_a @ B @ ( minus_minus_a @ A @ B ) )
        = A ) ) ).

% le_add_diff_inverse
thf(fact_1081_le__add__diff__inverse2,axiom,
    ! [B: nat,A: nat] :
      ( ( ord_less_eq_nat @ B @ A )
     => ( ( plus_plus_nat @ ( minus_minus_nat @ A @ B ) @ B )
        = A ) ) ).

% le_add_diff_inverse2
thf(fact_1082_le__add__diff__inverse2,axiom,
    ! [B: a,A: a] :
      ( ( ord_less_eq_a @ B @ A )
     => ( ( plus_plus_a @ ( minus_minus_a @ A @ B ) @ B )
        = A ) ) ).

% le_add_diff_inverse2
thf(fact_1083_zero__less__diff,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ ( minus_minus_nat @ N @ M ) )
      = ( ord_less_nat @ M @ N ) ) ).

% zero_less_diff
thf(fact_1084_diff__is__0__eq_H,axiom,
    ! [M: nat,N: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ( minus_minus_nat @ M @ N )
        = zero_zero_nat ) ) ).

% diff_is_0_eq'
thf(fact_1085_diff__is__0__eq,axiom,
    ! [M: nat,N: nat] :
      ( ( ( minus_minus_nat @ M @ N )
        = zero_zero_nat )
      = ( ord_less_eq_nat @ M @ N ) ) ).

% diff_is_0_eq
thf(fact_1086_Nat_Odiff__diff__right,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( minus_minus_nat @ I @ ( minus_minus_nat @ J @ K ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ I @ K ) @ J ) ) ) ).

% Nat.diff_diff_right
thf(fact_1087_Nat_Oadd__diff__assoc2,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( plus_plus_nat @ ( minus_minus_nat @ J @ K ) @ I )
        = ( minus_minus_nat @ ( plus_plus_nat @ J @ I ) @ K ) ) ) ).

% Nat.add_diff_assoc2
thf(fact_1088_Nat_Oadd__diff__assoc,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( plus_plus_nat @ I @ ( minus_minus_nat @ J @ K ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ I @ J ) @ K ) ) ) ).

% Nat.add_diff_assoc
thf(fact_1089_index__minus__vec_I1_J,axiom,
    ! [I: nat,V_2: vec_a,V_1: vec_a] :
      ( ( ord_less_nat @ I @ ( dim_vec_a @ V_2 ) )
     => ( ( vec_index_a @ ( minus_minus_vec_a @ V_1 @ V_2 ) @ I )
        = ( minus_minus_a @ ( vec_index_a @ V_1 @ I ) @ ( vec_index_a @ V_2 @ I ) ) ) ) ).

% index_minus_vec(1)
thf(fact_1090_index__minus__vec_I1_J,axiom,
    ! [I: nat,V_2: vec_nat,V_1: vec_nat] :
      ( ( ord_less_nat @ I @ ( dim_vec_nat @ V_2 ) )
     => ( ( vec_index_nat @ ( minus_minus_vec_nat @ V_1 @ V_2 ) @ I )
        = ( minus_minus_nat @ ( vec_index_nat @ V_1 @ I ) @ ( vec_index_nat @ V_2 @ I ) ) ) ) ).

% index_minus_vec(1)
thf(fact_1091_index__append__vec_I1_J,axiom,
    ! [I: nat,V: vec_a,W: vec_a] :
      ( ( ord_less_nat @ I @ ( plus_plus_nat @ ( dim_vec_a @ V ) @ ( dim_vec_a @ W ) ) )
     => ( ( ( ord_less_nat @ I @ ( dim_vec_a @ V ) )
         => ( ( vec_index_a @ ( append_vec_a @ V @ W ) @ I )
            = ( vec_index_a @ V @ I ) ) )
        & ( ~ ( ord_less_nat @ I @ ( dim_vec_a @ V ) )
         => ( ( vec_index_a @ ( append_vec_a @ V @ W ) @ I )
            = ( vec_index_a @ W @ ( minus_minus_nat @ I @ ( dim_vec_a @ V ) ) ) ) ) ) ) ).

% index_append_vec(1)
thf(fact_1092_diff__mult__distrib,axiom,
    ! [M: nat,N: nat,K: nat] :
      ( ( times_times_nat @ ( minus_minus_nat @ M @ N ) @ K )
      = ( minus_minus_nat @ ( times_times_nat @ M @ K ) @ ( times_times_nat @ N @ K ) ) ) ).

% diff_mult_distrib
thf(fact_1093_diff__mult__distrib2,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( times_times_nat @ K @ ( minus_minus_nat @ M @ N ) )
      = ( minus_minus_nat @ ( times_times_nat @ K @ M ) @ ( times_times_nat @ K @ N ) ) ) ).

% diff_mult_distrib2
thf(fact_1094_diff__less,axiom,
    ! [N: nat,M: nat] :
      ( ( ord_less_nat @ zero_zero_nat @ N )
     => ( ( ord_less_nat @ zero_zero_nat @ M )
       => ( ord_less_nat @ ( minus_minus_nat @ M @ N ) @ M ) ) ) ).

% diff_less
thf(fact_1095_less__diff__iff,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M )
     => ( ( ord_less_eq_nat @ K @ N )
       => ( ( ord_less_nat @ ( minus_minus_nat @ M @ K ) @ ( minus_minus_nat @ N @ K ) )
          = ( ord_less_nat @ M @ N ) ) ) ) ).

% less_diff_iff
thf(fact_1096_diff__less__mono,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C @ A )
       => ( ord_less_nat @ ( minus_minus_nat @ A @ C ) @ ( minus_minus_nat @ B @ C ) ) ) ) ).

% diff_less_mono
thf(fact_1097_diff__add__0,axiom,
    ! [N: nat,M: nat] :
      ( ( minus_minus_nat @ N @ ( plus_plus_nat @ N @ M ) )
      = zero_zero_nat ) ).

% diff_add_0
thf(fact_1098_less__diff__conv,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_nat @ I @ ( minus_minus_nat @ J @ K ) )
      = ( ord_less_nat @ ( plus_plus_nat @ I @ K ) @ J ) ) ).

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

% add_diff_inverse_nat
thf(fact_1100_le__diff__conv,axiom,
    ! [J: nat,K: nat,I: nat] :
      ( ( ord_less_eq_nat @ ( minus_minus_nat @ J @ K ) @ I )
      = ( ord_less_eq_nat @ J @ ( plus_plus_nat @ I @ K ) ) ) ).

% le_diff_conv
thf(fact_1101_Nat_Ole__diff__conv2,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( ord_less_eq_nat @ I @ ( minus_minus_nat @ J @ K ) )
        = ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ J ) ) ) ).

% Nat.le_diff_conv2
thf(fact_1102_Nat_Odiff__add__assoc,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ I @ J ) @ K )
        = ( plus_plus_nat @ I @ ( minus_minus_nat @ J @ K ) ) ) ) ).

% Nat.diff_add_assoc
thf(fact_1103_Nat_Odiff__add__assoc2,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ J @ I ) @ K )
        = ( plus_plus_nat @ ( minus_minus_nat @ J @ K ) @ I ) ) ) ).

% Nat.diff_add_assoc2
thf(fact_1104_Nat_Ole__imp__diff__is__add,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( ( minus_minus_nat @ J @ I )
          = K )
        = ( J
          = ( plus_plus_nat @ K @ I ) ) ) ) ).

% Nat.le_imp_diff_is_add
thf(fact_1105_diffs0__imp__equal,axiom,
    ! [M: nat,N: nat] :
      ( ( ( minus_minus_nat @ M @ N )
        = zero_zero_nat )
     => ( ( ( minus_minus_nat @ N @ M )
          = zero_zero_nat )
       => ( M = N ) ) ) ).

% diffs0_imp_equal
thf(fact_1106_minus__nat_Odiff__0,axiom,
    ! [M: nat] :
      ( ( minus_minus_nat @ M @ zero_zero_nat )
      = M ) ).

% minus_nat.diff_0
thf(fact_1107_minus__scalar__prod__distrib,axiom,
    ! [V_1: vec_a,N: nat,V_2: vec_a,V_3: vec_a] :
      ( ( member_vec_a @ V_1 @ ( carrier_vec_a @ N ) )
     => ( ( member_vec_a @ V_2 @ ( carrier_vec_a @ N ) )
       => ( ( member_vec_a @ V_3 @ ( carrier_vec_a @ N ) )
         => ( ( scalar_prod_a @ ( minus_minus_vec_a @ V_1 @ V_2 ) @ V_3 )
            = ( minus_minus_a @ ( scalar_prod_a @ V_1 @ V_3 ) @ ( scalar_prod_a @ V_2 @ V_3 ) ) ) ) ) ) ).

% minus_scalar_prod_distrib
thf(fact_1108_scalar__prod__minus__distrib,axiom,
    ! [V_1: vec_a,N: nat,V_2: vec_a,V_3: vec_a] :
      ( ( member_vec_a @ V_1 @ ( carrier_vec_a @ N ) )
     => ( ( member_vec_a @ V_2 @ ( carrier_vec_a @ N ) )
       => ( ( member_vec_a @ V_3 @ ( carrier_vec_a @ N ) )
         => ( ( scalar_prod_a @ V_1 @ ( minus_minus_vec_a @ V_2 @ V_3 ) )
            = ( minus_minus_a @ ( scalar_prod_a @ V_1 @ V_2 ) @ ( scalar_prod_a @ V_1 @ V_3 ) ) ) ) ) ) ).

% scalar_prod_minus_distrib
thf(fact_1109_diff__eq__diff__less__eq,axiom,
    ! [A: a,B: a,C: a,D2: a] :
      ( ( ( minus_minus_a @ A @ B )
        = ( minus_minus_a @ C @ D2 ) )
     => ( ( ord_less_eq_a @ A @ B )
        = ( ord_less_eq_a @ C @ D2 ) ) ) ).

% diff_eq_diff_less_eq
thf(fact_1110_diff__right__mono,axiom,
    ! [A: a,B: a,C: a] :
      ( ( ord_less_eq_a @ A @ B )
     => ( ord_less_eq_a @ ( minus_minus_a @ A @ C ) @ ( minus_minus_a @ B @ C ) ) ) ).

% diff_right_mono
thf(fact_1111_diff__left__mono,axiom,
    ! [B: a,A: a,C: a] :
      ( ( ord_less_eq_a @ B @ A )
     => ( ord_less_eq_a @ ( minus_minus_a @ C @ A ) @ ( minus_minus_a @ C @ B ) ) ) ).

% diff_left_mono
thf(fact_1112_diff__mono,axiom,
    ! [A: a,B: a,D2: a,C: a] :
      ( ( ord_less_eq_a @ A @ B )
     => ( ( ord_less_eq_a @ D2 @ C )
       => ( ord_less_eq_a @ ( minus_minus_a @ A @ C ) @ ( minus_minus_a @ B @ D2 ) ) ) ) ).

% diff_mono
thf(fact_1113_diff__diff__eq,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ A @ B ) @ C )
      = ( minus_minus_nat @ A @ ( plus_plus_nat @ B @ C ) ) ) ).

% diff_diff_eq
thf(fact_1114_add__implies__diff,axiom,
    ! [C: nat,B: nat,A: nat] :
      ( ( ( plus_plus_nat @ C @ B )
        = A )
     => ( C
        = ( minus_minus_nat @ A @ B ) ) ) ).

% add_implies_diff
thf(fact_1115_diff__le__mono2,axiom,
    ! [M: nat,N: nat,L: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_eq_nat @ ( minus_minus_nat @ L @ N ) @ ( minus_minus_nat @ L @ M ) ) ) ).

% diff_le_mono2
thf(fact_1116_le__diff__iff_H,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ C )
     => ( ( ord_less_eq_nat @ B @ C )
       => ( ( ord_less_eq_nat @ ( minus_minus_nat @ C @ A ) @ ( minus_minus_nat @ C @ B ) )
          = ( ord_less_eq_nat @ B @ A ) ) ) ) ).

% le_diff_iff'
thf(fact_1117_diff__le__self,axiom,
    ! [M: nat,N: nat] : ( ord_less_eq_nat @ ( minus_minus_nat @ M @ N ) @ M ) ).

% diff_le_self
thf(fact_1118_diff__le__mono,axiom,
    ! [M: nat,N: nat,L: nat] :
      ( ( ord_less_eq_nat @ M @ N )
     => ( ord_less_eq_nat @ ( minus_minus_nat @ M @ L ) @ ( minus_minus_nat @ N @ L ) ) ) ).

% diff_le_mono
thf(fact_1119_Nat_Odiff__diff__eq,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M )
     => ( ( ord_less_eq_nat @ K @ N )
       => ( ( minus_minus_nat @ ( minus_minus_nat @ M @ K ) @ ( minus_minus_nat @ N @ K ) )
          = ( minus_minus_nat @ M @ N ) ) ) ) ).

% Nat.diff_diff_eq
thf(fact_1120_le__diff__iff,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M )
     => ( ( ord_less_eq_nat @ K @ N )
       => ( ( ord_less_eq_nat @ ( minus_minus_nat @ M @ K ) @ ( minus_minus_nat @ N @ K ) )
          = ( ord_less_eq_nat @ M @ N ) ) ) ) ).

% le_diff_iff
thf(fact_1121_eq__diff__iff,axiom,
    ! [K: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M )
     => ( ( ord_less_eq_nat @ K @ N )
       => ( ( ( minus_minus_nat @ M @ K )
            = ( minus_minus_nat @ N @ K ) )
          = ( M = N ) ) ) ) ).

% eq_diff_iff
thf(fact_1122_diff__add__inverse2,axiom,
    ! [M: nat,N: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ M @ N ) @ N )
      = M ) ).

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

% diff_add_inverse
thf(fact_1124_diff__cancel2,axiom,
    ! [M: nat,K: nat,N: nat] :
      ( ( minus_minus_nat @ ( plus_plus_nat @ M @ K ) @ ( plus_plus_nat @ N @ K ) )
      = ( minus_minus_nat @ M @ N ) ) ).

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

% Nat.diff_cancel
thf(fact_1126_cancel__ab__semigroup__add__class_Odiff__right__commute,axiom,
    ! [A: nat,C: nat,B: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ A @ C ) @ B )
      = ( minus_minus_nat @ ( minus_minus_nat @ A @ B ) @ C ) ) ).

% cancel_ab_semigroup_add_class.diff_right_commute
thf(fact_1127_diff__commute,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ I @ J ) @ K )
      = ( minus_minus_nat @ ( minus_minus_nat @ I @ K ) @ J ) ) ).

% diff_commute
thf(fact_1128_less__imp__diff__less,axiom,
    ! [J: nat,K: nat,N: nat] :
      ( ( ord_less_nat @ J @ K )
     => ( ord_less_nat @ ( minus_minus_nat @ J @ N ) @ K ) ) ).

% less_imp_diff_less
thf(fact_1129_diff__less__mono2,axiom,
    ! [M: nat,N: nat,L: nat] :
      ( ( ord_less_nat @ M @ N )
     => ( ( ord_less_nat @ M @ L )
       => ( ord_less_nat @ ( minus_minus_nat @ L @ N ) @ ( minus_minus_nat @ L @ M ) ) ) ) ).

% diff_less_mono2
thf(fact_1130_linordered__semidom__class_Oadd__diff__inverse,axiom,
    ! [A: nat,B: nat] :
      ( ~ ( ord_less_nat @ A @ B )
     => ( ( plus_plus_nat @ B @ ( minus_minus_nat @ A @ B ) )
        = A ) ) ).

% linordered_semidom_class.add_diff_inverse
thf(fact_1131_add__le__add__imp__diff__le,axiom,
    ! [I: nat,K: nat,N: nat,J: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ N )
     => ( ( ord_less_eq_nat @ N @ ( plus_plus_nat @ J @ K ) )
       => ( ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ N )
         => ( ( ord_less_eq_nat @ N @ ( plus_plus_nat @ J @ K ) )
           => ( ord_less_eq_nat @ ( minus_minus_nat @ N @ K ) @ J ) ) ) ) ) ).

% add_le_add_imp_diff_le
thf(fact_1132_add__le__add__imp__diff__le,axiom,
    ! [I: a,K: a,N: a,J: a] :
      ( ( ord_less_eq_a @ ( plus_plus_a @ I @ K ) @ N )
     => ( ( ord_less_eq_a @ N @ ( plus_plus_a @ J @ K ) )
       => ( ( ord_less_eq_a @ ( plus_plus_a @ I @ K ) @ N )
         => ( ( ord_less_eq_a @ N @ ( plus_plus_a @ J @ K ) )
           => ( ord_less_eq_a @ ( minus_minus_a @ N @ K ) @ J ) ) ) ) ) ).

% add_le_add_imp_diff_le
thf(fact_1133_add__le__imp__le__diff,axiom,
    ! [I: nat,K: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( plus_plus_nat @ I @ K ) @ N )
     => ( ord_less_eq_nat @ I @ ( minus_minus_nat @ N @ K ) ) ) ).

% add_le_imp_le_diff
thf(fact_1134_add__le__imp__le__diff,axiom,
    ! [I: a,K: a,N: a] :
      ( ( ord_less_eq_a @ ( plus_plus_a @ I @ K ) @ N )
     => ( ord_less_eq_a @ I @ ( minus_minus_a @ N @ K ) ) ) ).

% add_le_imp_le_diff
thf(fact_1135_ordered__cancel__comm__monoid__diff__class_Ole__imp__diff__is__add,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ A @ B )
       => ( ( ( minus_minus_nat @ B @ A )
            = C )
          = ( B
            = ( plus_plus_nat @ C @ A ) ) ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.le_imp_diff_is_add
thf(fact_1136_ordered__cancel__comm__monoid__diff__class_Oadd__diff__inverse,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( plus_plus_nat @ A @ ( minus_minus_nat @ B @ A ) )
        = B ) ) ).

% ordered_cancel_comm_monoid_diff_class.add_diff_inverse
thf(fact_1137_ordered__cancel__comm__monoid__diff__class_Odiff__diff__right,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( minus_minus_nat @ C @ ( minus_minus_nat @ B @ A ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ C @ A ) @ B ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.diff_diff_right
thf(fact_1138_ordered__cancel__comm__monoid__diff__class_Odiff__add__assoc2,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ B @ C ) @ A )
        = ( plus_plus_nat @ ( minus_minus_nat @ B @ A ) @ C ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.diff_add_assoc2
thf(fact_1139_ordered__cancel__comm__monoid__diff__class_Oadd__diff__assoc2,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( plus_plus_nat @ ( minus_minus_nat @ B @ A ) @ C )
        = ( minus_minus_nat @ ( plus_plus_nat @ B @ C ) @ A ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.add_diff_assoc2
thf(fact_1140_ordered__cancel__comm__monoid__diff__class_Odiff__add__assoc,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ C @ B ) @ A )
        = ( plus_plus_nat @ C @ ( minus_minus_nat @ B @ A ) ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.diff_add_assoc
thf(fact_1141_ordered__cancel__comm__monoid__diff__class_Oadd__diff__assoc,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( plus_plus_nat @ C @ ( minus_minus_nat @ B @ A ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ C @ B ) @ A ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.add_diff_assoc
thf(fact_1142_ordered__cancel__comm__monoid__diff__class_Ole__diff__conv2,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( ord_less_eq_nat @ C @ ( minus_minus_nat @ B @ A ) )
        = ( ord_less_eq_nat @ ( plus_plus_nat @ C @ A ) @ B ) ) ) ).

% ordered_cancel_comm_monoid_diff_class.le_diff_conv2
thf(fact_1143_le__add__diff,axiom,
    ! [A: nat,B: nat,C: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ord_less_eq_nat @ C @ ( minus_minus_nat @ ( plus_plus_nat @ B @ C ) @ A ) ) ) ).

% le_add_diff
thf(fact_1144_ordered__cancel__comm__monoid__diff__class_Odiff__add,axiom,
    ! [A: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ B )
     => ( ( plus_plus_nat @ ( minus_minus_nat @ B @ A ) @ A )
        = B ) ) ).

% ordered_cancel_comm_monoid_diff_class.diff_add
thf(fact_1145_le__diff__eq,axiom,
    ! [A: a,C: a,B: a] :
      ( ( ord_less_eq_a @ A @ ( minus_minus_a @ C @ B ) )
      = ( ord_less_eq_a @ ( plus_plus_a @ A @ B ) @ C ) ) ).

% le_diff_eq
thf(fact_1146_diff__le__eq,axiom,
    ! [A: a,B: a,C: a] :
      ( ( ord_less_eq_a @ ( minus_minus_a @ A @ B ) @ C )
      = ( ord_less_eq_a @ A @ ( plus_plus_a @ C @ B ) ) ) ).

% diff_le_eq
thf(fact_1147_le__iff__diff__le__0,axiom,
    ( ord_less_eq_a
    = ( ^ [A3: a,B3: a] : ( ord_less_eq_a @ ( minus_minus_a @ A3 @ B3 ) @ zero_zero_a ) ) ) ).

% le_iff_diff_le_0
thf(fact_1148_ordered__ring__class_Ole__add__iff2,axiom,
    ! [A: a,E3: a,C: a,B: a,D2: a] :
      ( ( ord_less_eq_a @ ( plus_plus_a @ ( times_times_a @ A @ E3 ) @ C ) @ ( plus_plus_a @ ( times_times_a @ B @ E3 ) @ D2 ) )
      = ( ord_less_eq_a @ C @ ( plus_plus_a @ ( times_times_a @ ( minus_minus_a @ B @ A ) @ E3 ) @ D2 ) ) ) ).

% ordered_ring_class.le_add_iff2
thf(fact_1149_ordered__ring__class_Ole__add__iff1,axiom,
    ! [A: a,E3: a,C: a,B: a,D2: a] :
      ( ( ord_less_eq_a @ ( plus_plus_a @ ( times_times_a @ A @ E3 ) @ C ) @ ( plus_plus_a @ ( times_times_a @ B @ E3 ) @ D2 ) )
      = ( ord_less_eq_a @ ( plus_plus_a @ ( times_times_a @ ( minus_minus_a @ A @ B ) @ E3 ) @ C ) @ D2 ) ) ).

% ordered_ring_class.le_add_iff1
thf(fact_1150_nat__diff__split__asm,axiom,
    ! [P: nat > $o,A: nat,B: nat] :
      ( ( P @ ( minus_minus_nat @ A @ B ) )
      = ( ~ ( ( ( ord_less_nat @ A @ B )
              & ~ ( P @ zero_zero_nat ) )
            | ? [D4: nat] :
                ( ( A
                  = ( plus_plus_nat @ B @ D4 ) )
                & ~ ( P @ D4 ) ) ) ) ) ).

% nat_diff_split_asm
thf(fact_1151_nat__diff__split,axiom,
    ! [P: nat > $o,A: nat,B: nat] :
      ( ( P @ ( minus_minus_nat @ A @ B ) )
      = ( ( ( ord_less_nat @ A @ B )
         => ( P @ zero_zero_nat ) )
        & ! [D4: nat] :
            ( ( A
              = ( plus_plus_nat @ B @ D4 ) )
           => ( P @ D4 ) ) ) ) ).

% nat_diff_split
thf(fact_1152_less__diff__conv2,axiom,
    ! [K: nat,J: nat,I: nat] :
      ( ( ord_less_eq_nat @ K @ J )
     => ( ( ord_less_nat @ ( minus_minus_nat @ J @ K ) @ I )
        = ( ord_less_nat @ J @ ( plus_plus_nat @ I @ K ) ) ) ) ).

% less_diff_conv2
thf(fact_1153_nat__eq__add__iff1,axiom,
    ! [J: nat,I: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ J @ I )
     => ( ( ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ M )
          = ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ N ) )
        = ( ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ I @ J ) @ U ) @ M )
          = N ) ) ) ).

% nat_eq_add_iff1
thf(fact_1154_nat__eq__add__iff2,axiom,
    ! [I: nat,J: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ M )
          = ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ N ) )
        = ( M
          = ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ J @ I ) @ U ) @ N ) ) ) ) ).

% nat_eq_add_iff2
thf(fact_1155_nat__le__add__iff1,axiom,
    ! [J: nat,I: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ J @ I )
     => ( ( ord_less_eq_nat @ ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ M ) @ ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ N ) )
        = ( ord_less_eq_nat @ ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ I @ J ) @ U ) @ M ) @ N ) ) ) ).

% nat_le_add_iff1
thf(fact_1156_nat__le__add__iff2,axiom,
    ! [I: nat,J: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( ord_less_eq_nat @ ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ M ) @ ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ N ) )
        = ( ord_less_eq_nat @ M @ ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ J @ I ) @ U ) @ N ) ) ) ) ).

% nat_le_add_iff2
thf(fact_1157_nat__diff__add__eq1,axiom,
    ! [J: nat,I: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ J @ I )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ M ) @ ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ N ) )
        = ( minus_minus_nat @ ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ I @ J ) @ U ) @ M ) @ N ) ) ) ).

% nat_diff_add_eq1
thf(fact_1158_nat__diff__add__eq2,axiom,
    ! [I: nat,J: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( minus_minus_nat @ ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ M ) @ ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ N ) )
        = ( minus_minus_nat @ M @ ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ J @ I ) @ U ) @ N ) ) ) ) ).

% nat_diff_add_eq2
thf(fact_1159_nat__less__add__iff2,axiom,
    ! [I: nat,J: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( ord_less_nat @ ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ M ) @ ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ N ) )
        = ( ord_less_nat @ M @ ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ J @ I ) @ U ) @ N ) ) ) ) ).

% nat_less_add_iff2
thf(fact_1160_nat__less__add__iff1,axiom,
    ! [J: nat,I: nat,U: nat,M: nat,N: nat] :
      ( ( ord_less_eq_nat @ J @ I )
     => ( ( ord_less_nat @ ( plus_plus_nat @ ( times_times_nat @ I @ U ) @ M ) @ ( plus_plus_nat @ ( times_times_nat @ J @ U ) @ N ) )
        = ( ord_less_nat @ ( plus_plus_nat @ ( times_times_nat @ ( minus_minus_nat @ I @ J ) @ U ) @ M ) @ N ) ) ) ).

% nat_less_add_iff1
thf(fact_1161_mult__eq__if,axiom,
    ( times_times_nat
    = ( ^ [M2: nat,N4: nat] : ( if_nat @ ( M2 = zero_zero_nat ) @ zero_zero_nat @ ( plus_plus_nat @ N4 @ ( times_times_nat @ ( minus_minus_nat @ M2 @ one_one_nat ) @ N4 ) ) ) ) ) ).

% mult_eq_if
thf(fact_1162_row__four__block__mat_I2_J,axiom,
    ! [A2: mat_a,Nr1: nat,Nc1: nat,B2: mat_a,Nc2: nat,C2: mat_a,Nr2: nat,D: mat_a,I: nat] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr1 @ Nc1 ) )
     => ( ( member_mat_a @ B2 @ ( carrier_mat_a @ Nr1 @ Nc2 ) )
       => ( ( member_mat_a @ C2 @ ( carrier_mat_a @ Nr2 @ Nc1 ) )
         => ( ( member_mat_a @ D @ ( carrier_mat_a @ Nr2 @ Nc2 ) )
           => ( ~ ( ord_less_nat @ I @ Nr1 )
             => ( ( ord_less_nat @ I @ ( plus_plus_nat @ Nr1 @ Nr2 ) )
               => ( ( row_a @ ( four_block_mat_a @ A2 @ B2 @ C2 @ D ) @ I )
                  = ( append_vec_a @ ( row_a @ C2 @ ( minus_minus_nat @ I @ Nr1 ) ) @ ( row_a @ D @ ( minus_minus_nat @ I @ Nr1 ) ) ) ) ) ) ) ) ) ) ).

% row_four_block_mat(2)
thf(fact_1163_minus__r__inv__mat,axiom,
    ! [A2: mat_a,Nr: nat,Nc: nat] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( ( minus_minus_mat_a @ A2 @ A2 )
        = ( zero_mat_a @ Nr @ Nc ) ) ) ).

% minus_r_inv_mat
thf(fact_1164_index__minus__vec_I2_J,axiom,
    ! [V_1: vec_a,V_2: vec_a] :
      ( ( dim_vec_a @ ( minus_minus_vec_a @ V_1 @ V_2 ) )
      = ( dim_vec_a @ V_2 ) ) ).

% index_minus_vec(2)
thf(fact_1165_minus__cancel__vec,axiom,
    ! [V: vec_a,N: nat] :
      ( ( member_vec_a @ V @ ( carrier_vec_a @ N ) )
     => ( ( minus_minus_vec_a @ V @ V )
        = ( zero_vec_a @ N ) ) ) ).

% minus_cancel_vec
thf(fact_1166_minus__zero__vec,axiom,
    ! [V: vec_a,N: nat] :
      ( ( member_vec_a @ V @ ( carrier_vec_a @ N ) )
     => ( ( minus_minus_vec_a @ V @ ( zero_vec_a @ N ) )
        = V ) ) ).

% minus_zero_vec
thf(fact_1167_zero__minus__vec,axiom,
    ! [V: vec_a,N: nat] :
      ( ( member_vec_a @ V @ ( carrier_vec_a @ N ) )
     => ( ( minus_minus_vec_a @ ( zero_vec_a @ N ) @ V )
        = ( uminus_uminus_vec_a @ V ) ) ) ).

% zero_minus_vec
thf(fact_1168_minus__add__minus__mat,axiom,
    ! [U: mat_a,Nr: nat,Nc: nat,V: mat_a,W: mat_a] :
      ( ( member_mat_a @ U @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( ( member_mat_a @ V @ ( carrier_mat_a @ Nr @ Nc ) )
       => ( ( member_mat_a @ W @ ( carrier_mat_a @ Nr @ Nc ) )
         => ( ( minus_minus_mat_a @ U @ ( plus_plus_mat_a @ V @ W ) )
            = ( minus_minus_mat_a @ ( minus_minus_mat_a @ U @ V ) @ W ) ) ) ) ) ).

% minus_add_minus_mat
thf(fact_1169_minus__mult__distrib__mat,axiom,
    ! [A2: mat_a,Nr: nat,N: nat,B2: mat_a,C2: mat_a,Nc: nat] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ N ) )
     => ( ( member_mat_a @ B2 @ ( carrier_mat_a @ Nr @ N ) )
       => ( ( member_mat_a @ C2 @ ( carrier_mat_a @ N @ Nc ) )
         => ( ( times_times_mat_a @ ( minus_minus_mat_a @ A2 @ B2 ) @ C2 )
            = ( minus_minus_mat_a @ ( times_times_mat_a @ A2 @ C2 ) @ ( times_times_mat_a @ B2 @ C2 ) ) ) ) ) ) ).

% minus_mult_distrib_mat
thf(fact_1170_mult__minus__distrib__mat,axiom,
    ! [A2: mat_a,Nr: nat,N: nat,B2: mat_a,Nc: nat,C2: mat_a] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ N ) )
     => ( ( member_mat_a @ B2 @ ( carrier_mat_a @ N @ Nc ) )
       => ( ( member_mat_a @ C2 @ ( carrier_mat_a @ N @ Nc ) )
         => ( ( times_times_mat_a @ A2 @ ( minus_minus_mat_a @ B2 @ C2 ) )
            = ( minus_minus_mat_a @ ( times_times_mat_a @ A2 @ B2 ) @ ( times_times_mat_a @ A2 @ C2 ) ) ) ) ) ) ).

% mult_minus_distrib_mat
thf(fact_1171_minus__carrier__mat,axiom,
    ! [B2: mat_a,Nr: nat,Nc: nat,A2: mat_a] :
      ( ( member_mat_a @ B2 @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( member_mat_a @ ( minus_minus_mat_a @ A2 @ B2 ) @ ( carrier_mat_a @ Nr @ Nc ) ) ) ).

% minus_carrier_mat
thf(fact_1172_minus__carrier__vec,axiom,
    ! [V_1: vec_a,N: nat,V_2: vec_a] :
      ( ( member_vec_a @ V_1 @ ( carrier_vec_a @ N ) )
     => ( ( member_vec_a @ V_2 @ ( carrier_vec_a @ N ) )
       => ( member_vec_a @ ( minus_minus_vec_a @ V_1 @ V_2 ) @ ( carrier_vec_a @ N ) ) ) ) ).

% minus_carrier_vec
thf(fact_1173_minus__mult__distrib__mat__vec,axiom,
    ! [A2: mat_a,Nr: nat,Nc: nat,B2: mat_a,V: vec_a] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( ( member_mat_a @ B2 @ ( carrier_mat_a @ Nr @ Nc ) )
       => ( ( member_vec_a @ V @ ( carrier_vec_a @ Nc ) )
         => ( ( mult_mat_vec_a @ ( minus_minus_mat_a @ A2 @ B2 ) @ V )
            = ( minus_minus_vec_a @ ( mult_mat_vec_a @ A2 @ V ) @ ( mult_mat_vec_a @ B2 @ V ) ) ) ) ) ) ).

% minus_mult_distrib_mat_vec
thf(fact_1174_psubset__imp__ex__mem,axiom,
    ! [A2: set_vec_a,B2: set_vec_a] :
      ( ( ord_less_set_vec_a @ A2 @ B2 )
     => ? [B4: vec_a] : ( member_vec_a @ B4 @ ( minus_6230920740010926198_vec_a @ B2 @ A2 ) ) ) ).

% psubset_imp_ex_mem
thf(fact_1175_psubset__imp__ex__mem,axiom,
    ! [A2: set_mat_a,B2: set_mat_a] :
      ( ( ord_less_set_mat_a @ A2 @ B2 )
     => ? [B4: mat_a] : ( member_mat_a @ B4 @ ( minus_4757590266979429866_mat_a @ B2 @ A2 ) ) ) ).

% psubset_imp_ex_mem
thf(fact_1176_transpose__minus,axiom,
    ! [A2: mat_a,Nr: nat,Nc: nat,B2: mat_a] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( ( member_mat_a @ B2 @ ( carrier_mat_a @ Nr @ Nc ) )
       => ( ( transpose_mat_a @ ( minus_minus_mat_a @ A2 @ B2 ) )
          = ( minus_minus_mat_a @ ( transpose_mat_a @ A2 ) @ ( transpose_mat_a @ B2 ) ) ) ) ) ).

% transpose_minus
thf(fact_1177_add__diff__eq__vec,axiom,
    ! [Y3: vec_a,N: nat,X3: vec_a,Z2: vec_a] :
      ( ( member_vec_a @ Y3 @ ( carrier_vec_a @ N ) )
     => ( ( member_vec_a @ X3 @ ( carrier_vec_a @ N ) )
       => ( ( member_vec_a @ Z2 @ ( carrier_vec_a @ N ) )
         => ( ( plus_plus_vec_a @ Y3 @ ( minus_minus_vec_a @ X3 @ Z2 ) )
            = ( minus_minus_vec_a @ ( plus_plus_vec_a @ Y3 @ X3 ) @ Z2 ) ) ) ) ) ).

% add_diff_eq_vec
thf(fact_1178_add__diff__cancel__right__vec,axiom,
    ! [A: vec_a,N: nat,B: vec_a] :
      ( ( member_vec_a @ A @ ( carrier_vec_a @ N ) )
     => ( ( member_vec_a @ B @ ( carrier_vec_a @ N ) )
       => ( ( minus_minus_vec_a @ ( plus_plus_vec_a @ A @ B ) @ B )
          = A ) ) ) ).

% add_diff_cancel_right_vec
thf(fact_1179_minus__add__minus__vec,axiom,
    ! [U: vec_a,N: nat,V: vec_a,W: vec_a] :
      ( ( member_vec_a @ U @ ( carrier_vec_a @ N ) )
     => ( ( member_vec_a @ V @ ( carrier_vec_a @ N ) )
       => ( ( member_vec_a @ W @ ( carrier_vec_a @ N ) )
         => ( ( minus_minus_vec_a @ U @ ( plus_plus_vec_a @ V @ W ) )
            = ( minus_minus_vec_a @ ( minus_minus_vec_a @ U @ V ) @ W ) ) ) ) ) ).

% minus_add_minus_vec
thf(fact_1180_mult__minus__distrib__mat__vec,axiom,
    ! [A2: mat_a,Nr: nat,Nc: nat,V: vec_a,W: vec_a] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( ( member_vec_a @ V @ ( carrier_vec_a @ Nc ) )
       => ( ( member_vec_a @ W @ ( carrier_vec_a @ Nc ) )
         => ( ( mult_mat_vec_a @ A2 @ ( minus_minus_vec_a @ V @ W ) )
            = ( minus_minus_vec_a @ ( mult_mat_vec_a @ A2 @ V ) @ ( mult_mat_vec_a @ A2 @ W ) ) ) ) ) ) ).

% mult_minus_distrib_mat_vec
thf(fact_1181_minus__add__uminus__vec,axiom,
    ! [V: vec_a,N: nat,W: vec_a] :
      ( ( member_vec_a @ V @ ( carrier_vec_a @ N ) )
     => ( ( member_vec_a @ W @ ( carrier_vec_a @ N ) )
       => ( ( minus_minus_vec_a @ V @ W )
          = ( plus_plus_vec_a @ V @ ( uminus_uminus_vec_a @ W ) ) ) ) ) ).

% minus_add_uminus_vec
thf(fact_1182_uminus__add__minus__vec,axiom,
    ! [L: vec_a,N: nat,R: vec_a] :
      ( ( member_vec_a @ L @ ( carrier_vec_a @ N ) )
     => ( ( member_vec_a @ R @ ( carrier_vec_a @ N ) )
       => ( ( uminus_uminus_vec_a @ ( plus_plus_vec_a @ L @ R ) )
          = ( minus_minus_vec_a @ ( uminus_uminus_vec_a @ L ) @ R ) ) ) ) ).

% uminus_add_minus_vec
thf(fact_1183_vec__le__iff__diff__le__0,axiom,
    ( ord_less_eq_vec_a
    = ( ^ [A3: vec_a,B3: vec_a] : ( ord_less_eq_vec_a @ ( minus_minus_vec_a @ A3 @ B3 ) @ ( zero_vec_a @ ( dim_vec_a @ A3 ) ) ) ) ) ).

% vec_le_iff_diff_le_0
thf(fact_1184_add__uminus__minus__mat,axiom,
    ! [A2: mat_a,Nr: nat,Nc: nat,B2: mat_a] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( ( member_mat_a @ B2 @ ( carrier_mat_a @ Nr @ Nc ) )
       => ( ( plus_plus_mat_a @ A2 @ ( uminus_uminus_mat_a @ B2 ) )
          = ( minus_minus_mat_a @ A2 @ B2 ) ) ) ) ).

% add_uminus_minus_mat
thf(fact_1185_minus__add__uminus__mat,axiom,
    ! [A2: mat_a,Nr: nat,Nc: nat,B2: mat_a] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( ( member_mat_a @ B2 @ ( carrier_mat_a @ Nr @ Nc ) )
       => ( ( minus_minus_mat_a @ A2 @ B2 )
          = ( plus_plus_mat_a @ A2 @ ( uminus_uminus_mat_a @ B2 ) ) ) ) ) ).

% minus_add_uminus_mat
thf(fact_1186_uminus__add__minus__mat,axiom,
    ! [L: mat_a,Nr: nat,Nc: nat,R: mat_a] :
      ( ( member_mat_a @ L @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( ( member_mat_a @ R @ ( carrier_mat_a @ Nr @ Nc ) )
       => ( ( uminus_uminus_mat_a @ ( plus_plus_mat_a @ L @ R ) )
          = ( minus_minus_mat_a @ ( uminus_uminus_mat_a @ L ) @ R ) ) ) ) ).

% uminus_add_minus_mat
thf(fact_1187_Diff__iff,axiom,
    ! [C: vec_a,A2: set_vec_a,B2: set_vec_a] :
      ( ( member_vec_a @ C @ ( minus_6230920740010926198_vec_a @ A2 @ B2 ) )
      = ( ( member_vec_a @ C @ A2 )
        & ~ ( member_vec_a @ C @ B2 ) ) ) ).

% Diff_iff
thf(fact_1188_Diff__iff,axiom,
    ! [C: mat_a,A2: set_mat_a,B2: set_mat_a] :
      ( ( member_mat_a @ C @ ( minus_4757590266979429866_mat_a @ A2 @ B2 ) )
      = ( ( member_mat_a @ C @ A2 )
        & ~ ( member_mat_a @ C @ B2 ) ) ) ).

% Diff_iff
thf(fact_1189_DiffI,axiom,
    ! [C: vec_a,A2: set_vec_a,B2: set_vec_a] :
      ( ( member_vec_a @ C @ A2 )
     => ( ~ ( member_vec_a @ C @ B2 )
       => ( member_vec_a @ C @ ( minus_6230920740010926198_vec_a @ A2 @ B2 ) ) ) ) ).

% DiffI
thf(fact_1190_DiffI,axiom,
    ! [C: mat_a,A2: set_mat_a,B2: set_mat_a] :
      ( ( member_mat_a @ C @ A2 )
     => ( ~ ( member_mat_a @ C @ B2 )
       => ( member_mat_a @ C @ ( minus_4757590266979429866_mat_a @ A2 @ B2 ) ) ) ) ).

% DiffI
thf(fact_1191_DiffD2,axiom,
    ! [C: vec_a,A2: set_vec_a,B2: set_vec_a] :
      ( ( member_vec_a @ C @ ( minus_6230920740010926198_vec_a @ A2 @ B2 ) )
     => ~ ( member_vec_a @ C @ B2 ) ) ).

% DiffD2
thf(fact_1192_DiffD2,axiom,
    ! [C: mat_a,A2: set_mat_a,B2: set_mat_a] :
      ( ( member_mat_a @ C @ ( minus_4757590266979429866_mat_a @ A2 @ B2 ) )
     => ~ ( member_mat_a @ C @ B2 ) ) ).

% DiffD2
thf(fact_1193_DiffD1,axiom,
    ! [C: vec_a,A2: set_vec_a,B2: set_vec_a] :
      ( ( member_vec_a @ C @ ( minus_6230920740010926198_vec_a @ A2 @ B2 ) )
     => ( member_vec_a @ C @ A2 ) ) ).

% DiffD1
thf(fact_1194_DiffD1,axiom,
    ! [C: mat_a,A2: set_mat_a,B2: set_mat_a] :
      ( ( member_mat_a @ C @ ( minus_4757590266979429866_mat_a @ A2 @ B2 ) )
     => ( member_mat_a @ C @ A2 ) ) ).

% DiffD1
thf(fact_1195_DiffE,axiom,
    ! [C: vec_a,A2: set_vec_a,B2: set_vec_a] :
      ( ( member_vec_a @ C @ ( minus_6230920740010926198_vec_a @ A2 @ B2 ) )
     => ~ ( ( member_vec_a @ C @ A2 )
         => ( member_vec_a @ C @ B2 ) ) ) ).

% DiffE
thf(fact_1196_DiffE,axiom,
    ! [C: mat_a,A2: set_mat_a,B2: set_mat_a] :
      ( ( member_mat_a @ C @ ( minus_4757590266979429866_mat_a @ A2 @ B2 ) )
     => ~ ( ( member_mat_a @ C @ A2 )
         => ( member_mat_a @ C @ B2 ) ) ) ).

% DiffE
thf(fact_1197_row__echelon__form__imp__1__or__0__row,axiom,
    ! [A2: mat_a,N: nat] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ N @ N ) )
     => ( ( gauss_5855338539171749649form_a @ A2 )
       => ( ( A2
            = ( one_mat_a @ N ) )
          | ( ( ord_less_nat @ zero_zero_nat @ N )
            & ( ( row_a @ A2 @ ( minus_minus_nat @ N @ one_one_nat ) )
              = ( zero_vec_a @ N ) ) ) ) ) ) ).

% row_echelon_form_imp_1_or_0_row
thf(fact_1198_nat__descend__induct,axiom,
    ! [N: nat,P: nat > $o,M: nat] :
      ( ! [K3: nat] :
          ( ( ord_less_nat @ N @ K3 )
         => ( P @ K3 ) )
     => ( ! [K3: nat] :
            ( ( ord_less_eq_nat @ K3 @ N )
           => ( ! [I2: nat] :
                  ( ( ord_less_nat @ K3 @ I2 )
                 => ( P @ I2 ) )
             => ( P @ K3 ) ) )
       => ( P @ M ) ) ) ).

% nat_descend_induct
thf(fact_1199_row__echelon__form__one__dim0,axiom,
    gauss_5855338539171749649form_a @ ( one_mat_a @ zero_zero_nat ) ).

% row_echelon_form_one_dim0
thf(fact_1200_row__echelon__form__dim0__row,axiom,
    ! [A2: mat_a,N: nat] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ zero_zero_nat @ N ) )
     => ( gauss_5855338539171749649form_a @ A2 ) ) ).

% row_echelon_form_dim0_row
thf(fact_1201_row__echelon__form__dim0__col,axiom,
    ! [A2: mat_a,N: nat] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ N @ zero_zero_nat ) )
     => ( gauss_5855338539171749649form_a @ A2 ) ) ).

% row_echelon_form_dim0_col
thf(fact_1202_find__base__vector__not__1_I3_J,axiom,
    ! [A2: mat_a,N: nat] :
      ( ( gauss_5855338539171749649form_a @ A2 )
     => ( ( member_mat_a @ A2 @ ( carrier_mat_a @ N @ N ) )
       => ( ( A2
           != ( one_mat_a @ N ) )
         => ( ( mult_mat_vec_a @ A2 @ ( gauss_6280258074615264798ctor_a @ A2 ) )
            = ( zero_vec_a @ N ) ) ) ) ) ).

% find_base_vector_not_1(3)
thf(fact_1203_gauss__jordan__single_I1_J,axiom,
    ! [A2: mat_a,Nr: nat,Nc: nat,C2: mat_a,X3: vec_a] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( ( ( gauss_4684855476144371464ngle_a @ A2 )
          = C2 )
       => ( ( member_vec_a @ X3 @ ( carrier_vec_a @ Nc ) )
         => ( ( ( mult_mat_vec_a @ A2 @ X3 )
              = ( zero_vec_a @ Nr ) )
            = ( ( mult_mat_vec_a @ C2 @ X3 )
              = ( zero_vec_a @ Nr ) ) ) ) ) ) ).

% gauss_jordan_single(1)
thf(fact_1204_gauss__jordan__single_I2_J,axiom,
    ! [A2: mat_a,Nr: nat,Nc: nat,C2: mat_a] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( ( ( gauss_4684855476144371464ngle_a @ A2 )
          = C2 )
       => ( member_mat_a @ C2 @ ( carrier_mat_a @ Nr @ Nc ) ) ) ) ).

% gauss_jordan_single(2)
thf(fact_1205_gauss__jordan__single_I3_J,axiom,
    ! [A2: mat_a,Nr: nat,Nc: nat,C2: mat_a] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( ( ( gauss_4684855476144371464ngle_a @ A2 )
          = C2 )
       => ( gauss_5855338539171749649form_a @ C2 ) ) ) ).

% gauss_jordan_single(3)
thf(fact_1206_gauss__jordan__single_I4_J,axiom,
    ! [A2: mat_a,Nr: nat,Nc: nat,C2: mat_a] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( ( ( gauss_4684855476144371464ngle_a @ A2 )
          = C2 )
       => ? [P4: mat_a,Q2: mat_a] :
            ( ( C2
              = ( times_times_mat_a @ P4 @ A2 ) )
            & ( member_mat_a @ P4 @ ( carrier_mat_a @ Nr @ Nr ) )
            & ( member_mat_a @ Q2 @ ( carrier_mat_a @ Nr @ Nr ) )
            & ( ( times_times_mat_a @ P4 @ Q2 )
              = ( one_mat_a @ Nr ) )
            & ( ( times_times_mat_a @ Q2 @ P4 )
              = ( one_mat_a @ Nr ) ) ) ) ) ).

% gauss_jordan_single(4)
thf(fact_1207_find__base__vector__not__1_I1_J,axiom,
    ! [A2: mat_a,N: nat] :
      ( ( gauss_5855338539171749649form_a @ A2 )
     => ( ( member_mat_a @ A2 @ ( carrier_mat_a @ N @ N ) )
       => ( ( A2
           != ( one_mat_a @ N ) )
         => ( member_vec_a @ ( gauss_6280258074615264798ctor_a @ A2 ) @ ( carrier_vec_a @ N ) ) ) ) ) ).

% find_base_vector_not_1(1)
thf(fact_1208_find__base__vector__not__1_I2_J,axiom,
    ! [A2: mat_a,N: nat] :
      ( ( gauss_5855338539171749649form_a @ A2 )
     => ( ( member_mat_a @ A2 @ ( carrier_mat_a @ N @ N ) )
       => ( ( A2
           != ( one_mat_a @ N ) )
         => ( ( gauss_6280258074615264798ctor_a @ A2 )
           != ( zero_vec_a @ N ) ) ) ) ) ).

% find_base_vector_not_1(2)
thf(fact_1209_diff__diff__less,axiom,
    ! [I: nat,M: nat,N: nat] :
      ( ( ord_less_nat @ I @ ( minus_minus_nat @ M @ ( minus_minus_nat @ M @ N ) ) )
      = ( ( ord_less_nat @ I @ M )
        & ( ord_less_nat @ I @ N ) ) ) ).

% diff_diff_less
thf(fact_1210_forall__finite_I1_J,axiom,
    ! [P: nat > $o,I2: nat] :
      ( ( ord_less_nat @ I2 @ zero_zero_nat )
     => ( P @ I2 ) ) ).

% forall_finite(1)
thf(fact_1211_complete__interval,axiom,
    ! [A: nat,B: nat,P: nat > $o] :
      ( ( ord_less_nat @ A @ B )
     => ( ( P @ A )
       => ( ~ ( P @ B )
         => ? [C4: nat] :
              ( ( ord_less_eq_nat @ A @ C4 )
              & ( ord_less_eq_nat @ C4 @ B )
              & ! [X4: nat] :
                  ( ( ( ord_less_eq_nat @ A @ X4 )
                    & ( ord_less_nat @ X4 @ C4 ) )
                 => ( P @ X4 ) )
              & ! [D5: nat] :
                  ( ! [X: nat] :
                      ( ( ( ord_less_eq_nat @ A @ X )
                        & ( ord_less_nat @ X @ D5 ) )
                     => ( P @ X ) )
                 => ( ord_less_eq_nat @ D5 @ C4 ) ) ) ) ) ) ).

% complete_interval
thf(fact_1212_pinf_I6_J,axiom,
    ! [T2: nat] :
    ? [Z3: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ Z3 @ X4 )
     => ~ ( ord_less_eq_nat @ X4 @ T2 ) ) ).

% pinf(6)
thf(fact_1213_pinf_I6_J,axiom,
    ! [T2: a] :
    ? [Z3: a] :
    ! [X4: a] :
      ( ( ord_less_a @ Z3 @ X4 )
     => ~ ( ord_less_eq_a @ X4 @ T2 ) ) ).

% pinf(6)
thf(fact_1214_minf_I7_J,axiom,
    ! [T2: nat] :
    ? [Z3: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ X4 @ Z3 )
     => ~ ( ord_less_nat @ T2 @ X4 ) ) ).

% minf(7)
thf(fact_1215_minf_I5_J,axiom,
    ! [T2: nat] :
    ? [Z3: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ X4 @ Z3 )
     => ( ord_less_nat @ X4 @ T2 ) ) ).

% minf(5)
thf(fact_1216_minf_I4_J,axiom,
    ! [T2: nat] :
    ? [Z3: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ X4 @ Z3 )
     => ( X4 != T2 ) ) ).

% minf(4)
thf(fact_1217_minf_I3_J,axiom,
    ! [T2: nat] :
    ? [Z3: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ X4 @ Z3 )
     => ( X4 != T2 ) ) ).

% minf(3)
thf(fact_1218_minf_I2_J,axiom,
    ! [P: nat > $o,P5: nat > $o,Q: nat > $o,Q3: nat > $o] :
      ( ? [Z4: nat] :
        ! [X: nat] :
          ( ( ord_less_nat @ X @ Z4 )
         => ( ( P @ X )
            = ( P5 @ X ) ) )
     => ( ? [Z4: nat] :
          ! [X: nat] :
            ( ( ord_less_nat @ X @ Z4 )
           => ( ( Q @ X )
              = ( Q3 @ X ) ) )
       => ? [Z3: nat] :
          ! [X4: nat] :
            ( ( ord_less_nat @ X4 @ Z3 )
           => ( ( ( P @ X4 )
                | ( Q @ X4 ) )
              = ( ( P5 @ X4 )
                | ( Q3 @ X4 ) ) ) ) ) ) ).

% minf(2)
thf(fact_1219_minf_I1_J,axiom,
    ! [P: nat > $o,P5: nat > $o,Q: nat > $o,Q3: nat > $o] :
      ( ? [Z4: nat] :
        ! [X: nat] :
          ( ( ord_less_nat @ X @ Z4 )
         => ( ( P @ X )
            = ( P5 @ X ) ) )
     => ( ? [Z4: nat] :
          ! [X: nat] :
            ( ( ord_less_nat @ X @ Z4 )
           => ( ( Q @ X )
              = ( Q3 @ X ) ) )
       => ? [Z3: nat] :
          ! [X4: nat] :
            ( ( ord_less_nat @ X4 @ Z3 )
           => ( ( ( P @ X4 )
                & ( Q @ X4 ) )
              = ( ( P5 @ X4 )
                & ( Q3 @ X4 ) ) ) ) ) ) ).

% minf(1)
thf(fact_1220_pinf_I7_J,axiom,
    ! [T2: nat] :
    ? [Z3: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ Z3 @ X4 )
     => ( ord_less_nat @ T2 @ X4 ) ) ).

% pinf(7)
thf(fact_1221_pinf_I5_J,axiom,
    ! [T2: nat] :
    ? [Z3: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ Z3 @ X4 )
     => ~ ( ord_less_nat @ X4 @ T2 ) ) ).

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

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

% pinf(3)
thf(fact_1224_pinf_I2_J,axiom,
    ! [P: nat > $o,P5: nat > $o,Q: nat > $o,Q3: nat > $o] :
      ( ? [Z4: nat] :
        ! [X: nat] :
          ( ( ord_less_nat @ Z4 @ X )
         => ( ( P @ X )
            = ( P5 @ X ) ) )
     => ( ? [Z4: nat] :
          ! [X: nat] :
            ( ( ord_less_nat @ Z4 @ X )
           => ( ( Q @ X )
              = ( Q3 @ X ) ) )
       => ? [Z3: nat] :
          ! [X4: nat] :
            ( ( ord_less_nat @ Z3 @ X4 )
           => ( ( ( P @ X4 )
                | ( Q @ X4 ) )
              = ( ( P5 @ X4 )
                | ( Q3 @ X4 ) ) ) ) ) ) ).

% pinf(2)
thf(fact_1225_pinf_I1_J,axiom,
    ! [P: nat > $o,P5: nat > $o,Q: nat > $o,Q3: nat > $o] :
      ( ? [Z4: nat] :
        ! [X: nat] :
          ( ( ord_less_nat @ Z4 @ X )
         => ( ( P @ X )
            = ( P5 @ X ) ) )
     => ( ? [Z4: nat] :
          ! [X: nat] :
            ( ( ord_less_nat @ Z4 @ X )
           => ( ( Q @ X )
              = ( Q3 @ X ) ) )
       => ? [Z3: nat] :
          ! [X4: nat] :
            ( ( ord_less_nat @ Z3 @ X4 )
           => ( ( ( P @ X4 )
                & ( Q @ X4 ) )
              = ( ( P5 @ X4 )
                & ( Q3 @ X4 ) ) ) ) ) ) ).

% pinf(1)
thf(fact_1226_minf_I8_J,axiom,
    ! [T2: nat] :
    ? [Z3: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ X4 @ Z3 )
     => ~ ( ord_less_eq_nat @ T2 @ X4 ) ) ).

% minf(8)
thf(fact_1227_minf_I8_J,axiom,
    ! [T2: a] :
    ? [Z3: a] :
    ! [X4: a] :
      ( ( ord_less_a @ X4 @ Z3 )
     => ~ ( ord_less_eq_a @ T2 @ X4 ) ) ).

% minf(8)
thf(fact_1228_minf_I6_J,axiom,
    ! [T2: nat] :
    ? [Z3: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ X4 @ Z3 )
     => ( ord_less_eq_nat @ X4 @ T2 ) ) ).

% minf(6)
thf(fact_1229_minf_I6_J,axiom,
    ! [T2: a] :
    ? [Z3: a] :
    ! [X4: a] :
      ( ( ord_less_a @ X4 @ Z3 )
     => ( ord_less_eq_a @ X4 @ T2 ) ) ).

% minf(6)
thf(fact_1230_pinf_I8_J,axiom,
    ! [T2: nat] :
    ? [Z3: nat] :
    ! [X4: nat] :
      ( ( ord_less_nat @ Z3 @ X4 )
     => ( ord_less_eq_nat @ T2 @ X4 ) ) ).

% pinf(8)
thf(fact_1231_pinf_I8_J,axiom,
    ! [T2: a] :
    ? [Z3: a] :
    ! [X4: a] :
      ( ( ord_less_a @ Z3 @ X4 )
     => ( ord_less_eq_a @ T2 @ X4 ) ) ).

% pinf(8)
thf(fact_1232_addrow__mat__inv,axiom,
    ! [K: nat,N: nat,L: nat,A: a] :
      ( ( ord_less_nat @ K @ N )
     => ( ( ord_less_nat @ L @ N )
       => ( ( K != L )
         => ( ( times_times_mat_a @ ( gauss_8159914756388622152_mat_a @ N @ A @ K @ L ) @ ( gauss_8159914756388622152_mat_a @ N @ ( uminus_uminus_a @ A ) @ K @ L ) )
            = ( one_mat_a @ N ) ) ) ) ) ).

% addrow_mat_inv
thf(fact_1233_index__mult__mat__vec,axiom,
    ! [I: nat,A2: mat_a,V: vec_a] :
      ( ( ord_less_nat @ I @ ( dim_row_a @ A2 ) )
     => ( ( vec_index_a @ ( mult_mat_vec_a @ A2 @ V ) @ I )
        = ( scalar_prod_a @ ( row_a @ A2 @ I ) @ V ) ) ) ).

% index_mult_mat_vec
thf(fact_1234_carrier__matD_I1_J,axiom,
    ! [A2: mat_a,Nr: nat,Nc: nat] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( ( dim_row_a @ A2 )
        = Nr ) ) ).

% carrier_matD(1)
thf(fact_1235_index__one__mat_I2_J,axiom,
    ! [N: nat] :
      ( ( dim_row_a @ ( one_mat_a @ N ) )
      = N ) ).

% index_one_mat(2)
thf(fact_1236_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_1237_index__uminus__mat_I2_J,axiom,
    ! [A2: mat_a] :
      ( ( dim_row_a @ ( uminus_uminus_mat_a @ A2 ) )
      = ( dim_row_a @ A2 ) ) ).

% index_uminus_mat(2)
thf(fact_1238_index__mat__four__block_I2_J,axiom,
    ! [A2: mat_a,B2: mat_a,C2: mat_a,D: mat_a] :
      ( ( dim_row_a @ ( four_block_mat_a @ A2 @ B2 @ C2 @ D ) )
      = ( plus_plus_nat @ ( dim_row_a @ A2 ) @ ( dim_row_a @ D ) ) ) ).

% index_mat_four_block(2)
thf(fact_1239_left__mult__one__mat_H,axiom,
    ! [A2: mat_a,N: nat] :
      ( ( ( dim_row_a @ A2 )
        = N )
     => ( ( times_times_mat_a @ ( one_mat_a @ N ) @ A2 )
        = A2 ) ) ).

% left_mult_one_mat'
thf(fact_1240_dim__mult__mat__vec,axiom,
    ! [A2: mat_a,V: vec_a] :
      ( ( dim_vec_a @ ( mult_mat_vec_a @ A2 @ V ) )
      = ( dim_row_a @ A2 ) ) ).

% dim_mult_mat_vec
thf(fact_1241_mat__of__row__dim_I1_J,axiom,
    ! [Y3: vec_a] :
      ( ( dim_row_a @ ( mat_of_row_a @ Y3 ) )
      = one_one_nat ) ).

% mat_of_row_dim(1)
thf(fact_1242_mat__of__col__dim_I1_J,axiom,
    ! [V: vec_a] :
      ( ( dim_row_a @ ( missing_mat_of_col_a @ V ) )
      = ( dim_vec_a @ V ) ) ).

% mat_of_col_dim(1)
thf(fact_1243_row__uminus,axiom,
    ! [I: nat,A2: mat_a] :
      ( ( ord_less_nat @ I @ ( dim_row_a @ A2 ) )
     => ( ( row_a @ ( uminus_uminus_mat_a @ A2 ) @ I )
        = ( uminus_uminus_vec_a @ ( row_a @ A2 @ I ) ) ) ) ).

% row_uminus
thf(fact_1244_addrow__mat__carrier,axiom,
    ! [N: nat,A: a,K: nat,L: nat] : ( member_mat_a @ ( gauss_8159914756388622152_mat_a @ N @ A @ K @ L ) @ ( carrier_mat_a @ N @ N ) ) ).

% addrow_mat_carrier
thf(fact_1245_mat__of__row__dim__row__1,axiom,
    ! [A2: mat_a] :
      ( ( ( dim_row_a @ A2 )
        = one_one_nat )
      = ( A2
        = ( mat_of_row_a @ ( row_a @ A2 @ zero_zero_nat ) ) ) ) ).

% mat_of_row_dim_row_1
thf(fact_1246_append__rows__def,axiom,
    ( append_rows_a
    = ( ^ [A5: mat_a,B5: mat_a] : ( four_block_mat_a @ A5 @ ( zero_mat_a @ ( dim_row_a @ A5 ) @ zero_zero_nat ) @ B5 @ ( zero_mat_a @ ( dim_row_a @ B5 ) @ zero_zero_nat ) ) ) ) ).

% append_rows_def
thf(fact_1247_mat__row__first__last__append,axiom,
    ! [A2: mat_a,M: nat,N: nat] :
      ( ( ( dim_row_a @ A2 )
        = ( plus_plus_nat @ M @ N ) )
     => ( ( append_rows_a @ ( missin3040492613037353666irst_a @ A2 @ M ) @ ( missin5577565584678110354last_a @ A2 @ N ) )
        = A2 ) ) ).

% mat_row_first_last_append
thf(fact_1248_addrow__mat,axiom,
    ! [A2: mat_a,N: nat,Nc: nat,L: nat,A: a,K: nat] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ N @ Nc ) )
     => ( ( ord_less_nat @ L @ N )
       => ( ( gauss_3441994962245461172_gen_a @ plus_plus_a @ times_times_a @ A @ K @ L @ A2 )
          = ( times_times_mat_a @ ( gauss_8159914756388622152_mat_a @ N @ A @ K @ L ) @ A2 ) ) ) ) ).

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

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

% addrow_carrier
thf(fact_1251_mat__delete__carrier,axiom,
    ! [A2: mat_a,M: nat,N: nat,I: nat,J: nat] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ M @ N ) )
     => ( member_mat_a @ ( mat_delete_a @ A2 @ I @ J ) @ ( carrier_mat_a @ ( minus_minus_nat @ M @ one_one_nat ) @ ( minus_minus_nat @ N @ one_one_nat ) ) ) ) ).

% mat_delete_carrier
thf(fact_1252_inverts__mat__def,axiom,
    ( inverts_mat_a
    = ( ^ [A5: mat_a,B5: mat_a] :
          ( ( times_times_mat_a @ A5 @ B5 )
          = ( one_mat_a @ ( dim_row_a @ A5 ) ) ) ) ) ).

% inverts_mat_def
thf(fact_1253_system__iff,axiom,
    ! [Q: mat_a,V: vec_a] :
      ( ( ( dim_row_a @ Q )
        = ( dim_col_a @ Q ) )
     => ( ( ( dim_row_a @ Q )
          = ( dim_vec_a @ V ) )
       => ( ( ( mult_mat_vec_a @ ( transpose_mat_a @ Q ) @ V )
            = V )
          = ( ( mult_mat_vec_a @ ( minus_minus_mat_a @ ( transpose_mat_a @ Q ) @ ( one_mat_a @ ( dim_row_a @ Q ) ) ) @ V )
            = ( zero_vec_a @ ( dim_vec_a @ V ) ) ) ) ) ) ).

% system_iff
thf(fact_1254_carrier__matD_I2_J,axiom,
    ! [A2: mat_a,Nr: nat,Nc: nat] :
      ( ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc ) )
     => ( ( dim_col_a @ A2 )
        = Nc ) ) ).

% carrier_matD(2)
thf(fact_1255_index__one__mat_I3_J,axiom,
    ! [N: nat] :
      ( ( dim_col_a @ ( one_mat_a @ N ) )
      = N ) ).

% index_one_mat(3)
thf(fact_1256_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_1257_index__uminus__mat_I3_J,axiom,
    ! [A2: mat_a] :
      ( ( dim_col_a @ ( uminus_uminus_mat_a @ A2 ) )
      = ( dim_col_a @ A2 ) ) ).

% index_uminus_mat(3)
thf(fact_1258_carrier__matI,axiom,
    ! [A2: mat_a,Nr: nat,Nc: nat] :
      ( ( ( dim_row_a @ A2 )
        = Nr )
     => ( ( ( dim_col_a @ A2 )
          = Nc )
       => ( member_mat_a @ A2 @ ( carrier_mat_a @ Nr @ Nc ) ) ) ) ).

% carrier_matI
thf(fact_1259_index__mat__four__block_I3_J,axiom,
    ! [A2: mat_a,B2: mat_a,C2: mat_a,D: mat_a] :
      ( ( dim_col_a @ ( four_block_mat_a @ A2 @ B2 @ C2 @ D ) )
      = ( plus_plus_nat @ ( dim_col_a @ A2 ) @ ( dim_col_a @ D ) ) ) ).

% index_mat_four_block(3)
thf(fact_1260_right__mult__one__mat_H,axiom,
    ! [A2: mat_a,N: nat] :
      ( ( ( dim_col_a @ A2 )
        = N )
     => ( ( times_times_mat_a @ A2 @ ( one_mat_a @ N ) )
        = A2 ) ) ).

% right_mult_one_mat'
thf(fact_1261_index__transpose__mat_I3_J,axiom,
    ! [A2: mat_a] :
      ( ( dim_col_a @ ( transpose_mat_a @ A2 ) )
      = ( dim_row_a @ A2 ) ) ).

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

% index_transpose_mat(2)
thf(fact_1263_index__row_I2_J,axiom,
    ! [A2: mat_a,I: nat] :
      ( ( dim_vec_a @ ( row_a @ A2 @ I ) )
      = ( dim_col_a @ A2 ) ) ).

% index_row(2)
thf(fact_1264_mat__of__row__dim_I2_J,axiom,
    ! [Y3: vec_a] :
      ( ( dim_col_a @ ( mat_of_row_a @ Y3 ) )
      = ( dim_vec_a @ Y3 ) ) ).

% mat_of_row_dim(2)
thf(fact_1265_right__mult__zero__mat_H,axiom,
    ! [A2: mat_a,N: nat,Nc: nat] :
      ( ( ( dim_col_a @ A2 )
        = N )
     => ( ( times_times_mat_a @ A2 @ ( zero_mat_a @ N @ Nc ) )
        = ( zero_mat_a @ ( dim_row_a @ A2 ) @ Nc ) ) ) ).

% right_mult_zero_mat'
thf(fact_1266_left__mult__zero__mat_H,axiom,
    ! [A2: mat_a,N: nat,Nr: nat] :
      ( ( ( dim_row_a @ A2 )
        = N )
     => ( ( times_times_mat_a @ ( zero_mat_a @ Nr @ N ) @ A2 )
        = ( zero_mat_a @ Nr @ ( dim_col_a @ A2 ) ) ) ) ).

% left_mult_zero_mat'

% Helper facts (3)
thf(help_If_3_1_If_001t__Nat__Onat_T,axiom,
    ! [P: $o] :
      ( ( P = $true )
      | ( P = $false ) ) ).

thf(help_If_2_1_If_001t__Nat__Onat_T,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( if_nat @ $false @ X3 @ Y3 )
      = Y3 ) ).

thf(help_If_1_1_If_001t__Nat__Onat_T,axiom,
    ! [X3: nat,Y3: nat] :
      ( ( if_nat @ $true @ X3 @ Y3 )
      = X3 ) ).

% Conjectures (1)
thf(conj_0,conjecture,
    member_vec_a @ ( vec_last_a @ ulv @ nr ) @ ( carrier_vec_a @ nr ) ).

%------------------------------------------------------------------------------