products/Sources/formale Sprachen/PVS/trig image not shown  

Quellcode-Bibliothek

© Kompilation durch diese Firma

[Weder Korrektheit noch Funktionsfähigkeit der Software werden zugesichert.]

Datei: direct_sos.prf   Sprache: Lisp

Original von: PVS©

(over_under
 (over_under?_TCC1 0
  (over_under?_TCC1-1 nil 3321205307 ("" (tcc :defs !) nil nil)
   ((NOT const-decl "[bool -> bool]" booleans nil)
    (abs const-decl "{n: nonneg_real | n >= m AND n >= -m}" real_defs
         nil)
    (pos const-decl "sign_rep" enumerated_type_defs nil)
    (E_min formal-const-decl "{i: integer | E_max > i}" over_under nil)
    (E_max formal-const-decl "integer" over_under nil)
    (integer nonempty-type-from-decl nil integers nil)
    (p formal-const-decl "above(1)" over_under nil)
    (b formal-const-decl "above(1)" over_under nil)
    (above nonempty-type-eq-decl nil integers nil)
    (> const-decl "bool" reals nil)
    (bool nonempty-type-eq-decl nil booleans nil)
    (int nonempty-type-eq-decl nil integers nil)
    (integer_pred const-decl "[rational -> boolean]" integers nil)
    (rational nonempty-type-from-decl nil rationals nil)
    (rational_pred const-decl "[real -> boolean]" rationals nil)
    (real nonempty-type-from-decl nil reals nil)
    (real_pred const-decl "[number_field -> boolean]" reals nil)
    (number_field nonempty-type-from-decl nil number_fields nil)
    (number_field_pred const-decl "[number -> boolean]" number_fields
     nil)
    (boolean nonempty-type-decl nil booleans nil)
    (number nonempty-type-decl nil numbers nil)
    (max_fp_pos const-decl "fp_num" IEEE_854_values nil)
    (expt def-decl "real" exponentiation nil)
    (^ const-decl "real" exponentiation nil)
    (value const-decl "real" IEEE_854_values nil)
    (max_pos const-decl "posreal" IEEE_854_values nil)
    (/= const-decl "boolean" notequal nil)
    (minus_int_is_int application-judgement "int" integers nil)
    (posnat_expt application-judgement "posnat" exponentiation nil)
    (posint_times_posint_is_posint application-judgement "posint"
     integers nil)
    (mult_divides1 application-judgement "(divides(n))" divides nil)
    (mult_divides2 application-judgement "(divides(m))" divides nil))
   nil))
 (infinity_TCC1 0
  (infinity_TCC1-1 nil 3321205307 ("" (tcc :defs !) nil nil)
   ((/= const-decl "boolean" notequal nil)) nil))
 (trap_over_TCC1 0
  (trap_over_TCC1-1 nil 3321205307 ("" (tcc :defs !) nil nil)
   ((/= const-decl "boolean" notequal nil)) nil))
 (overflow_TCC1 0
  (overflow_TCC1-1 nil 3321205307 ("" (tcc :defs !) nil 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)
    (nzreal nonempty-type-eq-decl nil reals nil)
    (> const-decl "bool" reals 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)
    (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)
    (above nonempty-type-eq-decl nil integers nil)
    (b formal-const-decl "above(1)" over_under nil)
    (p formal-const-decl "above(1)" over_under nil)
    (integer nonempty-type-from-decl nil integers nil)
    (E_max formal-const-decl "integer" over_under nil)
    (E_min formal-const-decl "{i: integer | E_max > i}" over_under nil)
    (max_pos const-decl "posreal" IEEE_854_values nil)
    (pos const-decl "sign_rep" enumerated_type_defs nil)
    (max_fp_pos const-decl "fp_num" IEEE_854_values nil)
    (expt def-decl "real" exponentiation nil)
    (^ const-decl "real" exponentiation nil)
    (value const-decl "real" IEEE_854_values nil)
    (mult_divides2 application-judgement "(divides(m))" divides nil)
    (mult_divides1 application-judgement "(divides(n))" divides nil)
    (posint_times_posint_is_posint application-judgement "posint"
     integers nil)
    (minus_int_is_int application-judgement "int" integers nil)
    (posrat_div_posrat_is_posrat application-judgement "posrat"
     rationals nil)
    (posnat_expt application-judgement "posnat" exponentiation nil)
    (nnrat_exp application-judgement "nnrat" exponentiation nil)
    (real_ge_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (nzrat_div_nzrat_is_nzrat application-judgement "nzrat" rationals
     nil)
    (int_expt application-judgement "int" exponentiation nil)
    (nzreal_expt application-judgement "nzreal" exponentiation nil)
    (minus_odd_is_odd application-judgement "odd_int" integers nil)
    (nzreal_exp application-judgement "nzreal" exponentiation nil)
    (int_exp application-judgement "int" exponentiation nil)
    (nzrat_times_nzrat_is_nzrat application-judgement "nzrat" rationals
     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)
    (minus_nzreal_is_nzreal application-judgement "nzreal" real_types
     nil)
    (nonzero_abs_is_pos application-judgement "{y: posreal | y >= x}"
     real_defs nil)
    (real_gt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (/= const-decl "boolean" notequal nil)
    (int_plus_int_is_int application-judgement "int" integers nil))
   nil))
 (exact_underflow_TCC1 0
  (exact_underflow_TCC1-1 nil 3321205307 ("" (tcc :defs !) nil nil)
   ((/= const-decl "boolean" notequal nil)) nil))
 (exact_underflow_TCC2 0
  (exact_underflow_TCC2-1 nil 3321205307
   ("" (skolem-typepred) (("" (assertnil nil)) nil)
   ((posrat_exp application-judgement "posrat" exponentiation nil)
    (nnrat_exp application-judgement "nnrat" exponentiation nil)
    (nonzero_abs_is_pos application-judgement "{y: posreal | y >= x}"
     real_defs nil)
    (real_lt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (E_min formal-const-decl "{i: integer | E_max > i}" over_under nil)
    (E_max formal-const-decl "integer" over_under nil)
    (integer nonempty-type-from-decl nil integers nil)
    (b formal-const-decl "above(1)" over_under nil)
    (above nonempty-type-eq-decl nil integers nil)
    (> const-decl "bool" reals nil)
    (^ const-decl "real" exponentiation nil)
    (OR const-decl "[bool, bool -> bool]" booleans nil)
    (int nonempty-type-eq-decl nil integers nil)
    (integer_pred const-decl "[rational -> boolean]" integers nil)
    (rational nonempty-type-from-decl nil rationals nil)
    (rational_pred const-decl "[real -> boolean]" rationals nil)
    (abs const-decl "{n: nonneg_real | n >= m AND n >= -m}" real_defs
         nil)
    (- const-decl "[numfield -> numfield]" number_fields nil)
    (numfield nonempty-type-eq-decl nil number_fields nil)
    (AND const-decl "[bool, bool -> bool]" booleans nil)
    (nonneg_real nonempty-type-eq-decl nil real_types nil)
    (>= const-decl "bool" reals nil) (< const-decl "bool" reals nil)
    (nzreal nonempty-type-eq-decl nil reals nil)
    (real nonempty-type-from-decl nil reals nil)
    (real_pred const-decl "[number_field -> boolean]" reals nil)
    (number_field nonempty-type-from-decl nil number_fields nil)
    (number_field_pred const-decl "[number -> boolean]" number_fields
     nil)
    (/= const-decl "boolean" notequal 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))
   nil))
 (round_under_TCC1 0
  (round_under_TCC1-1 nil 3321205307 ("" (tcc :defs !) nil 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)
    (nzreal nonempty-type-eq-decl nil reals nil)
    (< const-decl "bool" reals 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)
    (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)
    (OR const-decl "[bool, bool -> bool]" booleans nil)
    (^ const-decl "real" exponentiation nil)
    (> const-decl "bool" reals nil)
    (above nonempty-type-eq-decl nil integers nil)
    (b formal-const-decl "above(1)" over_under nil)
    (integer nonempty-type-from-decl nil integers nil)
    (E_max formal-const-decl "integer" over_under nil)
    (E_min formal-const-decl "{i: integer | E_max > i}" over_under nil)
    (real_lt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (nonzero_abs_is_pos application-judgement "{y: posreal | y >= x}"
     real_defs nil)
    (minus_nzreal_is_nzreal application-judgement "nzreal" real_types
     nil)
    (nat_exp application-judgement "nat" exponentiation nil)
    (nat_expt application-judgement "nat" exponentiation nil)
    (nzrat_div_nzrat_is_nzrat application-judgement "nzrat" rationals
     nil)
    (real_ge_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (minus_int_is_int application-judgement "int" integers nil)
    (expt def-decl "real" exponentiation nil)
    (/= const-decl "boolean" notequal nil)
    (int_plus_int_is_int application-judgement "int" integers nil))
   nil))
 (round_under_TCC2 0
  (round_under_TCC2-1 nil 3321205307 ("" (tcc :defs !) nil 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)
    (nzreal nonempty-type-eq-decl nil reals nil)
    (< const-decl "bool" reals 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)
    (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)
    (OR const-decl "[bool, bool -> bool]" booleans nil)
    (^ const-decl "real" exponentiation nil)
    (> const-decl "bool" reals nil)
    (above nonempty-type-eq-decl nil integers nil)
    (b formal-const-decl "above(1)" over_under nil)
    (integer nonempty-type-from-decl nil integers nil)
    (E_max formal-const-decl "integer" over_under nil)
    (E_min formal-const-decl "{i: integer | E_max > i}" over_under nil)
    (real_lt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (nonzero_abs_is_pos application-judgement "{y: posreal | y >= x}"
     real_defs nil)
    (minus_nzreal_is_nzreal application-judgement "nzreal" real_types
     nil)
    (nat_exp application-judgement "nat" exponentiation nil)
    (nat_expt application-judgement "nat" exponentiation nil)
    (nzrat_div_nzrat_is_nzrat application-judgement "nzrat" rationals
     nil)
    (real_ge_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (minus_int_is_int application-judgement "int" integers nil)
    (expt def-decl "real" exponentiation nil)
    (/= const-decl "boolean" notequal nil)
    (int_plus_int_is_int application-judgement "int" integers nil)
    (int_minus_int_is_int application-judgement "int" integers nil))
   nil))
 (round_under_correct_TCC1 0
  (round_under_correct_TCC1-1 nil 3321205307
   ("" (assert)
    (("" (expand "min_pos")
      (("" (lemma "min_fp_correct")
        (("" (replace -1)
          (("" (hide -1)
            (("" (lemma "expt_pos")
              (("" (inst?)
                (("" (assert)
                  (("" (expand "abs")
                    (("" (lemma "expt_plus")
                      (("" (inst - "E_min" "1-p" "b")
                        (("" (replace -1)
                          (("" (hide -1)
                            (("" (lemma "both_sides_times_pos_lt2")
                              ((""
                                (inst - "b^E_min" "b^(1-p)" "1")
                                (("1"
                                  (lemma "expt_gt1_neg")
                                  (("1"
                                    (inst - "b" "p-1")
                                    (("1" (ground) nil)))))
                                 ("2"
                                  (lemma "expt_pos")
                                  (("2"
                                    (inst?)
                                    (("2"
                                      (assert)
                                      nil))))))))))))))))))))))))))))))))))
    nil)
   ((min_pos const-decl "posreal" IEEE_854_values nil)
    (int_plus_int_is_int application-judgement "int" integers nil)
    (expt_pos formula-decl nil exponentiation nil)
    (nzrat_abs_is_pos application-judgement "{r: posrat | r >= q}"
     real_defs nil)
    (real_gt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (expt_plus formula-decl nil exponentiation nil)
    (minus_odd_is_odd application-judgement "odd_int" integers nil)
    (both_sides_times_pos_lt2 formula-decl nil real_props nil)
    (expt_gt1_neg formula-decl nil exponentiation nil)
    (minus_int_is_int application-judgement "int" integers nil)
    (posrat_times_posrat_is_posrat application-judgement "posrat"
     rationals nil)
    (nonneg_int nonempty-type-eq-decl nil integers nil)
    (posnat nonempty-type-eq-decl nil integers nil)
    (real_ge_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (OR const-decl "[bool, bool -> bool]" booleans nil)
    (^ const-decl "real" exponentiation nil)
    (/= const-decl "boolean" notequal nil)
    (nzreal nonempty-type-eq-decl nil reals nil)
    (abs const-decl "{n: nonneg_real | n >= m AND n >= -m}" real_defs
         nil)
    (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)
    (>= const-decl "bool" reals nil)
    (nonneg_real nonempty-type-eq-decl nil real_types nil)
    (posreal nonempty-type-eq-decl nil real_types nil)
    (int_minus_int_is_int application-judgement "int" integers nil)
    (min_fp_correct formula-decl nil IEEE_854_values 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)
    (above nonempty-type-eq-decl nil integers nil)
    (b formal-const-decl "above(1)" over_under nil)
    (p formal-const-decl "above(1)" over_under nil)
    (integer nonempty-type-from-decl nil integers nil)
    (E_max formal-const-decl "integer" over_under nil)
    (E_min formal-const-decl "{i: integer | E_max > i}" over_under nil)
    (real_lt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (nonzero_abs_is_pos application-judgement "{y: posreal | y >= x}"
     real_defs nil)
    (nnrat_exp application-judgement "nnrat" exponentiation nil)
    (posrat_exp application-judgement "posrat" exponentiation nil))
   nil))
 (round_under_correct 0
  (round_under_correct-1 nil 3321205307
   ("" (skosimp*)
    (("" (expand "round_under")
      (("" (rewrite "round_int")
        (("1" (lemma "expt_plus")
          (("1" (inst - "(1 + E_min - p)" "(-(1 + E_min - p))" "b")
            (("1" (rewrite "expt_x0")
              (("1" (rewrite "associative_mult")
                (("1" (assertnil)))))))))
         ("2" (hide 2)
          (("2" (expand "min_pos")
            (("2" (lemma "min_fp_correct")
              (("2" (replace -1)
                (("2" (hide -1)
                  (("2" (rewrite "expt_plus" :dir rl)
                    (("2" (rewrite "expt_x0")
                      (("2" (assertnil))))))))))))))))))))
    nil)
   ((round_under const-decl "real" over_under nil)
    (min_fp_correct formula-decl nil IEEE_854_values nil)
    (real_times_real_is_real application-judgement "real" reals nil)
    (expt_plus formula-decl nil exponentiation nil)
    (expt_x0 formula-decl nil exponentiation nil)
    (posrat_times_posrat_is_posrat application-judgement "posrat"
     rationals nil)
    (associative_mult formula-decl nil number_fields nil)
    (nzreal nonempty-type-eq-decl nil reals nil)
    (posrat_exp application-judgement "posrat" exponentiation nil)
    (rat_times_rat_is_rat application-judgement "rat" rationals nil)
    (rounding_mode type-decl nil enumerated_type_defs nil)
    (min_pos const-decl "posreal" IEEE_854_values nil)
    (posreal nonempty-type-eq-decl nil real_types nil)
    (nonneg_real nonempty-type-eq-decl nil real_types nil)
    (p formal-const-decl "above(1)" over_under nil)
    (E_min formal-const-decl "{i: integer | E_max > i}" over_under nil)
    (E_max formal-const-decl "integer" over_under nil)
    (integer nonempty-type-from-decl nil integers nil)
    (+ const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (- const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (- const-decl "[numfield -> numfield]" number_fields nil)
    (b formal-const-decl "above(1)" over_under nil)
    (above nonempty-type-eq-decl nil integers nil)
    (> const-decl "bool" reals nil)
    (^ const-decl "real" exponentiation nil)
    (>= const-decl "bool" reals nil)
    (/= const-decl "boolean" notequal nil)
    (OR const-decl "[bool, bool -> bool]" booleans nil)
    (bool nonempty-type-eq-decl nil booleans nil)
    (* const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (numfield nonempty-type-eq-decl nil number_fields nil)
    (int nonempty-type-eq-decl nil integers nil)
    (integer_pred const-decl "[rational -> boolean]" integers nil)
    (rational nonempty-type-from-decl nil rationals nil)
    (rational_pred const-decl "[real -> boolean]" rationals nil)
    (real nonempty-type-from-decl nil reals nil)
    (real_pred const-decl "[number_field -> boolean]" reals nil)
    (number_field nonempty-type-from-decl nil number_fields nil)
    (number_field_pred const-decl "[number -> boolean]" number_fields
     nil)
    (boolean nonempty-type-decl nil booleans nil)
    (number nonempty-type-decl nil numbers nil)
    (round_int formula-decl nil round nil)
    (posreal_times_posreal_is_posreal application-judgement "posreal"
     real_types nil)
    (minus_int_is_int application-judgement "int" integers nil)
    (nnrat_exp application-judgement "nnrat" exponentiation nil)
    (int_minus_int_is_int application-judgement "int" integers nil)
    (int_plus_int_is_int application-judgement "int" integers nil)
    (AND const-decl "[bool, bool -> bool]" booleans nil))
   nil))
 (round_under_value_TCC1 0
  (round_under_value_TCC1-1 nil 3321205307
   ("" (skosimp*)
    (("" (prop)
      (("1" (expand "subnormal?")
        (("1" (expand "zero?") (("1" (ground) nil)))))
       ("2" (lemma "value_subnormal")
        (("2" (inst?) (("2" (assertnil))))))))
    nil)
   ((zero? const-decl "bool" IEEE_854_values nil)
    (subnormal? const-decl "bool" IEEE_854_values nil)
    (fp_num type-decl nil IEEE_854_values nil)
    (finite? adt-recognizer-decl "[fp_num -> boolean]" IEEE_854_values
     nil)
    (real_lt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (nnrat_exp application-judgement "nnrat" exponentiation nil)
    (posrat_exp application-judgement "posrat" exponentiation nil)
    (value_subnormal formula-decl nil IEEE_854_values 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)
    (above nonempty-type-eq-decl nil integers nil)
    (b formal-const-decl "above(1)" over_under nil)
    (p formal-const-decl "above(1)" over_under nil)
    (integer nonempty-type-from-decl nil integers nil)
    (E_max formal-const-decl "integer" over_under nil)
    (E_min formal-const-decl "{i: integer | E_max > i}" over_under
     nil))
   nil))
 (round_under_value 0
  (round_under_value-1 nil 3321205307
   ("" (skosimp*)
    (("" (expand "round_under")
      (("" (rewrite "round_int")
        (("1" (lemma "expt_plus")
          (("1" (inst - "(1 + E_min - p)" "(-(1 + E_min - p))" "b")
            (("1" (rewrite "expt_x0")
              (("1" (ground)
                (("1" (rewrite "associative_mult")
                  (("1" (assert)
                    (("1" (rewrite "associative_mult" :dir rl)
                      (("1" (assertnil)))))))))))))))
         ("2" (hide 2)
          (("2"
            (case "integer?(b ^ (-(1 + E_min - p))
                       * value(fin!1))")
            (("1" (expand "integer?") (("1" (propax) nil)))
             ("2" (hide 2)
              (("2" (expand "subnormal?")
                (("2" (rewrite "normal_value")
                  (("2" (expand "value")
                    (("2" (prop)
                      (("2" (replace -1)
                        (("2" (assert)
                          (("2"
                            (case-replace "b ^ (-(1 + E_min - p))
                     *
                     (Sum(p, value_digit(d(normalize(fin!1))))
                        * (-1) ^ sign(normalize(fin!1))
                        * b ^ E_min) =
 (-1)^sign(normalize(fin!1)) *(Sum(p,scale_value_p(d(normalize(fin!1)))))")
                            (("1" (hide -1)
                              (("1"
                                (assert)
                                (("1"
                                  (case-replace
                                   "scale_value_p(d(normalize(fin!1))) = scale_value(d(normalize(fin!1)),p-1)")
                                  (("1"
                                    (hide -1)
                                    (("1"
                                      (lemma "scaled_Sum_int")
                                      (("1"
                                        (inst?)
                                        (("1"
                                          (case
                                           "FORALL (i,j:int): integer?(i*j)")
                                          (("1"
                                            (inst?)
                                            (("1"
                                              (expand "integer?")
                                              (("1" (propax) nil)))))
                                           ("2"
                                            (hide -1 -2 -3 2 3)
                                            (("2"
                                              (expand "integer?")
                                              (("2"
                                                (propax)
                                                nil)))))))))))))
                                   ("2"
                                    (hide -1 -2 2 3)
                                    (("2"
                                      (apply-extensionality)
                                      (("1"
                                        (expand "scale_value_p")
                                        (("1" (propax) nil)))
                                       ("2"
                                        (expand "scale_value")
                                        (("2"
                                          (expand "value_digit")
                                          (("2"
                                            (hide 2)
                                            (("2"
                                              (skosimp*)
                                              (("2"
                                                (lift-if)
                                                (("2"
                                                  (assert)
                                                  (("2"
                                                    (rewrite
                                                     "associative_mult"
                                                     :dir
                                                     rl)
                                                    (("2"
                                                      (rewrite
                                                       "expt_plus"
                                                       :dir
                                                       rl)
                                                      (("2"
                                                        (ground)
                                                        (("1"
                                                          (rewrite
                                                           "closed_times")
                                                          (("1"
                                                            (rewrite
                                                             "closed_times")
                                                            (("1"
                                                              (case
                                                               "forall (n:nat): integer_pred(b^n)")
                                                              (("1"
                                                                (inst?)
                                                                nil)
                                                               ("2"
                                                                (skosimp*)
                                                                (("2"
                                                                  (assert)
                                                                  nil)))))))))
                                                         ("2"
                                                          (rewrite
                                                           "pos_times_ge")
                                                          (("2"
                                                            (lemma
                                                             "expt_pos")
                                                            (("2"
                                                              (inst?)
                                                              (("2"
                                                                (assert)
                                                                nil)))))))))))))))))))))))))))))))))))
                             ("2" (hide -1 -2 2 3)
                              (("2"
                                (assert)
                                (("2"
                                  (lemma "scaled_Sum")
                                  (("2"
                                    (inst?)
                                    (("2"
                                      (replace -1 :dir rl)
                                      (("2"
                                        (hide -1)
                                        (("2"
                                          (lemma "expt_plus")
                                          (("2"
                                            (inst
                                             -
                                             "E_min"
                                             "(-(1 + E_min - p))"
                                             "b")
                                            (("2"
                                              (replace -1)
                                              (("2"
                                                (assert)
                                                nil))))))))))))))))))))))))))))))))))))))))))))
    nil)
   ((round_under const-decl "real" over_under nil)
    (normal_value formula-decl nil IEEE_854_values nil)
    (minus_odd_is_odd application-judgement "odd_int" integers nil)
    (scaled_Sum formula-decl nil IEEE_854_values nil)
    (scale_value const-decl "nonneg_real" IEEE_854_values nil)
    (scaled_Sum_int formula-decl nil IEEE_854_values nil)
    (fin!1 skolem-const-decl "(finite?)" over_under nil)
    (mult_divides1 application-judgement "(divides(n))" divides nil)
    (mult_divides2 application-judgement "(divides(m))" divides nil)
    (<= const-decl "bool" reals nil)
    (upto nonempty-type-eq-decl nil naturalnumbers nil)
    (real_le_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (nnrat_times_nnrat_is_nnrat application-judgement "nonneg_rat"
     rationals nil)
    (real_lt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (closed_times formula-decl nil integers nil)
    (posint_exp application-judgement "posint" exponentiation nil)
    (associative_mult formula-decl nil number_fields nil)
    (nnreal_times_nnreal_is_nnreal application-judgement "nnreal"
     real_types nil)
    (= const-decl "[T, T -> boolean]" equalities nil)
    (nat nonempty-type-eq-decl nil naturalnumbers nil)
    (Sum def-decl "real" sum_hack nil) (< const-decl "bool" reals nil)
    (below type-eq-decl nil naturalnumbers nil)
    (digits type-eq-decl nil IEEE_854_values nil)
    (nonneg_real nonempty-type-eq-decl nil real_types nil)
    (value_digit const-decl "nonneg_real" IEEE_854_values nil)
    (d adt-accessor-decl "[(finite?) -> digits]" IEEE_854_values nil)
    (normalize def-decl "(finite?)" IEEE_854_values nil)
    (sign_rep type-eq-decl nil enumerated_type_defs nil)
    (sign adt-accessor-decl "[(finite?) -> sign_rep]" IEEE_854_values
          nil)
    (scale_value_p const-decl "nat" IEEE_854_values nil)
    (nzreal_exp application-judgement "nzreal" exponentiation nil)
    (int_exp application-judgement "int" exponentiation nil)
    (subnormal? const-decl "bool" IEEE_854_values nil)
    (real_ge_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (integer? const-decl "bool" integers nil)
    (expt_plus formula-decl nil exponentiation nil)
    (expt_x0 formula-decl nil exponentiation nil)
    (posrat_times_posrat_is_posrat application-judgement "posrat"
     rationals nil)
    (nzreal nonempty-type-eq-decl nil reals nil)
    (posrat_exp application-judgement "posrat" exponentiation nil)
    (rat_times_rat_is_rat application-judgement "rat" rationals nil)
    (rounding_mode type-decl nil enumerated_type_defs nil)
    (value const-decl "real" IEEE_854_values nil)
    (finite? adt-recognizer-decl "[fp_num -> boolean]" IEEE_854_values
     nil)
    (fp_num type-decl nil IEEE_854_values nil)
    (p formal-const-decl "above(1)" over_under nil)
    (E_min formal-const-decl "{i: integer | E_max > i}" over_under nil)
    (E_max formal-const-decl "integer" over_under nil)
    (integer nonempty-type-from-decl nil integers nil)
    (+ const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (- const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (- const-decl "[numfield -> numfield]" number_fields nil)
    (b formal-const-decl "above(1)" over_under nil)
    (above nonempty-type-eq-decl nil integers nil)
    (> const-decl "bool" reals nil)
    (^ const-decl "real" exponentiation nil)
    (>= const-decl "bool" reals nil)
    (/= const-decl "boolean" notequal nil)
    (OR const-decl "[bool, bool -> bool]" booleans nil)
    (bool nonempty-type-eq-decl nil booleans nil)
    (* const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (numfield nonempty-type-eq-decl nil number_fields nil)
    (int nonempty-type-eq-decl nil integers nil)
    (integer_pred const-decl "[rational -> boolean]" integers nil)
    (rational nonempty-type-from-decl nil rationals nil)
    (rational_pred const-decl "[real -> boolean]" rationals nil)
    (real nonempty-type-from-decl nil reals nil)
    (real_pred const-decl "[number_field -> boolean]" reals nil)
    (number_field nonempty-type-from-decl nil number_fields nil)
    (number_field_pred const-decl "[number -> boolean]" number_fields
     nil)
    (boolean nonempty-type-decl nil booleans nil)
    (number nonempty-type-decl nil numbers nil)
    (round_int formula-decl nil round nil)
    (real_times_real_is_real application-judgement "real" reals nil)
    (minus_int_is_int application-judgement "int" integers nil)
    (nnrat_exp application-judgement "nnrat" exponentiation nil)
    (int_minus_int_is_int application-judgement "int" integers nil)
    (int_plus_int_is_int application-judgement "int" integers nil)
    (AND const-decl "[bool, bool -> bool]" booleans nil))
   nil))
 (round_under_error_TCC1 0
  (round_under_error_TCC1-1 nil 3321205307 ("" (tcc :defs !) nil 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)
    (nzreal nonempty-type-eq-decl nil reals nil)
    (minus_odd_is_odd application-judgement "odd_int" integers nil)
    (posnat_expt application-judgement "posnat" exponentiation nil)
    (posint_times_posint_is_posint application-judgement "posint"
     integers nil)
    (mult_divides1 application-judgement "(divides(n))" divides nil)
    (mult_divides2 application-judgement "(divides(m))" divides nil)
    (abs const-decl "{n: nonneg_real | n >= m AND n >= -m}" real_defs
         nil)
    (expt def-decl "real" exponentiation nil)
    (^ const-decl "real" exponentiation nil)
    (/= const-decl "boolean" notequal nil)
    (minus_int_is_int application-judgement "int" integers nil)
    (int_plus_int_is_int application-judgement "int" integers nil))
   nil))
 (round_under_error 0
  (round_under_error-1 nil 3321205307
   ("" (skosimp*)
    (("" (expand "round_under")
      ((""
        (case-replace "abs(r!1
            - b ^ (1 + E_min - p)
                * round(b ^ (-(1 + E_min - p)) * r!1, mode!1)) =
abs(b ^ (1 + E_min - p)) * abs( r!1*b ^ (-(1 + E_min - p)) - round(b ^ (-(1 + E_min - p)) * r!1, mode!1))")
        (("1" (hide -1 -2)
          (("1" (rewrite "abs")
            (("1" (lemma "expt_pos")
              (("1" (inst?)
                (("1" (assert)
                  (("1" (lemma "both_sides_times_pos_lt2")
                    (("1" (inst - "b^(1+E_min-p)" "_" "1")
                      (("1" (inst?)
                        (("1" (lemma "round1")
                          (("1" (inst?)
                            (("1" (assertnil)))))))))))))))))))))
         ("2" (hide -1 2)
          (("2" (rewrite "abs_mult" :dir rl)
            (("2" (rewrite "expt_plus" :dir rl)
              (("2" (rewrite "expt_x0") (("2" (assertnil)))))))))
         ("3" (assertnil) ("4" (assertnil))))))
    nil)
   ((int_plus_int_is_int application-judgement "int" integers nil)
    (int_minus_int_is_int application-judgement "int" integers nil)
    (nnrat_exp application-judgement "nnrat" exponentiation nil)
    (posrat_exp application-judgement "posrat" exponentiation nil)
    (rat_times_rat_is_rat application-judgement "rat" rationals nil)
    (round_under const-decl "real" over_under nil)
    (expt_plus formula-decl nil exponentiation nil)
    (expt_x0 formula-decl nil exponentiation nil)
    (abs_mult formula-decl nil real_props nil)
    (expt_pos formula-decl nil exponentiation nil)
    (real_times_real_is_real application-judgement "real" reals nil)
    (real_gt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (round1 formula-decl nil round nil)
    (posrat_times_posrat_is_posrat application-judgement "posrat"
     rationals nil)
    (both_sides_times_pos_lt2 formula-decl nil real_props nil)
    (posreal nonempty-type-eq-decl nil real_types nil)
    (minus_nzrat_is_nzrat application-judgement "nzrat" rationals nil)
    (real_lt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (nzrat_abs_is_pos application-judgement "{r: posrat | r >= q}"
     real_defs nil)
    (minus_odd_is_odd application-judgement "odd_int" integers nil)
    (round const-decl "integer" round nil)
    (rounding_mode type-decl nil enumerated_type_defs nil)
    (p formal-const-decl "above(1)" over_under nil)
    (E_min formal-const-decl "{i: integer | E_max > i}" over_under nil)
    (E_max formal-const-decl "integer" over_under nil)
    (integer nonempty-type-from-decl nil integers nil)
    (+ const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (b formal-const-decl "above(1)" over_under nil)
    (above nonempty-type-eq-decl nil integers nil)
    (> const-decl "bool" reals nil)
    (^ const-decl "real" exponentiation nil)
    (OR const-decl "[bool, bool -> bool]" booleans nil)
    (int nonempty-type-eq-decl nil integers nil)
    (integer_pred const-decl "[rational -> boolean]" integers nil)
    (rational nonempty-type-from-decl nil rationals nil)
    (rational_pred const-decl "[real -> boolean]" rationals nil)
    (* const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (nzreal nonempty-type-eq-decl nil reals nil)
    (/= const-decl "boolean" notequal nil)
    (- const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (abs const-decl "{n: nonneg_real | n >= m AND n >= -m}" real_defs
         nil)
    (- const-decl "[numfield -> numfield]" number_fields nil)
    (numfield nonempty-type-eq-decl nil number_fields nil)
    (AND const-decl "[bool, bool -> bool]" booleans nil)
    (nonneg_real nonempty-type-eq-decl nil real_types nil)
    (>= const-decl "bool" reals nil)
    (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)
    (= const-decl "[T, T -> boolean]" equalities nil)
    (boolean nonempty-type-decl nil booleans nil)
    (number nonempty-type-decl nil numbers nil)
    (minus_int_is_int application-judgement "int" integers nil)
    (nnreal_times_nnreal_is_nnreal application-judgement "nnreal"
     real_types nil)
    (nzreal_times_nzreal_is_nzreal application-judgement "nzreal"
     real_types nil)
    (real_minus_real_is_real application-judgement "real" reals nil))
   nil))
 (round_under_near 0
  (round_under_near-1 nil 3321205307
   ("" (skosimp*)
    (("" (expand "round_under")
      (("" (hide -1)
        ((""
          (case-replace "abs(r!1
            - b ^ (1 + E_min - p)
                * round(b ^ (-(1 + E_min - p)) * r!1, to_nearest)) =
abs(b ^ (1 + E_min - p)) * abs( r!1*b ^ (-(1 + E_min - p)) - round(b ^ (-(1 + E_min - p)) * r!1, to_nearest))")
          (("1" (hide -1)
            (("1" (expand "abs" + 1)
              (("1" (lemma "expt_pos")
                (("1" (inst?)
                  (("1" (assert)
                    (("1" (lemma "both_sides_times_pos_lt2")
                      (("1" (inst - "b^(1+E_min-p)" "_" "1/2")
                        (("1" (expand "round")
                          (("1" (inst?)
                            (("1" (rewrite "times_div1")
                              (("1"
                                (lemma "round_to_even1")
                                (("1"
                                  (inst?)
                                  (("1" (assertnil)))))))))))))))))
                   ("2" (assert)
                    (("2" (split)
                      (("1" (assertnil)
                       ("2" (assertnil)))))))))))))
           ("2" (hide 2)
            (("2" (rewrite "abs_mult" :dir rl)
              (("2" (rewrite "expt_plus" :dir rl)
                (("2" (rewrite "expt_x0") (("2" (assertnil)))))))))
           ("3" (assertnil) ("4" (assertnil))))))))
    nil)
   ((int_plus_int_is_int application-judgement "int" integers nil)
    (int_minus_int_is_int application-judgement "int" integers nil)
    (nnrat_exp application-judgement "nnrat" exponentiation nil)
    (posrat_exp application-judgement "posrat" exponentiation nil)
    (rat_times_rat_is_rat application-judgement "rat" rationals nil)
    (round_under const-decl "real" over_under nil)
    (nzreal_times_nzreal_is_nzreal application-judgement "nzreal"
     real_types nil)
    (nnreal_times_nnreal_is_nnreal application-judgement "nnreal"
     real_types nil)
    (minus_int_is_int application-judgement "int" integers 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)
    (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)
    (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)
    (- const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (/= const-decl "boolean" notequal nil)
    (nzreal nonempty-type-eq-decl nil reals nil)
    (* const-decl "[numfield, numfield -> numfield]" number_fields 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)
    (OR const-decl "[bool, bool -> bool]" booleans nil)
    (^ const-decl "real" exponentiation nil)
    (> const-decl "bool" reals nil)
    (above nonempty-type-eq-decl nil integers nil)
    (b formal-const-decl "above(1)" over_under nil)
    (+ const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (integer nonempty-type-from-decl nil integers nil)
    (E_max formal-const-decl "integer" over_under nil)
    (E_min formal-const-decl "{i: integer | E_max > i}" over_under nil)
    (p formal-const-decl "above(1)" over_under nil)
    (rounding_mode type-decl nil enumerated_type_defs nil)
    (round const-decl "integer" round nil)
    (to_nearest? adt-recognizer-decl "[rounding_mode -> boolean]"
     enumerated_type_defs nil)
    (to_nearest adt-constructor-decl "(to_nearest?)"
     enumerated_type_defs nil)
    (posreal nonempty-type-eq-decl nil real_types nil)
    (both_sides_times_pos_lt2 formula-decl nil real_props nil)
    (nonzero_real nonempty-type-eq-decl nil reals nil)
    (times_div1 formula-decl nil real_props nil)
    (posrat_times_posrat_is_posrat application-judgement "posrat"
     rationals nil)
    (round_to_even1 formula-decl nil round nil)
    (round_to_even const-decl "integer" round nil)
    (nznum nonempty-type-eq-decl nil number_fields nil)
    (/ const-decl "[numfield, nznum -> numfield]" number_fields nil)
    (real_gt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (real_le_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (real_times_real_is_real application-judgement "real" reals nil)
    (minus_nzrat_is_nzrat application-judgement "nzrat" rationals nil)
    (real_lt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (posrat_div_posrat_is_posrat application-judgement "posrat"
     rationals nil)
    (expt_pos formula-decl nil exponentiation nil)
    (abs_mult formula-decl nil real_props nil)
    (nzrat_abs_is_pos application-judgement "{r: posrat | r >= q}"
     real_defs nil)
    (expt_x0 formula-decl nil exponentiation nil)
    (expt_plus formula-decl nil exponentiation nil)
    (real_minus_real_is_real application-judgement "real" reals nil))
   nil))
 (round_under_pos 0
  (round_under_pos-1 nil 3321205307
   ("" (skosimp*)
    (("" (expand "round_under")
      (("" (hide -1)
        (("" (expand "round")
          (("" (lemma "both_sides_times_pos_ge2")
            (("" (lemma "expt_pos")
              (("" (inst - "(-(1 + E_min - p))" "b")
                (("1"
                  (inst - "b ^ (-(1 + E_min - p))"
                   "b ^ (1 + E_min - p) * ceiling(b ^ (-(1 + E_min - p)) * r!1)"
                   "r!1")
                  (("1" (replace -2 :dir rl)
                    (("1" (hide -2)
                      (("1" (rewrite "associative_mult")
                        (("1" (rewrite "associative_mult" :dir rl)
                          (("1" (rewrite "expt_plus" :dir rl)
                            (("1" (rewrite "expt_x0")
                              (("1" (assertnil)))))))))))))
                   ("2" (assertnil) ("3" (assertnil)
                   ("4" (assertnil)))
                 ("2" (assertnil))))))))))))))
    nil)
   ((round_under const-decl "real" over_under nil)
    (int_plus_int_is_int application-judgement "int" integers nil)
    (int_minus_int_is_int application-judgement "int" integers nil)
    (nnrat_exp application-judgement "nnrat" exponentiation nil)
    (posrat_exp application-judgement "posrat" exponentiation nil)
    (nzreal_times_nzreal_is_nzreal application-judgement "nzreal"
     real_types nil)
    (round const-decl "integer" round nil)
    (expt_pos formula-decl nil exponentiation nil)
    (rat_times_rat_is_rat application-judgement "rat" rationals nil)
    (nzreal nonempty-type-eq-decl nil reals nil)
    (ceiling const-decl "{i | x <= i & i < x + 1}" floor_ceil nil)
    (< const-decl "bool" reals nil) (<= const-decl "bool" reals nil)
    (AND const-decl "[bool, bool -> bool]" booleans nil)
    (* const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (^ const-decl "real" exponentiation nil)
    (/= const-decl "boolean" notequal nil)
    (OR const-decl "[bool, bool -> bool]" booleans nil)
    (expt_x0 formula-decl nil exponentiation nil)
    (real_gt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (real_ge_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (mult_divides1 application-judgement "(divides(n))" divides nil)
    (mult_divides2 application-judgement "(divides(m))" divides nil)
    (expt_plus formula-decl nil exponentiation nil)
    (posrat_times_posrat_is_posrat application-judgement "posrat"
     rationals nil)
    (associative_mult formula-decl nil number_fields nil)
    (b formal-const-decl "above(1)" over_under nil)
    (posreal nonempty-type-eq-decl nil real_types nil)
    (nonneg_real nonempty-type-eq-decl nil real_types nil)
    (>= const-decl "bool" reals nil)
    (p formal-const-decl "above(1)" over_under nil)
    (above nonempty-type-eq-decl nil integers nil)
    (E_min formal-const-decl "{i: integer | E_max > i}" over_under nil)
    (E_max formal-const-decl "integer" over_under nil)
    (> const-decl "bool" reals nil)
    (bool nonempty-type-eq-decl nil booleans nil)
    (integer nonempty-type-from-decl nil integers nil)
    (+ const-decl "[numfield, numfield -> numfield]" number_fields 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)
    (int nonempty-type-eq-decl nil integers nil)
    (integer_pred const-decl "[rational -> boolean]" integers nil)
    (rational nonempty-type-from-decl nil rationals nil)
    (rational_pred const-decl "[real -> boolean]" rationals nil)
    (real nonempty-type-from-decl nil reals nil)
    (real_pred const-decl "[number_field -> boolean]" reals nil)
    (number_field nonempty-type-from-decl nil number_fields nil)
    (number_field_pred const-decl "[number -> boolean]" number_fields
     nil)
    (boolean nonempty-type-decl nil booleans nil)
    (number nonempty-type-decl nil numbers nil)
    (minus_int_is_int application-judgement "int" integers nil)
    (both_sides_times_pos_ge2 formula-decl nil real_props nil))
   nil))
 (round_under_neg 0
  (round_under_neg-1 nil 3321205307
   ("" (skosimp*)
    (("" (hide -1)
      (("" (expand "round_under")
        (("" (expand "round")
          (("" (lemma "both_sides_times_pos_le2")
            ((""
              (inst - "b ^ (-(1 + E_min - p))"
               "b ^ (1 + E_min - p) * floor(b ^ (-(1 + E_min - p)) * r!1)"
               "r!1")
              (("1" (replace -1 :dir rl)
                (("1" (hide -1)
                  (("1" (rewrite "associative_mult")
                    (("1" (rewrite "associative_mult" :dir rl)
                      (("1" (rewrite "expt_plus" :dir rl)
                        (("1" (rewrite "expt_x0")
                          (("1" (assertnil)))))))))))))
               ("2" (assertnil)
               ("3" (lemma "expt_pos")
                (("3" (inst?)
                  (("1" (assertnil) ("2" (assertnil)))))
               ("4" (assertnil))))))))))))
    nil)
   ((int_plus_int_is_int application-judgement "int" integers nil)
    (int_minus_int_is_int application-judgement "int" integers nil)
    (nnrat_exp application-judgement "nnrat" exponentiation nil)
    (posrat_exp application-judgement "posrat" exponentiation nil)
    (nzreal_times_nzreal_is_nzreal application-judgement "nzreal"
     real_types nil)
    (round const-decl "integer" round nil)
    (rat_times_rat_is_rat application-judgement "rat" rationals nil)
    (minus_int_is_int application-judgement "int" integers nil)
    (number nonempty-type-decl nil numbers nil)
    (boolean nonempty-type-decl nil booleans nil)
    (number_field_pred const-decl "[number -> boolean]" number_fields
     nil)
    (number_field nonempty-type-from-decl nil number_fields nil)
    (real_pred const-decl "[number_field -> boolean]" reals nil)
    (real nonempty-type-from-decl nil reals nil)
    (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)
    (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)
    (OR const-decl "[bool, bool -> bool]" booleans nil)
    (/= const-decl "boolean" notequal nil)
    (^ const-decl "real" exponentiation nil)
    (above nonempty-type-eq-decl nil integers nil)
    (b formal-const-decl "above(1)" over_under nil)
    (numfield nonempty-type-eq-decl nil number_fields nil)
    (- const-decl "[numfield -> numfield]" number_fields nil)
    (- const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (+ const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (integer nonempty-type-from-decl nil integers nil)
    (E_max formal-const-decl "integer" over_under nil)
    (E_min formal-const-decl "{i: integer | E_max > i}" over_under nil)
    (p formal-const-decl "above(1)" over_under nil)
    (* const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (AND const-decl "[bool, bool -> bool]" booleans nil)
    (<= const-decl "bool" reals nil) (< const-decl "bool" reals nil)
    (floor const-decl "{i | i <= x & x < i + 1}" floor_ceil nil)
    (nzreal nonempty-type-eq-decl nil reals nil)
    (expt_x0 formula-decl nil exponentiation nil)
    (real_le_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (mult_divides1 application-judgement "(divides(n))" divides nil)
    (mult_divides2 application-judgement "(divides(m))" divides nil)
    (expt_plus formula-decl nil exponentiation nil)
    (posrat_times_posrat_is_posrat application-judgement "posrat"
     rationals nil)
    (associative_mult formula-decl nil number_fields nil)
    (both_sides_times_pos_le2 formula-decl nil real_props nil)
    (round_under const-decl "real" over_under nil))
   nil))
 (round_under_zero 0
  (round_under_zero-1 nil 3321205307
   ("" (skosimp*)
    (("" (expand "round_under")
      (("" (rewrite "abs_mult")
        (("" (expand "round")
          (("" (case "forall (r1,r2:real): abs(sgn(r1)*r2) = abs(r2)")
            (("1" (inst?)
              (("1" (replace -1)
                (("1" (hide -1)
                  (("1"
                    (case "forall (r:real): abs(floor(abs(r)))=floor(abs(r))")
                    (("1" (inst?)
                      (("1" (replace -1)
                        (("1" (hide -1)
                          (("1" (lemma "both_sides_times_pos_le2")
                            (("1"
                              (inst - "abs(b ^ (-(1 + E_min - p)))"
                               "abs(b ^ (1 + E_min - p)) * floor(abs(b ^ (-(1 + E_min - p)) * r!1))"
                               "abs(r!1)")
                              (("1"
                                (replace -1 :dir rl)
                                (("1"
                                  (hide -1)
                                  (("1"
                                    (hide -1)
                                    (("1"
                                      (rewrite "abs_mult" :dir rl)
                                      (("1"
                                        (rewrite "associative_mult")
                                        (("1"
                                          (rewrite
                                           "associative_mult"
                                           :dir
                                           rl)
                                          (("1"
                                            (rewrite
                                             "abs_mult"
                                             :dir
                                             rl)
                                            (("1"
                                              (rewrite
                                               "expt_plus"
                                               :dir
                                               rl)
                                              (("1"
                                                (rewrite "expt_x0")
                                                (("1"
                                                  (expand "abs" + 2)
                                                  (("1"
                                                    (assert)
                                                    nil)))))))))))))))))))))
                               ("2"
                                (hide -1 2)
                                (("2"
                                  (lemma "expt_pos")
                                  (("2"
                                    (inst?)
                                    (("2"
                                      (expand "abs")
                                      (("2"
                                        (assert)
                                        nil)))))))))))))))))))
                     ("2" (hide -1 2) (("2" (grind) nil)))))))))))
             ("2" (hide -1 2) (("2" (tcc) nil))))))))))))
    nil)
   ((int_plus_int_is_int application-judgement "int" integers nil)
    (int_minus_int_is_int application-judgement "int" integers nil)
    (nnrat_exp application-judgement "nnrat" exponentiation nil)
    (posrat_exp application-judgement "posrat" exponentiation nil)
    (rat_times_rat_is_rat application-judgement "rat" rationals nil)
    (round_under const-decl "real" over_under nil)
    (nonneg_floor_is_nat application-judgement "nat" floor_ceil nil)
    (mult_divides1 application-judgement "(divides(n))" divides nil)
    (mult_divides2 application-judgement "(divides(m))" divides nil)
    (minus_odd_is_odd application-judgement "odd_int" integers nil)
    (real_ge_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (floor const-decl "{i | i <= x & x < i + 1}" floor_ceil nil)
    (< const-decl "bool" reals nil) (<= const-decl "bool" reals nil)
    (NOT const-decl "[bool -> bool]" booleans nil)
    (real_lt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (minus_real_is_real application-judgement "real" reals nil)
    (posreal nonempty-type-eq-decl nil real_types nil)
    (nonzero_abs_is_pos application-judgement "{y: posreal | y >= x}"
     real_defs nil)
    (expt_plus formula-decl nil exponentiation nil)
    (real_le_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (expt_x0 formula-decl nil exponentiation nil)
    (posrat_times_posrat_is_posrat application-judgement "posrat"
     rationals nil)
    (associative_mult formula-decl nil number_fields nil)
    (both_sides_times_pos_le2 formula-decl nil real_props nil)
    (sgn const-decl "int" real_defs nil)
    (abs const-decl "{n: nonneg_real | n >= m AND n >= -m}" real_defs
         nil)
    (AND const-decl "[bool, bool -> bool]" booleans nil)
    (nonneg_real nonempty-type-eq-decl nil real_types nil)
    (= const-decl "[T, T -> boolean]" equalities nil)
    (real_times_real_is_real application-judgement "real" reals nil)
    (nnrat_times_nnrat_is_nnrat application-judgement "nonneg_rat"
     rationals nil)
    (nzrat_abs_is_pos application-judgement "{r: posrat | r >= q}"
     real_defs nil)
    (int_abs_is_nonneg application-judgement "{j: nonneg_int | j >= i}"
     real_defs nil)
    (to_zero adt-constructor-decl "(to_zero?)" enumerated_type_defs
     nil)
    (to_zero? adt-recognizer-decl "[rounding_mode -> boolean]"
     enumerated_type_defs nil)
    (nzreal nonempty-type-eq-decl nil reals nil)
    (- const-decl "[numfield -> numfield]" number_fields nil)
    (* const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (round const-decl "integer" round nil)
    (rounding_mode type-decl nil enumerated_type_defs nil)
    (p formal-const-decl "above(1)" over_under nil)
    (E_min formal-const-decl "{i: integer | E_max > i}" over_under nil)
    (E_max formal-const-decl "integer" over_under nil)
    (integer nonempty-type-from-decl nil integers nil)
    (+ const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (- const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (numfield nonempty-type-eq-decl nil number_fields nil)
    (b formal-const-decl "above(1)" over_under nil)
    (above nonempty-type-eq-decl nil integers nil)
    (> const-decl "bool" reals nil)
    (^ const-decl "real" exponentiation nil)
    (>= const-decl "bool" reals nil)
    (/= const-decl "boolean" notequal nil)
    (OR const-decl "[bool, bool -> bool]" booleans nil)
    (bool nonempty-type-eq-decl nil booleans nil)
    (int nonempty-type-eq-decl nil integers nil)
    (integer_pred const-decl "[rational -> boolean]" integers nil)
    (rational nonempty-type-from-decl nil rationals nil)
    (rational_pred const-decl "[real -> boolean]" rationals nil)
    (real nonempty-type-from-decl nil reals nil)
    (real_pred const-decl "[number_field -> boolean]" reals nil)
    (number_field nonempty-type-from-decl nil number_fields nil)
    (number_field_pred const-decl "[number -> boolean]" number_fields
     nil)
    (boolean nonempty-type-decl nil booleans nil)
    (number nonempty-type-decl nil numbers nil)
    (abs_mult formula-decl nil real_props nil)
    (nzreal_times_nzreal_is_nzreal application-judgement "nzreal"
     real_types nil)
    (minus_int_is_int application-judgement "int" integers nil))
   nil)))


¤ Dauer der Verarbeitung: 0.71 Sekunden  (vorverarbeitet)  ¤





Download des
Quellennavigators
Download des
sprechenden Kalenders

in der Quellcodebibliothek suchen




Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.


Bemerkung:

Die farbliche Syntaxdarstellung ist noch experimentell.


Bot Zugriff