SSL vectors_2D.prf
Interaktion und PortierbarkeitLisp
(vectors_2D
(sqv_TCC1 0
(sqv_TCC1-1 nil 3254160320 ("" (subtype-tcc) nil nil )
((* const-decl "real" vectors_2D nil )
(real_times_real_is_real application-judgement "real" reals nil ))
nil ))
(sqv_rew 0
(sqv_rew-1 nil 3440239073 ("" (grind) nil nil )
((* const-decl "real" vectors_2D nil )
(sqv const-decl "nnreal" vectors_2D nil )
(real_times_real_is_real application-judgement "real" reals nil ))
shostak))
(sqv_sos 0
(sqv_sos-1 nil 3602098877 ("" (grind) nil nil )
((* const-decl "real" vectors_2D nil )
(sqv const-decl "nnreal" vectors_2D nil )
(sq const-decl "nonneg_real" sq "reals/" )
(sos const-decl "nnreal" vectors_2D nil )
(real_times_real_is_real application-judgement "real" reals nil ))
shostak))
(iv_TCC1 0
(iv_TCC1-1 nil 3430835111 ("" (subtype-tcc) nil nil )
((* const-decl "real" vectors_2D nil )
(sqv const-decl "nnreal" vectors_2D nil )
(sqrt_1 formula-decl nil sqrt "reals/" )
(norm const-decl "nnreal" vectors_2D nil ))
nil ))
(jv_TCC1 0
(jv_TCC1-1 nil 3430835111 ("" (subtype-tcc) nil nil )
((* const-decl "real" vectors_2D nil )
(sqv const-decl "nnreal" vectors_2D nil )
(sqrt_1 formula-decl nil sqrt "reals/" )
(norm const-decl "nnreal" vectors_2D nil ))
nil ))
(basis 0
(basis-1 nil 3428691871 ("" (grind) nil nil )
((iv const-decl "Normalized" vectors_2D nil )
(* const-decl "Vector" vectors_2D nil )
(jv const-decl "Normalized" vectors_2D nil )
(+ const-decl "Vector" vectors_2D nil ))
shostak))
(vx_distr_add 0
(vx_distr_add-1 nil 3254160320 ("" (grind) nil nil )
((+ const-decl "Vector" vectors_2D nil )) nil ))
(vy_distr_add 0
(vy_distr_add-1 nil 3254160320 ("" (grind) nil nil )
((+ const-decl "Vector" vectors_2D nil )) nil ))
(vx_distr_sub 0
(vx_distr_sub-1 nil 3254160320 ("" (grind) nil nil )
((- const-decl "Vector" vectors_2D nil )) nil ))
(vy_distr_sub 0
(vy_distr_sub-1 nil 3254160320 ("" (grind) nil nil )
((- const-decl "Vector" vectors_2D nil )) nil ))
(vx_scal 0
(vx_scal-1 nil 3256995680 ("" (grind) nil nil )
((* const-decl "Vector" vectors_2D nil )) shostak))
(vy_scal 0
(vy_scal-1 nil 3256995684 ("" (grind) nil nil )
((* const-decl "Vector" vectors_2D nil )) shostak))
(vx_neg 0
(vx_neg-1 nil 3467129742 ("" (grind) nil nil )
((- const-decl "Vector" vectors_2D nil )) shostak))
(vy_neg 0
(vy_neg-1 nil 3467129756 ("" (grind) nil nil )
((- const-decl "Vector" vectors_2D nil )) shostak))
(comp_eq_x 0
(comp_eq_x-1 nil 3268398885
("" (skosimp*) (("" (assert ) nil nil )) nil ) nil shostak))
(comp_eq_y 0
(comp_eq_y-1 nil 3268398889
("" (skosimp*) (("" (assert ) nil nil )) nil ) nil shostak))
(comps_eq 0
(comps_eq-1 nil 3440253283
("" (grind) (("" (apply-extensionality 1 :hide? t) nil nil )) nil )
((real nonempty-type-from-decl nil reals nil )
(Vector type-eq-decl nil vectors_2D nil ))
nil ))
(comp_zero_x 0
(comp_zero_x-1 nil 3254160320 ("" (grind) nil nil )
((zero const-decl "Vector" vectors_2D nil )) nil ))
(comp_zero_y 0
(comp_zero_y-1 nil 3254160320 ("" (grind) nil nil )
((zero const-decl "Vector" vectors_2D nil )) nil ))
(norm_xy_eq_0 0
(norm_xy_eq_0-1 nil 3428184293
("" (skeep)
(("" (expand "norm" )
(("" (split)
(("1" (lemma "sqrt_eq_0" )
(("1" (inst -1 "sqv(v)" )
(("1" (split -1)
(("1" (rewrite "sqv_sos" )
(("1" (expand "sos" )
(("1" (rewrite "sq_plus_eq_0" )
(("1" (flatten) (("1" (assert ) nil nil )) nil ))
nil ))
nil ))
nil )
("2" (assert ) nil nil ))
nil ))
nil ))
nil )
("2" (flatten)
(("2" (rewrite "sqv_sos" )
(("2" (expand "sos" )
(("2" (replaces -) (("2" (assert ) nil nil )) nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((norm const-decl "nnreal" vectors_2D nil )
(sq_0 formula-decl nil sq "reals/" )
(sqrt_0 formula-decl nil sqrt "reals/" )
(sqrt_eq_0 formula-decl nil sqrt "reals/" )
(sos const-decl "nnreal" vectors_2D nil )
(nnreal_plus_nnreal_is_nnreal application-judgement "nnreal"
real_types nil )
(sq_plus_eq_0 formula-decl nil sq "reals/" )
(sqv_sos formula-decl nil vectors_2D nil )
(sqv const-decl "nnreal" vectors_2D nil )
(nnreal type-eq-decl nil real_types nil )
(Vector type-eq-decl nil vectors_2D 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 ))
shostak))
(norm_sqv_eq_0 0
(norm_sqv_eq_0-1 nil 3428186268
("" (skeep)
(("" (expand "norm" )
(("" (ground) (("" (replaces -1) (("" (assert ) nil nil )) nil ))
nil ))
nil ))
nil )
((norm const-decl "nnreal" vectors_2D nil )
(sqrt_0 formula-decl nil sqrt "reals/" ))
nil ))
(norm_eq_0 0
(norm_eq_0-1 nil 3430054210
("" (skeep)
(("" (lemma "norm_xy_eq_0" )
(("" (inst?)
(("" (replaces -1)
(("" (grind) (("" (decompose-equality) nil nil )) nil )) nil ))
nil ))
nil ))
nil )
((norm_xy_eq_0 formula-decl nil vectors_2D nil )
(zero const-decl "Vector" vectors_2D nil )
(Vector type-eq-decl nil vectors_2D nil )
(real nonempty-type-from-decl nil reals nil ))
nil ))
(norm_zero 0
(norm_zero-1 nil 3430759050
("" (lemma "norm_eq_0" ) (("" (inst?) (("" (assert ) nil nil )) nil ))
nil )
((real nonempty-type-from-decl nil reals nil )
(Vector type-eq-decl nil vectors_2D nil )
(zero const-decl "Vector" vectors_2D nil )
(norm_eq_0 formula-decl nil vectors_2D nil ))
shostak))
(sqv_zero 0
(sqv_zero-1 nil 3254160320 ("" (grind) nil nil )
((zero const-decl "Vector" vectors_2D nil )
(* const-decl "real" vectors_2D nil )
(sqv const-decl "nnreal" vectors_2D nil ))
nil ))
(sqv_eq_0 0
(sqv_eq_0-1 nil 3254160320
("" (skeep)
(("" (lemma "norm_sqv_eq_0" )
(("" (inst?)
(("" (replaces -1 :dir rl)
(("" (lemma "norm_eq_0" ) (("" (inst?) nil nil )) nil )) nil ))
nil ))
nil ))
nil )
((norm_sqv_eq_0 formula-decl nil vectors_2D nil )
(norm_eq_0 formula-decl nil vectors_2D nil )
(Vector type-eq-decl nil vectors_2D nil )
(real nonempty-type-from-decl nil reals nil ))
nil ))
(v_neq_zero 0
(v_neq_zero-1 nil 3428185676
("" (skeep)
(("" (lemma "sqv_eq_0" ) (("" (inst?) (("" (ground) nil nil )) nil ))
nil ))
nil )
((sqv_eq_0 formula-decl nil vectors_2D nil )
(real_gt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(Vector type-eq-decl nil vectors_2D nil )
(real nonempty-type-from-decl nil reals nil ))
shostak))
(sq_dot_eq_0 0
(sq_dot_eq_0-1 nil 3428790623
("" (skeep)
(("" (lemma "v_neq_zero" )
(("" (inst?)
(("" (expand "sqv" )
(("" (ground) (("" (replaces -1) (("" (grind) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((v_neq_zero formula-decl nil vectors_2D nil )
(sqv const-decl "nnreal" vectors_2D nil )
(* const-decl "real" vectors_2D nil )
(zero const-decl "Vector" vectors_2D nil )
(real_gt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(Vector type-eq-decl nil vectors_2D nil )
(real nonempty-type-from-decl nil reals nil ))
nil ))
(nzv_xy_neq_0 0
(nzv_xy_neq_0-1 nil 3430757168
("" (skeep)
(("" (expand "nz_vector?" )
(("" (lemma "norm_eq_0" )
(("" (inst?)
(("" (lemma "norm_xy_eq_0" )
(("" (inst?)
(("" (replaces -1) (("" (ground) nil nil )) nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((norm_eq_0 formula-decl nil vectors_2D nil )
(norm_xy_eq_0 formula-decl nil vectors_2D nil )
(Vector type-eq-decl nil vectors_2D nil )
(real nonempty-type-from-decl nil reals nil ))
shostak))
(nz_norm_gt_0 0
(nz_norm_gt_0-1 nil 3430589561
("" (skeep :preds? t)
(("" (expand "nz_vector?" )
(("" (flatten)
(("" (lemma "norm_eq_0" )
(("" (inst?) (("" (assert ) nil nil )) nil )) nil ))
nil ))
nil ))
nil )
((norm_eq_0 formula-decl nil vectors_2D nil )
(real_gt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(Nz_vector type-eq-decl nil vectors_2D nil )
(zero const-decl "Vector" vectors_2D nil )
(/= const-decl "boolean" notequal nil )
(boolean nonempty-type-decl nil booleans nil )
(Vector type-eq-decl nil vectors_2D nil )
(real nonempty-type-from-decl nil reals nil ))
nil ))
(nz_sqv_gt_0 0
(nz_sqv_gt_0-1 nil 3430589561
("" (skeep :preds? t)
(("" (lemma "v_neq_zero" )
(("" (inst?)
(("" (expand "nz_vector?" ) (("" (assert ) nil nil )) nil )) nil ))
nil ))
nil )
((v_neq_zero formula-decl nil vectors_2D nil )
(real_gt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(Nz_vector type-eq-decl nil vectors_2D nil )
(zero const-decl "Vector" vectors_2D nil )
(/= const-decl "boolean" notequal nil )
(boolean nonempty-type-decl nil booleans nil )
(Vector type-eq-decl nil vectors_2D nil )
(real nonempty-type-from-decl nil reals nil ))
nil ))
(nz_nvz_left 0
(nz_nvz_left-1 nil 3430835111 ("" (judgement-tcc) nil nil )
((zero const-decl "Vector" vectors_2D nil )) nil ))
(nz_nvz_right 0
(nz_nvz_right-1 nil 3430835111 ("" (judgement-tcc) nil nil )
((zero const-decl "Vector" vectors_2D nil )) nil ))
(normalized_nz 0
(normalized_nz-1 nil 3430590288
("" (skeep :preds? t)
(("" (assert )
(("" (lemma "norm_eq_0" )
(("" (inst?)
(("" (expand "nz_vector?" ) (("" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil )
((real nonempty-type-from-decl nil reals nil )
(Vector type-eq-decl nil vectors_2D nil )
(number nonempty-type-decl nil numbers nil )
(boolean nonempty-type-decl nil booleans nil )
(= const-decl "[T, T -> boolean]" equalities 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 )
(bool nonempty-type-eq-decl nil booleans nil )
(>= const-decl "bool" reals nil )
(nnreal type-eq-decl nil real_types nil )
(norm const-decl "nnreal" vectors_2D nil )
(Normalized type-eq-decl nil vectors_2D nil )
(norm_eq_0 formula-decl nil vectors_2D nil ))
nil ))
(neg_nzv 0
(neg_nzv-1 nil 3431076610
("" (grind) (("" (decompose-equality 1) nil nil )) 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 )
(real nonempty-type-from-decl nil reals nil )
(Vector type-eq-decl nil vectors_2D nil )
(/= const-decl "boolean" notequal nil )
(Nz_vector type-eq-decl nil vectors_2D nil )
(zero const-decl "Vector" vectors_2D nil )
(- const-decl "Vector" vectors_2D nil ))
nil ))
(nz_nzv 0
(nz_nzv-1 nil 3431179123
("" (grind)
(("" (decompose-equality 2)
(("1" (grind-reals) nil nil ) ("2" (grind-reals) nil nil )) nil ))
nil )
((nonzero_times3 formula-decl nil real_props nil )
(nonzero_times1 formula-decl nil real_props nil )
(real_times_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 )
(/= const-decl "boolean" notequal 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 )
(nzreal nonempty-type-eq-decl nil reals nil )
(Vector type-eq-decl nil vectors_2D nil )
(Nz_vector type-eq-decl nil vectors_2D nil )
(zero const-decl "Vector" vectors_2D nil )
(* const-decl "Vector" vectors_2D nil ))
nil ))
(neg_zero 0
(neg_zero-1 nil 3462009581 ("" (grind) nil nil )
((zero const-decl "Vector" vectors_2D nil )
(- const-decl "Vector" vectors_2D nil ))
shostak))
(add_zero_left 0
(add_zero_left-1 nil 3254160320
("" (grind) (("" (apply-extensionality 1 :hide? t) nil nil )) nil )
((Vector type-eq-decl nil vectors_2D nil )
(real nonempty-type-from-decl nil reals nil )
(Vect2 type-eq-decl nil vectors_2D_def nil )
(+ const-decl "Vector" vectors_2D nil )
(zero const-decl "Vector" vectors_2D nil ))
nil ))
(add_zero_right 0
(add_zero_right-1 nil 3254160320
("" (grind) (("" (apply-extensionality 1 :hide? t) nil nil )) nil )
((Vector type-eq-decl nil vectors_2D nil )
(real nonempty-type-from-decl nil reals nil )
(Vect2 type-eq-decl nil vectors_2D_def nil )
(+ const-decl "Vector" vectors_2D nil )
(zero const-decl "Vector" vectors_2D nil ))
nil ))
(add_comm 0
(add_comm-1 nil 3254160320 ("" (grind) nil nil )
((+ const-decl "Vector" vectors_2D nil )) nil ))
(add_assoc 0
(add_assoc-1 nil 3254160320 ("" (grind) nil nil )
((+ const-decl "Vector" vectors_2D nil )
(real_plus_real_is_real application-judgement "real" reals nil ))
nil ))
(add_move_left 0
(add_move_left-1 nil 3268401003
("" (skosimp*)
(("" (grind)
(("1" (apply-extensionality 1 :hide? t) nil nil )
("2" (apply-extensionality 1 :hide? t) nil nil ))
nil ))
nil )
((+ const-decl "Vector" vectors_2D nil )
(- const-decl "Vector" vectors_2D nil )
(real_plus_real_is_real application-judgement "real" reals nil )
(real_minus_real_is_real application-judgement "real" reals nil )
(real nonempty-type-from-decl nil reals nil )
(Vector type-eq-decl nil vectors_2D nil )
(- const-decl "[numfield, numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-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 )
(Vect2 type-eq-decl nil vectors_2D_def nil ))
shostak))
(add_move_right 0
(add_move_right-1 nil 3254160320
("" (grind)
(("1" (apply-extensionality 1 :hide? t) nil nil )
("2" (apply-extensionality :hide? t) nil nil ))
nil )
((Vect2 type-eq-decl nil vectors_2D_def 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 )
(numfield nonempty-type-eq-decl nil number_fields nil )
(- const-decl "[numfield, numfield -> numfield]" number_fields nil )
(Vector type-eq-decl nil vectors_2D nil )
(real nonempty-type-from-decl nil reals nil )
(real_minus_real_is_real application-judgement "real" reals nil )
(real_plus_real_is_real application-judgement "real" reals nil )
(- const-decl "Vector" vectors_2D nil )
(+ const-decl "Vector" vectors_2D nil ))
nil ))
(add_move_both 0
(add_move_both-1 nil 3254160320
("" (grind)
(("1" (apply-extensionality :hide? t) nil nil )
("2" (apply-extensionality :hide? t) nil nil ))
nil )
((Vector type-eq-decl nil vectors_2D nil )
(real nonempty-type-from-decl nil reals nil )
(real_minus_real_is_real application-judgement "real" reals nil )
(real_plus_real_is_real application-judgement "real" reals nil )
(- const-decl "Vector" vectors_2D nil )
(+ const-decl "Vector" vectors_2D nil ))
nil ))
(add_neg_sub 0
(add_neg_sub-1 nil 3254160320 ("" (grind) nil nil )
((- const-decl "Vector" vectors_2D nil )
(+ const-decl "Vector" vectors_2D nil )
(- const-decl "Vector" vectors_2D nil )
(minus_real_is_real application-judgement "real" reals nil ))
nil ))
(add_cancel 0
(add_cancel-1 nil 3254160320
("" (grind) (("" (apply-extensionality 1 :hide? t) nil nil )) nil )
((Vector type-eq-decl nil vectors_2D nil )
(real nonempty-type-from-decl nil reals nil )
(Vect2 type-eq-decl nil vectors_2D_def nil )
(- const-decl "Vector" vectors_2D nil )
(+ const-decl "Vector" vectors_2D nil ))
nil ))
(add_cancel_neg 0
(add_cancel_neg-1 nil 3254160320
("" (grind) (("" (apply-extensionality :hide? t) 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 )
(numfield nonempty-type-eq-decl nil number_fields nil )
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil )
(Vector type-eq-decl nil vectors_2D nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(Vect2 type-eq-decl nil vectors_2D_def nil )
(real nonempty-type-from-decl nil reals nil )
(minus_real_is_real application-judgement "real" reals nil )
(real_plus_real_is_real application-judgement "real" reals nil )
(+ const-decl "Vector" vectors_2D nil )
(- const-decl "Vector" vectors_2D nil ))
nil ))
(add_cancel2 0
(add_cancel2-1 nil 3255191564
("" (grind) (("" (apply-extensionality :hide? t) nil nil )) nil )
((Vector type-eq-decl nil vectors_2D nil )
(real nonempty-type-from-decl nil reals nil )
(Vect2 type-eq-decl nil vectors_2D_def nil )
(+ const-decl "Vector" vectors_2D nil )
(- const-decl "Vector" vectors_2D nil ))
shostak))
(add_cancel_neg2 0
(add_cancel_neg2-1 nil 3255191572
("" (grind) (("" (apply-extensionality :hide? t) nil nil )) nil )
((Vector type-eq-decl nil vectors_2D nil )
(real nonempty-type-from-decl nil reals nil )
(Vect2 type-eq-decl nil vectors_2D_def nil )
(- const-decl "Vector" vectors_2D nil )
(+ const-decl "Vector" vectors_2D nil ))
shostak))
(add_cancel_left 0
(add_cancel_left-1 nil 3268401026
("" (grind) (("" (apply-extensionality 1 :hide? t) nil nil )) nil )
((real nonempty-type-from-decl nil reals nil )
(Vector type-eq-decl nil vectors_2D nil )
(+ const-decl "Vector" vectors_2D nil ))
shostak))
(add_cancel_right 0
(add_cancel_right-1 nil 3268401043
("" (grind) (("" (apply-extensionality 1 :hide? t) nil nil )) nil )
((real nonempty-type-from-decl nil reals nil )
(Vector type-eq-decl nil vectors_2D nil )
(+ const-decl "Vector" vectors_2D nil ))
shostak))
(add_eq_zero 0
(add_eq_zero-1 nil 3467130470
("" (grind) (("" (decompose-equality 1) nil nil )) nil )
((real nonempty-type-from-decl nil reals nil )
(Vector type-eq-decl nil vectors_2D nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-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 )
(minus_real_is_real application-judgement "real" reals nil )
(real_plus_real_is_real application-judgement "real" reals nil )
(- const-decl "Vector" vectors_2D nil )
(zero const-decl "Vector" vectors_2D nil )
(+ const-decl "Vector" vectors_2D nil ))
shostak))
(neg_shift 0
(neg_shift-1 nil 3467130477
("" (grind)
(("1" (decompose-equality 1) nil nil )
("2" (decompose-equality 1) nil nil ))
nil )
((Vect2 type-eq-decl nil vectors_2D_def nil )
(real nonempty-type-from-decl nil reals nil )
(Vector type-eq-decl nil vectors_2D nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-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 )
(minus_real_is_real application-judgement "real" reals nil )
(- const-decl "Vector" vectors_2D nil ))
shostak))
(sub_cancel_left 0
(sub_cancel_left-1 nil 3430753136
("" (grind) (("" (decompose-equality 1) nil nil )) nil )
((Vector type-eq-decl nil vectors_2D nil )
(real nonempty-type-from-decl nil reals nil )
(real_times_real_is_real application-judgement "real" reals nil )
(- const-decl "Vector" vectors_2D nil ))
shostak))
(sub_cancel_right 0
(sub_cancel_right-1 nil 3430753152
("" (skeep) (("" (grind) (("" (decompose-equality 1) nil nil )) nil ))
nil )
((- const-decl "Vector" vectors_2D nil )
(real_minus_real_is_real application-judgement "real" reals nil )
(real nonempty-type-from-decl nil reals nil )
(Vector type-eq-decl nil vectors_2D nil ))
shostak))
(sub_zero_left 0
(sub_zero_left-1 nil 3254160320 ("" (grind) nil nil )
((zero const-decl "Vector" vectors_2D nil )
(- const-decl "Vector" vectors_2D nil )
(- const-decl "Vector" vectors_2D nil ))
nil ))
(sub_zero_right 0
(sub_zero_right-1 nil 3254160320
("" (grind) (("" (apply-extensionality :hide? t) nil nil )) nil )
((Vector type-eq-decl nil vectors_2D nil )
(real nonempty-type-from-decl nil reals nil )
(Vect2 type-eq-decl nil vectors_2D_def nil )
(- const-decl "Vector" vectors_2D nil )
(zero const-decl "Vector" vectors_2D nil ))
nil ))
(sub_eq_args 0
(sub_eq_args-1 nil 3254160320 ("" (grind) nil nil )
((- const-decl "Vector" vectors_2D nil )
(zero const-decl "Vector" vectors_2D nil ))
nil ))
(sub_eq_zero 0
(sub_eq_zero-1 nil 3254160320
("" (grind) (("" (apply-extensionality :hide? t) nil nil )) nil )
((Vector type-eq-decl nil vectors_2D nil )
(real nonempty-type-from-decl nil reals nil )
(real_minus_real_is_real application-judgement "real" reals nil )
(zero const-decl "Vector" vectors_2D nil )
(- const-decl "Vector" vectors_2D nil ))
nil ))
(sub_cancel 0
(sub_cancel-1 nil 3254160320 ("" (grind) nil nil )
((- const-decl "Vector" vectors_2D nil )
(- const-decl "Vector" vectors_2D nil ))
nil ))
(sub_cancel_neg 0
(sub_cancel_neg-1 nil 3254160320 ("" (grind) nil nil )
((- const-decl "Vector" vectors_2D nil )
(- const-decl "Vector" vectors_2D nil )
(+ const-decl "Vector" vectors_2D nil )
(real_plus_real_is_real application-judgement "real" reals nil )
(minus_real_is_real application-judgement "real" reals nil ))
nil ))
(neg_add_left 0
(neg_add_left-1 nil 3254160320 ("" (grind) nil nil )
((- const-decl "Vector" vectors_2D nil )
(+ const-decl "Vector" vectors_2D nil )
(zero const-decl "Vector" vectors_2D nil )
(minus_real_is_real application-judgement "real" reals nil ))
nil ))
(neg_add_right 0
(neg_add_right-1 nil 3254160320 ("" (grind) nil nil )
((- const-decl "Vector" vectors_2D nil )
(+ const-decl "Vector" vectors_2D nil )
(zero const-decl "Vector" vectors_2D nil )
(minus_real_is_real application-judgement "real" reals nil ))
nil ))
(neg_distr_sub 0
(neg_distr_sub-1 nil 3254160320 ("" (grind) nil nil )
((- const-decl "Vector" vectors_2D nil )
(- const-decl "Vector" vectors_2D nil )
(real_minus_real_is_real application-judgement "real" reals nil ))
nil ))
(neg_neg 0
(neg_neg-1 nil 3254160320
("" (grind) (("" (apply-extensionality :hide? t) 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 )
(numfield nonempty-type-eq-decl nil number_fields nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(Vector type-eq-decl nil vectors_2D nil )
(real nonempty-type-from-decl nil reals nil )
(Vect2 type-eq-decl nil vectors_2D_def nil )
(minus_real_is_real application-judgement "real" reals nil )
(- const-decl "Vector" vectors_2D nil ))
nil ))
(neg_distr_add 0
(neg_distr_add-1 nil 3254160320 ("" (grind) nil nil )
((+ const-decl "Vector" vectors_2D nil )
(- const-decl "Vector" vectors_2D nil )
(- const-decl "Vector" vectors_2D nil )
(minus_real_is_real application-judgement "real" reals nil )
(real_plus_real_is_real application-judgement "real" reals nil ))
nil ))
(dot_neg_left 0
(dot_neg_left-1 nil 3254160320 ("" (grind) nil nil )
((minus_real_is_real application-judgement "real" reals nil )
(real_times_real_is_real application-judgement "real" reals nil )
(real_plus_real_is_real application-judgement "real" reals nil )
(* const-decl "real" vectors_2D nil )
(- const-decl "Vector" vectors_2D nil ))
nil ))
(dot_neg_right 0
(dot_neg_right-1 nil 3254160320 ("" (grind) nil nil )
((minus_real_is_real application-judgement "real" reals nil )
(real_times_real_is_real application-judgement "real" reals nil )
(real_plus_real_is_real application-judgement "real" reals nil )
(* const-decl "real" vectors_2D nil )
(- const-decl "Vector" vectors_2D nil ))
nil ))
(neg_dot_neg 0
(neg_dot_neg-1 nil 3429977937 ("" (grind) nil nil )
((- const-decl "Vector" vectors_2D nil )
(* const-decl "real" vectors_2D nil )
(real_times_real_is_real application-judgement "real" reals nil )
(minus_real_is_real application-judgement "real" reals nil ))
shostak))
(dot_zero_left 0
(dot_zero_left-1 nil 3254160320 ("" (grind) nil nil )
((zero const-decl "Vector" vectors_2D nil )
(* const-decl "real" vectors_2D nil ))
nil ))
(dot_zero_right 0
(dot_zero_right-1 nil 3254160320 ("" (grind) nil nil )
((zero const-decl "Vector" vectors_2D nil )
(* const-decl "real" vectors_2D nil ))
nil ))
(dot_comm 0
(dot_comm-1 nil 3254160320 ("" (grind) nil nil )
((* const-decl "real" vectors_2D nil )
(real_times_real_is_real application-judgement "real" reals nil ))
nil ))
(dot_assoc 0
(dot_assoc-1 nil 3254160320 ("" (grind) nil nil )
((* const-decl "real" vectors_2D nil )
(* const-decl "Vector" vectors_2D nil )
(real_times_real_is_real application-judgement "real" reals nil ))
nil ))
(dot_eq_args_ge 0
(dot_eq_args_ge-1 nil 3254160320 ("" (grind) nil nil )
((* const-decl "real" vectors_2D nil )
(real_times_real_is_real application-judgement "real" reals nil ))
nil ))
(add_comm_assoc_left 0
(add_comm_assoc_left-1 nil 3440244987 ("" (grind) nil nil )
((+ const-decl "Vector" vectors_2D nil )
(real_plus_real_is_real application-judgement "real" reals nil ))
shostak))
(add_comm_assoc_right 0
(add_comm_assoc_right-1 nil 3440244991 ("" (grind) nil nil )
((+ const-decl "Vector" vectors_2D nil )
(real_plus_real_is_real application-judgement "real" reals nil ))
shostak))
(dot_add_right 0
(dot_add_right-1 nil 3254160320 ("" (grind) nil nil )
((+ const-decl "Vector" vectors_2D nil )
(* const-decl "real" vectors_2D nil )
(real_plus_real_is_real application-judgement "real" reals nil )
(real_times_real_is_real application-judgement "real" reals nil ))
nil ))
(dot_add_left 0
(dot_add_left-1 nil 3254160320 ("" (grind) nil nil )
((+ const-decl "Vector" vectors_2D nil )
(* const-decl "real" vectors_2D nil )
(real_plus_real_is_real application-judgement "real" reals nil )
(real_times_real_is_real application-judgement "real" reals nil ))
nil ))
(dot_sub_right 0
(dot_sub_right-1 nil 3254160320 ("" (grind) nil nil )
((real_times_real_is_real application-judgement "real" reals nil )
(real_plus_real_is_real application-judgement "real" reals nil )
(real_minus_real_is_real application-judgement "real" reals nil )
(* const-decl "real" vectors_2D nil )
(- const-decl "Vector" vectors_2D nil ))
nil ))
(dot_sub_left 0
(dot_sub_left-1 nil 3254160320 ("" (grind) nil nil )
((real_times_real_is_real application-judgement "real" reals nil )
(real_plus_real_is_real application-judgement "real" reals nil )
(real_minus_real_is_real application-judgement "real" reals nil )
(* const-decl "real" vectors_2D nil )
(- const-decl "Vector" vectors_2D nil ))
nil ))
(add_dot_add 0
(add_dot_add-1 nil 3477648453 ("" (grind) nil nil )
((+ const-decl "Vector" vectors_2D nil )
(* const-decl "real" vectors_2D nil )
(real_plus_real_is_real application-judgement "real" reals nil )
(real_times_real_is_real application-judgement "real" reals nil ))
shostak))
(dot_divby 0
(dot_divby-1 nil 3268401067
("" (skosimp*)
(("" (grind) (("" (apply-extensionality 1 :hide? t) nil nil )) nil ))
nil )
((* const-decl "Vector" vectors_2D nil )
(real_times_real_is_real application-judgement "real" reals nil )
(Vector type-eq-decl nil vectors_2D nil )
(real nonempty-type-from-decl nil reals nil ))
shostak))
(dot_scal_left 0
(dot_scal_left-1 nil 3254160320 ("" (grind) nil nil )
((* const-decl "Vector" vectors_2D nil )
(* const-decl "real" vectors_2D nil )
(real_times_real_is_real application-judgement "real" reals nil ))
nil ))
(dot_scal_right 0
(dot_scal_right-1 nil 3254160320 ("" (grind) nil nil )
((* const-decl "Vector" vectors_2D nil )
(* const-decl "real" vectors_2D nil )
(real_times_real_is_real application-judgement "real" reals nil ))
nil ))
(dot_scal_comm_assoc 0
(dot_scal_comm_assoc-1 nil 3440245242 ("" (grind) nil nil )
((* const-decl "Vector" vectors_2D nil )
(* const-decl "real" vectors_2D nil )
(real_times_real_is_real application-judgement "real" reals nil ))
shostak))
(scal_assoc 0
(scal_assoc-1 nil 3430579398 ("" (grind) nil nil )
((* const-decl "Vector" vectors_2D nil )
(real_times_real_is_real application-judgement "real" reals nil ))
shostak))
(scal_comm_assoc 0
(scal_comm_assoc-1 nil 3440245250 ("" (grind) nil nil )
((* const-decl "Vector" vectors_2D nil )
(real_times_real_is_real application-judgement "real" reals nil ))
shostak))
(dot_scal_canon 0
(dot_scal_canon-1 nil 3256912742 ("" (grind) nil nil )
((* const-decl "Vector" vectors_2D nil )
(* const-decl "real" vectors_2D nil )
(real_times_real_is_real application-judgement "real" reals nil ))
shostak))
(scal_add_left 0
(scal_add_left-1 nil 3254656786 ("" (grind) nil nil )
((* const-decl "Vector" vectors_2D nil )
(+ const-decl "Vector" vectors_2D nil )
(real_times_real_is_real application-judgement "real" reals nil ))
shostak))
(scal_sub_left 0
(scal_sub_left-1 nil 3254160320 ("" (grind) nil nil )
((* const-decl "Vector" vectors_2D nil )
(- const-decl "Vector" vectors_2D nil )
(real_times_real_is_real application-judgement "real" reals nil ))
nil ))
(scal_add_right 0
(scal_add_right-1 nil 3254656137 ("" (grind) nil nil )
((+ const-decl "Vector" vectors_2D nil )
(* const-decl "Vector" vectors_2D nil )
(real_times_real_is_real application-judgement "real" reals nil ))
shostak))
(scal_sub_right 0
(scal_sub_right-1 nil 3254656141 ("" (grind) nil nil )
((- const-decl "Vector" vectors_2D nil )
(* const-decl "Vector" vectors_2D nil )
(real_times_real_is_real application-judgement "real" reals nil ))
shostak))
(scal_neg 0
(scal_neg-1 nil 3430578793 ("" (grind) nil nil )
((- const-decl "Vector" vectors_2D nil )
(* const-decl "Vector" vectors_2D nil )
(minus_real_is_real application-judgement "real" reals nil ))
shostak))
(scal_cross 0
(scal_cross-1 nil 3430578824
("" (skeep)
(("" (split)
(("1" (flatten)
(("1" (replaces -1 :dir rl)
(("1" (decompose-equality 1)
(("1" (grind) nil nil ) ("2" (grind) nil nil )) nil ))
nil ))
nil )
("2" (flatten)
(("2" (replaces -1)
(("2" (decompose-equality 1)
(("1" (grind) nil nil ) ("2" (grind) nil nil )) nil ))
nil ))
nil ))
nil ))
nil )
((real_times_real_is_real application-judgement "real" reals nil )
(real nonempty-type-from-decl nil reals nil )
(Vector type-eq-decl nil vectors_2D nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(nzreal nonempty-type-eq-decl nil reals nil )
(/= const-decl "boolean" notequal nil )
(* const-decl "Vector" vectors_2D 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 )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil ))
shostak))
(scal_zero 0
(scal_zero-1 nil 3254160320 ("" (grind) nil nil )
((zero const-decl "Vector" vectors_2D nil )
(* const-decl "Vector" vectors_2D nil ))
nil ))
(scal_0 0
(scal_0-1 nil 3254160320 ("" (grind) nil nil )
((* const-decl "Vector" vectors_2D nil )
(zero const-decl "Vector" vectors_2D nil ))
nil ))
(scal_1 0
(scal_1-1 nil 3430578421
("" (skeep)
(("" (decompose-equality)
(("1" (grind) nil nil ) ("2" (grind) 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 )
(* const-decl "Vector" vectors_2D nil )
(Vector type-eq-decl nil vectors_2D nil )
(real nonempty-type-from-decl nil reals nil )
(real_times_real_is_real application-judgement "real" reals nil ))
shostak))
(scal_neg_1 0
(scal_neg_1-1 nil 3467130399 ("" (grind) nil nil )
((* const-decl "Vector" vectors_2D nil )
(- const-decl "Vector" vectors_2D nil )
(minus_odd_is_odd application-judgement "odd_int" integers nil ))
shostak))
(scal_cancel 0
(scal_cancel-1 nil 3255949385
("" (skeep)
(("" (grind)
(("" (mult-by 1 "nzv`x" )
(("" (mult-by 1 "nzv`y" )
(("" (typepred "nzv" )
(("" (lemma "norm_xy_eq_0" )
(("" (inst?) (("" (ground) nil nil )) nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((* const-decl "Vector" vectors_2D nil )
(real_times_real_is_real application-judgement "real" reals nil )
(norm_xy_eq_0 formula-decl nil vectors_2D nil )
(nz_norm_gt_0 application-judgement "posreal" vectors_2D nil )
(nzv skolem-const-decl "Nz_vector" vectors_2D nil )
(Nz_vector type-eq-decl nil vectors_2D nil )
(zero const-decl "Vector" vectors_2D nil )
(/= const-decl "boolean" notequal nil )
(Vector type-eq-decl nil vectors_2D nil )
(real nonempty-type-from-decl nil reals nil )
(= const-decl "[T, T -> boolean]" equalities 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 )
(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 )
(nonzero_real nonempty-type-eq-decl nil reals nil )
(both_sides_times1 formula-decl nil real_props nil ))
nil ))
(scal_div_mult_left 0
(scal_div_mult_left-1 nil 3440245792
("" (grind) (("" (apply-extensionality 2 :hide? t) nil nil )) nil )
((numfield nonempty-type-eq-decl nil number_fields nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(Vector type-eq-decl nil vectors_2D nil )
(Vect2 type-eq-decl nil vectors_2D_def nil )
(real_times_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 "boolean" notequal nil )
(nzreal nonempty-type-eq-decl nil reals nil )
(real_div_nzreal_is_real application-judgement "real" reals nil )
(* const-decl "Vector" vectors_2D nil ))
nil ))
(scal_div_mult_right 0
(scal_div_mult_right-1 nil 3440245801
("" (grind) (("" (apply-extensionality 2 :hide? t) nil nil )) nil )
((/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(Vector type-eq-decl nil vectors_2D nil )
(real_times_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 "boolean" notequal nil )
(nzreal nonempty-type-eq-decl nil reals nil )
(real_div_nzreal_is_real application-judgement "real" reals nil )
(* const-decl "Vector" vectors_2D nil ))
shostak))
(scal_eq_zero 0
(scal_eq_zero-1 nil 3440250246
("" (skosimp*)
(("" (grind)
(("" (apply-extensionality 2 :hide? t)
(("1" (mult-cases -1) nil nil ) ("2" (mult-cases -2) nil nil ))
nil ))
nil ))
nil )
((* const-decl "Vector" vectors_2D nil )
(zero const-decl "Vector" vectors_2D nil )
(real_times_real_is_real application-judgement "real" 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 )
(zero_times3 formula-decl nil real_props nil )
(real nonempty-type-from-decl nil reals nil )
(Vector type-eq-decl nil vectors_2D nil ))
nil ))
(dot_ge_dist 0
(dot_ge_dist-1 nil 3413210572 ("" (grind) nil nil )
((real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(- const-decl "Vector" vectors_2D nil )
(* const-decl "real" vectors_2D nil )
(real_times_real_is_real application-judgement "real" reals nil )
(real_plus_real_is_real application-judgement "real" reals nil )
(real_minus_real_is_real application-judgement "real" reals nil ))
shostak))
(dot_gt_dist 0
(dot_gt_dist-1 nil 3413210595 ("" (grind) nil nil )
((real_gt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(- const-decl "Vector" vectors_2D nil )
(* const-decl "real" vectors_2D nil )
(real_times_real_is_real application-judgement "real" reals nil )
(real_plus_real_is_real application-judgement "real" reals nil )
(real_minus_real_is_real application-judgement "real" reals nil ))
shostak))
(idem_right 0
(idem_right-1 nil 3254160320
("" (skosimp*)
(("" (prop)
(("1"
(case-replace
"(a!1 * v!1)`x = v!1`x AND (a!1 * v!1)`y = v!1`y" )
(("1" (flatten)
(("1" (expand "zero" )
(("1" (expand "*" )
(("1" (apply-extensionality 2 :hide? t) nil nil )) nil ))
nil ))
nil )
("2" (assert ) nil nil ))
nil )
("2" (replace -1)
(("2" (grind) (("2" (apply-extensionality :hide? t) nil nil ))
nil ))
nil )
("3" (replace -1) (("3" (grind) nil nil )) nil ))
nil ))
nil )
((real_times_real_is_real application-judgement "real" reals nil )
(zero const-decl "Vector" vectors_2D nil )
(* const-decl "Vector" vectors_2D nil )
(Vector type-eq-decl nil vectors_2D 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 )
(= const-decl "[T, T -> boolean]" equalities nil )
(number nonempty-type-decl nil numbers nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(bool nonempty-type-eq-decl nil booleans nil )
(boolean nonempty-type-decl nil booleans nil )
(Vect2 type-eq-decl nil vectors_2D_def nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil ))
nil ))
(sqv_neg 0
(sqv_neg-1 nil 3254160320 ("" (grind) nil nil )
((- const-decl "Vector" vectors_2D nil )
(* const-decl "real" vectors_2D nil )
(sqv const-decl "nnreal" vectors_2D nil )
(real_times_real_is_real application-judgement "real" reals nil )
(minus_real_is_real application-judgement "real" reals nil ))
nil ))
(sqv_add 0
(sqv_add-1 nil 3254160320 ("" (grind) nil nil )
((+ const-decl "Vector" vectors_2D nil )
(* const-decl "real" vectors_2D nil )
(sqv const-decl "nnreal" vectors_2D nil )
(* const-decl "Vector" vectors_2D nil )
(real_plus_real_is_real application-judgement "real" reals nil )
(real_times_real_is_real application-judgement "real" reals nil ))
nil ))
(sqv_scal 0
(sqv_scal-1 nil 3254160320 ("" (grind) nil nil )
((* const-decl "Vector" vectors_2D nil )
(* const-decl "real" vectors_2D nil )
(sqv const-decl "nnreal" vectors_2D nil )
(sq const-decl "nonneg_real" sq "reals/" )
(real_times_real_is_real application-judgement "real" reals nil ))
nil ))
(sqv_sub 0
(sqv_sub-1 nil 3254160320 ("" (grind) nil nil )
((- const-decl "Vector" vectors_2D nil )
(* const-decl "real" vectors_2D nil )
(sqv const-decl "nnreal" vectors_2D nil )
(* const-decl "Vector" vectors_2D nil )
(real_minus_real_is_real application-judgement "real" reals nil )
(real_plus_real_is_real application-judgement "real" reals nil )
(real_times_real_is_real application-judgement "real" reals nil ))
nil ))
(sqv_sub_scal 0
(sqv_sub_scal-1 nil 3430754293
("" (skeep)
(("" (rewrite "sqv_sub" )
(("" (rewrite "sqv_scal" )
(("" (assert ) (("" (neg-formula 1) (("" (grind) nil nil )) nil ))
nil ))
nil ))
nil ))
nil )
((sqv_sub formula-decl nil vectors_2D nil )
(real nonempty-type-from-decl nil reals nil )
(Vector type-eq-decl nil vectors_2D 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 )
(* const-decl "Vector" vectors_2D nil )
(nnreal_times_nnreal_is_nnreal application-judgement "nnreal"
real_types nil )
(nnreal_plus_nnreal_is_nnreal application-judgement "nnreal"
real_types nil )
(real_minus_real_is_real application-judgement "real" reals nil )
(real_times_real_is_real application-judgement "real" reals nil )
(real_plus_real_is_real application-judgement "real" reals nil )
(TRUE const-decl "bool" booleans nil )
(id const-decl "(bijective?[T, T])" identity nil )
(bijective? const-decl "bool" functions nil )
(bool nonempty-type-eq-decl nil booleans nil )
(* const-decl "real" vectors_2D nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(nonzero_real nonempty-type-eq-decl nil reals nil )
(/= const-decl "boolean" notequal nil )
(both_sides_times1 formula-decl nil real_props nil )
(minus_real_is_real application-judgement "real" reals nil )
(neg_one_times formula-decl nil extra_tegies nil )
(neg_neg formula-decl nil extra_tegies nil )
(mult_neg formula-decl nil extra_tegies nil )
(minus_odd_is_odd application-judgement "odd_int" integers nil )
(sqv_scal formula-decl nil vectors_2D nil ))
shostak))
(sqv_sym 0
(sqv_sym-1 nil 3254160320 ("" (grind) nil nil )
((- const-decl "Vector" vectors_2D nil )
(* const-decl "real" vectors_2D nil )
(sqv const-decl "nnreal" vectors_2D nil )
(real_minus_real_is_real application-judgement "real" reals nil )
(real_plus_real_is_real application-judgement "real" reals nil )
(real_times_real_is_real application-judgement "real" reals nil ))
nil ))
(sqrt_sqv_sq 0
(sqrt_sqv_sq-1 nil 3255193306
("" (skosimp*)
(("" (lemma "sqrt_square" )
(("" (inst -1 "sqv(v!1)" ) (("" (rewrite "sqrt_times" ) nil nil ))
nil ))
nil ))
nil )
((sqrt_square formula-decl nil sqrt "reals/" )
(nnreal_times_nnreal_is_nnreal application-judgement "nnreal"
real_types nil )
(sqrt_times formula-decl nil sqrt "reals/" )
(sqv const-decl "nnreal" vectors_2D nil )
(nnreal type-eq-decl nil real_types nil )
(Vector type-eq-decl nil vectors_2D 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 ))
shostak))
(norm_sym 0
(norm_sym-1 nil 3254160320
("" (skosimp*)
(("" (expand "norm" )
(("" (rewrite "sqrt_eq" ) (("" (rewrite "sqv_sym" ) nil nil )) nil ))
nil ))
nil )
((norm const-decl "nnreal" vectors_2D nil )
(sqv_sym formula-decl nil vectors_2D nil )
(- const-decl "Vector" vectors_2D nil )
(sqv const-decl "nnreal" vectors_2D nil )
(nnreal type-eq-decl nil real_types nil )
(Vector type-eq-decl nil vectors_2D 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 )
(sqrt_eq formula-decl nil sqrt "reals/" ))
nil ))
(norm_neg 0
(norm_neg-1 nil 3254160320 ("" (grind) nil nil )
((- const-decl "Vector" vectors_2D nil )
(* const-decl "real" vectors_2D nil )
(sqv const-decl "nnreal" vectors_2D nil )
(norm const-decl "nnreal" vectors_2D nil )
(real_times_real_is_real application-judgement "real" reals nil )
(minus_real_is_real application-judgement "real" reals nil ))
nil ))
(dot_sq_norm 0
(dot_sq_norm-1 nil 3254160320
("" (skosimp*)
(("" (expand "norm" )
(("" (rewrite "sq_sqrt" ) (("" (grind) nil nil )) nil )) nil ))
nil )
((norm const-decl "nnreal" vectors_2D nil )
(* const-decl "real" vectors_2D nil )
(real_times_real_is_real application-judgement "real" reals nil )
(real_plus_real_is_real application-judgement "real" reals nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(sqv const-decl "nnreal" vectors_2D nil )
(nnreal type-eq-decl nil real_types nil )
(>= const-decl "bool" reals nil )
(bool nonempty-type-eq-decl nil booleans nil )
(Vector type-eq-decl nil vectors_2D 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 )
(sq_sqrt formula-decl nil sqrt "reals/" ))
nil ))
(sq_norm 0
(sq_norm-1 nil 3403523995 ("" (grind) nil nil )
((nnreal_times_nnreal_is_nnreal application-judgement "nnreal"
real_types nil )
(real_plus_real_is_real application-judgement "real" reals nil )
(* const-decl "real" vectors_2D nil )
(sqv const-decl "nnreal" vectors_2D nil )
(norm const-decl "nnreal" vectors_2D nil )
(sq const-decl "nonneg_real" sq "reals/" )
(real_times_real_is_real application-judgement "real" reals nil ))
shostak))
(sqv_eq_norm_eq 0
(sqv_eq_norm_eq-1 nil 3528011984
("" (skeep)
(("" (rewrite "sq_eq" 1 :dir rl) (("" (rewrite "sq_norm" ) nil nil ))
nil ))
nil )
((sq_eq formula-decl nil sq "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 )
(>= const-decl "bool" reals nil )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(Vector type-eq-decl nil vectors_2D nil )
(nnreal type-eq-decl nil real_types nil )
(norm const-decl "nnreal" vectors_2D nil )
(sq_norm formula-decl nil vectors_2D nil ))
shostak))
(norm_eq_sqv_eq 0
(norm_eq_sqv_eq-1 nil 3528012044
("" (skeep)
(("" (rewrite "sq_eq" :dir rl) (("" (rewrite "sq_norm" ) nil nil ))
nil ))
nil )
((sq_eq formula-decl nil sq "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 )
(>= const-decl "bool" reals nil )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(Vector type-eq-decl nil vectors_2D nil )
(nnreal type-eq-decl nil real_types nil )
(norm const-decl "nnreal" vectors_2D nil )
(sq_norm formula-decl nil vectors_2D nil ))
shostak))
(sqrt_sqv_norm 0
(sqrt_sqv_norm-1 nil 3254160320
("" (skosimp*) (("" (expand "norm" ) (("" (propax) nil nil )) nil ))
nil )
((norm const-decl "nnreal" vectors_2D nil )) nil ))
(norms_eq_sqv 0
(norms_eq_sqv-1 nil 3425027609
("" (skeep)
(("" (lemma "sq_eq" )
(("" (inst?)
(("" (assert )
(("" (replace -1 * rl)
(("" (hide -1)
(("" (rewrite "sq_norm" )
(("" (rewrite "sq_norm" )
(("" (expand "sqv" ) (("" (propax) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((sq_eq formula-decl nil sq "reals/" )
(sqv const-decl "nnreal" vectors_2D nil )
(sq_norm formula-decl nil vectors_2D nil )
(norm const-decl "nnreal" vectors_2D nil )
(nnreal type-eq-decl nil real_types nil )
(Vector type-eq-decl nil vectors_2D 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 ))
nil ))
(norms_eq_sos 0
(norms_eq_sos-1 nil 3602098864
("" (skeep)
(("" (rewrite "norms_eq_sqv" )
(("" (rewrite "sqv_sos" )
(("" (rewrite "sqv_sos" ) (("" (assert ) nil nil )) nil )) nil ))
nil ))
nil )
((norms_eq_sqv formula-decl nil vectors_2D nil )
(real nonempty-type-from-decl nil reals nil )
(Vector type-eq-decl nil vectors_2D nil )
(sqv_sos formula-decl nil vectors_2D nil ))
nil ))
(norm_le_sqv 0
(norm_le_sqv-1 nil 3475936955
("" (skosimp*)
(("" (expand "norm" )
(("" (lemma "sqrt_le" ) (("" (inst?) nil nil )) nil )) nil ))
nil )
((norm const-decl "nnreal" vectors_2D nil )
(sqv const-decl "nnreal" vectors_2D nil )
(nnreal type-eq-decl nil real_types nil )
(Vector type-eq-decl nil vectors_2D 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 )
(sqrt_le formula-decl nil sqrt "reals/" ))
nil ))
(norm_lt_sqv 0
(norm_lt_sqv-1 nil 3475936939
("" (skosimp*)
(("" (expand "norm" )
(("" (lemma "sqrt_lt" ) (("" (inst?) nil nil )) nil )) nil ))
nil )
((norm const-decl "nnreal" vectors_2D nil )
(sqv const-decl "nnreal" vectors_2D nil )
(nnreal type-eq-decl nil real_types nil )
(Vector type-eq-decl nil vectors_2D 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 )
(sqrt_lt formula-decl nil sqrt "reals/" ))
nil ))
(norm_scal 0
(norm_scal-1 nil 3254160320
("" (skosimp*)
(("" (expand "norm" )
(("" (rewrite "sqv_scal" )
(("" (rewrite "sqrt_times" )
(("" (rewrite "sqrt_sq_abs" ) nil nil )) nil ))
nil ))
nil ))
nil )
((norm const-decl "nnreal" vectors_2D nil )
(sqrt_times formula-decl nil sqrt "reals/" )
(bool nonempty-type-eq-decl nil booleans nil )
(>= const-decl "bool" reals nil )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(sq const-decl "nonneg_real" sq "reals/" )
(nnreal type-eq-decl nil real_types nil )
(sqv const-decl "nnreal" vectors_2D 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 )
(sqrt_sq_abs formula-decl nil sqrt "reals/" )
(nnreal_times_nnreal_is_nnreal application-judgement "nnreal"
real_types nil )
(Vector type-eq-decl nil vectors_2D 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 )
(sqv_scal formula-decl nil vectors_2D nil ))
nil ))
(caret_TCC1 0
(caret_TCC1-1 nil 3256053219
("" (skeep)
(("" (rewrite "norm_scal" )
(("" (expand "abs" ) (("" (grind-reals) nil nil )) nil )) nil ))
nil )
((nz_norm_gt_0 application-judgement "posreal" vectors_2D nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(norm_scal formula-decl nil vectors_2D 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 )
(Vector type-eq-decl nil vectors_2D nil )
(bool nonempty-type-eq-decl nil booleans nil )
(>= const-decl "bool" reals nil )
(nnreal type-eq-decl nil real_types nil )
(norm const-decl "nnreal" vectors_2D nil )
(zero const-decl "Vector" vectors_2D nil )
(Nz_vector type-eq-decl nil vectors_2D nil )
(nonzero_abs_is_pos application-judgement "{y: posreal | y >= x}"
real_defs nil )
(posreal_times_posreal_is_posreal application-judgement "posreal"
real_types nil )
(abs const-decl "{n: nonneg_real | n >= m AND n >= -m}" real_defs
nil ))
shostak))
(norm_normalize 0
(norm_normalize-1 nil 3560353108
("" (skeep) (("" (typepred "^(nzv)" ) (("" (propax) nil nil )) nil ))
nil )
((^ const-decl "Normalized" vectors_2D nil )
(Normalized type-eq-decl nil vectors_2D nil )
(Nz_vector type-eq-decl nil vectors_2D nil )
(zero const-decl "Vector" vectors_2D nil )
(/= const-decl "boolean" notequal nil )
(norm const-decl "nnreal" vectors_2D nil )
(nnreal type-eq-decl nil real_types nil )
(>= const-decl "bool" 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 )
(Vector type-eq-decl nil vectors_2D nil )
(real nonempty-type-from-decl nil reals nil )
(= const-decl "[T, T -> boolean]" equalities 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 ))
shostak))
(dot_normalize 0
(dot_normalize-1 nil 3255949078
("" (skosimp*)
(("" (expand "^" )
(("" (assert )
(("" (rewrite "dot_scal_right" )
(("" (assert )
(("" (rewrite "dot_scal_left" ) (("" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((^ const-decl "Normalized" vectors_2D nil )
(dot_scal_right formula-decl nil vectors_2D 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 )
(Vector type-eq-decl nil vectors_2D nil )
(bool nonempty-type-eq-decl nil booleans nil )
(>= const-decl "bool" reals nil )
(nnreal type-eq-decl nil real_types nil )
(norm const-decl "nnreal" vectors_2D nil )
(zero const-decl "Vector" vectors_2D nil )
(Nz_vector type-eq-decl nil vectors_2D nil )
(* const-decl "Vector" vectors_2D nil )
(real_times_real_is_real application-judgement "real" reals nil )
(dot_scal_left formula-decl nil vectors_2D nil )
(nz_nzv application-judgement "Nz_vector" vectors_2D nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(nz_norm_gt_0 application-judgement "posreal" vectors_2D nil )
(real_div_nzreal_is_real application-judgement "real" reals nil )
(posreal_times_posreal_is_posreal application-judgement "posreal"
real_types nil ))
nil ))
(normalize_normalize 0
(normalize_normalize-2 nil 3268401413
("" (skosimp*)
(("" (expand "^" )
(("" (rewrite "norm_scal" )
(("" (expand "abs" )
(("" (case "1 / norm(nzv!1) >= 0" )
(("1" (assert )
(("1" (expand "*" ) (("1" (propax) nil nil )) nil )) nil )
("2" (cross-mult 1) (("2" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((^ const-decl "Normalized" vectors_2D nil )
(abs const-decl "{n: nonneg_real | n >= m AND n >= -m}" real_defs
nil )
(div_mult_pos_ge1 formula-decl nil real_props nil )
(nnreal_times_nnreal_is_nnreal application-judgement "nnreal"
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 )
(nz_nzv application-judgement "Nz_vector" vectors_2D nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(* const-decl "Vector" vectors_2D nil )
(real_times_real_is_real application-judgement "real" reals nil )
(posreal_times_posreal_is_posreal application-judgement "posreal"
real_types nil )
(nonzero_abs_is_pos application-judgement "{y: posreal | y >= x}"
real_defs nil )
(Nz_vector type-eq-decl nil vectors_2D nil )
(zero const-decl "Vector" vectors_2D nil )
(norm const-decl "nnreal" vectors_2D nil )
(nnreal type-eq-decl nil real_types nil )
(>= const-decl "bool" reals nil )
(bool nonempty-type-eq-decl nil booleans nil )
(Vector type-eq-decl nil vectors_2D 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 )
(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 )
(norm_scal formula-decl nil vectors_2D nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(nz_norm_gt_0 application-judgement "posreal" vectors_2D nil ))
nil )
(normalize_normalize-1 nil 3268401324
("" (skosimp*)
(("" (expand "^" )
(("" (rewrite "norm_scal" ) (("" (postpone) nil nil )) nil )) nil ))
nil )
nil shostak))
(normalized_id 0
(normalized_id-1 nil 3445611572
("" (skeep)
(("" (expand "^" )
(("" (rewrite "scal_assoc" )
(("" (grind-reals) (("" (rewrite "scal_1" ) nil nil )) nil ))
nil ))
nil ))
nil )
((^ const-decl "Normalized" vectors_2D nil )
(div_cancel1 formula-decl nil real_props nil )
(scal_1 formula-decl nil vectors_2D nil )
(nz_nzv application-judgement "Nz_vector" vectors_2D nil )
(posreal_times_posreal_is_posreal application-judgement "posreal"
real_types nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(Nz_vector type-eq-decl nil vectors_2D nil )
(zero const-decl "Vector" vectors_2D nil )
(/= const-decl "boolean" notequal nil )
(norm const-decl "nnreal" vectors_2D nil )
(nnreal type-eq-decl nil real_types nil )
(>= const-decl "bool" reals nil )
(bool nonempty-type-eq-decl nil booleans nil )
(Vector type-eq-decl nil vectors_2D 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 )
(scal_assoc formula-decl nil vectors_2D nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(nz_norm_gt_0 application-judgement "posreal" vectors_2D nil ))
shostak))
(normalize_scal 0
(normalize_scal-1 nil 3560354232
("" (skeep)
(("" (expand "^" )
(("" (rewrite "norm_scal" )
(("" (rewrite "sign_abs" )
(("" (rewrite "scal_assoc" )
(("" (rewrite "scal_assoc" )
(("" (grind-reals)
((""
(case-replace
"nza / (sign(nza) * norm(nzv) * nza) = sign(nza) / norm(nzv)" )
(("" (hide 2) (("" (grind :exclude "norm" ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((^ const-decl "Normalized" vectors_2D nil )
(sign_abs formula-decl nil sign "reals/" )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(nzreal_times_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(cross_mult formula-decl nil real_props nil )
(minus_odd_is_odd application-judgement "odd_int" integers nil )
(mult_divides2 application-judgement "(divides(m))" divides nil )
(mult_divides1 application-judgement "(divides(n))" divides nil )
(nzint_times_nzint_is_nzint application-judgement "nzint" integers
nil )
(times_div2 formula-decl nil real_props nil )
(times_div1 formula-decl nil real_props nil )
(nz_nzv application-judgement "Nz_vector" vectors_2D nil )
(norm const-decl "nnreal" vectors_2D nil )
(nnreal type-eq-decl nil real_types nil )
(>= const-decl "bool" reals nil )
(sign const-decl "Sign" sign "reals/" )
(Sign type-eq-decl nil sign "reals/" )
(- const-decl "[numfield -> numfield]" number_fields nil )
(= const-decl "[T, T -> boolean]" equalities nil )
(OR const-decl "[bool, bool -> bool]" booleans nil )
(bool nonempty-type-eq-decl nil booleans nil )
(nzint nonempty-type-eq-decl nil integers nil )
(int nonempty-type-eq-decl nil integers nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(rational nonempty-type-from-decl nil rationals nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(scal_assoc formula-decl nil vectors_2D nil )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(posreal_times_posreal_is_posreal application-judgement "posreal"
real_types nil )
(nonzero_abs_is_pos application-judgement "{y: posreal | y >= x}"
real_defs nil )
(nz_norm_gt_0 application-judgement "posreal" vectors_2D nil )
(Nz_vector type-eq-decl nil vectors_2D nil )
(zero const-decl "Vector" vectors_2D nil )
(Vector type-eq-decl nil vectors_2D nil )
(nzreal nonempty-type-eq-decl nil reals nil )
(/= const-decl "boolean" notequal nil )
(real nonempty-type-from-decl nil reals nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(boolean nonempty-type-decl nil booleans nil )
(number nonempty-type-decl nil numbers nil )
(norm_scal formula-decl nil vectors_2D nil ))
shostak))
(cauchy_schwarz 0
(cauchy_schwarz-3 nil 3254234016
("" (skosimp*)
(("" (case "sqv(v!1) = 0" )
(("1" (rewrite "sqv_eq_0" ) (("1" (grind) nil nil )) nil )
("2" (case "(FORALL (t:real): sqv(u!1-t*v!1) >= 0)" )
(("1" (inst -1 "(u!1*v!1)/sqv(v!1)" )
(("1" (rewrite "sqv_sub_scal" )
(("1" (name-replace UDOTV "u!1 * v!1" )
(("1"
(case-replace
"2 * (UDOTV / sqv(v!1)) * u!1 * v!1 = 2 * sq(UDOTV) / sqv(v!1) " )
(("1" (hide -1)
(("1"
(case-replace
"sq(UDOTV / sqv(v!1)) * sqv(v!1) = sq(UDOTV) / sqv(v!1) " )
(("1" (hide -1)
(("1" (assert )
(("1"
(case-replace
"sqv(u!1) + sq(UDOTV) / sqv(v!1) - 2 * sq(UDOTV) / sqv(v!1) = sqv(u!1) - sq(UDOTV) / sqv(v!1)" )
(("1" (hide -1)
(("1" (assert )
(("1"
(mult-by -1 "sqv(v!1)" )
(("1" (assert ) nil nil ))
nil ))
nil ))
nil )
("2" (hide -2 2)
(("2" (lemma "sqv_eq_0" )
(("2"
(inst?)
(("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (rewrite "sq_div" )
(("2" (expand "sq" 1) (("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil )
("2" (assert )
(("2" (hide -1 3)
(("2" (reveal -2)
(("2"
(case-replace
"2 * (UDOTV / sqv(v!1)) * u!1 * v!1 = 2 * (UDOTV / sqv(v!1)) * (u!1 * v!1)" )
(("1" (hide -1)
(("1" (replace -1)
(("1" (hide -1)
(("1"
(expand "sq" )
(("1" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide -1 2 3) (("2" (grind) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (assert ) nil nil ))
nil )
("2" (skosimp*) (("2" (assert ) nil nil )) nil ))
nil ))
nil ))
nil )
((sqv const-decl "nnreal" vectors_2D nil )
(nnreal type-eq-decl nil real_types nil )
(>= const-decl "bool" reals nil )
(bool nonempty-type-eq-decl nil booleans 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 )
(Vector type-eq-decl nil vectors_2D nil )
(real nonempty-type-from-decl nil reals nil )
(= const-decl "[T, T -> boolean]" equalities nil )
(boolean nonempty-type-decl nil booleans nil )
(number nonempty-type-decl nil numbers nil )
(zero const-decl "Vector" vectors_2D nil )
(* const-decl "real" vectors_2D nil )
(sq const-decl "nonneg_real" sq "reals/" )
(nnreal_times_nnreal_is_nnreal application-judgement "nnreal"
real_types nil )
(real_times_real_is_real application-judgement "real" reals nil )
(real_plus_real_is_real application-judgement "real" reals nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(sqv_eq_0 formula-decl nil vectors_2D nil )
(real_div_nzreal_is_real application-judgement "real" reals nil )
(/= const-decl "boolean" notequal nil )
(v!1 skolem-const-decl "Vector" vectors_2D nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(nnreal_plus_nnreal_is_nnreal application-judgement "nnreal"
real_types nil )
(sq_div formula-decl nil sq "reals/" )
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil )
(- const-decl "[numfield, numfield -> numfield]" number_fields nil )
(both_sides_times_pos_ge1_imp formula-decl nil extra_real_props
nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(minus_odd_is_odd application-judgement "odd_int" integers nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(real_minus_real_is_real application-judgement "real" reals nil )
(sqv_sub_scal formula-decl nil vectors_2D nil )
(- const-decl "Vector" vectors_2D nil )
(* const-decl "Vector" vectors_2D nil ))
nil )
(cauchy_schwarz-2 nil 3254233962
("" (skosimp*)
(("" (case "sqv(v!1) = 0" )
(("1" (rewrite "sqv_eq_0" ) (("1" (grind) nil )))
("2" (case "(FORALL (t:real): sqv(u!1-t*v!1) >= 0)" )
(("1" (inst -1 "(u!1*v!1)/sqv(v!1)" )
(("1" (rewrite "sqv_minus_dot" )
(("1" (name-replace udotv "u!1 * v!1" )
(("1"
(case-replace
"2 * (UDOTV / sqv(v!1)) * u!1 * v!1 = 2 * sq(UDOTV) / sqv(v!1) " )
(("1" (hide -1)
(("1"
(case-replace
"sq(UDOTV / sqv(v!1)) * sqv(v!1) = sq(UDOTV) / sqv(v!1) " )
(("1" (hide -1)
(("1" (assert )
(("1"
(case-replace
"sqv(u!1) + sq(UDOTV) / sqv(v!1) - 2 * sq(UDOTV) / sqv(v!1) = sqv(u!1) - sq(UDOTV) / sqv(v!1)" )
(("1" (hide -1)
(("1" (assert )
(("1"
(mult-by -1 "sqv(v!1)" )
(("1" (assert ) nil )))))))
("2" (hide -2 2)
(("2" (lemma "sqv_eq_0" )
(("2"
(inst?)
(("2" (assert ) nil )))))))))))))
("2" (rewrite "sq_div" )
(("2" (expand "sq" 1) (("2" (assert ) nil )))))
("3" (assert ) nil )))))
("2" (assert )
(("2" (hide -1 3)
(("2" (reveal -2)
(("2"
(case-replace
"2 * (UDOTV / sqv(v!1)) * u!1 * v!1 = 2 * (UDOTV / sqv(v!1)) * (u!1 * v!1)" )
(("1" (hide -1)
(("1" (replace -1)
(("1" (hide -1)
(("1"
(expand "sq" )
(("1" (assert ) nil )))))))))
("2" (hide -1 2 3)
(("2" (grind) nil )))))))))))
("3" (assert ) nil )))))))
("2" (assert ) nil )))
("2" (skosimp*) (("2" (assert ) nil ))))))))
nil )
nil nil )
(cauchy_schwarz-1 nil 3254160320
("" (skosimp*)
(("" (case "sqv(v!1) = 0" )
(("1" (rewrite "sqv_eq_0" ) (("1" (grind) nil nil )) nil )
("2" (case "(FORALL (t:real): sqv(u!1-t*v!1) >= 0)" )
(("1" (inst -1 "(u!1*v!1)/sqv(v!1)" )
(("1" (rewrite "dot_sqv_minus" )
(("1" (name-replace udotv "u!1 * v!1" )
(("1"
(case-replace
"2 * (UDOTV / sqv(v!1)) * u!1 * v!1 = 2 * sq(UDOTV) / sqv(v!1) " )
(("1" (hide -1)
(("1"
(case-replace
"sq(UDOTV / sqv(v!1)) * sqv(v!1) = sq(UDOTV) / sqv(v!1) " )
(("1" (hide -1)
(("1" (assert )
(("1"
(case-replace
"sqv(u!1) + sq(UDOTV) / sqv(v!1) - 2 * sq(UDOTV) / sqv(v!1) = sqv(u!1) - sq(UDOTV) / sqv(v!1)" )
(("1" (hide -1)
(("1" (assert )
(("1"
(mult-by -1 "sqv(v!1)" )
(("1" (assert ) nil nil ))
nil ))
nil ))
nil )
("2" (hide -2 2)
(("2" (lemma "sqv_eq_0" )
(("2"
(inst?)
(("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (rewrite "sq_div" )
(("2" (expand "sq" 1) (("2" (assert ) nil nil ))
nil ))
nil )
("3" (assert ) nil nil ))
nil ))
nil )
("2" (assert )
(("2" (hide -1 3)
(("2" (reveal -2)
(("2"
(case-replace
"2 * (UDOTV / sqv(v!1)) * u!1 * v!1 = 2 * (UDOTV / sqv(v!1)) * (u!1 * v!1)" )
(("1" (hide -1)
(("1" (replace -1)
(("1" (hide -1)
(("1"
(expand "sq" )
(("1" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide -1 2 3) (("2" (grind) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("3" (assert ) nil nil ))
nil ))
nil ))
nil )
("2" (assert ) nil nil ))
nil )
("2" (skosimp*) (("2" (assert ) nil nil )) nil ))
nil ))
nil ))
nil )
nil nil ))
(dot_norm 0
(dot_norm-1 nil 3254160320
("" (skosimp*)
(("" (lemma "cauchy_schwarz" )
(("" (inst?)
(("" (lemma "sqrt_le" )
(("" (inst?)
(("" (assert )
(("" (hide -2)
(("" (lemma "sqrt_sq_abs" )
(("" (inst?)
(("" (assert )
(("" (replace -1)
(("" (hide -1)
(("" (rewrite "sqrt_times" )
(("" (expand "norm" )
((""
(expand "abs" )
((""
(lift-if)
(("" (ground) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((cauchy_schwarz formula-decl nil vectors_2D nil )
(sqrt_le formula-decl nil sqrt "reals/" )
(minus_real_is_real application-judgement "real" reals nil )
(real_times_real_is_real application-judgement "real" reals nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(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 )
(sqrt_sq_abs formula-decl nil sqrt "reals/" )
(norm const-decl "nnreal" vectors_2D nil )
(abs const-decl "{n: nonneg_real | n >= m AND n >= -m}" real_defs
nil )
(sqrt_times formula-decl nil sqrt "reals/" )
(sqv const-decl "nnreal" vectors_2D nil )
(nnreal type-eq-decl nil real_types nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(* const-decl "real" vectors_2D nil )
(sq const-decl "nonneg_real" sq "reals/" )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(>= const-decl "bool" reals nil )
(bool nonempty-type-eq-decl nil booleans 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 )
(nnreal_times_nnreal_is_nnreal application-judgement "nnreal"
real_types nil )
(Vector type-eq-decl nil vectors_2D nil )
(real nonempty-type-from-decl nil reals nil ))
nil ))
(schwarz 0
(schwarz-1 nil 3445088618
("" (skeep)
(("" (lemma "dot_norm" )
(("" (inst?)
(("" (expand "abs" )
(("" (lift-if) (("" (ground) nil nil )) nil )) nil ))
nil ))
nil ))
nil )
((dot_norm formula-decl nil vectors_2D nil )
(abs const-decl "{n: nonneg_real | n >= m AND n >= -m}" real_defs
nil )
(real_times_real_is_real application-judgement "real" reals nil )
(nnreal_times_nnreal_is_nnreal application-judgement "nnreal"
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 )
(Vector type-eq-decl nil vectors_2D nil )
(real nonempty-type-from-decl nil reals nil )
(minus_real_is_real application-judgement "real" reals nil ))
shostak))
(schwarz_converse 0
(schwarz_converse-1 nil 3529243890
(""
(case "FORALL (nzv: Nz_vector, u: Vector): norm(u) = 1 AND norm(nzv) = 1 AND
norm(u) * norm(nzv) = abs(u * nzv) IMPLIES
(EXISTS (cr: real): cr * nzv = u)")
(("1" (skeep)
(("1" (case "u = zero" )
(("1" (inst + "0" )
(("1" (replace -1)
(("1" (assert )
(("1" (hide -)
(("1" (expand "zero" )
(("1" (expand "*" ) (("1" (propax) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (case "norm(u)>0" )
(("1" (inst - "1/norm(nzv)*nzv" "1/norm(u)*u" )
(("1" (assert )
(("1" (split -)
(("1" (skeep -1)
(("1" (inst + "norm(u)*cr/norm(nzv)" )
(("1" (hide -3)
(("1"
(case "norm(u)*(cr * (1 / norm(nzv) * nzv)) = norm(u)*(1/norm(u)*u)" )
(("1" (assert )
(("1" (case "norm(u)*(1/norm(u)*u) = u" )
(("1" (assert )
(("1"
(case
"norm(u) * (cr * (1 / norm(nzv) * nzv)) = norm(u) * cr / norm(nzv) * nzv" )
(("1" (assert ) nil nil )
("2"
(hide-all-but 1)
(("2"
(grind :exclude "norm" )
nil
nil ))
nil ))
nil ))
nil )
("2" (hide-all-but 1)
(("2"
(decompose-equality +)
(("1" (grind) nil nil )
("2" (grind) nil nil ))
nil ))
nil ))
nil ))
nil )
("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil )
("2" (rewrite "norm_scal" )
(("2" (rewrite "abs_div" )
(("2" (expand "abs" ) (("2" (assert ) nil nil )) nil ))
nil ))
nil )
("3" (rewrite "norm_scal" )
(("3" (rewrite "abs_div" )
(("3" (expand "abs" ) (("3" (assert ) nil nil )) nil ))
nil ))
nil )
("4" (rewrite "norm_scal" )
(("4" (rewrite "norm_scal" )
(("4" (rewrite "abs_div" )
(("4" (rewrite "abs_div" )
(("4" (assert )
(("4"
(case "1 / norm(u) * u * (1 / norm(nzv) * nzv) = (1/norm(u))*(1/norm(nzv))*(u*nzv)" )
(("1" (replace -1)
(("1"
(hide -1)
(("1"
(rewrite "abs_mult" )
(("1"
(rewrite "abs_mult" )
(("1"
(rewrite "abs_div" )
(("1"
(expand "abs" + 1)
(("1"
(expand "abs" + 1)
(("1"
(expand "abs" + 1)
(("1"
(expand "abs" + 1)
(("1"
(expand "abs" + 2)
(("1"
(expand "abs" + 2)
(("1"
(expand "abs" + 2)
(("1"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide-all-but 1)
(("2" (grind) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (lemma "norm_eq_0" )
(("2" (inst?) (("2" (assert ) nil nil )) nil )) nil ))
nil )
("2" (lemma "norm_eq_0" )
(("2" (inst?) (("2" (assert ) nil nil )) nil )) nil ))
nil ))
nil ))
nil )
("2" (hide 2)
(("2" (skeep)
(("2" (name "nzvp" "(# x:=nzv`y,y:=-nzv`x #)" )
(("2" (case "nzv*nzvp = 0 AND norm(nzvp) = 1" )
(("1" (flatten)
(("1" (case "u = (u*nzv)*nzv + (u*nzvp)*nzvp" )
(("1" (case "sqv(u) = sq(u*nzv) + sq(u*nzvp)" )
(("1" (case "sq(u*nzv) = sqv(u)*sqv(nzv)" )
(("1" (replace -1)
(("1" (case "sqv(u) = 1 AND sqv(nzv) = 1" )
(("1" (flatten)
(("1" (replace -1)
(("1" (replace -2)
(("1"
(assert )
(("1"
(lemma "sq_eq_0" )
(("1"
(inst - "u*nzvp" )
(("1"
(assert )
(("1"
(replace -1)
(("1"
(assert )
(("1"
(replace -6 +)
(("1"
(inst + "u*nzv" )
(("1"
(hide -)
(("1" (grind) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (split +)
(("1" (rewrite "sqrt_eq" + :dir rl)
(("1" (rewrite "sqrt_sqv_norm" ) nil nil ))
nil )
("2" (rewrite "sqrt_eq" + :dir rl)
(("2" (rewrite "sqrt_sqv_norm" ) nil nil ))
nil ))
nil ))
nil ))
nil )
("2" (rewrite "sqrt_eq" 1 :dir rl)
(("2" (rewrite "sqrt_times" )
(("2" (rewrite "sqrt_sqv_norm" )
(("2" (rewrite "sqrt_sqv_norm" )
(("2" (rewrite "sqrt_sq_abs" )
(("2" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (name "aac" "sqv(u)" )
(("2" (replace -1)
(("2" (replace -2 -1)
(("2" (replace -1 :dir rl)
(("2" (hide -1)
(("2"
(case "sqv(nzvp) = 1 AND sqv(nzv) = 1" )
(("1"
(flatten)
(("1"
(mult-by -1 "sq(u*nzvp)" )
(("1"
(mult-by -2 "sq(u*nzv)" )
(("1"
(mult-by -4 "(u*nzv)*(u*nzvp)" )
(("1"
(hide-all-but (-1 -2 -3 1))
(("1" (grind) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(split +)
(("1"
(rewrite "sqrt_eq" 1 :dir rl)
(("1"
(rewrite "sqrt_sqv_norm" )
nil
nil ))
nil )
("2"
(rewrite "sqrt_eq" 1 :dir rl)
(("2"
(rewrite "sqrt_sqv_norm" )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(case "NOT FORALL (e1, e2, w: Vect2):
e1 /= zero AND e2 /= zero AND e1*e2=0 IMPLIES
w = ((w * e1) / sqv(e1)) * e1 + ((w * e2) / sqv(e2)) * e2")
(("1" (hide-all-but 1)
(("1" (skosimp*)
(("1" (lemma "posreal_times_posreal_is_posreal" )
(("1" (inst - "sqv(e1!1)" "sqv(e2!1)" )
(("1"
(case "sqv(e1!1)*sqv(e2!1)*w!1 = (w!1*e1!1*sqv(e2!1))*e1!1 + (w!1*e2!1*sqv(e1!1))*e2!1" )
(("1" (decompose-equality 3)
(("1"
(mult-by 1 "sqv(e1!1)*sqv(e2!1)" )
(("1" (grind :exclude "sqv" ) nil nil ))
nil )
("2"
(mult-by 1 "sqv(e1!1)*sqv(e2!1)" )
(("2" (grind :exclude "sqv" ) nil nil ))
nil ))
nil )
("2" (hide 4) (("2" (grind) nil nil ))
nil ))
nil )
("2" (hide 4)
(("2" (lemma "sqv_eq_0" )
(("2"
(inst?)
(("2" (assert ) nil nil ))
nil ))
nil ))
nil )
("3" (lemma "sqv_eq_0" )
(("3" (inst?) (("3" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (inst - "nzv" "nzvp" "u" )
(("2" (assert )
(("2" (split -)
(("1" (case "sqv(nzv) = 1 AND sqv(nzvp) =1 " )
(("1" (flatten)
(("1" (replaces -1)
(("1"
(replaces -1)
(("1" (assert ) nil nil ))
nil ))
nil ))
nil )
("2" (split +)
(("1" (rewrite "sqrt_eq" 1 :dir rl)
(("1" (rewrite "sqrt_sqv_norm" ) nil nil ))
nil )
("2" (rewrite "sqrt_eq" 1 :dir rl)
(("2" (rewrite "sqrt_sqv_norm" ) nil nil ))
nil ))
nil ))
nil )
("2" (flatten)
(("2" (replace -1)
(("2" (assert )
(("2"
(hide-all-but -3)
(("2"
(expand "zero" )
(("2" (grind) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("3" (hide-all-but 1)
(("3" (skeep)
(("3" (lemma "sqv_eq_0" )
(("3" (inst?) (("3" (assert ) nil nil )) nil ))
nil ))
nil ))
nil )
("4" (hide-all-but 1)
(("4" (skeep)
(("4" (lemma "sqv_eq_0" )
(("4" (inst?) (("4" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (split +)
(("1" (hide-all-but 1)
(("1" (expand "nzvp" ) (("1" (grind) nil nil )) nil ))
nil )
("2" (hide-all-but (-3 1))
(("2" (expand "nzvp" ) (("2" (grind) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((minus_real_is_real application-judgement "real" reals nil )
(nzvp skolem-const-decl "[# x: real, y: real #]" vectors_2D nil )
(NOT const-decl "[bool -> bool]" booleans nil )
(Vect2 type-eq-decl nil vectors_2D_def nil )
(e1!1 skolem-const-decl "Vect2" vectors_2D nil )
(e2!1 skolem-const-decl "Vect2" vectors_2D nil )
(posreal nonempty-type-eq-decl nil real_types nil )
(both_sides_times1 formula-decl nil real_props nil )
(sqv_eq_0 formula-decl nil vectors_2D nil )
(posreal_times_posreal_is_posreal judgement-tcc nil real_types nil )
(sqrt_0 formula-decl nil sqrt "reals/" )
(nnreal_plus_nnreal_is_nnreal application-judgement "nnreal"
real_types nil )
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil )
(sq const-decl "nonneg_real" sq "reals/" )
(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 )
(sqrt_sq_abs formula-decl nil sqrt "reals/" )
(sqrt_times formula-decl nil sqrt "reals/" )
(sqrt_sqv_norm formula-decl nil vectors_2D nil )
(sqrt_1 formula-decl nil sqrt "reals/" )
(sqrt_eq formula-decl nil sqrt "reals/" )
(sq_eq_0 formula-decl nil sq "reals/" )
(sq_0 formula-decl nil sq "reals/" )
(posreal_plus_nnreal_is_posreal application-judgement "posreal"
real_types nil )
(both_sides_times1_imp formula-decl nil extra_real_props nil )
(+ const-decl "Vector" vectors_2D nil )
(> const-decl "bool" reals nil )
(norm_eq_0 formula-decl nil vectors_2D nil )
(real_gt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(sqrt_pos application-judgement "posreal" sqrt "reals/" )
(nz_sqv_gt_0 application-judgement "posreal" vectors_2D nil )
(abs_mult formula-decl nil real_props nil )
(nzreal_times_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(posreal_times_posreal_is_posreal application-judgement "posreal"
real_types nil )
(norm_scal formula-decl nil vectors_2D nil )
(nonzero_abs_is_pos application-judgement "{y: posreal | y >= x}"
real_defs nil )
(nzint_abs_is_pos application-judgement "{j: posint | j >= i}"
real_defs nil )
(int_abs_is_nonneg application-judgement "{j: nonneg_int | j >= i}"
real_defs nil )
(nzrat_abs_is_pos application-judgement "{r: posrat | r >= q}"
real_defs nil )
(abs_div 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 )
(sqv const-decl "nnreal" vectors_2D nil )
(real_plus_real_is_real application-judgement "real" reals nil )
(real_div_nzreal_is_real application-judgement "real" reals nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(u skolem-const-decl "Vector" vectors_2D nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
real_types nil )
(nz_nzv application-judgement "Nz_vector" vectors_2D nil )
(nzreal_div_nzreal_is_nzreal application-judgement "nzreal"
real_types nil )
(nz_norm_gt_0 application-judgement "posreal" vectors_2D nil )
(nnreal_times_nnreal_is_nnreal application-judgement "nnreal"
real_types nil )
(real nonempty-type-from-decl nil reals nil )
(Vector type-eq-decl nil vectors_2D nil )
(boolean nonempty-type-decl nil booleans nil )
(/= const-decl "boolean" notequal nil )
(zero const-decl "Vector" vectors_2D nil )
(Nz_vector type-eq-decl nil vectors_2D nil )
(bool nonempty-type-eq-decl nil booleans nil )
(IMPLIES const-decl "[bool, bool -> bool]" booleans nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(number nonempty-type-decl nil numbers nil )
(= const-decl "[T, T -> boolean]" equalities 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 )
(>= const-decl "bool" reals nil )
(nnreal type-eq-decl nil real_types nil )
(norm const-decl "nnreal" vectors_2D nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(abs const-decl "{n: nonneg_real | n >= m AND n >= -m}" real_defs
nil )
(* const-decl "real" vectors_2D nil )
(* const-decl "Vector" vectors_2D nil ))
shostak))
(schwarz_cor 0
(schwarz_cor-2 nil 3445157327
("" (skeep)
(("" (lemma "sq_le" )
(("" (inst?)
(("" (assert )
(("" (hide 2)
(("" (rewrite "sqv_add" )
(("" (rewrite "sq_plus" )
(("" (move-terms 1 r (1 2))
(("" (case "u*v <= sqrt(sqv(u)) * sqrt(sqv(v))" )
(("1" (assert )
(("1" (rewrite "dot_scal_left" )
(("1" (assert ) nil nil )) nil ))
nil )
("2" (hide 2)
(("2" (lemma "schwarz" )
(("2" (inst?)
(("2" (expand "norm" )
(("2" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((sq_le formula-decl nil sq "reals/" )
(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 )
(sq_sqrt formula-decl nil sqrt "reals/" )
(sqv_add formula-decl nil vectors_2D nil )
(real_plus_real_is_real application-judgement "real" reals nil )
(- const-decl "[numfield, numfield -> numfield]" number_fields nil )
(* const-decl "Vector" vectors_2D nil )
(* const-decl "real" vectors_2D nil )
(<= const-decl "bool" reals nil )
(IFF const-decl "[bool, bool -> bool]" booleans nil )
(real_minus_real_is_real application-judgement "real" reals nil )
(norm const-decl "nnreal" vectors_2D nil )
(schwarz formula-decl nil vectors_2D nil )
(real_times_real_is_real application-judgement "real" reals nil )
(dot_scal_left formula-decl nil vectors_2D nil )
(nnreal_times_nnreal_is_nnreal application-judgement "nnreal"
real_types nil )
(sq_plus formula-decl nil sq "reals/" )
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil )
(+ const-decl "Vector" vectors_2D nil )
(sqv const-decl "nnreal" vectors_2D nil )
(Vector type-eq-decl nil vectors_2D nil )
(sqrt const-decl "{nnz: nnreal | nnz * nnz = nnx}" sqrt "reals/" )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil 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 )
(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 )
(nnreal_plus_nnreal_is_nnreal application-judgement "nnreal"
real_types nil ))
nil )
(schwarz_cor-1 nil 3445156310
("" (skeep)
(("" (auto-rewrite "dot_zero_left" )
(("" (auto-rewrite "dot_zero_right" )
(("" (auto-rewrite "scal_zero" )
(("" (case-replace "sqv(u + v) = u*u + 2*u*v + v*v" )
(("1" (hide -1)
(("1"
(case "u * u + 2 * u * v + v * v <= u * u + 2 * norm(u) * norm(v) + v * v" )
(("1" (case-replace "u = zero" )
(("1" (assert ) nil nil )
("2" (case-replace "v = zero" )
(("1" (assert ) nil nil )
("2" (lemma "sqv_eq_0" )
(("2" (inst?)
(("2" (assert )
(("2" (lemma "sqv_eq_0" )
(("2" (inst - "u" )
(("2"
(assert )
(("2"
(case-replace
"u * u + 2 * norm(u) * norm(v) + v * v = sq(sqrt(u * u) + sqrt(v * v))" )
(("1"
(hide -1)
(("1"
(lemma "sqrt_le" )
(("1"
(inst?)
(("1"
(rewrite "sqrt_sq" )
(("1" (assert ) nil nil ))
nil )
("2"
(assert )
(("2"
(rewrite "sqv_rew" )
(("2"
(lemma "sqv_eq_0" )
(("2" (assert ) nil nil ))
nil ))
nil ))
nil )
("3"
(rewrite "sqv_rew" )
(("3" (assert ) nil nil ))
nil )
("4"
(case-replace
"2 * u * v + u*u + v * v = sqv(u+v)" )
(("1" (assert ) nil nil )
("2"
(hide-all-but 1)
(("2" (grind) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(assert )
(("2"
(hide-all-but 1)
(("2"
(rewrite "sq_plus" )
(("1"
(rewrite "sq_sqrt" )
(("1"
(rewrite "sq_sqrt" )
(("1"
(expand "norm" )
(("1"
(assert )
(("1"
(expand "sqv" )
(("1"
(propax)
nil
nil ))
nil ))
nil ))
nil )
("2"
(case-replace "v = zero" )
(("1" (assert ) nil nil )
("2"
(assert )
(("2"
(rewrite "sqv_rew" )
(("2"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(rewrite "sqv_rew" )
(("2" (assert ) nil nil ))
nil ))
nil )
("2"
(rewrite "sqv_rew" )
(("2" (assert ) nil nil ))
nil )
("3"
(rewrite "sqv_rew" )
(("3" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil )
("3"
(rewrite "sqv_rew" )
(("3" (assert ) nil nil ))
nil )
("4"
(rewrite "sqv_rew" )
(("4" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide 2)
(("2" (assert )
(("2" (lemma "dot_norm" )
(("2" (inst - "u" "v" )
(("2" (flatten)
(("2" (assert )
(("2" (mult-by -2 "2" )
(("2"
(assert )
(("2"
(case "2 * (u * v) = 2 * u * v" )
(("1" (assert ) nil nil )
("2"
(hide-all-but 1)
(("2" (grind) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide 2) (("2" (grind) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((sq_plus formula-decl nil sq "reals/" )
(sq_sqrt formula-decl nil sqrt "reals/" )
(sqrt_sq formula-decl nil sqrt "reals/" )
(sqrt_le formula-decl nil sqrt "reals/" )
(sq const-decl "nonneg_real" sq "reals/" )
(sqrt const-decl "{nnz: nnreal | nnz * nnz = nnx}" sqrt "reals/" )
(sqrt_0 formula-decl nil sqrt "reals/" ))
nil ))
(norm_triangle 0
(norm_triangle-3 nil 3445157224
("" (skeep)
(("" (rewrite "sqrt_sqv_norm" :dir rl)
(("" (rewrite "sqrt_sqv_norm" :dir rl)
(("" (rewrite "sqrt_sqv_norm" :dir rl)
(("" (rewrite "sqv_sq" )
(("" (rewrite "sqv_sq" )
(("" (rewrite "sqv_sq" )
(("" (expand "-" )
((""
(case-replace
"sq(u`x - w`x) = sq(u`x - v`x + v`x - w`x)" )
(("1" (hide -1)
(("1"
(case-replace
"sq(u`y - w`y) = sq(u`y - v`y + v`y - w`y)" )
(("1" (hide -1)
(("1" (lemma "schwarz_cor" )
(("1" (inst - "u-v" "v-w" )
(("1" (grind) nil nil )) nil ))
nil ))
nil )
("2" (hide 2) (("2" (assert ) nil nil )) nil ))
nil ))
nil )
("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((sqrt_sqv_norm formula-decl nil vectors_2D nil )
(real nonempty-type-from-decl nil reals nil )
(Vector type-eq-decl nil vectors_2D nil )
(- const-decl "Vector" vectors_2D nil )
(real_minus_real_is_real application-judgement "real" reals nil )
(number nonempty-type-decl nil numbers nil )
(boolean nonempty-type-decl nil booleans nil )
(= const-decl "[T, T -> boolean]" equalities 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 )
(bool nonempty-type-eq-decl nil booleans nil )
(>= const-decl "bool" reals nil )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(sq const-decl "nonneg_real" sq "reals/" )
(numfield nonempty-type-eq-decl nil number_fields nil )
(- const-decl "[numfield, numfield -> numfield]" number_fields nil )
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil )
(schwarz_cor formula-decl nil vectors_2D nil )
(+ const-decl "Vector" vectors_2D nil )
(* const-decl "real" vectors_2D nil )
(sqv const-decl "nnreal" vectors_2D nil )
(nnreal_plus_nnreal_is_nnreal application-judgement "nnreal"
real_types nil )
(real_times_real_is_real application-judgement "real" reals nil )
(real_plus_real_is_real application-judgement "real" reals nil )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil ))
nil )
(norm_triangle-2 nil 3445104261
("" (skeep)
(("" (rewrite "sqrt_sqv_norm" :dir rl)
(("" (rewrite "sqrt_sqv_norm" :dir rl)
(("" (rewrite "sqrt_sqv_norm" :dir rl)
(("" (rewrite "sqv_sq" )
(("" (rewrite "sqv_sq" )
(("" (rewrite "sqv_sq" )
(("" (expand "-" )
((""
(case-replace
"sq(u`x - w`x) = sq(u`x - v`x + v`x - w`x)" )
(("1" (hide -1)
(("1"
(case-replace
"sq(u`y - w`y) = sq(u`y - v`y + v`y - w`y)" )
(("1" (hide -1)
(("1" (lemma "schwarz_corollary" )
(("1" (inst - "u-v" "v-w" )
(("1" (grind) nil nil )) nil ))
nil ))
nil )
("2" (hide 2) (("2" (assert ) nil nil )) nil ))
nil ))
nil )
("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((sq const-decl "nonneg_real" sq "reals/" )) nil )
(norm_triangle-1 nil 3445104189
("" (skeep) (("" (postpone) nil nil )) nil ) nil shostak))
(norm_add_le 0
(norm_add_le-2 nil 3255192386
("" (skosimp*)
(("" (expand "norm" )
(("" (lemma "sqrt_le" )
((""
(inst -1 "sqv(u!1 + v!1)"
"sq(sqrt(sqv(u!1)) + sqrt(sqv(v!1)))" )
(("" (rewrite "sqrt_sq" )
(("" (assert )
(("" (hide 2)
(("" (rewrite "sqv_add" )
(("" (expand "sq" )
(("" (rewrite "sqrt_sqv_sq" )
(("" (rewrite "sqrt_sqv_sq" )
(("" (rewrite "sqrt_sqv_norm" )
(("" (rewrite "sqrt_sqv_norm" )
(("" (lemma "dot_norm" )
((""
(inst -1 "u!1" "v!1" )
((""
(flatten)
((""
(rewrite "dot_scal_left" )
(("" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((norm const-decl "nnreal" vectors_2D nil )
(nnreal_plus_nnreal_is_nnreal application-judgement "nnreal"
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 )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(Vector type-eq-decl nil vectors_2D nil )
(nnreal type-eq-decl nil real_types nil )
(sqv const-decl "nnreal" vectors_2D nil )
(+ const-decl "Vector" vectors_2D nil )
(sq const-decl "nonneg_real" sq "reals/" )
(numfield nonempty-type-eq-decl nil number_fields nil )
(+ const-decl "[numfield, numfield -> numfield]" number_fields 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/" )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(sqv_add formula-decl nil vectors_2D nil )
(real_plus_real_is_real application-judgement "real" reals nil )
(sqrt_sqv_sq formula-decl nil vectors_2D nil )
(sqrt_sqv_norm formula-decl nil vectors_2D nil )
(dot_norm formula-decl nil vectors_2D nil )
(real_times_real_is_real application-judgement "real" reals nil )
(minus_real_is_real application-judgement "real" reals nil )
(dot_scal_left formula-decl nil vectors_2D nil )
(nnreal_times_nnreal_is_nnreal application-judgement "nnreal"
real_types nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(sqrt_sq formula-decl nil sqrt "reals/" )
(sqrt_le formula-decl nil sqrt "reals/" ))
nil )
(norm_add_le-1 nil 3255191805
("" (skosimp*)
(("" (expand "norm" )
(("" (lemma "sqrt_le" )
((""
(inst -1 "sqv(u!1 + v!1)"
"sq(sqrt(sqv(u!1)) + sqrt(sqv(v!1)))" )
(("" (assert )
(("" (rewrite "sqv_add" )
(("" (expand "sq" )
(("" (assert )
(("" (lemma "sqrt_times" )
(("" (inst?)
(("" (hide -1)
(("" (rewrite "sqrt_sqv_norm" )
(("" (rewrite "sqrt_sqv_norm" )
(("" (lemma "dot_norm" )
((""
(inst?)
((""
(flatten)
((""
(assert )
((""
(auto-rewrite-theory
"vectors_2D" )
(("" (postpone) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
nil nil ))
(norm_sub_le 0
(norm_sub_le-1 nil 3254160320
("" (skosimp*)
(("" (expand "norm" )
(("" (lemma "sq_le" )
(("" (inst?)
(("" (assert )
(("" (hide 2)
(("" (rewrite "sq_sqrt" )
(("" (expand "sq" )
(("" (rewrite "sq_rew" )
(("" (rewrite "sq_rew" )
(("" (rewrite "sq_sqrt" )
(("" (rewrite "sq_sqrt" )
(("" (rewrite "sqv_sub" )
(("" (assert )
((""
(rewrite "sqrt_sqv_norm" )
((""
(rewrite "sqrt_sqv_norm" )
((""
(assert )
((""
(lemma "dot_norm" )
((""
(inst -1 "-u!1" "v!1" )
((""
(flatten)
((""
(rewrite "norm_neg" )
((""
(rewrite "dot_neg_left" )
((""
(mult-by -2 "2" )
((""
(assert )
((""
(ground)
((""
(rewrite
"dot_scal_left" )
((""
(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 )
((norm const-decl "nnreal" vectors_2D nil )
(nnreal_plus_nnreal_is_nnreal application-judgement "nnreal"
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 )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(nnreal type-eq-decl nil real_types nil )
(= const-decl "[T, T -> boolean]" equalities nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(sqrt const-decl "{nnz: nnreal | nnz * nnz = nnx}" sqrt "reals/" )
(Vector type-eq-decl nil vectors_2D nil )
(sqv const-decl "nnreal" vectors_2D nil )
(- const-decl "Vector" vectors_2D nil )
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil )
(sq_rew formula-decl nil sq "reals/" )
(sqv_sub formula-decl nil vectors_2D nil )
(real_minus_real_is_real application-judgement "real" reals nil )
(sqrt_sqv_norm formula-decl nil vectors_2D nil )
(- const-decl "Vector" vectors_2D nil )
(norm_neg formula-decl nil vectors_2D nil )
(minus_real_is_real application-judgement "real" reals nil )
(both_sides_times_pos_le1_imp formula-decl nil extra_real_props
nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(* const-decl "real" vectors_2D nil )
(dot_scal_left formula-decl nil vectors_2D nil )
(real_times_real_is_real application-judgement "real" reals nil )
(dot_neg_left formula-decl nil vectors_2D nil )
(dot_norm formula-decl nil vectors_2D nil )
(sq const-decl "nonneg_real" sq "reals/" )
(nnreal_times_nnreal_is_nnreal application-judgement "nnreal"
real_types nil )
(sq_sqrt formula-decl nil sqrt "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 )
(sq_le formula-decl nil sq "reals/" ))
nil ))
(norm_sub_ge 0
(norm_sub_ge-2 nil 3255265184
("" (skosimp*)
(("" (lemma "norm_add_le" )
(("" (inst -1 "u!1-v!1" "v!1" )
(("" (assert )
(("" (rewrite "add_cancel2" ) (("" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil )
((norm_add_le formula-decl nil vectors_2D nil )
(real_minus_real_is_real application-judgement "real" reals 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 )
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(add_cancel2 formula-decl nil vectors_2D nil )
(- const-decl "Vector" vectors_2D nil )
(Vector type-eq-decl nil vectors_2D nil )
(real nonempty-type-from-decl nil reals nil ))
nil )
(norm_sub_ge-1 nil 3255193133
("" (skosimp*)
(("" (lemma "norm_add_le" )
(("" (inst -1 "u!1-v!1" "v!1" )
(("" (assert )
(("" (auto-rewrite-theory "vectors_2D" )
(("" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil )
nil nil ))
(norm_ge_comps 0
(norm_ge_comps-1 nil 3256553970
("" (skosimp*)
(("" (prop)
(("1" (expand "norm" )
(("1" (expand "sqv" )
(("1" (expand "*" )
(("1"
(case-replace
"sqrt(u!1`x * u!1`x + u!1`y * u!1`y) >= sqrt(u!1`x * u!1`x)" )
(("1" (rewrite "sq_rew" )
(("1" (rewrite "sqrt_sq_abs" ) nil nil )) nil )
("2" (hide 2) (("2" (rewrite "sqrt_ge" ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil )
("2" (expand "norm" )
(("2" (expand "sqv" )
(("2" (expand "*" )
(("2"
(case-replace
"sqrt(u!1`x * u!1`x + u!1`y * u!1`y) >= sqrt(u!1`y * u!1`y)" )
(("1" (rewrite "sq_rew" )
(("1" (rewrite "sq_rew" )
(("1" (rewrite "sqrt_sq_abs" ) nil nil )) nil ))
nil )
("2" (hide 2) (("2" (rewrite "sqrt_ge" ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((sqv const-decl "nnreal" vectors_2D nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(real_plus_real_is_real application-judgement "real" reals 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 )
(nnreal type-eq-decl nil real_types nil )
(= const-decl "[T, T -> boolean]" equalities nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(sqrt const-decl "{nnz: nnreal | nnz * nnz = nnx}" sqrt "reals/" )
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil )
(Vector type-eq-decl nil vectors_2D nil )
(sqrt_sq_abs formula-decl nil sqrt "reals/" )
(sq_rew formula-decl nil sq "reals/" )
(sqrt_ge formula-decl nil sqrt "reals/" )
(* const-decl "real" vectors_2D nil )
(real_times_real_is_real application-judgement "real" reals nil )
(norm const-decl "nnreal" vectors_2D nil ))
shostak))
(sq_norm_dist 0
(sq_norm_dist-1 nil 3256550488
("" (skosimp*)
(("" (expand "norm" )
(("" (rewrite "sq_sqrt" )
(("" (rewrite "sq_sqrt" )
(("" (rewrite "sq_sqrt" ) (("" (grind) nil nil )) nil )) nil ))
nil ))
nil ))
nil )
((nnreal_plus_nnreal_is_nnreal application-judgement "nnreal"
real_types nil )
(norm const-decl "nnreal" vectors_2D nil )
(minus_odd_is_odd application-judgement "odd_int" integers nil )
(* const-decl "real" vectors_2D nil )
(* const-decl "Vector" vectors_2D nil )
(real_times_real_is_real application-judgement "real" reals nil )
(real_plus_real_is_real application-judgement "real" reals nil )
(real_minus_real_is_real application-judgement "real" reals nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(Vect2 type-eq-decl nil vectors_2D_def nil )
(- const-decl "Vector" vectors_2D nil )
(sqv const-decl "nnreal" vectors_2D nil )
(nnreal type-eq-decl nil real_types nil )
(>= const-decl "bool" reals nil )
(bool nonempty-type-eq-decl nil booleans nil )
(Vector type-eq-decl nil vectors_2D 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 )
(sq_sqrt formula-decl nil sqrt "reals/" ))
nil ))
(parallel_refl 0
(parallel_refl-1 nil 3430578246
("" (skeep)
(("" (expand "parallel?" )
(("" (inst 1 "1" ) (("" (rewrite "scal_1" ) nil nil )) nil )) nil ))
nil )
((parallel? const-decl "bool" vectors_2D nil )
(Vector type-eq-decl nil vectors_2D nil )
(scal_1 formula-decl nil vectors_2D nil )
(nzreal nonempty-type-eq-decl nil reals nil )
(/= const-decl "boolean" notequal nil )
(real nonempty-type-from-decl nil reals nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(boolean nonempty-type-decl nil booleans nil )
(number nonempty-type-decl nil numbers nil ))
shostak))
(parallel_symm 0
(parallel_symm-1 nil 3430578570
("" (skeep)
(("" (expand "parallel?" )
(("" (split)
(("1" (flatten)
(("1" (skeep -1)
(("1" (inst 1 "1/nzk" )
(("1" (lemma "scal_cross" )
(("1" (inst?) (("1" (assert ) nil nil )) nil )) nil ))
nil ))
nil ))
nil )
("2" (flatten)
(("2" (skeep -1)
(("2" (inst 1 "1/nzk" )
(("2" (lemma "scal_cross" )
(("2" (inst? -1) (("2" (assert ) nil nil )) nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((parallel? const-decl "bool" vectors_2D nil )
(nzreal_div_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 )
(/= const-decl "boolean" notequal nil )
(nzreal nonempty-type-eq-decl nil reals nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(nznum nonempty-type-eq-decl nil number_fields nil )
(/ const-decl "[numfield, nznum -> numfield]" number_fields nil )
(Vector type-eq-decl nil vectors_2D nil )
(scal_cross formula-decl nil vectors_2D nil ))
shostak))
(parallel_trans 0
(parallel_trans-1 nil 3430579137
("" (skeep)
(("" (expand "parallel?" )
(("" (skolem -1 "k1" )
(("" (skolem -2 "k2" )
(("" (replaces -1)
(("" (replaces -2)
(("" (replaces -1)
(("" (inst 1 "k1*k2" )
(("" (rewrite "scal_assoc" ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((parallel? const-decl "bool" vectors_2D nil )
(Vector type-eq-decl nil vectors_2D nil )
(scal_assoc formula-decl nil vectors_2D nil )
(* const-decl "[numfield, numfield -> numfield]" number_fields nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(nzreal nonempty-type-eq-decl nil reals nil )
(/= const-decl "boolean" notequal nil )
(real nonempty-type-from-decl nil reals nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(boolean nonempty-type-decl nil booleans nil )
(number nonempty-type-decl nil numbers nil )
(nzreal_times_nzreal_is_nzreal application-judgement "nzreal"
real_types nil ))
shostak))
(parallel_zero 0
(parallel_zero-1 nil 3430579523
("" (skeep)
(("" (expand "parallel?" )
(("" (split)
(("1" (flatten)
(("1" (skeep -1) (("1" (rewrite "scal_zero" ) nil nil )) nil ))
nil )
("2" (flatten)
(("2" (replaces -1) (("2" (grind) nil nil )) nil )) nil ))
nil ))
nil ))
nil )
((parallel? const-decl "bool" vectors_2D nil )
(* const-decl "Vector" vectors_2D nil )
(zero const-decl "Vector" vectors_2D nil )
(scal_zero formula-decl nil vectors_2D 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 )
(/= const-decl "boolean" notequal nil )
(nzreal nonempty-type-eq-decl nil reals nil ))
shostak))
(dir_parallel 0
(dir_parallel-1 nil 3430577698
("" (skeep)
(("" (expand * "parallel?" "dir_parallel?" )
(("" (skeep -1) (("" (inst 1 "pk" ) nil nil )) nil )) nil ))
nil )
((dir_parallel? const-decl "bool" vectors_2D nil )
(parallel? const-decl "bool" vectors_2D 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 )
(/= const-decl "boolean" notequal nil )
(nzreal nonempty-type-eq-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 ))
shostak))
(pythagorean 0
(pythagorean-1 nil 3447773168
("" (skeep)
(("" (expand "orthogonal?" )
(("" (rewrite "sqv_add" )
(("" (assert )
(("" (rewrite "dot_scal_left" ) (("" (assert ) nil nil )) nil ))
nil ))
nil ))
nil ))
nil )
((orthogonal? const-decl "bool" vectors_2D nil )
(real_times_real_is_real application-judgement "real" 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 )
(dot_scal_left formula-decl nil vectors_2D nil )
(real_plus_real_is_real application-judgement "real" reals nil )
(nnreal_plus_nnreal_is_nnreal application-judgement "nnreal"
real_types nil )
(Vector type-eq-decl nil vectors_2D nil )
(real nonempty-type-from-decl nil reals nil )
(sqv_add formula-decl nil vectors_2D nil ))
shostak))
(norm_add_ge_left 0
(norm_add_ge_left-1 nil 3447773735
("" (skeep)
(("" (both-sides-f 1 "sq" )
(("1" (rewrite "sq_norm" )
(("1" (rewrite "sq_norm" )
(("1" (rewrite "pythagorean" ) (("1" (assert ) nil nil )) nil ))
nil ))
nil )
("2" (rewrite "sq_ge" ) nil nil ))
nil ))
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 )
(sq const-decl "nonneg_real" sq "reals/" )
(Vector type-eq-decl nil vectors_2D nil )
(nnreal type-eq-decl nil real_types nil )
(norm const-decl "nnreal" vectors_2D nil )
(+ const-decl "Vector" vectors_2D nil )
(TRUE const-decl "bool" booleans nil )
(id const-decl "(bijective?[T, T])" identity nil )
(bijective? const-decl "bool" functions 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 )
(nnreal_plus_nnreal_is_nnreal application-judgement "nnreal"
real_types nil )
(pythagorean formula-decl nil vectors_2D nil )
(sq_norm formula-decl nil vectors_2D nil )
(sq_ge formula-decl nil sq "reals/" ))
shostak))
(norm_add_ge_right 0
(norm_add_ge_right-1 nil 3447773741
("" (skeep)
(("" (rewrite "add_comm" )
(("" (rewrite "norm_add_ge_left" )
(("" (expand "orthogonal?" ) (("" (rewrite "dot_comm" ) nil nil ))
nil ))
nil ))
nil ))
nil )
((add_comm formula-decl nil vectors_2D nil )
(real nonempty-type-from-decl nil reals nil )
(Vector type-eq-decl nil vectors_2D nil )
(orthogonal? const-decl "bool" vectors_2D nil )
(dot_comm formula-decl nil vectors_2D nil )
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil )
(norm_add_ge_left formula-decl nil vectors_2D nil ))
shostak))
(bolzano_weierstrass 0
(bolzano_weierstrass-2 nil 3601218451
(""
(case "FORALL (M: posnat, RS: [nat -> real]):
(FORALL (i: nat): abs(RS(i)) <= M) IMPLIES
(EXISTS (ns: [nat -> nat], acpr: real):
(FORALL (i:nat): ns(i)>i) AND
(FORALL (epsil: posreal):
EXISTS (K: posnat):
FORALL (j: nat):
j >= K IMPLIES abs(RS(ns(j)) - acpr) < epsil))")
(("1" (skeep)
(("1" (inst-cp - "M" "LAMBDA (i:nat): VS(i)`x" )
(("1" (split -)
(("1" (skeep)
(("1" (inst -3 "M" "LAMBDA (i:nat): VS(ns(i))`y" )
(("1" (split -)
(("1" (skolem - ("nnss" "acpry" ))
(("1" (name "acp" "(# x:=acpr,y:=acpry #)" )
(("1"
(inst + "ns o
nnss" " acp")
(("1" (expand "o" +)
(("1" (invoke (case "NOT %1" ) (! 1 1))
(("1" (hide 2)
(("1" (skeep)
(("1"
(inst - "j" )
(("1"
(inst -4 "nnss(j)" )
(("1" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil )
("2" (replaces -1)
(("2" (flatten)
(("2"
(invoke (case "NOT %1" ) (! 1 1))
(("1"
(hide 2)
(("1"
(skeep)
(("1"
(inst -3 "epsil/2" )
(("1"
(inst -5 "epsil/2" )
(("1"
(skosimp*)
(("1"
(inst + "max(K!1,K!2)+1" )
(("1"
(skeep)
(("1"
(inst -4 "j" )
(("1"
(inst -6 "nnss(j)" )
(("1"
(assert )
(("1"
(inst - "j" )
(("1"
(assert )
(("1"
(name
"W"
"VS(ns(nnss(j)))" )
(("1"
(replace
-1)
(("1"
(assert )
(("1"
(name
"Ax"
"(# x:= W`x-acpr,y:=0 #)" )
(("1"
(name
"Ay"
"(# x:=0,y:=W`y-acpry #)" )
(("1"
(case
"NOT W-acp = Ax+Ay" )
(("1"
(hide-all-but
1)
(("1"
(expand
"Ax" )
(("1"
(expand
"Ay" )
(("1"
(expand
"-" )
(("1"
(grind)
nil
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(replaces
-1)
(("2"
(lemma
"norm_add_le" )
(("2"
(inst?)
(("2"
(case
"norm(Ax)<epsil/2 AND norm(Ay)<epsil/2" )
(("1"
(ground)
nil
nil )
("2"
(hide
2)
(("2"
(split)
(("1"
(case
"norm(Ax) = abs(W`x-acpr)" )
(("1"
(assert )
nil
nil )
("2"
(hide
2)
(("2"
(rewrite
"sq_eq"
1
:dir
rl)
(("2"
(rewrite
"sq_norm" )
(("2"
(expand
"Ax"
1)
(("2"
(hide
-)
(("2"
(grind)
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(case
"norm(Ay) = abs(W`y-acpry)" )
(("1"
(assert )
nil
nil )
("2"
(hide
2)
(("2"
(rewrite
"sq_eq"
1
:dir
rl)
(("2"
(rewrite
"sq_norm" )
(("2"
(expand
"Ay"
1)
(("2"
(hide
-)
(("2"
(grind)
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(replace -1)
(("2"
(inst - "norm(acp)-M" )
(("1"
(skosimp*)
(("1"
(inst - "K!1" )
(("1"
(assert )
(("1"
(inst -7 "ns(nnss(K!1))" )
(("1"
(name
"W"
"VS(ns(nnss(K!1)))" )
(("1"
(replace -1)
(("1"
(hide-all-but
(-2 -8 1))
(("1"
(lemma "norm_neg" )
(("1"
(inst - "W-acp" )
(("1"
(case
"-(W-acp) = acp-W" )
(("1"
(replaces -1)
(("1"
(assert )
(("1"
(replaces
-1
:dir
rl)
(("1"
(lemma
"norm_add_le" )
(("1"
(inst
-
"acp-W"
"W" )
(("1"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(hide-all-but
1)
(("2"
(grind)
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide 2)
(("2" (skosimp*)
(("2" (inst -3 "ns(i!1)" )
(("2" (name "W" "VS(ns(i!1))" )
(("2" (replace -1)
(("2" (hide (-1 -2 -3))
(("2" (rewrite "sq_le" 1 :dir rl)
(("2"
(rewrite "sq_le" -1 :dir rl)
(("2"
(rewrite "sq_norm" )
(("2"
(expand "sqv" )
(("2"
(expand "*" )
(("2"
(typepred "sq(W`y)" )
(("2" (grind) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide (-1 2))
(("2" (skosimp*)
(("2" (inst - "i!1" )
(("2" (rewrite "sq_le" 1 :dir rl)
(("2" (rewrite "sq_le" -1 :dir rl)
(("2" (rewrite "sq_norm" )
(("2" (typepred "sq(VS(i!1)`x)" )
(("2" (grind) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide 2)
(("2" (skeep)
(("2"
(case "EXISTS (acpr:real): FORALL (epsil:posreal,K:nat): EXISTS (j:nat): j>=K AND abs(RS(j)-acpr)<epsil" )
(("1" (skeep -1)
(("1"
(name "ns"
"LAMBDA (i:nat): choose({j:nat | j>i+2 AND abs(RS(j)-acpr)<1/(i+2)})" )
(("1" (inst + "ns" "acpr" )
(("1" (split)
(("1" (skeep) (("1" (assert ) nil nil )) nil )
("2" (skeep)
(("2" (lemma "archimedean" )
(("2" (inst - "epsil" )
(("2" (skeep)
(("2" (inst + "n+1" )
(("2" (skeep)
(("2"
(typepred "ns(j)" )
(("2"
(case "1/(2+j) <1/n" )
(("1" (assert ) nil nil )
("2"
(cross-mult 1)
(("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide 2)
(("2" (skeep)
(("2" (inst - "1/(2+i)" "8+i" )
(("2" (skeep)
(("2" (expand "nonempty?" )
(("2" (expand "empty?" )
(("2" (expand "member" )
(("2" (inst - "j" ) (("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide 2)
(("2"
(name "S"
"LAMBDA (x:real): EXISTS (K:nat): FORALL (i:nat): i>=K IMPLIES RS(i)>=x" )
(("2" (case "nonempty?[real](S) AND bounded_above?(S)" )
(("1" (flatten)
(("1" (name "acpr" "lub(S)" )
(("1" (typepred "acpr" )
(("1" (expand "least_upper_bound?" )
(("1" (flatten)
(("1" (inst + "acpr" )
(("1" (skeep)
(("1"
(case "S(acpr-epsil/2)" )
(("1"
(expand "upper_bound?" -2)
(("1"
(inst - "acpr + epsil/2" )
(("1" (assert ) nil nil )
("2"
(expand "S" -1)
(("2"
(skolem -1 "K1" )
(("2"
(expand "S" 1)
(("2"
(inst + "K + K1 + 1" )
(("2"
(skeep)
(("2"
(inst - "i" )
(("2"
(inst + "i" )
(("2"
(assert )
(("2"
(expand "abs" +)
(("2"
(lift-if)
(("2"
(ground)
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(hide 2)
(("2"
(expand "S" 1)
(("2"
(inst - "acpr-epsil/2" )
(("2"
(assert )
(("2"
(expand "upper_bound?" +)
(("2"
(skeep)
(("2"
(typepred "s" )
(("2"
(expand "S" -1)
(("2"
(skeep)
(("2"
(inst + "K!1" )
(("2"
(skeep)
(("2"
(inst - "i" )
(("2"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (propax) nil nil ))
nil ))
nil )
("2" (hide 2)
(("2" (split)
(("1" (expand "nonempty?" )
(("1" (expand "empty?" )
(("1" (expand "member" )
(("1" (inst - "-M-1" )
(("1" (expand "S" 1)
(("1"
(inst + "0" )
(("1"
(skeep)
(("1"
(inst - "i" )
(("1"
(expand "abs" )
(("1"
(lift-if)
(("1" (ground) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (expand "bounded_above?" )
(("2" (inst + "M+1" )
(("2" (expand "upper_bound?" )
(("2" (skeep)
(("2" (typepred "s" )
(("2"
(expand "S" )
(("2"
(skosimp*)
(("2"
(inst - "K!1" )
(("2"
(inst - "K!1" )
(("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
((nnint_plus_posint_is_posint application-judgement "posint"
integers nil )
(posrat_div_posrat_is_posrat application-judgement "posrat"
rationals nil )
(set type-eq-decl nil sets nil )
(nonempty? const-decl "bool" sets nil )
(choose const-decl "(p)" sets nil )
(archimedean formula-decl nil real_props nil )
(div_mult_pos_lt2 formula-decl nil real_props nil )
(nonzero_real nonempty-type-eq-decl nil reals nil )
(times_div2 formula-decl nil real_props nil )
(mult_divides2 application-judgement "(divides(m))" divides nil )
(div_mult_pos_lt1 formula-decl nil real_props nil )
(empty? const-decl "bool" sets nil )
(member const-decl "bool" sets nil )
(minus_nzint_is_nzint application-judgement "nzint" integers nil )
(int_minus_int_is_int application-judgement "int" integers nil )
(upper_bound? const-decl "bool" bounded_real_defs nil )
(nnint_plus_nnint_is_nnint application-judgement "nonneg_int"
integers nil )
(acpr skolem-const-decl "{x | least_upper_bound?(x, S)}" vectors_2D
nil )
(epsil skolem-const-decl "posreal" vectors_2D nil )
(S skolem-const-decl "[real -> boolean]" vectors_2D nil )
(lub const-decl "{x | least_upper_bound?(x, SA)}" bounded_real_defs
nil )
(least_upper_bound? const-decl "bool" bounded_real_defs nil )
(bounded_above? const-decl "bool" bounded_real_defs nil )
(sq_le formula-decl nil sq "reals/" )
(sq_nz_pos application-judgement "posreal" sq "reals/" )
(mult_divides1 application-judgement "(divides(n))" divides nil )
(posint_times_posint_is_posint application-judgement "posint"
integers nil )
(O const-decl "T3" function_props nil )
(NOT const-decl "[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 )
(minus_real_is_real application-judgement "real" reals nil )
(add_cancel2 formula-decl nil vectors_2D nil )
(- const-decl "Vector" vectors_2D nil )
(norm_neg formula-decl nil vectors_2D nil )
(M skolem-const-decl "posnat" vectors_2D nil )
(acp skolem-const-decl "[# x: real, y: real #]" vectors_2D nil )
(posreal_div_posreal_is_posreal application-judgement "posreal"
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 )
(sq_eq formula-decl nil sq "reals/" )
(sq_abs formula-decl nil sq "reals/" )
(* const-decl "real" vectors_2D nil )
(sqv const-decl "nnreal" vectors_2D nil )
(sq const-decl "nonneg_real" sq "reals/" )
(real_times_real_is_real application-judgement "real" reals nil )
(nz_sqv_gt_0 application-judgement "posreal" vectors_2D nil )
(sq_norm formula-decl nil vectors_2D 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 )
(norm_add_le formula-decl nil vectors_2D nil )
(Ay skolem-const-decl "[# x: naturalnumber, y: real #]" vectors_2D
nil )
(real_plus_real_is_real application-judgement "real" reals nil )
(Ax skolem-const-decl "[# x: real, y: naturalnumber #]" vectors_2D
nil )
(+ const-decl "Vector" vectors_2D nil )
(naturalnumber type-eq-decl nil naturalnumbers nil )
(posint_max application-judgement "{k: posint | i <= k AND j <= k}"
real_defs nil )
(posrat_max application-judgement "{s: posrat | s >= q AND s >= r}"
real_defs nil )
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil )
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil )
(max const-decl "{p: real | p >= m AND p >= n}" real_defs nil )
(posint_plus_nnint_is_posint application-judgement "posint"
integers nil )
(Vector type-eq-decl nil vectors_2D nil )
(nnreal type-eq-decl nil real_types nil )
(norm const-decl "nnreal" vectors_2D nil )
(- const-decl "Vector" vectors_2D nil )
(= const-decl "[T, T -> boolean]" equalities nil )
(Vect2 type-eq-decl nil vectors_2D_def nil )
(real_minus_real_is_real application-judgement "real" reals nil )
(number nonempty-type-decl nil numbers nil )
(boolean nonempty-type-decl nil booleans nil )
(number_field_pred const-decl "[number -> boolean]" number_fields
nil )
(number_field nonempty-type-from-decl nil number_fields nil )
(real_pred const-decl "[number_field -> boolean]" reals nil )
(real nonempty-type-from-decl nil reals nil )
(rational_pred const-decl "[real -> boolean]" rationals nil )
(rational nonempty-type-from-decl nil rationals nil )
(integer_pred const-decl "[rational -> boolean]" integers nil )
(int nonempty-type-eq-decl nil integers nil )
(bool nonempty-type-eq-decl nil booleans nil )
(>= const-decl "bool" reals nil )
(nonneg_int nonempty-type-eq-decl nil integers nil )
(> const-decl "bool" reals nil )
(posnat nonempty-type-eq-decl nil integers nil )
(nat nonempty-type-eq-decl nil naturalnumbers nil )
(IMPLIES const-decl "[bool, bool -> bool]" booleans nil )
(<= const-decl "bool" reals nil )
(nonneg_real nonempty-type-eq-decl nil real_types nil )
(AND const-decl "[bool, bool -> bool]" booleans nil )
(numfield nonempty-type-eq-decl nil number_fields nil )
(- const-decl "[numfield -> numfield]" number_fields nil )
(abs const-decl "{n: nonneg_real | n >= m AND n >= -m}" real_defs
nil )
(posreal nonempty-type-eq-decl nil real_types nil )
(< const-decl "bool" reals nil )
(- const-decl "[numfield, numfield -> numfield]" number_fields
nil ))
nil )
(bolzano_weierstrass-1 nil 3601213760
(""
(case "FORALL (M: posnat, RS: [nat -> real]):
(FORALL (i: nat): abs(RS(i)) <= M) IMPLIES
(EXISTS (ns: [nat -> nat], acpr: real):
(FORALL (i:nat): ns(i)>i) AND
(FORALL (epsil: posreal):
EXISTS (K: posnat):
FORALL (j: nat):
j >= K IMPLIES abs(RS(ns(j)) - acpr) < epsil))")
(("1" (skeep)
(("1" (inst-cp - "M" "LAMBDA (i:nat): VS(i)`x" )
(("1" (split -)
(("1" (skeep)
(("1" (inst -3 "M" "LAMBDA (i:nat): VS(ns(i))`y" )
(("1" (split -)
(("1" (skolem - ("nnss" "acpry" ))
(("1" (name "acp" "(# x:=acpr,y:=acpry #)" )
(("1"
(inst + "ns o
nnss" " acp")
(("1" (expand "o" +)
(("1" (invoke (case "NOT %1" ) (! 1 1))
(("1" (hide 2)
(("1" (skeep)
(("1"
(inst - "j" )
(("1"
(inst -4 "nnss(j)" )
(("1" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil )
("2" (replaces -1)
(("2" (flatten)
(("2"
(invoke (case "NOT %1" ) (! 1 1))
(("1"
(hide 2)
(("1"
(skeep)
(("1"
(inst -3 "epsil/2" )
(("1"
(inst -5 "epsil/2" )
(("1"
(skosimp*)
(("1"
(inst + "max(K!1,K!2)+1" )
(("1"
(skeep)
(("1"
(inst -4 "j" )
(("1"
(inst -6 "nnss(j)" )
(("1"
(assert )
(("1"
(inst - "j" )
(("1"
(assert )
(("1"
(name
"W"
"VS(ns(nnss(j)))" )
(("1"
(replace
-1)
(("1"
(assert )
(("1"
(name
"Ax"
"(# x:= W`x-acpr,y:=0 #)" )
(("1"
(name
"Ay"
"(# x:=0,y:=W`y-acpry #)" )
(("1"
(case
"NOT W-acp = Ax+Ay" )
(("1"
(hide-all-but
1)
(("1"
(expand
"Ax" )
(("1"
(expand
"Ay" )
(("1"
(expand
"-" )
(("1"
(grind)
nil
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(replaces
-1)
(("2"
(lemma
"norm_add_le" )
(("2"
(inst?)
(("2"
(case
"norm(Ax)<epsil/2 AND norm(Ay)<epsil/2" )
(("1"
(ground)
nil
nil )
("2"
(hide
2)
(("2"
(split)
(("1"
(case
"norm(Ax) = abs(W`x-acpr)" )
(("1"
(assert )
nil
nil )
("2"
(hide
2)
(("2"
(rewrite
"sq_eq"
1
:dir
rl)
(("2"
(rewrite
"sq_norm" )
(("2"
(expand
"Ax"
1)
(("2"
(hide
-)
(("2"
(grind)
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(case
"norm(Ay) = abs(W`y-acpry)" )
(("1"
(assert )
nil
nil )
("2"
(hide
2)
(("2"
(rewrite
"sq_eq"
1
:dir
rl)
(("2"
(rewrite
"sq_norm" )
(("2"
(expand
"Ay"
1)
(("2"
(hide
-)
(("2"
(grind)
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(replace -1)
(("2"
(inst - "norm(acp)-M" )
(("1"
(skosimp*)
(("1"
(inst - "K!1" )
(("1"
(assert )
(("1"
(inst -7 "ns(nnss(K!1))" )
(("1"
(name
"W"
"VS(ns(nnss(K!1)))" )
(("1"
(replace -1)
(("1"
(hide-all-but
(-2 -8 1))
(("1"
(lemma "norm_neg" )
(("1"
(inst - "W-acp" )
(("1"
(case
"-(W-acp) = acp-W" )
(("1"
(replaces -1)
(("1"
(assert )
(("1"
(replaces
-1
:dir
rl)
(("1"
(lemma
"norm_add_le" )
(("1"
(inst
-
"acp-W"
"W" )
(("1"
(assert )
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(hide-all-but
1)
(("2"
(grind)
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide 2)
(("2" (skosimp*)
(("2" (inst -3 "ns(i!1)" )
(("2" (name "W" "VS(ns(i!1))" )
(("2" (replace -1)
(("2" (hide (-1 -2 -3))
(("2" (rewrite "sq_le" 1 :dir rl)
(("2"
(rewrite "sq_le" -1 :dir rl)
(("2"
(rewrite "sq_norm" )
(("2"
(expand "sqv" )
(("2"
(expand "*" )
(("2"
(typepred "sq(W`y)" )
(("2" (grind) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide (-1 2))
(("2" (skosimp*)
(("2" (inst - "i!1" )
(("2" (rewrite "sq_le" 1 :dir rl)
(("2" (rewrite "sq_le" -1 :dir rl)
(("2" (rewrite "sq_norm" )
(("2" (typepred "sq(VS(i!1)`x)" )
(("2" (grind) nil nil )) nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide 2)
(("2" (skeep)
(("2"
(case "EXISTS (acpr:real): FORALL (epsil:posreal,K:nat): EXISTS (j:nat): j>=K AND abs(RS(j)-acpr)<epsil" )
(("1" (skeep -1)
(("1"
(name "ns"
"LAMBDA (i:nat): choose({j:nat | j>i+2 AND abs(RS(j)-acpr)<1/(i+2)})" )
(("1" (inst + "ns" "acpr" )
(("1" (split)
(("1" (skeep) (("1" (assert ) nil nil )) nil )
("2" (skeep)
(("2" (lemma "archimedean" )
(("2" (inst - "epsil" )
(("2" (skeep)
(("2" (inst + "n+1" )
(("2" (skeep)
(("2"
(typepred "ns(j)" )
(("2"
(case "1/(2+j) <1/n" )
(("1" (assert ) nil nil )
("2"
(cross-mult 1)
(("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide 2)
(("2" (skeep)
(("2" (inst - "1/(2+i)" "8+i" )
(("2" (skeep)
(("2" (expand "nonempty?" )
(("2" (expand "empty?" )
(("2" (expand "member" )
(("2" (inst - "j" ) (("2" (assert ) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (hide 2)
(("2"
(name "S"
"LAMBDA (x:real): EXISTS (K:nat): FORALL (i:nat): i>=K IMPLIES RS(i)>x" )
(("2" (case "nonempty?[real](S) AND bounded_above?(S)" )
(("1" (flatten)
(("1" (name "acpr" "lub(S)" )
(("1" (typepred "acpr" )
(("1" (expand "least_upper_bound?" )
(("1" (flatten)
(("1" (inst + "acpr" )
(("1" (skeep)
(("1"
(case "S(acpr-epsil/2)" )
(("1"
(expand "upper_bound?" -2)
(("1"
(inst - "acpr + epsil/2" )
(("1" (assert ) nil nil )
("2"
(expand "S" -1)
(("2"
(skolem -1 "K1" )
(("2"
(expand "S" 1)
(("2"
(inst + "K + K1 + 1" )
(("2"
(skeep)
(("2"
(inst - "i" )
(("2"
(inst + "i" )
(("2"
(assert )
(("2"
(expand "abs" +)
(("2"
(lift-if)
(("2"
(ground)
nil
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2"
(hide 2)
(("2" (postpone) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
("2" (propax) nil nil ))
nil ))
nil )
("2" (postpone) nil nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil ))
nil )
nil shostak)))
Messung V0.5 in Prozent C=100 H=100 G=100
¤ Dauer der Verarbeitung: 0.147 Sekunden
(vorverarbeitet am 2026-04-25)
¤
*© Formatika GbR, Deutschland
2026-05-26