(sincos_quad
(nnreal_quad1_closed_TCC1 0
(nnreal_quad1_closed_TCC1-1 nil 3263653658 ("" (assert ) nil nil )
((real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil ))
shostak))
(nnreal_quad1_open_TCC1 0
(nnreal_quad1_open_TCC1-1 nil 3269611563 ("" (assert ) nil nil )
((real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil ))
shostak))
(posreal_lt_pi_TCC1 0
(posreal_lt_pi_TCC1-1 nil 3265387997 ("" (assert ) nil nil )
((real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil ))
shostak))
(noa_real_lt_pi2 0
(noa_real_lt_pi2-1 nil 3477834241
("" (expand "not_one_element?" )
(("" (skosimp*)
(("" (inst-cp + "pi/4" )
(("" (inst + "pi/8" )
(("" (flatten) (("" (assert ) nil nil )) nil )) nil ))
nil ))
nil ))
nil )
((real_abs_lt_pi2 nonempty-type-eq-decl nil atan nil )
(pi const-decl "posreal" atan 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 )
(- const-decl "[numfield -> numfield]" number_fields nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(< const-decl "bool" reals nil )
(AND const-decl "[bool, bool -> bool]" booleans 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 )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(not_one_element? const-decl "bool" deriv_domain_def "analysis/" )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil ))
shostak))
(noa_real_abs_lt1 0
(noa_real_abs_lt1-1 nil 3477834289
("" (expand "not_one_element?" )
(("" (skosimp*)
(("" (inst-cp + "0" )
(("" (inst + "1/2" )
(("" (flatten) (("" (assert ) nil nil )) nil )) nil ))
nil ))
nil ))
nil )
((posrat_div_posrat_is_posrat application-judgement "posrat"
rationals nil )
(/= const-decl "boolean" notequal nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(real_abs_lt1 nonempty-type-eq-decl nil asin nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(< const-decl "bool" reals nil )
(AND const-decl "[bool, bool -> bool]" booleans 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 )
(not_one_element? const-decl "bool" deriv_domain_def "analysis/" ))
shostak))
(noa_posreal_lt_pi 0
(noa_posreal_lt_pi-1 nil 3477834336
("" (expand "not_one_element?" )
(("" (skosimp*)
(("" (inst-cp + "pi/2" )
(("" (inst + "pi/4" ) (("" (assert ) nil nil )) nil )) nil ))
nil ))
nil )
((/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(posreal_lt_pi nonempty-type-eq-decl nil sincos_quad nil )
(pi const-decl "posreal" atan nil ) (< const-decl "bool" reals 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 )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(not_one_element? const-decl "bool" deriv_domain_def "analysis/" ))
nil ))
(noa_real_abs_lt_pi2 0
(noa_real_abs_lt_pi2-1 nil 3477834383
("" (expand "not_one_element?" )
(("" (skosimp*)
(("" (inst-cp + "pi/4" )
(("" (inst + "pi/8" ) (("" (assert ) nil nil )) nil )) nil ))
nil ))
nil )
((real_abs_lt_pi2 nonempty-type-eq-decl nil atan nil )
(pi const-decl "posreal" atan 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 )
(- const-decl "[numfield -> numfield]" number_fields nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(< const-decl "bool" reals nil )
(AND const-decl "[bool, bool -> bool]" booleans 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 )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(not_one_element? const-decl "bool" deriv_domain_def "analysis/" )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil ))
nil ))
(noa_posreal_lt_pi4 0
(noa_posreal_lt_pi4-1 nil 3477834403
("" (expand "not_one_element?" )
(("" (skosimp*)
(("" (inst-cp + "pi/8" )
(("" (inst + "pi/6" ) (("" (assert ) nil nil )) nil )) nil ))
nil ))
nil )
((pi const-decl "posreal" atan nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(< const-decl "bool" reals 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 )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(not_one_element? const-decl "bool" deriv_domain_def "analysis/" ))
nil ))
(conn_real_lt_pi2 0
(conn_real_lt_pi2-1 nil 3477834411
("" (expand "connected?" )
(("" (skosimp*) (("" (assert ) nil nil )) nil )) 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 )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(connected? const-decl "bool" deriv_domain_def "analysis/" )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil ))
shostak))
(conn_real_abs_lt1 0
(conn_real_abs_lt1-1 nil 3477834437
("" (expand "connected?" )
(("" (skosimp*) (("" (assert ) nil nil )) nil )) 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 )
(minus_odd_is_odd application-judgement "odd_int" integers nil )
(connected? const-decl "bool" deriv_domain_def "analysis/" ))
shostak))
(conn_posreal_lt_pi 0
(conn_posreal_lt_pi-1 nil 3477834446
("" (expand "connected?" )
(("" (skosimp*) (("" (assert ) nil nil )) nil )) 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 )
(connected? const-decl "bool" deriv_domain_def "analysis/" ))
shostak))
(deriv_domain_real_abs_lt1 0
(deriv_domain_real_abs_lt1-1 nil 3472550428
("" (lemma "deriv_domain_open" ) (("" (inst - "-1" "1" ) nil nil ))
nil )
((minus_odd_is_odd application-judgement "odd_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 )
(numfield nonempty-type-eq-decl nil number_fields nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(deriv_domain_open formula-decl nil deriv_domain "analysis/" ))
shostak))
(deriv_domain_posreal_lt_pi 0
(deriv_domain_posreal_lt_pi-1 nil 3477834481
("" (lemma "deriv_domain_open" )
(("" (inst - "0" "pi" )
(("" (expand "deriv_domain?" )
(("" (skosimp*)
(("" (inst - "e!1" "x!1" )
(("" (skosimp*) (("" (inst + "y!1" ) 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 )
(bool nonempty-type-eq-decl nil booleans nil )
(>= const-decl "bool" reals 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 )
(pi const-decl "posreal" atan nil )
(/= const-decl "boolean" notequal nil )
(nzreal nonempty-type-eq-decl nil reals nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(+ const-decl "[numfield, numfield -> numfield]" number_fields 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 )
(posreal_lt_pi nonempty-type-eq-decl nil sincos_quad nil )
(open_interval type-eq-decl nil intervals_real "reals/" )
(< const-decl "bool" reals nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(deriv_domain? const-decl "bool" deriv_domain_def "analysis/" )
(real_plus_real_is_real application-judgement "real" reals nil )
(deriv_domain_open formula-decl nil deriv_domain "analysis/" ))
shostak))
(deriv_domain_abs_lt_pi2 0
(deriv_domain_abs_lt_pi2-1 nil 3477834559
("" (lemma "deriv_domain_open" )
(("" (inst - "-pi/2" "pi/2" ) nil nil )) nil )
((nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
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 )
(numfield nonempty-type-eq-decl nil 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 )
(- const-decl "[numfield -> numfield]" number_fields nil )
(bool nonempty-type-eq-decl nil booleans nil )
(>= const-decl "bool" reals 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 )
(pi const-decl "posreal" atan nil )
(deriv_domain_open formula-decl nil deriv_domain "analysis/" ))
shostak))
(deriv_domain_posreal_lt_pi4 0
(deriv_domain_posreal_lt_pi4-1 nil 3477834580
("" (lemma "deriv_domain_open" )
(("" (inst - "0" "pi/4" )
(("" (assert )
(("" (expand "deriv_domain?" )
(("" (skosimp*)
(("" (inst - "e!1" "x!1" )
(("" (skosimp*) (("" (inst + "y!1" ) nil nil )) nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((posreal_div_posreal_is_posreal application-judgement "posreal"
real_types 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 )
(numfield nonempty-type-eq-decl nil 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 )
(bool nonempty-type-eq-decl nil booleans nil )
(>= const-decl "bool" reals 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 )
(pi const-decl "posreal" atan nil )
(real_plus_real_is_real application-judgement "real" reals nil )
(deriv_domain? const-decl "bool" deriv_domain_def "analysis/" )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(open_interval type-eq-decl nil intervals_real "reals/" )
(< const-decl "bool" reals nil )
(AND const-decl "[bool, bool -> bool]" booleans 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 )
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil )
(nzreal nonempty-type-eq-decl nil reals nil )
(deriv_domain_open formula-decl nil deriv_domain "analysis/" ))
shostak))
(sin_value_bij 0
(sin_value_bij-1 nil 3262932114
("" (expand "sin_value" )
(("" (lemma "asin_bij" )
((""
(lemma "bij_inv_is_bij[real_abs_le1, real_abs_le_pi2]"
("f" "asin" ))
(("" (assert ) nil nil )) nil ))
nil ))
nil )
((asin_bij formula-decl nil asin nil )
(bij_inv_is_bij formula-decl nil function_inverse nil )
(asin const-decl "real_abs_le_pi2" asin 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 )
(bool nonempty-type-eq-decl nil booleans nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(<= const-decl "bool" reals nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(real_abs_le1 nonempty-type-eq-decl nil asin nil )
(/= const-decl "boolean" notequal nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(>= const-decl "bool" reals 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 )
(pi const-decl "posreal" atan nil )
(real_abs_le_pi2 nonempty-type-eq-decl nil asin nil )
(sin_value const-decl "[real_abs_le_pi2 -> real_abs_le1]"
sincos_quad nil ))
shostak))
(cos_value_bij 0
(cos_value_bij-1 nil 3262932269
("" (lemma "acos_bij" )
((""
(lemma "bij_inv_is_bij[real_abs_le1, nnreal_le_pi]" ("f" "acos" ))
(("" (expand "cos_value" ) (("" (assert ) nil nil )) nil )) nil ))
nil )
((nnreal_le_pi nonempty-type-eq-decl nil acos nil )
(pi const-decl "posreal" atan 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 )
(nnreal type-eq-decl nil real_types nil )
(>= const-decl "bool" reals nil )
(real_abs_le1 nonempty-type-eq-decl nil asin nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(<= const-decl "bool" reals nil )
(AND const-decl "[bool, bool -> bool]" booleans 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 )
(acos const-decl "nnreal_le_pi" acos nil )
(bij_inv_is_bij formula-decl nil function_inverse nil )
(cos_value const-decl "[nnreal_le_pi -> real_abs_le1]" sincos_quad
nil )
(acos_bij formula-decl nil acos nil ))
shostak))
(sin_value_strict_increasing 0
(sin_value_strict_increasing-1 nil 3264344138
("" (lemma "asin_strict_increasing" )
(("" (expand "strict_increasing?" )
(("" (skosimp*)
(("" (expand "sin_value" )
(("" (lemma "asin_bij" )
((""
(lemma "trich_lt"
("x" "inverse(asin)(x!1)" "y" "inverse(asin)(y!1)" ))
(("" (split -1)
(("1" (propax) nil nil )
("2" (lemma "bij_inv_is_bij" ("f" "asin" ))
(("2" (assert )
(("2" (expand "bijective?" -1)
(("2" (expand "injective?" -1)
(("2" (flatten -1)
(("2" (inst - "x!1" "y!1" )
(("2" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("3"
(inst - "inverse(asin)(y!1)" "inverse(asin)(x!1)" )
(("3" (assert )
(("3"
(lemma
"comp_inverse_right[real_abs_le1, real_abs_le_pi2]"
("f" "asin" "y" "x!1" ))
(("3"
(lemma
"comp_inverse_right[real_abs_le1, real_abs_le_pi2]"
("f" "asin" "y" "y!1" ))
(("3" (replace -1)
(("3" (replace -2) (("3" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil )
(strict_increasing? const-decl "bool" real_fun_preds "reals/" )
(sin_value const-decl "[real_abs_le_pi2 -> real_abs_le1]"
sincos_quad nil )
(asin const-decl "real_abs_le_pi2" asin nil )
(inverse const-decl "D" function_inverse nil )
(real_abs_le_pi2 nonempty-type-eq-decl nil asin nil )
(pi const-decl "posreal" atan 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 )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(real_abs_le1 nonempty-type-eq-decl nil asin nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(<= const-decl "bool" reals nil )
(AND const-decl "[bool, bool -> bool]" booleans 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 )
(trich_lt formula-decl nil real_props nil )
(comp_inverse_right formula-decl nil function_inverse nil )
(bij_inv_is_bij formula-decl nil function_inverse nil )
(bijective? const-decl "bool" functions nil )
(injective? const-decl "bool" functions nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(asin_bij formula-decl nil asin nil )
(asin_strict_increasing formula-decl nil asin nil ))
shostak))
(sin_value_increasing 0
(sin_value_increasing-1 nil 3263653554
("" (lemma "sin_value_strict_increasing" )
(("" (expand "strict_increasing?" )
(("" (expand "increasing?" )
(("" (skosimp*)
(("" (expand "<=" -2)
(("" (split -2)
(("1" (inst - "x!1" "y!1" ) (("1" (assert ) nil nil )) nil )
("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil )
(strict_increasing? const-decl "bool" real_fun_preds "reals/" )
(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 )
(real_abs_le_pi2 nonempty-type-eq-decl nil asin nil )
(pi const-decl "posreal" atan 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 )
(- const-decl "[numfield -> numfield]" number_fields nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(AND const-decl "[bool, bool -> bool]" booleans 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 )
(<= const-decl "bool" reals nil )
(increasing? const-decl "bool" real_fun_preds "reals/" )
(sin_value_strict_increasing formula-decl nil sincos_quad nil ))
shostak))
(cos_value_strict_decreasing 0
(cos_value_strict_decreasing-1 nil 3263493549
("" (expand "cos_value" )
(("" (lemma "acos_strict_decreasing" )
(("" (expand "strict_decreasing?" )
(("" (skosimp*)
((""
(lemma "trich_lt"
("x" "inverse(acos)(y!1)" "y" "inverse(acos)(x!1)" ))
(("" (split -1)
(("1" (propax) nil nil )
("2" (lemma "cos_value_bij" )
(("2" (expand "bijective?" )
(("2" (expand "injective?" )
(("2" (flatten)
(("2" (inst - "x!1" "y!1" )
(("2" (expand "cos_value" )
(("2" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("3" (inst - "inverse(acos)(x!1)" "inverse(acos)(y!1)" )
(("3" (assert )
(("3" (lemma "acos_bij" )
(("3"
(lemma
"comp_inverse_right[real_abs_le1, nnreal_le_pi]"
("f" "acos" ))
(("1" (inst-cp - "x!1" )
(("1" (inst - "y!1" ) (("1" (assert ) nil nil ))
nil ))
nil )
("2" (propax) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((acos_strict_decreasing formula-decl nil acos nil )
(bijective? const-decl "bool" functions nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(injective? const-decl "bool" functions nil )
(cos_value_bij formula-decl nil sincos_quad nil )
(comp_inverse_right formula-decl nil function_inverse nil )
(acos_bij formula-decl nil acos nil )
(trich_lt formula-decl nil real_props 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 )
(bool nonempty-type-eq-decl nil booleans nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(<= const-decl "bool" reals nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(real_abs_le1 nonempty-type-eq-decl nil asin nil )
(>= const-decl "bool" reals nil )
(nnreal type-eq-decl nil real_types 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 )
(pi const-decl "posreal" atan nil )
(nnreal_le_pi nonempty-type-eq-decl nil acos nil )
(inverse const-decl "D" function_inverse nil )
(acos const-decl "nnreal_le_pi" acos nil )
(strict_decreasing? const-decl "bool" real_fun_preds "reals/" )
(cos_value const-decl "[nnreal_le_pi -> real_abs_le1]" sincos_quad
nil ))
shostak))
(cos_value_decreasing 0
(cos_value_decreasing-1 nil 3263653470
("" (lemma "cos_value_strict_decreasing" )
(("" (expand "strict_decreasing?" )
(("" (expand "decreasing?" )
(("" (skosimp*)
(("" (expand "<=" -2)
(("" (split -2)
(("1" (inst - "x!1" "y!1" ) (("1" (assert ) nil nil )) nil )
("2" (replace -1) (("2" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((strict_decreasing? const-decl "bool" real_fun_preds "reals/" )
(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 )
(nnreal_le_pi nonempty-type-eq-decl nil acos nil )
(pi const-decl "posreal" atan 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 )
(nnreal 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 )
(<= const-decl "bool" reals nil )
(decreasing? const-decl "bool" real_fun_preds "reals/" )
(cos_value_strict_decreasing formula-decl nil sincos_quad nil ))
shostak))
(sin_value_neg_TCC1 0
(sin_value_neg_TCC1-1 nil 3262931820
("" (skosimp*) (("" (typepred "xs!1" ) (("" (grind) nil nil )) nil ))
nil )
((real_abs_le_pi2 nonempty-type-eq-decl nil asin nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(pi const-decl "posreal" atan 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 )
(- const-decl "[numfield -> numfield]" number_fields nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(numfield nonempty-type-eq-decl nil number_fields 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 )
(Integral const-decl "real" integral_def "analysis/" )
(atan_value const-decl "real" atan nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(minus_real_is_real application-judgement "real" reals 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 )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil ))
shostak))
(sin_value_neg 0
(sin_value_neg-1 nil 3262931930
("" (skolem 1 ("z" ))
(("" (expand "sin_value" )
(("" (lemma "asin_bij" )
(("" (expand "bijective?" )
(("" (flatten)
(("" (expand "injective?" )
(("" (inst - "inverse(asin)(-z)" "-inverse(asin)(z)" )
(("1" (rewrite "asin_neg" -1)
(("1" (lemma "asin_bij" )
(("1" (lemma "comp_inverse_right" ("f" "asin" ))
(("1" (inst-cp - "z" )
(("1" (inst - "-z" )
(("1" (replace -1)
(("1" (replace -2) (("1" (propax) nil nil ))
nil ))
nil )
("2" (typepred "z" )
(("2" (hide-all-but (-1 1))
(("2"
(expand "abs" )
(("2"
(lemma "trichotomy" ("x" "z" ))
(("2"
(split -1)
(("1" (assert ) nil nil )
("2" (assert ) nil nil )
("3" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (propax) nil nil ))
nil ))
nil ))
nil )
("2" (hide 2)
(("2" (typepred "z" )
(("2"
(typepred
"inverse[real_abs_le1, real_abs_le_pi2](asin)(z)" )
(("2" (expand "abs" (-1 1))
(("2"
(lemma "trichotomy"
("x"
"inverse[real_abs_le1, real_abs_le_pi2](asin)(z)" ))
(("2" (split -1)
(("1" (assert ) nil nil )
("2" (assert ) nil nil )
("3" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("3" (hide -1 2)
(("3" (typepred "z" )
(("3" (rewrite "abs_neg" ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((sin_value const-decl "[real_abs_le_pi2 -> real_abs_le1]"
sincos_quad nil )
(bijective? const-decl "bool" functions nil )
(injective? const-decl "bool" functions nil )
(real_gt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(minus_odd_is_odd application-judgement "odd_int" integers nil )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(trichotomy formula-decl nil real_axioms nil )
(NOT const-decl "[bool -> bool]" booleans nil )
(asin_neg formula-decl nil asin nil )
(comp_inverse_right formula-decl nil function_inverse nil )
(boolean nonempty-type-decl nil booleans nil )
(bool nonempty-type-eq-decl nil booleans nil )
(AND const-decl "[bool, 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 )
(numfield nonempty-type-eq-decl nil number_fields nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(real_abs_le1 nonempty-type-eq-decl nil asin nil )
(/= const-decl "boolean" notequal nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(>= const-decl "bool" reals 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 )
(pi const-decl "posreal" atan nil )
(real_abs_le_pi2 nonempty-type-eq-decl nil asin nil )
(inverse const-decl "D" function_inverse nil )
(asin const-decl "real_abs_le_pi2" asin nil )
(z skolem-const-decl "real_abs_le_pi2" sincos_quad nil )
(minus_real_is_real application-judgement "real" reals nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(asin_bij formula-decl nil asin nil )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil ))
shostak))
(cos_value_neg_TCC1 0
(cos_value_neg_TCC1-1 nil 3262931846
("" (skosimp*) (("" (typepred "xc!1" ) (("" (assert ) nil nil )) nil ))
nil )
((nnreal_le_pi nonempty-type-eq-decl nil acos nil )
(pi const-decl "posreal" atan 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 )
(nnreal type-eq-decl nil real_types 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_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 )
(real_minus_real_is_real application-judgement "real" reals nil ))
shostak))
(cos_value_neg 0
(cos_value_neg-1 nil 3262936217
("" (skolem 1 ("z" ))
(("" (typepred "z" )
(("" (typepred "cos_value(z)" )
(("" (lemma "acos_bij" )
(("" (expand "bijective?" )
(("" (expand "injective?" )
(("" (flatten)
(("" (inst - "cos_value(pi - z)" "-cos_value(z)" )
(("1" (expand "cos_value" (-1 1))
(("1" (rewrite "acos_neg" -1)
(("1" (lemma "acos_bij" )
(("1"
(lemma
"comp_inverse_right[real_abs_le1, nnreal_le_pi]"
("f" "acos" "y" "pi-z" ))
(("1" (replace -1)
(("1"
(lemma
"comp_inverse_right[real_abs_le1, nnreal_le_pi]"
("f" "acos" "y" "z" ))
(("1"
(replace -1)
(("1" (propax) nil nil ))
nil ))
nil ))
nil )
("2" (propax) nil nil ))
nil ))
nil ))
nil ))
nil )
("2" (mult-by -2 "-1" -)
(("2" (mult-by -3 "-1" -) (("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((nnreal_le_pi nonempty-type-eq-decl nil acos nil )
(pi const-decl "posreal" atan 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 )
(nnreal type-eq-decl nil real_types 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 )
(acos_bij formula-decl nil acos nil )
(injective? const-decl "bool" functions 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 )
(minus_real_is_real application-judgement "real" reals nil )
(real_minus_real_is_real application-judgement "real" reals nil )
(z skolem-const-decl "nnreal_le_pi" sincos_quad nil )
(- const-decl "[numfield, numfield -> numfield]" number_fields nil )
(acos const-decl "nnreal_le_pi" acos nil )
(inverse const-decl "D" function_inverse nil )
(acos_neg formula-decl nil acos nil )
(comp_inverse_right formula-decl nil function_inverse nil )
(odd_times_odd_is_odd application-judgement "odd_int" integers nil )
(mult_divides1 application-judgement "(divides(n))" divides nil )
(mult_divides2 application-judgement "(divides(m))" divides nil )
(real_times_real_is_real application-judgement "real" reals nil )
(nonpos_real nonempty-type-eq-decl nil real_types nil )
(both_sides_times_neg_le1_imp formula-decl nil extra_real_props
nil )
(minus_odd_is_odd application-judgement "odd_int" integers nil )
(bijective? const-decl "bool" functions nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(real_abs_le1 nonempty-type-eq-decl nil asin nil )
(cos_value const-decl "[nnreal_le_pi -> real_abs_le1]" sincos_quad
nil ))
shostak))
(sin_eqv_cos_value_TCC1 0
(sin_eqv_cos_value_TCC1-1 nil 3262931867
("" (skosimp*)
(("" (typepred "xs!1" )
(("" (expand "abs" )
(("" (case "xs!1<0" )
(("1" (assert ) nil nil ) ("2" (assert ) nil nil )) nil ))
nil ))
nil ))
nil )
((real_abs_le_pi2 nonempty-type-eq-decl nil asin nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(pi const-decl "posreal" atan 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 )
(- const-decl "[numfield -> numfield]" number_fields nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(numfield nonempty-type-eq-decl nil number_fields 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_plus_real_is_real application-judgement "real" reals nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types 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 )
(< const-decl "bool" reals nil )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil ))
shostak))
(sin_eqv_cos_value 0
(sin_eqv_cos_value-1 nil 3262933457
("" (skolem 1 ("z" ))
(("" (typepred "z" )
(("" (typepred "cos_value(pi / 2 + z)" )
(("1" (expand "cos_value" )
(("1" (expand "sin_value" )
(("1" (lemma "acos_bij" )
(("1" (expand "bijective?" )
(("1" (flatten)
(("1" (expand "injective?" )
(("1"
(inst - "inverse(asin)(z)"
"-inverse(acos)(pi / 2 + z)" )
(("1" (split -1)
(("1" (propax) nil nil )
("2" (hide 2)
(("2" (rewrite "acos_neg" 1)
(("2" (lemma "acos_bij" )
(("2"
(lemma
"comp_inverse_right[real_abs_le1, nnreal_le_pi]"
("f" "acos" "y" "pi/2+z" ))
(("1"
(replace -1)
(("1"
(lemma "asin_bij" )
(("1"
(expand "acos" 1)
(("1"
(lemma
"comp_inverse_right"
("f" "asin" "y" "z" ))
(("1"
(replace -1)
(("1" (assert ) nil nil ))
nil )
("2" (propax) nil nil ))
nil ))
nil ))
nil ))
nil )
("2" (propax) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (expand "abs" -3)
(("2" (lift-if)
(("2" (lemma "abs_neg" )
(("2" (inst?)
(("1" (assert ) nil nil )
("2"
(assert )
(("2" (ground) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("3" (assert )
(("3" (expand "abs" -3)
(("3" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide 2)
(("2" (expand "abs" )
(("2" (case "z<0" )
(("1" (assert ) (("1" (assert ) nil nil )) nil )
("2" (assert ) (("2" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((real_abs_le_pi2 nonempty-type-eq-decl nil asin nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(pi const-decl "posreal" atan 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 )
(- const-decl "[numfield -> numfield]" number_fields nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(numfield nonempty-type-eq-decl nil number_fields 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 )
(acos_bij formula-decl nil acos nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(minus_real_is_real application-judgement "real" reals nil )
(inverse const-decl "D" function_inverse nil )
(acos const-decl "nnreal_le_pi" acos nil )
(z skolem-const-decl "real_abs_le_pi2" sincos_quad nil )
(asin const-decl "real_abs_le_pi2" asin nil )
(nzreal_times_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(asin_bij formula-decl nil asin nil )
(comp_inverse_right formula-decl nil function_inverse nil )
(real_minus_real_is_real application-judgement "real" reals nil )
(acos_neg formula-decl nil acos nil )
(minus_odd_is_odd application-judgement "odd_int" integers nil )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(abs_neg formula-decl nil abs_lems "reals/" )
(injective? const-decl "bool" functions nil )
(bijective? const-decl "bool" functions nil )
(sin_value const-decl "[real_abs_le_pi2 -> real_abs_le1]"
sincos_quad nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(real_plus_real_is_real application-judgement "real" reals nil )
(nnreal type-eq-decl nil real_types nil )
(nnreal_le_pi nonempty-type-eq-decl nil acos nil )
(real_abs_le1 nonempty-type-eq-decl nil asin nil )
(cos_value const-decl "[nnreal_le_pi -> real_abs_le1]" sincos_quad
nil )
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil ))
shostak))
(sin_eqv_cos_quad_TCC1 0
(sin_eqv_cos_quad_TCC1-1 nil 3264746830
("" (skosimp*) (("" (assert ) nil nil )) nil )
((minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil ))
shostak))
(sin_eqv_cos_quad_TCC2 0
(sin_eqv_cos_quad_TCC2-1 nil 3264746830
("" (skosimp*) (("" (assert ) nil nil )) nil )
((posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(real_minus_real_is_real application-judgement "real" reals nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil ))
shostak))
(sin_eqv_cos_quad 0
(sin_eqv_cos_quad-1 nil 3264746643
("" (skosimp*)
(("" (lemma "sin_eqv_cos_value" ("xs" "q1!1" ))
(("1" (replace -1)
(("1" (lemma "cos_value_neg" ("xc" "pi/2-q1!1" ))
(("1" (assert ) nil nil )) nil ))
nil )
("2" (expand "abs" ) (("2" (assert ) nil nil )) nil ))
nil ))
nil )
((nnreal_quad1_closed nonempty-type-eq-decl nil sincos_quad nil )
(nnreal type-eq-decl nil real_types nil )
(real_abs_le_pi2 nonempty-type-eq-decl nil asin nil )
(pi const-decl "posreal" atan 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 )
(- const-decl "[numfield -> numfield]" number_fields nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(<= const-decl "bool" reals nil )
(AND const-decl "[bool, bool -> bool]" booleans 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 )
(sin_eqv_cos_value formula-decl nil sincos_quad nil )
(real_minus_real_is_real application-judgement "real" reals nil )
(cos_value_neg formula-decl nil sincos_quad nil )
(nnreal_le_pi nonempty-type-eq-decl nil acos nil )
(- const-decl "[numfield, numfield -> numfield]" number_fields nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(minus_real_is_real application-judgement "real" reals nil )
(posreal_plus_nnreal_is_posreal application-judgement "posreal"
real_types nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil ))
shostak))
(cos_eqv_sin_quad_TCC1 0
(cos_eqv_sin_quad_TCC1-1 nil 3264746830
("" (skosimp*) (("" (assert ) nil nil )) nil )
((real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil ))
shostak))
(cos_eqv_sin_quad_TCC2 0
(cos_eqv_sin_quad_TCC2-1 nil 3264746830
("" (skosimp*) (("" (assert ) nil nil )) nil )
((posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(real_minus_real_is_real application-judgement "real" reals nil )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil ))
shostak))
(cos_eqv_sin_quad 0
(cos_eqv_sin_quad-1 nil 3264746754
("" (skosimp*)
(("" (lemma "sin_eqv_cos_quad" ("q1" "pi/2-q1!1" ))
(("" (assert ) nil nil )) nil ))
nil )
((- const-decl "[numfield, numfield -> numfield]" number_fields nil )
(nnreal_quad1_closed nonempty-type-eq-decl nil sincos_quad nil )
(pi const-decl "posreal" atan 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 "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(<= const-decl "bool" reals nil )
(nnreal 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 )
(sin_eqv_cos_quad formula-decl nil sincos_quad nil )
(real_minus_real_is_real application-judgement "real" reals nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(AND const-decl "[bool, bool -> bool]" booleans nil ))
shostak))
(sin_value_minus_pi2_TCC1 0
(sin_value_minus_pi2_TCC1-1 nil 3262955945
("" (expand "abs" )
(("" (typepred "pi" ) (("" (assert ) nil nil )) nil )) nil )
((minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(real_le_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 )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props 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 )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(> const-decl "bool" reals nil )
(posreal nonempty-type-eq-decl nil real_types nil )
(pi const-decl "posreal" atan nil ))
shostak))
(sin_value_minus_pi2 0
(sin_value_minus_pi2-1 nil 3262955592
("" (lemma "asin_bij" )
(("" (expand "sin_value" )
(("" (lemma "asin_minus1" )
((""
(lemma "bijective_inverse[real_abs_le1, real_abs_le_pi2]"
("f" "asin" "y" "-pi/2" "x" "-1" ))
(("1" (assert ) nil nil ) ("2" (propax) nil nil )
("3" (expand "abs" 1) (("3" (assert ) nil nil )) nil )
("4" (expand "abs" 1) (("4" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil )
((sin_value const-decl "[real_abs_le_pi2 -> real_abs_le1]"
sincos_quad nil )
(real_abs_le_pi2 nonempty-type-eq-decl nil asin nil )
(pi const-decl "posreal" atan 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 )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(real_abs_le1 nonempty-type-eq-decl nil asin nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(<= const-decl "bool" reals nil )
(AND const-decl "[bool, bool -> bool]" booleans 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 )
(asin const-decl "real_abs_le_pi2" asin nil )
(bijective? const-decl "bool" functions nil )
(bijective_inverse formula-decl nil function_inverse nil )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(minus_odd_is_odd application-judgement "odd_int" integers nil )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil )
(asin_minus1 formula-decl nil asin nil )
(asin_bij formula-decl nil asin nil ))
shostak))
(sin_value_0_TCC1 0
(sin_value_0_TCC1-1 nil 3262955946
("" (assert ) (("" (assert ) nil nil )) nil )
((real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil ))
shostak))
(sin_value_0 0
(sin_value_0-1 nil 3262955772
("" (expand "sin_value" )
(("" (lemma "asin_0" )
(("" (lemma "asin_bij" )
((""
(lemma "bijective_inverse[real_abs_le1, real_abs_le_pi2]"
("f" "asin" "y" "0" "x" "0" ))
(("1" (assert ) nil nil ) ("2" (propax) nil nil )
("3" (expand "abs" ) (("3" (assert ) nil nil )) nil )
("4" (expand "abs" ) (("4" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil )
((asin_0 formula-decl nil asin nil )
(real_abs_le_pi2 nonempty-type-eq-decl nil asin nil )
(pi const-decl "posreal" atan 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 )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(real_abs_le1 nonempty-type-eq-decl nil asin nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(<= const-decl "bool" reals nil )
(AND const-decl "[bool, bool -> bool]" booleans 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 )
(asin const-decl "real_abs_le_pi2" asin nil )
(bijective? const-decl "bool" functions nil )
(bijective_inverse formula-decl nil function_inverse nil )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil )
(asin_bij formula-decl nil asin nil )
(sin_value const-decl "[real_abs_le_pi2 -> real_abs_le1]"
sincos_quad nil ))
shostak))
(sin_value_pi4_TCC1 0
(sin_value_pi4_TCC1-1 nil 3264489358
("" (expand "abs" )
(("" (typepred "pi" ) (("" (assert ) nil nil )) nil )) nil )
((posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(real_le_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 )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props 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 )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(> const-decl "bool" reals nil )
(posreal nonempty-type-eq-decl nil real_types nil )
(pi const-decl "posreal" atan nil ))
shostak))
(sin_value_pi4 0
(sin_value_pi4-1 nil 3264488902
("" (lemma "asin_sqrt_half" )
(("" (lemma "asin_bij" )
(("" (expand "sin_value" )
((""
(lemma "bijective_inverse[real_abs_le1, real_abs_le_pi2]"
("f" "asin" "y" "pi/4" "x" "sqrt(1/2)" ))
(("1" (assert ) nil nil ) ("2" (propax) nil nil )
("3" (expand "abs" 1)
(("3" (typepred "pi" ) (("3" (assert ) nil nil )) nil )) nil )
("4" (expand "abs" )
(("4" (typepred "sqrt(1/2)" )
(("4" (assert )
(("4" (lemma "sqrt_le" ("nny" "1/2" "nnz" "1" ))
(("4" (rewrite "sqrt_1" ) (("4" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((asin_bij formula-decl nil asin nil )
(real_abs_le_pi2 nonempty-type-eq-decl nil asin nil )
(pi const-decl "posreal" atan 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 )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(real_abs_le1 nonempty-type-eq-decl nil asin nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(<= const-decl "bool" reals nil )
(AND const-decl "[bool, bool -> bool]" booleans 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 )
(asin const-decl "real_abs_le_pi2" asin nil )
(bijective? const-decl "bool" functions nil )
(sqrt const-decl "{nnz: nnreal | nnz * nnz = nnx}" sqrt "reals/" )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(= const-decl "[T, T -> boolean]" equalities nil )
(nnreal type-eq-decl nil real_types nil )
(bijective_inverse formula-decl nil function_inverse nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(sqrt_pos application-judgement "posreal" sqrt "reals/" )
(posrat_div_posrat_is_posrat application-judgement "posrat"
rationals nil )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil )
(sin_value const-decl "[real_abs_le_pi2 -> real_abs_le1]"
sincos_quad nil )
(asin_sqrt_half formula-decl nil asin nil ))
shostak))
(sin_value_pi2_TCC1 0
(sin_value_pi2_TCC1-1 nil 3262955946
("" (expand "abs" )
(("" (typepred "pi" ) (("" (assert ) nil nil )) nil )) nil )
((posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(real_le_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 )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props 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 )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(> const-decl "bool" reals nil )
(posreal nonempty-type-eq-decl nil real_types nil )
(pi const-decl "posreal" atan nil ))
shostak))
(sin_value_pi2 0
(sin_value_pi2-1 nil 3262955846
("" (lemma "sin_value_minus_pi2" )
(("" (lemma "sin_value_neg" ("xs" "pi/2" ))
(("1" (assert ) nil nil )
("2" (expand "abs" ) (("2" (assert ) nil nil )) nil ))
nil ))
nil )
((real_abs_le_pi2 nonempty-type-eq-decl nil asin nil )
(pi const-decl "posreal" atan 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 )
(- const-decl "[numfield -> numfield]" number_fields nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(<= const-decl "bool" reals nil )
(AND const-decl "[bool, bool -> bool]" booleans 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 )
(sin_value_neg formula-decl nil sincos_quad nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil )
(minus_real_is_real application-judgement "real" reals nil )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(minus_odd_is_odd application-judgement "odd_int" integers nil )
(sin_value_minus_pi2 formula-decl nil sincos_quad nil ))
shostak))
(cos_value_0_TCC1 0
(cos_value_0_TCC1-1 nil 3263491071
("" (typepred "pi" ) (("" (assert ) nil nil )) nil )
((real_le_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 )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props 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 )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(> const-decl "bool" reals nil )
(posreal nonempty-type-eq-decl nil real_types nil )
(pi const-decl "posreal" atan nil ))
shostak))
(cos_value_0 0
(cos_value_0-1 nil 3263494043
("" (expand "cos_value" )
(("" (lemma "acos_1" )
(("" (lemma "acos_bij" )
((""
(lemma "bijective_inverse[real_abs_le1, nnreal_le_pi]"
("f" "acos" "x" "1" "y" "0" ))
(("1" (assert ) nil nil ) ("2" (propax) nil nil )
("3" (assert ) nil nil )
("4" (expand "abs" 1) (("4" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil )
((acos_1 formula-decl nil acos nil )
(nnreal_le_pi nonempty-type-eq-decl nil acos nil )
(pi const-decl "posreal" atan 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 )
(nnreal type-eq-decl nil real_types nil )
(>= const-decl "bool" reals nil )
(real_abs_le1 nonempty-type-eq-decl nil asin nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(<= const-decl "bool" reals nil )
(AND const-decl "[bool, bool -> bool]" booleans 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 )
(acos const-decl "nnreal_le_pi" acos nil )
(bijective? const-decl "bool" functions nil )
(bijective_inverse formula-decl nil function_inverse nil )
(acos_bij formula-decl nil acos nil )
(cos_value const-decl "[nnreal_le_pi -> real_abs_le1]" sincos_quad
nil ))
shostak))
(cos_value_pi4_TCC1 0
(cos_value_pi4_TCC1-1 nil 3264489379 ("" (assert ) nil nil )
((real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil ))
shostak))
(cos_value_pi4 0
(cos_value_pi4-1 nil 3264489141
("" (lemma "sin_value_pi4" )
(("" (rewrite "sin_eqv_cos_value" )
(("1" (lemma "cos_value_neg" ("xc" "pi/4" ))
(("1" (assert ) nil nil )) nil )
("2" (expand "abs" ) (("2" (assert ) nil nil )) nil ))
nil ))
nil )
((posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(sin_eqv_cos_value formula-decl nil sincos_quad 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 )
(bool nonempty-type-eq-decl nil booleans nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(<= const-decl "bool" reals nil )
(numfield nonempty-type-eq-decl nil 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 )
(- const-decl "[numfield -> numfield]" number_fields nil )
(>= const-decl "bool" reals 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 )
(pi const-decl "posreal" atan nil )
(real_abs_le_pi2 nonempty-type-eq-decl nil asin nil )
(posreal_plus_nnreal_is_posreal application-judgement "posreal"
real_types nil )
(minus_real_is_real application-judgement "real" reals nil )
(posrat_div_posrat_is_posrat application-judgement "posrat"
rationals nil )
(sqrt_pos application-judgement "posreal" sqrt "reals/" )
(real_minus_real_is_real application-judgement "real" reals nil )
(nnreal_le_pi nonempty-type-eq-decl nil acos nil )
(nnreal type-eq-decl nil real_types nil )
(cos_value_neg formula-decl nil sincos_quad nil )
(sin_value_pi4 formula-decl nil sincos_quad nil ))
shostak))
(cos_value_pi2_TCC1 0
(cos_value_pi2_TCC1-1 nil 3263491071
("" (typepred "pi" ) (("" (assert ) nil nil )) nil )
((posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(real_le_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 )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props 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 )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(> const-decl "bool" reals nil )
(posreal nonempty-type-eq-decl nil real_types nil )
(pi const-decl "posreal" atan nil ))
shostak))
(cos_value_pi2 0
(cos_value_pi2-1 nil 3263494185
("" (expand "cos_value" )
(("" (lemma "acos_bij" )
(("" (lemma "acos_0" )
((""
(lemma "bijective_inverse[real_abs_le1, nnreal_le_pi]"
("f" "acos" "x" "0" "y" "pi/2" ))
(("1" (assert ) nil nil ) ("2" (propax) nil nil )
("3" (assert ) nil nil )
("4" (expand "abs" 1) (("4" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil )
((acos_bij formula-decl nil acos nil )
(nnreal_le_pi nonempty-type-eq-decl nil acos nil )
(pi const-decl "posreal" atan 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 )
(nnreal type-eq-decl nil real_types nil )
(>= const-decl "bool" reals nil )
(real_abs_le1 nonempty-type-eq-decl nil asin nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(<= const-decl "bool" reals nil )
(AND const-decl "[bool, bool -> bool]" booleans 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 )
(acos const-decl "nnreal_le_pi" acos nil )
(bijective? const-decl "bool" functions nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(bijective_inverse formula-decl nil function_inverse nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(acos_0 formula-decl nil acos nil )
(cos_value const-decl "[nnreal_le_pi -> real_abs_le1]" sincos_quad
nil ))
shostak))
(cos_value_pi_TCC1 0
(cos_value_pi_TCC1-1 nil 3263491071 ("" (assert ) nil nil )
((real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil ))
shostak))
(cos_value_pi 0
(cos_value_pi-1 nil 3263494263
("" (expand "cos_value" )
(("" (lemma "acos_bij" )
(("" (lemma "acos_minus1" )
((""
(lemma "bijective_inverse[real_abs_le1, nnreal_le_pi]"
("f" "acos" "x" "-1" "y" "pi" ))
(("1" (assert ) nil nil ) ("2" (propax) nil nil )
("3" (expand "abs" 1) (("3" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil )
((acos_bij formula-decl nil acos nil )
(nnreal_le_pi nonempty-type-eq-decl nil acos nil )
(pi const-decl "posreal" atan 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 )
(nnreal type-eq-decl nil real_types nil )
(>= const-decl "bool" reals nil )
(real_abs_le1 nonempty-type-eq-decl nil asin nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(<= const-decl "bool" reals nil )
(AND const-decl "[bool, bool -> bool]" booleans 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 )
(acos const-decl "nnreal_le_pi" acos nil )
(bijective? const-decl "bool" functions nil )
(bijective_inverse formula-decl nil function_inverse nil )
(minus_odd_is_odd application-judgement "odd_int" integers nil )
(acos_minus1 formula-decl nil acos nil )
(cos_value const-decl "[nnreal_le_pi -> real_abs_le1]" sincos_quad
nil ))
shostak))
(asin_sin_value 0
(asin_sin_value-1 nil 3264482284
("" (skosimp*)
(("" (typepred "xs!1" )
(("" (lemma "asin_bij" )
(("" (expand "sin_value" )
((""
(lemma "comp_inverse_right[real_abs_le1, real_abs_le_pi2]"
("f" "asin" "y" "xs!1" ))
(("1" (propax) nil nil ) ("2" (propax) nil nil )) nil ))
nil ))
nil ))
nil ))
nil )
((real_abs_le_pi2 nonempty-type-eq-decl nil asin nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(pi const-decl "posreal" atan 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 )
(- const-decl "[numfield -> numfield]" number_fields nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(numfield nonempty-type-eq-decl nil number_fields 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 )
(sin_value const-decl "[real_abs_le_pi2 -> real_abs_le1]"
sincos_quad nil )
(comp_inverse_right formula-decl nil function_inverse nil )
(bijective? const-decl "bool" functions nil )
(asin const-decl "real_abs_le_pi2" asin nil )
(real_abs_le1 nonempty-type-eq-decl nil asin nil )
(asin_bij formula-decl nil asin nil )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil ))
shostak))
(acos_cos_value 0
(acos_cos_value-1 nil 3264482358
("" (skosimp*)
(("" (typepred "xc!1" )
(("" (expand "cos_value" )
((""
(lemma "comp_inverse_right[real_abs_le1, nnreal_le_pi]"
("f" "acos" "y" "xc!1" ))
(("1" (propax) nil nil )
("2" (lemma "acos_bij" ) (("2" (propax) nil nil )) nil ))
nil ))
nil ))
nil ))
nil )
((nnreal_le_pi nonempty-type-eq-decl nil acos nil )
(pi const-decl "posreal" atan 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 )
(nnreal type-eq-decl nil real_types 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_abs_le1 nonempty-type-eq-decl nil asin 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 )
(acos const-decl "nnreal_le_pi" acos nil )
(bijective? const-decl "bool" functions nil )
(comp_inverse_right formula-decl nil function_inverse nil )
(acos_bij formula-decl nil acos nil )
(cos_value const-decl "[nnreal_le_pi -> real_abs_le1]" sincos_quad
nil ))
shostak))
(sin_value_asin 0
(sin_value_asin-1 nil 3264482754
("" (skosimp*)
(("" (typepred "xa!1" )
(("" (lemma "asin_bij" )
((""
(lemma "comp_inverse_left[real_abs_le1, real_abs_le_pi2]"
("f" "asin" "x" "xa!1" ))
(("1" (expand "sin_value" ) (("1" (propax) nil nil )) nil )
("2" (propax) nil nil ))
nil ))
nil ))
nil ))
nil )
((real_abs_le1 nonempty-type-eq-decl nil asin nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields 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_abs_le_pi2 nonempty-type-eq-decl nil asin nil )
(pi const-decl "posreal" atan 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 )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(asin const-decl "real_abs_le_pi2" asin nil )
(bijective? const-decl "bool" functions nil )
(comp_inverse_left formula-decl nil function_inverse nil )
(sin_value const-decl "[real_abs_le_pi2 -> real_abs_le1]"
sincos_quad nil )
(asin_bij formula-decl nil asin nil ))
shostak))
(cos_value_acos 0
(cos_value_acos-1 nil 3264482826
("" (skosimp*)
(("" (expand "cos_value" )
(("" (lemma "acos_bij" )
(("" (typepred "xa!1" )
((""
(lemma "comp_inverse_left[real_abs_le1, nnreal_le_pi]"
("f" "acos" "x" "xa!1" ))
(("1" (propax) nil nil ) ("2" (propax) nil nil )) nil ))
nil ))
nil ))
nil ))
nil )
((cos_value const-decl "[nnreal_le_pi -> real_abs_le1]" sincos_quad
nil )
(real_abs_le1 nonempty-type-eq-decl nil asin nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields 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 )
(comp_inverse_left formula-decl nil function_inverse nil )
(bijective? const-decl "bool" functions nil )
(acos const-decl "nnreal_le_pi" acos nil )
(>= const-decl "bool" reals nil )
(nnreal type-eq-decl nil real_types 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 )
(pi const-decl "posreal" atan nil )
(nnreal_le_pi nonempty-type-eq-decl nil acos nil )
(acos_bij formula-decl nil acos nil ))
shostak))
(sin2_cos2_value 0
(sin2_cos2_value-1 nil 3264360037
("" (skolem 1 ("z1" ))
(("" (typepred "z1" )
(("" (lemma "cos_value_decreasing" )
(("" (lemma "sin_value_increasing" )
(("" (expand "increasing?" )
(("" (expand "decreasing?" )
(("" (inst-cp - "0" "z1" )
(("" (inst - "z1" "pi/2" )
(("" (inst-cp - "0" "z1" )
(("" (inst - "z1" "pi/2" )
(("" (assert )
(("" (rewrite "sin_value_0" )
(("" (rewrite "sin_value_pi2" )
(("" (rewrite "cos_value_0" )
((""
(rewrite "cos_value_pi2" )
((""
(lemma
"acos_sum"
("nnx"
"cos_value(z1)"
"nny"
"sin_value(z1)" ))
(("1"
(rewrite "acos_cos_value" -1)
(("1"
(lemma
"sin_eqv_cos_value"
("xs" "z1" ))
(("1"
(case
"acos(sin_value(z1)) = pi/2 - z1" )
(("1"
(replace -1 -3)
(("1"
(hide -1 -2)
(("1"
(lemma "acos_bij" )
(("1"
(expand "bijective?" )
(("1"
(expand "injective?" )
(("1"
(flatten -1)
(("1"
(inst
-
"0"
"cos_value(z1) * sin_value(z1) -
(sqrt(1 - sq(sin_value(z1)))) * (sqrt(1 - sq(cos_value(z1))))")
(("1"
(rewrite
"acos_0" )
(("1"
(replace
-3
-1)
(("1"
(lemma
"sq_eq"
("nna"
"cos_value(z1) * sin_value(z1)"
"nnb"
"(sqrt(1 - sq(sin_value(z1)))) * (sqrt(1 - sq(cos_value(z1))))" ))
(("1"
(lemma
"sqrt_times"
("nny"
"1 - sq(sin_value(z1))"
"nnz"
"1 - sq(cos_value(z1))" ))
(("1"
(replace
-1
*
rl)
(("1"
(hide
-1)
(("1"
(rewrite
"sq_sqrt"
-1)
(("1"
(assert )
(("1"
(hide
-2
-4)
(("1"
(lemma
"both_sides_plus1"
("x"
"sq(cos_value(z1) * sin_value(z1))"
"y"
"1 - sq(cos_value(z1)) +
sq(cos_value(z1)) * sq(sin_value(z1)) - sq(sin_value(z1))"
"z"
"sq(cos_value(z1)) + sq(sin_value(z1)) - sq(cos_value(z1)) * sq(sin_value(z1))" ))
(("1"
(replace
-1
-2
rl)
(("1"
(hide
-1)
(("1"
(rewrite
"sq_times"
-1)
(("1"
(simplify
-1)
(("1"
(propax)
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(hide 2)
(("2"
(lemma
"sq_le"
("nna"
"cos_value(z1)"
"nnb"
"1" ))
(("2"
(rewrite
"sq_1" )
(("2"
(assert )
nil
nil ))
nil ))
nil ))
nil )
("3"
(lemma
"sq_le"
("nna"
"sin_value(z1)"
"nnb"
"1" ))
(("3"
(rewrite
"sq_1" )
(("3"
(assert )
nil
nil ))
nil ))
nil )
("4"
(lemma
"le_times_le_pos"
("nnx"
"0"
"y"
"cos_value(z1)"
"nnz"
"0"
"w"
"sin_value(z1)" ))
(("4"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(hide -1 -2 2)
(("2"
(lemma
"le_times_le_pos"
("nnx"
"0"
"y"
"cos_value(z1)"
"nnz"
"0"
"w"
"sin_value(z1)" ))
(("2"
(assert )
(("2"
(lemma
"le_times_le_pos"
("nnx"
"cos_value(z1)"
"y"
"1"
"nnz"
"sin_value(z1)"
"w"
"1" ))
(("2"
(assert )
(("2"
(lemma
"sq_le_abs"
("a"
"sin_value(z1)"
"b"
"1" ))
(("2"
(lemma
"sq_le_abs"
("a"
"cos_value(z1)"
"b"
"1" ))
(("2"
(expand
"abs"
-1
2)
(("2"
(expand
"abs"
-2
2)
(("2"
(rewrite
"sq_1" )
(("2"
(typepred
"sq(sin_value(z1))" )
(("2"
(typepred
"sq(cos_value(z1))" )
(("2"
(typepred
"sqrt(1 - sq(sin_value(z1)))" )
(("1"
(hide
-2
-4)
(("1"
(lemma
"sqrt_le"
("nny"
"1 - sq(sin_value(z1))"
"nnz"
"1" ))
(("1"
(rewrite
"sqrt_1" )
(("1"
(assert )
(("1"
(expand
"abs" )
(("1"
(propax)
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(assert )
(("2"
(expand
"abs" )
(("2"
(propax)
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("3"
(lemma
"sq_le"
("nna"
"cos_value(z1)"
"nnb"
"1" ))
(("3"
(rewrite
"sq_1" )
(("3"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(hide -2 2)
(("2"
(replace -1 1)
(("2"
(rewrite "acos_neg" 1)
(("2"
(rewrite
"acos_cos_value"
1)
(("2"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (assert ) nil nil )
("3" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((nnreal_quad1_closed nonempty-type-eq-decl nil sincos_quad nil )
(pi const-decl "posreal" atan 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 "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(<= const-decl "bool" reals nil )
(nnreal type-eq-decl nil real_types 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 )
(sin_value_increasing formula-decl nil sincos_quad nil )
(decreasing? const-decl "bool" real_fun_preds "reals/" )
(sin_value_0 formula-decl nil sincos_quad nil )
(cos_value_0 formula-decl nil sincos_quad nil )
(acos_sum formula-decl nil acos nil )
(real_abs_le1 nonempty-type-eq-decl nil asin nil )
(cos_value const-decl "[nnreal_le_pi -> real_abs_le1]" sincos_quad
nil )
(sin_value const-decl "[real_abs_le_pi2 -> real_abs_le1]"
sincos_quad nil )
(sin_eqv_cos_value formula-decl nil sincos_quad nil )
(acos_neg formula-decl nil acos nil )
(posreal_plus_nnreal_is_posreal application-judgement "posreal"
real_types nil )
(acos_bij formula-decl nil acos nil )
(injective? const-decl "bool" functions nil )
(sq const-decl "nonneg_real" sq "reals/" )
(z1 skolem-const-decl "nnreal_quad1_closed" sincos_quad nil )
(sqrt const-decl "{nnz: nnreal | nnz * nnz = nnx}" sqrt "reals/" )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(minus_odd_is_odd application-judgement "odd_int" integers nil )
(le_times_le_pos formula-decl nil real_props nil )
(sq_1 formula-decl nil sq "reals/" )
(sq_le formula-decl nil sq "reals/" )
(sqrt_times formula-decl nil sqrt "reals/" )
(real_plus_real_is_real application-judgement "real" reals nil )
(both_sides_plus1 formula-decl nil real_props nil )
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil )
(sq_times formula-decl nil sq "reals/" )
(sq_sqrt formula-decl nil sqrt "reals/" )
(sq_eq formula-decl nil sq "reals/" )
(acos_0 formula-decl nil acos nil )
(sq_le_abs formula-decl nil sq "reals/" )
(abs const-decl "{n: nonneg_real | n >= m AND n >= -m}" real_defs
nil )
(sqrt_1 formula-decl nil sqrt "reals/" )
(sqrt_le formula-decl nil sqrt "reals/" )
(bijective? const-decl "bool" functions nil )
(- const-decl "[numfield, numfield -> numfield]" number_fields nil )
(acos const-decl "nnreal_le_pi" acos nil )
(= const-decl "[T, T -> boolean]" equalities nil )
(real_minus_real_is_real application-judgement "real" reals nil )
(nnreal_times_nnreal_is_nnreal application-judgement "nnreal"
real_types nil )
(real_times_real_is_real application-judgement "real" reals nil )
(acos_cos_value formula-decl nil sincos_quad nil )
(cos_value_pi2 formula-decl nil sincos_quad nil )
(sin_value_pi2 formula-decl nil sincos_quad nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(nnreal_plus_nnreal_is_nnreal application-judgement "nnreal"
real_types nil )
(nnreal_le_pi nonempty-type-eq-decl nil acos nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(real_abs_le_pi2 nonempty-type-eq-decl nil asin nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(increasing? const-decl "bool" real_fun_preds "reals/" )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil )
(cos_value_decreasing formula-decl nil sincos_quad nil ))
shostak))
(sin_eqv_sqrt_cos_value_TCC1 0
(sin_eqv_sqrt_cos_value_TCC1-1 nil 3264487405
("" (skosimp*)
(("" (typepred "q1!1" )
(("" (lemma "cos_value_decreasing" )
(("" (expand "decreasing?" )
(("" (inst-cp - "q1!1" "pi/2" )
(("" (inst - "0" "q1!1" )
(("" (rewrite "cos_value_pi2" )
(("" (rewrite "cos_value_0" )
(("" (assert )
((""
(lemma "sq_le"
("nna" "cos_value(q1!1)" "nnb" "1" ))
(("" (rewrite "sq_1" ) (("" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((nnreal_quad1_closed nonempty-type-eq-decl nil sincos_quad nil )
(pi const-decl "posreal" atan 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 "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(<= const-decl "bool" reals nil )
(nnreal type-eq-decl nil real_types 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 )
(decreasing? const-decl "bool" real_fun_preds "reals/" )
(cos_value_0 formula-decl nil sincos_quad nil )
(sq_le formula-decl nil sq "reals/" )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(real_abs_le1 nonempty-type-eq-decl nil asin nil )
(cos_value const-decl "[nnreal_le_pi -> real_abs_le1]" sincos_quad
nil )
(sq_1 formula-decl nil sq "reals/" )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(real_minus_real_is_real application-judgement "real" reals nil )
(cos_value_pi2 formula-decl nil sincos_quad nil )
(nnreal_le_pi nonempty-type-eq-decl nil acos nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(cos_value_decreasing formula-decl nil sincos_quad nil ))
shostak))
(sin_eqv_sqrt_cos_value 0
(sin_eqv_sqrt_cos_value-1 nil 3264486534
("" (skosimp*)
(("" (lemma "sin2_cos2_value" ("q1" "q1!1" ))
(("" (typepred "q1!1" )
(("" (lemma "cos_value_decreasing" )
(("" (expand "decreasing?" )
(("" (inst-cp - "0" "q1!1" )
(("" (inst - "q1!1" "pi/2" )
(("" (assert )
(("" (rewrite "cos_value_pi2" )
(("" (rewrite "cos_value_0" )
((""
(lemma "sq_le"
("nna" "cos_value(q1!1)" "nnb" "1" ))
(("1" (rewrite "sq_1" )
(("1" (lemma "sin_value_increasing" )
(("1" (expand "increasing?" )
(("1"
(inst - "0" "q1!1" )
(("1"
(flatten -2)
(("1"
(replace -5 -3)
(("1"
(hide -2)
(("1"
(assert )
(("1"
(rewrite "sin_value_0" )
(("1"
(lemma
"sq_eq"
("nna"
"sin_value(q1!1)"
"nnb"
"sqrt(1 - sq(cos_value(q1!1)))" ))
(("1" (assert ) nil nil )
("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(expand "abs" )
(("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((nnreal_quad1_closed nonempty-type-eq-decl nil sincos_quad nil )
(pi const-decl "posreal" atan 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 "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(<= const-decl "bool" reals nil )
(nnreal 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 )
(sin2_cos2_value formula-decl nil sincos_quad nil )
(cos_value_decreasing formula-decl nil sincos_quad nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(nnreal_le_pi nonempty-type-eq-decl nil acos nil )
(real_minus_real_is_real application-judgement "real" reals nil )
(nnreal_plus_nnreal_is_nnreal application-judgement "nnreal"
real_types nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(cos_value_0 formula-decl nil sincos_quad nil )
(sq_1 formula-decl nil sq "reals/" )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil )
(increasing? const-decl "bool" real_fun_preds "reals/" )
(sin_value_0 formula-decl nil sincos_quad nil )
(sq_sqrt formula-decl nil sqrt "reals/" )
(sq const-decl "nonneg_real" sq "reals/" )
(- const-decl "[numfield, numfield -> numfield]" number_fields nil )
(sqrt const-decl "{nnz: nnreal | nnz * nnz = nnx}" sqrt "reals/" )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(= const-decl "[T, T -> boolean]" equalities nil )
(sin_value const-decl "[real_abs_le_pi2 -> real_abs_le1]"
sincos_quad nil )
(sq_eq formula-decl nil sq "reals/" )
(real_abs_le_pi2 nonempty-type-eq-decl nil asin nil )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(sin_value_increasing formula-decl nil sincos_quad nil )
(cos_value const-decl "[nnreal_le_pi -> real_abs_le1]" sincos_quad
nil )
(real_abs_le1 nonempty-type-eq-decl nil asin nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(sq_le formula-decl nil sq "reals/" )
(cos_value_pi2 formula-decl nil sincos_quad nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(decreasing? const-decl "bool" real_fun_preds "reals/" )
(NOT const-decl "[bool -> bool]" booleans nil ))
shostak))
(cos_eqv_sqrt_sin_value_TCC1 0
(cos_eqv_sqrt_sin_value_TCC1-1 nil 3264487568
("" (skosimp*)
(("" (typepred "q1!1" )
(("" (lemma "sin_value_increasing" )
(("" (expand "increasing?" )
(("" (inst-cp - "0" "q1!1" )
(("1" (inst - "q1!1" "pi/2" )
(("1" (rewrite "sin_value_pi2" )
(("1" (rewrite "sin_value_0" )
(("1" (assert )
(("1"
(lemma "sq_le"
("nna" "sin_value(q1!1)" "nnb" "1" ))
(("1" (rewrite "sq_1" ) (("1" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (expand "abs" ) (("2" (assert ) nil nil )) nil ))
nil )
("2" (expand "abs" ) (("2" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((nnreal_quad1_closed nonempty-type-eq-decl nil sincos_quad nil )
(pi const-decl "posreal" atan 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 "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(<= const-decl "bool" reals nil )
(nnreal type-eq-decl nil real_types 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 )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil )
(increasing? const-decl "bool" real_fun_preds "reals/" )
(sin_value_0 formula-decl nil sincos_quad nil )
(sq_le formula-decl nil sq "reals/" )
(real_abs_le1 nonempty-type-eq-decl nil asin nil )
(sin_value const-decl "[real_abs_le_pi2 -> real_abs_le1]"
sincos_quad nil )
(sq_1 formula-decl nil sq "reals/" )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(real_minus_real_is_real application-judgement "real" reals nil )
(sin_value_pi2 formula-decl nil sincos_quad nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(real_abs_le_pi2 nonempty-type-eq-decl nil asin nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(sin_value_increasing formula-decl nil sincos_quad nil ))
shostak))
(cos_eqv_sqrt_sin_value 0
(cos_eqv_sqrt_sin_value-1 nil 3264486988
("" (skosimp*)
(("" (lemma "sin2_cos2_value" ("q1" "q1!1" ))
(("" (typepred "q1!1" )
(("" (lemma "sin_value_increasing" )
(("" (lemma "cos_value_decreasing" )
(("" (expand "increasing?" )
(("" (inst-cp - "0" "q1!1" )
(("1" (rewrite "sin_value_0" )
(("1" (inst - "q1!1" "pi/2" )
(("1" (assert )
(("1" (rewrite "sin_value_pi2" )
(("1"
(lemma "sq_le"
("nna" "sin_value(q1!1)" "nnb" "1" ))
(("1" (replace -3 -1)
(("1" (rewrite "sq_1" )
(("1"
(flatten -1)
(("1"
(expand "decreasing?" )
(("1"
(inst - "q1!1" "pi/2" )
(("1"
(assert )
(("1"
(rewrite "cos_value_pi2" )
(("1"
(lemma
"sq_eq"
("nna"
"cos_value(q1!1)"
"nnb"
"sqrt(1 - sq(sin_value(q1!1)))" ))
(("1" (assert ) nil nil )
("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (expand "abs" ) (("2" (assert ) nil nil )) nil ))
nil ))
nil )
("2" (expand "abs" ) (("2" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((nnreal_quad1_closed nonempty-type-eq-decl nil sincos_quad nil )
(pi const-decl "posreal" atan 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 "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(<= const-decl "bool" reals nil )
(nnreal 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 )
(sin2_cos2_value formula-decl nil sincos_quad nil )
(sin_value_increasing formula-decl nil sincos_quad nil )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil )
(increasing? const-decl "bool" real_fun_preds "reals/" )
(sin_value_0 formula-decl nil sincos_quad nil )
(real_minus_real_is_real application-judgement "real" reals nil )
(nnreal_plus_nnreal_is_nnreal application-judgement "nnreal"
real_types nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(sq_le formula-decl nil sq "reals/" )
(real_abs_le1 nonempty-type-eq-decl nil asin nil )
(sin_value const-decl "[real_abs_le_pi2 -> real_abs_le1]"
sincos_quad nil )
(sq_1 formula-decl nil sq "reals/" )
(decreasing? const-decl "bool" real_fun_preds "reals/" )
(sq_eq formula-decl nil sq "reals/" )
(cos_value const-decl "[nnreal_le_pi -> real_abs_le1]" sincos_quad
nil )
(= const-decl "[T, T -> boolean]" equalities nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(sqrt const-decl "{nnz: nnreal | nnz * nnz = nnx}" sqrt "reals/" )
(- const-decl "[numfield, numfield -> numfield]" number_fields nil )
(sq const-decl "nonneg_real" sq "reals/" )
(sq_sqrt formula-decl nil sqrt "reals/" )
(cos_value_pi2 formula-decl nil sincos_quad nil )
(nnreal_le_pi nonempty-type-eq-decl nil acos nil )
(sin_value_pi2 formula-decl nil sincos_quad nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(real_abs_le_pi2 nonempty-type-eq-decl nil asin nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(cos_value_decreasing formula-decl nil sincos_quad nil )
(NOT const-decl "[bool -> bool]" booleans nil ))
shostak))
(atan_tan_value_TCC1 0
(atan_tan_value_TCC1-1 nil 3269611572
("" (skosimp*)
(("" (expand "abs" )
(("" (typepred "qo1!1" ) (("" (assert ) nil nil )) nil )) nil ))
nil )
((nnreal_quad1_open nonempty-type-eq-decl nil sincos_quad nil )
(pi const-decl "posreal" atan 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 "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(< const-decl "bool" reals nil )
(nnreal type-eq-decl nil real_types 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_ge_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 )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil ))
shostak))
(atan_tan_value_TCC2 0
(atan_tan_value_TCC2-1 nil 3269611572
("" (skosimp*) (("" (typepred "qo1!1" ) (("" (assert ) nil nil )) nil ))
nil )
((nnreal_quad1_open nonempty-type-eq-decl nil sincos_quad nil )
(pi const-decl "posreal" atan 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 "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(< const-decl "bool" reals nil )
(nnreal type-eq-decl nil real_types 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_ge_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 )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil ))
shostak))
(atan_tan_value_TCC3 0
(atan_tan_value_TCC3-1 nil 3269611572
("" (skosimp*)
(("" (typepred "qo1!1" )
(("" (lemma "cos_value_strict_decreasing" )
(("" (expand "strict_decreasing?" )
(("" (inst - "qo1!1" "pi/2" )
(("" (rewrite "cos_value_pi2" ) (("" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((nnreal_quad1_open nonempty-type-eq-decl nil sincos_quad nil )
(pi const-decl "posreal" atan 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 "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(< const-decl "bool" reals nil )
(nnreal type-eq-decl nil real_types 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 )
(strict_decreasing? const-decl "bool" real_fun_preds "reals/" )
(cos_value_pi2 formula-decl nil sincos_quad nil )
(real_ge_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 )
(<= const-decl "bool" reals nil )
(nnreal_le_pi nonempty-type-eq-decl nil acos nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(cos_value_strict_decreasing formula-decl nil sincos_quad nil ))
shostak))
(atan_tan_value 0
(atan_tan_value-1 nil 3269612099
("" (skosimp*)
(("" (typepred "qo1!1" )
(("" (lemma "asin_sin_value" ("xs" "qo1!1" ))
(("1" (expand "asin" )
(("1" (lemma "sin_value_strict_increasing" )
(("1" (expand "strict_increasing?" )
(("1" (inst-cp - "qo1!1" "pi/2" )
(("1" (rewrite "sin_value_pi2" )
(("1" (replace -5)
(("1" (replace -2)
(("1" (expand ">=" -4)
(("1" (expand "<=" -4)
(("1" (split -4)
(("1" (inst - "0" "qo1!1" )
(("1"
(rewrite "sin_value_0" )
(("1"
(replace -1)
(("1"
(assert )
(("1"
(rewrite "sq_rew" -4)
(("1"
(rewrite
"cos_eqv_sqrt_sin_value"
-4)
nil
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(expand "abs" 1)
(("2" (assert ) nil nil ))
nil )
("3"
(expand "abs" 1)
(("3" (assert ) nil nil ))
nil ))
nil )
("2" (replace -1 * rl)
(("2"
(rewrite "sin_value_0" )
(("2"
(rewrite "cos_value_0" )
(("2" (rewrite "atan_0" ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (expand "abs" 1) (("2" (assert ) nil nil )) nil )
("3" (expand "abs" 1) (("3" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil )
("2" (expand "abs" 1) (("2" (assert ) nil nil )) nil ))
nil ))
nil ))
nil )
((nnreal_quad1_open nonempty-type-eq-decl nil sincos_quad nil )
(pi const-decl "posreal" atan 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 "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(< const-decl "bool" reals nil )
(nnreal type-eq-decl nil real_types 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_times_real_is_real application-judgement "real" reals nil )
(asin const-decl "real_abs_le_pi2" asin nil )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil )
(strict_increasing? const-decl "bool" real_fun_preds "reals/" )
(sin_value_pi2 formula-decl nil sincos_quad nil )
(cos_value_0 formula-decl nil sincos_quad 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 )
(atan_0 formula-decl nil atan nil )
(sin_value const-decl "[real_abs_le_pi2 -> real_abs_le1]"
sincos_quad nil )
(real_abs_le1 nonempty-type-eq-decl nil asin nil )
(sq_rew formula-decl nil sq "reals/" )
(cos_eqv_sqrt_sin_value formula-decl nil sincos_quad nil )
(nnreal_quad1_closed nonempty-type-eq-decl nil sincos_quad nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(real_div_nzreal_is_real application-judgement "real" reals nil )
(minus_odd_is_odd application-judgement "odd_int" integers nil )
(real_minus_real_is_real application-judgement "real" reals nil )
(sin_value_0 formula-decl nil sincos_quad nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(sin_value_strict_increasing formula-decl nil sincos_quad nil )
(asin_sin_value formula-decl nil sincos_quad nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(<= const-decl "bool" reals nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(real_abs_le_pi2 nonempty-type-eq-decl nil asin nil ))
shostak))
(sin_value_atan_TCC1 0
(sin_value_atan_TCC1-1 nil 3269633229
("" (skosimp*)
(("" (typepred "atan(x!1)" )
(("" (expand "pi" )
(("" (expand "atan" ) (("" (assert ) nil nil )) nil )) nil ))
nil ))
nil )
((atan const-decl "real_abs_lt_pi2" atan nil )
(real_abs_lt_pi2 nonempty-type-eq-decl nil atan nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(pi const-decl "posreal" atan 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 )
(- const-decl "[numfield -> numfield]" number_fields nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(numfield nonempty-type-eq-decl nil number_fields 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_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(real_div_nzreal_is_real application-judgement "real" reals nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(minus_real_is_real application-judgement "real" reals nil )
(real_times_real_is_real application-judgement "real" reals nil ))
shostak))
(sin_value_atan 0
(sin_value_atan-1 nil 3269633770
("" (skosimp*)
(("" (lemma "sin_value_asin" ("xa" "x!1/sqrt(1+sq(x!1))" ))
(("1" (expand "asin" )
(("1" (lemma "div_mult_pos_lt1" )
(("1" (inst - "sqrt(1+sq(x!1))" "1" "x!1" )
(("1"
(lemma "div_cancel3"
("x" "x!1" "n0z" "sqrt(1 + sq(x!1))" "y" "-1" ))
(("1" (lemma "trichotomy" ("x" "x!1" ))
(("1" (split -1)
(("1" (assert )
(("1" (replace -3)
(("1"
(lemma "sq_lt"
("nna" "x!1" "nnb" "sqrt(1 + sq(x!1))" ))
(("1" (rewrite "sq_sqrt" )
(("1" (assert )
(("1" (rewrite "sq_rew" -5)
(("1"
(rewrite "sq_div" -5)
(("1"
(lemma
"cross_mult"
("x"
"x!1 / sqrt(1 + sq(x!1))"
"n0x"
"sqrt(1 - sq(x!1) / (1 + sq(x!1)))"
"y"
"x!1"
"n0y"
"1" ))
(("1"
(flatten -1)
(("1"
(hide -1 -3 -5 -6)
(("1"
(split -1)
(("1"
(replace -1)
(("1" (assert ) nil nil ))
nil )
("2"
(hide -2 2)
(("2"
(lemma
"minus_div1"
("x"
"1"
"n0x"
"1"
"y"
"sq(x!1)"
"n0y"
"1+sq(x!1)" ))
(("2"
(replace -1)
(("2"
(hide -1)
(("2"
(assert )
(("2"
(rewrite
"sqrt_div" )
(("2"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (replace -1)
(("2" (rewrite "sq_0" )
(("2" (rewrite "sqrt_1" )
(("2" (rewrite "atan_0" )
(("2" (rewrite "sin_value_0" )
(("2" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil )
("3" (assert )
(("3" (case "-x!1 /sqrt(1+sq(x!1)) < 1" )
(("1" (assert )
(("1" (rewrite "sq_rew" )
(("1" (rewrite "sq_div" -5)
(("1"
(lemma "cross_mult"
("x"
"x!1 / sqrt(1 + sq(x!1))"
"n0x"
"sqrt(1 - sq(x!1) / (1 + sq(x!1)))"
"y"
"x!1"
"n0y"
"1" ))
(("1"
(flatten -1)
(("1"
(hide -1 -3 -5 -6)
(("1"
(split -1)
(("1"
(replace -1)
(("1" (assert ) nil nil ))
nil )
("2"
(hide -2 2)
(("2"
(lemma
"minus_div1"
("x"
"1"
"n0x"
"1"
"y"
"sq(x!1)"
"n0y"
"1+sq(x!1)" ))
(("2"
(replace -1)
(("2"
(rewrite "sqrt_div" )
(("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (assert )
(("2" (hide-all-but (-1 1))
(("2" (rewrite "sq_lt" :dir rl)
(("2" (rewrite "sq_div" )
(("2"
(rewrite "div_mult_pos_lt1" )
(("2"
(expand "sq" )
(("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide 2)
(("2" (rewrite "div_mult_pos_le1" )
(("2" (assert )
(("2" (lemma "sq_le_abs" ("a" "x!1" "b" "sqrt(1+sq(x!1))" ))
(("2" (rewrite "sq_sqrt" )
(("2" (assert )
(("2" (expand "abs" )
(("2" (lift-if)
(("2" (ground)
(("1" (cross-mult 1) (("1" (assert ) nil nil ))
nil )
("2" (cross-mult 1) (("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((sq const-decl "nonneg_real" sq "reals/" )
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil )
(sqrt const-decl "{nnz: nnreal | nnz * nnz = nnx}" sqrt "reals/" )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(= const-decl "[T, T -> boolean]" equalities nil )
(nnreal type-eq-decl nil real_types nil )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(>= const-decl "bool" reals nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(real_abs_le1 nonempty-type-eq-decl nil asin nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(<= const-decl "bool" reals nil )
(AND const-decl "[bool, bool -> bool]" booleans 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 )
(sin_value_asin formula-decl nil sincos_quad nil )
(real_div_nzreal_is_real application-judgement "real" reals nil )
(sqrt_pos application-judgement "posreal" sqrt "reals/" )
(posreal_plus_nnreal_is_posreal application-judgement "posreal"
real_types nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(div_mult_pos_lt1 formula-decl nil real_props nil )
(minus_odd_is_odd application-judgement "odd_int" integers nil )
(div_cancel3 formula-decl nil real_props nil )
(nonzero_real nonempty-type-eq-decl nil reals nil )
(sq_sqrt formula-decl nil sqrt "reals/" )
(sq_rew formula-decl nil sq "reals/" )
(cross_mult formula-decl nil real_props nil )
(- const-decl "[numfield, numfield -> numfield]" number_fields nil )
(posrat_div_posrat_is_posrat application-judgement "posrat"
rationals nil )
(nnreal_times_nnreal_is_nnreal application-judgement "nnreal"
real_types nil )
(sqrt_1 formula-decl nil sqrt "reals/" )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(sqrt_div formula-decl nil sqrt "reals/" )
(minus_div1 formula-decl nil real_props nil )
(nnreal_div_posreal_is_nnreal application-judgement "nnreal"
real_types nil )
(sq_nz_pos application-judgement "posreal" sq "reals/" )
(sq_div formula-decl nil sq "reals/" )
(real_minus_real_is_real application-judgement "real" reals nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(sq_lt formula-decl nil sq "reals/" )
(real_gt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil )
(nzreal_times_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(posreal_times_posreal_is_posreal application-judgement "posreal"
real_types nil )
(sq_0 formula-decl nil sq "reals/" )
(atan_0 formula-decl nil atan nil )
(nnrat_div_posrat_is_nnrat application-judgement "nonneg_rat"
rationals nil )
(sin_value_0 formula-decl nil sincos_quad nil )
(< const-decl "bool" reals nil )
(minus_real_is_real application-judgement "real" reals nil )
(real_plus_real_is_real application-judgement "real" reals nil )
(sq_1 formula-decl nil sq "reals/" )
(trichotomy formula-decl nil real_axioms nil )
(> const-decl "bool" reals nil )
(posreal nonempty-type-eq-decl nil real_types nil )
(asin const-decl "real_abs_le_pi2" asin nil )
(real_times_real_is_real application-judgement "real" reals nil )
(div_mult_pos_le1 formula-decl nil real_props nil )
(sq_le_abs formula-decl nil sq "reals/" )
(nonzero_abs_is_pos application-judgement "{y: posreal | y >= x}"
real_defs nil )
(div_mult_pos_le2 formula-decl nil real_props nil )
(abs const-decl "{n: nonneg_real | n >= m AND n >= -m}" real_defs
nil ))
shostak))
(cos_value_atan_TCC1 0
(cos_value_atan_TCC1-1 nil 3269633229
("" (skosimp*)
(("" (lemma "atan_strict_increasing" )
(("" (expand "strict_increasing?" )
(("" (typepred "nnx!1" )
(("" (expand ">=" )
(("" (expand "<=" -1)
(("" (split -1)
(("1" (inst - "0" "nnx!1" )
(("1" (rewrite "atan_0" )
(("1" (assert )
(("1" (typepred "atan(nnx!1)" )
(("1" (expand "abs" )
(("1" (expand "pi" )
(("1" (expand "atan" )
(("1" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (replace -1 1 rl)
(("2" (rewrite "atan_0" )
(("2" (assert ) (("2" (assert ) nil nil )) nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((atan_strict_increasing formula-decl nil atan nil )
(nnreal type-eq-decl nil real_types 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 )
(<= const-decl "bool" reals 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 )
(atan_0 formula-decl nil atan nil )
(strict_increasing? const-decl "bool" real_fun_preds "reals/" ))
shostak))
(cos_value_atan 0
(cos_value_atan-1 nil 3269638072
("" (skosimp*)
(("" (typepred "nnx!1" )
(("" (expand ">=" )
(("" (expand "<=" )
(("" (split -1)
(("1"
(lemma "both_sides_times_pos_lt1"
("x" "0" "y" "nnx!1" "pz" "nnx!1" ))
(("1" (rewrite "sq_rew" )
(("1" (replace -2)
(("1" (flatten -1)
(("1" (rewrite "zero_times1" )
(("1"
(lemma "sqrt_lt"
("nny" "1" "nnz" "1+sq(nnx!1)" ))
(("1" (rewrite "sqrt_1" )
(("1" (flatten -1)
(("1" (hide -1)
(("1"
(split -1)
(("1"
(case
"0<atan(nnx!1) & atan(nnx!1) < pi/2" )
(("1"
(flatten -1)
(("1"
(rewrite
"cos_eqv_sqrt_sin_value"
:dir
rl)
(("1"
(rewrite "sq_eq" :dir rl)
(("1"
(rewrite "sq_sqrt" )
(("1"
(rewrite "sq_div" )
(("1"
(rewrite "sq_sqrt" )
(("1"
(rewrite "sq_1" )
(("1"
(case
"nnx!1/sqrt(1 + sq(nnx!1)) = sin_value(atan(nnx!1))" )
(("1"
(lemma
"sq_eq"
("nna"
"nnx!1 / sqrt(1 + sq(nnx!1))"
"nnb"
"sin_value(atan(nnx!1))" ))
(("1"
(rewrite
"sq_div"
-1)
(("1"
(rewrite
"sq_sqrt" )
(("1"
(assert )
nil
nil ))
nil ))
nil )
("2"
(hide -1 2)
(("2"
(lemma
"sin_value_strict_increasing" )
(("2"
(expand
"strict_increasing?" )
(("2"
(inst
-
"0"
"atan(nnx!1)" )
(("1"
(rewrite
"sin_value_0" )
(("1"
(assert )
nil
nil ))
nil )
("2"
(expand
"abs" )
(("2"
(assert )
nil
nil ))
nil )
("3"
(expand
"abs" )
(("3"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(hide 2)
(("2"
(lemma
"sin_value_atan"
("x" "nnx!1" ))
(("2"
(assert )
nil
nil ))
nil ))
nil )
("3"
(expand "abs" 1)
(("3"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(expand "abs" 1)
(("2" (assert ) nil nil ))
nil ))
nil )
("2"
(expand "abs" 1)
(("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil )
("2"
(hide-all-but (-3 1))
(("2"
(typepred "atan(nnx!1)" )
(("2"
(lemma
"atan_strict_increasing" )
(("2"
(expand "strict_increasing?" )
(("2"
(inst - "0" "nnx!1" )
(("2"
(rewrite "atan_0" )
(("2"
(assert )
(("2"
(expand "abs" )
(("2"
(expand "pi" )
(("2"
(expand "atan" )
(("2"
(assert )
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 )
("2" (assert ) nil nil ))
nil )
("2" (replace -1 1 rl)
(("2" (rewrite "atan_0" )
(("2" (rewrite "cos_value_0" )
(("2" (rewrite "sq_0" )
(("2" (rewrite "sqrt_1" ) (("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((nnreal type-eq-decl nil real_types 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 )
(<= const-decl "bool" reals nil )
(cos_value_0 formula-decl nil sincos_quad nil )
(sq_0 formula-decl nil sq "reals/" )
(posreal nonempty-type-eq-decl nil real_types nil )
(> const-decl "bool" reals nil )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(both_sides_times_pos_lt1 formula-decl nil real_props nil )
(real_gt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(zero_times1 formula-decl nil real_props nil )
(sqrt_1 formula-decl nil sqrt "reals/" )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(< const-decl "bool" reals nil )
(/= const-decl "boolean" notequal nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(pi const-decl "posreal" atan nil )
(real_abs_lt_pi2 nonempty-type-eq-decl nil atan nil )
(atan const-decl "real_abs_lt_pi2" atan 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 )
(nnreal_quad1_closed nonempty-type-eq-decl nil sincos_quad nil )
(cos_eqv_sqrt_sin_value formula-decl nil sincos_quad 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 )
(real_minus_real_is_real application-judgement "real" reals nil )
(sq_div formula-decl nil sq "reals/" )
(sq_1 formula-decl nil sq "reals/" )
(sin_value_atan formula-decl nil sincos_quad nil )
(sin_value_strict_increasing formula-decl nil sincos_quad nil )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(sin_value_0 formula-decl nil sincos_quad nil )
(strict_increasing? const-decl "bool" real_fun_preds "reals/" )
(nnreal_div_posreal_is_nnreal application-judgement "nnreal"
real_types nil )
(sq_sqrt formula-decl nil sqrt "reals/" )
(sq_nz_pos application-judgement "posreal" sq "reals/" )
(sq_eq formula-decl nil sq "reals/" )
(= const-decl "[T, T -> boolean]" equalities nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(sqrt const-decl "{nnz: nnreal | nnz * nnz = nnx}" sqrt "reals/" )
(- const-decl "[numfield, numfield -> numfield]" number_fields nil )
(real_abs_le_pi2 nonempty-type-eq-decl nil asin nil )
(real_abs_le1 nonempty-type-eq-decl nil asin nil )
(sin_value const-decl "[real_abs_le_pi2 -> real_abs_le1]"
sincos_quad nil )
(atan_0 formula-decl nil atan nil )
(atan_strict_increasing formula-decl nil atan nil )
(sq const-decl "nonneg_real" sq "reals/" )
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(sqrt_lt formula-decl nil sqrt "reals/" )
(posreal_plus_nnreal_is_posreal application-judgement "posreal"
real_types nil )
(sqrt_pos application-judgement "posreal" sqrt "reals/" )
(sq_rew formula-decl nil sq "reals/" ))
shostak))
(sin_value_pi6_TCC1 0
(sin_value_pi6_TCC1-1 nil 3264814917
("" (expand "abs" )
(("" (typepred "pi" ) (("" (assert ) nil nil )) nil )) nil )
((posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(real_le_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 )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props 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 )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(> const-decl "bool" reals nil )
(posreal nonempty-type-eq-decl nil real_types nil )
(pi const-decl "posreal" atan nil ))
shostak))
(sin_value_pi6 0
(sin_value_pi6-1 nil 3264776261
("" (expand "sin_value" )
(("" (lemma "asin_bij" )
((""
(lemma "bijective_inverse[real_abs_le1, real_abs_le_pi2]"
("f" "asin" "y" "pi/6" "x" "1/2" ))
(("1" (replace -1 1)
(("1" (hide-all-but 1)
(("1" (expand "asin" )
(("1"
(case "1 / 2 / sqrt(1 - 1 / 2 * (1 / 2)) = 1/sqrt(3)" )
(("1" (replace -1)
(("1" (hide -1)
(("1"
(lemma "atan_plus"
("x" "1/sqrt(3)" "y" "1/sqrt(3)" ))
(("1" (flatten)
(("1" (hide -2 -3)
(("1" (rewrite "sq_rew" -1)
(("1" (rewrite "sq_div" -1)
(("1"
(assert )
(("1"
(lemma
"minus_div1"
("x"
"1"
"n0x"
"1"
"y"
"1"
"n0y"
"3" ))
(("1"
(replace -1 -2)
(("1"
(hide -1)
(("1"
(simplify -1)
(("1"
(lemma
"div_div1"
("x"
"2 * (1 / sqrt(3))"
"n0y"
"2"
"n0z"
"3" ))
(("1"
(replace -1 -2)
(("1"
(lemma
"div_cancel1"
("x"
"1 / sqrt(3) * 3"
"n0z"
"2" ))
(("1"
(replace -1 *)
(("1"
(hide -1)
(("1"
(case
"1 / sqrt(3) * 3 = sqrt(3)" )
(("1"
(replace -1)
(("1"
(lemma
"atan_inv"
("px"
"sqrt(3)" ))
(("1"
(assert )
nil
nil ))
nil ))
nil )
("2"
(hide -1 2)
(("2"
(lemma
"sq_eq"
("nna"
"3/sqrt(3)"
"nnb"
"sqrt(3)" ))
(("2"
(replace
-1
1
rl)
(("2"
(rewrite
"sq_div"
1)
(("2"
(rewrite
"sq_sqrt" )
(("2"
(expand
"sq" )
(("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 )
("2" (hide 2)
(("2"
(lemma "minus_div1"
("x" "1" "n0x" "1" "y" "1" "n0y" "4" ))
(("2" (replace -1 1)
(("2" (rewrite "sqrt_div" 1)
(("2"
(lemma "div_div1"
("x" "1/2" "n0y" "sqrt(3)" "n0z"
"sqrt(sq(2))" ))
(("2" (expand "sq" -1 1)
(("2"
(lemma "div_cancel1" ("x" "1" "n0z" "2" ))
(("2"
(replace -1)
(("2" (rewrite "div_div1" 1) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("3"
(lemma "minus_div1"
("x" "1" "n0x" "1" "y" "1" "n0y" "4" ))
(("3" (replace -1 1)
(("3" (hide -1 2)
(("3" (lemma "sqrt_pos" ("px" "3/4" ))
(("3" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (propax) nil nil )
("3" (expand "abs" 1) (("3" (assert ) nil nil )) nil )
("4" (expand "abs" 1) (("4" (assert ) nil nil )) nil ))
nil ))
nil ))
nil )
((asin_bij formula-decl nil asin nil )
(sqrt_pos judgement-tcc nil sqrt "reals/" )
(real_gt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(sqrt_4 formula-decl nil sqrt "reals/" )
(nnreal_div_posreal_is_nnreal application-judgement "nnreal"
real_types nil )
(odd_times_odd_is_odd application-judgement "odd_int" integers nil )
(even_minus_odd_is_odd application-judgement "odd_int" integers
nil )
(posint_times_posint_is_posint application-judgement "posint"
integers nil )
(int_times_even_is_even application-judgement "even_int" integers
nil )
(mult_divides1 application-judgement "(divides(n))" divides nil )
(mult_divides2 application-judgement "(divides(m))" divides nil )
(sqrt_div formula-decl nil sqrt "reals/" )
(posrat_times_posrat_is_posrat application-judgement "posrat"
rationals nil )
(atan_plus formula-decl nil atan nil )
(sq_div formula-decl nil sq "reals/" )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(sq_1 formula-decl nil sq "reals/" )
(sq_sqrt formula-decl nil sqrt "reals/" )
(minus_div1 formula-decl nil real_props nil )
(nonzero_real nonempty-type-eq-decl nil reals nil )
(real_times_real_is_real application-judgement "real" reals nil )
(atan_inv formula-decl nil atan nil )
(sq_eq formula-decl nil sq "reals/" )
(sq const-decl "nonneg_real" sq "reals/" )
(div_cancel1 formula-decl nil real_props nil )
(div_div1 formula-decl nil real_props nil )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(sq_nz_pos application-judgement "posreal" sq "reals/" )
(real_minus_real_is_real application-judgement "real" reals nil )
(posreal_plus_nnreal_is_posreal application-judgement "posreal"
real_types nil )
(posreal_times_posreal_is_posreal application-judgement "posreal"
real_types nil )
(sq_rew formula-decl nil sq "reals/" )
(- const-decl "[numfield, numfield -> numfield]" number_fields nil )
(sqrt const-decl "{nnz: nnreal | nnz * nnz = nnx}" sqrt "reals/" )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(nnreal type-eq-decl nil real_types nil )
(= const-decl "[T, T -> boolean]" equalities nil )
(sqrt_pos application-judgement "posreal" sqrt "reals/" )
(rat_minus_rat_is_rat application-judgement "rat" rationals nil )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(posrat_div_posrat_is_posrat application-judgement "posrat"
rationals nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(bijective_inverse formula-decl nil function_inverse nil )
(bijective? const-decl "bool" functions nil )
(asin const-decl "real_abs_le_pi2" asin 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 )
(bool nonempty-type-eq-decl nil booleans nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(<= const-decl "bool" reals nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(real_abs_le1 nonempty-type-eq-decl nil asin nil )
(/= const-decl "boolean" notequal nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(>= const-decl "bool" reals 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 )
(pi const-decl "posreal" atan nil )
(real_abs_le_pi2 nonempty-type-eq-decl nil asin nil )
(sin_value const-decl "[real_abs_le_pi2 -> real_abs_le1]"
sincos_quad nil ))
shostak))
(cos_value_pi6_TCC1 0
(cos_value_pi6_TCC1-1 nil 3264814919
("" (typepred "pi" ) (("" (assert ) nil nil )) nil )
((posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(real_le_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 )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props 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 )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(> const-decl "bool" reals nil )
(posreal nonempty-type-eq-decl nil real_types nil )
(pi const-decl "posreal" atan nil ))
shostak))
(cos_value_pi6 0
(cos_value_pi6-1 nil 3264785176
("" (lemma "cos_value_strict_decreasing" )
(("" (expand "strict_decreasing?" )
(("" (inst - "pi/6" "pi/2" )
(("1" (rewrite "cos_value_pi2" )
(("1" (assert )
(("1" (lemma "cos_eqv_sqrt_sin_value" ("q1" "pi/6" ))
(("1" (rewrite "sin_value_pi6" -1)
(("1" (expand "sq" -1)
(("1"
(lemma "minus_div1"
("x" "1" "n0x" "1" "y" "1" "n0y" "4" ))
(("1" (replace -1 -2)
(("1" (rewrite "sqrt_div" -2)
(("1" (lemma "sqrt_sq" ("x" "2" ))
(("1" (expand "sq" -1)
(("1" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (assert ) nil nil ) ("3" (assert ) nil nil ))
nil ))
nil ))
nil )
((strict_decreasing? const-decl "bool" real_fun_preds "reals/" )
(cos_value_pi2 formula-decl nil sincos_quad nil )
(sqrt_pos application-judgement "posreal" sqrt "reals/" )
(cos_eqv_sqrt_sin_value formula-decl nil sincos_quad nil )
(nnreal_quad1_closed nonempty-type-eq-decl nil sincos_quad nil )
(sq const-decl "nonneg_real" sq "reals/" )
(sqrt_div formula-decl nil sqrt "reals/" )
(posint_times_posint_is_posint application-judgement "posint"
integers nil )
(int_times_even_is_even application-judgement "even_int" integers
nil )
(mult_divides1 application-judgement "(divides(n))" divides nil )
(mult_divides2 application-judgement "(divides(m))" divides nil )
(odd_times_odd_is_odd application-judgement "odd_int" integers nil )
(even_minus_odd_is_odd application-judgement "odd_int" integers
nil )
(sqrt_4 formula-decl nil sqrt "reals/" )
(rat_minus_rat_is_rat application-judgement "rat" rationals nil )
(nzrat_div_nzrat_is_nzrat application-judgement "nzrat" rationals
nil )
(sqrt_sq formula-decl nil sqrt "reals/" )
(nonzero_real nonempty-type-eq-decl nil reals nil )
(minus_div1 formula-decl nil real_props nil )
(posrat_div_posrat_is_posrat application-judgement "posrat"
rationals nil )
(sq_nz_pos application-judgement "posreal" sq "reals/" )
(sin_value_pi6 formula-decl nil sincos_quad nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(nnreal_le_pi nonempty-type-eq-decl nil acos nil )
(nnreal type-eq-decl nil real_types 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 )
(bool nonempty-type-eq-decl nil booleans nil )
(<= const-decl "bool" reals nil )
(numfield nonempty-type-eq-decl nil 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 )
(>= const-decl "bool" reals 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 )
(pi const-decl "posreal" atan nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(cos_value_strict_decreasing formula-decl nil sincos_quad nil ))
shostak))
(cos_value_sum_TCC1 0
(cos_value_sum_TCC1-1 nil 3264481669
("" (skosimp*)
(("" (typepred "q1!1" )
(("" (typepred "q2!1" ) (("" (assert ) nil nil )) nil )) nil ))
nil )
((nnreal_quad1_closed nonempty-type-eq-decl nil sincos_quad nil )
(pi const-decl "posreal" atan 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 "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(<= const-decl "bool" reals nil )
(nnreal type-eq-decl nil real_types 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 )
(nnreal_plus_nnreal_is_nnreal application-judgement "nnreal"
real_types nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
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 ))
shostak))
(cos_value_sum 0
(cos_value_sum-1 nil 3264481744
("" (skolem 1 ("z1" "z2" ))
(("" (typepred "z1" )
(("" (typepred "z2" )
(("" (expand ">=" )
((""
(lemma "acos_sum"
("nnx" "cos_value(z1)" "nny" "cos_value(z2)" ))
(("1" (rewrite "acos_cos_value" -1)
(("1" (rewrite "acos_cos_value" -1)
(("1" (replace -1 1)
(("1" (rewrite "cos_value_acos" )
(("1" (rewrite "sin_eqv_sqrt_cos_value" )
(("1" (rewrite "sin_eqv_sqrt_cos_value" )
(("1" (assert ) nil nil )) nil ))
nil )
("2" (hide 2)
(("2" (hide -1)
(("2" (rewrite "sin_eqv_sqrt_cos_value" )
(("2" (rewrite "sin_eqv_sqrt_cos_value" )
(("2" (lemma "cos_value_decreasing" )
(("2"
(expand "decreasing?" )
(("2"
(lemma "sin_value_increasing" )
(("2"
(expand "increasing?" )
(("2"
(inst-cp - "0" "z1" )
(("1"
(inst-cp - "z1" "pi/2" )
(("1"
(inst-cp - "0" "z2" )
(("1"
(inst - "z2" "pi/2" )
(("1"
(rewrite "sin_value_0" )
(("1"
(rewrite
"sin_value_pi2" )
(("1"
(inst-cp - "0" "z1" )
(("1"
(inst-cp
-
"z1"
"pi/2" )
(("1"
(inst-cp
-
"0"
"z2" )
(("1"
(inst
-
"z2"
"pi/2" )
(("1"
(rewrite
"cos_value_0" )
(("1"
(rewrite
"cos_value_pi2" )
(("1"
(assert )
(("1"
(lemma
"le_times_le_pos"
("nnx"
"0"
"y"
"cos_value(z1)"
"nnz"
"0"
"w"
"cos_value(z2)" ))
(("1"
(lemma
"le_times_le_pos"
("nnx"
"cos_value(z1)"
"y"
"1"
"nnz"
"cos_value(z2)"
"w"
"1" ))
(("1"
(lemma
"le_times_le_pos"
("nnx"
"0"
"y"
"sin_value(z1)"
"nnz"
"0"
"w"
"sin_value(z2)" ))
(("1"
(lemma
"le_times_le_pos"
("nnx"
"sin_value(z1)"
"y"
"1"
"nnz"
"sin_value(z2)"
"w"
"1" ))
(("1"
(assert )
(("1"
(expand
"abs" )
(("1"
(case
"cos_value(z1) * cos_value(z2) - sin_value(z2) * sin_value(z1) < 0" )
(("1"
(assert )
nil
nil )
("2"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(expand
"abs"
1)
(("2"
(propax)
nil
nil ))
nil )
("3"
(expand
"abs"
1)
(("3"
(propax)
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(expand "abs" 1)
(("2" (assert ) nil nil ))
nil )
("3"
(expand "abs" 1)
(("3" (propax) nil nil ))
nil ))
nil )
("2"
(expand "abs" 1)
(("2" (propax) nil nil ))
nil )
("3"
(expand "abs" 1)
(("3" (assert ) nil nil ))
nil ))
nil )
("2"
(expand "abs" 1)
(("2" (assert ) nil nil ))
nil )
("3"
(expand "abs" 1)
(("3" (propax) nil nil ))
nil ))
nil )
("2"
(expand "abs" 1)
(("2" (propax) nil nil ))
nil )
("3"
(expand "abs" 1)
(("3" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide 2)
(("2" (lemma "cos_value_decreasing" )
(("2" (expand "decreasing?" )
(("2" (inst-cp - "0" "z2" )
(("2" (inst - "z2" "pi/2" )
(("2" (assert )
(("2" (rewrite "cos_value_0" )
(("2" (rewrite "cos_value_pi2" )
(("2" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("3" (lemma "cos_value_decreasing" )
(("3" (expand "decreasing?" )
(("3" (inst-cp - "0" "z1" )
(("3" (inst - "z1" "pi/2" )
(("3" (rewrite "cos_value_0" )
(("3" (rewrite "cos_value_pi2" )
(("3" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((nnreal_quad1_closed nonempty-type-eq-decl nil sincos_quad nil )
(pi const-decl "posreal" atan 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 "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(<= const-decl "bool" reals nil )
(nnreal type-eq-decl nil real_types 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 )
(decreasing? const-decl "bool" real_fun_preds "reals/" )
(cos_value_0 formula-decl nil sincos_quad nil )
(cos_value_pi2 formula-decl nil sincos_quad nil )
(cos_value_decreasing formula-decl nil sincos_quad nil )
(acos_cos_value formula-decl nil sincos_quad nil )
(real_times_real_is_real application-judgement "real" reals nil )
(nnreal_times_nnreal_is_nnreal application-judgement "nnreal"
real_types nil )
(sin_eqv_sqrt_cos_value formula-decl nil sincos_quad nil )
(minus_odd_is_odd application-judgement "odd_int" integers nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(nnreal_plus_nnreal_is_nnreal application-judgement "nnreal"
real_types nil )
(real_minus_real_is_real application-judgement "real" reals nil )
(cos_value_acos formula-decl nil sincos_quad nil )
(- const-decl "[numfield, numfield -> numfield]" number_fields nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(= const-decl "[T, T -> boolean]" equalities nil )
(sqrt const-decl "{nnz: nnreal | nnz * nnz = nnx}" sqrt "reals/" )
(sq const-decl "nonneg_real" sq "reals/" )
(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 )
(acos_sum formula-decl nil acos nil )
(nnreal_le_pi nonempty-type-eq-decl nil acos nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(real_abs_le1 nonempty-type-eq-decl nil asin nil )
(cos_value const-decl "[nnreal_le_pi -> real_abs_le1]" sincos_quad
nil ))
shostak))
(sin_value_diff_TCC1 0
(sin_value_diff_TCC1-1 nil 3263651738
("" (skosimp*)
(("" (typepred "q1!1" )
(("" (typepred "q2!1" )
(("" (expand "abs" )
(("" (case "q1!1 - q2!1 < 0" )
(("1" (assert ) nil nil ) ("2" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil )
((nnreal_quad1_closed nonempty-type-eq-decl nil sincos_quad nil )
(pi const-decl "posreal" atan 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 "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(<= const-decl "bool" reals nil )
(nnreal type-eq-decl nil real_types 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 )
(- const-decl "[numfield, numfield -> numfield]" number_fields nil )
(< const-decl "bool" reals nil )
(real_minus_real_is_real application-judgement "real" reals 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 )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil ))
shostak))
(sin_value_diff 0
(sin_value_diff-1 nil 3263651704
("" (skolem 1 ("c" "d" ))
(("" (typepred "c" )
(("" (typepred "d" )
((""
(lemma "asin_diff"
("nnx" "sin_value(c)" "nny" "sin_value(d)" ))
(("1" (rewrite "asin_sin_value" )
(("1" (rewrite "asin_sin_value" )
(("1" (rewrite "cos_eqv_sqrt_sin_value" )
(("1" (rewrite "cos_eqv_sqrt_sin_value" )
(("1" (replace -1 1)
(("1" (rewrite "sin_value_asin" )
(("1" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (lemma "sin_value_increasing" )
(("2" (expand "increasing?" )
(("2" (inst-cp - "0" "d" )
(("1" (inst - "d" "pi/2" )
(("1" (rewrite "sin_value_0" )
(("1" (rewrite "sin_value_pi2" )
(("1" (assert ) nil nil )) nil ))
nil )
("2" (expand "abs" ) (("2" (assert ) nil nil )) nil ))
nil )
("2" (expand "abs" ) (("2" (assert ) nil nil )) nil ))
nil ))
nil ))
nil )
("3" (lemma "sin_value_increasing" )
(("3" (expand "increasing?" )
(("3" (inst-cp - "0" "c" )
(("1" (inst - "c" "pi/2" )
(("1" (rewrite "sin_value_0" )
(("1" (rewrite "sin_value_pi2" )
(("1" (assert ) nil nil )) nil ))
nil )
("2" (expand "abs" ) (("2" (assert ) nil nil )) nil ))
nil )
("2" (expand "abs" ) (("2" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((nnreal_quad1_closed nonempty-type-eq-decl nil sincos_quad nil )
(pi const-decl "posreal" atan 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 "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(<= const-decl "bool" reals nil )
(nnreal type-eq-decl nil real_types 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 )
(sin_value const-decl "[real_abs_le_pi2 -> real_abs_le1]"
sincos_quad nil )
(real_abs_le1 nonempty-type-eq-decl nil asin nil )
(real_abs_le_pi2 nonempty-type-eq-decl nil asin nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(asin_diff formula-decl nil asin 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 )
(cos_value const-decl "[nnreal_le_pi -> real_abs_le1]" sincos_quad
nil )
(nnreal_le_pi nonempty-type-eq-decl nil acos nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(- const-decl "[numfield, numfield -> numfield]" number_fields nil )
(sin_value_asin formula-decl nil sincos_quad nil )
(real_minus_real_is_real application-judgement "real" reals nil )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(cos_eqv_sqrt_sin_value formula-decl nil sincos_quad nil )
(real_times_real_is_real application-judgement "real" reals nil )
(minus_odd_is_odd application-judgement "odd_int" integers nil )
(asin_sin_value formula-decl nil sincos_quad nil )
(increasing? const-decl "bool" real_fun_preds "reals/" )
(sin_value_pi2 formula-decl nil sincos_quad nil )
(sin_value_0 formula-decl nil sincos_quad nil )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(sin_value_increasing formula-decl nil sincos_quad nil ))
shostak))
(sin_value_derivable_TCC1 0
(sin_value_derivable_TCC1-1 nil 3264405638
("" (skosimp*) (("" (typepred "x1!1" ) (("" (assert ) nil nil )) nil ))
nil )
((real_abs_lt_pi2 nonempty-type-eq-decl nil atan nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(pi const-decl "posreal" atan 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 )
(- const-decl "[numfield -> numfield]" number_fields nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(numfield nonempty-type-eq-decl nil number_fields 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_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil ))
shostak))
(sin_value_derivable_TCC2 0
(sin_value_derivable_TCC2-1 nil 3264405663
("" (lemma deriv_domain_open)
(("" (inst - "-pi/2" "pi/2" )
(("" (expand "deriv_domain?" ) (("" (propax) nil nil )) nil )) nil ))
nil )
((nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
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 )
(numfield nonempty-type-eq-decl nil 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 )
(- const-decl "[numfield -> numfield]" number_fields nil )
(bool nonempty-type-eq-decl nil booleans nil )
(>= const-decl "bool" reals 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 )
(pi const-decl "posreal" atan nil )
(deriv_domain_open formula-decl nil deriv_domain "analysis/" ))
shostak))
(sin_value_derivable_TCC3 0
(sin_value_derivable_TCC3-1 nil 3264405716 ("" (assert ) nil nil )
((noa_real_abs_lt_pi2 formula-decl nil sincos_quad nil )) shostak))
(sin_value_derivable 0
(sin_value_derivable-3 nil 3425656063
("" (skosimp*)
(("" (expand "sin_value" )
(("" (lemma "deriv_asin_fun" )
(("" (lemma "asin_derivable_fun" )
((""
(case "bijective?[real_abs_lt1,real_abs_lt_pi2](LAMBDA (x:real_abs_lt1): asin(x))" )
(("1"
(tccs-step
(case "inverse?[real_abs_lt1, real_abs_lt_pi2]((LAMBDA (x:real_abs_lt_pi2): inverse(asin)(x)),(LAMBDA (x:real_abs_lt1): asin(x)))" )
:label "TCC" :hide? t)
(("1"
(lemma
"inverse_derivable[real_abs_lt1, real_abs_lt_pi2]"
("F" "LAMBDA (x: real_abs_lt1): asin(x)" "G"
"LAMBDA (x: real_abs_lt_pi2): inverse(asin)(x)" "f"
"LAMBDA (x: real_abs_lt1): 1 / sqrt(1 - sq(x))" "x"
"x!1" ))
(("1" (replace -2 -1)
(("1" (replace -3 -1)
(("1" (replace -4 -1)
(("1" (replace -5 -1) (("1" (propax) nil nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide-all-but 1)
(("2" (skosimp*)
(("2" (typepred "x!2" )
(("2" (lemma "sq_lt_abs" ("a" "x!2" "b" "1" ))
(("2" (expand "sq" -1 2)
(("2" (expand "abs" -1 2)
(("2" (lemma "sqrt_pos" ("px" "1-sq(x!2)" ))
(("1" (assert ) nil nil )
("2" (grind) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("3" (hide-all-but 1)
(("3" (skosimp*)
(("3" (typepred "x!2" )
(("3" (lemma "sq_lt_abs" ("a" "x!2" "b" "1" ))
(("3" (expand "sq" -1 2)
(("3" (expand "abs" -1 2)
(("3" (lemma "sqrt_pos" ("px" "1-sq(x!2)" ))
(("1" (assert ) nil nil )
("2" (grind) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("4" (hide-all-but 1)
(("4" (reveal "TCC" )
(("4" (skeep)
(("4" (inst? -2)
(("4" (flatten) (("4" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (split)
(("1" (hide -2 -3 2)
(("1" (name "F" "LAMBDA (x: real_abs_lt1): asin(x)" )
(("1" (replace -1)
(("1"
(name "G"
"LAMBDA (x: real_abs_lt_pi2): inverse(asin)(x)" )
(("1" (replace -1)
(("1" (expand "inverse?" )
(("1" (skosimp*)
(("1"
(typepred "r!1" )
(("1"
(lemma
"extensionality[real_abs_lt_pi2,real_abs_lt1]"
("f"
"inverse[real_abs_lt1,real_abs_lt_pi2](F)"
"g"
"G" ))
(("1"
(split -1)
(("1"
(replace -1 1 rl)
(("1"
(lemma
"comp_inverse_right[real_abs_lt1, real_abs_lt_pi2]"
("f" "F" "y" "r!1" ))
(("1" (propax) nil nil )
("2" (propax) nil nil ))
nil ))
nil )
("2"
(replace -3 1 rl)
(("2"
(replace -4 1 rl)
(("2"
(skosimp*)
(("2"
(replace -4 -6 rl)
(("2"
(hide 2 -1 -2 -3 -4 -5)
(("2"
(copy -1)
(("2"
(expand
"bijective?"
-1)
(("2"
(flatten)
(("2"
(expand
"surjective?" )
(("2"
(inst - "x!2" )
(("2"
(skosimp*)
(("2"
(typepred
"x!2" )
(("2"
(typepred
"x!3" )
(("2"
(lemma
"asin_bij" )
(("2"
(lemma
"comp_inverse_left[real_abs_le1, real_abs_le_pi2]"
("f"
"asin"
"x"
"x!3" ))
(("1"
(lemma
"bijective_inverse[real_abs_lt1, real_abs_lt_pi2]"
("f"
"LAMBDA (x: real_abs_lt1): asin(x)"
"x"
"x!3"
"y"
"x!2" ))
(("1"
(simplify
1)
(("1"
(assert )
nil
nil ))
nil )
("2"
(propax)
nil
nil ))
nil )
("2"
(propax)
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(hide -1 -2 -4 -5 2)
(("2"
(skosimp*)
(("2"
(typepred "x1!1" )
(("2"
(lemma
"sin_value_strict_increasing" )
(("2"
(expand
"strict_increasing?" )
(("2"
(inst-cp - "x1!1" "pi/2" )
(("2"
(inst-cp
-
"-pi/2"
"x1!1" )
(("2"
(case "x1!1<0" )
(("1"
(assert )
(("1"
(rewrite
"sin_value_pi2" )
(("1"
(rewrite
"sin_value_minus_pi2" )
(("1"
(inst
-
"x1!1"
"0" )
(("1"
(assert )
(("1"
(rewrite
"sin_value_0" )
(("1"
(expand
"sin_value" )
(("1"
(assert )
(("1"
(replace
-7
1
rl)
(("1"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(assert )
(("2"
(case "x1!1=0" )
(("1"
(replace -1)
(("1"
(lemma
"sin_value_0" )
(("1"
(expand
"sin_value"
-1)
(("1"
(replace
-8
+
rl)
(("1"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(inst
-
"0"
"x1!1" )
(("2"
(rewrite
"sin_value_0" )
(("2"
(assert )
(("2"
(rewrite
"sin_value_pi2" )
(("2"
(rewrite
"sin_value_minus_pi2" )
(("2"
(expand
"sin_value" )
(("2"
(replace
-6
+
rl)
(("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 )
("2" (hide -2 -3 2)
(("2" (skosimp*)
(("2" (typepred "x!2" )
(("2" (hide -2)
(("2" (lemma "asin_bij" )
(("2"
(lemma
"bijective_inverse_is_bijective[real_abs_le1,real_abs_le_pi2]"
("f" "asin" ))
(("1" (lemma "sin_value_strict_increasing" )
(("1"
(expand "strict_increasing?" )
(("1"
(inst-cp - "-pi/2" "x!2" )
(("1"
(inst-cp - "x!2" "pi/2" )
(("1"
(case "x!2<0" )
(("1"
(assert )
(("1"
(inst - "x!2" "0" )
(("1"
(assert )
(("1"
(rewrite "sin_value_0" )
(("1"
(rewrite
"sin_value_pi2" )
(("1"
(rewrite
"sin_value_minus_pi2" )
(("1"
(expand
"sin_value" )
(("1"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(case "x!2=0" )
(("1"
(replace -1)
(("1"
(lemma "sin_value_0" )
(("1"
(expand "sin_value" -1)
(("1" (assert ) nil nil ))
nil ))
nil ))
nil )
("2"
(inst - "0" "x!2" )
(("2"
(rewrite "sin_value_0" )
(("2"
(rewrite "sin_value_pi2" )
(("2"
(rewrite
"sin_value_minus_pi2" )
(("2"
(expand
"sin_value"
(-1 -2 -3))
(("2"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (propax) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide-all-but 1)
(("2" (lemma "asin_bij" )
(("2" (expand "bijective?" )
(("2" (expand "injective?" )
(("2" (expand "surjective?" )
(("2" (flatten)
(("2" (split)
(("1" (skosimp*)
(("1" (inst -2 "x1!1" "x2!1" )
(("1" (assert ) nil nil )) nil ))
nil )
("2" (hide -1)
(("2" (skosimp*)
(("2"
(inst - "y!1" )
(("2"
(skosimp*)
(("2"
(typepred "x!2" )
(("2"
(expand "<=" -1)
(("2"
(split -1)
(("1"
(expand "<=" -2)
(("1"
(split -2)
(("1"
(inst + "x!2" )
(("1" (assert ) nil nil ))
nil )
("2"
(replace -1)
(("2"
(rewrite "asin_1" )
(("2"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(typepred "y!1" )
(("2"
(case
"x!2 = 1 OR x!2 = -1" )
(("1"
(hide -3)
(("1"
(split -1)
(("1"
(replace -1)
(("1"
(rewrite "asin_1" )
(("1"
(assert )
nil
nil ))
nil ))
nil )
("2"
(replace -1)
(("2"
(rewrite
"asin_minus1" )
(("2"
(assert )
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 )
("3" (hide-all-but 1)
(("3" (skosimp*)
(("3" (typepred "x!2" )
(("3" (lemma "asin_bij" )
(("3" (expand "bijective?" )
(("3" (expand "injective?" )
(("3" (expand "surjective?" )
(("3" (flatten)
(("3" (hide -2)
(("3"
(lemma "asin_strict_increasing" )
(("3"
(expand "strict_increasing?" )
(("3"
(case "x!2<0" )
(("1"
(assert )
(("1"
(inst-cp -2 "-x!2" "1" )
(("1"
(inst-cp -2 "x!2" "0" )
(("1"
(rewrite "asin_0" )
(("1"
(rewrite "asin_1" )
(("1"
(rewrite "asin_neg" )
(("1"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(assert )
(("2"
(case "x!2 = 0" )
(("1"
(replace -1)
(("1"
(rewrite "asin_0" )
(("1" (assert ) nil nil ))
nil ))
nil )
("2"
(inst-cp -1 "0" "x!2" )
(("2"
(inst -1 "x!2" "1" )
(("2"
(assert )
(("2"
(rewrite "asin_1" )
(("2"
(rewrite "asin_0" )
(("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 )
((sin_value const-decl "[real_abs_le_pi2 -> real_abs_le1]"
sincos_quad nil )
(asin_derivable_fun formula-decl nil asin nil )
(asin_neg formula-decl nil asin nil )
(asin_0 formula-decl nil asin nil )
(minus_real_is_real application-judgement "real" reals nil )
(asin_strict_increasing formula-decl nil asin nil )
(asin_minus1 formula-decl nil asin nil )
(OR const-decl "[bool, bool -> bool]" booleans nil )
(asin_1 formula-decl nil asin nil )
(x!2 skolem-const-decl "real_abs_le1" sincos_quad nil )
(injective? const-decl "bool" functions nil )
(TRUE const-decl "bool" booleans nil )
(id const-decl "(bijective?[T, T])" identity nil )
(inverse const-decl "D" function_inverse nil )
(inverse? const-decl "bool" function_inverse_def nil )
(minus_odd_is_odd application-judgement "odd_int" integers nil )
(IMPLIES const-decl "[bool, bool -> bool]" booleans nil )
(NOT const-decl "[bool -> bool]" booleans nil )
(sqrt_pos judgement-tcc nil sqrt "reals/" )
(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 )
(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 )
(abs const-decl "{n: nonneg_real | n >= m AND n >= -m}" real_defs
nil )
(sq_lt_abs formula-decl nil sq "reals/" )
(not_one_element? const-decl "bool" deriv_domain_def "analysis/" )
(connected? const-decl "bool" deriv_domain_def "analysis/" )
(sq const-decl "nonneg_real" sq "reals/" )
(- const-decl "[numfield, numfield -> numfield]" number_fields nil )
(sqrt const-decl "{nnz: nnreal | nnz * nnz = nnx}" sqrt "reals/" )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(= const-decl "[T, T -> boolean]" equalities nil )
(nnreal type-eq-decl nil real_types nil )
(nzreal nonempty-type-eq-decl nil reals nil )
(inverse_derivable formula-decl nil derivative_inverse "analysis/" )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(real_minus_real_is_real application-judgement "real" reals nil )
(bijective_inverse_is_bijective judgement-tcc nil function_inverse
nil )
(extensionality formula-decl nil functions nil )
(surjective? const-decl "bool" functions nil )
(comp_inverse_left formula-decl nil function_inverse nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(bijective_inverse formula-decl nil function_inverse nil )
(asin_bij formula-decl nil asin nil )
(comp_inverse_right formula-decl nil function_inverse nil )
(sin_value_strict_increasing formula-decl nil sincos_quad nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(sin_value_pi2 formula-decl nil sincos_quad nil )
(sin_value_0 formula-decl nil sincos_quad nil )
(sin_value_minus_pi2 formula-decl nil sincos_quad nil )
(strict_increasing? const-decl "bool" real_fun_preds "reals/" )
(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 )
(bool nonempty-type-eq-decl nil booleans nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(< const-decl "bool" reals nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(real_abs_lt1 nonempty-type-eq-decl nil asin nil )
(/= const-decl "boolean" notequal nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(>= const-decl "bool" reals 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 )
(pi const-decl "posreal" atan nil )
(real_abs_lt_pi2 nonempty-type-eq-decl nil atan nil )
(bijective? const-decl "bool" functions nil )
(<= const-decl "bool" reals nil )
(real_abs_le1 nonempty-type-eq-decl nil asin nil )
(real_abs_le_pi2 nonempty-type-eq-decl nil asin nil )
(asin const-decl "real_abs_le_pi2" asin nil )
(deriv_asin_fun formula-decl nil asin nil )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil ))
nil )
(sin_value_derivable-2 nil 3408977633
("" (skosimp*)
(("" (expand "sin_value" )
(("" (lemma "deriv_asin_fun" )
(("" (lemma "asin_derivable2" )
((""
(case "bijective?[real_abs_lt1,real_abs_lt_pi2](LAMBDA (x:real_abs_lt1): asin(x))" )
(("1"
(case "inverse?[real_abs_lt1, real_abs_lt_pi2]((LAMBDA (x:real_abs_lt_pi2): inverse(asin)(x)),(LAMBDA (x:real_abs_lt1): asin(x)))" )
(("1"
(lemma
"inverse_derivable[real_abs_lt1, real_abs_lt_pi2]"
("F" "LAMBDA (x: real_abs_lt1): asin(x)" "G"
"LAMBDA (x: real_abs_lt_pi2): inverse(asin)(x)" "f"
"LAMBDA (x: real_abs_lt1): 1 / sqrt(1 - sq(x))" "x"
"x!1" ))
(("1" (replace -2 -1)
(("1" (replace -3 -1)
(("1" (replace -4 -1)
(("1" (replace -5 -1) (("1" (propax) nil nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide-all-but 1)
(("2" (skosimp*)
(("2" (typepred "x!2" )
(("2" (lemma "sq_lt_abs" ("a" "x!2" "b" "1" ))
(("2" (expand "sq" -1 2)
(("2" (expand "abs" -1 2)
(("2" (lemma "sqrt_pos" ("px" "1-sq(x!2)" ))
(("1" (assert ) nil nil )
("2" (grind) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("3" (hide-all-but 1)
(("3" (skosimp*)
(("3" (typepred "x!2" )
(("3" (lemma "sq_lt_abs" ("a" "x!2" "b" "1" ))
(("3" (expand "sq" -1 2)
(("3" (expand "abs" -1 2)
(("3" (lemma "sqrt_pos" ("px" "1-sq(x!2)" ))
(("1" (assert ) nil nil )
("2" (grind) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("4" (hide-all-but 1)
(("4" (skosimp*)
(("4" (typepred "x!2" )
(("4" (lemma "sq_lt_abs" ("a" "x!2" "b" "1" ))
(("4" (case "x!2=0" )
(("1" (inst + "pi/4" )
(("1" (assert ) nil nil )) nil )
("2" (inst + "0" ) (("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("5" (hide-all-but 1)
(("5" (skosimp*)
(("5" (typepred "x!2" )
(("5" (typepred "y!1" )
(("5" (case "x!2<0" )
(("1" (case "y!1<0" )
(("1" (case "z!1<0" )
(("1" (assert ) nil nil )
("2" (assert ) nil nil ))
nil )
("2" (case "z!1<0" )
(("1" (assert ) nil nil )
("2" (assert ) nil nil ))
nil ))
nil )
("2" (case "y!1<0" )
(("1" (case "z!1<0" )
(("1" (assert ) nil nil )
("2" (assert ) nil nil ))
nil )
("2" (case "z!1<0" )
(("1" (assert ) nil nil )
("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("6" (hide-all-but 1)
(("6" (skosimp*)
(("6" (typepred "x!2" )
(("6" (case "x!2=0" )
(("1" (inst + "1/2" ) (("1" (assert ) nil nil ))
nil )
("2" (inst + "0" ) (("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("7" (hide-all-but 1)
(("7" (skosimp*)
(("7" (typepred "x!2" )
(("7" (typepred "y!1" )
(("7" (case "x!2<0" )
(("1" (case "y!1<0" )
(("1" (case "z!1<0" )
(("1" (assert ) nil nil )
("2" (assert ) nil nil ))
nil )
("2" (case "z!1<0" )
(("1" (assert ) nil nil )
("2" (assert ) nil nil ))
nil ))
nil )
("2" (case "y!1<0" )
(("1" (case "z!1<0" )
(("1" (assert ) nil nil )
("2" (assert ) nil nil ))
nil )
("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide -2 -3 2)
(("2" (name "F" "LAMBDA (x: real_abs_lt1): asin(x)" )
(("2" (replace -1)
(("2"
(name "G"
"LAMBDA (x: real_abs_lt_pi2): inverse(asin)(x)" )
(("2" (replace -1)
(("2" (expand "inverse?" )
(("2" (skosimp*)
(("2" (typepred "r!1" )
(("2"
(lemma
"extensionality[real_abs_lt_pi2,real_abs_lt1]"
("f"
"inverse[real_abs_lt1,real_abs_lt_pi2](F)"
"g"
"G" ))
(("1"
(split -1)
(("1"
(replace -1 1 rl)
(("1"
(lemma
"comp_inverse_right[real_abs_lt1, real_abs_lt_pi2]"
("f" "F" "y" "r!1" ))
(("1" (propax) nil nil )
("2" (propax) nil nil ))
nil ))
nil )
("2"
(replace -3 1 rl)
(("2"
(replace -4 1 rl)
(("2"
(skosimp*)
(("2"
(replace -4 -6 rl)
(("2"
(hide 2 -1 -2 -3 -4 -5)
(("2"
(copy -1)
(("2"
(expand
"bijective?"
-1)
(("2"
(flatten)
(("2"
(expand
"surjective?" )
(("2"
(inst - "x!2" )
(("2"
(skosimp*)
(("2"
(typepred
"x!2" )
(("2"
(typepred
"x!3" )
(("2"
(lemma
"asin_bij" )
(("2"
(lemma
"comp_inverse_left[real_abs_le1, real_abs_le_pi2]"
("f"
"asin"
"x"
"x!3" ))
(("1"
(lemma
"bijective_inverse[real_abs_lt1, real_abs_lt_pi2]"
("f"
"LAMBDA (x: real_abs_lt1): asin(x)"
"x"
"x!3"
"y"
"x!2" ))
(("1"
(simplify
1)
(("1"
(assert )
nil
nil ))
nil )
("2"
(propax)
nil
nil ))
nil )
("2"
(propax)
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(hide -1 -2 -4 -5 2)
(("2"
(skosimp*)
(("2"
(typepred "x1!1" )
(("2"
(lemma
"sin_value_strict_increasing" )
(("2"
(expand "strict_increasing?" )
(("2"
(inst-cp - "x1!1" "pi/2" )
(("2"
(inst-cp
-
"-pi/2"
"x1!1" )
(("2"
(case "x1!1<0" )
(("1"
(assert )
(("1"
(rewrite
"sin_value_pi2" )
(("1"
(rewrite
"sin_value_minus_pi2" )
(("1"
(inst
-
"x1!1"
"0" )
(("1"
(assert )
(("1"
(rewrite
"sin_value_0" )
(("1"
(expand
"sin_value" )
(("1"
(assert )
(("1"
(replace
-7
1
rl)
(("1"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(assert )
(("2"
(case "x1!1=0" )
(("1"
(replace -1)
(("1"
(lemma
"sin_value_0" )
(("1"
(expand
"sin_value"
-1)
(("1"
(replace
-8
+
rl)
(("1"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(inst
-
"0"
"x1!1" )
(("2"
(rewrite
"sin_value_0" )
(("2"
(assert )
(("2"
(rewrite
"sin_value_pi2" )
(("2"
(rewrite
"sin_value_minus_pi2" )
(("2"
(expand
"sin_value" )
(("2"
(replace
-6
+
rl)
(("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 )
("3" (hide -2 -3 2)
(("3" (skosimp*)
(("3" (typepred "x!2" )
(("3" (hide -2)
(("3" (lemma "asin_bij" )
(("3"
(lemma
"bijective_inverse_is_bijective[real_abs_le1,real_abs_le_pi2]"
("f" "asin" ))
(("1" (lemma "sin_value_strict_increasing" )
(("1" (expand "strict_increasing?" )
(("1"
(inst-cp - "-pi/2" "x!2" )
(("1"
(inst-cp - "x!2" "pi/2" )
(("1"
(case "x!2<0" )
(("1"
(assert )
(("1"
(inst - "x!2" "0" )
(("1"
(assert )
(("1"
(rewrite "sin_value_0" )
(("1"
(rewrite "sin_value_pi2" )
(("1"
(rewrite
"sin_value_minus_pi2" )
(("1"
(expand "sin_value" )
(("1"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(case "x!2=0" )
(("1"
(replace -1)
(("1"
(lemma "sin_value_0" )
(("1"
(expand "sin_value" -1)
(("1" (assert ) nil nil ))
nil ))
nil ))
nil )
("2"
(inst - "0" "x!2" )
(("2"
(rewrite "sin_value_0" )
(("2"
(rewrite "sin_value_pi2" )
(("2"
(rewrite
"sin_value_minus_pi2" )
(("2"
(expand
"sin_value"
(-1 -2 -3))
(("2"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (propax) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide-all-but 1)
(("2" (lemma "asin_bij" )
(("2" (expand "bijective?" )
(("2" (expand "injective?" )
(("2" (expand "surjective?" )
(("2" (flatten)
(("2" (split)
(("1" (skosimp*)
(("1" (inst -2 "x1!1" "x2!1" )
(("1" (assert ) nil nil )) nil ))
nil )
("2" (hide -1)
(("2" (skosimp*)
(("2"
(inst - "y!1" )
(("2"
(skosimp*)
(("2"
(typepred "x!2" )
(("2"
(expand "<=" -1)
(("2"
(split -1)
(("1"
(expand "<=" -2)
(("1"
(split -2)
(("1"
(inst + "x!2" )
(("1" (assert ) nil nil ))
nil )
("2"
(replace -1)
(("2"
(rewrite "asin_1" )
(("2"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(typepred "y!1" )
(("2"
(case
"x!2 = 1 OR x!2 = -1" )
(("1"
(hide -3)
(("1"
(split -1)
(("1"
(replace -1)
(("1"
(rewrite "asin_1" )
(("1"
(assert )
nil
nil ))
nil ))
nil )
("2"
(replace -1)
(("2"
(rewrite
"asin_minus1" )
(("2"
(assert )
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 )
("3" (hide-all-but 1)
(("3" (skosimp*)
(("3" (typepred "x!2" )
(("3" (lemma "asin_bij" )
(("3" (expand "bijective?" )
(("3" (expand "injective?" )
(("3" (expand "surjective?" )
(("3" (flatten)
(("3" (hide -2)
(("3"
(lemma "asin_strict_increasing" )
(("3"
(expand "strict_increasing?" )
(("3"
(case "x!2<0" )
(("1"
(assert )
(("1"
(inst-cp -2 "-x!2" "1" )
(("1"
(inst-cp -2 "x!2" "0" )
(("1"
(rewrite "asin_0" )
(("1"
(rewrite "asin_1" )
(("1"
(rewrite "asin_neg" )
(("1"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(assert )
(("2"
(case "x!2 = 0" )
(("1"
(replace -1)
(("1"
(rewrite "asin_0" )
(("1" (assert ) nil nil ))
nil ))
nil )
("2"
(inst-cp -1 "0" "x!2" )
(("2"
(inst -1 "x!2" "1" )
(("2"
(assert )
(("2"
(rewrite "asin_1" )
(("2"
(rewrite "asin_0" )
(("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 )
((deriv_asin_fun formula-decl nil asin nil )
(asin const-decl "real_abs_le_pi2" asin nil )
(real_abs_le_pi2 nonempty-type-eq-decl nil asin nil )
(real_abs_le1 nonempty-type-eq-decl nil asin nil )
(real_abs_lt_pi2 nonempty-type-eq-decl nil atan nil )
(pi const-decl "posreal" atan nil )
(real_abs_lt1 nonempty-type-eq-decl nil asin nil )
(asin_bij formula-decl nil asin nil )
(strict_increasing? const-decl "bool" real_fun_preds "reals/" )
(inverse_derivable formula-decl nil derivative_inverse "analysis/" )
(sqrt const-decl "{nnz: nnreal | nnz * nnz = nnx}" sqrt "reals/" )
(sq const-decl "nonneg_real" sq "reals/" )
(sq_lt_abs formula-decl nil sq "reals/" )
(sqrt_pos judgement-tcc nil sqrt "reals/" )
(asin_1 formula-decl nil asin nil )
(asin_minus1 formula-decl nil asin nil )
(asin_strict_increasing formula-decl nil asin nil )
(asin_0 formula-decl nil asin nil )
(asin_neg formula-decl nil asin nil ))
nil )
(sin_value_derivable-1 nil 3262955166
("" (skosimp*)
(("" (expand "sin_value" )
(("" (lemma "deriv_asin_fun" )
(("" (lemma "asin_derivable2" )
((""
(case "bijective?[real_abs_lt1,real_abs_lt_pi](LAMBDA (x:real_abs_lt1): asin(x))" )
(("1"
(case "inverse?[real_abs_lt1, real_abs_lt_pi]((LAMBDA (x:real_abs_lt_pi): inverse(asin)(x)),(LAMBDA (x:real_abs_lt1): asin(x)))" )
(("1"
(lemma
"inverse_derivable[real_abs_lt1, real_abs_lt_pi]"
("F" "LAMBDA (x: real_abs_lt1): asin(x)" "G"
"LAMBDA (x: real_abs_lt_pi): inverse(asin)(x)" "f"
"LAMBDA (x: real_abs_lt1): 1 / sqrt(1 - sq(x))" "x"
"x!1" ))
(("1" (replace -2 -1)
(("1" (replace -3 -1)
(("1" (replace -4 -1)
(("1" (replace -5 -1) (("1" (propax) nil nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide-all-but 1)
(("2" (skosimp*)
(("2" (typepred "x!2" )
(("2" (lemma "sq_lt_abs" ("a" "x!2" "b" "1" ))
(("2" (expand "sq" -1 2)
(("2" (expand "abs" -1 2)
(("2" (lemma "sqrt_pos" ("px" "1-sq(x!2)" ))
(("1" (assert ) nil nil )
("2" (grind) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("3" (hide-all-but 1)
(("3" (skosimp*)
(("3" (typepred "x!2" )
(("3" (lemma "sq_lt_abs" ("a" "x!2" "b" "1" ))
(("3" (expand "sq" -1 2)
(("3" (expand "abs" -1 2)
(("3" (lemma "sqrt_pos" ("px" "1-sq(x!2)" ))
(("1" (assert ) nil nil )
("2" (grind) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("4" (hide-all-but 1)
(("4" (skosimp*)
(("4" (typepred "x!2" )
(("4" (lemma "sq_lt_abs" ("a" "x!2" "b" "1" ))
(("4" (case "x!2=0" )
(("1" (inst + "pi/4" )
(("1" (assert ) nil nil )) nil )
("2" (inst + "0" ) (("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("5" (hide-all-but 1)
(("5" (skosimp*)
(("5" (typepred "x!2" )
(("5" (typepred "y!1" )
(("5" (case "x!2<0" )
(("1" (case "y!1<0" )
(("1" (case "z!1<0" )
(("1" (assert ) nil nil )
("2" (assert ) nil nil ))
nil )
("2" (case "z!1<0" )
(("1" (assert ) nil nil )
("2" (assert ) nil nil ))
nil ))
nil )
("2" (case "y!1<0" )
(("1" (case "z!1<0" )
(("1" (assert ) nil nil )
("2" (assert ) nil nil ))
nil )
("2" (case "z!1<0" )
(("1" (assert ) nil nil )
("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("6" (hide-all-but 1)
(("6" (skosimp*)
(("6" (typepred "x!2" )
(("6" (case "x!2=0" )
(("1" (inst + "1/2" ) (("1" (assert ) nil nil ))
nil )
("2" (inst + "0" ) (("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("7" (hide-all-but 1)
(("7" (skosimp*)
(("7" (typepred "x!2" )
(("7" (typepred "y!1" )
(("7" (case "x!2<0" )
(("1" (case "y!1<0" )
(("1" (case "z!1<0" )
(("1" (assert ) nil nil )
("2" (assert ) nil nil ))
nil )
("2" (case "z!1<0" )
(("1" (assert ) nil nil )
("2" (assert ) nil nil ))
nil ))
nil )
("2" (case "y!1<0" )
(("1" (case "z!1<0" )
(("1" (assert ) nil nil )
("2" (assert ) nil nil ))
nil )
("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide -2 -3 2)
(("2" (name "F" "LAMBDA (x: real_abs_lt1): asin(x)" )
(("2" (replace -1)
(("2"
(name "G"
"LAMBDA (x: real_abs_lt_pi): inverse(asin)(x)" )
(("2" (replace -1)
(("2" (expand "inverse?" )
(("2" (skosimp*)
(("2" (typepred "r!1" )
(("2"
(lemma
"extensionality[real_abs_lt_pi,real_abs_lt1]"
("f"
"inverse[real_abs_lt1,real_abs_lt_pi](F)"
"g"
"G" ))
(("1"
(split -1)
(("1"
(replace -1 1 rl)
(("1"
(lemma
"comp_inverse_right[real_abs_lt1, real_abs_lt_pi]"
("f" "F" "y" "r!1" ))
(("1" (propax) nil nil )
("2" (propax) nil nil ))
nil ))
nil )
("2"
(replace -3 1 rl)
(("2"
(replace -4 1 rl)
(("2"
(skosimp*)
(("2"
(replace -4 -6 rl)
(("2"
(hide 2 -1 -2 -3 -4 -5)
(("2"
(copy -1)
(("2"
(expand
"bijective?"
-1)
(("2"
(flatten)
(("2"
(expand
"surjective?" )
(("2"
(inst - "x!2" )
(("2"
(skosimp*)
(("2"
(typepred
"x!2" )
(("2"
(typepred
"x!3" )
(("2"
(lemma
"asin_bij" )
(("2"
(lemma
"comp_inverse_left[real_abs_le1, real_abs_le_pi2]"
("f"
"asin"
"x"
"x!3" ))
(("1"
(lemma
"bijective_inverse[real_abs_lt1, real_abs_lt_pi]"
("f"
"LAMBDA (x: real_abs_lt1): asin(x)"
"x"
"x!3"
"y"
"x!2" ))
(("1"
(simplify
1)
(("1"
(assert )
nil
nil ))
nil )
("2"
(propax)
nil
nil ))
nil )
("2"
(propax)
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(hide -1 -2 -4 -5 2)
(("2"
(skosimp*)
(("2"
(typepred "x1!1" )
(("2"
(lemma
"sin_value_strict_increasing" )
(("2"
(expand "strict_increasing?" )
(("2"
(inst-cp - "x1!1" "pi/2" )
(("2"
(inst-cp
-
"-pi/2"
"x1!1" )
(("2"
(case "x1!1<0" )
(("1"
(assert )
(("1"
(rewrite
"sin_value_pi2" )
(("1"
(rewrite
"sin_value_minus_pi2" )
(("1"
(inst
-
"x1!1"
"0" )
(("1"
(assert )
(("1"
(rewrite
"sin_value_0" )
(("1"
(expand
"sin_value" )
(("1"
(assert )
(("1"
(replace
-7
1
rl)
(("1"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(assert )
(("2"
(case "x1!1=0" )
(("1"
(replace -1)
(("1"
(lemma
"sin_value_0" )
(("1"
(expand
"sin_value"
-1)
(("1"
(replace
-8
+
rl)
(("1"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(inst
-
"0"
"x1!1" )
(("2"
(rewrite
"sin_value_0" )
(("2"
(assert )
(("2"
(rewrite
"sin_value_pi2" )
(("2"
(rewrite
"sin_value_minus_pi2" )
(("2"
(expand
"sin_value" )
(("2"
(replace
-6
+
rl)
(("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 )
("3" (hide -2 -3 2)
(("3" (skosimp*)
(("3" (typepred "x!2" )
(("3" (hide -2)
(("3" (lemma "asin_bij" )
(("3"
(lemma
"bijective_inverse_is_bijective[real_abs_le1,real_abs_le_pi2]"
("f" "asin" ))
(("1" (lemma "sin_value_strict_increasing" )
(("1" (expand "strict_increasing?" )
(("1"
(inst-cp - "-pi/2" "x!2" )
(("1"
(inst-cp - "x!2" "pi/2" )
(("1"
(case "x!2<0" )
(("1"
(assert )
(("1"
(inst - "x!2" "0" )
(("1"
(assert )
(("1"
(rewrite "sin_value_0" )
(("1"
(rewrite "sin_value_pi2" )
(("1"
(rewrite
"sin_value_minus_pi2" )
(("1"
(expand "sin_value" )
(("1"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(case "x!2=0" )
(("1"
(replace -1)
(("1"
(lemma "sin_value_0" )
(("1"
(expand "sin_value" -1)
(("1" (assert ) nil nil ))
nil ))
nil ))
nil )
("2"
(inst - "0" "x!2" )
(("2"
(rewrite "sin_value_0" )
(("2"
(rewrite "sin_value_pi2" )
(("2"
(rewrite
"sin_value_minus_pi2" )
(("2"
(expand
"sin_value"
(-1 -2 -3))
(("2"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (propax) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide-all-but 1)
(("2" (lemma "asin_bij" )
(("2" (expand "bijective?" )
(("2" (expand "injective?" )
(("2" (expand "surjective?" )
(("2" (flatten)
(("2" (split)
(("1" (skosimp*)
(("1" (inst -2 "x1!1" "x2!1" )
(("1" (assert ) nil nil )) nil ))
nil )
("2" (hide -1)
(("2" (skosimp*)
(("2"
(inst - "y!1" )
(("2"
(skosimp*)
(("2"
(typepred "x!2" )
(("2"
(expand "<=" -1)
(("2"
(split -1)
(("1"
(expand "<=" -2)
(("1"
(split -2)
(("1"
(inst + "x!2" )
(("1" (assert ) nil nil ))
nil )
("2"
(replace -1)
(("2"
(rewrite "asin_1" )
(("2"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(typepred "y!1" )
(("2"
(case
"x!2 = 1 OR x!2 = -1" )
(("1"
(hide -3)
(("1"
(split -1)
(("1"
(replace -1)
(("1"
(rewrite "asin_1" )
(("1"
(assert )
nil
nil ))
nil ))
nil )
("2"
(replace -1)
(("2"
(rewrite
"asin_minus1" )
(("2"
(assert )
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 )
("3" (hide-all-but 1)
(("3" (skosimp*)
(("3" (typepred "x!2" )
(("3" (lemma "asin_bij" )
(("3" (expand "bijective?" )
(("3" (expand "injective?" )
(("3" (expand "surjective?" )
(("3" (flatten)
(("3" (hide -2)
(("3"
(lemma "asin_strict_increasing" )
(("3"
(expand "strict_increasing?" )
(("3"
(case "x!2<0" )
(("1"
(assert )
(("1"
(inst-cp -2 "-x!2" "1" )
(("1"
(inst-cp -2 "x!2" "0" )
(("1"
(rewrite "asin_0" )
(("1"
(rewrite "asin_1" )
(("1"
(rewrite "asin_neg" )
(("1"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(assert )
(("2"
(case "x!2 = 0" )
(("1"
(replace -1)
(("1"
(rewrite "asin_0" )
(("1" (assert ) nil nil ))
nil ))
nil )
("2"
(inst-cp -1 "0" "x!2" )
(("2"
(inst -1 "x!2" "1" )
(("2"
(assert )
(("2"
(rewrite "asin_1" )
(("2"
(rewrite "asin_0" )
(("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 )
((asin_neg formula-decl nil asin nil )
(asin_0 formula-decl nil asin nil )
(asin_strict_increasing formula-decl nil asin nil )
(asin_minus1 formula-decl nil asin nil )
(asin_1 formula-decl nil asin nil )
(sqrt_pos judgement-tcc nil sqrt "reals/" )
(sq_lt_abs formula-decl nil sq "reals/" )
(sq const-decl "nonneg_real" sq "reals/" )
(sqrt const-decl "{nnz: nnreal | nnz * nnz = nnx}" sqrt "reals/" )
(inverse_derivable formula-decl nil derivative_inverse "analysis/" )
(strict_increasing? const-decl "bool" real_fun_preds "reals/" )
(asin_bij formula-decl nil asin nil )
(real_abs_lt1 nonempty-type-eq-decl nil asin nil )
(pi const-decl "posreal" atan nil )
(real_abs_le1 nonempty-type-eq-decl nil asin nil )
(real_abs_le_pi2 nonempty-type-eq-decl nil asin nil )
(asin const-decl "real_abs_le_pi2" asin nil )
(deriv_asin_fun formula-decl nil asin nil ))
shostak))
(sin_value_derivable_fun 0
(sin_value_derivable_fun-1 nil 3425654761
("" (lemma "sin_value_derivable" )
(("" (expand "derivable?" 1) (("" (propax) nil nil )) nil )) nil )
((minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil )
(derivable? const-decl "bool" derivatives "analysis/" )
(sin_value_derivable formula-decl nil sincos_quad nil ))
nil ))
(deriv_sin_value_TCC1 0
(deriv_sin_value_TCC1-2 nil 3425656231
("" (lemma "sin_value_derivable_fun" ) (("" (propax) nil nil )) nil )
((sin_value_derivable_fun formula-decl nil sincos_quad nil )) nil )
(deriv_sin_value_TCC1-1 nil 3262954516
("" (lemma "sin_value_derivable2" ) (("" (propax) nil nil )) nil ) nil
shostak))
(deriv_sin_value_TCC2 0
(deriv_sin_value_TCC2-1 nil 3262954537
("" (skosimp*)
(("" (assert )
(("" (typepred "x!1" )
(("" (expand "abs" )
(("" (lift-if) (("" (ground) nil nil )) nil )) nil ))
nil ))
nil ))
nil )
((real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(abs const-decl "{n: nonneg_real | n >= m AND n >= -m}" real_defs
nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(minus_real_is_real application-judgement "real" reals 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 )
(numfield nonempty-type-eq-decl nil 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 )
(- const-decl "[numfield -> numfield]" number_fields nil )
(>= const-decl "bool" reals 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 )
(pi const-decl "posreal" atan nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(real_abs_lt_pi2 nonempty-type-eq-decl nil atan nil )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil ))
shostak))
(deriv_sin_value 0
(deriv_sin_value-3 nil 3425656104
("" (lemma "asin_derivable_fun" )
(("" (lemma "deriv_asin_fun" )
((""
(case "bijective?[real_abs_lt1,real_abs_lt_pi2](LAMBDA (x: real_abs_lt1): asin(x))" )
(("1"
(tccs-step
(case "inverse?[real_abs_lt1, real_abs_lt_pi2]((LAMBDA (x:real_abs_lt_pi2): sin_value(x)),(LAMBDA (x: real_abs_lt1): asin(x)))" )
:label "TCC" :hide? t)
(("1"
(lemma "deriv_inverse_fun[real_abs_lt1, real_abs_lt_pi2]"
("F" "LAMBDA (x: real_abs_lt1): asin(x)" "G"
"LAMBDA (x: real_abs_lt_pi2): sin_value(x)" "f"
"LAMBDA (x: real_abs_lt1): 1 / sqrt(1 - sq(x))" ))
(("1" (replace -2 -1)
(("1" (replace -3 -1)
(("1" (replace -4 -1)
(("1" (replace -5 -1)
(("1" (replace -1 1)
(("1"
(lemma "extensionality"
("f" "(LAMBDA (x_1: real_abs_lt_pi2):
1 /
(LAMBDA (x: real_abs_lt1): 1 / sqrt(1 - sq(x)))
((LAMBDA (x: real_abs_lt_pi2): sin_value(x))(x_1)))"
"g" "(LAMBDA (x: real_abs_lt_pi2):
IF x < 0 THEN cos_value(-x) ELSE cos_value(x) ENDIF)"))
(("1" (split -1)
(("1"
(lemma "extensionality"
("f"
"LAMBDA (x: real_abs_lt_pi2): IF x < 0 THEN cos_value(-x) ELSE cos_value(x) ENDIF"
"g"
"LAMBDA (x: real_abs_lt_pi2): cos_value(abs(x))" ))
(("1" (split -1)
(("1"
(replace -1 1 rl)
(("1" (propax) nil nil ))
nil )
("2"
(skosimp*)
(("2"
(hide-all-but 1)
(("2"
(expand "abs" )
(("2" (propax) nil nil ))
nil ))
nil ))
nil ))
nil )
("2" (skosimp*)
(("2"
(hide-all-but 1)
(("2"
(typepred "x!1" )
(("2"
(expand "abs" )
(("2"
(case "x!1<0" )
(("1" (assert ) nil nil )
("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("3" (skosimp*) (("3" (assert ) nil nil ))
nil )
("4" (skosimp*) (("4" (assert ) nil nil ))
nil ))
nil )
("2" (hide 2)
(("2" (skosimp*)
(("2"
(hide-all-but 1)
(("2"
(typepred "x!1" )
(("2"
(case "abs(sin_value(x!1)) < 1" )
(("1"
(lemma
"sq_lt_abs"
("a" "sin_value(x!1)" "b" "1" ))
(("1"
(expand "abs" -1 2)
(("1"
(expand "sq" -1 2)
(("1"
(replace -1 -2 rl)
(("1"
(typepred
"sq(sin_value(x!1))" )
(("1"
(lemma
"sqrt_pos"
("px"
"1-sq(sin_value(x!1))" ))
(("1"
(rewrite
"div_div1"
1)
(("1"
(lemma
"trichotomy"
("x" "x!1" ))
(("1"
(split -1)
(("1"
(rewrite
"cos_eqv_sqrt_sin_value" )
(("1"
(assert )
nil
nil ))
nil )
("2"
(replace -1)
(("2"
(rewrite
"cos_value_0" )
(("2"
(rewrite
"sin_value_0" )
(("2"
(expand
"sq"
1)
(("2"
(rewrite
"sqrt_1" )
nil
nil ))
nil ))
nil ))
nil ))
nil )
("3"
(lemma
"sin_value_neg"
("xs" "-x!1" ))
(("3"
(replace
-1
1)
(("3"
(hide -1)
(("3"
(rewrite
"sq_neg"
1)
(("3"
(rewrite
"cos_eqv_sqrt_sin_value"
1)
(("3"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(hide 2)
(("2"
(lemma
"sin_value_strict_increasing" )
(("2"
(expand "strict_increasing?" )
(("2"
(expand "abs" )
(("2"
(lemma
"trichotomy"
("x" "x!1" ))
(("2"
(split -1)
(("1"
(inst-cp - "0" "x!1" )
(("1"
(rewrite
"sin_value_0" )
(("1"
(assert )
(("1"
(inst
-
"x!1"
"pi/2" )
(("1"
(rewrite
"sin_value_pi2" )
(("1"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(replace -1)
(("2"
(rewrite
"sin_value_0" )
(("2"
(assert )
nil
nil ))
nil ))
nil )
("3"
(inst-cp - "x!1" "0" )
(("3"
(rewrite
"sin_value_0" )
(("3"
(assert )
(("3"
(inst
-
"-pi/2"
"x!1" )
(("3"
(rewrite
"sin_value_minus_pi2" )
(("3"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide-all-but 1)
(("2" (skosimp*)
(("2" (typepred "x!1" )
(("2" (assert ) nil nil )) nil ))
nil ))
nil )
("3" (hide-all-but 1)
(("3" (skosimp*)
(("3" (typepred "x!1" )
(("3" (assert ) nil nil )) nil ))
nil ))
nil )
("4" (hide-all-but 1)
(("4" (skosimp*)
(("4"
(lemma "sq_lt_abs"
("a" "sin_value(x!1)" "b" "1" ))
(("4"
(expand "abs" -1 2)
(("4"
(expand "sq" -1 2)
(("4"
(ground)
(("4" (grind) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("5" (hide-all-but 1)
(("5" (skosimp*)
(("5" (assert )
(("5"
(typepred "x!2" )
(("5"
(hide -3)
(("5"
(grind)
(("5"
(mult-ineq -2 -2)
(("1" (assert ) nil nil )
("2"
(lift-if)
(("2" (ground) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("6" (hide-all-but 1)
(("6" (reveal "TCC" )
(("6" (skosimp)
(("6"
(inst? -2)
(("6"
(flatten)
(("6" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide-all-but 1)
(("2" (skosimp*)
(("2" (typepred "x!1" )
(("2" (lemma "pi_bnds" )
(("2" (flatten)
(("2" (lemma "sq_lt_abs" ("a" "x!1" "b" "1" ))
(("2" (expand "abs" -1 2)
(("2" (expand "sq" -1 2)
(("2" (lemma "sqrt_pos" ("px" "1-sq(x!1)" ))
(("1"
(typepred "sq(x!1)" )
(("1"
(lemma
"sqrt_le"
("nny" "1-sq(x!1)" "nnz" "1" ))
(("1"
(rewrite "sqrt_1" )
(("1" (assert ) nil nil ))
nil )
("2" (assert ) nil nil ))
nil ))
nil )
("2"
(assert )
(("2"
(expand "abs" )
(("2"
(lift-if)
(("2" (ground) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("3" (hide-all-but 1)
(("3" (skosimp*)
(("3" (typepred "x!1" )
(("3" (lemma "sq_lt_abs" ("a" "x!1" "b" "1" ))
(("3" (expand "abs" -1 2)
(("3" (expand "sq" -1 2)
(("3" (lemma "sqrt_pos" ("px" "1-sq(x!1)" ))
(("1" (assert ) nil nil )
("2" (assert )
(("2" (expand "abs" )
(("2"
(lift-if)
(("2" (ground) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("4" (hide-all-but 1)
(("4" (reveal "TCC" )
(("4" (skosimp*)
(("4" (inst? -2)
(("4" (flatten) (("4" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (split)
(("1" (hide -2 -3 2)
(("1" (expand "inverse?" )
(("1" (skosimp*)
(("1" (typepred "r!1" )
(("1" (typepred "d!1" )
(("1"
(lemma "extensionality"
("f"
"inverse[real_abs_lt1, real_abs_lt_pi2](LAMBDA (x: real_abs_lt1): asin(x))"
"g"
"LAMBDA (x: real_abs_lt_pi2): sin_value(x)" ))
(("1" (split -1)
(("1"
(lemma
"comp_inverse_right[real_abs_lt1, real_abs_lt_pi2]"
("f" "LAMBDA (x: real_abs_lt1): asin(x)"
"y" "r!1" ))
(("1" (replace -2 -1)
(("1"
(simplify -1)
(("1" (propax) nil nil ))
nil ))
nil )
("2" (propax) nil nil ))
nil )
("2" (hide 2)
(("2" (skosimp*)
(("2"
(expand "sin_value" )
(("2"
(lemma
"bijective_inverse[real_abs_lt1, real_abs_lt_pi2]"
("f"
"LAMBDA (x: real_abs_lt1): asin(x)"
"y"
"x!1"
"x"
"inverse(asin)(x!1)" ))
(("1"
(replace -1 1)
(("1"
(simplify 1)
(("1"
(lemma "asin_bij" )
(("1"
(lemma
"comp_inverse_right[real_abs_le1, real_abs_le_pi2]"
("f" "asin" "y" "x!1" ))
(("1" (assert ) nil nil )
("2" (propax) nil nil ))
nil ))
nil ))
nil ))
nil )
("2" (propax) nil nil )
("3"
(hide 2 -1 -2 -3 -4)
(("3"
(typepred "x!1" )
(("3"
(lemma
"sin_value_strict_increasing" )
(("3"
(expand "strict_increasing?" )
(("3"
(case
"abs(sin_value(x!1)) < 1" )
(("1"
(expand "sin_value" -1)
(("1" (ground) nil nil ))
nil )
("2"
(hide 2)
(("2"
(expand "abs" )
(("2"
(lemma
"trichotomy"
("x" "x!1" ))
(("2"
(split -1)
(("1"
(inst-cp
-
"0"
"x!1" )
(("1"
(rewrite
"sin_value_0" )
(("1"
(assert )
(("1"
(inst
-
"x!1"
"pi/2" )
(("1"
(rewrite
"sin_value_pi2" )
(("1"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(replace -1)
(("2"
(rewrite
"sin_value_0" )
(("2"
(assert )
nil
nil ))
nil ))
nil )
("3"
(inst-cp
-
"x!1"
"0" )
(("3"
(rewrite
"sin_value_0" )
(("3"
(assert )
(("3"
(assert )
(("3"
(inst
-
"-pi/2"
"x!1" )
(("3"
(assert )
(("3"
(rewrite
"sin_value_minus_pi2" )
(("3"
(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 )
("2" (hide-all-but 1)
(("2" (skosimp*)
(("2" (typepred "x!1" )
(("2" (lemma "sin_value_strict_increasing" )
(("2" (expand "strict_increasing?" )
(("2" (lemma "trichotomy" ("x" "x!1" ))
(("2" (split -1)
(("1" (inst-cp - "0" "x!1" )
(("1" (rewrite "sin_value_0" )
(("1"
(assert )
(("1"
(inst - "x!1" "pi/2" )
(("1"
(rewrite "sin_value_pi2" )
(("1" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (replace -1)
(("2" (rewrite "sin_value_0" )
(("2" (assert ) nil nil )) nil ))
nil )
("3" (inst-cp - "x!1" "0" )
(("3" (rewrite "sin_value_0" )
(("3"
(assert )
(("3"
(inst - "-pi/2" "x!1" )
(("3"
(assert )
(("3"
(rewrite "sin_value_minus_pi2" )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide -1 -2 2)
(("2" (lemma "asin_bij" )
(("2" (expand "bijective?" )
(("2" (expand "injective?" )
(("2" (expand "surjective?" )
(("2" (flatten)
(("2" (split)
(("1" (skosimp*)
(("1" (inst -2 "x1!1" "x2!1" )
(("1" (assert ) nil nil )) nil ))
nil )
("2" (hide -1)
(("2" (skosimp*)
(("2" (inst - "y!1" )
(("2" (typepred "y!1" )
(("2"
(skosimp*)
(("2"
(typepred "x!1" )
(("2"
(case-replace "abs(x!1) = 1" )
(("1" (grind) nil nil )
("2"
(inst + "x!1" )
(("2" (grind) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("3" (hide -1 -2 2)
(("3" (skosimp*)
(("3" (typepred "x!1" )
(("3" (lemma "asin_strict_increasing" )
(("3" (expand "strict_increasing?" )
(("3" (lemma "trichotomy" ("x" "x!1" ))
(("3" (split -1)
(("1" (inst-cp - "0" "x!1" )
(("1" (rewrite "asin_0" )
(("1" (assert )
(("1" (inst - "x!1" "1" )
(("1"
(rewrite "asin_1" )
(("1" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (replace -1)
(("2" (rewrite "asin_0" )
(("2" (assert ) (("2" (assert ) nil nil )) nil ))
nil ))
nil )
("3" (inst-cp - "x!1" "0" )
(("3" (rewrite "asin_0" )
(("3" (assert )
(("3" (inst - "-1" "x!1" )
(("3"
(rewrite "asin_minus1" )
(("3" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((deriv_asin_fun formula-decl nil asin nil )
(asin_0 formula-decl nil asin nil )
(asin_1 formula-decl nil asin nil )
(asin_minus1 formula-decl nil asin nil )
(asin_strict_increasing formula-decl nil asin nil )
(surjective? const-decl "bool" functions nil )
(x!1 skolem-const-decl "real_abs_le1" sincos_quad nil )
(real_div_nzreal_is_real application-judgement "real" reals nil )
(injective? const-decl "bool" functions nil )
(TRUE const-decl "bool" booleans nil )
(id const-decl "(bijective?[T, T])" identity nil )
(sin_value const-decl "[real_abs_le_pi2 -> real_abs_le1]"
sincos_quad nil )
(inverse? const-decl "bool" function_inverse_def nil )
(minus_odd_is_odd application-judgement "odd_int" integers nil )
(IMPLIES const-decl "[bool, bool -> bool]" booleans nil )
(sqrt_le formula-decl nil sqrt "reals/" )
(posrat_div_posrat_is_posrat application-judgement "posrat"
rationals nil )
(pi_bnds formula-decl nil atan nil )
(mult_divides1 application-judgement "(divides(n))" divides nil )
(odd_times_odd_is_odd application-judgement "odd_int" integers nil )
(posint_times_posint_is_posint application-judgement "posint"
integers nil )
(lt_times_lt_any1 formula-decl nil extra_real_props nil )
(real_times_real_is_real application-judgement "real" reals nil )
(Integral const-decl "real" integral_def "analysis/" )
(atan_value const-decl "real" atan nil )
(atan const-decl "real_abs_lt_pi2" atan nil )
(inverse const-decl "D" function_inverse nil )
(real_ge_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 )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(abs const-decl "{n: nonneg_real | n >= m AND n >= -m}" real_defs
nil )
(strict_increasing? const-decl "bool" real_fun_preds "reals/" )
(sin_value_minus_pi2 formula-decl nil sincos_quad nil )
(minus_even_is_even application-judgement "even_int" integers nil )
(sin_value_pi2 formula-decl nil sincos_quad nil )
(sin_value_strict_increasing formula-decl nil sincos_quad nil )
(sq_lt_abs formula-decl nil sq "reals/" )
(nonzero_real nonempty-type-eq-decl nil reals nil )
(div_div1 formula-decl nil real_props nil )
(nnreal_times_nnreal_is_nnreal application-judgement "nnreal"
real_types nil )
(nnreal_div_posreal_is_nnreal application-judgement "nnreal"
real_types nil )
(cos_eqv_sqrt_sin_value formula-decl nil sincos_quad nil )
(nnreal_quad1_closed nonempty-type-eq-decl nil sincos_quad nil )
(cos_value_0 formula-decl nil sincos_quad nil )
(sqrt_1 formula-decl nil sqrt "reals/" )
(sqrt_pos application-judgement "posreal" sqrt "reals/" )
(posreal_times_posreal_is_posreal application-judgement "posreal"
real_types nil )
(sin_value_0 formula-decl nil sincos_quad nil )
(sq_neg formula-decl nil sq "reals/" )
(sin_value_neg formula-decl nil sincos_quad nil )
(trichotomy formula-decl nil real_axioms nil )
(real_gt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(sqrt_pos judgement-tcc nil sqrt "reals/" )
(NOT const-decl "[bool -> bool]" booleans nil )
(cos_value const-decl "[nnreal_le_pi -> real_abs_le1]" sincos_quad
nil )
(nnreal_le_pi nonempty-type-eq-decl nil acos nil )
(IF const-decl "[boolean, T, T -> T]" if_def nil )
(extensionality formula-decl nil functions nil )
(minus_real_is_real application-judgement "real" reals nil )
(not_one_element? const-decl "bool" deriv_domain_def "analysis/" )
(connected? const-decl "bool" deriv_domain_def "analysis/" )
(sq const-decl "nonneg_real" sq "reals/" )
(- const-decl "[numfield, numfield -> numfield]" number_fields nil )
(sqrt const-decl "{nnz: nnreal | nnz * nnz = nnx}" sqrt "reals/" )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(= const-decl "[T, T -> boolean]" equalities nil )
(nnreal type-eq-decl nil real_types nil )
(nzreal nonempty-type-eq-decl nil reals nil )
(deriv_inverse_fun formula-decl nil derivative_inverse "analysis/" )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(real_minus_real_is_real application-judgement "real" reals nil )
(comp_inverse_right formula-decl nil function_inverse nil )
(bijective_inverse formula-decl nil function_inverse nil )
(asin_bij formula-decl nil asin nil )
(minus_nzreal_is_nzreal application-judgement "nzreal" real_types
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 )
(bool nonempty-type-eq-decl nil booleans nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(< const-decl "bool" reals nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(real_abs_lt1 nonempty-type-eq-decl nil asin nil )
(/= const-decl "boolean" notequal nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(>= const-decl "bool" reals 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 )
(pi const-decl "posreal" atan nil )
(real_abs_lt_pi2 nonempty-type-eq-decl nil atan nil )
(bijective? const-decl "bool" functions nil )
(<= const-decl "bool" reals nil )
(real_abs_le1 nonempty-type-eq-decl nil asin nil )
(real_abs_le_pi2 nonempty-type-eq-decl nil asin nil )
(asin const-decl "real_abs_le_pi2" asin nil )
(asin_derivable_fun formula-decl nil asin nil ))
nil )
(deriv_sin_value-2 nil 3408977683
("" (lemma "asin_derivable2" )
(("" (lemma "deriv_asin_fun" )
((""
(case "bijective?[real_abs_lt1,real_abs_lt_pi2](LAMBDA (x: real_abs_lt1): asin(x))" )
(("1"
(case "inverse?[real_abs_lt1, real_abs_lt_pi2]((LAMBDA (x:real_abs_lt_pi2): sin_value(x)),(LAMBDA (x: real_abs_lt1): asin(x)))" )
(("1"
(lemma "deriv_inverse_fun[real_abs_lt1, real_abs_lt_pi2]"
("F" "LAMBDA (x: real_abs_lt1): asin(x)" "G"
"LAMBDA (x: real_abs_lt_pi2): sin_value(x)" "f"
"LAMBDA (x: real_abs_lt1): 1 / sqrt(1 - sq(x))" ))
(("1" (replace -2 -1)
(("1" (replace -3 -1)
(("1" (replace -4 -1)
(("1" (replace -5 -1)
(("1" (replace -1 1)
(("1"
(lemma "extensionality"
("f" "(LAMBDA (x_1: real_abs_lt_pi2):
1 /
(LAMBDA (x: real_abs_lt1): 1 / sqrt(1 - sq(x)))
((LAMBDA (x: real_abs_lt_pi2): sin_value(x))(x_1)))"
"g" "(LAMBDA (x: real_abs_lt_pi2):
IF x < 0 THEN cos_value(-x) ELSE cos_value(x) ENDIF)"))
(("1" (split -1)
(("1"
(lemma "extensionality"
("f"
"LAMBDA (x: real_abs_lt_pi2): IF x < 0 THEN cos_value(-x) ELSE cos_value(x) ENDIF"
"g"
"LAMBDA (x: real_abs_lt_pi2): cos_value(abs(x))" ))
(("1" (split -1)
(("1"
(replace -1 1 rl)
(("1" (propax) nil nil ))
nil )
("2"
(skosimp*)
(("2"
(hide-all-but 1)
(("2"
(expand "abs" )
(("2" (propax) nil nil ))
nil ))
nil ))
nil ))
nil )
("2" (skosimp*)
(("2"
(hide-all-but 1)
(("2"
(typepred "x!1" )
(("2"
(expand "abs" )
(("2"
(case "x!1<0" )
(("1" (assert ) nil nil )
("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("3" (skosimp*) (("3" (assert ) nil nil ))
nil )
("4" (skosimp*) (("4" (assert ) nil nil ))
nil ))
nil )
("2" (hide 2)
(("2" (skosimp*)
(("2"
(hide-all-but 1)
(("2"
(typepred "x!1" )
(("2"
(case "abs(sin_value(x!1)) < 1" )
(("1"
(lemma
"sq_lt_abs"
("a" "sin_value(x!1)" "b" "1" ))
(("1"
(expand "abs" -1 2)
(("1"
(expand "sq" -1 2)
(("1"
(replace -1 -2 rl)
(("1"
(typepred
"sq(sin_value(x!1))" )
(("1"
(lemma
"sqrt_pos"
("px"
"1-sq(sin_value(x!1))" ))
(("1"
(rewrite
"div_div1"
1)
(("1"
(lemma
"trichotomy"
("x" "x!1" ))
(("1"
(split -1)
(("1"
(rewrite
"cos_eqv_sqrt_sin_value" )
(("1"
(assert )
nil
nil ))
nil )
("2"
(replace -1)
(("2"
(rewrite
"cos_value_0" )
(("2"
(rewrite
"sin_value_0" )
(("2"
(expand
"sq"
1)
(("2"
(rewrite
"sqrt_1" )
nil
nil ))
nil ))
nil ))
nil ))
nil )
("3"
(lemma
"sin_value_neg"
("xs" "-x!1" ))
(("3"
(replace
-1
1)
(("3"
(hide -1)
(("3"
(rewrite
"sq_neg"
1)
(("3"
(rewrite
"cos_eqv_sqrt_sin_value"
1)
(("3"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(hide 2)
(("2"
(lemma
"sin_value_strict_increasing" )
(("2"
(expand "strict_increasing?" )
(("2"
(expand "abs" )
(("2"
(lemma
"trichotomy"
("x" "x!1" ))
(("2"
(split -1)
(("1"
(inst-cp - "0" "x!1" )
(("1"
(rewrite
"sin_value_0" )
(("1"
(assert )
(("1"
(inst
-
"x!1"
"pi/2" )
(("1"
(rewrite
"sin_value_pi2" )
(("1"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(replace -1)
(("2"
(rewrite
"sin_value_0" )
(("2"
(assert )
nil
nil ))
nil ))
nil )
("3"
(inst-cp - "x!1" "0" )
(("3"
(rewrite
"sin_value_0" )
(("3"
(assert )
(("3"
(inst
-
"-pi/2"
"x!1" )
(("3"
(rewrite
"sin_value_minus_pi2" )
(("3"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide-all-but 1)
(("2" (skosimp*)
(("2" (typepred "x!1" )
(("2" (assert ) nil nil )) nil ))
nil ))
nil )
("3" (hide-all-but 1)
(("3" (skosimp*)
(("3" (typepred "x!1" )
(("3" (assert ) nil nil )) nil ))
nil ))
nil )
("4" (hide-all-but 1)
(("4" (skosimp*)
(("4"
(lemma "sq_lt_abs"
("a" "sin_value(x!1)" "b" "1" ))
(("4"
(expand "abs" -1 2)
(("4"
(expand "sq" -1 2)
(("4"
(ground)
(("4" (grind) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("5" (hide-all-but 1)
(("5" (skosimp*)
(("5" (assert )
(("5"
(typepred "x!2" )
(("5"
(hide -3)
(("5"
(grind)
(("5"
(mult-ineq -2 -2)
(("1" (assert ) nil nil )
("2"
(lift-if)
(("2" (ground) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("6" (hide-all-but 1)
(("6" (skosimp*)
(("6" (typepred "x!1" )
(("6"
(lemma "sin_value_strict_increasing" )
(("6"
(expand "strict_increasing?" )
(("6"
(lemma "trichotomy" ("x" "x!1" ))
(("6"
(split -1)
(("1"
(inst-cp - "0" "x!1" )
(("1"
(rewrite "sin_value_0" )
(("1"
(assert )
(("1"
(inst - "x!1" "pi/2" )
(("1"
(rewrite
"sin_value_pi2" )
(("1"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(replace -1)
(("2"
(rewrite "sin_value_0" )
(("2" (assert ) nil nil ))
nil ))
nil )
("3"
(inst-cp - "x!1" "0" )
(("3"
(rewrite "sin_value_0" )
(("3"
(assert )
(("3"
(inst - "-pi/2" "x!1" )
(("3"
(rewrite
"sin_value_minus_pi2" )
(("3"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide-all-but 1)
(("2" (skosimp*)
(("2" (typepred "x!1" )
(("2" (lemma "pi_bnds" )
(("2" (flatten)
(("2" (lemma "sq_lt_abs" ("a" "x!1" "b" "1" ))
(("2" (expand "abs" -1 2)
(("2" (expand "sq" -1 2)
(("2" (lemma "sqrt_pos" ("px" "1-sq(x!1)" ))
(("1"
(typepred "sq(x!1)" )
(("1"
(lemma
"sqrt_le"
("nny" "1-sq(x!1)" "nnz" "1" ))
(("1"
(rewrite "sqrt_1" )
(("1" (assert ) nil nil ))
nil )
("2" (assert ) nil nil ))
nil ))
nil )
("2"
(assert )
(("2"
(expand "abs" )
(("2"
(lift-if)
(("2" (ground) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("3" (hide-all-but 1)
(("3" (skosimp*)
(("3" (typepred "x!1" )
(("3" (lemma "sq_lt_abs" ("a" "x!1" "b" "1" ))
(("3" (expand "abs" -1 2)
(("3" (expand "sq" -1 2)
(("3" (lemma "sqrt_pos" ("px" "1-sq(x!1)" ))
(("1" (assert ) nil nil )
("2" (assert )
(("2" (expand "abs" )
(("2"
(lift-if)
(("2" (ground) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("4" (hide-all-but 1)
(("4" (skosimp*)
(("4" (typepred "x!1" )
(("4" (lemma "sq_lt_abs" ("a" "x!1" "b" "1" ))
(("4" (expand "sq" )
(("4" (expand "abs" -1 2)
(("4" (assert )
(("4" (case "x!1=0" )
(("1" (inst + "pi/4" )
(("1" (assert ) nil nil )) nil )
("2" (inst + "0" ) (("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("5" (hide-all-but 1)
(("5" (skosimp*)
(("5" (typepred "x!1" )
(("5" (typepred "y!1" ) (("5" (grind) nil nil )) nil ))
nil ))
nil ))
nil )
("6" (hide-all-but 1)
(("6" (skosimp*)
(("6" (typepred "x!1" )
(("6" (case "x!1=0" )
(("1" (inst + "1/2" ) (("1" (assert ) nil nil )) nil )
("2" (inst + "0" ) (("2" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil )
("7" (hide-all-but 1)
(("7" (skosimp*)
(("7" (typepred "x!1" )
(("7" (typepred "y!1" ) (("7" (ground) nil nil )) nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide -2 -3 2)
(("2" (expand "inverse?" )
(("2" (skosimp*)
(("2" (typepred "r!1" )
(("2" (typepred "d!1" )
(("2"
(lemma "extensionality"
("f"
"inverse[real_abs_lt1, real_abs_lt_pi2](LAMBDA (x: real_abs_lt1): asin(x))"
"g"
"LAMBDA (x: real_abs_lt_pi2): sin_value(x)" ))
(("2" (split -1)
(("1"
(lemma
"comp_inverse_right[real_abs_lt1, real_abs_lt_pi2]"
("f" "LAMBDA (x: real_abs_lt1): asin(x)" "y"
"r!1" ))
(("1" (replace -2 -1)
(("1" (simplify -1)
(("1" (propax) nil nil )) nil ))
nil )
("2" (propax) nil nil ))
nil )
("2" (hide 2)
(("2" (skosimp*)
(("2" (expand "sin_value" )
(("2"
(lemma
"bijective_inverse[real_abs_lt1, real_abs_lt_pi2]"
("f"
"LAMBDA (x: real_abs_lt1): asin(x)"
"y"
"x!1"
"x"
"inverse(asin)(x!1)" ))
(("1"
(replace -1 1)
(("1"
(simplify 1)
(("1"
(lemma "asin_bij" )
(("1"
(lemma
"comp_inverse_right[real_abs_le1, real_abs_le_pi2]"
("f" "asin" "y" "x!1" ))
(("1" (assert ) nil nil )
("2" (propax) nil nil ))
nil ))
nil ))
nil ))
nil )
("2" (propax) nil nil )
("3"
(hide 2 -1 -2 -3 -4)
(("3"
(typepred "x!1" )
(("3"
(lemma
"sin_value_strict_increasing" )
(("3"
(expand "strict_increasing?" )
(("3"
(case
"abs(sin_value(x!1)) < 1" )
(("1"
(expand "sin_value" -1)
(("1" (ground) nil nil ))
nil )
("2"
(hide 2)
(("2"
(expand "abs" )
(("2"
(lemma
"trichotomy"
("x" "x!1" ))
(("2"
(split -1)
(("1"
(inst-cp
-
"0"
"x!1" )
(("1"
(rewrite
"sin_value_0" )
(("1"
(assert )
(("1"
(inst
-
"x!1"
"pi/2" )
(("1"
(rewrite
"sin_value_pi2" )
(("1"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(replace -1)
(("2"
(rewrite
"sin_value_0" )
(("2"
(assert )
nil
nil ))
nil ))
nil )
("3"
(inst-cp
-
"x!1"
"0" )
(("3"
(rewrite
"sin_value_0" )
(("3"
(assert )
(("3"
(assert )
(("3"
(inst
-
"-pi/2"
"x!1" )
(("3"
(assert )
(("3"
(rewrite
"sin_value_minus_pi2" )
(("3"
(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 )
("3" (hide-all-but 1)
(("3" (skosimp*)
(("3" (typepred "x!1" )
(("3" (lemma "sin_value_strict_increasing" )
(("3" (expand "strict_increasing?" )
(("3" (lemma "trichotomy" ("x" "x!1" ))
(("3" (split -1)
(("1" (inst-cp - "0" "x!1" )
(("1" (rewrite "sin_value_0" )
(("1" (assert )
(("1"
(inst - "x!1" "pi/2" )
(("1"
(rewrite "sin_value_pi2" )
(("1" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (replace -1)
(("2" (rewrite "sin_value_0" )
(("2" (assert ) nil nil )) nil ))
nil )
("3" (inst-cp - "x!1" "0" )
(("3" (rewrite "sin_value_0" )
(("3" (assert )
(("3"
(inst - "-pi/2" "x!1" )
(("3"
(assert )
(("3"
(rewrite "sin_value_minus_pi2" )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide -1 -2 2)
(("2" (lemma "asin_bij" )
(("2" (expand "bijective?" )
(("2" (expand "injective?" )
(("2" (expand "surjective?" )
(("2" (flatten)
(("2" (split)
(("1" (skosimp*)
(("1" (inst -2 "x1!1" "x2!1" )
(("1" (assert ) nil nil )) nil ))
nil )
("2" (hide -1)
(("2" (skosimp*)
(("2" (inst - "y!1" )
(("2" (typepred "y!1" )
(("2"
(skosimp*)
(("2"
(typepred "x!1" )
(("2"
(case-replace "abs(x!1) = 1" )
(("1" (grind) nil nil )
("2"
(inst + "x!1" )
(("2" (grind) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("3" (hide -1 -2 2)
(("3" (skosimp*)
(("3" (typepred "x!1" )
(("3" (lemma "asin_strict_increasing" )
(("3" (expand "strict_increasing?" )
(("3" (lemma "trichotomy" ("x" "x!1" ))
(("3" (split -1)
(("1" (inst-cp - "0" "x!1" )
(("1" (rewrite "asin_0" )
(("1" (assert )
(("1" (inst - "x!1" "1" )
(("1"
(rewrite "asin_1" )
(("1" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (replace -1)
(("2" (rewrite "asin_0" )
(("2" (assert ) (("2" (assert ) nil nil )) nil ))
nil ))
nil )
("3" (inst-cp - "x!1" "0" )
(("3" (rewrite "asin_0" )
(("3" (assert )
(("3" (inst - "-1" "x!1" )
(("3"
(rewrite "asin_minus1" )
(("3" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((asin const-decl "real_abs_le_pi2" asin nil )
(real_abs_le_pi2 nonempty-type-eq-decl nil asin nil )
(real_abs_le1 nonempty-type-eq-decl nil asin nil )
(real_abs_lt_pi2 nonempty-type-eq-decl nil atan nil )
(pi const-decl "posreal" atan nil )
(real_abs_lt1 nonempty-type-eq-decl nil asin nil )
(asin_bij formula-decl nil asin nil )
(deriv_inverse_fun formula-decl nil derivative_inverse "analysis/" )
(sqrt const-decl "{nnz: nnreal | nnz * nnz = nnx}" sqrt "reals/" )
(sq const-decl "nonneg_real" sq "reals/" )
(nnreal_le_pi nonempty-type-eq-decl nil acos nil )
(sqrt_pos judgement-tcc nil sqrt "reals/" )
(sq_neg formula-decl nil sq "reals/" )
(sqrt_pos application-judgement "posreal" sqrt "reals/" )
(sqrt_1 formula-decl nil sqrt "reals/" )
(sq_lt_abs formula-decl nil sq "reals/" )
(strict_increasing? const-decl "bool" real_fun_preds "reals/" )
(atan const-decl "real_abs_lt_pi2" atan nil )
(atan_value const-decl "real" atan nil )
(Integral const-decl "real" integral_def "analysis/" )
(pi_bnds formula-decl nil atan nil )
(sqrt_le formula-decl nil sqrt "reals/" )
(asin_strict_increasing formula-decl nil asin nil )
(asin_minus1 formula-decl nil asin nil )
(asin_1 formula-decl nil asin nil )
(asin_0 formula-decl nil asin nil )
(deriv_asin_fun formula-decl nil asin nil ))
nil )
(deriv_sin_value-1 nil 3264475310
("" (lemma "asin_derivable2" )
(("" (lemma "deriv_asin_fun" )
((""
(case "bijective?[real_abs_lt1,real_abs_lt_pi](LAMBDA (x: real_abs_lt1): asin(x))" )
(("1"
(case "inverse?[real_abs_lt1, real_abs_lt_pi]((LAMBDA (x:real_abs_lt_pi): sin_value(x)),(LAMBDA (x: real_abs_lt1): asin(x)))" )
(("1"
(lemma "deriv_inverse_fun[real_abs_lt1, real_abs_lt_pi]"
("F" "LAMBDA (x: real_abs_lt1): asin(x)" "G"
"LAMBDA (x: real_abs_lt_pi): sin_value(x)" "f"
"LAMBDA (x: real_abs_lt1): 1 / sqrt(1 - sq(x))" ))
(("1" (replace -2 -1)
(("1" (replace -3 -1)
(("1" (replace -4 -1)
(("1" (replace -5 -1)
(("1" (replace -1 1)
(("1"
(lemma "extensionality"
("f" "(LAMBDA (x_1: real_abs_lt_pi):
1 /
(LAMBDA (x: real_abs_lt1): 1 / sqrt(1 - sq(x)))
((LAMBDA (x: real_abs_lt_pi): sin_value(x))(x_1)))" " g"
"(LAMBDA (x: real_abs_lt_pi):
IF x < 0 THEN cos_value(-x) ELSE cos_value(x) ENDIF)"))
(("1" (split -1)
(("1"
(lemma "extensionality"
("f"
"LAMBDA (x: real_abs_lt_pi): IF x < 0 THEN cos_value(-x) ELSE cos_value(x) ENDIF"
"g"
"LAMBDA (x: real_abs_lt_pi): cos_value(abs(x))" ))
(("1" (split -1)
(("1"
(replace -1 1 rl)
(("1" (propax) nil nil ))
nil )
("2"
(skosimp*)
(("2"
(hide-all-but 1)
(("2"
(expand "abs" )
(("2" (propax) nil nil ))
nil ))
nil ))
nil ))
nil )
("2" (skosimp*)
(("2"
(hide-all-but 1)
(("2"
(typepred "x!1" )
(("2"
(expand "abs" )
(("2"
(case "x!1<0" )
(("1" (assert ) nil nil )
("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("3" (skosimp*) (("3" (assert ) nil nil ))
nil )
("4" (skosimp*) (("4" (assert ) nil nil ))
nil ))
nil )
("2" (hide 2)
(("2" (skosimp*)
(("2"
(hide-all-but 1)
(("2"
(typepred "x!1" )
(("2"
(case "abs(sin_value(x!1)) < 1" )
(("1"
(lemma
"sq_lt_abs"
("a" "sin_value(x!1)" "b" "1" ))
(("1"
(expand "abs" -1 2)
(("1"
(expand "sq" -1 2)
(("1"
(replace -1 -2 rl)
(("1"
(typepred
"sq(sin_value(x!1))" )
(("1"
(lemma
"sqrt_pos"
("px"
"1-sq(sin_value(x!1))" ))
(("1"
(rewrite
"div_div1"
1)
(("1"
(lemma
"trichotomy"
("x" "x!1" ))
(("1"
(split -1)
(("1"
(rewrite
"cos_eqv_sqrt_sin_value" )
(("1"
(assert )
nil
nil ))
nil )
("2"
(replace -1)
(("2"
(rewrite
"cos_value_0" )
(("2"
(rewrite
"sin_value_0" )
(("2"
(expand
"sq"
1)
(("2"
(rewrite
"sqrt_1" )
nil
nil ))
nil ))
nil ))
nil ))
nil )
("3"
(lemma
"sin_value_neg"
("xs" "-x!1" ))
(("3"
(replace
-1
1)
(("3"
(hide -1)
(("3"
(rewrite
"sq_neg"
1)
(("3"
(rewrite
"cos_eqv_sqrt_sin_value"
1)
(("3"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(hide 2)
(("2"
(lemma
"sin_value_strict_increasing" )
(("2"
(expand "strict_increasing?" )
(("2"
(expand "abs" )
(("2"
(lemma
"trichotomy"
("x" "x!1" ))
(("2"
(split -1)
(("1"
(inst-cp - "0" "x!1" )
(("1"
(rewrite
"sin_value_0" )
(("1"
(assert )
(("1"
(inst
-
"x!1"
"pi/2" )
(("1"
(rewrite
"sin_value_pi2" )
(("1"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(replace -1)
(("2"
(rewrite
"sin_value_0" )
(("2"
(assert )
nil
nil ))
nil ))
nil )
("3"
(inst-cp - "x!1" "0" )
(("3"
(rewrite
"sin_value_0" )
(("3"
(assert )
(("3"
(inst
-
"-pi/2"
"x!1" )
(("3"
(rewrite
"sin_value_minus_pi2" )
(("3"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide-all-but 1)
(("2" (skosimp*)
(("2" (typepred "x!1" )
(("2" (assert ) nil nil )) nil ))
nil ))
nil )
("3" (hide-all-but 1)
(("3" (skosimp*)
(("3" (typepred "x!1" )
(("3" (assert ) nil nil )) nil ))
nil ))
nil )
("4" (hide-all-but 1)
(("4" (skosimp*)
(("4"
(lemma "sq_lt_abs"
("a" "sin_value(x!1)" "b" "1" ))
(("4"
(expand "abs" -1 2)
(("4"
(expand "sq" -1 2)
(("4"
(ground)
(("4" (grind) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("5" (hide-all-but 1)
(("5" (skosimp*)
(("5" (assert )
(("5"
(typepred "x!2" )
(("5"
(hide -3)
(("5"
(grind)
(("5"
(mult-ineq -2 -2)
(("1" (assert ) nil nil )
("2"
(lift-if)
(("2" (ground) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("6" (hide-all-but 1)
(("6" (skosimp*)
(("6" (typepred "x!1" )
(("6"
(lemma "sin_value_strict_increasing" )
(("6"
(expand "strict_increasing?" )
(("6"
(lemma "trichotomy" ("x" "x!1" ))
(("6"
(split -1)
(("1"
(inst-cp - "0" "x!1" )
(("1"
(rewrite "sin_value_0" )
(("1"
(assert )
(("1"
(inst - "x!1" "pi/2" )
(("1"
(rewrite
"sin_value_pi2" )
(("1"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(replace -1)
(("2"
(rewrite "sin_value_0" )
(("2" (assert ) nil nil ))
nil ))
nil )
("3"
(inst-cp - "x!1" "0" )
(("3"
(rewrite "sin_value_0" )
(("3"
(assert )
(("3"
(inst - "-pi/2" "x!1" )
(("3"
(rewrite
"sin_value_minus_pi2" )
(("3"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide-all-but 1)
(("2" (skosimp*)
(("2" (typepred "x!1" )
(("2" (lemma "pi_bnds" )
(("2" (flatten)
(("2" (lemma "sq_lt_abs" ("a" "x!1" "b" "1" ))
(("2" (expand "abs" -1 2)
(("2" (expand "sq" -1 2)
(("2" (lemma "sqrt_pos" ("px" "1-sq(x!1)" ))
(("1"
(typepred "sq(x!1)" )
(("1"
(lemma
"sqrt_le"
("nny" "1-sq(x!1)" "nnz" "1" ))
(("1"
(rewrite "sqrt_1" )
(("1" (assert ) nil nil ))
nil )
("2" (assert ) nil nil ))
nil ))
nil )
("2"
(assert )
(("2"
(expand "abs" )
(("2"
(lift-if)
(("2" (ground) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("3" (hide-all-but 1)
(("3" (skosimp*)
(("3" (typepred "x!1" )
(("3" (lemma "sq_lt_abs" ("a" "x!1" "b" "1" ))
(("3" (expand "abs" -1 2)
(("3" (expand "sq" -1 2)
(("3" (lemma "sqrt_pos" ("px" "1-sq(x!1)" ))
(("1" (assert ) nil nil )
("2" (assert )
(("2" (expand "abs" )
(("2"
(lift-if)
(("2" (ground) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("4" (hide-all-but 1)
(("4" (skosimp*)
(("4" (typepred "x!1" )
(("4" (lemma "sq_lt_abs" ("a" "x!1" "b" "1" ))
(("4" (expand "sq" )
(("4" (expand "abs" -1 2)
(("4" (assert )
(("4" (case "x!1=0" )
(("1" (inst + "pi/4" )
(("1" (assert ) nil nil )) nil )
("2" (inst + "0" ) (("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("5" (hide-all-but 1)
(("5" (skosimp*)
(("5" (typepred "x!1" )
(("5" (typepred "y!1" ) (("5" (grind) nil nil )) nil ))
nil ))
nil ))
nil )
("6" (hide-all-but 1)
(("6" (skosimp*)
(("6" (typepred "x!1" )
(("6" (case "x!1=0" )
(("1" (inst + "1/2" ) (("1" (assert ) nil nil )) nil )
("2" (inst + "0" ) (("2" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil )
("7" (hide-all-but 1)
(("7" (skosimp*)
(("7" (typepred "x!1" )
(("7" (typepred "y!1" ) (("7" (ground) nil nil )) nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide -2 -3 2)
(("2" (expand "inverse?" )
(("2" (skosimp*)
(("2" (typepred "r!1" )
(("2" (typepred "d!1" )
(("2"
(lemma "extensionality"
("f"
"inverse[real_abs_lt1, real_abs_lt_pi](LAMBDA (x: real_abs_lt1): asin(x))"
"g"
"LAMBDA (x: real_abs_lt_pi): sin_value(x)" ))
(("2" (split -1)
(("1"
(lemma
"comp_inverse_right[real_abs_lt1, real_abs_lt_pi]"
("f" "LAMBDA (x: real_abs_lt1): asin(x)" "y"
"r!1" ))
(("1" (replace -2 -1)
(("1" (simplify -1)
(("1" (propax) nil nil )) nil ))
nil )
("2" (propax) nil nil ))
nil )
("2" (hide 2)
(("2" (skosimp*)
(("2" (expand "sin_value" )
(("2"
(lemma
"bijective_inverse[real_abs_lt1, real_abs_lt_pi]"
("f"
"LAMBDA (x: real_abs_lt1): asin(x)"
"y"
"x!1"
"x"
"inverse(asin)(x!1)" ))
(("1"
(replace -1 1)
(("1"
(simplify 1)
(("1"
(lemma "asin_bij" )
(("1"
(lemma
"comp_inverse_right[real_abs_le1, real_abs_le_pi2]"
("f" "asin" "y" "x!1" ))
(("1" (assert ) nil nil )
("2" (propax) nil nil ))
nil ))
nil ))
nil ))
nil )
("2" (propax) nil nil )
("3"
(hide 2 -1 -2 -3 -4)
(("3"
(typepred "x!1" )
(("3"
(lemma
"sin_value_strict_increasing" )
(("3"
(expand "strict_increasing?" )
(("3"
(case
"abs(sin_value(x!1)) < 1" )
(("1"
(expand "sin_value" -1)
(("1" (ground) nil nil ))
nil )
("2"
(hide 2)
(("2"
(expand "abs" )
(("2"
(lemma
"trichotomy"
("x" "x!1" ))
(("2"
(split -1)
(("1"
(inst-cp
-
"0"
"x!1" )
(("1"
(rewrite
"sin_value_0" )
(("1"
(assert )
(("1"
(inst
-
"x!1"
"pi/2" )
(("1"
(rewrite
"sin_value_pi2" )
(("1"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(replace -1)
(("2"
(rewrite
"sin_value_0" )
(("2"
(assert )
nil
nil ))
nil ))
nil )
("3"
(inst-cp
-
"x!1"
"0" )
(("3"
(rewrite
"sin_value_0" )
(("3"
(assert )
(("3"
(assert )
(("3"
(inst
-
"-pi/2"
"x!1" )
(("3"
(assert )
(("3"
(rewrite
"sin_value_minus_pi2" )
(("3"
(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 )
("3" (hide-all-but 1)
(("3" (skosimp*)
(("3" (typepred "x!1" )
(("3" (lemma "sin_value_strict_increasing" )
(("3" (expand "strict_increasing?" )
(("3" (lemma "trichotomy" ("x" "x!1" ))
(("3" (split -1)
(("1" (inst-cp - "0" "x!1" )
(("1" (rewrite "sin_value_0" )
(("1" (assert )
(("1"
(inst - "x!1" "pi/2" )
(("1"
(rewrite "sin_value_pi2" )
(("1" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (replace -1)
(("2" (rewrite "sin_value_0" )
(("2" (assert ) nil nil )) nil ))
nil )
("3" (inst-cp - "x!1" "0" )
(("3" (rewrite "sin_value_0" )
(("3" (assert )
(("3"
(inst - "-pi/2" "x!1" )
(("3"
(assert )
(("3"
(rewrite "sin_value_minus_pi2" )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide -1 -2 2)
(("2" (lemma "asin_bij" )
(("2" (expand "bijective?" )
(("2" (expand "injective?" )
(("2" (expand "surjective?" )
(("2" (flatten)
(("2" (split)
(("1" (skosimp*)
(("1" (inst -2 "x1!1" "x2!1" )
(("1" (assert ) nil nil )) nil ))
nil )
("2" (hide -1)
(("2" (skosimp*)
(("2" (inst - "y!1" )
(("2" (typepred "y!1" )
(("2"
(skosimp*)
(("2"
(typepred "x!1" )
(("2"
(case-replace "abs(x!1) = 1" )
(("1" (grind) nil nil )
("2"
(inst + "x!1" )
(("2" (grind) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("3" (hide -1 -2 2)
(("3" (skosimp*)
(("3" (typepred "x!1" )
(("3" (lemma "asin_strict_increasing" )
(("3" (expand "strict_increasing?" )
(("3" (lemma "trichotomy" ("x" "x!1" ))
(("3" (split -1)
(("1" (inst-cp - "0" "x!1" )
(("1" (rewrite "asin_0" )
(("1" (assert )
(("1" (inst - "x!1" "1" )
(("1"
(rewrite "asin_1" )
(("1" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (replace -1)
(("2" (rewrite "asin_0" )
(("2" (assert ) (("2" (assert ) nil nil )) nil ))
nil ))
nil )
("3" (inst-cp - "x!1" "0" )
(("3" (rewrite "asin_0" )
(("3" (assert )
(("3" (inst - "-1" "x!1" )
(("3"
(rewrite "asin_minus1" )
(("3" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((deriv_asin_fun formula-decl nil asin nil )
(asin_0 formula-decl nil asin nil )
(asin_1 formula-decl nil asin nil )
(asin_minus1 formula-decl nil asin nil )
(asin_strict_increasing formula-decl nil asin nil )
(sqrt_le formula-decl nil sqrt "reals/" )
(pi_bnds formula-decl nil atan nil )
(Integral const-decl "real" integral_def "analysis/" )
(atan_value const-decl "real" atan nil )
(atan const-decl "real_abs_lt_pi2" atan nil )
(strict_increasing? const-decl "bool" real_fun_preds "reals/" )
(sq_lt_abs formula-decl nil sq "reals/" )
(sqrt_1 formula-decl nil sqrt "reals/" )
(sqrt_pos application-judgement "posreal" sqrt "reals/" )
(sq_neg formula-decl nil sq "reals/" )
(sqrt_pos judgement-tcc nil sqrt "reals/" )
(nnreal_le_pi nonempty-type-eq-decl nil acos nil )
(sq const-decl "nonneg_real" sq "reals/" )
(sqrt const-decl "{nnz: nnreal | nnz * nnz = nnx}" sqrt "reals/" )
(deriv_inverse_fun formula-decl nil derivative_inverse "analysis/" )
(asin_bij formula-decl nil asin nil )
(real_abs_lt1 nonempty-type-eq-decl nil asin nil )
(pi const-decl "posreal" atan nil )
(real_abs_le1 nonempty-type-eq-decl nil asin nil )
(real_abs_le_pi2 nonempty-type-eq-decl nil asin nil )
(asin const-decl "real_abs_le_pi2" asin nil ))
shostak))
(sin_value_sum_TCC1 0
(sin_value_sum_TCC1-1 nil 3264688517
("" (skosimp*) (("" (assert ) nil nil )) nil )
((minus_nzreal_is_nzreal application-judgement "nzreal" real_types
nil )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(nnreal_plus_nnreal_is_nnreal application-judgement "nnreal"
real_types nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil ))
shostak))
(sin_value_sum_TCC2 0
(sin_value_sum_TCC2-1 nil 3264688517
("" (skosimp*)
(("" (expand "abs" )
(("" (typepred "q1!1" )
(("" (typepred "q2!1" ) (("" (assert ) nil nil )) nil )) nil ))
nil ))
nil )
((nnreal_quad1_closed nonempty-type-eq-decl nil sincos_quad nil )
(pi const-decl "posreal" atan 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 "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/= const-decl "boolean" notequal nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(<= const-decl "bool" reals nil )
(nnreal type-eq-decl nil real_types 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_minus_real_is_real application-judgement "real" reals nil )
(nnreal_plus_nnreal_is_nnreal application-judgement "nnreal"
real_types nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
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 ))
shostak))
(sin_value_sum 0
(sin_value_sum-4 nil 3425656168
("" (skolem 1 ("z1" "z2" ))
((""
(case "FORALL (q1,q2:nnreal_quad1_closed): q1<pi/2-q2 => sin_value(q1+q2) = sin_value(q1)*cos_value(q2)+cos_value(q1)*sin_value(q2)" )
(("1" (lemma "trich_lt" ("x" "z1" "y" "pi/2-z2" ))
(("1" (split -1)
(("1" (inst - "z1" "z2" ) (("1" (assert ) nil nil )) nil )
("2" (hide -2)
(("2" (replace -1)
(("2" (rewrite "sin_value_pi2" )
(("2" (lemma "sin_eqv_cos_quad" ("q1" "z2" ))
(("2" (lemma "cos_eqv_sin_quad" ("q1" "z2" ))
(("2" (lemma "sin2_cos2_value" ("q1" "z2" ))
(("2" (replace -2 * rl)
(("2" (replace -3 * rl)
(("2" (rewrite "sq_rew" 1)
(("2" (rewrite "sq_rew" 1)
(("2" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("3" (inst - "pi/2-z2" "pi/2-z1" )
(("3" (assert )
(("3" (lemma "sin_eqv_cos_quad" ("q1" "z1" ))
(("3" (lemma "sin_eqv_cos_quad" ("q1" "z2" ))
(("3" (lemma "cos_eqv_sin_quad" ("q1" "z1" ))
(("3" (lemma "cos_eqv_sin_quad" ("q1" "z2" ))
(("3" (replace -1 * rl)
(("3" (replace -2 * rl)
(("3" (replace -3 * rl)
(("3" (replace -4 * rl)
(("3"
(replace -6 1 rl)
(("3"
(hide -1 -2 -3 -4 -6)
(("3"
(rewrite "sin_eqv_cos_quad" )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide 2)
(("2" (skolem 1 ("b" "c" ))
(("2" (flatten)
(("2" (typepred "b" )
(("2" (expand ">=" )
(("2" (expand "<=" )
(("2" (split -1)
(("1" (split -2)
(("1" (typepred "c" )
(("1" (expand ">=" )
(("1" (expand "<=" )
(("1" (split -1)
(("1"
(split -2)
(("1"
(case
"FORALL (b, c: {x: posreal | x < pi / 2}):
c < pi / 4 & b < pi / 2 - c =>
sin_value(b + c) =
sin_value(b) * cos_value(c) + cos_value(b) * sin_value(c)")
(("1"
(lemma
"trich_lt"
("x" "c" "y" "pi/4" ))
(("1"
(split -1)
(("1"
(inst - "b" "c" )
(("1" (assert ) nil nil )
("2" (assert ) nil nil )
("3" (assert ) nil nil ))
nil )
("2"
(replace -1)
(("2"
(hide -1 -2 -3 -4 -5)
(("2"
(lemma
"cos_eqv_sin_quad"
("q1" "b" ))
(("2"
(replace -1)
(("2"
(hide -1)
(("2"
(case
"pi/2-pi/4 = pi/4" )
(("1"
(replace -1)
(("1"
(hide -1)
(("1"
(lemma
"identity_derivable_fun[{x:posreal|x<pi/4}]" )
(("1"
(lemma
"deriv_id_fun[{x:posreal|x<pi/4}]" )
(("1"
(expand
"I" )
(("1"
(lemma
"const_derivable_fun[{x: posreal | x < pi / 4}]"
("b"
"pi/4" ))
(("1"
(lemma
"const_derivable_fun[{x: posreal | x < pi / 4}]"
("b"
"pi/2" ))
(("1"
(lemma
"deriv_const_fun[{x: posreal | x < pi / 4}]"
("b"
"pi/4" ))
(("1"
(lemma
"deriv_const_fun[{x: posreal | x < pi / 4}]"
("b"
"pi/2" ))
(("1"
(lemma
"sum_derivable_fun[{x: posreal | x < pi / 4}]"
("f1"
"LAMBDA (x: {x: posreal | x < pi / 4}): x"
"f2"
"LAMBDA (x: {x: posreal | x < pi / 4}): pi / 4" ))
(("1"
(lemma
"diff_derivable_fun[{x: posreal | x < pi / 4}]"
("f2"
"LAMBDA (x: {x: posreal | x < pi / 4}): x"
"f1"
"LAMBDA (x: {x: posreal | x < pi / 4}): pi / 2" ))
(("1"
(assert )
(("1"
(expand
"-" )
(("1"
(expand
"+" )
(("1"
(lemma
"deriv_sum_fun[{x: posreal | x < pi / 4}]"
("ff1"
"LAMBDA (x: {x: posreal | x < pi / 4}): x"
"ff2"
"LAMBDA (x: {x: posreal | x < pi / 4}): pi / 4" ))
(("1"
(lemma
"deriv_diff_fun[{x: posreal | x < pi / 4}]"
("ff2"
"LAMBDA (x: {x: posreal | x < pi / 4}): x"
"ff1"
"LAMBDA (x: {x: posreal | x < pi / 4}): pi / 2" ))
(("1"
(replace
-9)
(("1"
(replace
-5)
(("1"
(replace
-6)
(("1"
(expand
"-" )
(("1"
(expand
"+" )
(("1"
(hide
-5
-6
-7
-8)
(("1"
(lemma
"sin_value_derivable_fun" )
(("1"
(lemma
"deriv_sin_value" )
(("1"
(lemma
"composition_derivable_fun[{x: posreal | x < pi / 4},real_abs_lt_pi2]"
("f"
"LAMBDA (x: {x: posreal | x < pi / 4}): x"
"g"
"LAMBDA (x: real_abs_lt_pi2): sin_value(x)" ))
(("1"
(lemma
"composition_derivable_fun[{x: posreal | x < pi / 4},real_abs_lt_pi2]"
("f"
"LAMBDA (x: {x: posreal | x < pi / 4}): pi/2-x"
"g"
"LAMBDA (x: real_abs_lt_pi2): sin_value(x)" ))
(("1"
(lemma
"composition_derivable_fun[{x: posreal | x < pi / 4},real_abs_lt_pi2]"
("f"
"LAMBDA (x: {x: posreal | x < pi / 4}): pi/4+x"
"g"
"LAMBDA (x: real_abs_lt_pi2): sin_value(x)" ))
(("1"
(assert )
(("1"
(expand
"o" )
(("1"
(lemma
"deriv_comp_fun[{x: posreal | x < pi / 4},real_abs_lt_pi2]"
("ff"
"LAMBDA (x: {x: posreal | x < pi / 4}): x"
"gg"
"LAMBDA (x: real_abs_lt_pi2): sin_value(x)" ))
(("1"
(lemma
"deriv_comp_fun[{x: posreal | x < pi / 4},real_abs_lt_pi2]"
("ff"
"LAMBDA (x: {x: posreal | x < pi / 4}): pi/2-x"
"gg"
"LAMBDA (x: real_abs_lt_pi2): sin_value(x)" ))
(("1"
(lemma
"deriv_comp_fun[{x: posreal | x < pi / 4},real_abs_lt_pi2]"
("ff"
"LAMBDA (x: {x: posreal | x < pi / 4}): pi/4+x"
"gg"
"LAMBDA (x: real_abs_lt_pi2): sin_value(x)" ))
(("1"
(replace
-7)
(("1"
(replace
-13)
(("1"
(replace
-9)
(("1"
(replace
-10)
(("1"
(expand
"o" )
(("1"
(expand
"*" )
(("1"
(hide
-7
-8
-9
-10
-11
-12
-13
-14)
(("1"
(lemma
"scal_derivable_fun[{x: posreal | x < pi / 4}]"
("f"
"LAMBDA (x_1: {x: posreal | x < pi / 4}): sin_value(pi / 2 - x_1)"
"b"
"sin_value(pi / 4)" ))
(("1"
(lemma
"scal_derivable_fun[{x: posreal | x < pi / 4}]"
("f"
"LAMBDA (x_1: {x: posreal | x < pi / 4}): sin_value(x_1)"
"b"
"cos_value(pi / 4)" ))
(("1"
(assert )
(("1"
(expand
"*"
(-1
-2))
(("1"
(lemma
"deriv_scal_fun[{x: posreal | x < pi / 4}]"
("ff"
"LAMBDA (x_1: {x: posreal | x < pi / 4}): sin_value(pi / 2 - x_1)"
"b"
"sin_value(pi / 4)" ))
(("1"
(lemma
"deriv_scal_fun[{x: posreal | x < pi / 4}]"
("ff"
"LAMBDA (x_1: {x: posreal | x < pi / 4}): sin_value(x_1)"
"b"
"cos_value(pi / 4)" ))
(("1"
(expand
"*" )
(("1"
(replace
-7)
(("1"
(replace
-6)
(("1"
(simplify
(-1
-2))
(("1"
(lemma
"sum_derivable_fun[{x: posreal | x < pi / 4}]"
("f1"
"LAMBDA (x: {x: posreal | x < pi / 4}): sin_value(pi / 4) * sin_value(pi / 2 - x)"
"f2"
"LAMBDA (x: {x: posreal | x < pi / 4}): cos_value(pi / 4) * sin_value(x)" ))
(("1"
(assert )
(("1"
(expand
"+" )
(("1"
(lemma
"deriv_sum_fun[{x: posreal | x < pi / 4}]"
("ff1"
"LAMBDA (x: {x: posreal | x < pi / 4}): sin_value(pi / 4) * sin_value(pi / 2 - x)"
"ff2"
"LAMBDA (x: {x: posreal | x < pi / 4}): cos_value(pi / 4) * sin_value(x)" ))
(("1"
(replace
-3)
(("1"
(replace
-4)
(("1"
(expand
"+"
-1)
(("1"
(lemma
"derivs_eq[{x: posreal | x < pi / 4}]"
("F"
"LAMBDA (x_1: {x: posreal | x < pi / 4}):
cos_value(pi / 4) * sin_value(x_1) +
sin_value(pi / 4) * sin_value(pi / 2 - x_1)"
"G"
"LAMBDA (x_1: {x: posreal | x < pi / 4}):
sin_value(x_1 + pi / 4)"))
(("1"
(assert )
(("1"
(replace
-2)
(("1"
(replace
-8)
(("1"
(split
-1)
(("1"
(hide-all-but
(1
-14
-15
-1))
(("1"
(skosimp*)
(("1"
(lemma
"extensionality_postulate"
("f"
"(LAMBDA (x_1: {x: posreal | x < pi / 4}):
cos_value(pi / 4) * sin_value(x_1) +
sin_value(pi / 4) * sin_value(pi / 2 - x_1))"
"g"
"(LAMBDA (x_1: {x: posreal | x < pi / 4}): sin_value(x_1 + pi / 4)) +
const_fun(c!1)"))
(("1"
(replace
-1
-2
rl)
(("1"
(hide
-1)
(("1"
(expand
"+"
-1)
(("1"
(expand
"const_fun" )
(("1"
(inst-cp
-
"b" )
(("1"
(inst
-
"pi/6" )
(("1"
(rewrite
"cos_value_pi4" )
(("1"
(rewrite
"sin_value_pi4" )
(("1"
(lemma
"cos_eqv_sin_quad"
("q1"
"pi/6" ))
(("1"
(replace
-1
-2
rl)
(("1"
(hide
-1)
(("1"
(rewrite
"sin_value_pi6"
-1)
(("1"
(rewrite
"cos_value_pi6"
-1)
(("1"
(case
"sqrt(1 / 2) * (1+sqrt(3)) / 2 = sin_value(5*pi / 12)" )
(("1"
(replace
-1
-2
rl)
(("1"
(assert )
nil
nil ))
nil )
("2"
(hide-all-but
1)
(("2"
(lemma
"cos_eqv_sin_quad"
("q1"
"pi/12" ))
(("2"
(replace
-1
1
rl)
(("2"
(hide
-1)
(("2"
(lemma
"sq_eq"
("nna"
"sqrt(1 / 2) * (1 + sqrt(3)) / 2"
"nnb"
"cos_value(pi / 12)" ))
(("1"
(replace
-1
1
rl)
(("1"
(hide
-1)
(("1"
(lemma
"sq_div"
("a"
"sqrt(1 / 2) * (1 + sqrt(3))"
"d"
"2" ))
--> --------------------
--> maximum size reached
--> --------------------
Messung V0.5 in Prozent C=100 H=100 G=100
¤ Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.0.869Bemerkung:
(Wie Sie bei der Firma Beratungs- und Dienstleistungen beauftragen können 2026-04-30)
¤
*Eine klare Vorstellung vom Zielzustand