TSTP Solution File: ITP338_1 by Vampire-SAT---4.8
View Problem
- Process Solution
%------------------------------------------------------------------------------
% File : Vampire-SAT---4.8
% Problem : ITP001_1 : TPTP v8.2.0. Released v8.1.0.
% Transfm : none
% Format : tptp:raw
% Command : vampire --mode casc_sat -m 16384 --cores 7 -t %d %s
% Computer : n017.cluster.edu
% Model : x86_64 x86_64
% CPU : Intel(R) Xeon(R) CPU E5-2620 v4 2.10GHz
% Memory : 8042.1875MB
% OS : Linux 3.10.0-693.el7.x86_64
% CPULimit : 300s
% WCLimit : 300s
% DateTime : Mon May 20 23:09:30 EDT 2024
% Result : Theorem 0.19s 0.54s
% Output : Refutation 0.19s
% Verified :
% SZS Type : Refutation
% Derivation depth : 9
% Number of leaves : 409
% Syntax : Number of formulae : 447 ( 19 unt; 391 typ; 0 def)
% Number of atoms : 205 ( 108 equ)
% Maximal formula atoms : 18 ( 3 avg)
% Number of connectives : 229 ( 80 ~; 74 |; 46 &)
% ( 5 <=>; 24 =>; 0 <=; 0 <~>)
% Maximal formula depth : 8 ( 3 avg)
% Maximal term depth : 10 ( 3 avg)
% Number arithmetic : 62 ( 8 atm; 26 fun; 26 num; 2 var)
% Number of types : 72 ( 70 usr; 1 ari)
% Number of type conns : 467 ( 286 >; 181 *; 0 +; 0 <<)
% Number of predicates : 54 ( 50 usr; 10 prp; 0-3 aty)
% Number of functors : 282 ( 280 usr; 36 con; 0-4 aty)
% Number of variables : 33 ( 30 !; 3 ?; 33 :)
% Comments :
%------------------------------------------------------------------------------
tff(type_def_5,type,
'A_nat_a_b_vec_c_vec_prod_prod$': $tType ).
tff(type_def_6,type,
'A_a_iarray_iarray_bool_fun_fun$': $tType ).
tff(type_def_7,type,
'A_c_vec_c_vec$': $tType ).
tff(type_def_8,type,
'A_nat_a_iarray_iarray_prod_prod$': $tType ).
tff(type_def_9,type,
'A_a_prod$': $tType ).
tff(type_def_10,type,
'A_iarray_iarray$': $tType ).
tff(type_def_11,type,
'A_nat_a_b_vec_c_vec_prod_bool_fun_fun$': $tType ).
tff(type_def_12,type,
'A_a_c_vec_b_vec_prod$': $tType ).
tff(type_def_13,type,
'Int_int_prod$': $tType ).
tff(type_def_14,type,
'C_a_b_vec_bool_fun_fun$': $tType ).
tff(type_def_15,type,
'A_c_vec_c_vec_a_b_vec_c_vec_prod$': $tType ).
tff(type_def_16,type,
'A_a_b_vec_b_vec_prod$': $tType ).
tff(type_def_17,type,
'Nat_a_iarray_bool_fun_fun$': $tType ).
tff(type_def_18,type,
'A_a_iarray_iarray_prod$': $tType ).
tff(type_def_19,type,
'Nat_a_c_vec_c_vec_prod$': $tType ).
tff(type_def_20,type,
'A_a_b_vec_c_vec_bool_fun_fun$': $tType ).
tff(type_def_21,type,
'Int_set$': $tType ).
tff(type_def_22,type,
'A_nat_a_b_vec_c_vec_prod_prod_bool_fun$': $tType ).
tff(type_def_23,type,
'Int_int_fun$': $tType ).
tff(type_def_24,type,
'A_b_vec_b_vec$': $tType ).
tff(type_def_25,type,
'B$': $tType ).
tff(type_def_26,type,
'A_b_vec_c_vec$': $tType ).
tff(type_def_27,type,
'Nat_a_iarray_iarray_bool_fun_fun$': $tType ).
tff(type_def_28,type,
'C_a_b_vec_fun$': $tType ).
tff(type_def_29,type,
'A_c_vec_b_vec$': $tType ).
tff(type_def_30,type,
'Nat_nat_fun$': $tType ).
tff(type_def_31,type,
'C$': $tType ).
tff(type_def_32,type,
'Nat$': $tType ).
tff(type_def_33,type,
'A_b_vec$': $tType ).
tff(type_def_34,type,
'A_nat_a_iarray_iarray_prod_bool_fun_fun$': $tType ).
tff(type_def_35,type,
'A_iarray_iarray_bool_fun$': $tType ).
tff(type_def_36,type,
'B_a_fun$': $tType ).
tff(type_def_37,type,
'Nat_a_b_vec_c_vec_prod_bool_fun$': $tType ).
tff(type_def_38,type,
'A_nat_a_b_vec_b_vec_prod_prod$': $tType ).
tff(type_def_39,type,
'A_nat_a_c_vec_b_vec_prod_prod$': $tType ).
tff(type_def_40,type,
tlbool: $tType ).
tff(type_def_41,type,
'A_b_vec_c_vec_bool_fun$': $tType ).
tff(type_def_42,type,
'A_nat_a_c_vec_c_vec_prod_prod$': $tType ).
tff(type_def_43,type,
'A_b_vec_b_vec_a_c_vec_b_vec_prod$': $tType ).
tff(type_def_44,type,
'A_a_b_vec_c_vec_prod$': $tType ).
tff(type_def_45,type,
'A_bool_fun$': $tType ).
tff(type_def_46,type,
'Nat_a_iarray_iarray_prod$': $tType ).
tff(type_def_47,type,
'A_c_vec_c_vec_a_c_vec_c_vec_prod$': $tType ).
tff(type_def_48,type,
'A_int_prod$': $tType ).
tff(type_def_49,type,
'A_set$': $tType ).
tff(type_def_50,type,
'A_iarray_bool_fun$': $tType ).
tff(type_def_51,type,
'A_nat_a_iarray_iarray_prod_prod_bool_fun$': $tType ).
tff(type_def_52,type,
'A_c_vec$': $tType ).
tff(type_def_53,type,
'Nat_a_b_vec_c_vec_bool_fun_fun$': $tType ).
tff(type_def_54,type,
'A$': $tType ).
tff(type_def_55,type,
'A_c_vec_c_vec_nat_a_b_vec_c_vec_prod_prod$': $tType ).
tff(type_def_56,type,
'Nat_a_c_vec_b_vec_prod$': $tType ).
tff(type_def_57,type,
'Int_a_prod$': $tType ).
tff(type_def_58,type,
'Nat_a_b_vec_c_vec_prod$': $tType ).
tff(type_def_59,type,
'Nat_a_iarray_iarray_prod_bool_fun$': $tType ).
tff(type_def_60,type,
'A_c_vec_c_vec_nat_a_c_vec_c_vec_prod_prod$': $tType ).
tff(type_def_61,type,
'A_b_vec_b_vec_nat_a_c_vec_b_vec_prod_prod$': $tType ).
tff(type_def_62,type,
'A_a_c_vec_c_vec_prod$': $tType ).
tff(type_def_63,type,
'A_a_fun$': $tType ).
tff(type_def_64,type,
'Nat_a_b_vec_b_vec_prod$': $tType ).
tff(type_def_65,type,
'Nat_a_iarray_prod_bool_fun$': $tType ).
tff(type_def_66,type,
'A_b_vec_c_vec_c_vec$': $tType ).
tff(type_def_67,type,
'A_iarray$': $tType ).
tff(type_def_68,type,
'A_b_vec_bool_fun$': $tType ).
tff(type_def_69,type,
'Nat_a_iarray_prod$': $tType ).
tff(type_def_70,type,
'Nat_bool_fun$': $tType ).
tff(type_def_71,type,
'A_b_vec_b_vec_nat_a_b_vec_b_vec_prod_prod$': $tType ).
tff(type_def_72,type,
'A_b_vec_b_vec_a_b_vec_b_vec_prod$': $tType ).
tff(type_def_73,type,
'Nat_set$': $tType ).
tff(type_def_74,type,
'B_a_bool_fun_fun$': $tType ).
tff(func_def_0,type,
'gauss_Jordan_in_ij_det_P_iarrays$': ( 'A_iarray_iarray$' * 'Nat$' * 'Nat$' ) > 'A_a_iarray_iarray_prod$' ).
tff(func_def_1,type,
'times$a': ( $int * $int ) > $int ).
tff(func_def_2,type,
'snd$t': 'A_b_vec_b_vec_nat_a_c_vec_b_vec_prod_prod$' > 'Nat_a_c_vec_b_vec_prod$' ).
tff(func_def_3,type,
'zero$i': 'Int_a_prod$' ).
tff(func_def_4,type,
'fun_app$r': ( 'Nat_a_iarray_bool_fun_fun$' * 'Nat$' ) > 'A_iarray_bool_fun$' ).
tff(func_def_5,type,
'times$b': 'Nat$' > 'Nat_nat_fun$' ).
tff(func_def_6,type,
'pair$x': ( 'A_c_vec_c_vec$' * 'A_b_vec_c_vec$' ) > 'A_c_vec_c_vec_a_b_vec_c_vec_prod$' ).
tff(func_def_7,type,
'snd$': 'Nat_a_b_vec_c_vec_prod$' > 'A_b_vec_c_vec$' ).
tff(func_def_8,type,
'plus$b': ( 'C$' * 'C$' ) > 'C$' ).
tff(func_def_9,type,
'from_nat$a': 'Nat$' > 'B$' ).
tff(func_def_10,type,
'fst$k': 'A_nat_a_c_vec_b_vec_prod_prod$' > 'A$' ).
tff(func_def_11,type,
'uu$': 'A_a_fun$' ).
tff(func_def_12,type,
'plus$c': ( 'B$' * 'B$' ) > 'B$' ).
tff(func_def_13,type,
'nrows$c': 'A_b_vec_b_vec$' > 'Nat$' ).
tff(func_def_14,type,
'uua$': 'Int_int_fun$' ).
tff(func_def_15,type,
'pair$r': ( 'A_c_vec_c_vec$' * 'Nat_a_c_vec_c_vec_prod$' ) > 'A_c_vec_c_vec_nat_a_c_vec_c_vec_prod_prod$' ).
tff(func_def_16,type,
'pair$b': ( 'Nat$' * 'A_iarray$' ) > 'Nat_a_iarray_prod$' ).
tff(func_def_17,type,
'uud$': 'A_a_fun$' ).
tff(func_def_18,type,
'fst$e': 'A_nat_a_b_vec_c_vec_prod_prod$' > 'A$' ).
tff(func_def_19,type,
'gauss_Jordan_column_k_det_P_iarrays$': ( 'A_nat_a_iarray_iarray_prod_prod$' * 'Nat$' ) > 'A_nat_a_iarray_iarray_prod_prod$' ).
tff(func_def_20,type,
'snd$c': 'Nat_a_iarray_iarray_prod$' > 'A_iarray_iarray$' ).
tff(func_def_21,type,
'fun_app$t': ( 'Nat_a_iarray_iarray_bool_fun_fun$' * 'Nat$' ) > 'A_iarray_iarray_bool_fun$' ).
tff(func_def_22,type,
'uuf$': 'Int_int_fun$' ).
tff(func_def_23,type,
'fun_app$l': ( 'B_a_bool_fun_fun$' * 'B$' ) > 'A_bool_fun$' ).
tff(func_def_24,type,
'pair$u': ( 'A_b_vec_b_vec$' * 'A_c_vec_b_vec$' ) > 'A_b_vec_b_vec_a_c_vec_b_vec_prod$' ).
tff(func_def_25,type,
'pair$p': ( $int * 'A$' ) > 'Int_a_prod$' ).
tff(func_def_26,type,
'pair$a': ( 'Nat$' * 'A_b_vec_c_vec$' ) > 'Nat_a_b_vec_c_vec_prod$' ).
tff(func_def_27,type,
'fun_app$d': ( 'C_a_b_vec_fun$' * 'C$' ) > 'A_b_vec$' ).
tff(func_def_28,type,
'fst$u': 'A_b_vec_b_vec_nat_a_b_vec_b_vec_prod_prod$' > 'A_b_vec_b_vec$' ).
tff(func_def_29,type,
'gauss_Jordan_in_ij_det_P$b': ( 'A_c_vec_b_vec$' * 'B$' * 'C$' ) > 'A_a_c_vec_b_vec_prod$' ).
tff(func_def_30,type,
'zero$': 'Nat$' ).
tff(func_def_31,type,
'gauss_Jordan_column_k_det_P$': ( 'A_nat_a_c_vec_c_vec_prod_prod$' * 'Nat$' ) > 'A_nat_a_c_vec_c_vec_prod_prod$' ).
tff(func_def_32,type,
'snd$e': 'A_a_iarray_iarray_prod$' > 'A_iarray_iarray$' ).
tff(func_def_33,type,
'zero$j': 'Int_int_prod$' ).
tff(func_def_34,type,
'times$': 'A$' > 'A_a_fun$' ).
tff(func_def_35,type,
'fun_app$v': ( 'A_nat_a_b_vec_c_vec_prod_bool_fun_fun$' * 'A$' ) > 'Nat_a_b_vec_c_vec_prod_bool_fun$' ).
tff(func_def_36,type,
'fst$t': 'A_b_vec_b_vec_a_c_vec_b_vec_prod$' > 'A_b_vec_b_vec$' ).
tff(func_def_37,type,
'plus$q': ( 'A_set$' * 'A_set$' ) > 'A_set$' ).
tff(func_def_38,type,
'zero$a': 'A$' ).
tff(func_def_39,type,
'row_add_iterate_PA$': ( 'A_c_vec_c_vec_a_b_vec_c_vec_prod$' * 'Nat$' * 'C$' * 'B$' ) > 'A_c_vec_c_vec_a_b_vec_c_vec_prod$' ).
tff(func_def_40,type,
'plus$o': ( 'A_b_vec$' * 'A_b_vec$' ) > 'A_b_vec$' ).
tff(func_def_41,type,
'nrows$': 'A_b_vec_c_vec$' > 'Nat$' ).
tff(func_def_42,type,
'plus$h': ( 'A_b_vec_c_vec$' * 'A_b_vec_c_vec$' ) > 'A_b_vec_c_vec$' ).
tff(func_def_43,type,
'plus$l': ( 'Nat_a_iarray_prod$' * 'Nat_a_iarray_prod$' ) > 'Nat_a_iarray_prod$' ).
tff(func_def_44,type,
'fst$g': 'Nat_a_c_vec_c_vec_prod$' > 'Nat$' ).
tff(func_def_45,type,
'zero$g': 'A_a_prod$' ).
tff(func_def_46,type,
'plus$p': ( 'Int_set$' * 'Int_set$' ) > 'Int_set$' ).
tff(func_def_47,type,
'snd$d': 'A_nat_a_iarray_iarray_prod_prod$' > 'Nat_a_iarray_iarray_prod$' ).
tff(func_def_48,type,
'plus$n': ( 'Int_int_prod$' * 'Int_int_prod$' ) > 'Int_int_prod$' ).
tff(func_def_49,type,
'vec_nth$f': ( 'A_b_vec_c_vec_c_vec$' * 'C$' ) > 'A_b_vec_c_vec$' ).
tff(func_def_50,type,
'zero$d': 'A_nat_a_b_vec_c_vec_prod_prod$' ).
tff(func_def_51,type,
'of_nat$': 'Nat$' > $int ).
tff(func_def_52,type,
'zero$f': 'C$' ).
tff(func_def_53,type,
'gauss_Jordan_in_ij_PA$a': ( 'A_b_vec_b_vec_a_c_vec_b_vec_prod$' * 'B$' * 'C$' ) > 'A_b_vec_b_vec_a_c_vec_b_vec_prod$' ).
tff(func_def_54,type,
'times$f': ( 'Int_set$' * 'Int_set$' ) > 'Int_set$' ).
tff(func_def_55,type,
'upper_triangular_upt_k$a': 'A_b_vec_c_vec_c_vec$' > 'Nat_bool_fun$' ).
tff(func_def_56,type,
'fun_app$n': ( 'C_a_b_vec_bool_fun_fun$' * 'C$' ) > 'A_b_vec_bool_fun$' ).
tff(func_def_57,type,
'pair$h': ( 'Nat$' * 'A_c_vec_c_vec$' ) > 'Nat_a_c_vec_c_vec_prod$' ).
tff(func_def_58,type,
'times$d': ( 'A_b_vec_c_vec$' * 'A_b_vec_c_vec$' ) > 'A_b_vec_c_vec$' ).
tff(func_def_59,type,
'uuc$': 'Nat_nat_fun$' ).
tff(func_def_60,type,
'snd$x': 'A_c_vec_c_vec_a_b_vec_c_vec_prod$' > 'A_b_vec_c_vec$' ).
tff(func_def_61,type,
'zero$b': 'A_a_b_vec_c_vec_prod$' ).
tff(func_def_62,type,
'zero$e': 'Nat_a_b_vec_c_vec_prod$' ).
tff(func_def_63,type,
'snd$j': 'A_nat_a_c_vec_b_vec_prod_prod$' > 'Nat_a_c_vec_b_vec_prod$' ).
tff(func_def_64,type,
'snd$n': 'Nat_a_b_vec_b_vec_prod$' > 'A_b_vec_b_vec$' ).
tff(func_def_65,type,
'i$': 'Nat$' ).
tff(func_def_66,type,
'one$c': 'B$' ).
tff(func_def_67,type,
'fst$f': 'A_nat_a_iarray_iarray_prod_prod$' > 'A$' ).
tff(func_def_68,type,
'plus$i': ( 'A_nat_a_b_vec_c_vec_prod_prod$' * 'A_nat_a_b_vec_c_vec_prod_prod$' ) > 'A_nat_a_b_vec_c_vec_prod_prod$' ).
tff(func_def_69,type,
'nrows$b': 'A_c_vec_b_vec$' > 'Nat$' ).
tff(func_def_70,type,
'one$': 'A$' ).
tff(func_def_71,type,
'snd$k': 'Nat_a_c_vec_b_vec_prod$' > 'A_c_vec_b_vec$' ).
tff(func_def_72,type,
'nrows$a': 'A_c_vec_c_vec$' > 'Nat$' ).
tff(func_def_73,type,
'gauss_Jordan_column_k_det_P$a': ( 'A_nat_a_c_vec_b_vec_prod_prod$' * 'Nat$' ) > 'A_nat_a_c_vec_b_vec_prod_prod$' ).
tff(func_def_74,type,
'fst$p': 'Int_int_prod$' > $int ).
tff(func_def_75,type,
'vec_nth$c': ( 'A_c_vec_c_vec$' * 'C$' ) > 'A_c_vec$' ).
tff(func_def_76,type,
'snd$s': 'A_c_vec_c_vec_a_c_vec_c_vec_prod$' > 'A_c_vec_c_vec$' ).
tff(func_def_77,type,
'upper_triangular_upt_k$': 'A_b_vec_b_vec$' > 'Nat_bool_fun$' ).
tff(func_def_78,type,
'pair$o': ( 'A$' * $int ) > 'A_int_prod$' ).
tff(func_def_79,type,
'snd$a': 'A_nat_a_b_vec_c_vec_prod_prod$' > 'Nat_a_b_vec_c_vec_prod$' ).
tff(func_def_80,type,
'snd$i': 'A_a_c_vec_c_vec_prod$' > 'A_c_vec_c_vec$' ).
tff(func_def_81,type,
'fst$v': 'A_b_vec_b_vec_a_b_vec_b_vec_prod$' > 'A_b_vec_b_vec$' ).
tff(func_def_82,type,
'nrows_iarray$': 'A_iarray_iarray$' > 'Nat$' ).
tff(func_def_83,type,
tltrue: tlbool ).
tff(func_def_84,type,
'gauss_Jordan_column_k_PA$a': ( 'A_c_vec_c_vec_nat_a_c_vec_c_vec_prod_prod$' * 'Nat$' ) > 'A_c_vec_c_vec_nat_a_c_vec_c_vec_prod_prod$' ).
tff(func_def_85,type,
'plus$f': ( 'Nat_a_iarray_iarray_prod$' * 'Nat_a_iarray_iarray_prod$' ) > 'Nat_a_iarray_iarray_prod$' ).
tff(func_def_86,type,
'map_matrix$': ( 'A_a_fun$' * 'A_b_vec_c_vec$' ) > 'A_b_vec_c_vec$' ).
tff(func_def_87,type,
'pair$s': ( 'A_c_vec_c_vec$' * 'A_c_vec_c_vec$' ) > 'A_c_vec_c_vec_a_c_vec_c_vec_prod$' ).
tff(func_def_88,type,
'one$b': 'C$' ).
tff(func_def_89,type,
'pair$j': ( 'Nat$' * 'A_c_vec_b_vec$' ) > 'Nat_a_c_vec_b_vec_prod$' ).
tff(func_def_90,type,
'one$a': 'Nat$' ).
tff(func_def_91,type,
'to_nat$a': 'B$' > 'Nat$' ).
tff(func_def_92,type,
'plus$j': ( 'Nat_a_b_vec_c_vec_prod$' * 'Nat_a_b_vec_c_vec_prod$' ) > 'Nat_a_b_vec_c_vec_prod$' ).
tff(func_def_93,type,
'gauss_Jordan_column_k_PA$b': ( 'A_b_vec_b_vec_nat_a_c_vec_b_vec_prod_prod$' * 'Nat$' ) > 'A_b_vec_b_vec_nat_a_c_vec_b_vec_prod_prod$' ).
tff(func_def_94,type,
'gauss_Jordan_in_ij_PA$': ( 'A_c_vec_c_vec_a_c_vec_c_vec_prod$' * 'C$' * 'C$' ) > 'A_c_vec_c_vec_a_c_vec_c_vec_prod$' ).
tff(func_def_95,type,
'snd$g': 'A_nat_a_c_vec_c_vec_prod_prod$' > 'Nat_a_c_vec_c_vec_prod$' ).
tff(func_def_96,type,
'fst$b': 'Nat_a_b_vec_c_vec_prod$' > 'Nat$' ).
tff(func_def_97,type,
'ncols$': 'A_b_vec_c_vec$' > 'Nat$' ).
tff(func_def_98,type,
'fst$c': 'Nat_a_iarray_prod$' > 'Nat$' ).
tff(func_def_99,type,
'fun_app$': ( 'Int_int_fun$' * $int ) > $int ).
tff(func_def_100,type,
'fst$j': 'Nat_a_c_vec_b_vec_prod$' > 'Nat$' ).
tff(func_def_101,type,
'gauss_Jordan_in_ij_det_P$': ( 'A_b_vec_c_vec$' * 'C$' * 'B$' ) > 'A_a_b_vec_c_vec_prod$' ).
tff(func_def_102,type,
'pair$n': ( 'A$' * 'A$' ) > 'A_a_prod$' ).
tff(func_def_103,type,
'less$': 'Nat$' > 'Nat_bool_fun$' ).
tff(func_def_104,type,
'gauss_Jordan_column_k_PA$': ( 'A_c_vec_c_vec_nat_a_b_vec_c_vec_prod_prod$' * 'Nat$' ) > 'A_c_vec_c_vec_nat_a_b_vec_c_vec_prod_prod$' ).
tff(func_def_105,type,
'fst$m': 'Nat_a_b_vec_b_vec_prod$' > 'Nat$' ).
tff(func_def_106,type,
'fun_app$c': ( 'B_a_fun$' * 'B$' ) > 'A$' ).
tff(func_def_107,type,
'gauss_Jordan_column_k_det_P$c': ( 'A_nat_a_b_vec_c_vec_prod_prod$' * 'Nat$' ) > 'A_nat_a_b_vec_c_vec_prod_prod$' ).
tff(func_def_108,type,
'gauss_Jordan_column_k_PA$c': ( 'A_b_vec_b_vec_nat_a_b_vec_b_vec_prod_prod$' * 'Nat$' ) > 'A_b_vec_b_vec_nat_a_b_vec_b_vec_prod_prod$' ).
tff(func_def_109,type,
'to_nat$': 'C$' > 'Nat$' ).
tff(func_def_110,type,
'vector_all_zero_from_index$': 'Nat_a_iarray_prod_bool_fun$' ).
tff(func_def_111,type,
'vec_nth$b': ( 'A_c_vec$' * 'C$' ) > 'A$' ).
tff(func_def_112,type,
'snd$o': 'A_a_b_vec_b_vec_prod$' > 'A_b_vec_b_vec$' ).
tff(func_def_113,type,
'snd$q': 'A_c_vec_c_vec_nat_a_b_vec_c_vec_prod_prod$' > 'Nat_a_b_vec_c_vec_prod$' ).
tff(func_def_114,type,
'snd$v': 'A_b_vec_b_vec_nat_a_b_vec_b_vec_prod_prod$' > 'Nat_a_b_vec_b_vec_prod$' ).
tff(func_def_115,type,
'fst$h': 'A_nat_a_c_vec_c_vec_prod_prod$' > 'A$' ).
tff(func_def_116,type,
'fun_app$x': ( 'A_a_iarray_iarray_bool_fun_fun$' * 'A$' ) > 'A_iarray_iarray_bool_fun$' ).
tff(func_def_117,type,
'one$e': 'A_b_vec_c_vec$' ).
tff(func_def_118,type,
'fst$l': 'A_a_c_vec_b_vec_prod$' > 'A$' ).
tff(func_def_119,type,
'times$g': ( 'Nat_set$' * 'Nat_set$' ) > 'Nat_set$' ).
tff(func_def_120,type,
'snd$r': 'A_c_vec_c_vec_nat_a_c_vec_c_vec_prod_prod$' > 'Nat_a_c_vec_c_vec_prod$' ).
tff(func_def_121,type,
'gauss_Jordan_in_ij_det_P$a': ( 'A_c_vec_c_vec$' * 'C$' * 'C$' ) > 'A_a_c_vec_c_vec_prod$' ).
tff(func_def_122,type,
'zero$h': 'A_int_prod$' ).
tff(func_def_123,type,
'fun_app$u': ( 'A_a_b_vec_c_vec_bool_fun_fun$' * 'A$' ) > 'A_b_vec_c_vec_bool_fun$' ).
tff(func_def_124,type,
'pair$t': ( 'A_b_vec_b_vec$' * 'Nat_a_c_vec_b_vec_prod$' ) > 'A_b_vec_b_vec_nat_a_c_vec_b_vec_prod_prod$' ).
tff(func_def_125,type,
'column_iarray$': ( 'Nat$' * 'A_iarray_iarray$' ) > 'A_iarray$' ).
tff(func_def_126,type,
'gauss_Jordan_in_ij_PA$b': ( 'A_b_vec_b_vec_a_b_vec_b_vec_prod$' * 'B$' * 'B$' ) > 'A_b_vec_b_vec_a_b_vec_b_vec_prod$' ).
tff(func_def_127,type,
'fst$q': 'A_c_vec_c_vec_nat_a_c_vec_c_vec_prod_prod$' > 'A_c_vec_c_vec$' ).
tff(func_def_128,type,
'zero$c': 'A_b_vec_c_vec$' ).
tff(func_def_129,type,
'fst$w': 'A_c_vec_c_vec_nat_a_b_vec_c_vec_prod_prod$' > 'A_c_vec_c_vec$' ).
tff(func_def_130,type,
'fst$': 'A_a_b_vec_c_vec_prod$' > 'A$' ).
tff(func_def_131,type,
'plus$a': 'Nat$' > 'Nat_nat_fun$' ).
tff(func_def_132,type,
'fst$r': 'A_c_vec_c_vec_a_c_vec_c_vec_prod$' > 'A_c_vec_c_vec$' ).
tff(func_def_133,type,
'one$d': 'A_b_vec$' ).
tff(func_def_134,type,
'vec_nth$a': 'A_b_vec_c_vec$' > 'C_a_b_vec_fun$' ).
tff(func_def_135,type,
'snd$u': 'A_b_vec_b_vec_a_c_vec_b_vec_prod$' > 'A_c_vec_b_vec$' ).
tff(func_def_136,type,
'fun_app$p': ( 'Nat_a_b_vec_c_vec_bool_fun_fun$' * 'Nat$' ) > 'A_b_vec_c_vec_bool_fun$' ).
tff(func_def_137,type,
'snd$p': 'Int_int_prod$' > $int ).
tff(func_def_138,type,
'pair$k': ( 'A$' * 'Nat_a_b_vec_b_vec_prod$' ) > 'A_nat_a_b_vec_b_vec_prod_prod$' ).
tff(func_def_139,type,
'pair$': ( 'A$' * 'Nat_a_b_vec_c_vec_prod$' ) > 'A_nat_a_b_vec_c_vec_prod_prod$' ).
tff(func_def_140,type,
'plus$m': ( 'A_iarray$' * 'A_iarray$' ) > 'A_iarray$' ).
tff(func_def_141,type,
'fst$s': 'A_b_vec_b_vec_nat_a_c_vec_b_vec_prod_prod$' > 'A_b_vec_b_vec$' ).
tff(func_def_142,type,
'plus$': 'A$' > 'A_a_fun$' ).
tff(func_def_143,type,
'snd$w': 'A_b_vec_b_vec_a_b_vec_b_vec_prod$' > 'A_b_vec_b_vec$' ).
tff(func_def_144,type,
'plus$d': ( 'A_a_b_vec_c_vec_prod$' * 'A_a_b_vec_c_vec_prod$' ) > 'A_a_b_vec_c_vec_prod$' ).
tff(func_def_145,type,
'pair$d': ( 'Nat$' * 'A_iarray_iarray$' ) > 'Nat_a_iarray_iarray_prod$' ).
tff(func_def_146,type,
'less_eq$a': 'Nat$' > 'Nat_bool_fun$' ).
tff(func_def_147,type,
tlfalse: tlbool ).
tff(func_def_148,type,
'pair$i': ( 'A$' * 'Nat_a_c_vec_b_vec_prod$' ) > 'A_nat_a_c_vec_b_vec_prod_prod$' ).
tff(func_def_149,type,
'nat$': $int > 'Nat$' ).
tff(func_def_150,type,
'fst$a': 'A_a_iarray_iarray_prod$' > 'A$' ).
tff(func_def_151,type,
'plus$g': ( 'A_iarray_iarray$' * 'A_iarray_iarray$' ) > 'A_iarray_iarray$' ).
tff(func_def_152,type,
'pair$q': ( 'A_c_vec_c_vec$' * 'Nat_a_b_vec_c_vec_prod$' ) > 'A_c_vec_c_vec_nat_a_b_vec_c_vec_prod_prod$' ).
tff(func_def_153,type,
'snd$f': 'Nat_a_iarray_prod$' > 'A_iarray$' ).
tff(func_def_154,type,
'zero$k': 'B$' ).
tff(func_def_155,type,
'pair$f': ( 'A$' * 'A_iarray_iarray$' ) > 'A_a_iarray_iarray_prod$' ).
tff(func_def_156,type,
'uug$': 'Nat_nat_fun$' ).
tff(func_def_157,type,
'matrix_to_iarray$': 'A_b_vec_c_vec$' > 'A_iarray_iarray$' ).
tff(func_def_158,type,
'plus$e': ( 'A_a_iarray_iarray_prod$' * 'A_a_iarray_iarray_prod$' ) > 'A_a_iarray_iarray_prod$' ).
tff(func_def_159,type,
'vec_nth$': 'A_b_vec$' > 'B_a_fun$' ).
tff(func_def_160,type,
'uue$': 'Int_int_fun$' ).
tff(func_def_161,type,
'fst$o': 'A_a_b_vec_b_vec_prod$' > 'A$' ).
tff(func_def_162,type,
'snd$h': 'Nat_a_c_vec_c_vec_prod$' > 'A_c_vec_c_vec$' ).
tff(func_def_163,type,
'times$c': ( 'A_b_vec$' * 'A_b_vec$' ) > 'A_b_vec$' ).
tff(func_def_164,type,
'fun_app$w': ( 'A_nat_a_iarray_iarray_prod_bool_fun_fun$' * 'A$' ) > 'Nat_a_iarray_iarray_prod_bool_fun$' ).
tff(func_def_165,type,
'gauss_Jordan_column_k_det_P$b': ( 'A_nat_a_b_vec_b_vec_prod_prod$' * 'Nat$' ) > 'A_nat_a_b_vec_b_vec_prod_prod$' ).
tff(func_def_166,type,
'pair$c': ( 'A$' * 'Nat_a_iarray_iarray_prod$' ) > 'A_nat_a_iarray_iarray_prod_prod$' ).
tff(func_def_167,type,
'fun_app$b': ( 'A_a_fun$' * 'A$' ) > 'A$' ).
tff(func_def_168,type,
'gauss_Jordan_in_ij_det_P$c': ( 'A_b_vec_b_vec$' * 'B$' * 'B$' ) > 'A_a_b_vec_b_vec_prod$' ).
tff(func_def_169,type,
'times$e': ( 'A_set$' * 'A_set$' ) > 'A_set$' ).
tff(func_def_170,type,
'fun_app$a': ( 'Nat_nat_fun$' * 'Nat$' ) > 'Nat$' ).
tff(func_def_171,type,
'vec_nth$e': ( 'A_b_vec_b_vec$' * 'B$' ) > 'A_b_vec$' ).
tff(func_def_172,type,
'fst$i': 'A_a_c_vec_c_vec_prod$' > 'A$' ).
tff(func_def_173,type,
'from_nat$': 'Nat$' > 'C$' ).
tff(func_def_174,type,
'fst$d': 'Nat_a_iarray_iarray_prod$' > 'Nat$' ).
tff(func_def_175,type,
'plus$k': ( 'A_nat_a_iarray_iarray_prod_prod$' * 'A_nat_a_iarray_iarray_prod_prod$' ) > 'A_nat_a_iarray_iarray_prod_prod$' ).
tff(func_def_176,type,
'fst$n': 'A_nat_a_b_vec_b_vec_prod_prod$' > 'A$' ).
tff(func_def_177,type,
'pair$m': ( $int * $int ) > 'Int_int_prod$' ).
tff(func_def_178,type,
'n$': 'A$' ).
tff(func_def_179,type,
'fst$x': 'A_c_vec_c_vec_a_b_vec_c_vec_prod$' > 'A_c_vec_c_vec$' ).
tff(func_def_180,type,
'a$': 'A_b_vec_c_vec$' ).
tff(func_def_181,type,
'zero$l': 'A_b_vec$' ).
tff(func_def_182,type,
'gauss_Jordan_in_ij_PA$c': ( 'A_c_vec_c_vec_a_b_vec_c_vec_prod$' * 'C$' * 'B$' ) > 'A_c_vec_c_vec_a_b_vec_c_vec_prod$' ).
tff(func_def_183,type,
'pair$l': ( 'Nat$' * 'A_b_vec_b_vec$' ) > 'Nat_a_b_vec_b_vec_prod$' ).
tff(func_def_184,type,
'snd$l': 'A_a_c_vec_b_vec_prod$' > 'A_c_vec_b_vec$' ).
tff(func_def_185,type,
'pair$e': ( 'A$' * 'A_b_vec_c_vec$' ) > 'A_a_b_vec_c_vec_prod$' ).
tff(func_def_186,type,
'snd$m': 'A_nat_a_b_vec_b_vec_prod_prod$' > 'Nat_a_b_vec_b_vec_prod$' ).
tff(func_def_187,type,
'pair$g': ( 'A$' * 'Nat_a_c_vec_c_vec_prod$' ) > 'A_nat_a_c_vec_c_vec_prod_prod$' ).
tff(func_def_188,type,
'vec_nth$d': ( 'A_c_vec_b_vec$' * 'B$' ) > 'A_c_vec$' ).
tff(func_def_189,type,
'snd$b': 'A_a_b_vec_c_vec_prod$' > 'A_b_vec_c_vec$' ).
tff(func_def_190,type,
'pair$w': ( 'A_b_vec_b_vec$' * 'A_b_vec_b_vec$' ) > 'A_b_vec_b_vec_a_b_vec_b_vec_prod$' ).
tff(func_def_191,type,
'k$': 'Nat$' ).
tff(func_def_192,type,
'uub$': 'Int_int_fun$' ).
tff(func_def_193,type,
'pair$v': ( 'A_b_vec_b_vec$' * 'Nat_a_b_vec_b_vec_prod$' ) > 'A_b_vec_b_vec_nat_a_b_vec_b_vec_prod_prod$' ).
tff(func_def_199,type,
sK22: 'C$' ).
tff(func_def_200,type,
sK23: 'Nat_a_iarray_prod$' > 'Nat$' ).
tff(func_def_201,type,
sK24: 'Nat_a_iarray_prod$' > 'A_iarray$' ).
tff(func_def_202,type,
sK25: 'Nat_a_iarray_iarray_prod$' > 'Nat$' ).
tff(func_def_203,type,
sK26: 'Nat_a_iarray_iarray_prod$' > 'A_iarray_iarray$' ).
tff(func_def_204,type,
sK27: 'A_nat_a_iarray_iarray_prod_prod$' > 'A$' ).
tff(func_def_205,type,
sK28: 'A_nat_a_iarray_iarray_prod_prod$' > 'Nat_a_iarray_iarray_prod$' ).
tff(func_def_206,type,
sK29: 'A_nat_a_b_vec_c_vec_prod_prod$' > 'A$' ).
tff(func_def_207,type,
sK30: 'A_nat_a_b_vec_c_vec_prod_prod$' > 'Nat_a_b_vec_c_vec_prod$' ).
tff(func_def_208,type,
sK31: 'Nat_a_b_vec_c_vec_prod$' > 'Nat$' ).
tff(func_def_209,type,
sK32: 'Nat_a_b_vec_c_vec_prod$' > 'A_b_vec_c_vec$' ).
tff(func_def_210,type,
sK33: 'A_nat_a_iarray_iarray_prod_prod$' > 'A$' ).
tff(func_def_211,type,
sK34: 'A_nat_a_iarray_iarray_prod_prod$' > 'Nat$' ).
tff(func_def_212,type,
sK35: 'A_nat_a_iarray_iarray_prod_prod$' > 'A_iarray_iarray$' ).
tff(func_def_213,type,
sK36: 'A_nat_a_b_vec_c_vec_prod_prod$' > 'A$' ).
tff(func_def_214,type,
sK37: 'A_nat_a_b_vec_c_vec_prod_prod$' > 'Nat$' ).
tff(func_def_215,type,
sK38: 'A_nat_a_b_vec_c_vec_prod_prod$' > 'A_b_vec_c_vec$' ).
tff(func_def_216,type,
sK39: ( 'C_a_b_vec_bool_fun_fun$' * 'C$' ) > 'A_b_vec$' ).
tff(func_def_217,type,
sK40: ( 'C_a_b_vec_bool_fun_fun$' * 'A_b_vec_c_vec$' ) > 'C$' ).
tff(func_def_218,type,
sK41: 'C_a_b_vec_bool_fun_fun$' > 'A_b_vec_c_vec$' ).
tff(func_def_219,type,
sK42: 'C_a_b_vec_bool_fun_fun$' > 'C$' ).
tff(func_def_220,type,
sK43: ( 'B_a_bool_fun_fun$' * 'B$' ) > 'A$' ).
tff(func_def_221,type,
sK44: ( 'B_a_bool_fun_fun$' * 'A_b_vec$' ) > 'B$' ).
tff(func_def_222,type,
sK45: 'B_a_bool_fun_fun$' > 'A_b_vec$' ).
tff(func_def_223,type,
sK46: 'B_a_bool_fun_fun$' > 'B$' ).
tff(func_def_224,type,
sK47: 'Nat_a_iarray_prod$' > 'Nat$' ).
tff(func_def_225,type,
sK48: 'Nat_a_iarray_prod$' > 'A_iarray$' ).
tff(func_def_226,type,
sK49: 'Nat_a_iarray_iarray_prod$' > 'Nat$' ).
tff(func_def_227,type,
sK50: 'Nat_a_iarray_iarray_prod$' > 'A_iarray_iarray$' ).
tff(func_def_228,type,
sK51: 'A_nat_a_iarray_iarray_prod_prod$' > 'A$' ).
tff(func_def_229,type,
sK52: 'A_nat_a_iarray_iarray_prod_prod$' > 'Nat_a_iarray_iarray_prod$' ).
tff(func_def_230,type,
sK53: 'A_nat_a_b_vec_c_vec_prod_prod$' > 'A$' ).
tff(func_def_231,type,
sK54: 'A_nat_a_b_vec_c_vec_prod_prod$' > 'Nat_a_b_vec_c_vec_prod$' ).
tff(func_def_232,type,
sK55: 'Nat_a_b_vec_c_vec_prod$' > 'Nat$' ).
tff(func_def_233,type,
sK56: 'Nat_a_b_vec_c_vec_prod$' > 'A_b_vec_c_vec$' ).
tff(func_def_234,type,
sK57: ( 'A_nat_a_c_vec_b_vec_prod_prod$' * 'Nat$' ) > 'B$' ).
tff(func_def_235,type,
sK58: ( 'A_b_vec_b_vec_nat_a_c_vec_b_vec_prod_prod$' * 'Nat$' ) > 'B$' ).
tff(func_def_236,type,
sK59: ( 'A_nat_a_b_vec_b_vec_prod_prod$' * 'Nat$' ) > 'B$' ).
tff(func_def_237,type,
sK60: ( 'A_b_vec_b_vec_nat_a_b_vec_b_vec_prod_prod$' * 'Nat$' ) > 'B$' ).
tff(func_def_238,type,
sK61: ( 'A_nat_a_c_vec_c_vec_prod_prod$' * 'Nat$' ) > 'C$' ).
tff(func_def_239,type,
sK62: ( 'A_c_vec_c_vec_nat_a_c_vec_c_vec_prod_prod$' * 'Nat$' ) > 'C$' ).
tff(func_def_240,type,
sK63: ( 'A_c_vec_c_vec_nat_a_b_vec_c_vec_prod_prod$' * 'Nat$' ) > 'C$' ).
tff(func_def_241,type,
sK64: ( 'A_nat_a_b_vec_c_vec_prod_prod$' * 'Nat$' ) > 'C$' ).
tff(func_def_242,type,
sK65: ( 'Nat$' * 'Nat$' ) > 'Nat$' ).
tff(func_def_243,type,
sK66: ( 'Nat$' * 'Nat$' ) > 'Nat$' ).
tff(func_def_244,type,
sK67: ( 'Nat_bool_fun$' * 'Nat$' ) > 'Nat$' ).
tff(func_def_245,type,
sK68: 'Nat_bool_fun$' > 'Nat$' ).
tff(func_def_246,type,
sK69: 'Nat_bool_fun$' > 'Nat$' ).
tff(func_def_247,type,
sK70: 'Nat_bool_fun$' > 'Nat$' ).
tff(func_def_248,type,
sK71: 'Nat_a_iarray_iarray_prod_bool_fun$' > 'Nat$' ).
tff(func_def_249,type,
sK72: 'Nat_a_iarray_iarray_prod_bool_fun$' > 'A_iarray_iarray$' ).
tff(func_def_250,type,
sK73: 'A_nat_a_iarray_iarray_prod_prod_bool_fun$' > 'A$' ).
tff(func_def_251,type,
sK74: 'A_nat_a_iarray_iarray_prod_prod_bool_fun$' > 'Nat_a_iarray_iarray_prod$' ).
tff(func_def_252,type,
sK75: 'A_nat_a_b_vec_c_vec_prod_prod_bool_fun$' > 'A$' ).
tff(func_def_253,type,
sK76: 'A_nat_a_b_vec_c_vec_prod_prod_bool_fun$' > 'Nat_a_b_vec_c_vec_prod$' ).
tff(func_def_254,type,
sK77: 'Nat_a_b_vec_c_vec_prod_bool_fun$' > 'Nat$' ).
tff(func_def_255,type,
sK78: 'Nat_a_b_vec_c_vec_prod_bool_fun$' > 'A_b_vec_c_vec$' ).
tff(func_def_256,type,
sK79: 'Nat_a_iarray_prod_bool_fun$' > 'Nat$' ).
tff(func_def_257,type,
sK80: 'Nat_a_iarray_prod_bool_fun$' > 'A_iarray$' ).
tff(func_def_258,type,
sK81: 'A_nat_a_iarray_iarray_prod_prod_bool_fun$' > 'A$' ).
tff(func_def_259,type,
sK82: 'A_nat_a_iarray_iarray_prod_prod_bool_fun$' > 'Nat$' ).
tff(func_def_260,type,
sK83: 'A_nat_a_iarray_iarray_prod_prod_bool_fun$' > 'A_iarray_iarray$' ).
tff(func_def_261,type,
sK84: 'A_nat_a_b_vec_c_vec_prod_prod_bool_fun$' > 'A$' ).
tff(func_def_262,type,
sK85: 'A_nat_a_b_vec_c_vec_prod_prod_bool_fun$' > 'Nat$' ).
tff(func_def_263,type,
sK86: 'A_nat_a_b_vec_c_vec_prod_prod_bool_fun$' > 'A_b_vec_c_vec$' ).
tff(func_def_264,type,
sK87: ( 'A_b_vec_c_vec$' * 'A_b_vec_c_vec$' ) > 'C$' ).
tff(func_def_265,type,
sK88: ( 'A_b_vec$' * 'A_b_vec$' ) > 'B$' ).
tff(func_def_266,type,
sK89: ( 'A_b_vec_b_vec$' * 'Nat$' ) > 'B$' ).
tff(func_def_267,type,
sK90: ( 'A_b_vec_b_vec$' * 'Nat$' ) > 'B$' ).
tff(func_def_268,type,
sK91: ( 'A_b_vec_c_vec_c_vec$' * 'Nat$' ) > 'C$' ).
tff(func_def_269,type,
sK92: ( 'A_b_vec_c_vec_c_vec$' * 'Nat$' ) > 'C$' ).
tff(func_def_270,type,
sK93: ( 'Nat$' * 'Nat$' ) > 'Nat$' ).
tff(func_def_271,type,
sK94: 'Nat_bool_fun$' > 'Nat$' ).
tff(func_def_272,type,
sK95: ( 'Nat_bool_fun$' * 'Nat$' ) > 'Nat$' ).
tff(func_def_273,type,
sK96: ( 'Nat$' * 'Nat_set$' * 'Nat_set$' ) > 'Nat$' ).
tff(func_def_274,type,
sK97: ( 'Nat$' * 'Nat_set$' * 'Nat_set$' ) > 'Nat$' ).
tff(func_def_275,type,
sK98: ( 'A$' * 'A_set$' * 'A_set$' ) > 'A$' ).
tff(func_def_276,type,
sK99: ( 'A$' * 'A_set$' * 'A_set$' ) > 'A$' ).
tff(func_def_277,type,
sK100: ( $int * 'Int_set$' * 'Int_set$' ) > $int ).
tff(func_def_278,type,
sK101: ( $int * 'Int_set$' * 'Int_set$' ) > $int ).
tff(func_def_279,type,
sK102: ( $int * 'Int_set$' * 'Int_set$' ) > $int ).
tff(func_def_280,type,
sK103: ( $int * 'Int_set$' * 'Int_set$' ) > $int ).
tff(func_def_281,type,
sK104: 'Nat_nat_fun$' > 'Nat$' ).
tff(func_def_282,type,
sK105: 'Nat_nat_fun$' > 'Nat$' ).
tff(func_def_283,type,
sK106: 'Nat_nat_fun$' > 'Nat$' ).
tff(func_def_284,type,
sK107: 'Nat_nat_fun$' > 'Nat$' ).
tff(pred_def_1,type,
'upper_triangular$': 'A_b_vec_b_vec$' > $o ).
tff(pred_def_2,type,
'less_eq$c': ( 'A_set$' * 'A_set$' ) > $o ).
tff(pred_def_3,type,
'fun_app$i': ( 'Nat_a_iarray_iarray_prod_bool_fun$' * 'Nat_a_iarray_iarray_prod$' ) > $o ).
tff(pred_def_4,type,
'divides_aux$': 'Int_int_prod$' > $o ).
tff(pred_def_5,type,
'less_eq$b': ( 'B$' * 'B$' ) > $o ).
tff(pred_def_6,type,
'fun_app$k': ( 'A_bool_fun$' * 'A$' ) > $o ).
tff(pred_def_7,type,
'fun_app$g': ( 'Nat_a_b_vec_c_vec_prod_bool_fun$' * 'Nat_a_b_vec_c_vec_prod$' ) > $o ).
tff(pred_def_8,type,
'fun_app$o': ( 'A_b_vec_c_vec_bool_fun$' * 'A_b_vec_c_vec$' ) > $o ).
tff(pred_def_9,type,
'fun_app$s': ( 'A_iarray_iarray_bool_fun$' * 'A_iarray_iarray$' ) > $o ).
tff(pred_def_10,type,
'fun_app$f': ( 'A_nat_a_b_vec_c_vec_prod_prod_bool_fun$' * 'A_nat_a_b_vec_c_vec_prod_prod$' ) > $o ).
tff(pred_def_11,type,
'fun_app$h': ( 'A_nat_a_iarray_iarray_prod_prod_bool_fun$' * 'A_nat_a_iarray_iarray_prod_prod$' ) > $o ).
tff(pred_def_12,type,
'upper_triangular$a': 'A_b_vec_c_vec_c_vec$' > $o ).
tff(pred_def_13,type,
'less$a': ( 'C$' * 'C$' ) > $o ).
tff(pred_def_14,type,
'fun_app$e': ( 'Nat_a_iarray_prod_bool_fun$' * 'Nat_a_iarray_prod$' ) > $o ).
tff(pred_def_15,type,
'member$b': ( 'Nat$' * 'Nat_set$' ) > $o ).
tff(pred_def_16,type,
'fun_app$j': ( 'Nat_bool_fun$' * 'Nat$' ) > $o ).
tff(pred_def_17,type,
'less$b': ( 'B$' * 'B$' ) > $o ).
tff(pred_def_18,type,
'fun_app$q': ( 'A_iarray_bool_fun$' * 'A_iarray$' ) > $o ).
tff(pred_def_19,type,
'member$a': ( 'A$' * 'A_set$' ) > $o ).
tff(pred_def_20,type,
'less_eq$d': ( 'Int_set$' * 'Int_set$' ) > $o ).
tff(pred_def_21,type,
'member$': ( $int * 'Int_set$' ) > $o ).
tff(pred_def_22,type,
'less_eq$': ( 'C$' * 'C$' ) > $o ).
tff(pred_def_23,type,
'fun_app$m': ( 'A_b_vec_bool_fun$' * 'A_b_vec$' ) > $o ).
tff(pred_def_30,type,
sP4: ( $int * $int ) > $o ).
tff(pred_def_31,type,
sP5: ( $int * $int ) > $o ).
tff(pred_def_32,type,
sP6: ( $int * $int ) > $o ).
tff(pred_def_33,type,
sP7: ( $int * $int ) > $o ).
tff(pred_def_34,type,
sP8: ( $int * $int ) > $o ).
tff(pred_def_35,type,
sP9: ( $int * $int ) > $o ).
tff(pred_def_36,type,
sP10: ( $int * $int ) > $o ).
tff(pred_def_37,type,
sP11: ( $int * $int ) > $o ).
tff(pred_def_38,type,
sP12: ( $int * $int ) > $o ).
tff(pred_def_39,type,
sP13: ( $int * $int ) > $o ).
tff(pred_def_40,type,
sP14: ( $int * $int ) > $o ).
tff(pred_def_41,type,
sP15: ( $int * $int ) > $o ).
tff(pred_def_42,type,
sP16: ( $int * $int * $int ) > $o ).
tff(pred_def_43,type,
sP17: ( $int * $int * $int ) > $o ).
tff(pred_def_44,type,
sP18: ( $int * $int * $int ) > $o ).
tff(pred_def_45,type,
sP19: ( $int * $int * $int ) > $o ).
tff(pred_def_46,type,
sP20: ( $int * $int * $int ) > $o ).
tff(pred_def_47,type,
sP21: ( $int * $int * $int ) > $o ).
tff(f4133,plain,
$false,
inference(avatar_sat_refutation,[],[f2973,f3007,f3013,f3124,f3460,f4132]) ).
tff(f4132,plain,
spl108_6,
inference(avatar_contradiction_clause,[],[f4131]) ).
tff(f4131,plain,
( $false
| spl108_6 ),
inference(subsumption_resolution,[],[f4130,f2972]) ).
tff(f2972,plain,
( ( 'of_nat$'('i$') != 'of_nat$'('nrows$'('a$')) )
| spl108_6 ),
inference(avatar_component_clause,[],[f2970]) ).
tff(f2970,plain,
( spl108_6
<=> ( 'of_nat$'('i$') = 'of_nat$'('nrows$'('a$')) ) ),
introduced(avatar_definition,[new_symbols(naming,[spl108_6])]) ).
tff(f4130,plain,
'of_nat$'('i$') = 'of_nat$'('nrows$'('a$')),
inference(subsumption_resolution,[],[f4100,f1773]) ).
tff(f1773,plain,
~ $less('of_nat$'('i$'),'of_nat$'('nrows$'('a$'))),
inference(cnf_transformation,[],[f12]) ).
tff(f12,axiom,
~ $less('of_nat$'('i$'),'of_nat$'('nrows$'('a$'))),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',axiom10) ).
tff(f4100,plain,
( $less('of_nat$'('i$'),'of_nat$'('nrows$'('a$')))
| ( 'of_nat$'('i$') = 'of_nat$'('nrows$'('a$')) ) ),
inference(resolution,[],[f784,f1775]) ).
tff(f1775,plain,
~ $less('of_nat$'('nrows$'('a$')),'of_nat$'('i$')),
inference(cnf_transformation,[],[f642]) ).
tff(f642,plain,
~ $less('of_nat$'('nrows$'('a$')),'of_nat$'('i$')),
inference(theory_normalization,[],[f11]) ).
tff(f11,axiom,
$lesseq('of_nat$'('i$'),'of_nat$'('nrows$'('a$'))),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',axiom9) ).
tff(f784,plain,
! [X0: $int,X1: $int] :
( $less(X1,X0)
| $less(X0,X1)
| ( X0 = X1 ) ),
introduced(theory_axiom_144,[]) ).
tff(f3460,plain,
( ~ spl108_6
| spl108_5 ),
inference(avatar_split_clause,[],[f3447,f2965,f2970]) ).
tff(f2965,plain,
( spl108_5
<=> ( 'of_nat$'('i$') = 'of_nat$'('nrows_iarray$'('matrix_to_iarray$'('a$'))) ) ),
introduced(avatar_definition,[new_symbols(naming,[spl108_5])]) ).
tff(f3447,plain,
( ( 'of_nat$'('i$') != 'of_nat$'('nrows$'('a$')) )
| spl108_5 ),
inference(superposition,[],[f2966,f1858]) ).
tff(f1858,plain,
! [X0: 'A_b_vec_c_vec$'] : ( 'of_nat$'('nrows$'(X0)) = 'of_nat$'('nrows_iarray$'('matrix_to_iarray$'(X0))) ),
inference(cnf_transformation,[],[f573]) ).
tff(f573,axiom,
! [X0: 'A_b_vec_c_vec$'] : ( 'of_nat$'('nrows$'(X0)) = 'of_nat$'('nrows_iarray$'('matrix_to_iarray$'(X0))) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',axiom571) ).
tff(f2966,plain,
( ( 'of_nat$'('i$') != 'of_nat$'('nrows_iarray$'('matrix_to_iarray$'('a$'))) )
| spl108_5 ),
inference(avatar_component_clause,[],[f2965]) ).
tff(f3124,plain,
spl108_13,
inference(avatar_contradiction_clause,[],[f3123]) ).
tff(f3123,plain,
( $false
| spl108_13 ),
inference(trivial_inequality_removal,[],[f3122]) ).
tff(f3122,plain,
( ( 'matrix_to_iarray$'('a$') != 'matrix_to_iarray$'('a$') )
| spl108_13 ),
inference(forward_demodulation,[],[f3121,f1937]) ).
tff(f1937,plain,
! [X0: 'Nat$',X1: 'A_b_vec_c_vec$'] : ( 'snd$'('pair$a'(X0,X1)) = X1 ),
inference(cnf_transformation,[],[f273]) ).
tff(f273,axiom,
! [X0: 'Nat$',X1: 'A_b_vec_c_vec$'] : ( 'snd$'('pair$a'(X0,X1)) = X1 ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',axiom271) ).
tff(f3121,plain,
( ( 'matrix_to_iarray$'('a$') != 'matrix_to_iarray$'('snd$'('pair$a'('i$','a$'))) )
| spl108_13 ),
inference(forward_demodulation,[],[f3120,f1941]) ).
tff(f1941,plain,
! [X0: 'A$',X1: 'Nat_a_b_vec_c_vec_prod$'] : ( 'snd$a'('pair$'(X0,X1)) = X1 ),
inference(cnf_transformation,[],[f277]) ).
tff(f277,axiom,
! [X0: 'A$',X1: 'Nat_a_b_vec_c_vec_prod$'] : ( 'snd$a'('pair$'(X0,X1)) = X1 ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',axiom275) ).
tff(f3120,plain,
( ( 'matrix_to_iarray$'('a$') != 'matrix_to_iarray$'('snd$'('snd$a'('pair$'('n$','pair$a'('i$','a$'))))) )
| spl108_13 ),
inference(forward_demodulation,[],[f3119,f1939]) ).
tff(f1939,plain,
! [X0: 'Nat$',X1: 'A_iarray_iarray$'] : ( 'snd$c'('pair$d'(X0,X1)) = X1 ),
inference(cnf_transformation,[],[f275]) ).
tff(f275,axiom,
! [X0: 'Nat$',X1: 'A_iarray_iarray$'] : ( 'snd$c'('pair$d'(X0,X1)) = X1 ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',axiom273) ).
tff(f3119,plain,
( ( 'matrix_to_iarray$'('snd$'('snd$a'('pair$'('n$','pair$a'('i$','a$'))))) != 'snd$c'('pair$d'('i$','matrix_to_iarray$'('a$'))) )
| spl108_13 ),
inference(forward_demodulation,[],[f3012,f1940]) ).
tff(f1940,plain,
! [X0: 'A$',X1: 'Nat_a_iarray_iarray_prod$'] : ( 'snd$d'('pair$c'(X0,X1)) = X1 ),
inference(cnf_transformation,[],[f278]) ).
tff(f278,axiom,
! [X0: 'A$',X1: 'Nat_a_iarray_iarray_prod$'] : ( 'snd$d'('pair$c'(X0,X1)) = X1 ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',axiom276) ).
tff(f3012,plain,
( ( 'matrix_to_iarray$'('snd$'('snd$a'('pair$'('n$','pair$a'('i$','a$'))))) != 'snd$c'('snd$d'('pair$c'('n$','pair$d'('i$','matrix_to_iarray$'('a$'))))) )
| spl108_13 ),
inference(avatar_component_clause,[],[f3010]) ).
tff(f3010,plain,
( spl108_13
<=> ( 'matrix_to_iarray$'('snd$'('snd$a'('pair$'('n$','pair$a'('i$','a$'))))) = 'snd$c'('snd$d'('pair$c'('n$','pair$d'('i$','matrix_to_iarray$'('a$'))))) ) ),
introduced(avatar_definition,[new_symbols(naming,[spl108_13])]) ).
tff(f3013,plain,
( ~ spl108_13
| spl108_11
| spl108_1 ),
inference(avatar_split_clause,[],[f1741,f2948,f2999,f3010]) ).
tff(f2999,plain,
( spl108_11
<=> sP0 ),
introduced(avatar_definition,[new_symbols(naming,[spl108_11])]) ).
tff(f2948,plain,
( spl108_1
<=> sP3 ),
introduced(avatar_definition,[new_symbols(naming,[spl108_1])]) ).
tff(f1741,plain,
( sP3
| sP0
| ( 'matrix_to_iarray$'('snd$'('snd$a'('pair$'('n$','pair$a'('i$','a$'))))) != 'snd$c'('snd$d'('pair$c'('n$','pair$d'('i$','matrix_to_iarray$'('a$'))))) ) ),
inference(cnf_transformation,[],[f1360]) ).
tff(f1360,plain,
( sP3
| ( ( sP0
| ( ( 'matrix_to_iarray$'('snd$'('snd$a'('pair$'('n$','pair$a'('i$','a$'))))) != 'snd$c'('snd$d'('pair$c'('n$','pair$d'('i$','matrix_to_iarray$'('a$'))))) )
& ( ( 'of_nat$'('i$') = 'of_nat$'('nrows_iarray$'('matrix_to_iarray$'('a$'))) )
| 'fun_app$e'('vector_all_zero_from_index$','pair$b'('i$','column_iarray$'('k$','matrix_to_iarray$'('a$')))) ) ) )
& ( ( 'of_nat$'('i$') = 'of_nat$'('nrows$'('a$')) )
| ! [X0: 'C$'] :
( ( 'zero$a' = 'fun_app$c'('vec_nth$'('fun_app$d'('vec_nth$a'('a$'),X0)),'from_nat$a'('k$')) )
| ~ 'less_eq$'('from_nat$'('i$'),X0) ) ) ) ),
inference(rectify,[],[f1317]) ).
tff(f1317,plain,
( sP3
| ( ( sP0
| ( ( 'matrix_to_iarray$'('snd$'('snd$a'('pair$'('n$','pair$a'('i$','a$'))))) != 'snd$c'('snd$d'('pair$c'('n$','pair$d'('i$','matrix_to_iarray$'('a$'))))) )
& ( ( 'of_nat$'('i$') = 'of_nat$'('nrows_iarray$'('matrix_to_iarray$'('a$'))) )
| 'fun_app$e'('vector_all_zero_from_index$','pair$b'('i$','column_iarray$'('k$','matrix_to_iarray$'('a$')))) ) ) )
& ( ( 'of_nat$'('i$') = 'of_nat$'('nrows$'('a$')) )
| ! [X1: 'C$'] :
( ( 'zero$a' = 'fun_app$c'('vec_nth$'('fun_app$d'('vec_nth$a'('a$'),X1)),'from_nat$a'('k$')) )
| ~ 'less_eq$'('from_nat$'('i$'),X1) ) ) ) ),
inference(definition_folding,[],[f864,f1316,f1315,f1314,f1313]) ).
tff(f1313,plain,
( ( ( 'matrix_to_iarray$'('snd$'('snd$a'('pair$'('n$','pair$a'('i$','a$'))))) != 'snd$c'('snd$d'('pair$c'('fun_app$b'('times$'('fst$a'('gauss_Jordan_in_ij_det_P_iarrays$'('matrix_to_iarray$'('a$'),'i$','k$'))),'n$'),'pair$d'('nat$'($sum('of_nat$'('i$'),1)),'snd$e'('gauss_Jordan_in_ij_det_P_iarrays$'('matrix_to_iarray$'('a$'),'i$','k$')))))) )
& ( 'of_nat$'('i$') != 'of_nat$'('nrows_iarray$'('matrix_to_iarray$'('a$'))) )
& ~ 'fun_app$e'('vector_all_zero_from_index$','pair$b'('i$','column_iarray$'('k$','matrix_to_iarray$'('a$')))) )
| ~ sP0 ),
introduced(predicate_definition_introduction,[new_symbols(naming,[sP0])]) ).
tff(f1314,plain,
( ( ( 'snd$c'('snd$d'('pair$c'('fun_app$b'('times$'('fst$a'('gauss_Jordan_in_ij_det_P_iarrays$'('matrix_to_iarray$'('a$'),'i$','k$'))),'n$'),'pair$d'('nat$'($sum('of_nat$'('i$'),1)),'snd$e'('gauss_Jordan_in_ij_det_P_iarrays$'('matrix_to_iarray$'('a$'),'i$','k$')))))) != 'matrix_to_iarray$'('snd$'('snd$a'('pair$'('fun_app$b'('times$'('fst$'('gauss_Jordan_in_ij_det_P$'('a$','from_nat$'('i$'),'from_nat$a'('k$')))),'n$'),'pair$a'('nat$'($sum('of_nat$'('i$'),1)),'snd$b'('gauss_Jordan_in_ij_det_P$'('a$','from_nat$'('i$'),'from_nat$a'('k$')))))))) )
& ( 'of_nat$'('i$') != 'of_nat$'('nrows_iarray$'('matrix_to_iarray$'('a$'))) )
& ~ 'fun_app$e'('vector_all_zero_from_index$','pair$b'('i$','column_iarray$'('k$','matrix_to_iarray$'('a$')))) )
| ~ sP1 ),
introduced(predicate_definition_introduction,[new_symbols(naming,[sP1])]) ).
tff(f1315,plain,
( ? [X0: 'C$'] :
( ( 'zero$a' != 'fun_app$c'('vec_nth$'('fun_app$d'('vec_nth$a'('a$'),X0)),'from_nat$a'('k$')) )
& 'less_eq$'('from_nat$'('i$'),X0) )
| ~ sP2 ),
introduced(predicate_definition_introduction,[new_symbols(naming,[sP2])]) ).
tff(f1316,plain,
( ( ( sP1
| ( ( 'snd$c'('snd$d'('pair$c'('n$','pair$d'('i$','matrix_to_iarray$'('a$'))))) != 'matrix_to_iarray$'('snd$'('snd$a'('pair$'('fun_app$b'('times$'('fst$'('gauss_Jordan_in_ij_det_P$'('a$','from_nat$'('i$'),'from_nat$a'('k$')))),'n$'),'pair$a'('nat$'($sum('of_nat$'('i$'),1)),'snd$b'('gauss_Jordan_in_ij_det_P$'('a$','from_nat$'('i$'),'from_nat$a'('k$')))))))) )
& ( ( 'of_nat$'('i$') = 'of_nat$'('nrows_iarray$'('matrix_to_iarray$'('a$'))) )
| 'fun_app$e'('vector_all_zero_from_index$','pair$b'('i$','column_iarray$'('k$','matrix_to_iarray$'('a$')))) ) ) )
& ( 'of_nat$'('i$') != 'of_nat$'('nrows$'('a$')) )
& sP2 )
| ~ sP3 ),
introduced(predicate_definition_introduction,[new_symbols(naming,[sP3])]) ).
tff(f864,plain,
( ( ( ( ( 'snd$c'('snd$d'('pair$c'('fun_app$b'('times$'('fst$a'('gauss_Jordan_in_ij_det_P_iarrays$'('matrix_to_iarray$'('a$'),'i$','k$'))),'n$'),'pair$d'('nat$'($sum('of_nat$'('i$'),1)),'snd$e'('gauss_Jordan_in_ij_det_P_iarrays$'('matrix_to_iarray$'('a$'),'i$','k$')))))) != 'matrix_to_iarray$'('snd$'('snd$a'('pair$'('fun_app$b'('times$'('fst$'('gauss_Jordan_in_ij_det_P$'('a$','from_nat$'('i$'),'from_nat$a'('k$')))),'n$'),'pair$a'('nat$'($sum('of_nat$'('i$'),1)),'snd$b'('gauss_Jordan_in_ij_det_P$'('a$','from_nat$'('i$'),'from_nat$a'('k$')))))))) )
& ( 'of_nat$'('i$') != 'of_nat$'('nrows_iarray$'('matrix_to_iarray$'('a$'))) )
& ~ 'fun_app$e'('vector_all_zero_from_index$','pair$b'('i$','column_iarray$'('k$','matrix_to_iarray$'('a$')))) )
| ( ( 'snd$c'('snd$d'('pair$c'('n$','pair$d'('i$','matrix_to_iarray$'('a$'))))) != 'matrix_to_iarray$'('snd$'('snd$a'('pair$'('fun_app$b'('times$'('fst$'('gauss_Jordan_in_ij_det_P$'('a$','from_nat$'('i$'),'from_nat$a'('k$')))),'n$'),'pair$a'('nat$'($sum('of_nat$'('i$'),1)),'snd$b'('gauss_Jordan_in_ij_det_P$'('a$','from_nat$'('i$'),'from_nat$a'('k$')))))))) )
& ( ( 'of_nat$'('i$') = 'of_nat$'('nrows_iarray$'('matrix_to_iarray$'('a$'))) )
| 'fun_app$e'('vector_all_zero_from_index$','pair$b'('i$','column_iarray$'('k$','matrix_to_iarray$'('a$')))) ) ) )
& ( 'of_nat$'('i$') != 'of_nat$'('nrows$'('a$')) )
& ? [X0: 'C$'] :
( ( 'zero$a' != 'fun_app$c'('vec_nth$'('fun_app$d'('vec_nth$a'('a$'),X0)),'from_nat$a'('k$')) )
& 'less_eq$'('from_nat$'('i$'),X0) ) )
| ( ( ( ( 'matrix_to_iarray$'('snd$'('snd$a'('pair$'('n$','pair$a'('i$','a$'))))) != 'snd$c'('snd$d'('pair$c'('fun_app$b'('times$'('fst$a'('gauss_Jordan_in_ij_det_P_iarrays$'('matrix_to_iarray$'('a$'),'i$','k$'))),'n$'),'pair$d'('nat$'($sum('of_nat$'('i$'),1)),'snd$e'('gauss_Jordan_in_ij_det_P_iarrays$'('matrix_to_iarray$'('a$'),'i$','k$')))))) )
& ( 'of_nat$'('i$') != 'of_nat$'('nrows_iarray$'('matrix_to_iarray$'('a$'))) )
& ~ 'fun_app$e'('vector_all_zero_from_index$','pair$b'('i$','column_iarray$'('k$','matrix_to_iarray$'('a$')))) )
| ( ( 'matrix_to_iarray$'('snd$'('snd$a'('pair$'('n$','pair$a'('i$','a$'))))) != 'snd$c'('snd$d'('pair$c'('n$','pair$d'('i$','matrix_to_iarray$'('a$'))))) )
& ( ( 'of_nat$'('i$') = 'of_nat$'('nrows_iarray$'('matrix_to_iarray$'('a$'))) )
| 'fun_app$e'('vector_all_zero_from_index$','pair$b'('i$','column_iarray$'('k$','matrix_to_iarray$'('a$')))) ) ) )
& ( ( 'of_nat$'('i$') = 'of_nat$'('nrows$'('a$')) )
| ! [X1: 'C$'] :
( ( 'zero$a' = 'fun_app$c'('vec_nth$'('fun_app$d'('vec_nth$a'('a$'),X1)),'from_nat$a'('k$')) )
| ~ 'less_eq$'('from_nat$'('i$'),X1) ) ) ) ),
inference(flattening,[],[f863]) ).
tff(f863,plain,
( ( ( ( ( 'snd$c'('snd$d'('pair$c'('fun_app$b'('times$'('fst$a'('gauss_Jordan_in_ij_det_P_iarrays$'('matrix_to_iarray$'('a$'),'i$','k$'))),'n$'),'pair$d'('nat$'($sum('of_nat$'('i$'),1)),'snd$e'('gauss_Jordan_in_ij_det_P_iarrays$'('matrix_to_iarray$'('a$'),'i$','k$')))))) != 'matrix_to_iarray$'('snd$'('snd$a'('pair$'('fun_app$b'('times$'('fst$'('gauss_Jordan_in_ij_det_P$'('a$','from_nat$'('i$'),'from_nat$a'('k$')))),'n$'),'pair$a'('nat$'($sum('of_nat$'('i$'),1)),'snd$b'('gauss_Jordan_in_ij_det_P$'('a$','from_nat$'('i$'),'from_nat$a'('k$')))))))) )
& ( 'of_nat$'('i$') != 'of_nat$'('nrows_iarray$'('matrix_to_iarray$'('a$'))) )
& ~ 'fun_app$e'('vector_all_zero_from_index$','pair$b'('i$','column_iarray$'('k$','matrix_to_iarray$'('a$')))) )
| ( ( 'snd$c'('snd$d'('pair$c'('n$','pair$d'('i$','matrix_to_iarray$'('a$'))))) != 'matrix_to_iarray$'('snd$'('snd$a'('pair$'('fun_app$b'('times$'('fst$'('gauss_Jordan_in_ij_det_P$'('a$','from_nat$'('i$'),'from_nat$a'('k$')))),'n$'),'pair$a'('nat$'($sum('of_nat$'('i$'),1)),'snd$b'('gauss_Jordan_in_ij_det_P$'('a$','from_nat$'('i$'),'from_nat$a'('k$')))))))) )
& ( ( 'of_nat$'('i$') = 'of_nat$'('nrows_iarray$'('matrix_to_iarray$'('a$'))) )
| 'fun_app$e'('vector_all_zero_from_index$','pair$b'('i$','column_iarray$'('k$','matrix_to_iarray$'('a$')))) ) ) )
& ( 'of_nat$'('i$') != 'of_nat$'('nrows$'('a$')) )
& ? [X0: 'C$'] :
( ( 'zero$a' != 'fun_app$c'('vec_nth$'('fun_app$d'('vec_nth$a'('a$'),X0)),'from_nat$a'('k$')) )
& 'less_eq$'('from_nat$'('i$'),X0) ) )
| ( ( ( ( 'matrix_to_iarray$'('snd$'('snd$a'('pair$'('n$','pair$a'('i$','a$'))))) != 'snd$c'('snd$d'('pair$c'('fun_app$b'('times$'('fst$a'('gauss_Jordan_in_ij_det_P_iarrays$'('matrix_to_iarray$'('a$'),'i$','k$'))),'n$'),'pair$d'('nat$'($sum('of_nat$'('i$'),1)),'snd$e'('gauss_Jordan_in_ij_det_P_iarrays$'('matrix_to_iarray$'('a$'),'i$','k$')))))) )
& ( 'of_nat$'('i$') != 'of_nat$'('nrows_iarray$'('matrix_to_iarray$'('a$'))) )
& ~ 'fun_app$e'('vector_all_zero_from_index$','pair$b'('i$','column_iarray$'('k$','matrix_to_iarray$'('a$')))) )
| ( ( 'matrix_to_iarray$'('snd$'('snd$a'('pair$'('n$','pair$a'('i$','a$'))))) != 'snd$c'('snd$d'('pair$c'('n$','pair$d'('i$','matrix_to_iarray$'('a$'))))) )
& ( ( 'of_nat$'('i$') = 'of_nat$'('nrows_iarray$'('matrix_to_iarray$'('a$'))) )
| 'fun_app$e'('vector_all_zero_from_index$','pair$b'('i$','column_iarray$'('k$','matrix_to_iarray$'('a$')))) ) ) )
& ( ( 'of_nat$'('i$') = 'of_nat$'('nrows$'('a$')) )
| ! [X1: 'C$'] :
( ( 'zero$a' = 'fun_app$c'('vec_nth$'('fun_app$d'('vec_nth$a'('a$'),X1)),'from_nat$a'('k$')) )
| ~ 'less_eq$'('from_nat$'('i$'),X1) ) ) ) ),
inference(ennf_transformation,[],[f795]) ).
tff(f795,plain,
~ ( ( ~ ( ( 'of_nat$'('i$') = 'of_nat$'('nrows$'('a$')) )
| ! [X0: 'C$'] :
( 'less_eq$'('from_nat$'('i$'),X0)
=> ( 'zero$a' = 'fun_app$c'('vec_nth$'('fun_app$d'('vec_nth$a'('a$'),X0)),'from_nat$a'('k$')) ) ) )
=> ( ( ~ ( ( 'of_nat$'('i$') = 'of_nat$'('nrows_iarray$'('matrix_to_iarray$'('a$'))) )
| 'fun_app$e'('vector_all_zero_from_index$','pair$b'('i$','column_iarray$'('k$','matrix_to_iarray$'('a$')))) )
=> ( 'snd$c'('snd$d'('pair$c'('fun_app$b'('times$'('fst$a'('gauss_Jordan_in_ij_det_P_iarrays$'('matrix_to_iarray$'('a$'),'i$','k$'))),'n$'),'pair$d'('nat$'($sum('of_nat$'('i$'),1)),'snd$e'('gauss_Jordan_in_ij_det_P_iarrays$'('matrix_to_iarray$'('a$'),'i$','k$')))))) = 'matrix_to_iarray$'('snd$'('snd$a'('pair$'('fun_app$b'('times$'('fst$'('gauss_Jordan_in_ij_det_P$'('a$','from_nat$'('i$'),'from_nat$a'('k$')))),'n$'),'pair$a'('nat$'($sum('of_nat$'('i$'),1)),'snd$b'('gauss_Jordan_in_ij_det_P$'('a$','from_nat$'('i$'),'from_nat$a'('k$')))))))) ) )
& ( ( ( 'of_nat$'('i$') = 'of_nat$'('nrows_iarray$'('matrix_to_iarray$'('a$'))) )
| 'fun_app$e'('vector_all_zero_from_index$','pair$b'('i$','column_iarray$'('k$','matrix_to_iarray$'('a$')))) )
=> ( 'snd$c'('snd$d'('pair$c'('n$','pair$d'('i$','matrix_to_iarray$'('a$'))))) = 'matrix_to_iarray$'('snd$'('snd$a'('pair$'('fun_app$b'('times$'('fst$'('gauss_Jordan_in_ij_det_P$'('a$','from_nat$'('i$'),'from_nat$a'('k$')))),'n$'),'pair$a'('nat$'($sum('of_nat$'('i$'),1)),'snd$b'('gauss_Jordan_in_ij_det_P$'('a$','from_nat$'('i$'),'from_nat$a'('k$')))))))) ) ) ) )
& ( ( ( 'of_nat$'('i$') = 'of_nat$'('nrows$'('a$')) )
| ! [X1: 'C$'] :
( 'less_eq$'('from_nat$'('i$'),X1)
=> ( 'zero$a' = 'fun_app$c'('vec_nth$'('fun_app$d'('vec_nth$a'('a$'),X1)),'from_nat$a'('k$')) ) ) )
=> ( ( ~ ( ( 'of_nat$'('i$') = 'of_nat$'('nrows_iarray$'('matrix_to_iarray$'('a$'))) )
| 'fun_app$e'('vector_all_zero_from_index$','pair$b'('i$','column_iarray$'('k$','matrix_to_iarray$'('a$')))) )
=> ( 'matrix_to_iarray$'('snd$'('snd$a'('pair$'('n$','pair$a'('i$','a$'))))) = 'snd$c'('snd$d'('pair$c'('fun_app$b'('times$'('fst$a'('gauss_Jordan_in_ij_det_P_iarrays$'('matrix_to_iarray$'('a$'),'i$','k$'))),'n$'),'pair$d'('nat$'($sum('of_nat$'('i$'),1)),'snd$e'('gauss_Jordan_in_ij_det_P_iarrays$'('matrix_to_iarray$'('a$'),'i$','k$')))))) ) )
& ( ( ( 'of_nat$'('i$') = 'of_nat$'('nrows_iarray$'('matrix_to_iarray$'('a$'))) )
| 'fun_app$e'('vector_all_zero_from_index$','pair$b'('i$','column_iarray$'('k$','matrix_to_iarray$'('a$')))) )
=> ( 'matrix_to_iarray$'('snd$'('snd$a'('pair$'('n$','pair$a'('i$','a$'))))) = 'snd$c'('snd$d'('pair$c'('n$','pair$d'('i$','matrix_to_iarray$'('a$'))))) ) ) ) ) ),
inference(rectify,[],[f10]) ).
tff(f10,negated_conjecture,
~ ( ( ~ ( ( 'of_nat$'('i$') = 'of_nat$'('nrows$'('a$')) )
| ! [X0: 'C$'] :
( 'less_eq$'('from_nat$'('i$'),X0)
=> ( 'zero$a' = 'fun_app$c'('vec_nth$'('fun_app$d'('vec_nth$a'('a$'),X0)),'from_nat$a'('k$')) ) ) )
=> ( ( ~ ( ( 'of_nat$'('i$') = 'of_nat$'('nrows_iarray$'('matrix_to_iarray$'('a$'))) )
| 'fun_app$e'('vector_all_zero_from_index$','pair$b'('i$','column_iarray$'('k$','matrix_to_iarray$'('a$')))) )
=> ( 'snd$c'('snd$d'('pair$c'('fun_app$b'('times$'('fst$a'('gauss_Jordan_in_ij_det_P_iarrays$'('matrix_to_iarray$'('a$'),'i$','k$'))),'n$'),'pair$d'('nat$'($sum('of_nat$'('i$'),1)),'snd$e'('gauss_Jordan_in_ij_det_P_iarrays$'('matrix_to_iarray$'('a$'),'i$','k$')))))) = 'matrix_to_iarray$'('snd$'('snd$a'('pair$'('fun_app$b'('times$'('fst$'('gauss_Jordan_in_ij_det_P$'('a$','from_nat$'('i$'),'from_nat$a'('k$')))),'n$'),'pair$a'('nat$'($sum('of_nat$'('i$'),1)),'snd$b'('gauss_Jordan_in_ij_det_P$'('a$','from_nat$'('i$'),'from_nat$a'('k$')))))))) ) )
& ( ( ( 'of_nat$'('i$') = 'of_nat$'('nrows_iarray$'('matrix_to_iarray$'('a$'))) )
| 'fun_app$e'('vector_all_zero_from_index$','pair$b'('i$','column_iarray$'('k$','matrix_to_iarray$'('a$')))) )
=> ( 'snd$c'('snd$d'('pair$c'('n$','pair$d'('i$','matrix_to_iarray$'('a$'))))) = 'matrix_to_iarray$'('snd$'('snd$a'('pair$'('fun_app$b'('times$'('fst$'('gauss_Jordan_in_ij_det_P$'('a$','from_nat$'('i$'),'from_nat$a'('k$')))),'n$'),'pair$a'('nat$'($sum('of_nat$'('i$'),1)),'snd$b'('gauss_Jordan_in_ij_det_P$'('a$','from_nat$'('i$'),'from_nat$a'('k$')))))))) ) ) ) )
& ( ( ( 'of_nat$'('i$') = 'of_nat$'('nrows$'('a$')) )
| ! [X0: 'C$'] :
( 'less_eq$'('from_nat$'('i$'),X0)
=> ( 'zero$a' = 'fun_app$c'('vec_nth$'('fun_app$d'('vec_nth$a'('a$'),X0)),'from_nat$a'('k$')) ) ) )
=> ( ( ~ ( ( 'of_nat$'('i$') = 'of_nat$'('nrows_iarray$'('matrix_to_iarray$'('a$'))) )
| 'fun_app$e'('vector_all_zero_from_index$','pair$b'('i$','column_iarray$'('k$','matrix_to_iarray$'('a$')))) )
=> ( 'matrix_to_iarray$'('snd$'('snd$a'('pair$'('n$','pair$a'('i$','a$'))))) = 'snd$c'('snd$d'('pair$c'('fun_app$b'('times$'('fst$a'('gauss_Jordan_in_ij_det_P_iarrays$'('matrix_to_iarray$'('a$'),'i$','k$'))),'n$'),'pair$d'('nat$'($sum('of_nat$'('i$'),1)),'snd$e'('gauss_Jordan_in_ij_det_P_iarrays$'('matrix_to_iarray$'('a$'),'i$','k$')))))) ) )
& ( ( ( 'of_nat$'('i$') = 'of_nat$'('nrows_iarray$'('matrix_to_iarray$'('a$'))) )
| 'fun_app$e'('vector_all_zero_from_index$','pair$b'('i$','column_iarray$'('k$','matrix_to_iarray$'('a$')))) )
=> ( 'matrix_to_iarray$'('snd$'('snd$a'('pair$'('n$','pair$a'('i$','a$'))))) = 'snd$c'('snd$d'('pair$c'('n$','pair$d'('i$','matrix_to_iarray$'('a$'))))) ) ) ) ) ),
inference(negated_conjecture,[],[f9]) ).
tff(f9,conjecture,
( ( ~ ( ( 'of_nat$'('i$') = 'of_nat$'('nrows$'('a$')) )
| ! [X0: 'C$'] :
( 'less_eq$'('from_nat$'('i$'),X0)
=> ( 'zero$a' = 'fun_app$c'('vec_nth$'('fun_app$d'('vec_nth$a'('a$'),X0)),'from_nat$a'('k$')) ) ) )
=> ( ( ~ ( ( 'of_nat$'('i$') = 'of_nat$'('nrows_iarray$'('matrix_to_iarray$'('a$'))) )
| 'fun_app$e'('vector_all_zero_from_index$','pair$b'('i$','column_iarray$'('k$','matrix_to_iarray$'('a$')))) )
=> ( 'snd$c'('snd$d'('pair$c'('fun_app$b'('times$'('fst$a'('gauss_Jordan_in_ij_det_P_iarrays$'('matrix_to_iarray$'('a$'),'i$','k$'))),'n$'),'pair$d'('nat$'($sum('of_nat$'('i$'),1)),'snd$e'('gauss_Jordan_in_ij_det_P_iarrays$'('matrix_to_iarray$'('a$'),'i$','k$')))))) = 'matrix_to_iarray$'('snd$'('snd$a'('pair$'('fun_app$b'('times$'('fst$'('gauss_Jordan_in_ij_det_P$'('a$','from_nat$'('i$'),'from_nat$a'('k$')))),'n$'),'pair$a'('nat$'($sum('of_nat$'('i$'),1)),'snd$b'('gauss_Jordan_in_ij_det_P$'('a$','from_nat$'('i$'),'from_nat$a'('k$')))))))) ) )
& ( ( ( 'of_nat$'('i$') = 'of_nat$'('nrows_iarray$'('matrix_to_iarray$'('a$'))) )
| 'fun_app$e'('vector_all_zero_from_index$','pair$b'('i$','column_iarray$'('k$','matrix_to_iarray$'('a$')))) )
=> ( 'snd$c'('snd$d'('pair$c'('n$','pair$d'('i$','matrix_to_iarray$'('a$'))))) = 'matrix_to_iarray$'('snd$'('snd$a'('pair$'('fun_app$b'('times$'('fst$'('gauss_Jordan_in_ij_det_P$'('a$','from_nat$'('i$'),'from_nat$a'('k$')))),'n$'),'pair$a'('nat$'($sum('of_nat$'('i$'),1)),'snd$b'('gauss_Jordan_in_ij_det_P$'('a$','from_nat$'('i$'),'from_nat$a'('k$')))))))) ) ) ) )
& ( ( ( 'of_nat$'('i$') = 'of_nat$'('nrows$'('a$')) )
| ! [X0: 'C$'] :
( 'less_eq$'('from_nat$'('i$'),X0)
=> ( 'zero$a' = 'fun_app$c'('vec_nth$'('fun_app$d'('vec_nth$a'('a$'),X0)),'from_nat$a'('k$')) ) ) )
=> ( ( ~ ( ( 'of_nat$'('i$') = 'of_nat$'('nrows_iarray$'('matrix_to_iarray$'('a$'))) )
| 'fun_app$e'('vector_all_zero_from_index$','pair$b'('i$','column_iarray$'('k$','matrix_to_iarray$'('a$')))) )
=> ( 'matrix_to_iarray$'('snd$'('snd$a'('pair$'('n$','pair$a'('i$','a$'))))) = 'snd$c'('snd$d'('pair$c'('fun_app$b'('times$'('fst$a'('gauss_Jordan_in_ij_det_P_iarrays$'('matrix_to_iarray$'('a$'),'i$','k$'))),'n$'),'pair$d'('nat$'($sum('of_nat$'('i$'),1)),'snd$e'('gauss_Jordan_in_ij_det_P_iarrays$'('matrix_to_iarray$'('a$'),'i$','k$')))))) ) )
& ( ( ( 'of_nat$'('i$') = 'of_nat$'('nrows_iarray$'('matrix_to_iarray$'('a$'))) )
| 'fun_app$e'('vector_all_zero_from_index$','pair$b'('i$','column_iarray$'('k$','matrix_to_iarray$'('a$')))) )
=> ( 'matrix_to_iarray$'('snd$'('snd$a'('pair$'('n$','pair$a'('i$','a$'))))) = 'snd$c'('snd$d'('pair$c'('n$','pair$d'('i$','matrix_to_iarray$'('a$'))))) ) ) ) ) ),
file('/export/starexec/sandbox2/benchmark/theBenchmark.p',conjecture8) ).
tff(f3007,plain,
( ~ spl108_11
| ~ spl108_5 ),
inference(avatar_split_clause,[],[f1737,f2965,f2999]) ).
tff(f1737,plain,
( ( 'of_nat$'('i$') != 'of_nat$'('nrows_iarray$'('matrix_to_iarray$'('a$'))) )
| ~ sP0 ),
inference(cnf_transformation,[],[f1359]) ).
tff(f1359,plain,
( ( ( 'matrix_to_iarray$'('snd$'('snd$a'('pair$'('n$','pair$a'('i$','a$'))))) != 'snd$c'('snd$d'('pair$c'('fun_app$b'('times$'('fst$a'('gauss_Jordan_in_ij_det_P_iarrays$'('matrix_to_iarray$'('a$'),'i$','k$'))),'n$'),'pair$d'('nat$'($sum('of_nat$'('i$'),1)),'snd$e'('gauss_Jordan_in_ij_det_P_iarrays$'('matrix_to_iarray$'('a$'),'i$','k$')))))) )
& ( 'of_nat$'('i$') != 'of_nat$'('nrows_iarray$'('matrix_to_iarray$'('a$'))) )
& ~ 'fun_app$e'('vector_all_zero_from_index$','pair$b'('i$','column_iarray$'('k$','matrix_to_iarray$'('a$')))) )
| ~ sP0 ),
inference(nnf_transformation,[],[f1313]) ).
tff(f2973,plain,
( ~ spl108_1
| ~ spl108_6 ),
inference(avatar_split_clause,[],[f1728,f2970,f2948]) ).
tff(f1728,plain,
( ( 'of_nat$'('i$') != 'of_nat$'('nrows$'('a$')) )
| ~ sP3 ),
inference(cnf_transformation,[],[f1354]) ).
tff(f1354,plain,
( ( ( sP1
| ( ( 'snd$c'('snd$d'('pair$c'('n$','pair$d'('i$','matrix_to_iarray$'('a$'))))) != 'matrix_to_iarray$'('snd$'('snd$a'('pair$'('fun_app$b'('times$'('fst$'('gauss_Jordan_in_ij_det_P$'('a$','from_nat$'('i$'),'from_nat$a'('k$')))),'n$'),'pair$a'('nat$'($sum('of_nat$'('i$'),1)),'snd$b'('gauss_Jordan_in_ij_det_P$'('a$','from_nat$'('i$'),'from_nat$a'('k$')))))))) )
& ( ( 'of_nat$'('i$') = 'of_nat$'('nrows_iarray$'('matrix_to_iarray$'('a$'))) )
| 'fun_app$e'('vector_all_zero_from_index$','pair$b'('i$','column_iarray$'('k$','matrix_to_iarray$'('a$')))) ) ) )
& ( 'of_nat$'('i$') != 'of_nat$'('nrows$'('a$')) )
& sP2 )
| ~ sP3 ),
inference(nnf_transformation,[],[f1316]) ).
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.07/0.12 % Problem : ITP001_1 : TPTP v8.2.0. Released v8.1.0.
% 0.07/0.14 % Command : vampire --mode casc_sat -m 16384 --cores 7 -t %d %s
% 0.13/0.34 % Computer : n017.cluster.edu
% 0.13/0.34 % Model : x86_64 x86_64
% 0.13/0.34 % CPU : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.13/0.34 % Memory : 8042.1875MB
% 0.13/0.34 % OS : Linux 3.10.0-693.el7.x86_64
% 0.13/0.34 % CPULimit : 300
% 0.13/0.34 % WCLimit : 300
% 0.13/0.34 % DateTime : Sat May 18 18:34:23 EDT 2024
% 0.13/0.34 % CPUTime :
% 0.13/0.35 % (18384)Running in auto input_syntax mode. Trying TPTP
% 0.13/0.40 % (18387)WARNING: value z3 for option sas not known
% 0.19/0.40 % (18386)fmb+10_1_bce=on:fmbdsb=on:fmbes=contour:fmbswr=3:fde=none:nm=0_793 on theBenchmark for (793ds/0Mi)
% 0.19/0.40 % (18385)fmb+10_1_bce=on:fmbas=function:fmbsr=1.2:fde=unused:nm=0_846 on theBenchmark for (846ds/0Mi)
% 0.19/0.40 % (18388)fmb+10_1_bce=on:fmbsr=1.5:nm=32_533 on theBenchmark for (533ds/0Mi)
% 0.19/0.40 % (18387)dis+2_11_add=large:afr=on:amm=off:bd=off:bce=on:fsd=off:fde=none:gs=on:gsaa=full_model:gsem=off:irw=on:msp=off:nm=4:nwc=1.3:sas=z3:sims=off:sac=on:sp=reverse_arity_569 on theBenchmark for (569ds/0Mi)
% 0.19/0.40 % (18389)ott+10_10:1_add=off:afr=on:amm=off:anc=all:bd=off:bs=on:fsr=off:irw=on:lma=on:msp=off:nm=4:nwc=4.0:sac=on:sp=reverse_frequency_531 on theBenchmark for (531ds/0Mi)
% 0.19/0.40 % (18390)ott-10_8_av=off:bd=preordered:bs=on:fsd=off:fsr=off:fde=unused:irw=on:lcm=predicate:lma=on:nm=4:nwc=1.7:sp=frequency_522 on theBenchmark for (522ds/0Mi)
% 0.19/0.40 % (18391)ott+1_64_av=off:bd=off:bce=on:fsd=off:fde=unused:gsp=on:irw=on:lcm=predicate:lma=on:nm=2:nwc=1.1:sims=off:urr=on_497 on theBenchmark for (497ds/0Mi)
% 0.19/0.43 % (18388)WARNING: trying to run FMB on interpreted or otherwise provably infinite-domain problem!
% 0.19/0.43 % (18388)Terminated due to inappropriate strategy.
% 0.19/0.43 % (18388)------------------------------
% 0.19/0.43 % (18388)Version: Vampire 4.8 (commit 3a798227e on 2024-05-03 07:42:47 +0200)
% 0.19/0.43 % (18388)Termination reason: Inappropriate
% 0.19/0.43
% 0.19/0.43 % (18388)Memory used [KB]: 2104
% 0.19/0.43 % (18388)Time elapsed: 0.034 s
% 0.19/0.43 % (18388)Instructions burned: 83 (million)
% 0.19/0.43 % (18388)------------------------------
% 0.19/0.43 % (18388)------------------------------
% 0.19/0.44 % (18386)WARNING: trying to run FMB on interpreted or otherwise provably infinite-domain problem!
% 0.19/0.44 % (18386)Terminated due to inappropriate strategy.
% 0.19/0.44 % (18386)------------------------------
% 0.19/0.44 % (18386)Version: Vampire 4.8 (commit 3a798227e on 2024-05-03 07:42:47 +0200)
% 0.19/0.44 % (18386)Termination reason: Inappropriate
% 0.19/0.44
% 0.19/0.44 % (18386)Memory used [KB]: 2124
% 0.19/0.44 % (18386)Time elapsed: 0.040 s
% 0.19/0.44 % (18386)Instructions burned: 99 (million)
% 0.19/0.44 % (18385)WARNING: trying to run FMB on interpreted or otherwise provably infinite-domain problem!
% 0.19/0.44 % (18385)Terminated due to inappropriate strategy.
% 0.19/0.44 % (18385)------------------------------
% 0.19/0.44 % (18385)Version: Vampire 4.8 (commit 3a798227e on 2024-05-03 07:42:47 +0200)
% 0.19/0.44 % (18385)Termination reason: Inappropriate
% 0.19/0.44
% 0.19/0.44 % (18385)Memory used [KB]: 2123
% 0.19/0.44 % (18385)Time elapsed: 0.040 s
% 0.19/0.44 % (18385)Instructions burned: 101 (million)
% 0.19/0.44 % (18386)------------------------------
% 0.19/0.44 % (18386)------------------------------
% 0.19/0.44 % (18385)------------------------------
% 0.19/0.44 % (18385)------------------------------
% 0.19/0.45 % (18392)fmb+10_1_fmbas=expand:fmbsr=1.1:gsp=on:nm=4_411 on theBenchmark for (411ds/0Mi)
% 0.19/0.46 % (18393)ott+1_9_av=off:bd=off:bs=on:gsp=on:lcm=predicate:nm=4:sp=weighted_frequency:urr=on_382 on theBenchmark for (382ds/0Mi)
% 0.19/0.46 % (18394)lrs-11_2:5_fsd=off:fde=none:nm=4:nwc=5.0:sims=off:sp=reverse_weighted_frequency:stl=62_367 on theBenchmark for (367ds/0Mi)
% 0.19/0.48 % (18392)WARNING: trying to run FMB on interpreted or otherwise provably infinite-domain problem!
% 0.19/0.48 % (18392)Terminated due to inappropriate strategy.
% 0.19/0.48 % (18392)------------------------------
% 0.19/0.48 % (18392)Version: Vampire 4.8 (commit 3a798227e on 2024-05-03 07:42:47 +0200)
% 0.19/0.48 % (18392)Termination reason: Inappropriate
% 0.19/0.48
% 0.19/0.48 % (18392)Memory used [KB]: 1982
% 0.19/0.48 % (18392)Time elapsed: 0.029 s
% 0.19/0.48 % (18392)Instructions burned: 71 (million)
% 0.19/0.48 % (18392)------------------------------
% 0.19/0.48 % (18392)------------------------------
% 0.19/0.50 % (18395)ott+4_64_acc=on:anc=none:bs=on:bsr=on:fsd=off:gs=on:gsem=off:irw=on:msp=off:nwc=2.5:nicw=on:sims=off_354 on theBenchmark for (354ds/0Mi)
% 0.19/0.54 % (18394)First to succeed.
% 0.19/0.54 % (18394)Solution written to "/export/starexec/sandbox2/tmp/vampire-proof-18384"
% 0.19/0.54 % (18394)Refutation found. Thanks to Tanya!
% 0.19/0.54 % SZS status Theorem for theBenchmark
% 0.19/0.54 % SZS output start Proof for theBenchmark
% See solution above
% 0.19/0.54 % (18394)------------------------------
% 0.19/0.54 % (18394)Version: Vampire 4.8 (commit 3a798227e on 2024-05-03 07:42:47 +0200)
% 0.19/0.54 % (18394)Termination reason: Refutation
% 0.19/0.54
% 0.19/0.54 % (18394)Memory used [KB]: 2745
% 0.19/0.54 % (18394)Time elapsed: 0.084 s
% 0.19/0.54 % (18394)Instructions burned: 192 (million)
% 0.19/0.54 % (18384)Success in time 0.179 s
%------------------------------------------------------------------------------