Quelle inv.prf
Sprache: Lisp
(inv
(expt_x2_TCC1 0
(expt_x2_TCC1-1 nil 3250067368 ("" (subtype-tcc) nil nil )
((/= const-decl "boolean" notequal nil )) nil ))
(expt_x2 0
(expt_x2-1 nil 3250067368 ("" (grind) nil nil )
((expt def-decl "real" exponentiation nil )
(^ const-decl "real" exponentiation nil ))
nil ))
(expt_times2_TCC1 0
(expt_times2_TCC1-1 nil 3250067368 ("" (subtype-tcc) nil nil ) nil
nil ))
(expt_times2_TCC2 0
(expt_times2_TCC2-1 nil 3250067368 ("" (subtype-tcc) nil nil ) nil
nil ))
(expt_times2 0
(expt_times2-1 nil 3250067368
("" (skosimp*)
(("" (lemma "expt_plus" ("n0x" "nzx!1" "i" "s!1" "j" "s!1" ))
(("" (assert ) nil nil )) nil ))
nil )
((nzreal nonempty-type-eq-decl nil reals nil )
(/= const-decl "boolean" notequal nil )
(nat nonempty-type-eq-decl nil naturalnumbers nil )
(>= const-decl "bool" reals nil )
(bool nonempty-type-eq-decl nil booleans nil )
(int nonempty-type-eq-decl nil integers nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(rational nonempty-type-from-decl nil rationals nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(real nonempty-type-from-decl nil reals nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(boolean nonempty-type-decl nil booleans nil )
(number nonempty-type-decl nil numbers nil )
(expt_plus formula-decl nil exponentiation nil )
(nzreal_exp application-judgement "nzreal" exponentiation nil )
(nnint_plus_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(nzreal_times_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(int_times_int_is_int application-judgement "int" integers nil )
(nnint_times_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(even_times_int_is_even application-judgement "even_int" integers
nil )
(mult_divides1 application-judgement "(divides(n))" divides nil ))
nil ))
(minimum_inv_exists 0
(minimum_inv_exists-1 nil 3250067368
("" (skolem!)
(("" (typepred "nzcx!1" )
(("" (lemma "cauchy_dich5" ("nzcx" "nzcx!1" ))
(("" (split)
(("1" (lemma "cauchy_neg_characteristic" ("ncx" "nzcx!1" ))
(("1" (expand "cauchy_negreal?" )
(("1" (skolem!)
(("1" (typepred "x!1" )
(("1" (expand "cauchy_prop" )
(("1" (lemma "epsilon_log2" ("px" "-x!1" ))
(("1" (skolem!)
(("1" (expand "nonempty?" )
(("1" (expand "empty?" )
(("1" (inst -7 "p!1+4" )
(("1"
(inst -5 "p!1+4" )
(("1"
(expand "member" )
(("1"
(inst -4 "p!1+4" )
(("1"
(rewrite "abs_nonpos" )
(("1"
(lemma
"expt_plus"
("n0x" "2" "i" "4" "j" "p!1" ))
(("1"
(expand "^" -1 2)
(("1"
(expand "expt" )
(("1"
(expand "expt" )
(("1"
(expand "expt" )
(("1"
(expand "expt" )
(("1"
(expand "expt" )
(("1"
(replace -1)
(("1"
(flatten)
(("1"
(lemma
"both_sides_times_pos_lt1"
("x"
"1"
"y"
"-x!1 * 2 ^ p!1"
"pz"
"2^p!1" ))
(("1"
(lemma
"div_mult_pos_lt1"
("z"
"1"
"py"
"2^p!1"
"x"
"-x!1" ))
(("1"
(grind)
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (propax) nil nil ))
nil )
("2" (lemma "cauchy_pos_characteristic" ("pcx" "nzcx!1" ))
(("1" (expand "cauchy_posreal?" )
(("1" (skolem!)
(("1" (typepred "x!1" )
(("1" (expand "cauchy_prop" )
(("1" (lemma "epsilon_log2" ("px" "x!1" ))
(("1" (skolem!)
(("1" (expand "nonempty?" )
(("1" (expand "empty?" )
(("1" (inst - "p!1+4" )
(("1"
(inst - "p!1+4" )
(("1"
(inst - "p!1+4" )
(("1"
(expand "member" )
(("1"
(rewrite "abs_nonneg" )
(("1"
(lemma
"div_mult_pos_lt1"
("z"
"1"
"py"
"2^p!1"
"x"
"x!1" ))
(("1"
(lemma
"both_sides_times_pos_lt1"
("x"
"1"
"y"
"x!1 * 2 ^ p!1"
"pz"
"2^p!1" ))
(("1"
(lemma
"expt_plus"
("n0x"
"2"
"i"
"4"
"j"
"p!1" ))
(("1"
(expand "^" -1 2)
(("1"
(expand "expt" )
(("1"
(expand "expt" )
(("1"
(expand "expt" )
(("1"
(expand "expt" )
(("1"
(expand "expt" )
(("1"
(replace -1)
(("1"
(grind)
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (propax) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((cauchy_nzreal nonempty-type-eq-decl nil cauchy nil )
(cauchy_nzreal? const-decl "bool" cauchy nil )
(nat nonempty-type-eq-decl nil naturalnumbers nil )
(>= const-decl "bool" reals nil )
(int nonempty-type-eq-decl nil integers nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(rational nonempty-type-from-decl nil rationals nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(real nonempty-type-from-decl nil reals nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(number nonempty-type-decl nil numbers nil )
(NOT const-decl "[bool -> bool]" booleans nil )
(bool nonempty-type-eq-decl nil booleans nil )
(boolean nonempty-type-decl nil booleans nil )
(<= const-decl "bool" reals nil )
(nonpos_real nonempty-type-eq-decl nil real_types nil )
(< const-decl "bool" reals nil )
(negreal nonempty-type-eq-decl nil real_types nil )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil )
(epsilon_log2 formula-decl nil appendix nil )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(> const-decl "bool" reals nil )
(posreal nonempty-type-eq-decl nil real_types nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(real_gt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(nonempty? const-decl "bool" sets nil )
(nnint_plus_posint_is_posint application-judgement "posint"
integers nil )
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil )
(member const-decl "bool" sets nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(npreal type-eq-decl nil real_types nil )
(abs_nonpos formula-decl nil prelude_aux nil )
(posint_plus_nnint_is_posint application-judgement "posint"
integers nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(posrat_div_posrat_is_posrat application-judgement "posrat"
rationals nil )
(minus_int_is_int application-judgement "int" integers nil )
(^ const-decl "real" exponentiation nil )
(int_minus_int_is_int application-judgement "int" integers nil )
(nzreal_times_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(both_sides_times_pos_lt1 formula-decl nil real_props nil )
(OR const-decl "[bool, bool -> bool]" booleans nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(int_times_int_is_int application-judgement "int" integers nil )
(posint_times_posint_is_posint application-judgement "posint"
integers nil )
(mult_divides1 application-judgement "(divides(n))" divides nil )
(mult_divides2 application-judgement "(divides(m))" divides nil )
(even_times_int_is_even application-judgement "even_int" integers
nil )
(int_plus_int_is_int application-judgement "int" integers nil )
(div_mult_pos_lt1 formula-decl nil real_props nil )
(expt def-decl "real" exponentiation nil )
(posnat_expt application-judgement "posnat" exponentiation nil )
(nzreal nonempty-type-eq-decl nil reals nil )
(/= const-decl "boolean" notequal nil )
(expt_plus formula-decl nil exponentiation nil )
(empty? const-decl "bool" sets nil )
(cauchy_prop const-decl "bool" cauchy nil )
(posint_exp application-judgement "posint" exponentiation nil )
(cauchy_neg_characteristic formula-decl nil unique nil )
(cauchy_negreal? const-decl "bool" cauchy nil )
(cauchy_negreal nonempty-type-eq-decl nil cauchy nil )
(nnreal type-eq-decl nil real_types nil )
(abs_nonneg formula-decl nil prelude_aux nil )
(posreal_times_posreal_is_posreal application-judgement "posreal"
real_types nil )
(cauchy_pos_characteristic formula-decl nil unique nil )
(cauchy_posreal? const-decl "bool" cauchy nil )
(cauchy_posreal nonempty-type-eq-decl nil cauchy nil )
(cauchy_dich5 formula-decl nil unique nil ))
nil ))
(minimum_inv_TCC1 0
(minimum_inv_TCC1-1 nil 3250067368
("" (lemma "minimum_inv_exists" ) (("" (propax) nil nil )) nil )
((minimum_inv_exists formula-decl nil inv nil )) nil ))
(minimum_inv_prop0 0
(minimum_inv_prop0-1 nil 3250067368
("" (skosimp*)
(("" (expand "minimum_inv" )
(("" (lemma "minimum_inv_exists" ("nzcx" "nzcx!1" ))
((""
(lemma "min_def" ("a" "s!1" "S" "{s | 3 <= abs(nzcx!1(s))}" ))
(("1" (grind) nil nil ) ("2" (propax) nil nil )) nil ))
nil ))
nil ))
nil )
((minimum_inv const-decl "nat" inv nil )
(abs const-decl "{n: nonneg_real | n >= m AND n >= -m}" real_defs
nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(<= const-decl "bool" reals nil )
(nonempty? const-decl "bool" sets nil )
(set type-eq-decl nil sets nil )
(min_def formula-decl nil min_nat nil )
(int_abs_is_nonneg application-judgement "{j: nonneg_int | j >= i}"
real_defs nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(minus_int_is_int application-judgement "int" integers nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(minimum? const-decl "bool" min_nat nil )
(member const-decl "bool" sets nil )
(empty? const-decl "bool" sets nil )
(minimum_inv_exists formula-decl nil inv nil )
(number nonempty-type-decl nil numbers nil )
(boolean nonempty-type-decl nil booleans nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(real nonempty-type-from-decl nil reals nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(rational nonempty-type-from-decl nil rationals nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(int nonempty-type-eq-decl nil integers nil )
(bool nonempty-type-eq-decl nil booleans nil )
(>= const-decl "bool" reals nil )
(nat nonempty-type-eq-decl nil naturalnumbers nil )
(cauchy_nzreal? const-decl "bool" cauchy nil )
(cauchy_nzreal nonempty-type-eq-decl nil cauchy nil ))
nil ))
(minimum_inv_prop1 0
(minimum_inv_prop1-1 nil 3250067368
("" (skosimp*)
(("" (copy -2)
(("" (expand "cauchy_prop" -1)
(("" (inst - "s!1" )
(("" (lemma "minimum_inv_prop0" ("s" "s!1" "nzcx" "nzcx!1" ))
(("" (typepred "nzcx!1" )
(("" (lemma "cauchy_dich5" ("nzcx" "nzcx!1" ))
(("" (split -1)
(("1" (copy -1)
(("1" (expand "cauchy_negreal?" -1)
(("1" (skolem!)
(("1" (typepred "x!2" )
(("1"
(lemma "unique_cauchy"
("x" "x!1" "y" "x!2" "cx" "nzcx!1" ))
(("1" (replace -4 -1)
(("1"
(replace -10 -1)
(("1"
(simplify -1)
(("1"
(replace -1)
(("1"
(rewrite "abs_nonpos" 1)
(("1"
(lemma
"cauchy_neg_characteristic"
("ncx" "nzcx!1" "p" "s!1" ))
(("1"
(rewrite "abs_nonpos" -8)
(("1"
(flatten)
(("1"
(lemma
"both_sides_plus_le1"
("x"
"3"
"y"
"-nzcx!1(s!1)"
"z"
"-1" ))
(("1"
(lemma
"both_sides_times_neg_lt1"
("y"
"x!2 * 2 ^ s!1"
"x"
"1 + nzcx!1(s!1)"
"nz"
"-1" ))
(("1" (grind) nil nil ))
nil ))
nil ))
nil ))
nil )
("2" (propax) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(lemma "cauchy_pos_characteristic"
("pcx" "nzcx!1" "p" "s!1" ))
(("1" (rewrite "abs_nonneg" -4)
(("1" (expand "cauchy_posreal?" )
(("1" (skolem!)
(("1"
(lemma "unique_cauchy"
("x" "x!1" "y" "x!2" "cx" "nzcx!1" ))
(("1" (replace -3 -1)
(("1"
(replace -8 -1)
(("1"
(simplify -1)
(("1"
(replace -1)
(("1"
(typepred "x!2" )
(("1"
(rewrite "abs_nonneg" 1)
(("1" (grind) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (propax) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((number nonempty-type-decl nil numbers nil )
(boolean nonempty-type-decl nil booleans nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(real nonempty-type-from-decl nil reals nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(rational nonempty-type-from-decl nil rationals nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(int nonempty-type-eq-decl nil integers nil )
(bool nonempty-type-eq-decl nil booleans nil )
(>= const-decl "bool" reals nil )
(nat nonempty-type-eq-decl nil naturalnumbers nil )
(NOT const-decl "[bool -> bool]" booleans nil )
(cauchy_negreal? const-decl "bool" cauchy nil )
(<= const-decl "bool" reals nil )
(nonpos_real nonempty-type-eq-decl nil real_types nil )
(< const-decl "bool" reals nil )
(negreal nonempty-type-eq-decl nil real_types nil )
(cauchy_neg_characteristic formula-decl nil unique nil )
(cauchy_negreal nonempty-type-eq-decl nil cauchy nil )
(int_plus_int_is_int application-judgement "int" integers nil )
(nzreal_times_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(both_sides_times_neg_lt1 formula-decl nil real_props nil )
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(OR const-decl "[bool, bool -> bool]" booleans nil )
(/= const-decl "boolean" notequal nil )
(^ const-decl "real" exponentiation nil )
(abs const-decl "{n: nonneg_real | n >= m AND n >= -m}" real_defs
nil )
(minimum_inv const-decl "nat" inv nil )
(int_minus_int_is_int application-judgement "int" integers nil )
(odd_plus_odd_is_even application-judgement "even_int" integers
nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(posrat_div_posrat_is_posrat application-judgement "posrat"
rationals nil )
(posnat_expt application-judgement "posnat" exponentiation nil )
(mult_divides2 application-judgement "(divides(m))" divides nil )
(mult_divides1 application-judgement "(divides(n))" divides nil )
(int_times_int_is_int application-judgement "int" integers nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(both_sides_plus_le1 formula-decl nil real_props nil )
(minus_odd_is_odd application-judgement "odd_int" integers nil )
(minus_int_is_int application-judgement "int" integers nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil )
(nonzero_abs_is_pos application-judgement "{y: posreal | y >= x}"
real_defs nil )
(abs_nonpos formula-decl nil prelude_aux nil )
(npreal type-eq-decl nil real_types nil )
(cauchy_real nonempty-type-eq-decl nil cauchy nil )
(cauchy_real? const-decl "bool" cauchy nil )
(unique_cauchy formula-decl nil unique nil )
(nnreal type-eq-decl nil real_types nil )
(abs_nonneg formula-decl nil prelude_aux nil )
(posreal_times_posreal_is_posreal application-judgement "posreal"
real_types nil )
(real_gt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(posreal nonempty-type-eq-decl nil real_types nil )
(> const-decl "bool" reals nil )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(cauchy_posreal nonempty-type-eq-decl nil cauchy nil )
(cauchy_posreal? const-decl "bool" cauchy nil )
(cauchy_pos_characteristic formula-decl nil unique nil )
(cauchy_dich5 formula-decl nil unique nil )
(minimum_inv_prop0 formula-decl nil inv nil )
(cauchy_nzreal? const-decl "bool" cauchy nil )
(cauchy_nzreal nonempty-type-eq-decl nil cauchy nil )
(cauchy_prop const-decl "bool" cauchy nil )
(posint_exp application-judgement "posint" exponentiation nil ))
nil ))
(minimum_inv_prop2 0
(minimum_inv_prop2-1 nil 3250067368
("" (skosimp*)
(("" (lemma "trich_lt" ("x" "nzx!1" "y" "0" ))
(("" (lemma "expt_ge1" ("b" "2" ))
(("" (lemma "expt_plus" ("n0x" "2" ))
(("" (inst-cp -2 "p!1 + s!1 + 2" )
(("" (inst-cp -1 "p!1 + s!1 + 2" "s!1" )
(("" (replace -2)
((""
(lemma "both_sides_times_pos_le1"
("x" "2" "y" "abs(nzx!1) * 2 ^ s!1" "pz"
"2 ^ (p!1 + s!1 + 2)" ))
(("" (replace -7 -1)
(("" (flatten -1)
(("" (name "AA" "2 ^ (p!1 + s!1 + 2)" )
(("" (replace -1)
(("" (inst -5 "s!1" )
(("" (name "B" "2 ^ s!1" )
((""
(replace -1)
((""
(hide (-1 -2 -4 -5))
((""
(split -4)
(("1"
(rewrite "abs_nonpos" )
(("1"
(lemma
"both_sides_times_neg_le1"
("y"
"2*AA"
"x"
"-nzx!1 * B * AA"
"nz"
"-1" ))
(("1" (grind) nil nil ))
nil ))
nil )
("2" (assert ) nil nil )
("3"
(rewrite "abs_nonneg" )
(("3" (grind) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((nzreal nonempty-type-eq-decl nil reals nil )
(/= const-decl "boolean" notequal nil )
(real nonempty-type-from-decl nil reals nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(boolean nonempty-type-decl nil booleans nil )
(number nonempty-type-decl nil numbers nil )
(trich_lt formula-decl nil real_props nil )
(expt_plus formula-decl nil exponentiation nil )
(posreal_times_posreal_is_posreal application-judgement "posreal"
real_types nil )
(both_sides_times_pos_le1 formula-decl nil real_props nil )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(posreal nonempty-type-eq-decl nil real_types nil )
(OR const-decl "[bool, bool -> bool]" booleans nil )
(^ const-decl "real" exponentiation nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(abs const-decl "{n: nonneg_real | n >= m AND n >= -m}" real_defs
nil )
(int_plus_int_is_int application-judgement "int" integers nil )
(posint_times_posint_is_posint application-judgement "posint"
integers nil )
(nnreal type-eq-decl nil real_types nil )
(abs_nonneg formula-decl nil prelude_aux nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(npreal type-eq-decl nil real_types nil )
(<= const-decl "bool" reals nil )
(abs_nonpos formula-decl nil prelude_aux nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil )
(nzint_times_nzint_is_nzint application-judgement "nzint" integers
nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(int_minus_int_is_int application-judgement "int" integers nil )
(negreal nonempty-type-eq-decl nil real_types nil )
(< const-decl "bool" reals nil )
(nonpos_real nonempty-type-eq-decl nil real_types nil )
(both_sides_times_neg_le1 formula-decl nil real_props nil )
(nzreal_times_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(minus_odd_is_odd application-judgement "odd_int" integers nil )
(posint nonempty-type-eq-decl nil integers nil )
(nonneg_int nonempty-type-eq-decl nil integers nil )
(= const-decl "[T, T -> boolean]" equalities nil )
(even_minus_even_is_even application-judgement "even_int" integers
nil )
(mult_divides2 application-judgement "(divides(m))" divides nil )
(mult_divides1 application-judgement "(divides(n))" divides nil )
(even_times_int_is_even application-judgement "even_int" integers
nil )
(nnint_times_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(int_times_int_is_int application-judgement "int" integers nil )
(posint_plus_nnint_is_posint application-judgement "posint"
integers nil )
(posint_exp application-judgement "posint" exponentiation nil )
(nonzero_abs_is_pos application-judgement "{y: posreal | y >= x}"
real_defs nil )
(posrat_exp application-judgement "posrat" exponentiation nil )
(nnrat_exp application-judgement "nnrat" exponentiation nil )
(nnint_plus_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(>= const-decl "bool" reals nil )
(nat nonempty-type-eq-decl nil naturalnumbers nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil )
(nnint_plus_posint_is_posint application-judgement "posint"
integers nil )
(expt_ge1 formula-decl nil exponentiation nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(rational nonempty-type-from-decl nil rationals nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(int nonempty-type-eq-decl nil integers nil )
(bool nonempty-type-eq-decl nil booleans nil )
(> const-decl "bool" reals nil )
(above nonempty-type-eq-decl nil integers nil ))
nil ))
(minimum_inv_aux_TCC1 0
(minimum_inv_aux_TCC1-1 nil 3392691345
("" (skosimp*) (("" (typepred "s!1" ) (("" (assert ) nil nil )) nil ))
nil )
((minimum_inv const-decl "nat" inv nil )
(cauchy_nzreal nonempty-type-eq-decl nil cauchy nil )
(cauchy_nzreal? const-decl "bool" cauchy nil )
(nat nonempty-type-eq-decl nil naturalnumbers nil )
(>= const-decl "bool" reals nil )
(int nonempty-type-eq-decl nil integers nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(rational nonempty-type-from-decl nil rationals nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(<= const-decl "bool" reals nil )
(real nonempty-type-from-decl nil reals nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(number nonempty-type-decl nil numbers nil )
(NOT const-decl "[bool -> bool]" booleans nil )
(bool nonempty-type-eq-decl nil booleans nil )
(boolean nonempty-type-decl nil booleans nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(int_abs_is_nonneg application-judgement "{j: nonneg_int | j >= i}"
real_defs nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(int_minus_int_is_int application-judgement "int" integers nil ))
nil ))
(minimum_inv_aux_TCC2 0
(minimum_inv_aux_TCC2-1 nil 3392691345
("" (skosimp)
(("" (assert )
(("" (typepred "s!1" )
(("" (expand "minimum_inv" )
(("" (typepred "min_nat.min({s | 3 <= abs(nzcx!1(s))})" )
(("1" (inst - "s!1" ) (("1" (assert ) nil nil )) nil )
("2" (rewrite "minimum_inv_exists" ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((nnint_plus_posint_is_posint application-judgement "posint"
integers nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(int_abs_is_nonneg application-judgement "{j: nonneg_int | j >= i}"
real_defs nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(minimum_inv_exists formula-decl nil inv nil )
(posint_plus_nnint_is_posint application-judgement "posint"
integers nil )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(abs const-decl "{n: nonneg_real | n >= m AND n >= -m}" real_defs
nil )
(set type-eq-decl nil sets nil )
(nonempty? const-decl "bool" sets nil )
(IMPLIES const-decl "[bool, bool -> bool]" booleans nil )
(min const-decl "{a | S(a) AND (FORALL x: S(x) IMPLIES a <= x)}"
min_nat nil )
(boolean nonempty-type-decl nil booleans nil )
(bool nonempty-type-eq-decl nil booleans nil )
(NOT const-decl "[bool -> bool]" booleans nil )
(number nonempty-type-decl nil numbers nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(real nonempty-type-from-decl nil reals nil )
(<= const-decl "bool" reals nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(rational nonempty-type-from-decl nil rationals nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(int nonempty-type-eq-decl nil integers nil )
(>= const-decl "bool" reals nil )
(nat nonempty-type-eq-decl nil naturalnumbers nil )
(cauchy_nzreal? const-decl "bool" cauchy nil )
(cauchy_nzreal nonempty-type-eq-decl nil cauchy nil )
(minimum_inv const-decl "nat" inv nil ))
nil ))
(minimum_inv_aux_TCC3 0
(minimum_inv_aux_TCC3-1 nil 3392691816
("" (skosimp*)
(("" (replace 1)
(("" (lift-if)
(("" (simplify 2)
(("" (prop)
(("" (typepred "nzcx!1" )
(("" (expand "cauchy_nzreal?" )
(("" (skosimp)
(("" (expand "cauchy_prop" )
(("" (inst-cp - "s!1" )
(("" (case "s!1>=minimum_inv(nzcx!1)" )
(("1" (hide 1 -4)
(("1" (expand "minimum_inv" )
(("1"
(typepred
"min_nat.min({s | 3 <= abs(nzcx!1(s))})" )
(("1"
(typepred "s!1" )
(("1"
(expand "minimum_inv" )
(("1"
(name-replace
"MIN"
"min_nat.min({s | 3 <= abs(nzcx!1(s))})" )
(("1" (assert ) nil nil ))
nil ))
nil ))
nil )
("2"
(lemma
"minimum_inv_exists"
("nzcx" "nzcx!1" ))
(("2" (propax) nil nil ))
nil ))
nil ))
nil ))
nil )
("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(int_abs_is_nonneg application-judgement "{j: nonneg_int | j >= i}"
real_defs nil )
(nnint_plus_posint_is_posint application-judgement "posint"
integers nil )
(int_minus_int_is_int application-judgement "int" integers nil )
(cauchy_nzreal nonempty-type-eq-decl nil cauchy nil )
(cauchy_nzreal? const-decl "bool" cauchy nil )
(nat nonempty-type-eq-decl nil naturalnumbers nil )
(>= const-decl "bool" reals nil )
(int nonempty-type-eq-decl nil integers nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(rational nonempty-type-from-decl nil rationals nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(real nonempty-type-from-decl nil reals nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(number nonempty-type-decl nil numbers nil )
(NOT const-decl "[bool -> bool]" booleans nil )
(bool nonempty-type-eq-decl nil booleans nil )
(boolean nonempty-type-decl nil booleans nil )
(minimum_inv const-decl "nat" inv nil )
(<= const-decl "bool" reals nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(posint_plus_nnint_is_posint application-judgement "posint"
integers nil )
(min const-decl "{a | S(a) AND (FORALL x: S(x) IMPLIES a <= x)}"
min_nat nil )
(IMPLIES const-decl "[bool, bool -> bool]" booleans nil )
(nonempty? const-decl "bool" sets nil )
(set type-eq-decl nil sets nil )
(abs const-decl "{n: nonneg_real | n >= m AND n >= -m}" real_defs
nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(= const-decl "[T, T -> boolean]" equalities nil )
(minimum_inv_exists formula-decl nil inv nil )
(cauchy_prop const-decl "bool" cauchy nil )
(posint_exp application-judgement "posint" exponentiation nil ))
nil ))
(minimum_inv_impl_TCC1 0
(minimum_inv_impl_TCC1-1 nil 3392691816
("" (skosimp) (("" (assert ) nil nil )) nil )
((real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil ))
nil ))
(minimum_inv_impl_def 0
(minimum_inv_impl_def-1 nil 3392693652
("" (skosimp)
(("" (expand "minimum_inv_impl" )
((""
(case "forall (s:{n:nat | n <= minimum_inv(nzcx!1)}): minimum_inv_aux(nzcx!1, minimum_inv(nzcx!1)-s) = minimum_inv(nzcx!1)" )
(("1" (inst - "minimum_inv(nzcx!1)" ) (("1" (assert ) nil nil ))
nil )
("2" (hide 2)
(("2"
(case "forall (n:nat): n <= minimum_inv(nzcx!1) => minimum_inv_aux(nzcx!1, minimum_inv(nzcx!1) - n) =
minimum_inv(nzcx!1)")
(("1" (skosimp)
(("1" (inst - "s!1" ) (("1" (assert ) nil nil )) nil )) nil )
("2" (hide 2)
(("2" (induct "n" )
(("1" (flatten)
(("1" (expand "minimum_inv_aux" )
(("1" (expand "minimum_inv" )
(("1"
(typepred
"min_nat.min({s | 3 <= abs(nzcx!1(s))})" )
(("1" (assert ) nil nil )
("2" (rewrite "minimum_inv_exists" ) nil nil ))
nil ))
nil ))
nil ))
nil )
("2" (skosimp*)
(("2" (expand "minimum_inv_aux" 1)
(("2" (expand "<=" -2)
(("2" (split -2)
(("1" (assert )
(("1" (replace -2)
(("1" (lift-if)
(("1"
(prop)
(("1"
(assert )
(("1"
(hide 1)
(("1"
(expand "minimum_inv" )
(("1"
(typepred
"min_nat.min({s | 3 <= abs(nzcx!1(s))})" )
(("1"
(name-replace
"MIN"
"min_nat.min({s | 3 <= abs(nzcx!1(s))})" )
(("1"
(inst - "MIN - 1 - j!1" )
(("1" (assert ) nil nil )
("2" (assert ) nil nil ))
nil ))
nil )
("2"
(rewrite
"minimum_inv_exists" )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (replace -1 * rl)
(("2" (assert )
(("2" (replace -2)
(("2"
(lift-if)
(("2"
(prop)
(("2"
(hide 1 -3)
(("2"
(expand "minimum_inv" )
(("2"
(typepred
"min_nat.min({s | 3 <= abs(nzcx!1(s))})" )
(("1"
(name-replace
"MIN"
"min_nat.min({s | 3 <= abs(nzcx!1(s))})" )
(("1"
(inst - "0" )
(("1" (assert ) nil nil ))
nil ))
nil )
("2"
(rewrite
"minimum_inv_exists" )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("3" (skosimp) (("3" (assert ) nil nil )) nil ))
nil ))
nil )
("3" (hide 2)
(("3" (skosimp) (("3" (assert ) nil nil )) nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((minimum_inv_impl const-decl "nat" inv nil )
(posint_plus_nnint_is_posint application-judgement "posint"
integers nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(minus_odd_is_odd application-judgement "odd_int" integers nil )
(j!1 skolem-const-decl "nat" inv nil )
(MIN skolem-const-decl "{a |
3 <= abs(nzcx!1(a)) AND
(FORALL (x: nat): 3 <= abs(nzcx!1(x)) IMPLIES a <= x)}" inv
nil )
(minimum_inv_exists formula-decl nil inv nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(int_abs_is_nonneg application-judgement "{j: nonneg_int | j >= i}"
real_defs nil )
(min const-decl "{a | S(a) AND (FORALL x: S(x) IMPLIES a <= x)}"
min_nat nil )
(nonempty? const-decl "bool" sets nil )
(set type-eq-decl nil sets nil )
(abs const-decl "{n: nonneg_real | n >= m AND n >= -m}" real_defs
nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(NOT const-decl "[bool -> bool]" booleans nil )
(nat_induction formula-decl nil naturalnumbers nil )
(pred type-eq-decl nil defined_types nil )
(nzcx!1 skolem-const-decl "cauchy_nzreal" inv nil )
(IMPLIES const-decl "[bool, bool -> bool]" booleans nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(int_minus_int_is_int application-judgement "int" integers nil )
(number nonempty-type-decl nil numbers nil )
(boolean nonempty-type-decl nil booleans nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(real nonempty-type-from-decl nil reals nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(rational nonempty-type-from-decl nil rationals nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(int nonempty-type-eq-decl nil integers nil )
(bool nonempty-type-eq-decl nil booleans nil )
(>= const-decl "bool" reals nil )
(nat nonempty-type-eq-decl nil naturalnumbers nil )
(<= const-decl "bool" reals nil )
(cauchy_nzreal? const-decl "bool" cauchy nil )
(cauchy_nzreal nonempty-type-eq-decl nil cauchy nil )
(minimum_inv const-decl "nat" inv nil )
(= const-decl "[T, T -> boolean]" equalities nil )
(minimum_inv_aux def-decl "nat" inv nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(- const-decl "[numfield, numfield -> numfield]" number_fields
nil ))
shostak))
(inv_p0 0
(inv_p0-1 nil 3250067368
("" (skosimp*)
(("" (lemma "expt_plus" ("n0x" "2" "i" "p!1 + s!1" "j" "3" ))
(("" (lemma "expt_ge1" ("b" "2" "n" "p!1 + s!1" ))
(("" (expand "^" -2 3)
(("" (expand "expt" )
(("" (expand "expt" )
(("" (expand "expt" )
(("" (expand "expt" )
(("" (replace -2 -3) (("" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((nzreal nonempty-type-eq-decl nil reals nil )
(/= const-decl "boolean" notequal nil )
(nat nonempty-type-eq-decl nil naturalnumbers nil )
(>= const-decl "bool" reals nil )
(bool nonempty-type-eq-decl nil booleans nil )
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(int nonempty-type-eq-decl nil integers nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(rational nonempty-type-from-decl nil rationals nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(real nonempty-type-from-decl nil reals nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(boolean nonempty-type-decl nil booleans nil )
(number nonempty-type-decl nil numbers nil )
(expt_plus formula-decl nil exponentiation nil )
(nnint_plus_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(^ const-decl "real" exponentiation nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(even_minus_odd_is_odd application-judgement "odd_int" integers
nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(mult_divides2 application-judgement "(divides(m))" divides nil )
(mult_divides1 application-judgement "(divides(n))" divides nil )
(even_times_int_is_even application-judgement "even_int" integers
nil )
(posint_times_posint_is_posint application-judgement "posint"
integers nil )
(int_times_int_is_int application-judgement "int" integers nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(int_minus_int_is_int application-judgement "int" integers nil )
(posint_plus_nnint_is_posint application-judgement "posint"
integers nil )
(expt def-decl "real" exponentiation nil )
(posnat_expt application-judgement "posnat" exponentiation nil )
(posint_exp application-judgement "posint" exponentiation nil )
(above nonempty-type-eq-decl nil integers nil )
(> const-decl "bool" reals nil )
(expt_ge1 formula-decl nil exponentiation nil ))
nil ))
(inv_p1 0
(inv_p1-1 nil 3250067368
("" (skosimp*)
((""
(lemma "both_sides_minus_lt1"
("x" "2 ^ (p!1 + s!1 + 3) - 1" "y" "pn!1" "z" "1" ))
(("" (replace -2 -1)
(("" (rewrite "lt_equiv_le_plus_one" -1)
(("" (lemma "expt_ge1" ("b" "2" "n" "2+p!1+s!1" ))
(("" (expand ">=" )
((""
(lemma "both_sides_minus_le1"
("z" "1" "x" "1" "y" "2 ^ (2+
p!1 + s!1)"))
(("" (replace -2 -1)
((""
(lemma "both_sides_plus_le1"
("x" "0" "y" "2 ^ (2+p!1 + s!1) - 1" "z"
"2 ^ (2+p!1 + s!1)" ))
(("" (replace -2 -1)
(("" (simplify)
((""
(lemma "expt_plus"
("n0x" "2" "i" "1" "j" "2 + p!1 + s!1" ))
(("" (expand "^" -1 2)
(("" (expand "expt" )
((""
(expand "expt" )
((""
(replace -1 -2 rl)
((""
(lemma
"lt_le_transitivity"
("x"
"2 ^ (2 + p!1 + s!1)"
"y"
"2 ^ (3 + p!1 + s!1) - 1"
"z"
"pn!1" ))
((""
(lemma "total_le" )
((""
(expand "total_order?" )
((""
(expand "partial_order?" )
((""
(expand "preorder?" )
((""
(expand "transitive?" )
((""
(flatten)
((""
(inst
-2
"2 ^ (2 + p!1 + s!1)"
"2 ^ (3 + p!1 + s!1) - 1"
"pn!1 - 1" )
((""
(replace -7)
((""
(replace -10)
((""
(replace -11)
((""
(simplify)
((""
(lemma
"both_sides_expt_gt1_lt"
("gt1x"
"2"
"i"
"3 + 2 * p!1 + 2 * s!1"
"j"
"4 + 2 * p!1 + 2 * s!1" ))
((""
(simplify
-1)
((""
(lemma
"lt_times_lt_pos1"
("px"
"2 ^ (2 + p!1 + s!1)"
"y"
"pn!1 - 1"
"nnz"
"2 ^ (2 + p!1 + s!1)"
"w"
"pn!1" ))
((""
(replace
-4)
((""
(replace
-7)
((""
(simplify)
((""
(lemma
"expt_times2"
("nzx"
"2"
"s"
"2 + p!1 + s!1" ))
((""
(replace
-1
-2
rl)
((""
(simplify)
((""
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((posnat nonempty-type-eq-decl nil integers nil )
(> const-decl "bool" reals nil )
(nonneg_int nonempty-type-eq-decl nil integers nil )
(nat nonempty-type-eq-decl nil naturalnumbers nil )
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil )
(^ const-decl "real" exponentiation nil )
(>= const-decl "bool" reals nil )
(/= const-decl "boolean" notequal nil )
(OR const-decl "[bool, bool -> bool]" booleans nil )
(bool nonempty-type-eq-decl nil booleans nil )
(int nonempty-type-eq-decl nil integers nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(rational nonempty-type-from-decl nil rationals nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(- const-decl "[numfield, numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(real nonempty-type-from-decl nil reals nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(boolean nonempty-type-decl nil booleans nil )
(number nonempty-type-decl nil numbers nil )
(both_sides_minus_lt1 formula-decl nil real_props nil )
(int_minus_int_is_int application-judgement "int" integers nil )
(nnint_plus_posint_is_posint application-judgement "posint"
integers nil )
(lt_equiv_le_plus_one formula-decl nil prelude_aux nil )
(odd_plus_odd_is_even application-judgement "even_int" integers
nil )
(int_times_int_is_int application-judgement "int" integers nil )
(nnint_times_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(even_times_int_is_even application-judgement "even_int" integers
nil )
(mult_divides1 application-judgement "(divides(n))" divides nil )
(mult_divides2 application-judgement "(divides(m))" divides nil )
(even_plus_even_is_even application-judgement "even_int" integers
nil )
(posint_plus_nnint_is_posint application-judgement "posint"
integers nil )
(int_plus_int_is_int application-judgement "int" integers nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(expt_plus formula-decl nil exponentiation nil )
(nzreal nonempty-type-eq-decl nil reals nil )
(posnat_expt application-judgement "posnat" exponentiation nil )
(expt def-decl "real" exponentiation nil )
(total_le formula-decl nil real_props nil )
(partial_order? const-decl "bool" orders nil )
(transitive? const-decl "bool" relations nil )
(expt_times2 formula-decl nil inv nil )
(odd_minus_even_is_odd application-judgement "odd_int" integers
nil )
(lt_times_lt_pos1 formula-decl nil real_props nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(posreal nonempty-type-eq-decl nil real_types nil )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(both_sides_expt_gt1_lt formula-decl nil exponentiation nil )
(odd_plus_even_is_odd application-judgement "odd_int" integers nil )
(preorder? const-decl "bool" orders nil )
(total_order? const-decl "bool" orders nil )
(lt_le_transitivity formula-decl nil prelude_aux nil )
(posint_times_posint_is_posint application-judgement "posint"
integers nil )
(even_plus_odd_is_odd application-judgement "odd_int" integers nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(both_sides_plus_le1 formula-decl nil real_props nil )
(both_sides_minus_le1 formula-decl nil real_props nil )
(above nonempty-type-eq-decl nil integers nil )
(expt_ge1 formula-decl nil exponentiation nil )
(odd_minus_odd_is_even application-judgement "even_int" integers
nil )
(posint_exp application-judgement "posint" exponentiation nil )
(nnint_plus_nnint_is_nnint application-judgement "nonneg_int"
integers nil ))
nil ))
(inv_p2 0
(inv_p2-1 nil 3250067368
("" (skosimp*)
(("" (lemma "inv_p1" ("p" "p!1" "s" "s!1" "pn" "pn!1" ))
(("" (name "t!1" "2 ^ (p!1 + s!1 + 3) - 1" )
(("" (replace -1)
(("" (name "t!2" "2 ^ (2 * p!1 + 2 * s!1 + 3)" )
(("" (replace -1)
(("" (hide (-1 -2)) (("" (grind) nil nil )) nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((posnat nonempty-type-eq-decl nil integers nil )
(> const-decl "bool" reals nil )
(nonneg_int nonempty-type-eq-decl nil integers nil )
(nat nonempty-type-eq-decl nil naturalnumbers nil )
(>= const-decl "bool" reals nil )
(bool nonempty-type-eq-decl nil booleans nil )
(int nonempty-type-eq-decl nil integers nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(rational nonempty-type-from-decl nil rationals nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(real nonempty-type-from-decl nil reals nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(boolean nonempty-type-decl nil booleans nil )
(number nonempty-type-decl nil numbers nil )
(inv_p1 formula-decl nil inv nil )
(nnint_plus_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(posint_exp application-judgement "posint" exponentiation nil )
(int_times_int_is_int application-judgement "int" integers nil )
(nnint_times_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(even_times_int_is_even application-judgement "even_int" integers
nil )
(mult_divides1 application-judgement "(divides(n))" divides nil )
(mult_divides2 application-judgement "(divides(m))" divides nil )
(even_plus_even_is_even application-judgement "even_int" integers
nil )
(even_plus_odd_is_odd application-judgement "odd_int" integers nil )
(posint_plus_nnint_is_posint application-judgement "posint"
integers nil )
(posint_times_posint_is_posint application-judgement "posint"
integers nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(posint nonempty-type-eq-decl nil integers nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(nnint_plus_posint_is_posint application-judgement "posint"
integers nil )
(int_minus_int_is_int application-judgement "int" integers nil )
(= const-decl "[T, T -> boolean]" equalities nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(- const-decl "[numfield, numfield -> numfield]" number_fields nil )
(OR const-decl "[bool, bool -> bool]" booleans nil )
(/= const-decl "boolean" notequal nil )
(^ const-decl "real" exponentiation nil )
(+ const-decl "[numfield, numfield -> numfield]" number_fields
nil ))
nil ))
(inv_p3 0
(inv_p3-1 nil 3250067368
("" (skosimp*)
(("" (lemma "inv_p1" ("p" "p!1" "s" "s!1" "pn" "pn!1" ))
((""
(use "both_sides_times_pos_lt2"
("x" "2 ^ (2 * p!1 + 2 * s!1 + 2) / pn!1 - (pn!1 - 1) / 2"
"y" "0" "pz" "2" ))
(("" (replace -1 1 rl)
(("" (simplify 1)
(("" (rewrite "div_cancel1" )
(("" (rewrite "times_div1" )
(("" (hide -1)
((""
(lemma "both_sides_times_pos_lt2"
("x"
"(2 * 2 ^ (2 + 2 * p!1 + 2 * s!1)) / pn!1 - (pn!1 - 1)"
"y" "0" "pz" "pn!1" ))
(("" (replace -1 1 rl)
(("" (hide -1)
(("" (simplify 1)
(("" (rewrite "div_cancel2" )
((""
(lemma "both_sides_plus_lt1"
("x"
"(2 * 2 ^ (2 + 2 * p!1 + 2 * s!1)) - pn!1 * pn!1 + pn!1"
"y"
"0"
"z"
"pn!1 * pn!1 + pn!1" ))
((""
(replace -1 1 rl)
((""
(hide -1)
((""
(simplify 1)
(("" (grind) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((posnat nonempty-type-eq-decl nil integers nil )
(> const-decl "bool" reals nil )
(nonneg_int nonempty-type-eq-decl nil integers nil )
(nat nonempty-type-eq-decl nil naturalnumbers nil )
(>= const-decl "bool" reals nil )
(bool nonempty-type-eq-decl nil booleans nil )
(int nonempty-type-eq-decl nil integers nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(rational nonempty-type-from-decl nil rationals nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(real nonempty-type-from-decl nil reals nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(boolean nonempty-type-decl nil booleans nil )
(number nonempty-type-decl nil numbers nil )
(inv_p1 formula-decl nil inv nil )
(nonzero_real nonempty-type-eq-decl nil reals nil )
(div_cancel1 formula-decl nil real_props nil )
(posrat_times_posrat_is_posrat application-judgement "posrat"
rationals nil )
(int_times_even_is_even application-judgement "even_int" integers
nil )
(int_plus_int_is_int application-judgement "int" integers nil )
(both_sides_plus_lt1 formula-decl nil real_props nil )
(posnat_expt application-judgement "posnat" exponentiation nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(even_plus_odd_is_odd application-judgement "odd_int" integers nil )
(odd_plus_even_is_odd application-judgement "odd_int" integers nil )
(odd_minus_odd_is_even application-judgement "even_int" integers
nil )
(even_minus_odd_is_odd application-judgement "odd_int" integers
nil )
(expt def-decl "real" exponentiation nil )
(div_cancel2 formula-decl nil real_props nil )
(posint_times_posint_is_posint application-judgement "posint"
integers nil )
(minus_odd_is_odd application-judgement "odd_int" integers nil )
(times_div1 formula-decl nil real_props nil )
(mult_divides2 application-judgement "(divides(m))" divides nil )
(posint_plus_nnint_is_posint application-judgement "posint"
integers nil )
(int_minus_int_is_int application-judgement "int" integers nil )
(rat_div_nzrat_is_rat application-judgement "rat" rationals nil )
(mult_divides1 application-judgement "(divides(n))" divides nil )
(even_times_int_is_even application-judgement "even_int" integers
nil )
(nnint_times_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(int_times_int_is_int application-judgement "int" integers nil )
(nnint_plus_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(posint_exp application-judgement "posint" exponentiation nil )
(posrat_div_posrat_is_posrat application-judgement "posrat"
rationals nil )
(rat_times_rat_is_rat application-judgement "rat" rationals nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil )
(^ const-decl "real" exponentiation nil )
(OR const-decl "[bool, bool -> bool]" booleans nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(- const-decl "[numfield, numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(posreal nonempty-type-eq-decl nil real_types nil )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(both_sides_times_pos_lt2 formula-decl nil real_props nil )
(rat_minus_rat_is_rat application-judgement "rat" rationals nil )
(even_plus_even_is_even application-judgement "even_int" integers
nil )
(nnint_plus_posint_is_posint application-judgement "posint"
integers nil ))
nil ))
(inv_p4 0
(inv_p4-1 nil 3250067368
("" (skosimp*)
(("" (lemma "inv_p2" ("p" "p!1" "s" "s!1" "pn" "pn!1" ))
((""
(lemma "both_sides_times_pos_lt2"
("x" "2 ^ (2 * p!1 + 2 * s!1 + 2) / pn!1 - (pn!1 + 1) / 2" "y"
"0" "pz" "2" ))
(("" (replace -1 1 rl)
(("" (simplify 1)
(("" (rewrite "div_cancel1" )
(("" (rewrite "times_div1" )
((""
(lemma "both_sides_times_pos_lt2"
("x"
"(2 * 2 ^ (2 + 2 * p!1 + 2 * s!1)) / pn!1 - (1+pn!1)"
"y" "0" "pz" "pn!1" ))
(("" (replace -1 1 rl)
(("" (simplify 1)
(("" (rewrite "div_cancel2" )
((""
(lemma "both_sides_plus_lt1"
("x"
"(2 * 2 ^ (2 + 2 * p!1 + 2 * s!1)) - pn!1 * pn!1 -
pn!1" " y" " 0" " z" " pn!1 * pn!1 - pn!1"))
(("" (replace -1 1 rl)
(("" (hide (-1 -2 -3))
(("" (grind) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((posnat nonempty-type-eq-decl nil integers nil )
(> const-decl "bool" reals nil )
(nonneg_int nonempty-type-eq-decl nil integers nil )
(nat nonempty-type-eq-decl nil naturalnumbers nil )
(>= const-decl "bool" reals nil )
(bool nonempty-type-eq-decl nil booleans nil )
(int nonempty-type-eq-decl nil integers nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(rational nonempty-type-from-decl nil rationals nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(real nonempty-type-from-decl nil reals nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(boolean nonempty-type-decl nil booleans nil )
(number nonempty-type-decl nil numbers nil )
(inv_p2 formula-decl nil inv nil )
(nonzero_real nonempty-type-eq-decl nil reals nil )
(div_cancel1 formula-decl nil real_props nil )
(posrat_times_posrat_is_posrat application-judgement "posrat"
rationals nil )
(int_minus_int_is_int application-judgement "int" integers nil )
(int_times_even_is_even application-judgement "even_int" integers
nil )
(both_sides_plus_lt1 formula-decl nil real_props nil )
(expt def-decl "real" exponentiation nil )
(int_plus_int_is_int application-judgement "int" integers nil )
(even_minus_odd_is_odd application-judgement "odd_int" integers
nil )
(odd_minus_odd_is_even application-judgement "even_int" integers
nil )
(odd_plus_even_is_odd application-judgement "odd_int" integers nil )
(even_plus_odd_is_odd application-judgement "odd_int" integers nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(posnat_expt application-judgement "posnat" exponentiation nil )
(nzint_times_nzint_is_nzint application-judgement "nzint" integers
nil )
(div_cancel2 formula-decl nil real_props nil )
(posint_times_posint_is_posint application-judgement "posint"
integers nil )
(minus_odd_is_odd application-judgement "odd_int" integers nil )
(times_div1 formula-decl nil real_props nil )
(mult_divides2 application-judgement "(divides(m))" divides nil )
(posint_plus_nnint_is_posint application-judgement "posint"
integers nil )
(mult_divides1 application-judgement "(divides(n))" divides nil )
(even_times_int_is_even application-judgement "even_int" integers
nil )
(nnint_times_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(int_times_int_is_int application-judgement "int" integers nil )
(nnint_plus_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(posint_exp application-judgement "posint" exponentiation nil )
(posrat_div_posrat_is_posrat application-judgement "posrat"
rationals nil )
(rat_times_rat_is_rat application-judgement "rat" rationals nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(nnint_plus_posint_is_posint application-judgement "posint"
integers nil )
(even_plus_even_is_even application-judgement "even_int" integers
nil )
(rat_minus_rat_is_rat application-judgement "rat" rationals nil )
(both_sides_times_pos_lt2 formula-decl nil real_props nil )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(posreal nonempty-type-eq-decl nil real_types nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(- const-decl "[numfield, numfield -> numfield]" number_fields nil )
(/= const-decl "boolean" notequal nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(OR const-decl "[bool, bool -> bool]" booleans nil )
(^ const-decl "real" exponentiation nil )
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields
nil ))
nil ))
(inv_p5 0
(inv_p5-1 nil 3250067368
("" (skosimp*)
((""
(lemma "lemma_A2"
("p" "2 ^ (2 * p!1 + 2 * s!1 + 2)" "r" "r!1" "q" "pn!1" ))
(("" (replace -1)
(("" (flatten)
(("" (hide (-1 -2 -4))
((""
(lemma "div_mult_pos_le2"
("x" "r!1 - 1 / 2" "z" "2 ^ (2 * p!1 + 2 * s!1 + 2)"
"py" "pn!1" ))
(("" (replace -1 -2 rl)
((""
(lemma "both_sides_minus_le1"
("x" "r!1 - 1 / 2" "y"
"2 ^ (2 * p!1 + 2 * s!1 + 2) / pn!1" "z" "1/2" ))
(("" (replace -1 -3 rl)
(("" (simplify -3)
(("" (rewrite "div_cancel1" -3)
(("" (hide (-1 -2))
((""
(lemma "both_sides_times_pos_le1"
("x" "r!1 - 1" "y"
"(2 ^ (2 + 2 * p!1 + 2 * s!1)) / pn!1 - 1 / 2"
"pz" "pn!1+1" ))
(("" (replace -1 -2 rl)
((""
(hide -1)
((""
(simplify)
((""
(lemma
"inv_p4"
("p" "p!1" "s" "s!1" "pn" "pn!1" ))
((""
(replace -3 -1)
((""
(simplify)
((""
(lemma
"both_sides_plus_lt1"
("x"
"(2 ^ (2 + 2 * p!1 + 2 * s!1)) / pn!1 - (1 + pn!1) / 2"
"y"
"0"
"z"
"2 ^ (2 + 2 * p!1 + 2 * s!1)" ))
(("" (grind) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((posnat nonempty-type-eq-decl nil integers nil )
(> const-decl "bool" reals nil )
(nonneg_int nonempty-type-eq-decl nil integers nil )
(nat nonempty-type-eq-decl nil naturalnumbers nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(^ const-decl "real" exponentiation nil )
(>= const-decl "bool" reals nil )
(/= const-decl "boolean" notequal nil )
(OR const-decl "[bool, bool -> bool]" booleans nil )
(bool nonempty-type-eq-decl nil booleans nil )
(int nonempty-type-eq-decl nil integers nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(rational nonempty-type-from-decl nil rationals nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(real nonempty-type-from-decl nil reals nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(boolean nonempty-type-decl nil booleans nil )
(number nonempty-type-decl nil numbers nil )
(lemma_A2 formula-decl nil appendix nil )
(posint_exp application-judgement "posint" exponentiation nil )
(even_plus_even_is_even application-judgement "even_int" integers
nil )
(nnint_plus_posint_is_posint application-judgement "posint"
integers nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(- const-decl "[numfield, numfield -> numfield]" number_fields nil )
(posreal nonempty-type-eq-decl nil real_types nil )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(div_mult_pos_le2 formula-decl nil real_props nil )
(rat_minus_rat_is_rat application-judgement "rat" rationals nil )
(posrat_div_posrat_is_posrat application-judgement "posrat"
rationals nil )
(both_sides_minus_le1 formula-decl nil real_props nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(nnint_plus_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(int_times_int_is_int application-judgement "int" integers nil )
(nnint_times_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(even_times_int_is_even application-judgement "even_int" integers
nil )
(mult_divides1 application-judgement "(divides(n))" divides nil )
(posint_plus_nnint_is_posint application-judgement "posint"
integers nil )
(int_minus_int_is_int application-judgement "int" integers nil )
(both_sides_times_pos_le1 formula-decl nil real_props nil )
(inv_p4 formula-decl nil inv nil )
(int_plus_int_is_int application-judgement "int" integers nil )
(rat_plus_rat_is_rat application-judgement "rat" rationals nil )
(posrat_plus_nnrat_is_posrat application-judgement "posrat"
rationals nil )
(posnat_expt application-judgement "posnat" exponentiation nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(posint_times_posint_is_posint application-judgement "posint"
integers nil )
(even_minus_odd_is_odd application-judgement "odd_int" integers
nil )
(odd_plus_even_is_odd application-judgement "odd_int" integers nil )
(odd_minus_odd_is_even application-judgement "even_int" integers
nil )
(expt def-decl "real" exponentiation nil )
(both_sides_plus_lt1 formula-decl nil real_props nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(posrat_times_posrat_is_posrat application-judgement "posrat"
rationals nil )
(rat_times_rat_is_rat application-judgement "rat" rationals nil )
(mult_divides2 application-judgement "(divides(m))" divides nil ))
nil ))
(inv_p6 0
(inv_p6-1 nil 3250067368
("" (skosimp*)
((""
(lemma "lemma_A2"
("p" "2 ^ (2 * p!1 + 2 * s!1 + 2)" "r" "r!1" "q" "pn!1" ))
(("" (replace -1)
(("" (flatten)
(("" (lemma "inv_p3" ("p" "p!1" "s" "s!1" "pn" "pn!1" ))
(("" (replace -6 -1)
(("" (hide (-2 -3 -4 -6))
(("" (simplify -1)
((""
(lemma "div_mult_pos_lt1"
("z" "2 ^ (2 * p!1 + 2 * s!1 + 2)" "x"
"(r!1 + 1 / 2)" "py" "pn!1" ))
(("" (replace -1 -3 rl)
((""
(lemma "both_sides_plus_lt1"
("x" "2 ^ (2 * p!1 + 2 * s!1 + 2)/pn!1" "y"
"r!1 + 1 / 2" "z" "1/2" ))
(("" (replace -1 -4 rl)
(("" (hide (-1 -2))
(("" (simplify -2)
((""
(rewrite "div_cancel1" -2)
((""
(reveal -6)
((""
(lemma
"expt_plus"
("n0x"
"2"
"i"
"3"
"j"
"p!1 + s!1" ))
((""
(expand "^" -1 2)
((""
(expand "expt" )
((""
(expand "expt" )
((""
(expand "expt" )
((""
(expand "expt" )
((""
(lemma
"expt_ge1"
("b"
"2"
"n"
"p!1 + s!1" ))
((""
(lemma
"both_sides_times_pos_ge1"
("x"
"2 ^ (p!1 + s!1)"
"y"
"1"
"pz"
"8" ))
((""
(replace -1 -2 rl)
((""
(lemma
"both_sides_minus_ge1"
("x"
"2 ^ (p!1 + s!1) * 8"
"y"
"8"
"z"
"1" ))
((""
(expand ">=" )
((""
(replace
-3
-1)
((""
(replace
-4
-1
rl)
((""
(simplify)
((""
(lemma
"lt_le_transitivity"
("x"
"7"
"y"
"2 ^ (3 + p!1 + s!1) - 1"
"z"
"pn!1" ))
((""
(replace
-2
-1)
((""
(replace
-6
-1)
((""
(simplify
-1)
((""
(lemma
"both_sides_minus_lt1"
("x"
"7"
"y"
"pn!1"
"z"
"1" ))
((""
(replace
-1
-2
rl)
((""
(simplify
-2)
((""
(lemma
"both_sides_times_pos_lt1"
("x"
"1 / 2 + (2 ^ (2 + 2 * p!1 + 2 * s!1)) / pn!1"
"y"
"1 + r!1"
"pz"
"pn!1-1" ))
(("1"
(replace
-1
-10
rl)
(("1"
(simplify
-10)
(("1"
(rewrite
"div_cancel2"
-10)
(("1"
(lemma
"both_sides_times_neg_lt1"
("y"
"(2 ^ (2 + 2 * p!1 + 2 * s!1)) / pn!1 - (pn!1 - 1) / 2"
"x"
"0"
"nz"
"-1" ))
(("1"
(replace
-1
-10
rl)
(("1"
(simplify)
(("1"
(lemma
"both_sides_plus_lt1"
("x"
"0"
"y"
"(pn!1 - 1) / 2 - (2 ^ (2 + 2 * p!1 + 2 * s!1)) / pn!1"
"z"
"2 ^ (2 + 2 * p!1 + 2 * s!1)" ))
(("1"
(replace
-1
-11
rl)
(("1"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((posnat nonempty-type-eq-decl nil integers nil )
(> const-decl "bool" reals nil )
(nonneg_int nonempty-type-eq-decl nil integers nil )
(nat nonempty-type-eq-decl nil naturalnumbers nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(^ const-decl "real" exponentiation nil )
(>= const-decl "bool" reals nil )
(/= const-decl "boolean" notequal nil )
(OR const-decl "[bool, bool -> bool]" booleans nil )
(bool nonempty-type-eq-decl nil booleans nil )
(int nonempty-type-eq-decl nil integers nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(rational nonempty-type-from-decl nil rationals nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(real nonempty-type-from-decl nil reals nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(boolean nonempty-type-decl nil booleans nil )
(number nonempty-type-decl nil numbers nil )
(lemma_A2 formula-decl nil appendix nil )
(posint_exp application-judgement "posint" exponentiation nil )
(even_plus_even_is_even application-judgement "even_int" integers
nil )
(nnint_plus_posint_is_posint application-judgement "posint"
integers nil )
(nnint_plus_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(int_times_int_is_int application-judgement "int" integers nil )
(nnint_times_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(even_times_int_is_even application-judgement "even_int" integers
nil )
(mult_divides1 application-judgement "(divides(n))" divides nil )
(int_minus_int_is_int application-judgement "int" integers nil )
(posrat_div_posrat_is_posrat application-judgement "posrat"
rationals nil )
(rat_div_nzrat_is_rat application-judgement "rat" rationals nil )
(rat_minus_rat_is_rat application-judgement "rat" rationals nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(posint_plus_nnint_is_posint application-judgement "posint"
integers nil )
(posrat_plus_nnrat_is_posrat application-judgement "posrat"
rationals nil )
(expt_plus formula-decl nil exponentiation nil )
(nzreal nonempty-type-eq-decl nil reals nil )
(posnat_expt application-judgement "posnat" exponentiation nil )
(expt def-decl "real" exponentiation nil )
(expt_ge1 formula-decl nil exponentiation nil )
(above nonempty-type-eq-decl nil integers nil )
(lt_le_transitivity formula-decl nil prelude_aux nil )
(- const-decl "[numfield, numfield -> numfield]" number_fields nil )
(both_sides_times_pos_lt1 formula-decl nil real_props nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(real_gt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(rat_times_rat_is_rat application-judgement "rat" rationals nil )
(posrat_times_posrat_is_posrat application-judgement "posrat"
rationals nil )
(both_sides_times_neg_lt1 formula-decl nil real_props nil )
(<= const-decl "bool" reals nil )
(nonpos_real nonempty-type-eq-decl nil real_types nil )
(< const-decl "bool" reals nil )
(negreal nonempty-type-eq-decl nil real_types nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(minus_nzrat_is_nzrat application-judgement "nzrat" rationals nil )
(minus_odd_is_odd application-judgement "odd_int" integers nil )
(div_cancel2 formula-decl nil real_props nil )
(nonzero_real nonempty-type-eq-decl nil reals nil )
(odd_minus_odd_is_even application-judgement "even_int" integers
nil )
(both_sides_minus_lt1 formula-decl nil real_props nil )
(int_plus_int_is_int application-judgement "int" integers nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(both_sides_minus_ge1 formula-decl nil real_props nil )
(mult_divides2 application-judgement "(divides(m))" divides nil )
(int_times_even_is_even application-judgement "even_int" integers
nil )
(posint_times_posint_is_posint application-judgement "posint"
integers nil )
(both_sides_times_pos_ge1 formula-decl nil real_props nil )
(both_sides_plus_lt1 formula-decl nil real_props nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(posreal nonempty-type-eq-decl nil real_types nil )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(div_mult_pos_lt1 formula-decl nil real_props nil )
(rat_plus_rat_is_rat application-judgement "rat" rationals nil )
(inv_p3 formula-decl nil inv nil ))
nil ))
(inv_p7_TCC1 0
(inv_p7_TCC1-1 nil 3250067368
("" (skosimp*)
(("" (lemma "expt_plus" ("n0x" "2" "i" "p!1 + s!1" "j" "3" ))
(("" (replace -1 -2)
(("" (hide -1)
(("" (expand "^" -1 2)
(("" (expand "expt" )
(("" (expand "expt" )
(("" (expand "expt" )
(("" (expand "expt" )
(("" (lemma "expt_ge1" ("b" "2" "n" "p!1+s!1" ))
(("" (name "t" "2^(p!1+s!1)" )
(("" (replace -1)
(("" (hide -1) (("" (grind) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((nzreal nonempty-type-eq-decl nil reals nil )
(/= const-decl "boolean" notequal nil )
(nat nonempty-type-eq-decl nil naturalnumbers nil )
(>= const-decl "bool" reals nil )
(bool nonempty-type-eq-decl nil booleans nil )
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(int nonempty-type-eq-decl nil integers nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(rational nonempty-type-from-decl nil rationals nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(real nonempty-type-from-decl nil reals nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(boolean nonempty-type-decl nil booleans nil )
(number nonempty-type-decl nil numbers nil )
(expt_plus formula-decl nil exponentiation nil )
(nnint_plus_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(int_times_int_is_int application-judgement "int" integers nil )
(posint_times_posint_is_posint application-judgement "posint"
integers nil )
(mult_divides1 application-judgement "(divides(n))" divides nil )
(mult_divides2 application-judgement "(divides(m))" divides nil )
(expt def-decl "real" exponentiation nil )
(expt_ge1 formula-decl nil exponentiation nil )
(> const-decl "bool" reals nil )
(above nonempty-type-eq-decl nil integers nil )
(even_times_int_is_even application-judgement "even_int" integers
nil )
(nnint_times_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(even_plus_even_is_even application-judgement "even_int" integers
nil )
(int_minus_int_is_int application-judgement "int" integers nil )
(posint_plus_nnint_is_posint application-judgement "posint"
integers nil )
(round const-decl "int" prelude_aux nil )
(rat_div_nzrat_is_rat application-judgement "rat" rationals nil )
(posrat_plus_nnrat_is_posrat application-judgement "posrat"
rationals nil )
(nonneg_floor_is_nat application-judgement "nat" floor_ceil nil )
(odd_minus_odd_is_even application-judgement "even_int" integers
nil )
(odd_plus_even_is_odd application-judgement "odd_int" integers nil )
(nnint_plus_posint_is_posint application-judgement "posint"
integers nil )
(posrat_div_posrat_is_posrat application-judgement "posrat"
rationals nil )
(even_minus_odd_is_odd application-judgement "odd_int" integers
nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(posint nonempty-type-eq-decl nil integers nil )
(nonneg_int nonempty-type-eq-decl nil integers nil )
(OR const-decl "[bool, bool -> bool]" booleans nil )
(= const-decl "[T, T -> boolean]" equalities nil )
(^ const-decl "real" exponentiation nil )
(posnat_expt application-judgement "posnat" exponentiation nil )
(posint_exp application-judgement "posint" exponentiation nil ))
nil ))
(inv_p7 0
(inv_p7-1 nil 3250067368
("" (skosimp*)
(("" (lemma "inv_p5" ("p" "p!1" "s" "s!1" "pn" "pn!1" "r" "r!1" ))
(("" (lemma "inv_p6" ("p" "p!1" "s" "s!1" "pn" "pn!1" "r" "r!1" ))
(("" (replace -3 -1 rl)
(("" (replace -3 -2 rl)
(("" (replace -4)
(("" (simplify -1)
(("" (simplify -2)
(("" (hide (-3 -4))
((""
(lemma "both_sides_times_pos_lt1"
("x" "(r!1 - 1) / 2 ^ p!1" "y"
"2 ^ (p!1 + 2 * s!1 + 2) / (pn!1 + 1)" "pz"
"2 ^ p!1" ))
(("" (replace -1 1 rl)
((""
(lemma "both_sides_times_pos_lt1"
("y" "(r!1 + 1) / 2 ^ p!1" "x"
"2 ^ (p!1 + 2 * s!1 + 2) / (pn!1 - 1)" "pz"
"2 ^ p!1" ))
(("1" (replace -1 1 rl)
(("1" (hide (-1 -2))
(("1"
(rewrite "div_cancel2" )
(("1"
(rewrite "div_cancel2" )
(("1"
(rewrite "times_div2" )
(("1"
(rewrite "times_div2" )
(("1"
(reveal -4)
(("1"
(lemma
"expt_plus"
("n0x"
"2"
"i"
"p!1+s!1"
"j"
"3" ))
(("1"
(expand "^" -1 3)
(("1"
(expand "expt" )
(("1"
(expand "expt" )
(("1"
(expand "expt" )
(("1"
(expand "expt" )
(("1"
(lemma
"expt_ge1"
("b"
"2"
"n"
"p!1 + s!1" ))
(("1"
(replace -2 -3)
(("1"
(hide -2)
(("1"
(lemma
"both_sides_times_pos_ge1"
("x"
"2 ^ (p!1 + s!1)"
"y"
"1"
"pz"
"8" ))
(("1"
(replace
-1
-2
rl)
(("1"
(hide
-1)
(("1"
(expand
">=" )
(("1"
(lemma
"both_sides_minus_le1"
("x"
"8"
"y"
"8 * 2 ^ (p!1 + s!1)"
"z"
"1" ))
(("1"
(replace
-1
-2
rl)
(("1"
(hide
-1)
(("1"
(lemma
"lt_le_transitivity"
("x"
"7"
"y"
"8 * 2 ^ (p!1 + s!1) - 1"
"z"
"pn!1" ))
(("1"
(simplify
-1)
(("1"
(replace
-2
-1)
(("1"
(replace
-3
-1)
(("1"
(simplify
-1)
(("1"
(hide
(-2
-3))
(("1"
(lemma
"both_sides_times_pos_lt1"
("x"
"r!1 - 1"
"y"
"((2 ^ (2 + p!1 + 2 * s!1)) * 2 ^ p!1) / (1 + pn!1)"
"pz"
"1 + pn!1" ))
(("1"
(replace
-1
1
rl)
(("1"
(lemma
"both_sides_times_pos_lt1"
("y"
"1+r!1"
"x"
"((2 ^ (2 + p!1 + 2 * s!1)) * 2 ^ p!1) / (pn!1-1)"
"pz"
"pn!1-1" ))
(("1"
(replace
-1
1
rl)
(("1"
(hide
(-1
-2))
(("1"
(lemma
"expt_plus"
("n0x"
"2"
"i"
"2 + p!1 + 2 * s!1"
"j"
"p!1" ))
(("1"
(replace
-1
1
rl)
(("1"
(hide
-1)
(("1"
(lemma
"times_div2" )
(("1"
(inst-cp
-
"1+p!1"
"2 ^ (2 + p!1 + 2 * s!1 + p!1)"
"1+p!1" )
(("1"
(rewrite
"div_cancel2" )
(("1"
(rewrite
"div_cancel2" )
(("1"
(rewrite
"div_cancel2" )
(("1"
(hide
(-1
-2))
(("1"
(grind)
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(hide-all-but
(-2
1))
(("2"
(grind)
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (reveal -2)
(("2" (hide-all-but (-1 1))
(("2"
(lemma
"expt_plus"
("i" "p!1 + s!1" "j" "3" ))
(("2"
(inst - "2" )
(("2"
(replace -1)
(("2"
(hide -1)
(("2"
(expand "^" -1 2)
(("2"
(expand "expt" )
(("2"
(expand "expt" )
(("2"
(expand "expt" )
(("2"
(expand "expt" )
(("2"
(lemma
"expt_ge1"
("b"
"2"
"n"
"p!1+s!1" ))
(("2"
(name
"t"
"2 ^ (p!1 + s!1)" )
(("2"
(replace -1)
(("2"
(hide -1)
(("2"
(grind)
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((posnat nonempty-type-eq-decl nil integers nil )
(> const-decl "bool" reals nil )
(nonneg_int nonempty-type-eq-decl nil integers nil )
(nat nonempty-type-eq-decl nil naturalnumbers nil )
(>= const-decl "bool" reals nil )
(bool nonempty-type-eq-decl nil booleans nil )
(int nonempty-type-eq-decl nil integers nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(rational nonempty-type-from-decl nil rationals nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(real nonempty-type-from-decl nil reals nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(boolean nonempty-type-decl nil booleans nil )
(number nonempty-type-decl nil numbers nil )
(inv_p5 formula-decl nil inv nil )
(int_times_int_is_int application-judgement "int" integers nil )
(nnint_times_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(even_times_int_is_even application-judgement "even_int" integers
nil )
(mult_divides1 application-judgement "(divides(n))" divides nil )
(mult_divides2 application-judgement "(divides(m))" divides nil )
(nnint_plus_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(even_plus_even_is_even application-judgement "even_int" integers
nil )
(posint_exp application-judgement "posint" exponentiation nil )
(int_plus_int_is_int application-judgement "int" integers nil )
(int_minus_int_is_int application-judgement "int" integers nil )
(rat_div_nzrat_is_rat application-judgement "rat" rationals nil )
(nzrat_div_nzrat_is_nzrat application-judgement "nzrat" rationals
nil )
(posrat_div_posrat_is_posrat application-judgement "posrat"
rationals nil )
(both_sides_times_pos_lt1 formula-decl nil real_props nil )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(posreal nonempty-type-eq-decl nil real_types nil )
(OR const-decl "[bool, bool -> bool]" booleans nil )
(/= const-decl "boolean" notequal nil )
(^ const-decl "real" exponentiation nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(- const-decl "[numfield, numfield -> numfield]" number_fields nil )
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(expt_plus formula-decl nil exponentiation nil )
(nzreal nonempty-type-eq-decl nil reals nil )
(posnat_expt application-judgement "posnat" exponentiation nil )
(expt def-decl "real" exponentiation nil )
(expt_ge1 formula-decl nil exponentiation nil )
(above nonempty-type-eq-decl nil integers nil )
(even_minus_odd_is_odd application-judgement "odd_int" integers
nil )
(lt_le_transitivity formula-decl nil prelude_aux nil )
(odd_minus_odd_is_even application-judgement "even_int" integers
nil )
(odd_plus_even_is_odd application-judgement "odd_int" integers nil )
(real_times_real_is_real application-judgement "real" reals nil )
(real_div_nzreal_is_real application-judgement "real" reals nil )
(real_gt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(both_sides_minus_le1 formula-decl nil real_props nil )
(both_sides_times_pos_ge1 formula-decl nil real_props nil )
(posint_times_posint_is_posint application-judgement "posint"
integers nil )
(times_div2 formula-decl nil real_props nil )
(div_cancel2 formula-decl nil real_props nil )
(nonzero_real nonempty-type-eq-decl nil reals nil )
(posint nonempty-type-eq-decl nil integers nil )
(= const-decl "[T, T -> boolean]" equalities nil )
(nnint_plus_posint_is_posint application-judgement "posint"
integers nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(posint_plus_nnint_is_posint application-judgement "posint"
integers nil )
(inv_p6 formula-decl nil inv nil ))
nil ))
(inv_p8 0
(inv_p8-1 nil 3250067368
("" (skosimp*)
((""
(lemma "both_sides_times_pos_le1"
("x" "2" "y" "px!1 * 2 ^ s!1" "pz" "2 ^ (p!1 + s!1 + 2)" ))
(("" (replace -1 -2 rl)
((""
(lemma "expt_plus" ("n0x" "2" "i" "1" "j" "p!1 + s!1 + 2" ))
((""
(lemma "expt_plus"
("n0x" "2" "i" "s!1" "j" "p!1 + s!1 + 2" ))
(("" (simplify -1)
(("" (replace -1)
(("" (expand "^" -2 2)
(("" (expand "expt" )
(("" (expand "expt" )
(("" (replace -2 -4 rl)
((""
(lemma "lt_le_transitivity"
("x" "2 ^ (3 + p!1 + s!1)" "y"
"px!1 * 2 ^ s!1 * 2 ^ (p!1 + s!1 + 2)" "z"
"pn!1 + 1" ))
(("" (replace -5 -1)
(("" (replace -7 -1)
((""
(simplify -1)
(("" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(nat nonempty-type-eq-decl nil naturalnumbers nil )
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(^ const-decl "real" exponentiation nil )
(/= const-decl "boolean" notequal nil )
(OR const-decl "[bool, bool -> bool]" booleans nil )
(int nonempty-type-eq-decl nil integers nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(rational nonempty-type-from-decl nil rationals nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(posreal nonempty-type-eq-decl nil real_types nil )
(> const-decl "bool" reals nil )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(>= const-decl "bool" reals nil )
(bool nonempty-type-eq-decl nil booleans nil )
(real nonempty-type-from-decl nil reals nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(boolean nonempty-type-decl nil booleans nil )
(number nonempty-type-decl nil numbers nil )
(both_sides_times_pos_le1 formula-decl nil real_props nil )
(posreal_times_posreal_is_posreal application-judgement "posreal"
real_types nil )
(posint_exp application-judgement "posint" exponentiation nil )
(nnint_plus_posint_is_posint application-judgement "posint"
integers nil )
(expt_plus formula-decl nil exponentiation nil )
(nzreal nonempty-type-eq-decl nil reals nil )
(nnint_plus_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(int_times_int_is_int application-judgement "int" integers nil )
(posint_times_posint_is_posint application-judgement "posint"
integers nil )
(mult_divides1 application-judgement "(divides(n))" divides nil )
(mult_divides2 application-judgement "(divides(m))" divides nil )
(posint_plus_nnint_is_posint application-judgement "posint"
integers nil )
(lt_le_transitivity formula-decl nil prelude_aux nil )
(nonneg_int nonempty-type-eq-decl nil integers nil )
(posnat nonempty-type-eq-decl nil integers nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(expt def-decl "real" exponentiation nil )
(posnat_expt application-judgement "posnat" exponentiation nil )
(int_minus_int_is_int application-judgement "int" integers nil )
(even_times_int_is_even application-judgement "even_int" integers
nil )
(nnint_times_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(odd_minus_even_is_odd application-judgement "odd_int" integers
nil ))
nil ))
(inv_p9 0
(inv_p9-1 nil 3250067368
("" (skosimp*)
(("" (lemma "inv_p8" ("px" "px!1" "s" "s!1" "pn" "pn!1" "p" "p!1" ))
(("" (lemma "inv_p7" ("r" "r!1" "p" "p!1" "s" "s!1" "pn" "pn!1" ))
(("" (replace -4 -1 rl)
(("" (replace -3)
(("" (replace -5)
(("" (replace -6)
(("" (simplify -2)
(("" (replace -2 -1)
(("" (simplify -1)
((""
(lemma "expt_plus"
("n0x" "2" "i" "3" "j" "p!1+s!1" ))
(("" (expand "^" -1 2)
(("" (expand "expt" )
(("" (expand "expt" )
((""
(expand "expt" )
((""
(expand "expt" )
((""
(lemma
"expt_ge1"
("b" "2" "n" "p!1+s!1" ))
((""
(lemma
"both_sides_times_pos_le1"
("x"
"1"
"y"
"2 ^ (p!1 + s!1)"
"pz"
"8" ))
((""
(expand ">=" )
((""
(replace -1 -2 rl)
((""
(replace -3 -2 rl)
((""
(lemma
"both_sides_minus_le1"
("x"
"8"
"y"
"2 ^ (3 + p!1 + s!1)"
"z"
"1" ))
((""
(replace -3 -1)
((""
(simplify -1)
((""
(lemma
"lt_le_transitivity"
("x"
"7"
"y"
"2 ^ (3 + p!1 + s!1) - 1"
"z"
"pn!1" ))
((""
(replace -2 -1)
((""
(replace -7 -1)
((""
(simplify -1)
((""
(hide
(-2
-3
-4
-5
-9))
((""
(flatten)
((""
(split)
(("1"
(case
"1<=r!1" )
(("1"
(lemma
"lt_times_lt_pos1"
("px"
"px!1 * 2 ^ (p!1 + 2 * s!1 + 2)"
"y"
"pn!1 + 1"
"nnz"
"(r!1 - 1) / 2 ^ p!1"
"w"
"(2 ^ (2 + p!1 + 2 * s!1)) / (1 + pn!1)" ))
(("1"
(replace
-4
-1)
(("1"
(expand
"<="
-1)
(("1"
(replace
-9
-1)
(("1"
(lemma
"both_sides_times_pos_lt1"
("x"
"((r!1 - 1) / 2 ^ p!1) * px!1"
"y"
"(1+pn!1)/(1+pn!1)"
"pz"
"2 ^ (2 + p!1 + 2 * s!1)" ))
(("1"
(simplify
-1)
(("1"
(simplify
-2)
(("1"
(lemma
"both_sides_times_pos_lt1"
("x"
"((r!1 - 1) / 2 ^ p!1) * px!1"
"y"
"1"
"pz"
"2 ^ (2 + p!1 + 2 * s!1)" ))
(("1"
(hide
(-2))
(("1"
(lemma
"div_cancel1"
("x"
"2 ^ (2 + p!1 + 2 * s!1)"
"n0z"
"1+pn!1" ))
(("1"
(simplify
-1)
(("1"
(replace
-1
-3)
(("1"
(replace
-3
-2)
(("1"
(simplify
-2)
(("1"
(lemma
"div_mult_pos_lt1"
("x"
"1"
"py"
"2^p!1"
"z"
"(r!1 - 1) * px!1" ))
(("1"
(replace
-1
1
rl)
(("1"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(lemma
"expt_ge1"
("b"
"2"
"n"
"p!1" ))
(("2"
(name
"a!1"
"2 ^ p!1" )
(("2"
(replace
-1)
(("2"
(hide-all-but
(-2
-3
1))
(("2"
(grind)
(("2"
(expand
">=" )
(("2"
(lemma
"both_sides_minus_le1"
("x"
"1"
"y"
"r!1"
"z"
"1" ))
(("2"
(replace
-1
-3
rl)
(("2"
(assert )
(("2"
(lemma
"div_mult_pos_le2"
("x"
"0"
"z"
"r!1 - 1"
"py"
"a!1" ))
(("2"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(typepred
"px!1" )
(("2"
(rewrite
"le_equiv_not_lt"
1)
(("2"
(lemma
"expt_ge1"
("b"
"2"
"n"
"p!1" ))
(("2"
(lemma
"both_sides_minus_lt1"
("x"
"r!1"
"y"
"1"
"z"
"1" ))
(("2"
(replace
-5
-1)
(("2"
(simplify
-1)
(("2"
(lemma
"both_sides_times_pos_lt1"
("x"
"r!1 - 1"
"y"
"0"
"pz"
"px!1" ))
(("2"
(replace
-2
-1)
(("2"
(simplify
-1)
(("2"
(simplify
1)
(("2"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(hide
(-2
-4
-5
-7))
(("2"
(lemma
"both_sides_minus_lt1"
("x"
"7"
"y"
"pn!1"
"z"
"1" ))
(("2"
(replace
-1
-2
rl)
(("2"
(simplify
-2)
(("2"
(lemma
"expt_ge1"
("b"
"2"
"n"
"p!1" ))
(("2"
(lemma
"expt_ge1"
("b"
"2"
"n"
"p!1 + 2 * s!1 + 2" ))
(("2"
(lemma
"div_mult_pos_lt1"
("z"
"2 ^ (2 + p!1 + 2 * s!1)"
"py"
"pn!1 - 1"
"x"
"(1 + r!1) / 2 ^ p!1" ))
(("1"
(replace
-1
-6)
(("1"
(lemma
"lt_times_lt_pos1"
("px"
"2 ^ (2 + p!1 + 2 * s!1)"
"y"
"(1 + r!1) / 2 ^ p!1 * (pn!1 - 1)"
"nnz"
"pn!1 - 1"
"w"
"px!1 * 2 ^ (p!1 + 2 * s!1 + 2)" ))
(("1"
(expand
"<="
-1)
(("1"
(replace
-8
-1)
(("1"
(replace
-7
-1)
(("1"
(simplify
-1)
(("1"
(lemma
"div_mult_pos_lt2"
("z"
"(r!1 + 1) * px!1"
"x"
"1"
"py"
"2 ^ p!1" ))
(("1"
(replace
-1
1
rl)
(("1"
(lemma
"both_sides_times_pos_lt1"
("x"
"1"
"y"
"(r!1 + 1) * px!1 / 2 ^ p!1"
"pz"
"2 ^ (2 + p!1 + 2 * s!1) * (pn!1-1)" ))
(("1"
(replace
-1
1
rl)
(("1"
(assert )
nil
nil ))
nil )
("2"
(lemma
"lt_times_lt_pos1"
("nnz"
"6"
"w"
"pn!1 - 1"
"px"
"1"
"y"
"2 ^ (2 + p!1 + 2 * s!1)" ))
(("2"
(replace
-8
-1)
(("2"
(lemma
"expt_ge1"
("b"
"2"
"n"
"2 + p!1 + 2 * s!1" ))
(("2"
(expand
">=" )
(("2"
(replace
-1
-2)
(("2"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((posreal nonempty-type-eq-decl nil real_types nil )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(posnat nonempty-type-eq-decl nil integers nil )
(> const-decl "bool" reals nil )
(nonneg_int nonempty-type-eq-decl nil integers nil )
(nat nonempty-type-eq-decl nil naturalnumbers nil )
(>= const-decl "bool" reals nil )
(bool nonempty-type-eq-decl nil booleans nil )
(int nonempty-type-eq-decl nil integers nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(rational nonempty-type-from-decl nil rationals nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(real nonempty-type-from-decl nil reals nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(boolean nonempty-type-decl nil booleans nil )
(number nonempty-type-decl nil numbers nil )
(inv_p8 formula-decl nil inv nil )
(int_times_int_is_int application-judgement "int" integers nil )
(nnint_times_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(even_times_int_is_even application-judgement "even_int" integers
nil )
(mult_divides1 application-judgement "(divides(n))" divides nil )
(mult_divides2 application-judgement "(divides(m))" divides nil )
(nnint_plus_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(even_plus_even_is_even application-judgement "even_int" integers
nil )
(posint_exp application-judgement "posint" exponentiation nil )
(int_minus_int_is_int application-judgement "int" integers nil )
(posint_plus_nnint_is_posint application-judgement "posint"
integers nil )
(int_plus_int_is_int application-judgement "int" integers nil )
(rat_div_nzrat_is_rat application-judgement "rat" rationals nil )
(nzrat_div_nzrat_is_nzrat application-judgement "nzrat" rationals
nil )
(posreal_times_posreal_is_posreal application-judgement "posreal"
real_types nil )
(real_times_real_is_real application-judgement "real" reals nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(nnint_plus_posint_is_posint application-judgement "posint"
integers nil )
(posrat_div_posrat_is_posrat application-judgement "posrat"
rationals nil )
(^ const-decl "real" exponentiation nil )
(both_sides_times_pos_le1 formula-decl nil real_props nil )
(OR const-decl "[bool, bool -> bool]" booleans nil )
(both_sides_minus_le1 formula-decl nil real_props nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(even_minus_odd_is_odd application-judgement "odd_int" integers
nil )
(int_times_even_is_even application-judgement "even_int" integers
nil )
(real_plus_real_is_real application-judgement "real" reals nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(div_mult_pos_lt2 formula-decl nil real_props nil )
(posint_times_posint_is_posint application-judgement "posint"
integers nil )
(<= const-decl "bool" reals nil )
(odd_minus_odd_is_even application-judgement "even_int" integers
nil )
(div_mult_pos_le2 formula-decl nil real_props nil )
(posint nonempty-type-eq-decl nil integers nil )
(= const-decl "[T, T -> boolean]" equalities nil )
(div_cancel1 formula-decl nil real_props nil )
(nonzero_real nonempty-type-eq-decl nil reals nil )
(real_div_nzreal_is_real application-judgement "real" reals nil )
(real_minus_real_is_real application-judgement "real" reals nil )
(div_mult_pos_lt1 formula-decl nil real_props nil )
(posrat_plus_nnrat_is_posrat application-judgement "posrat"
rationals nil )
(both_sides_times_pos_lt1 formula-decl nil real_props nil )
(posrat_times_posrat_is_posrat application-judgement "posrat"
rationals nil )
(rat_times_rat_is_rat application-judgement "rat" rationals nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(lt_times_lt_pos1 formula-decl nil real_props nil )
(le_equiv_not_lt formula-decl nil prelude_aux nil )
(both_sides_minus_lt1 formula-decl nil real_props nil )
(real_gt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(nnreal_times_nnreal_is_nnreal application-judgement "nnreal"
real_types nil )
(NOT const-decl "[bool -> bool]" booleans nil )
(- const-decl "[numfield, numfield -> numfield]" number_fields nil )
(lt_le_transitivity formula-decl nil prelude_aux nil )
(above nonempty-type-eq-decl nil integers nil )
(expt_ge1 formula-decl nil exponentiation nil )
(expt def-decl "real" exponentiation nil )
(posnat_expt application-judgement "posnat" exponentiation nil )
(nzreal nonempty-type-eq-decl nil reals nil )
(/= const-decl "boolean" notequal nil )
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(expt_plus formula-decl nil exponentiation nil )
(inv_p7 formula-decl nil inv nil ))
nil ))
(inv_n5_TCC1 0
(inv_n5_TCC1-1 nil 3250067368
("" (skosimp*)
(("" (lemma "inv_p0" ("p" "p!1" "s" "s!1" "pn" "-1*nn!1" ))
(("" (assert ) nil nil )) nil ))
nil )
((negint nonempty-type-eq-decl nil integers nil )
(< const-decl "bool" reals nil )
(nonpos_int nonempty-type-eq-decl nil integers nil )
(<= const-decl "bool" reals nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(posnat nonempty-type-eq-decl nil integers nil )
(> const-decl "bool" reals nil )
(nonneg_int nonempty-type-eq-decl nil integers nil )
(nat nonempty-type-eq-decl nil naturalnumbers nil )
(>= const-decl "bool" reals nil )
(bool nonempty-type-eq-decl nil booleans nil )
(int nonempty-type-eq-decl nil integers nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(rational nonempty-type-from-decl nil rationals nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(real nonempty-type-from-decl nil reals nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(boolean nonempty-type-decl nil booleans nil )
(number nonempty-type-decl nil numbers nil )
(inv_p0 formula-decl nil inv nil )
(mult_divides2 application-judgement "(divides(m))" divides nil )
(mult_divides1 application-judgement "(divides(n))" divides nil )
(nzint_times_nzint_is_nzint application-judgement "nzint" integers
nil )
(int_times_int_is_int application-judgement "int" integers nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(negint_times_negint_is_posint application-judgement "posint"
integers nil )
(real_gt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(int_minus_int_is_int application-judgement "int" integers nil )
(posint_exp application-judgement "posint" exponentiation nil )
(nnint_plus_posint_is_posint application-judgement "posint"
integers nil )
(nnint_plus_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(posint_plus_nnint_is_posint application-judgement "posint"
integers nil )
(minus_odd_is_odd application-judgement "odd_int" integers nil )
(nzrat_div_nzrat_is_nzrat application-judgement "nzrat" rationals
nil )
(nnrrat_div_negrat_is_nprat application-judgement "nprat" rationals
nil )
(even_plus_even_is_even application-judgement "even_int" integers
nil )
(nnint_times_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(even_times_int_is_even application-judgement "even_int" integers
nil )
(int_plus_int_is_int application-judgement "int" integers nil ))
nil ))
(inv_n5 0
(inv_n5-1 nil 3250067368
("" (skosimp*)
(("" (lemma "inv_p0" ("p" "p!1" "s" "s!1" "pn" "-1 * nn!1" ))
(("" (replace -3 -1)
(("" (lemma "inv_p3" ("p" "p!1" "s" "s!1" "pn" "-1 * nn!1" ))
(("" (replace -4 -1)
((""
(lemma "lemma_A2"
("r" "r!1" "p" "-1*2 ^ (2 * p!1 + 2 * s!1 + 2)" "q"
"-1*nn!1" ))
(("" (replace -4 -1 rl)
(("" (simplify)
(("" (flatten)
(("" (hide (-2 -5 -6))
((""
(lemma "div_mult_neg_lt2"
("x" "r!1 - 1" "ny" "1 + nn!1" "z"
"2 ^ (2 + 2 * p!1 + 2 * s!1)" ))
(("1" (replace -1 1)
(("1" (hide -1)
(("1"
(name "AA" "2 ^ (2 + 2 * p!1 + 2 * s!1)" )
(("1"
(replace -1)
(("1"
(hide -1)
(("1"
(lemma
"both_sides_times_neg_lt1"
("y"
"AA / (-1 * nn!1) - (-1 - nn!1) / 2"
"x"
"0"
"nz"
"-1" ))
(("1"
(lemma
"both_sides_times_neg_le1"
("y"
"1 / 2 * nn!1 - nn!1 * r!1"
"x"
"-1 * AA"
"nz"
"-1" ))
(("1"
(replace -1 -3 rl)
(("1"
(replace -2 -4 rl)
(("1"
(hide (-1 -2))
(("1"
(simplify)
(("1"
(reveal -3)
(("1"
(lemma
"expt_ge1"
("b"
"2"
"n"
"2 + 2 * p!1 + 2 * s!1" ))
(("1"
(replace -2)
(("1"
(hide -2)
(("1"
(lemma
"div_mult_neg_le2"
("z"
"AA"
"x"
"r!1-1/2"
"ny"
"nn!1" ))
(("1"
(lemma
"both_sides_minus_le1"
("x"
"r!1 - 1 / 2"
"y"
"AA / nn!1"
"z"
"1/2" ))
(("1"
(simplify
-1)
(("1"
(rewrite
"div_cancel1"
-1)
(("1"
(lemma
"both_sides_times_neg_le1"
("y"
"r!1 - 1"
"x"
"AA / nn!1 - 1 / 2"
"nz"
"nn!1+1" ))
(("1"
(replace
-5
-3)
(("1"
(replace
-3
-2)
(("1"
(replace
-2)
(("1"
(flatten)
(("1"
(simplify
-1)
(("1"
(lemma
"lt_minus_lt1"
("x"
"-1 * (1 / 2) - 1 / 2 * nn!1 + AA / nn!1 +AA"
"y"
"-1 - nn!1 + (nn!1 * r!1 + r!1)"
"w"
"0"
"z"
"(-1 - nn!1) / 2 - AA / (-1 * nn!1)" ))
(("1"
(replace
-2
-1)
(("1"
(replace
-7
-1)
(("1"
(simplify
-1)
(("1"
(hide-all-but
(-1
1))
(("1"
(grind)
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(grind)
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide (-1 -2 2)) (("2" (grind) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((negint nonempty-type-eq-decl nil integers nil )
(< const-decl "bool" reals nil )
(nonpos_int nonempty-type-eq-decl nil integers nil )
(<= const-decl "bool" reals nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(posnat nonempty-type-eq-decl nil integers nil )
(> const-decl "bool" reals nil )
(nonneg_int nonempty-type-eq-decl nil integers nil )
(nat nonempty-type-eq-decl nil naturalnumbers nil )
(>= const-decl "bool" reals nil )
(bool nonempty-type-eq-decl nil booleans nil )
(int nonempty-type-eq-decl nil integers nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(rational nonempty-type-from-decl nil rationals nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(real nonempty-type-from-decl nil reals nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(boolean nonempty-type-decl nil booleans nil )
(number nonempty-type-decl nil numbers nil )
(inv_p0 formula-decl nil inv nil )
(mult_divides2 application-judgement "(divides(m))" divides nil )
(mult_divides1 application-judgement "(divides(n))" divides nil )
(nzint_times_nzint_is_nzint application-judgement "nzint" integers
nil )
(int_times_int_is_int application-judgement "int" integers nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(negint_times_negint_is_posint application-judgement "posint"
integers nil )
(real_gt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(inv_p3 formula-decl nil inv nil )
(nnint_plus_posint_is_posint application-judgement "posint"
integers nil )
(lemma_A2 formula-decl nil appendix nil )
(OR const-decl "[bool, bool -> bool]" booleans nil )
(/= const-decl "boolean" notequal nil )
(^ const-decl "real" exponentiation nil )
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(posint_plus_nnint_is_posint application-judgement "posint"
integers nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(nnrrat_div_negrat_is_nprat application-judgement "nprat" rationals
nil )
(int_plus_int_is_int application-judgement "int" integers nil )
(rat_times_rat_is_rat application-judgement "rat" rationals nil )
(nzrat_times_nzrat_is_nzrat application-judgement "nzrat" rationals
nil )
(= const-decl "[T, T -> boolean]" equalities nil )
(posint nonempty-type-eq-decl nil integers nil )
(both_sides_times_neg_le1 formula-decl nil real_props nil )
(expt_ge1 formula-decl nil exponentiation nil )
(above nonempty-type-eq-decl nil integers nil )
(both_sides_minus_le1 formula-decl nil real_props nil )
(lt_minus_lt1 formula-decl nil real_props nil )
(nprat_times_nprat_is_nnrat application-judgement "nnrat" rationals
nil )
(div_mult_neg_le2 formula-decl nil real_props nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(both_sides_times_neg_lt1 formula-decl nil real_props nil )
(- const-decl "[numfield, numfield -> numfield]" number_fields nil )
(negreal nonempty-type-eq-decl nil real_types nil )
(nonpos_real nonempty-type-eq-decl nil real_types nil )
(div_mult_neg_lt2 formula-decl nil real_props nil )
(rat_plus_rat_is_rat application-judgement "rat" rationals nil )
(posrat_div_posrat_is_posrat application-judgement "posrat"
rationals nil )
(rat_minus_rat_is_rat application-judgement "rat" rationals nil )
(rat_div_nzrat_is_rat application-judgement "rat" rationals nil )
(nzrat_div_nzrat_is_nzrat application-judgement "nzrat" rationals
nil )
(int_minus_int_is_int application-judgement "int" integers nil )
(posint_exp application-judgement "posint" exponentiation nil )
(minus_odd_is_odd application-judgement "odd_int" integers nil )
(even_plus_even_is_even application-judgement "even_int" integers
nil )
(even_times_int_is_even application-judgement "even_int" integers
nil )
(nnint_times_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(nnint_plus_nnint_is_nnint application-judgement "nonneg_int"
integers nil ))
nil ))
(inv_n6_TCC1 0
(inv_n6_TCC1-1 nil 3250067368 ("" (subtype-tcc) nil nil )
((posint_plus_nnint_is_posint application-judgement "posint"
integers nil )
(posnat_expt application-judgement "posnat" exponentiation nil )
(minus_odd_is_odd application-judgement "odd_int" integers nil )
(int_times_int_is_int application-judgement "int" integers nil )
(nnint_times_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(even_times_int_is_even application-judgement "even_int" integers
nil )
(mult_divides1 application-judgement "(divides(n))" divides nil )
(mult_divides2 application-judgement "(divides(m))" divides nil )
(even_plus_even_is_even application-judgement "even_int" integers
nil )
(nzrat_div_nzrat_is_nzrat application-judgement "nzrat" rationals
nil )
(nnrrat_div_negrat_is_nprat application-judgement "nprat" rationals
nil )
(round const-decl "int" prelude_aux nil )
(^ const-decl "real" exponentiation nil ))
nil ))
(inv_n6 0
(inv_n6-1 nil 3250067368
("" (skosimp*)
(("" (lemma "inv_p0" ("p" "p!1" "s" "s!1" "pn" "-1*nn!1" ))
(("" (lemma "inv_p4" ("p" "p!1" "s" "s!1" "pn" "-1*nn!1" ))
(("" (replace -4)
(("" (simplify (-1 -2))
((""
(lemma "lemma_A2"
("r" "r!1" "p" "-1*2 ^ (2 * p!1 + 2 * s!1 + 2)" "q"
"-1*nn!1" ))
(("" (replace -4 -1 rl)
(("" (simplify -1)
(("" (flatten)
(("" (hide (-1 -5 -6))
(("" (lemma "expt_ge1" ("b" "2" ))
(("" (inst - "2 * p!1 + 2 * s!1 + 2" )
((""
(name "AA" "2 ^ (2 * p!1 + 2 * s!1 + 2)" )
(("" (replace -1)
((""
(hide -1)
((""
(lemma
"div_mult_neg_lt1"
("z"
"AA"
"ny"
"nn!1 - 1"
"x"
"r!1 + 1" ))
((""
(replace -1)
((""
(hide -1)
((""
(lemma
"div_mult_neg_lt2"
("z"
"-1*AA"
"ny"
"nn!1"
"x"
"-1*r!1 - 1/2" ))
((""
(replace -1 -3 rl)
((""
(lemma
"both_sides_times_neg_lt1"
("x"
"r!1 + 1 / 2"
"y"
"AA / nn!1"
"nz"
"-1" ))
((""
(replace -1)
((""
(hide (-1 -2))
((""
(lemma
"both_sides_plus_lt1"
("x"
"AA / nn!1"
"y"
"r!1 + 1 / 2"
"z"
"1 / 2" ))
((""
(replace -3 -1)
((""
(simplify -1)
((""
(rewrite
"div_cancel1"
-1)
((""
(lemma
"both_sides_times_neg_lt1"
("y"
"1 / 2 + AA / nn!1"
"x"
"1 + r!1"
"nz"
"nn!1 - 1" ))
((""
(replace
-2
-1)
((""
(simplify
-1)
((""
(lemma
"both_sides_times_neg_lt1"
("y"
"AA / (-1 * nn!1) - (1 - nn!1) / 2"
"x"
"0"
"nz"
"-1" ))
((""
(replace
-6
-1)
((""
(simplify
-1)
((""
(lemma
"lt_minus_lt1"
("x"
"nn!1 * r!1 - r!1 + (nn!1 - 1)"
"y"
"1 / 2 * nn!1 - 1 / 2 + (AA / nn!1 * nn!1 - AA / nn!1)"
"w"
"AA / (-1 * nn!1) - (1 - nn!1) / 2"
"z"
"0" ))
((""
(replace
-7
-1)
((""
(simplify
-1)
((""
(grind)
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((negint nonempty-type-eq-decl nil integers nil )
(< const-decl "bool" reals nil )
(nonpos_int nonempty-type-eq-decl nil integers nil )
(<= const-decl "bool" reals nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(posnat nonempty-type-eq-decl nil integers nil )
(> const-decl "bool" reals nil )
(nonneg_int nonempty-type-eq-decl nil integers nil )
(nat nonempty-type-eq-decl nil naturalnumbers nil )
(>= const-decl "bool" reals nil )
(bool nonempty-type-eq-decl nil booleans nil )
(int nonempty-type-eq-decl nil integers nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(rational nonempty-type-from-decl nil rationals nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(real nonempty-type-from-decl nil reals nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(boolean nonempty-type-decl nil booleans nil )
(number nonempty-type-decl nil numbers nil )
(inv_p0 formula-decl nil inv nil )
(mult_divides2 application-judgement "(divides(m))" divides nil )
(mult_divides1 application-judgement "(divides(n))" divides nil )
(nzint_times_nzint_is_nzint application-judgement "nzint" integers
nil )
(int_times_int_is_int application-judgement "int" integers nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(negint_times_negint_is_posint application-judgement "posint"
integers nil )
(real_gt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(nnint_plus_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(nnint_times_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(even_times_int_is_even application-judgement "even_int" integers
nil )
(even_plus_even_is_even application-judgement "even_int" integers
nil )
(minus_odd_is_odd application-judgement "odd_int" integers nil )
(posint_exp application-judgement "posint" exponentiation nil )
(int_plus_int_is_int application-judgement "int" integers nil )
(nzrat_div_nzrat_is_nzrat application-judgement "nzrat" rationals
nil )
(rat_div_nzrat_is_rat application-judgement "rat" rationals nil )
(rat_minus_rat_is_rat application-judgement "rat" rationals nil )
(int_minus_int_is_int application-judgement "int" integers nil )
(lemma_A2 formula-decl nil appendix nil )
(OR const-decl "[bool, bool -> bool]" booleans nil )
(/= const-decl "boolean" notequal nil )
(^ const-decl "real" exponentiation nil )
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil )
(rat_times_rat_is_rat application-judgement "rat" rationals nil )
(nzrat_times_nzrat_is_nzrat application-judgement "nzrat" rationals
nil )
(div_mult_neg_lt1 formula-decl nil real_props nil )
(nonpos_real nonempty-type-eq-decl nil real_types nil )
(negreal nonempty-type-eq-decl nil real_types nil )
(- const-decl "[numfield, numfield -> numfield]" number_fields nil )
(both_sides_plus_lt1 formula-decl nil real_props nil )
(lt_minus_lt1 formula-decl nil real_props nil )
(nprat_times_nprat_is_nnrat application-judgement "nnrat" rationals
nil )
(both_sides_times_neg_lt1 formula-decl nil real_props nil )
(nnrrat_div_negrat_is_nprat application-judgement "nprat" rationals
nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(div_mult_neg_lt2 formula-decl nil real_props nil )
(posint nonempty-type-eq-decl nil integers nil )
(= const-decl "[T, T -> boolean]" equalities nil )
(above nonempty-type-eq-decl nil integers nil )
(expt_ge1 formula-decl nil exponentiation nil )
(rat_plus_rat_is_rat application-judgement "rat" rationals nil )
(posrat_div_posrat_is_posrat application-judgement "posrat"
rationals nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(posint_plus_nnint_is_posint application-judgement "posint"
integers nil )
(nnint_plus_posint_is_posint application-judgement "posint"
integers nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(inv_p4 formula-decl nil inv nil ))
nil ))
(inv_n7_TCC1 0
(inv_n7_TCC1-1 nil 3250067368
("" (skosimp*)
(("" (lemma "inv_p0" ("p" "p!1" "s" "s!1" "pn" "-1*nn!1" ))
(("" (assert ) nil nil )) nil ))
nil )
((negint nonempty-type-eq-decl nil integers nil )
(< const-decl "bool" reals nil )
(nonpos_int nonempty-type-eq-decl nil integers nil )
(<= const-decl "bool" reals nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(posnat nonempty-type-eq-decl nil integers nil )
(> const-decl "bool" reals nil )
(nonneg_int nonempty-type-eq-decl nil integers nil )
(nat nonempty-type-eq-decl nil naturalnumbers nil )
(>= const-decl "bool" reals nil )
(bool nonempty-type-eq-decl nil booleans nil )
(int nonempty-type-eq-decl nil integers nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(rational nonempty-type-from-decl nil rationals nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(real nonempty-type-from-decl nil reals nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(boolean nonempty-type-decl nil booleans nil )
(number nonempty-type-decl nil numbers nil )
(inv_p0 formula-decl nil inv nil )
(mult_divides2 application-judgement "(divides(m))" divides nil )
(mult_divides1 application-judgement "(divides(n))" divides nil )
(nzint_times_nzint_is_nzint application-judgement "nzint" integers
nil )
(int_times_int_is_int application-judgement "int" integers nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(negint_times_negint_is_posint application-judgement "posint"
integers nil )
(real_gt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(int_minus_int_is_int application-judgement "int" integers nil )
(posint_exp application-judgement "posint" exponentiation nil )
(nnint_plus_posint_is_posint application-judgement "posint"
integers nil )
(nnint_plus_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(posint_plus_nnint_is_posint application-judgement "posint"
integers nil )
(minus_nzint_is_nzint application-judgement "nzint" integers nil )
(nzrat_div_nzrat_is_nzrat application-judgement "nzrat" rationals
nil )
(nnrrat_div_negrat_is_nprat application-judgement "nprat" rationals
nil )
(even_plus_even_is_even application-judgement "even_int" integers
nil )
(nnint_times_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(even_times_int_is_even application-judgement "even_int" integers
nil )
(int_plus_int_is_int application-judgement "int" integers nil )
(minus_odd_is_odd application-judgement "odd_int" integers nil ))
nil ))
(inv_n7_TCC2 0
(inv_n7_TCC2-1 nil 3250067368 ("" (subtype-tcc) nil nil )
((posint_plus_nnint_is_posint application-judgement "posint"
integers nil )
(posnat_expt application-judgement "posnat" exponentiation nil )
(int_times_int_is_int application-judgement "int" integers nil )
(nnint_times_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(even_times_int_is_even application-judgement "even_int" integers
nil )
(mult_divides1 application-judgement "(divides(n))" divides nil )
(mult_divides2 application-judgement "(divides(m))" divides nil )
(even_plus_even_is_even application-judgement "even_int" integers
nil )
(nzrat_div_nzrat_is_nzrat application-judgement "nzrat" rationals
nil )
(nnrrat_div_negrat_is_nprat application-judgement "nprat" rationals
nil )
(int_minus_int_is_int application-judgement "int" integers nil )
(int_plus_int_is_int application-judgement "int" integers nil )
(round const-decl "int" prelude_aux nil )
(^ const-decl "real" exponentiation nil ))
nil ))
(inv_n7 0
(inv_n7-1 nil 3250067368
("" (skosimp*)
(("" (lemma "inv_p0" ("p" "p!1" "s" "s!1" "pn" "-1*nn!1" ))
(("" (replace -3 -1)
(("" (simplify -1)
((""
(lemma "inv_n5"
("p" "p!1" "s" "s!1" "nn" "nn!1" "r" "r!1" ))
((""
(lemma "inv_n6"
("p" "p!1" "s" "s!1" "nn" "nn!1" "r" "r!1" ))
(("" (replace -4 (-1 -2) rl)
(("" (replace -5 (-1 -2))
(("" (simplify (-1 -2))
(("" (lemma "expt_ge1" ("b" "2" "n" "p!1" ))
((""
(lemma "expt_plus"
("n0x" "2" "i" "p!1" "j" "p!1 + 2 * s!1 + 2" ))
(("" (replace -1)
((""
(lemma "div_mult_pos_lt1"
("z" "r!1 - 1" "py" "2 ^ p!1" "x"
"2 ^ (p!1 + 2 * s!1 + 2) / (nn!1 + 1)" ))
(("1"
(lemma "div_mult_pos_lt2"
("z"
"r!1 + 1"
"py"
"2 ^ p!1"
"x"
"2 ^ (p!1 + 2 * s!1 + 2) / (nn!1 - 1)" ))
(("1"
(replace -5)
(("1"
(replace -6)
(("1"
(simplify (-1 -2))
(("1"
(replace -1 1)
(("1"
(replace -2 1)
(("1" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide-all-but (-1 -6))
(("2" (grind) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((negint nonempty-type-eq-decl nil integers nil )
(< const-decl "bool" reals nil )
(nonpos_int nonempty-type-eq-decl nil integers nil )
(<= const-decl "bool" reals nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(posnat nonempty-type-eq-decl nil integers nil )
(> const-decl "bool" reals nil )
(nonneg_int nonempty-type-eq-decl nil integers nil )
(nat nonempty-type-eq-decl nil naturalnumbers nil )
(>= const-decl "bool" reals nil )
(bool nonempty-type-eq-decl nil booleans nil )
(int nonempty-type-eq-decl nil integers nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(rational nonempty-type-from-decl nil rationals nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(real nonempty-type-from-decl nil reals nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(boolean nonempty-type-decl nil booleans nil )
(number nonempty-type-decl nil numbers nil )
(inv_p0 formula-decl nil inv nil )
(mult_divides2 application-judgement "(divides(m))" divides nil )
(mult_divides1 application-judgement "(divides(n))" divides nil )
(nzint_times_nzint_is_nzint application-judgement "nzint" integers
nil )
(int_times_int_is_int application-judgement "int" integers nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(negint_times_negint_is_posint application-judgement "posint"
integers nil )
(real_gt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(inv_n6 formula-decl nil inv nil )
(nzrat_div_nzrat_is_nzrat application-judgement "nzrat" rationals
nil )
(expt_ge1 formula-decl nil exponentiation nil )
(above nonempty-type-eq-decl nil integers nil )
(posint_plus_nnint_is_posint application-judgement "posint"
integers nil )
(odd_minus_even_is_odd application-judgement "odd_int" integers
nil )
(div_mult_pos_lt2 formula-decl nil real_props nil )
(rat_div_nzrat_is_rat application-judgement "rat" rationals nil )
(posint_times_posint_is_posint application-judgement "posint"
integers nil )
(NOT const-decl "[bool -> bool]" booleans nil )
(= const-decl "[T, T -> boolean]" equalities nil )
(- const-decl "[numfield, numfield -> numfield]" number_fields nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(^ const-decl "real" exponentiation nil )
(OR const-decl "[bool, bool -> bool]" booleans nil )
(posreal nonempty-type-eq-decl nil real_types nil )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(div_mult_pos_lt1 formula-decl nil real_props nil )
(nzreal nonempty-type-eq-decl nil reals nil )
(/= const-decl "boolean" notequal nil )
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil )
(expt_plus formula-decl nil exponentiation nil )
(nnint_plus_posint_is_posint application-judgement "posint"
integers nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(int_plus_int_is_int application-judgement "int" integers nil )
(int_minus_int_is_int application-judgement "int" integers nil )
(posint_exp application-judgement "posint" exponentiation nil )
(even_plus_even_is_even application-judgement "even_int" integers
nil )
(nnint_plus_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(even_times_int_is_even application-judgement "even_int" integers
nil )
(nnint_times_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(inv_n5 formula-decl nil inv nil )
(minus_odd_is_odd application-judgement "odd_int" integers nil ))
nil ))
(inv_n8 0
(inv_n8-1 nil 3250067368
("" (skosimp*)
(("" (lemma "expt_ge1" ("b" "2" ))
(("" (inst-cp - "s!1" )
(("" (inst - "p!1 + s!1 + 2" )
((""
(lemma "expt_plus"
("n0x" "2" "i" "p!1 + s!1 + 2" "j" "s!1" ))
((""
(lemma "both_sides_plus_lt1"
("x" "nn!1 - 1" "y" "nx!1 * 2 ^ (p!1 + 2 * s!1 + 2)" "z"
"1" ))
((""
(lemma "both_sides_times_neg_lt1"
("y" "nn!1" "x" "nx!1 * 2 ^ (p!1 + 2 * s!1 + 2) + 1"
"nz" "-1" ))
(("" (simplify -1)
((""
(lemma "both_sides_times_pos_le1"
("x" "2" "y" "-1 *nx!1 * 2 ^ s!1" "pz"
"2 ^ (2 + p!1 + s!1)" ))
((""
(lemma "expt_plus"
("n0x" "2" "i" "2 + p!1 + s!1" "j" "1" ))
(("" (expand "^" -1 3)
(("" (expand "expt" )
(("" (expand "expt" ) (("" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((above nonempty-type-eq-decl nil integers nil )
(> const-decl "bool" reals nil )
(bool nonempty-type-eq-decl nil booleans nil )
(int nonempty-type-eq-decl nil integers nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(rational nonempty-type-from-decl nil rationals nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(real nonempty-type-from-decl nil reals nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(boolean nonempty-type-decl nil booleans nil )
(number nonempty-type-decl nil numbers nil )
(expt_ge1 formula-decl nil exponentiation nil )
(nnint_plus_posint_is_posint application-judgement "posint"
integers nil )
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(^ const-decl "real" exponentiation nil )
(OR const-decl "[bool, bool -> bool]" booleans nil )
(negreal nonempty-type-eq-decl nil real_types nil )
(nonpos_real nonempty-type-eq-decl nil real_types nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(negint nonempty-type-eq-decl nil integers nil )
(< const-decl "bool" reals nil )
(nonpos_int nonempty-type-eq-decl nil integers nil )
(<= const-decl "bool" reals nil )
(- const-decl "[numfield, numfield -> numfield]" number_fields nil )
(both_sides_plus_lt1 formula-decl nil real_props nil )
(nzreal_times_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(int_minus_int_is_int application-judgement "int" integers nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(real_times_real_is_real application-judgement "real" reals nil )
(posint_exp application-judgement "posint" exponentiation nil )
(nnint_plus_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(int_times_int_is_int application-judgement "int" integers nil )
(nnint_times_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(even_times_int_is_even application-judgement "even_int" integers
nil )
(mult_divides1 application-judgement "(divides(n))" divides nil )
(posint_plus_nnint_is_posint application-judgement "posint"
integers nil )
(nzint_times_nzint_is_nzint application-judgement "nzint" integers
nil )
(mult_divides2 application-judgement "(divides(m))" divides nil )
(posnat_expt application-judgement "posnat" exponentiation nil )
(expt def-decl "real" exponentiation nil )
(minus_nzint_is_nzint application-judgement "nzint" integers nil )
(int_plus_int_is_int application-judgement "int" integers nil )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(posint_times_posint_is_posint application-judgement "posint"
integers nil )
(posreal nonempty-type-eq-decl nil real_types nil )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(both_sides_times_pos_le1 formula-decl nil real_props nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(both_sides_times_neg_lt1 formula-decl nil real_props nil )
(real_plus_real_is_real application-judgement "real" reals nil )
(minus_odd_is_odd application-judgement "odd_int" integers nil )
(nzreal nonempty-type-eq-decl nil reals nil )
(/= const-decl "boolean" notequal nil )
(expt_plus formula-decl nil exponentiation nil )
(>= const-decl "bool" reals nil )
(nat nonempty-type-eq-decl nil naturalnumbers nil ))
nil ))
(inv_n9 0
(inv_n9-1 nil 3250067368
("" (skosimp*)
(("" (lemma "inv_n8" ("nx" "nx!1" "nn" "nn!1" "p" "p!1" "s" "s!1" ))
(("" (lemma "inv_n7" ("nn" "nn!1" "p" "p!1" "s" "s!1" "r" "r!1" ))
(("" (replace -4 -1 rl)
(("" (replace -3)
(("" (replace -5)
(("" (replace -6)
(("" (simplify -2)
(("" (replace -2)
(("" (simplify -1)
(("" (flatten)
((""
(lemma "inv_p0"
("p" "p!1" "s" "s!1" "pn" "-1*nn!1" ))
(("" (replace -4)
(("" (simplify -1)
((""
(lemma "expt_ge1" ("b" "2" ))
((""
(lemma "expt_plus" ("n0x" "2" ))
((""
(lemma
"div_mult_neg_lt1"
("z"
"2 ^ p!1"
"ny"
"nx!1"
"x"
"r!1 + 1" ))
((""
(replace -1)
((""
(lemma
"div_mult_neg_lt2"
("z"
"2 ^ p!1"
"ny"
"nx!1"
"x"
"r!1 - 1" ))
((""
(replace -1)
((""
(hide (-1 -2 -10))
((""
(inst-cp -2 "p!1" )
((""
(lemma
"div_mult_pos_lt1"
("z"
"r!1 - 1"
"py"
"2 ^ p!1"
"x"
"(2 ^ (2 + p!1 + 2 * s!1)) / (1 + nn!1)" ))
(("1"
(replace -1)
(("1"
(lemma
"div_mult_pos_lt2"
("z"
"r!1 + 1"
"py"
"2 ^ p!1"
"x"
"(2 ^ (2 + p!1 + 2 * s!1)) / (nn!1 -1)" ))
(("1"
(replace -1)
(("1"
(hide (-1 -2))
(("1"
(inst-cp
-2
"2 + p!1 + 2 * s!1" )
(("1"
(name
"B"
"2 ^ p!1" )
(("1"
(replace
-1)
(("1"
(name
"AA"
"2 ^ (2 + p!1 + 2 * s!1)" )
(("1"
(replace
-1)
(("1"
(hide
(-1
-2
-3
-4
-10))
(("1"
(split)
(("1"
(lemma
"div_mult_pos_lt2"
("x"
"nx!1"
"z"
"nn!1 + 1"
"py"
"AA" ))
(("1"
(replace
-1
-9
rl)
(("1"
(lemma
"lt_times_lt_neg1"
("x"
"r!1 - 1"
"ny"
"AA / (1 + nn!1) * B"
"z"
"nx!1"
"npw"
"(nn!1 + 1) / AA" ))
(("1"
(simplify
-1)
(("1"
(lemma
"div_times"
("x"
"AA"
"n0x"
"nn!1 + 1"
"y"
"nn!1 + 1"
"n0y"
"AA" ))
(("1"
(simplify
-1)
(("1"
(simplify
-1)
(("1"
(rewrite
"div_simp"
-1)
(("1"
(lemma
"both_sides_times1"
("x"
"(AA / (1 + nn!1)) * ((1 + nn!1) / AA)"
"y"
"1"
"n0z"
"B" ))
(("1"
(replace
-1
-2
rl)
(("1"
(simplify
-2)
(("1"
(replace
-2
-3
lr)
(("1"
(grind)
nil
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(hide-all-but
(-4
-6
1))
(("2"
(lemma
"both_sides_times_neg_le1"
("y"
"6"
"x"
"-1*nn!1"
"nz"
"-1" ))
(("2"
(lemma
"both_sides_plus_le1"
("x"
"nn!1"
"y"
"-6"
"z"
"1" ))
(("2"
(lemma
"both_sides_times_pos_le1"
("x"
"nn!1 + 1"
"y"
"-5"
"pz"
"AA" ))
(("2"
(grind)
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(assert )
nil
nil ))
nil ))
nil )
("2"
(hide-all-but
(-2
-3
-4
1))
(("2"
(lemma
"both_sides_times_neg_le1"
("y"
"6"
"x"
"-1*nn!1"
"nz"
"-1" ))
(("2"
(lemma
"both_sides_plus_le1"
("y"
"-6"
"x"
"nn!1"
"z"
"1" ))
(("2"
(simplify)
(("2"
(lemma
"div_mult_neg_le1"
("x"
"0"
"ny"
"1+nn!1"
"z"
"AA*B" ))
(("1"
(grind)
nil
nil )
("2"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("3"
(hide-all-but
(1
-2
-4))
(("3"
(lemma
"div_mult_pos_le1"
("py"
"AA"
"z"
"1 + nn!1"
"x"
"0" ))
(("3"
(grind)
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(lemma
"trich_lt"
("x"
"r!1 + 1"
"y"
"0" ))
(("2"
(split
-1)
(("1"
(lemma
"lt_times_lt_neg1"
("x"
"AA / (nn!1 - 1) * B"
"ny"
"r!1 + 1"
"z"
"nn!1 - 1"
"npw"
"nx!1 * AA" ))
(("1"
(lemma
"both_sides_times_pos_lt1"
("x"
"(r!1 + 1) * nx!1"
"y"
"B"
"pz"
"AA" ))
(("1"
(hide
-9)
(("1"
(replace
-1
1
rl)
(("1"
(rewrite
"times_div2"
-2)
(("1"
(rewrite
"div_cancel2"
-2)
(("1"
(grind)
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(assert )
nil
nil )
("3"
(assert )
nil
nil ))
nil )
("2"
(replace
-1)
(("2"
(assert )
nil
nil ))
nil )
("3"
(lemma
"both_sides_times_neg_lt1"
("y"
"0"
"x"
"r!1 + 1"
"nz"
"nx!1" ))
(("3"
(grind)
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(hide-all-but (-4 1))
(("2"
(grind)
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((nat nonempty-type-eq-decl nil naturalnumbers nil )
(>= const-decl "bool" reals nil )
(negreal nonempty-type-eq-decl nil real_types nil )
(nonpos_real nonempty-type-eq-decl nil real_types nil )
(negint nonempty-type-eq-decl nil integers nil )
(< const-decl "bool" reals nil )
(nonpos_int nonempty-type-eq-decl nil integers nil )
(<= const-decl "bool" reals nil )
(bool nonempty-type-eq-decl nil booleans nil )
(int nonempty-type-eq-decl nil integers nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(rational nonempty-type-from-decl nil rationals nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(real nonempty-type-from-decl nil reals nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(boolean nonempty-type-decl nil booleans nil )
(number nonempty-type-decl nil numbers nil )
(inv_n8 formula-decl nil inv nil )
(int_times_int_is_int application-judgement "int" integers nil )
(nnint_times_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(even_times_int_is_even application-judgement "even_int" integers
nil )
(mult_divides1 application-judgement "(divides(n))" divides nil )
(mult_divides2 application-judgement "(divides(m))" divides nil )
(nnint_plus_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(even_plus_even_is_even application-judgement "even_int" integers
nil )
(posint_exp application-judgement "posint" exponentiation nil )
(int_minus_int_is_int application-judgement "int" integers nil )
(int_plus_int_is_int application-judgement "int" integers nil )
(rat_div_nzrat_is_rat application-judgement "rat" rationals nil )
(nzrat_div_nzrat_is_nzrat application-judgement "nzrat" rationals
nil )
(nzreal_times_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(nnreal_div_negreal_is_npreal application-judgement "npreal"
real_types nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(nnint_plus_posint_is_posint application-judgement "posint"
integers nil )
(posint_plus_nnint_is_posint application-judgement "posint"
integers nil )
(minus_nzint_is_nzint application-judgement "nzint" integers nil )
(nzint_times_nzint_is_nzint application-judgement "nzint" integers
nil )
(inv_p0 formula-decl nil inv nil )
(nonneg_int nonempty-type-eq-decl nil integers nil )
(> const-decl "bool" reals nil )
(posnat nonempty-type-eq-decl nil integers nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(negint_times_negint_is_posint application-judgement "posint"
integers nil )
(real_gt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(expt_plus formula-decl nil exponentiation nil )
(/= const-decl "boolean" notequal nil )
(nzreal nonempty-type-eq-decl nil reals nil )
(real_times_real_is_real application-judgement "real" reals nil )
(nnrat_exp application-judgement "nnrat" exponentiation nil )
(posrat_exp application-judgement "posrat" exponentiation nil )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil )
(div_mult_pos_le1 formula-decl nil real_props nil )
(minus_even_is_even application-judgement "even_int" integers nil )
(both_sides_plus_le1 formula-decl nil real_props nil )
(div_mult_neg_le1 formula-decl nil real_props nil )
(even_plus_odd_is_odd application-judgement "odd_int" integers nil )
(both_sides_times_neg_le1 formula-decl nil real_props nil )
(rat_times_rat_is_rat application-judgement "rat" rationals nil )
(div_simp formula-decl nil real_props nil )
(real_minus_real_is_real application-judgement "real" reals nil )
(posint_times_posint_is_posint application-judgement "posint"
integers nil )
(both_sides_times1 formula-decl nil real_props nil )
(NOT const-decl "[bool -> bool]" booleans nil )
(nonzero_real nonempty-type-eq-decl nil reals nil )
(div_times formula-decl nil real_props nil )
(lt_times_lt_neg1 formula-decl nil real_props nil )
(nzrat_times_nzrat_is_nzrat application-judgement "nzrat" rationals
nil )
(both_sides_times_pos_lt1 formula-decl nil real_props nil )
(div_cancel2 formula-decl nil real_props nil )
(times_div2 formula-decl nil real_props nil )
(rat_minus_rat_is_rat application-judgement "rat" rationals nil )
(odd_minus_odd_is_even application-judgement "even_int" integers
nil )
(both_sides_times_neg_lt1 formula-decl nil real_props nil )
(trich_lt formula-decl nil real_props nil )
(posint nonempty-type-eq-decl nil integers nil )
(= const-decl "[T, T -> boolean]" equalities nil )
(div_mult_pos_lt2 formula-decl nil real_props nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(posreal nonempty-type-eq-decl nil real_types nil )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(div_mult_pos_lt1 formula-decl nil real_props nil )
(- const-decl "[numfield, numfield -> numfield]" number_fields nil )
(div_mult_neg_lt2 formula-decl nil real_props nil )
(^ const-decl "real" exponentiation nil )
(OR const-decl "[bool, bool -> bool]" booleans nil )
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil )
(div_mult_neg_lt1 formula-decl nil real_props nil )
(above nonempty-type-eq-decl nil integers nil )
(expt_ge1 formula-decl nil exponentiation nil )
(minus_odd_is_odd application-judgement "odd_int" integers nil )
(inv_n7 formula-decl nil inv nil ))
nil ))
(inv_p 0
(inv_p-1 nil 3250067368
("" (skosimp*)
(("" (lemma "trich_lt" ("x" "nzx!1" "y" "0" ))
(("" (split -1)
(("1" (rewrite "abs_nonpos" )
(("1" (lemma "expt_ge1" ("b" "2" ))
(("1" (lemma "expt_plus" ("n0x" "2" ))
(("1"
(lemma "both_sides_times_neg_le1"
("y" "2" "x" "-1 * nzx!1 * 2 ^ s!1" "nz" "-1" ))
(("1" (replace -5 -1)
(("1" (flatten)
(("1" (simplify -1)
(("1" (inst-cp -3 "p!1 + s!1 + 2" )
(("1"
(lemma "both_sides_times_pos_le1"
("x" "2 ^ s!1 * nzx!1" "y" "2 * -1" "pz"
"2 ^ (p!1 + s!1 + 2)" ))
(("1" (replace -2 -1)
(("1" (simplify -1)
(("1"
(inst -3 "2 + p!1 + s!1" "s!1" )
(("1"
(replace -3)
(("1"
(name "AA" "2 ^ (2 + p!1 + s!1)" )
(("1"
(replace -1)
(("1"
(name "B" "2 ^ s!1" )
(("1"
(replace -1)
(("1"
(expand ">=" )
(("1"
(lemma
"inv_n9"
("nx"
"nzx!1"
"nn"
"nzn!1"
"s"
"s!1"
"p"
"p!1"
"r"
"r!1" ))
(("1"
(replace -2)
(("1"
(replace -10)
(("1"
(replace -11 -1 rl)
(("1"
(replace -6)
(("1"
(replace -12)
(("1"
(replace -13)
(("1"
(simplify
-1)
(("1"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (assert ) nil nil )
("3"
(hide-all-but
(-3 -7 -11 1))
(("3" (grind) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (assert ) nil nil )
("3" (rewrite "abs_nonneg" )
(("3" (lemma "expt_ge1" ("b" "2" ))
(("3" (lemma "expt_plus" ("n0x" "2" ))
(("3" (inst-cp -2 "s!1" )
(("3" (inst -2 "p!1 + s!1 + 2" )
(("3" (inst-cp - "p!1 + s!1 + 2" "s!1" )
(("3" (replace -2)
(("3"
(lemma "both_sides_times_pos_le1"
("x" "2" "y" "nzx!1 * 2 ^ s!1" "pz"
"2 ^ (p!1 + s!1 + 2)" ))
(("3" (replace -7 -1)
(("3" (flatten)
(("3"
(lemma "inv_p9"
("px"
"nzx!1"
"s"
"s!1"
"r"
"r!1"
"p"
"p!1"
"pn"
"nzn!1" ))
(("1"
(replace -8 -1)
(("1"
(replace -9 -1 rl)
(("1"
(replace -4)
(("1"
(replace -10)
(("1"
(replace -11)
(("1"
(simplify -1)
(("1"
(flatten)
(("1"
(hide-all-but
(-1 -2 -8 1))
(("1"
(split)
(("1"
(lemma
"div_mult_pos_lt2"
("x"
"r!1 - 1"
"py"
"nzx!1"
"z"
"2 ^ p!1" ))
(("1"
(replace -1)
(("1"
(assert )
nil
nil ))
nil ))
nil )
("2"
(lemma
"div_mult_pos_lt1"
("x"
"r!1 + 1"
"py"
"nzx!1"
"z"
"2 ^ p!1" ))
(("2"
(replace -1)
(("2"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (assert ) nil nil )
("3"
(name "AA" "2 ^ (p!1 + s!1 + 2)" )
(("3"
(replace -1)
(("3"
(name "B" "2 ^ s!1" )
(("3"
(replace -1)
(("3"
(hide-all-but (-3 -6 -12 1))
(("3" (grind) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((nzreal nonempty-type-eq-decl nil reals nil )
(/= const-decl "boolean" notequal nil )
(real nonempty-type-from-decl nil reals nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(boolean nonempty-type-decl nil booleans nil )
(number nonempty-type-decl nil numbers nil )
(trich_lt formula-decl nil real_props nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(abs_nonneg formula-decl nil prelude_aux nil )
(nnreal type-eq-decl nil real_types nil )
(nnrat_exp application-judgement "nnrat" exponentiation nil )
(posrat_exp application-judgement "posrat" exponentiation nil )
(inv_p9 formula-decl nil inv nil )
(posnat nonempty-type-eq-decl nil integers nil )
(real_gt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(real_times_real_is_real application-judgement "real" reals nil )
(div_mult_pos_lt1 formula-decl nil real_props nil )
(real_plus_real_is_real application-judgement "real" reals nil )
(div_mult_pos_lt2 formula-decl nil real_props nil )
(- const-decl "[numfield, numfield -> numfield]" number_fields nil )
(real_minus_real_is_real application-judgement "real" reals nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(abs_nonpos formula-decl nil prelude_aux nil )
(bool nonempty-type-eq-decl nil booleans nil )
(<= const-decl "bool" reals nil )
(npreal type-eq-decl nil real_types nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(nonzero_abs_is_pos application-judgement "{y: posreal | y >= x}"
real_defs nil )
(posint_exp application-judgement "posint" exponentiation nil )
(int_times_int_is_int application-judgement "int" integers nil )
(nnint_times_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(even_times_int_is_even application-judgement "even_int" integers
nil )
(mult_divides1 application-judgement "(divides(n))" divides nil )
(mult_divides2 application-judgement "(divides(m))" divides nil )
(nnint_plus_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(even_plus_even_is_even application-judgement "even_int" integers
nil )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil )
(expt_plus formula-decl nil exponentiation nil )
(nzint_times_nzint_is_nzint application-judgement "nzint" integers
nil )
(both_sides_times_pos_le1 formula-decl nil real_props nil )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(posreal nonempty-type-eq-decl nil real_types nil )
(posint_plus_nnint_is_posint application-judgement "posint"
integers nil )
(posint_times_posint_is_posint application-judgement "posint"
integers nil )
(even_minus_even_is_even application-judgement "even_int" integers
nil )
(int_minus_int_is_int application-judgement "int" integers nil )
(inv_n9 formula-decl nil inv nil )
(nonpos_int nonempty-type-eq-decl nil integers nil )
(negint nonempty-type-eq-decl nil integers nil )
(nzint nonempty-type-eq-decl nil integers nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(nzrat_div_nzrat_is_nzrat application-judgement "nzrat" rationals
nil )
(int_plus_int_is_int application-judgement "int" integers nil )
(posint nonempty-type-eq-decl nil integers nil )
(nonneg_int nonempty-type-eq-decl nil integers nil )
(= const-decl "[T, T -> boolean]" equalities nil )
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil )
(nnint_plus_posint_is_posint application-judgement "posint"
integers nil )
(nat nonempty-type-eq-decl nil naturalnumbers nil )
(^ const-decl "real" exponentiation nil )
(>= const-decl "bool" reals nil )
(OR const-decl "[bool, bool -> bool]" booleans nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(negreal nonempty-type-eq-decl nil real_types nil )
(< const-decl "bool" reals nil )
(nonpos_real nonempty-type-eq-decl nil real_types nil )
(both_sides_times_neg_le1 formula-decl nil real_props nil )
(nzreal_times_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(minus_odd_is_odd application-judgement "odd_int" integers nil )
(above nonempty-type-eq-decl nil integers nil )
(> const-decl "bool" reals nil )
(int nonempty-type-eq-decl nil integers nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(rational nonempty-type-from-decl nil rationals nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(expt_ge1 formula-decl nil exponentiation nil ))
nil ))
(minimum_inv_prop3_TCC1 0
(minimum_inv_prop3_TCC1-1 nil 3250067368
("" (skosimp*)
(("" (lemma "minimum_inv_prop0" ("s" "s!1" "nzcx" "nzcx!1" ))
((""
(lemma "cauchy_monotonic"
("s" "s!1" "nzcx" "nzcx!1" "p" "p!1 + s!1 + 2" ))
(("" (lemma "cauchy_dich5" ("nzcx" "nzcx!1" ))
(("" (split -1)
(("1"
(lemma "cauchy_neg_characteristic"
("p" "2 + p!1 + 2 * s!1" "ncx" "nzcx!1" ))
(("1" (rewrite "abs_nonpos" )
(("1" (assert )
(("1" (assert )
(("1" (assert ) (("1" (grind) nil nil )) nil )) nil ))
nil )
("2" (grind) nil nil ))
nil )
("2" (propax) nil nil ))
nil )
("2"
(lemma "cauchy_pos_characteristic"
("pcx" "nzcx!1" "p" "2 + p!1 + 2 * s!1" ))
(("1" (rewrite "abs_nonneg" )
(("1" (grind) nil nil ) ("2" (grind) nil nil )) nil )
("2" (propax) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((cauchy_nzreal nonempty-type-eq-decl nil cauchy nil )
(cauchy_nzreal? const-decl "bool" cauchy nil )
(nat nonempty-type-eq-decl nil naturalnumbers nil )
(>= const-decl "bool" reals nil )
(bool nonempty-type-eq-decl nil booleans nil )
(int nonempty-type-eq-decl nil integers nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(rational nonempty-type-from-decl nil rationals nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(real nonempty-type-from-decl nil reals nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(boolean nonempty-type-decl nil booleans nil )
(number nonempty-type-decl nil numbers nil )
(minimum_inv_prop0 formula-decl nil inv nil )
(cauchy_dich5 formula-decl nil unique nil )
(cauchy_pos_characteristic formula-decl nil unique nil )
(cauchy_posreal? const-decl "bool" cauchy nil )
(cauchy_posreal nonempty-type-eq-decl nil cauchy nil )
(posnat_expt application-judgement "posnat" exponentiation nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(minimum_inv const-decl "nat" inv nil )
(abs const-decl "{n: nonneg_real | n >= m AND n >= -m}" real_defs
nil )
(cauchy_prop const-decl "bool" cauchy nil )
(^ const-decl "real" exponentiation nil )
(abs_nonneg formula-decl nil prelude_aux nil )
(nnreal type-eq-decl nil real_types nil )
(cauchy_neg_characteristic formula-decl nil unique nil )
(cauchy_negreal? const-decl "bool" cauchy nil )
(cauchy_negreal nonempty-type-eq-decl nil cauchy nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(minus_int_is_int application-judgement "int" integers nil )
(abs_nat formula-decl nil abs_lems "reals/" )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(int_abs_is_nonneg application-judgement "{j: nonneg_int | j >= i}"
real_defs nil )
(nnint_plus_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(abs_nonpos formula-decl nil prelude_aux nil )
(<= const-decl "bool" reals nil )
(npreal type-eq-decl nil real_types nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(cauchy_monotonic formula-decl nil unique nil )
(mult_divides2 application-judgement "(divides(m))" divides nil )
(mult_divides1 application-judgement "(divides(n))" divides nil )
(even_times_int_is_even application-judgement "even_int" integers
nil )
(nnint_times_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(int_times_int_is_int application-judgement "int" integers nil )
(posint_plus_nnint_is_posint application-judgement "posint"
integers nil )
(nnint_plus_posint_is_posint application-judgement "posint"
integers nil ))
nil ))
(minimum_inv_prop3 0
(minimum_inv_prop3-1 nil 3250067368
("" (skosimp*)
((""
(lemma "minimum_inv_prop1"
("s" "s!1" "nzcx" "nzcx!1" "x" "nzx!1" ))
(("" (replace -3 -1)
(("" (expand "cauchy_prop" )
(("" (skosimp*)
(("" (inst - "2 + p!1 + 2 * s!1" )
(("" (name "nzn!1" "nzcx!1(2 + p!1 + 2 * s!1)" )
(("" (replace -1)
((""
(lemma "minimum_inv_prop2"
("s" "s!1" "nzx" "nzx!1" "n" "nzn!1" "p" "p!1" ))
(("" (replace -4 -3 rl)
(("" (simplify -3)
(("" (replace -5 -1)
(("" (replace -3 -1)
(("" (simplify -1)
((""
(name
"r!1"
"round((2 ^ (2 + 2 * p!1 + 2 * s!1)) / nzn!1)" )
(("1"
(replace -1)
(("1"
(lemma
"inv_p"
("s"
"s!1"
"nzx"
"nzx!1"
"p"
"p!1"
"nzn"
"nzn!1"
"r"
"r!1" ))
(("1"
(replace -5 -1)
(("1"
(replace -2)
(("1"
(replace -7 -1)
(("1"
(hide-all-but (-1 1))
(("1" (grind) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (propax) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((nzreal nonempty-type-eq-decl nil reals nil )
(/= const-decl "boolean" notequal nil )
(cauchy_nzreal nonempty-type-eq-decl nil cauchy nil )
(cauchy_nzreal? const-decl "bool" cauchy nil )
(nat nonempty-type-eq-decl nil naturalnumbers nil )
(>= const-decl "bool" reals nil )
(bool nonempty-type-eq-decl nil booleans nil )
(int nonempty-type-eq-decl nil integers nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(rational nonempty-type-from-decl nil rationals nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(real nonempty-type-from-decl nil reals nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(boolean nonempty-type-decl nil booleans nil )
(number nonempty-type-decl nil numbers nil )
(minimum_inv_prop1 formula-decl nil inv nil )
(posint_exp application-judgement "posint" exponentiation nil )
(int_times_int_is_int application-judgement "int" integers nil )
(nnint_times_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(even_times_int_is_even application-judgement "even_int" integers
nil )
(mult_divides1 application-judgement "(divides(n))" divides nil )
(mult_divides2 application-judgement "(divides(m))" divides nil )
(posint_plus_nnint_is_posint application-judgement "posint"
integers nil )
(even_plus_even_is_even application-judgement "even_int" integers
nil )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(cauchy_prop const-decl "bool" cauchy nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(nonzero_abs_is_pos application-judgement "{y: posreal | y >= x}"
real_defs nil )
(int_minus_int_is_int application-judgement "int" integers nil )
(nnint_plus_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(int_plus_int_is_int application-judgement "int" integers nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(posnat_expt application-judgement "posnat" exponentiation nil )
(posrat_div_posrat_is_posrat application-judgement "posrat"
rationals nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(nzreal_times_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(nzint nonempty-type-eq-decl nil integers nil )
(inv_p formula-decl nil inv nil )
(^ const-decl "real" exponentiation nil )
(OR const-decl "[bool, bool -> bool]" booleans nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(round const-decl "int" prelude_aux nil )
(nzrat_div_nzrat_is_nzrat application-judgement "nzrat" rationals
nil )
(posreal_times_posreal_is_posreal application-judgement "posreal"
real_types nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(minimum_inv_prop2 formula-decl nil inv nil )
(= const-decl "[T, T -> boolean]" equalities nil ))
nil ))
(cauchy_nz_inv_TCC1 0
(cauchy_nz_inv_TCC1-1 nil 3250067368
("" (skosimp)
(("" (rewrite "minimum_inv_impl_def" * :dir rl)
(("" (expand "minimum_inv" )
(("" (typepred "min_nat.min({s | 3 <= abs(nzcx!1(s))})" )
(("1" (replace -3 * rl)
(("1" (typepred "nzcx!1" )
(("1" (expand "cauchy_nzreal?" )
(("1" (skosimp)
(("1" (expand "cauchy_prop" )
(("1" (inst-cp - "s!1" )
(("1" (inst - "p!1+2*s!1+2" )
(("1" (flatten)
(("1"
(case "abs(nzcx!1(s!1))<=abs(nzcx!1(p!1+2*s!1+2))" )
(("1" (replace -9 -1)
(("1"
(expand "abs" -1 2)
(("1" (assert ) nil nil ))
nil ))
nil )
("2" (replace -8)
(("2"
(expand "abs" 1 2)
(("2"
(hide 1 -8)
(("2"
(lemma
"div_mult_pos_lt2"
("py"
" 2 ^ (p!1 + 2 * s!1 + 2)"
"x"
"x!1"
"z"
"1" ))
(("2"
(lemma
"div_mult_pos_lt1"
("py"
" 2 ^ (p!1 + 2 * s!1 + 2)"
"x"
"x!1"
"z"
"-1" ))
(("2"
(assert )
(("2"
(case
"abs(x!1 * 2 ^ s!1) <= 1/2^(2+p!1+s!1)" )
(("1"
(lemma
"both_sides_expt_gt1_le"
("gt1x"
"2"
"i"
"-(2+p!1+s!1)"
"j"
"-2" ))
(("1"
(assert )
(("1"
(rewrite
"expt_inverse"
-1)
(("1"
(rewrite
"expt_inverse"
-1)
(("1"
(expand "^" -1 2)
(("1"
(expand "expt" )
(("1"
(expand "expt" )
(("1"
(expand
"expt" )
(("1"
(case
"abs(nzcx!1(s!1)) <=2" )
(("1"
(assert )
nil
nil )
("2"
(case
"abs(x!1 * 2 ^ s!1) <=1/4" )
(("1"
(name-replace
"X2S"
"x!1 * 2 ^ s!1" )
(("1"
(hide-all-but
(-1
-8
-9
1))
(("1"
(grind)
nil
nil ))
nil ))
nil )
("2"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(hide-all-but (-1 -2 1))
(("2"
(rewrite "abs_mult" 1)
(("2"
(expand "abs" 1 2)
(("2"
(rewrite
"div_mult_pos_le2"
1)
(("2"
(lemma
"expt_plus"
("n0x"
"2"
"i"
"2 + p!1 + s!1"
"j"
"s!1" ))
(("2"
(rewrite
"associative_mult"
1
:dir
rl)
(("2"
(replace
-1
1
rl)
(("2"
(hide -1)
(("2"
(typepred
"2 ^ (2 + p!1 + 2 * s!1)" )
(("2"
(lemma
"div_mult_pos_le2"
("py"
"2 ^ (2 + p!1 + s!1 + s!1)"
"x"
"abs(x!1)"
"z"
"1" ))
(("2"
(replace
-1
1
rl)
(("2"
(hide
-1
-2)
(("2"
(name-replace
"DRL"
"2 ^ (2 + p!1 + 2 * s!1)" )
(("2"
(grind)
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (rewrite "minimum_inv_exists" ) nil nil ))
nil ))
nil ))
nil ))
nil )
((minimum_inv_impl_def formula-decl nil inv nil )
(number nonempty-type-decl nil numbers nil )
(boolean nonempty-type-decl nil booleans nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(real nonempty-type-from-decl nil reals nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(rational nonempty-type-from-decl nil rationals nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(int nonempty-type-eq-decl nil integers nil )
(bool nonempty-type-eq-decl nil booleans nil )
(>= const-decl "bool" reals nil )
(nat nonempty-type-eq-decl nil naturalnumbers nil )
(cauchy_nzreal? const-decl "bool" cauchy nil )
(cauchy_nzreal nonempty-type-eq-decl nil cauchy nil )
(int_times_int_is_int application-judgement "int" integers nil )
(nnint_times_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(even_times_int_is_even application-judgement "even_int" integers
nil )
(mult_divides1 application-judgement "(divides(n))" divides nil )
(mult_divides2 application-judgement "(divides(m))" divides nil )
(nnint_plus_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(min const-decl "{a | S(a) AND (FORALL x: S(x) IMPLIES a <= x)}"
min_nat nil )
(IMPLIES const-decl "[bool, bool -> bool]" booleans nil )
(nonempty? const-decl "bool" sets nil )
(set type-eq-decl nil sets nil )
(abs const-decl "{n: nonneg_real | n >= m AND n >= -m}" real_defs
nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(<= const-decl "bool" reals nil )
(NOT const-decl "[bool -> bool]" booleans nil )
(minus_odd_is_odd application-judgement "odd_int" integers nil )
(div_mult_pos_lt1 formula-decl nil real_props nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(posrat_exp application-judgement "posrat" exponentiation nil )
(nnrat_exp application-judgement "nnrat" exponentiation nil )
(nonzero_abs_is_pos application-judgement "{y: posreal | y >= x}"
real_defs nil )
(expt def-decl "real" exponentiation nil )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil )
(minus_int_is_int application-judgement "int" integers nil )
(= const-decl "[T, T -> boolean]" equalities nil )
(expt_inverse formula-decl nil exponentiation nil )
(both_sides_expt_gt1_le formula-decl nil exponentiation nil )
(minus_even_is_even application-judgement "even_int" integers nil )
(minus_nzint_is_nzint application-judgement "nzint" integers nil )
(abs_mult formula-decl nil real_props nil )
(nzint_abs_is_pos application-judgement "{j: posint | j >= i}"
real_defs nil )
(posreal_times_posreal_is_posreal application-judgement "posreal"
real_types nil )
(expt_plus formula-decl nil exponentiation nil )
(posint nonempty-type-eq-decl nil integers nil )
(nonneg_int nonempty-type-eq-decl nil integers nil )
(even_minus_even_is_even application-judgement "even_int" integers
nil )
(posint_times_posint_is_posint application-judgement "posint"
integers nil )
(associative_mult formula-decl nil number_fields nil )
(div_mult_pos_le2 formula-decl nil real_props nil )
(even_minus_odd_is_odd application-judgement "odd_int" integers
nil )
(odd_plus_even_is_odd application-judgement "odd_int" integers nil )
(nzrat_div_nzrat_is_nzrat application-judgement "nzrat" rationals
nil )
(posrat_div_posrat_is_posrat application-judgement "posrat"
rationals nil )
(nzreal nonempty-type-eq-decl nil reals nil )
(^ const-decl "real" exponentiation nil )
(/= const-decl "boolean" notequal nil )
(OR const-decl "[bool, bool -> bool]" booleans nil )
(posreal nonempty-type-eq-decl nil real_types nil )
(> const-decl "bool" reals nil )
(div_mult_pos_lt2 formula-decl nil real_props nil )
(abs_nat formula-decl nil abs_lems "reals/" )
(int_plus_int_is_int application-judgement "int" integers nil )
(nzreal_times_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(int_minus_int_is_int application-judgement "int" integers nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(int_abs_is_nonneg application-judgement "{j: nonneg_int | j >= i}"
real_defs nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(posint_plus_nnint_is_posint application-judgement "posint"
integers nil )
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(nnint_plus_posint_is_posint application-judgement "posint"
integers nil )
(cauchy_prop const-decl "bool" cauchy nil )
(posint_exp application-judgement "posint" exponentiation nil )
(minimum_inv_exists formula-decl nil inv nil )
(minimum_inv const-decl "nat" inv nil ))
nil ))
(cauchy_nz_inv_TCC2 0
(cauchy_nz_inv_TCC2-1 nil 3250067368
("" (skosimp)
(("" (typepred "nzcx!1" )
(("" (expand "cauchy_nzreal?" )
(("" (skosimp)
((""
(lemma "minimum_inv_prop3"
("s" "minimum_inv(nzcx!1)" "nzx" "x!1" "nzcx" "nzcx!1" ))
(("" (assert )
(("" (rewrite "minimum_inv_impl_def" )
(("" (inst + "1/x!1" ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((cauchy_nzreal nonempty-type-eq-decl nil cauchy nil )
(cauchy_nzreal? const-decl "bool" cauchy nil )
(nat nonempty-type-eq-decl nil naturalnumbers nil )
(>= const-decl "bool" reals nil )
(int nonempty-type-eq-decl nil integers nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(rational nonempty-type-from-decl nil rationals nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(real nonempty-type-from-decl nil reals nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(number nonempty-type-decl nil numbers nil )
(NOT const-decl "[bool -> bool]" booleans nil )
(bool nonempty-type-eq-decl nil booleans nil )
(boolean nonempty-type-decl nil booleans nil )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(minimum_inv_impl_def formula-decl nil inv nil )
(minimum_inv const-decl "nat" inv nil )
(nzreal nonempty-type-eq-decl nil reals nil )
(/= const-decl "boolean" notequal nil )
(minimum_inv_prop3 formula-decl nil inv nil )
(posint_exp application-judgement "posint" exponentiation nil )
(even_plus_even_is_even application-judgement "even_int" integers
nil )
(posint_plus_nnint_is_posint application-judgement "posint"
integers nil )
(mult_divides2 application-judgement "(divides(m))" divides nil )
(mult_divides1 application-judgement "(divides(n))" divides nil )
(even_times_int_is_even application-judgement "even_int" integers
nil )
(nnint_times_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(int_times_int_is_int application-judgement "int" integers nil ))
nil ))
(inv_nz_lemma 0
(inv_nz_lemma-1 nil 3250067368
("" (skosimp)
(("" (lemma "minimum_inv_prop3" ("nzcx" "nzcx!1" "nzx" "nzx!1" ))
(("" (inst - "minimum_inv(nzcx!1)" )
(("" (expand "cauchy_nz_inv" )
(("" (rewrite "minimum_inv_impl_def" ) (("" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((nzreal nonempty-type-eq-decl nil reals nil )
(/= const-decl "boolean" notequal nil )
(cauchy_nzreal nonempty-type-eq-decl nil cauchy nil )
(cauchy_nzreal? const-decl "bool" cauchy nil )
(nat nonempty-type-eq-decl nil naturalnumbers nil )
(>= const-decl "bool" reals nil )
(bool nonempty-type-eq-decl nil booleans nil )
(int nonempty-type-eq-decl nil integers nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(rational nonempty-type-from-decl nil rationals nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(real nonempty-type-from-decl nil reals nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(boolean nonempty-type-decl nil booleans nil )
(number nonempty-type-decl nil numbers nil )
(minimum_inv_prop3 formula-decl nil inv nil )
(cauchy_nz_inv const-decl "cauchy_nzreal" inv nil )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(posint_plus_nnint_is_posint application-judgement "posint"
integers nil )
(posint_exp application-judgement "posint" exponentiation nil )
(even_plus_even_is_even application-judgement "even_int" integers
nil )
(nnint_plus_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(mult_divides2 application-judgement "(divides(m))" divides nil )
(mult_divides1 application-judgement "(divides(n))" divides nil )
(even_times_int_is_even application-judgement "even_int" integers
nil )
(nnint_times_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(int_times_int_is_int application-judgement "int" integers nil )
(minimum_inv_impl_def formula-decl nil inv nil )
(minimum_inv const-decl "nat" inv nil ))
nil ))
(inv_lemma 0
(inv_lemma-1 nil 3250067368
("" (skosimp)
(("" (lemma "inv_nz_lemma" ("nzx" "nzx!1" "nzcx" "nzcx!1" ))
(("" (assert )
(("" (expand "cauchy_inv" ) (("" (propax) nil nil )) nil )) nil ))
nil ))
nil )
((nzreal nonempty-type-eq-decl nil reals nil )
(/= const-decl "boolean" notequal nil )
(cauchy_nzreal nonempty-type-eq-decl nil cauchy nil )
(cauchy_nzreal? const-decl "bool" cauchy nil )
(nat nonempty-type-eq-decl nil naturalnumbers nil )
(>= const-decl "bool" reals nil )
(bool nonempty-type-eq-decl nil booleans nil )
(int nonempty-type-eq-decl nil integers nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(rational nonempty-type-from-decl nil rationals nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(real nonempty-type-from-decl nil reals nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(boolean nonempty-type-decl nil booleans nil )
(number nonempty-type-decl nil numbers nil )
(inv_nz_lemma formula-decl nil inv nil )
(cauchy_inv const-decl "cauchy_nzreal" inv nil )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil ))
nil )))
Messung V0.5 in Prozent C=100 H=100 G=100
¤ Dauer der Verarbeitung: 0.446 Sekunden
(vorverarbeitet am 2026-04-25)
¤
*© Formatika GbR, Deutschland
2026-05-26