products/sources/formale Sprachen/PVS/structures image not shown  

Quellcode-Bibliothek

© Kompilation durch diese Firma

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

Datei: vectors_3D_def.pvs   Sprache: Lisp

Original von: PVS©

(for_iterate
 (for_def_TCC1 0
  (for_def_TCC1-1 nil 3508245294 ("" (subtype-tcc) nil nil)
   ((int_minus_int_is_int application-judgement "int" integers 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)
    (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)
    (real_ge_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (int_max application-judgement "{k: int | i <= k AND j <= k}"
     real_defs nil)
    (rat_max application-judgement "{s: rat | s >= q AND s >= r}"
     real_defs nil)
    (real_lt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (int_plus_int_is_int application-judgement "int" integers nil))
   nil))
 (for_def_TCC2 0
  (for_def_TCC2-1 nil 3508245294 ("" (subtype-tcc) nil nil)
   ((int_minus_int_is_int application-judgement "int" integers 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)
    (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)
    (max const-decl "{p: real | p >= m AND p >= n}" real_defs nil)
    (rat_max application-judgement "{s: rat | s >= q AND s >= r}"
     real_defs nil)
    (int_max application-judgement "{k: int | i <= k AND j <= k}"
     real_defs nil)
    (real_lt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (real_gt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (int_plus_int_is_int application-judgement "int" integers nil))
   nil))
 (for_def_inv 0
  (for_def_inv-1 nil 3508245867
   ("" (induct "n")
    (("1" (grind) nil nil)
     ("2" (skeep)
      (("2" (skeep)
        (("2" (expand "for_def" 1 2)
          (("2" (expand "for_def" 1 1)
            (("2" (inst? -1) (("2" (assertnil nil)) nil)) nil))
          nil))
        nil))
      nil))
    nil)
   ((nat_induction formula-decl nil naturalnumbers nil)
    (+ const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (numfield nonempty-type-eq-decl nil number_fields nil)
    (for_def def-decl "T" for_iterate nil)
    (= const-decl "[T, T -> boolean]" equalities nil)
    (T formal-type-decl nil for_iterate nil)
    (pred type-eq-decl nil defined_types nil)
    (nat nonempty-type-eq-decl nil naturalnumbers nil)
    (>= const-decl "bool" reals nil)
    (bool nonempty-type-eq-decl nil booleans nil)
    (int nonempty-type-eq-decl nil integers nil)
    (integer_pred const-decl "[rational -> boolean]" integers nil)
    (rational nonempty-type-from-decl nil rationals nil)
    (rational_pred const-decl "[real -> boolean]" rationals nil)
    (real nonempty-type-from-decl nil reals nil)
    (real_pred const-decl "[number_field -> boolean]" reals nil)
    (number_field nonempty-type-from-decl nil number_fields nil)
    (number_field_pred const-decl "[number -> boolean]" number_fields
     nil)
    (boolean nonempty-type-decl nil booleans nil)
    (number nonempty-type-decl nil numbers nil)
    (int_plus_int_is_int application-judgement "int" integers nil))
   shostak))
 (for_shift 0
  (for_shift-1 nil 3508269371
   ("" (skosimp*)
    (("" (case "i!1 > j!1")
      (("1" (grind) nil nil)
       ("2"
        (case "FORALL(i:int,n:nat,shift:int,a:T,f:[[int,T]->T]):
      for_def(i,n+i,a,f) = for_def(i+shift,n+i+shift,a,LAMBDA (k:int,t:T): f(k-shift,t))")
        (("1" (inst -1 "i!1" "j!1-i!1" "shift!1" "a!1" "f!1")
          (("1" (assertnil nil) ("2" (assertnil nil)) nil)
         ("2" (hide 2 3)
          (("2" (induct "n")
            (("1" (grind) nil nil)
             ("2" (skolem 1 "n")
              (("2" (flatten)
                (("2" (skeep)
                  (("2" (expand "for_def" 1 2)
                    (("2" (inst? -1)
                      (("2" (replaces -1 :dir rl)
                        (("2" (expand "for_def" 1 1)
                          (("2" (propax) nil nil)) nil))
                        nil))
                      nil))
                    nil))
                  nil))
                nil))
              nil))
            nil))
          nil))
        nil))
      nil))
    nil)
   ((int nonempty-type-eq-decl nil integers nil)
    (integer_pred const-decl "[rational -> boolean]" integers nil)
    (rational nonempty-type-from-decl nil rationals nil)
    (rational_pred const-decl "[real -> boolean]" rationals nil)
    (> const-decl "bool" reals nil)
    (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)
    (real_gt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (int_plus_int_is_int application-judgement "int" integers nil)
    (for_def def-decl "T" for_iterate nil)
    (nat_induction formula-decl nil naturalnumbers nil)
    (pred type-eq-decl nil defined_types nil)
    (real_ge_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (j!1 skolem-const-decl "int" for_iterate nil)
    (i!1 skolem-const-decl "int" for_iterate nil)
    (int_minus_int_is_int application-judgement "int" integers nil)
    (>= const-decl "bool" reals nil)
    (nat nonempty-type-eq-decl nil naturalnumbers nil)
    (T formal-type-decl nil for_iterate 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)
    (- const-decl "[numfield, numfield -> numfield]" number_fields
       nil))
   shostak))
 (for_def_ext 0
  (for_def_ext-1 nil 3508368586
   ("" (skosimp*)
    (("" (case "i!1 > j!1")
      (("1" (grind) nil nil)
       ("2"
        (case "FORALL(i:int,n:nat,a:T,f,g:[[int,T]->T]) :
               (FORALL (x:subrange(i,i+n),t:T) : f(x,t) = g(x,t))
               IMPLIES
               for_def(i,i+n,a,f) = for_def(i,i+n,a,g)")
        (("1" (inst -1 "i!1" "j!1-i!1" "a!1" "f!1" "g!1")
          (("1" (assertnil nil) ("2" (assertnil nil)) nil)
         ("2" (hide-all-but 1)
          (("2" (induct "n")
            (("1" (grind) nil nil)
             ("2" (skolem 1 "n")
              (("2" (flatten)
                (("2" (skeep)
                  (("2" (expand "for_def" 1)
                    (("2" (inst -1 "i" "a" "f" "g")
                      (("2" (split -1)
                        (("1" (inst? -2) (("1" (assertnil nil)) nil)
                         ("2" (hide 2)
                          (("2" (skeep) (("2" (inst? -1) nil nil))
                            nil))
                          nil))
                        nil))
                      nil))
                    nil))
                  nil))
                nil))
              nil))
            nil))
          nil))
        nil))
      nil))
    nil)
   ((int nonempty-type-eq-decl nil integers nil)
    (integer_pred const-decl "[rational -> boolean]" integers nil)
    (rational nonempty-type-from-decl nil rationals nil)
    (rational_pred const-decl "[real -> boolean]" rationals nil)
    (> const-decl "bool" reals nil)
    (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)
    (real_gt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (for_def def-decl "T" for_iterate nil)
    (real_le_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (NOT const-decl "[bool -> bool]" booleans nil)
    (nat_induction formula-decl nil naturalnumbers nil)
    (pred type-eq-decl nil defined_types nil)
    (real_ge_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (int_minus_int_is_int application-judgement "int" integers nil)
    (- const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (j!1 skolem-const-decl "int" for_iterate nil)
    (i!1 skolem-const-decl "int" for_iterate nil)
    (int_plus_int_is_int application-judgement "int" integers nil)
    (>= const-decl "bool" reals nil)
    (nat nonempty-type-eq-decl nil naturalnumbers nil)
    (T formal-type-decl nil for_iterate nil)
    (IMPLIES const-decl "[bool, bool -> bool]" booleans nil)
    (AND const-decl "[bool, bool -> bool]" booleans nil)
    (<= const-decl "bool" reals nil)
    (numfield nonempty-type-eq-decl nil number_fields nil)
    (+ const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (subrange type-eq-decl nil integers nil)
    (= const-decl "[T, T -> boolean]" equalities nil))
   shostak))
 (for_def_induction_TCC1 0
  (for_def_induction_TCC1-1 nil 3508423656 ("" (subtype-tcc) nil nil)
   nil nil))
 (for_def_induction_TCC2 0
  (for_def_induction_TCC2-1 nil 3508423656 ("" (subtype-tcc) nil nil)
   nil nil))
 (for_def_induction_TCC3 0
  (for_def_induction_TCC3-1 nil 3509187055 ("" (subtype-tcc) nil nil)
   ((int_minus_int_is_int application-judgement "int" integers 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)
    (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)
    (real_lt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (rat_max application-judgement "{s: rat | s >= q AND s >= r}"
     real_defs nil)
    (int_max application-judgement "{k: int | i <= k AND j <= k}"
     real_defs nil)
    (real_ge_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (int_plus_int_is_int application-judgement "int" integers nil))
   nil))
 (for_def_induction 0
  (for_def_induction-1 nil 3508423656
   ("" (skosimp*)
    (("" (case "i!1 > j!1")
      (("1" (grind) nil nil)
       ("2"
        (case "FORALL (i: int, n: nat, a: T, f: [[int, T] -> T], inv: PRED[[nat,T]]):
                                                                          (inv(0,a) AND
                                                                            (FORALL (k:upto(n),ak:T):
                                                                               inv(k, ak) IMPLIES inv(k + 1,f(i+k,ak))))
                                                                           IMPLIES inv(n+1, for_def(i,i+n,a,f))")
        (("1" (inst -1 "i!1" "j!1-i!1" "a!1" "f!1" "inv!1")
          (("1" (assert)
            (("1" (expand "max")
              (("1" (assert)
                (("1" (skeep)
                  (("1" (inst? -) (("1" (assertnil nil)) nil)) nil))
                nil))
              nil))
            nil)
           ("2" (assertnil nil))
          nil)
         ("2" (hide-all-but 1)
          (("2" (induct "n")
            (("1" (grind) nil nil)
             ("2" (skolem 1 "n")
              (("2" (flatten)
                (("2" (skeep)
                  (("2" (copy -3)
                    (("2" (inst -1 "n+1" _)
                      (("2" (expand "for_def" 1)
                        (("2" (inst? -1)
                          (("2" (assert)
                            (("2" (hide 2)
                              (("2"
                                (inst? -1)
                                (("2"
                                  (assert)
                                  (("2"
                                    (skeep 2)
                                    (("2"
                                      (inst? -3)
                                      (("2" (assertnil nil))
                                      nil))
                                    nil))
                                  nil))
                                nil))
                              nil))
                            nil))
                          nil))
                        nil))
                      nil))
                    nil))
                  nil))
                nil))
              nil))
            nil))
          nil))
        nil))
      nil))
    nil)
   ((int nonempty-type-eq-decl nil integers nil)
    (integer_pred const-decl "[rational -> boolean]" integers nil)
    (rational nonempty-type-from-decl nil rationals nil)
    (rational_pred const-decl "[real -> boolean]" rationals nil)
    (> const-decl "bool" reals nil)
    (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)
    (real_gt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (int_max application-judgement "{k: int | i <= k AND j <= k}"
     real_defs nil)
    (rat_max application-judgement "{s: rat | s >= q AND s >= r}"
     real_defs nil)
    (int_plus_int_is_int application-judgement "int" integers nil)
    (real_lt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (for_def def-decl "T" for_iterate nil)
    (max const-decl "{p: real | p >= m AND p >= n}" real_defs nil)
    (odd_minus_odd_is_even application-judgement "even_int" integers
     nil)
    (even_minus_odd_is_odd application-judgement "odd_int" integers
     nil)
    (NOT const-decl "[bool -> bool]" booleans nil)
    (nat_induction formula-decl nil naturalnumbers nil)
    (pred type-eq-decl nil defined_types nil)
    (real_ge_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (- const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (j!1 skolem-const-decl "int" for_iterate nil)
    (i!1 skolem-const-decl "int" for_iterate nil)
    (posint_plus_nnint_is_posint application-judgement "posint"
     integers nil)
    (subrange type-eq-decl nil integers nil)
    (real_le_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (nnint_plus_posint_is_posint application-judgement "posint"
     integers nil)
    (>= const-decl "bool" reals nil)
    (nat nonempty-type-eq-decl nil naturalnumbers nil)
    (T formal-type-decl nil for_iterate nil)
    (PRED type-eq-decl nil defined_types nil)
    (IMPLIES const-decl "[bool, bool -> bool]" booleans nil)
    (AND const-decl "[bool, bool -> bool]" booleans nil)
    (<= const-decl "bool" reals nil)
    (upto nonempty-type-eq-decl nil naturalnumbers nil)
    (numfield nonempty-type-eq-decl nil number_fields nil)
    (+ const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (int_minus_int_is_int application-judgement "int" integers nil))
   nil))
 (ext2int_TCC1 0
  (ext2int_TCC1-1 nil 3508335744 ("" (subtype-tcc) 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)
    (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))
   nil))
 (for_it_TCC1 0
  (for_it_TCC1-1 nil 3509456106 ("" (subtype-tcc) nil nil)
   ((int_minus_int_is_int application-judgement "int" integers 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)
    (rational_pred const-decl "[real -> boolean]" rationals nil)
    (rational nonempty-type-from-decl nil rationals nil)
    (integer_pred const-decl "[rational -> boolean]" integers nil)
    (int nonempty-type-eq-decl nil integers nil)
    (>= const-decl "bool" reals nil)
    (upfrom nonempty-type-eq-decl nil integers nil)
    (real_ge_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (int_max application-judgement "{k: int | i <= k AND j <= k}"
     real_defs nil)
    (rat_max application-judgement "{s: rat | s >= q AND s >= r}"
     real_defs nil)
    (real_lt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (int_plus_int_is_int application-judgement "int" integers nil))
   nil))
 (for_it_TCC2 0
  (for_it_TCC2-2 nil 3509456480
   ("" (skeep) (("" (expand "for_def") (("" (assertnil nil)) nil))
    nil)
   ((for_def def-decl "T" for_iterate nil)
    (real_gt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil))
   nil)
  (for_it_TCC2-1 nil 3509456106 ("" (subtype-tcc) nil nilnil nil))
 (for_it_TCC3 0
  (for_it_TCC3-1 nil 3509456106 ("" (subtype-tcc) nil nilnil nil))
 (for_it_TCC4 0
  (for_it_TCC4-1 nil 3509456106 ("" (subtype-tcc) 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)
    (rational_pred const-decl "[real -> boolean]" rationals nil)
    (rational nonempty-type-from-decl nil rationals nil)
    (integer_pred const-decl "[rational -> boolean]" integers nil)
    (int nonempty-type-eq-decl nil integers nil)
    (>= const-decl "bool" reals nil)
    (upfrom nonempty-type-eq-decl nil integers nil)
    (real_le_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (real_gt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (real_ge_is_total_order name-judgement "(total_order?[real])"
     real_props nil))
   nil))
 (for_it_TCC5 0
  (for_it_TCC5-1 nil 3509456106 ("" (termination-tcc) 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)
    (rational_pred const-decl "[real -> boolean]" rationals nil)
    (rational nonempty-type-from-decl nil rationals nil)
    (integer_pred const-decl "[rational -> boolean]" integers nil)
    (int nonempty-type-eq-decl nil integers nil)
    (>= const-decl "bool" reals nil)
    (upfrom nonempty-type-eq-decl nil integers 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)
    (real_lt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (int_minus_int_is_int application-judgement "int" integers nil)
    (max const-decl "{p: real | p >= m AND p >= n}" real_defs nil)
    (int_plus_int_is_int application-judgement "int" integers nil))
   nil))
 (for_it_TCC6 0
  (for_it_TCC6-2 nil 3509456550
   ("" (skeep)
    (("" (typepred "v(upfrom, i + 1, upto, f(i, a), f)")
      (("" (lemma "for_def_inv")
        (("" (inst -1 "i" "upto-i" "a" "ext2int(upfrom,upto,f)")
          (("1" (assert)
            (("1" (expand "ext2int" -1 2) (("1" (assertnil nil))
              nil))
            nil)
           ("2" (assertnil nil))
          nil))
        nil))
      nil))
    nil)
   ((ext2int const-decl "T" for_iterate nil)
    (for_def def-decl "T" for_iterate 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)
    (max const-decl "{p: real | p >= m AND p >= n}" real_defs nil)
    (< const-decl "bool" reals nil)
    (ForBody type-eq-decl nil for_iterate nil)
    (subrange type-eq-decl nil integers nil)
    (<= const-decl "bool" reals nil)
    (AND const-decl "[bool, bool -> bool]" booleans nil)
    (upfrom nonempty-type-eq-decl nil integers nil)
    (>= const-decl "bool" reals nil)
    (integer_pred const-decl "[rational -> boolean]" integers nil)
    (rational nonempty-type-from-decl nil rationals nil)
    (rational_pred const-decl "[real -> boolean]" rationals nil)
    (real nonempty-type-from-decl nil reals nil)
    (real_pred const-decl "[number_field -> boolean]" reals nil)
    (number_field nonempty-type-from-decl nil number_fields nil)
    (number_field_pred const-decl "[number -> boolean]" number_fields
     nil)
    (number nonempty-type-decl nil numbers nil)
    (int nonempty-type-eq-decl nil integers nil)
    (= const-decl "[T, T -> boolean]" equalities nil)
    (T formal-type-decl nil for_iterate nil)
    (NOT const-decl "[bool -> bool]" booleans nil)
    (bool nonempty-type-eq-decl nil booleans nil)
    (boolean nonempty-type-decl nil booleans nil)
    (int_plus_int_is_int application-judgement "int" integers nil)
    (real_ge_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (upto skolem-const-decl "int" for_iterate nil)
    (upfrom skolem-const-decl "int" for_iterate nil)
    (i skolem-const-decl "upfrom(upfrom)" for_iterate nil)
    (nat nonempty-type-eq-decl nil naturalnumbers nil)
    (real_gt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (for_def_inv formula-decl nil for_iterate nil)
    (int_minus_int_is_int application-judgement "int" integers nil))
   nil)
  (for_it_TCC6-1 nil 3509456106 ("" (subtype-tcc) nil nilnil nil))
 (for_TCC1 0
  (for_TCC1-1 nil 3505588136 ("" (subtype-tcc) nil nilnil nil))
 (for_eq 0
  (for_eq-1 nil 3508252057
   ("" (skeep)
    (("" (expand "for")
      (("" (typepred "for_it(i,i,j,a,f)") (("" (propax) nil nil)) nil))
      nil))
    nil)
   ((for const-decl "T" for_iterate nil)
    (boolean nonempty-type-decl nil booleans nil)
    (bool nonempty-type-eq-decl nil booleans nil)
    (NOT const-decl "[bool -> bool]" booleans nil)
    (T formal-type-decl nil for_iterate nil)
    (= const-decl "[T, T -> boolean]" equalities nil)
    (int nonempty-type-eq-decl nil integers 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)
    (rational_pred const-decl "[real -> boolean]" rationals nil)
    (rational nonempty-type-from-decl nil rationals nil)
    (integer_pred const-decl "[rational -> boolean]" integers nil)
    (>= const-decl "bool" reals nil)
    (upfrom nonempty-type-eq-decl nil integers nil)
    (AND const-decl "[bool, bool -> bool]" booleans nil)
    (<= const-decl "bool" reals nil)
    (subrange type-eq-decl nil integers nil)
    (ForBody type-eq-decl nil for_iterate nil)
    (for_def def-decl "T" for_iterate nil)
    (ext2int const-decl "T" for_iterate nil)
    (for_it def-decl
     "{t: T | t = for_def(i, upto, a, ext2int(upfrom, upto, f))}"
     for_iterate nil))
   shostak))
 (for_induction_TCC1 0
  (for_induction_TCC1-1 nil 3508423933 ("" (subtype-tcc) nil nil)
   ((int_plus_int_is_int application-judgement "int" integers nil))
   nil))
 (for_induction_TCC2 0
  (for_induction_TCC2-1 nil 3508423933 ("" (subtype-tcc) nil nil)
   ((int_plus_int_is_int application-judgement "int" integers nil))
   nil))
 (for_induction_TCC3 0
  (for_induction_TCC3-1 nil 3509180332 ("" (subtype-tcc) nil nil)
   ((int_plus_int_is_int application-judgement "int" integers nil))
   nil))
 (for_induction_TCC4 0
  (for_induction_TCC4-1 nil 3509180332
   ("" (subtype-tcc) (("" (grind) nil nil)) nilnil nil))
 (for_induction_TCC5 0
  (for_induction_TCC5-1 nil 3522757770 ("" (subtype-tcc) nil nil)
   ((int_plus_int_is_int application-judgement "int" integers nil))
   nil))
 (for_induction 0
  (for_induction-1 nil 3508424040
   ("" (skeep)
    (("" (case "n >= m")
      (("1" (rewrite "for_eq")
        (("1" (lemma "for_def_induction")
          (("1"
            (inst -1 "m" "n" "init" "ext2int(m,n,f)"
             "LAMBDA(k:nat,ak:T): k > n-m+1 OR inv(k,ak)")
            (("1" (assert)
              (("1" (expand "max")
                (("1" (expand "ext2int") (("1" (propax) nil nil)) nil))
                nil))
              nil)
             ("2" (hide-all-but 1)
              (("2" (skosimp) (("2" (assertnil nil)) nil)) nil))
            nil))
          nil))
        nil)
       ("2" (expand "for")
        (("2" (expand "for_it") (("2" (assertnil nil)) nil)) nil))
      nil))
    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)
    (>= 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)
    (for_def_induction formula-decl nil for_iterate nil)
    (real_le_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (real_gt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (real_ge_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (max const-decl "{p: real | p >= m AND p >= n}" real_defs nil)
    (upto nonempty-type-eq-decl nil naturalnumbers nil)
    (OR const-decl "[bool, bool -> bool]" booleans nil)
    (PRED type-eq-decl nil defined_types nil)
    (ext2int const-decl "T" for_iterate nil)
    (nat nonempty-type-eq-decl nil naturalnumbers nil)
    (IMPLIES const-decl "[bool, bool -> bool]" booleans nil)
    (NOT const-decl "[bool -> bool]" booleans nil)
    (> const-decl "bool" reals nil)
    (+ const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (m skolem-const-decl "int" for_iterate nil)
    (n skolem-const-decl "{n: int | n >= m - 1}" for_iterate nil)
    (int_plus_int_is_int application-judgement "int" integers nil)
    (ForBody type-eq-decl nil for_iterate nil)
    (subrange type-eq-decl nil integers nil)
    (<= const-decl "bool" reals nil)
    (AND const-decl "[bool, bool -> bool]" booleans nil)
    (T formal-type-decl nil for_iterate nil)
    (for_eq formula-decl nil for_iterate nil)
    (for_it def-decl
     "{t: T | t = for_def(i, upto, a, ext2int(upfrom, upto, f))}"
     for_iterate nil)
    (for const-decl "T" for_iterate nil)
    (int_minus_int_is_int application-judgement "int" integers nil))
   shostak))
 (for_down_def_TCC1 0
  (for_down_def_TCC1-1 nil 3508264810 ("" (subtype-tcc) nil nil)
   ((int_minus_int_is_int application-judgement "int" integers 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)
    (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)
    (real_ge_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (int_max application-judgement "{k: int | i <= k AND j <= k}"
     real_defs nil)
    (rat_max application-judgement "{s: rat | s >= q AND s >= r}"
     real_defs nil)
    (real_lt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (int_plus_int_is_int application-judgement "int" integers nil))
   nil))
 (for_down_def_TCC2 0
  (for_down_def_TCC2-1 nil 3508264810 ("" (subtype-tcc) nil nil)
   ((int_minus_int_is_int application-judgement "int" integers 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)
    (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)
    (max const-decl "{p: real | p >= m AND p >= n}" real_defs nil)
    (rat_max application-judgement "{s: rat | s >= q AND s >= r}"
     real_defs nil)
    (int_max application-judgement "{k: int | i <= k AND j <= k}"
     real_defs nil)
    (real_lt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (int_plus_int_is_int application-judgement "int" integers nil))
   nil))
 (for_down_def_ext 0
  (for_down_def_ext-1 nil 3508369533
   ("" (skosimp*)
    (("" (case "i!1 < j!1")
      (("1" (grind) nil nil)
       ("2"
        (case "FORALL(i:int,n:nat,a:T,f,g:[[int,T]->T]) :
                                 (FORALL (x:subrange(i-n,i),t:T) : f(x,t) = g(x,t))
                                 IMPLIES
                                 for_down_def(i,i-n,a,f) = for_down_def(i,i-n,a,g)")
        (("1" (inst -1 "i!1" "i!1-j!1" "a!1" "f!1" "g!1")
          (("1" (assertnil nil) ("2" (assertnil nil)) nil)
         ("2" (hide-all-but 1)
          (("2" (induct "n")
            (("1" (grind) nil nil)
             ("2" (skolem 1 "n")
              (("2" (flatten)
                (("2" (skeep)
                  (("2" (expand "for_down_def" 1)
                    (("2" (inst -1 "i" "a" "f" "g")
                      (("2" (split -1)
                        (("1" (inst? -2) (("1" (assertnil nil)) nil)
                         ("2" (hide 2)
                          (("2" (skeep) (("2" (inst? -1) nil nil))
                            nil))
                          nil))
                        nil))
                      nil))
                    nil))
                  nil))
                nil))
              nil))
            nil))
          nil))
        nil))
      nil))
    nil)
   ((int nonempty-type-eq-decl nil integers nil)
    (integer_pred const-decl "[rational -> boolean]" integers nil)
    (rational nonempty-type-from-decl nil rationals nil)
    (rational_pred const-decl "[real -> boolean]" rationals nil)
    (< const-decl "bool" reals nil)
    (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)
    (real_lt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (for_down_def def-decl "T" for_iterate nil)
    (int_plus_int_is_int application-judgement "int" integers nil)
    (+ const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (real_le_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (NOT const-decl "[bool -> bool]" booleans nil)
    (nat_induction formula-decl nil naturalnumbers nil)
    (pred type-eq-decl nil defined_types nil)
    (real_ge_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (i!1 skolem-const-decl "int" for_iterate nil)
    (j!1 skolem-const-decl "int" for_iterate nil)
    (int_minus_int_is_int application-judgement "int" integers nil)
    (>= const-decl "bool" reals nil)
    (nat nonempty-type-eq-decl nil naturalnumbers nil)
    (T formal-type-decl nil for_iterate nil)
    (IMPLIES const-decl "[bool, bool -> bool]" booleans nil)
    (AND const-decl "[bool, bool -> bool]" booleans nil)
    (<= const-decl "bool" reals nil)
    (numfield nonempty-type-eq-decl nil number_fields nil)
    (- const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (subrange type-eq-decl nil integers nil)
    (= const-decl "[T, T -> boolean]" equalities nil))
   nil))
 (for_down_up 0
  (for_down_up-1 nil 3508359211
   ("" (skosimp*)
    (("" (case "i!1 < j!1")
      (("1" (grind) nil nil)
       ("2"
        (case "FORALL (i:int, n:nat, a: T, f: [[int, T] -> T]):
                 for_down_def(i, i-n, a, f) =
                  for_def(i-n, i, a, LAMBDA (k: int, t: T): f(2*i - k - n, t))")
        (("1" (inst -1 "i!1" "i!1-j!1" "a!1" "f!1")
          (("1" (assertnil nil) ("2" (assertnil nil)) nil)
         ("2" (hide 2 3)
          (("2" (induct "n")
            (("1" (grind) nil nil)
             ("2" (skolem 1 "n")
              (("2" (flatten)
                (("2" (skeep)
                  (("2" (expand "for_down_def" 1)
                    (("2" (inst? -1)
                      (("2" (replaces -1)
                        (("2" (expand "for_def" 1 2)
                          (("2" (lemma "for_shift")
                            (("2" (inst? -1)
                              (("2"
                                (inst -1 "-1")
                                (("2" (assertnil nil))
                                nil))
                              nil))
                            nil))
                          nil))
                        nil))
                      nil))
                    nil))
                  nil))
                nil))
              nil))
            nil))
          nil))
        nil))
      nil))
    nil)
   ((int nonempty-type-eq-decl nil integers nil)
    (integer_pred const-decl "[rational -> boolean]" integers nil)
    (rational nonempty-type-from-decl nil rationals nil)
    (rational_pred const-decl "[real -> boolean]" rationals nil)
    (< const-decl "bool" reals nil)
    (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)
    (real_lt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (real_gt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (for_def def-decl "T" for_iterate nil)
    (for_down_def def-decl "T" for_iterate nil)
    (int_plus_int_is_int application-judgement "int" integers nil)
    (mult_divides2 application-judgement "(divides(m))" divides nil)
    (mult_divides1 application-judgement "(divides(n))" divides nil)
    (even_times_int_is_even application-judgement "even_int" integers
     nil)
    (+ const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (- const-decl "[numfield -> numfield]" number_fields nil)
    (minus_odd_is_odd application-judgement "odd_int" integers nil)
    (for_shift formula-decl nil for_iterate nil)
    (nat_induction formula-decl nil naturalnumbers nil)
    (pred type-eq-decl nil defined_types nil)
    (real_ge_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (i!1 skolem-const-decl "int" for_iterate nil)
    (j!1 skolem-const-decl "int" for_iterate nil)
    (int_minus_int_is_int application-judgement "int" integers nil)
    (>= const-decl "bool" reals nil)
    (nat nonempty-type-eq-decl nil naturalnumbers nil)
    (T formal-type-decl nil for_iterate 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)
    (* const-decl "[numfield, numfield -> numfield]" number_fields
       nil))
   shostak))
 (for_down_def_induction_TCC1 0
  (for_down_def_induction_TCC1-1 nil 3508440158
   ("" (subtype-tcc) nil nilnil nil))
 (for_down_def_induction_TCC2 0
  (for_down_def_induction_TCC2-1 nil 3508440158
   ("" (subtype-tcc) nil nilnil nil))
 (for_down_def_induction_TCC3 0
  (for_down_def_induction_TCC3-1 nil 3509187311
   ("" (subtype-tcc) nil nil)
   ((int_minus_int_is_int application-judgement "int" integers 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)
    (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)
    (real_lt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (rat_max application-judgement "{s: rat | s >= q AND s >= r}"
     real_defs nil)
    (int_max application-judgement "{k: int | i <= k AND j <= k}"
     real_defs nil)
    (real_ge_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (int_plus_int_is_int application-judgement "int" integers nil))
   nil))
 (for_down_def_induction 0
  (for_down_def_induction-1 nil 3508440185
   ("" (skeep)
    (("" (rewrite "for_down_up")
      (("" (lemma "for_def_induction")
        (("" (inst?) (("" (assertnil nil)) nil)) nil))
      nil))
    nil)
   ((for_down_up formula-decl nil for_iterate 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)
    (T formal-type-decl nil for_iterate nil)
    (int_plus_int_is_int application-judgement "int" integers 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)
    (bool nonempty-type-eq-decl nil booleans nil)
    (>= const-decl "bool" reals nil)
    (nat nonempty-type-eq-decl nil naturalnumbers nil)
    (PRED type-eq-decl nil defined_types nil)
    (int_max application-judgement "{k: int | i <= k AND j <= k}"
     real_defs nil)
    (rat_max application-judgement "{s: rat | s >= q AND s >= r}"
     real_defs nil)
    (for_def_induction formula-decl nil for_iterate nil)
    (int_minus_int_is_int application-judgement "int" integers nil))
   shostak))
 (for_down_TCC1 0
  (for_down_TCC1-1 nil 3508265468 ("" (subtype-tcc) nil nil)
   ((int_plus_int_is_int application-judgement "int" integers nil))
   nil))
 (for_down_induction_TCC1 0
  (for_down_induction_TCC1-1 nil 3508440597 ("" (subtype-tcc) nil nil)
   ((int_plus_int_is_int application-judgement "int" integers nil))
   nil))
 (for_down_induction_TCC2 0
  (for_down_induction_TCC2-1 nil 3508440597 ("" (subtype-tcc) nil nil)
   ((int_plus_int_is_int application-judgement "int" integers nil))
   nil))
 (for_down_induction_TCC3 0
  (for_down_induction_TCC3-1 nil 3509181991 ("" (subtype-tcc) nil nil)
   ((int_plus_int_is_int application-judgement "int" integers nil))
   nil))
 (for_down_induction_TCC4 0
  (for_down_induction_TCC4-1 nil 3509181991
   ("" (subtype-tcc) (("" (grind) nil nil)) nilnil nil))
 (for_down_induction_TCC5 0
  (for_down_induction_TCC5-1 nil 3522761922 ("" (subtype-tcc) nil nil)
   ((int_plus_int_is_int application-judgement "int" integers nil))
   nil))
 (for_down_induction 0
  (for_down_induction-2 nil 3508440626
   ("" (skeep)
    (("" (expand "for_down")
      (("" (lemma "for_induction")
        (("" (inst?) (("" (assertnil nil)) nil)) nil))
      nil))
    nil)
   ((for_down const-decl "T" for_iterate nil)
    (real_ge_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (int_plus_int_is_int application-judgement "int" integers nil)
    (minus_odd_is_odd application-judgement "odd_int" integers nil)
    (number nonempty-type-decl nil numbers nil)
    (boolean nonempty-type-decl nil booleans nil)
    (number_field_pred const-decl "[number -> boolean]" number_fields
     nil)
    (number_field nonempty-type-from-decl nil number_fields nil)
    (real_pred const-decl "[number_field -> boolean]" reals nil)
    (real nonempty-type-from-decl nil reals nil)
    (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)
    (numfield nonempty-type-eq-decl nil number_fields nil)
    (+ const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (>= const-decl "bool" reals nil)
    (- const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (T formal-type-decl nil for_iterate nil)
    (AND const-decl "[bool, bool -> bool]" booleans nil)
    (subrange type-eq-decl nil integers nil)
    (ForBody type-eq-decl nil for_iterate nil)
    (nat nonempty-type-eq-decl nil naturalnumbers nil)
    (upto nonempty-type-eq-decl nil naturalnumbers nil)
    (PRED type-eq-decl nil defined_types nil)
    (for_induction formula-decl nil for_iterate nil)
    (int_minus_int_is_int application-judgement "int" integers nil))
   nil)
  (for_down_induction-1 nil 3508440598 ("" (postpone) nil nilnil
   shostak))
 (for_down_eq 0
  (for_down_eq-1 nil 3508265817
   ("" (skeep)
    (("" (expand "for_down")
      (("" (rewrite "for_eq")
        (("" (lemma "for_down_up")
          (("" (inst?)
            ((""
              (case "(LAMBDA (k: int, t: T): ext2int(j, i, f)(i - k + j, t)) = ext2int(j, i,
                        LAMBDA (k: subrange(j, i), t: T): f(i - k + j, t))")
              (("1" (assertnil nil)
               ("2" (hide-all-but 1)
                (("2" (decompose-equality 1) (("2" (grind) nil nil))
                  nil))
                nil))
              nil))
            nil))
          nil))
        nil))
      nil))
    nil)
   ((for_down const-decl "T" for_iterate nil)
    (for_down_up formula-decl nil for_iterate nil)
    (= const-decl "[T, T -> boolean]" equalities nil)
    (real_le_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (ext2int const-decl "T" for_iterate 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)
    (ForBody type-eq-decl nil for_iterate nil)
    (subrange type-eq-decl nil integers nil)
    (<= const-decl "bool" reals nil)
    (AND const-decl "[bool, bool -> bool]" booleans nil)
    (bool nonempty-type-eq-decl nil booleans nil)
    (T formal-type-decl nil for_iterate 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)
    (for_eq formula-decl nil for_iterate nil)
    (int_plus_int_is_int application-judgement "int" integers nil)
    (int_minus_int_is_int application-judgement "int" integers nil))
   shostak))
 (iterate_left_def_TCC1 0
  (iterate_left_def_TCC1-1 nil 3508252462 ("" (subtype-tcc) nil nil)
   nil nil))
 (iterate_left_def_TCC2 0
  (iterate_left_def_TCC2-1 nil 3508252462 ("" (subtype-tcc) 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)
    (rational_pred const-decl "[real -> boolean]" rationals nil)
    (rational nonempty-type-from-decl nil rationals nil)
    (integer_pred const-decl "[rational -> boolean]" integers nil)
    (int nonempty-type-eq-decl nil integers nil)
    (>= const-decl "bool" reals nil)
    (upfrom nonempty-type-eq-decl nil integers nil)
    (int_minus_int_is_int application-judgement "int" integers nil)
    (real_ge_is_total_order name-judgement "(total_order?[real])"
     real_props nil))
   nil))
 (iterate_left_def_TCC3 0
  (iterate_left_def_TCC3-1 nil 3508252462 ("" (subtype-tcc) nil nil)
   ((int_minus_int_is_int application-judgement "int" integers nil))
   nil))
 (iterate_left_def_ext 0
  (iterate_left_def_ext-1 nil 3508370001
   ("" (skosimp*)
    ((""
      (case "FORALL(i:int,n:nat,f,g:[int->T],o:[[T,T]->T]) :
                                               (FORALL (x:subrange(i,i+n)) : f(x) = g(x))
                                               IMPLIES
                                               iterate_left_def(i,i+n,f,o) = iterate_left_def(i,i+n,g,o)")
      (("1" (inst -1 "i!1" "j!1-i!1" "f!1" "g!1" "oh!1")
        (("1" (assertnil nil)) nil)
       ("2" (hide-all-but 1)
        (("2" (induct "n")
          (("1" (grind) nil nil)
           ("2" (skolem 1 "n")
            (("2" (flatten)
              (("2" (skeep)
                (("2" (expand "iterate_left_def" 1)
                  (("2" (inst -1 "i" "f" "g" "o")
                    (("2" (split -1)
                      (("1" (inst? -2) (("1" (assertnil nil)) nil)
                       ("2" (hide 2)
                        (("2" (skeep) (("2" (inst? -1) nil nil)) nil))
                        nil))
                      nil))
                    nil))
                  nil))
                nil))
              nil))
            nil))
          nil))
        nil))
      nil))
    nil)
   ((iterate_left_def def-decl "T" for_iterate nil)
    (upfrom nonempty-type-eq-decl nil integers nil)
    (= const-decl "[T, T -> boolean]" equalities nil)
    (subrange type-eq-decl nil integers nil)
    (+ const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (numfield nonempty-type-eq-decl nil number_fields nil)
    (<= const-decl "bool" reals nil)
    (AND const-decl "[bool, bool -> bool]" booleans nil)
    (IMPLIES const-decl "[bool, bool -> bool]" booleans nil)
    (T formal-type-decl nil for_iterate nil)
    (nat nonempty-type-eq-decl nil naturalnumbers nil)
    (>= const-decl "bool" reals nil)
    (bool nonempty-type-eq-decl nil booleans nil)
    (int nonempty-type-eq-decl nil integers nil)
    (integer_pred const-decl "[rational -> boolean]" integers nil)
    (rational nonempty-type-from-decl nil rationals nil)
    (rational_pred const-decl "[real -> boolean]" rationals nil)
    (real nonempty-type-from-decl nil reals nil)
    (real_pred const-decl "[number_field -> boolean]" reals nil)
    (number_field nonempty-type-from-decl nil number_fields nil)
    (number_field_pred const-decl "[number -> boolean]" number_fields
     nil)
    (boolean nonempty-type-decl nil booleans nil)
    (number nonempty-type-decl nil numbers nil)
    (int_plus_int_is_int application-judgement "int" integers nil)
    (- const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (int_minus_int_is_int application-judgement "int" integers nil)
    (real_ge_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (pred type-eq-decl nil defined_types nil)
    (nat_induction formula-decl nil naturalnumbers nil)
    (NOT const-decl "[bool -> bool]" booleans nil)
    (real_le_is_total_order name-judgement "(total_order?[real])"
     real_props nil))
   nil))
 (ext2int_TCC2 0
  (ext2int_TCC2-1 nil 3558204382 ("" (subtype-tcc) 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)
    (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))
   nil))
 (iterate_left_TCC1 0
  (iterate_left_TCC1-1 nil 3508332707 ("" (subtype-tcc) nil nilnil
   nil))
 (iterate_left_TCC2 0
  (iterate_left_TCC2-1 nil 3508362054 ("" (subtype-tcc) nil nilnil
   nil))
 (iterate_left_eq 0
  (iterate_left_eq-1 nil 3508252515
   (""
    (case "FORALL (i:int, n: nat, f:IterateBody(i,i+n), o: [[T, T] -> T]):
                                                                iterate_left(i,i+n,f,o) =
                                                                 iterate_left_def(i,i+n,ext2int(i,i+n,f(i),f),o)")
    (("1" (skosimp)
      (("1" (inst -1 "i!1" "j!1-i!1" "f!1" "oh!1")
        (("1" (assertnil nil)) nil))
      nil)
     ("2" (hide 2)
      (("2" (induct "n")
        (("1" (grind) nil nil)
         ("2" (skolem 1 "n")
          (("2" (flatten)
            (("2" (skeep)
              (("2" (expand "iterate_left_def" 1)
                (("2"
                  (inst -1 "i" "LAMBDA(k:subrange(i,i+n)):f(k)" "o")
                  (("2" (expand "ext2int" 1 2)
                    (("2" (lemma "iterate_left_def_ext")
                      (("2" (inst? -1)
                        (("2"
                          (inst -1 "ext2int(i, 1 + i + n, f(i), f)")
                          (("2" (split -1)
                            (("1" (replaces -1)
                              (("1"
                                (replaces -1 :dir rl)
                                (("1"
                                  (expand "iterate_left")
                                  (("1"
                                    (rewrite "for_eq")
                                    (("1"
                                      (expand "for_def")
                                      (("1"
                                        (expand "ext2int" 1 1)
                                        (("1"
                                          (rewrite "for_eq")
                                          (("1"
                                            (lemma "for_def_ext")
                                            (("1"
                                              (inst?)
                                              (("1"
                                                (inst
                                                 -1
                                                 "ext2int(1 + i, i + n,
                               LAMBDA (k_1: subrange(1 + i, i + n), t: T):
                                 t o f(k_1))")
                                                (("1"
                                                  (split -1)
                                                  (("1"
                                                    (assert)
                                                    nil
                                                    nil)
                                                   ("2"
                                                    (hide 2)
                                                    (("2"
                                                      (skeep)
                                                      (("2"
                                                        (expand
                                                         "ext2int")
                                                        (("2"
                                                          (propax)
                                                          nil
                                                          nil))
                                                        nil))
                                                      nil))
                                                    nil))
                                                  nil))
                                                nil))
                                              nil))
                                            nil))
                                          nil))
                                        nil))
                                      nil))
                                    nil))
                                  nil))
                                nil))
                              nil)
                             ("2" (hide-all-but 1)
                              (("2"
                                (skeep)
                                (("2"
                                  (expand "ext2int")
                                  (("2" (propax) nil nil))
                                  nil))
                                nil))
                              nil))
                            nil))
                          nil))
                        nil))
                      nil))
                    nil))
                  nil))
                nil))
              nil))
            nil))
          nil))
        nil))
      nil))
    nil)
   ((iterate_left_def_ext formula-decl nil for_iterate nil)
    (for_def def-decl "T" for_iterate nil)
    (for_def_ext formula-decl nil for_iterate nil)
    (ext2int const-decl "T" for_iterate nil)
    (for_eq formula-decl nil for_iterate nil)
    (ForBody type-eq-decl nil for_iterate nil)
    (for_it def-decl
     "{t: T | t = for_def(i, upto, a, ext2int(upfrom, upto, f))}"
     for_iterate nil)
    (for const-decl "T" for_iterate nil)
    (nat_induction formula-decl nil naturalnumbers nil)
    (pred type-eq-decl nil defined_types nil)
    (- const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (int_minus_int_is_int application-judgement "int" integers nil)
    (real_ge_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (int_plus_int_is_int application-judgement "int" integers nil)
    (number nonempty-type-decl nil numbers nil)
    (boolean nonempty-type-decl nil booleans nil)
    (number_field_pred const-decl "[number -> boolean]" number_fields
     nil)
    (number_field nonempty-type-from-decl nil number_fields nil)
    (real_pred const-decl "[number_field -> boolean]" reals nil)
    (real nonempty-type-from-decl nil reals nil)
    (rational_pred const-decl "[real -> boolean]" rationals nil)
    (rational nonempty-type-from-decl nil rationals nil)
    (integer_pred const-decl "[rational -> boolean]" integers nil)
    (int nonempty-type-eq-decl nil integers nil)
    (bool nonempty-type-eq-decl nil booleans nil)
    (>= const-decl "bool" reals nil)
    (nat nonempty-type-eq-decl nil naturalnumbers nil)
    (AND const-decl "[bool, bool -> bool]" booleans nil)
    (<= const-decl "bool" reals nil)
    (numfield nonempty-type-eq-decl nil number_fields nil)
    (+ const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (subrange type-eq-decl nil integers nil)
    (T formal-type-decl nil for_iterate nil)
    (IterateBody type-eq-decl nil for_iterate nil)
    (= const-decl "[T, T -> boolean]" equalities nil)
    (upfrom nonempty-type-eq-decl nil integers nil)
    (iterate_left const-decl "T" for_iterate nil)
    (iterate_left_def def-decl "T" for_iterate nil)
    (ext2int const-decl "T" for_iterate nil))
   nil))
 (iterate_left_induction_TCC1 0
  (iterate_left_induction_TCC1-1 nil 3508459075
   ("" (subtype-tcc) nil nilnil nil))
 (iterate_left_induction_TCC2 0
  (iterate_left_induction_TCC2-1 nil 3509182065
   ("" (subtype-tcc) nil nilnil nil))
 (iterate_left_induction_TCC3 0
  (iterate_left_induction_TCC3-1 nil 3509182065
   ("" (subtype-tcc) nil nilnil nil))
 (iterate_left_induction_TCC4 0
  (iterate_left_induction_TCC4-1 nil 3509182065
   ("" (subtype-tcc) nil nil)
   ((posint_plus_nnint_is_posint application-judgement "posint"
     integers nil))
   nil))
 (iterate_left_induction_TCC5 0
  (iterate_left_induction_TCC5-1 nil 3509182065
   ("" (subtype-tcc) nil nil)
   ((posint_plus_nnint_is_posint application-judgement "posint"
     integers nil))
   nil))
 (iterate_left_induction 0
  (iterate_left_induction-1 nil 3508459230
   ("" (skeep)
    (("" (expand "iterate_left")
      (("" (lemma "for_induction")
        (("" (inst?)
          (("" (inst?)
            (("" (assert)
              (("" (case-replace "max(0,n-m) = n-m")
                (("1" (hide -1)
                  (("1" (hide-all-but (-2 1))
                    (("1" (skeep)
                      (("1" (inst? -2) (("1" (assertnil nil)) nil))
                      nil))
                    nil))
                  nil)
                 ("2" (hide-all-but 1) (("2" (grind) nil nil)) nil))
                nil))
              nil))
            nil))
          nil))
        nil))
      nil))
    nil)
   ((iterate_left const-decl "T" for_iterate nil)
    (int_plus_int_is_int application-judgement "int" integers nil)
    (nnint_plus_posint_is_posint application-judgement "posint"
     integers nil)
    (minus_odd_is_odd application-judgement "odd_int" integers nil)
    (int_minus_int_is_int application-judgement "int" integers nil)
    (number nonempty-type-decl nil numbers nil)
    (boolean nonempty-type-decl nil booleans nil)
    (number_field_pred const-decl "[number -> boolean]" number_fields
     nil)
    (number_field nonempty-type-from-decl nil number_fields nil)
    (real_pred const-decl "[number_field -> boolean]" reals nil)
    (real nonempty-type-from-decl nil reals nil)
    (rational_pred const-decl "[real -> boolean]" rationals nil)
    (rational nonempty-type-from-decl nil rationals nil)
    (integer_pred const-decl "[rational -> boolean]" integers nil)
    (int nonempty-type-eq-decl nil integers nil)
    (numfield nonempty-type-eq-decl nil number_fields nil)
    (+ const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (bool nonempty-type-eq-decl nil booleans nil)
    (>= const-decl "bool" reals nil)
    (- const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (upfrom nonempty-type-eq-decl nil integers nil)
    (T formal-type-decl nil for_iterate nil)
    (AND const-decl "[bool, bool -> bool]" booleans nil)
    (<= const-decl "bool" reals nil)
    (subrange type-eq-decl nil integers nil)
    (IterateBody type-eq-decl nil for_iterate nil)
    (ForBody type-eq-decl nil for_iterate nil)
    (posint_plus_nnint_is_posint application-judgement "posint"
     integers nil)
    (< const-decl "bool" reals nil)
    (below type-eq-decl nil naturalnumbers nil)
    (real_ge_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (real_lt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (int_max application-judgement "{k: int | i <= k AND j <= k}"
     real_defs nil)
    (rat_max application-judgement "{s: rat | s >= q AND s >= r}"
     real_defs nil)
    (= const-decl "[T, T -> boolean]" equalities nil)
    (max const-decl "{p: real | p >= m AND p >= n}" real_defs nil)
    (nat nonempty-type-eq-decl nil naturalnumbers nil)
    (upto nonempty-type-eq-decl nil naturalnumbers nil)
    (PRED type-eq-decl nil defined_types nil)
    (for_induction formula-decl nil for_iterate nil))
   shostak))
 (iterate_right_def_TCC1 0
  (iterate_right_def_TCC1-1 nil 3508253149 ("" (subtype-tcc) 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)
    (rational_pred const-decl "[real -> boolean]" rationals nil)
    (rational nonempty-type-from-decl nil rationals nil)
    (integer_pred const-decl "[rational -> boolean]" integers nil)
    (int nonempty-type-eq-decl nil integers nil)
    (>= const-decl "bool" reals nil)
    (upfrom nonempty-type-eq-decl nil integers nil)
    (int_plus_int_is_int application-judgement "int" integers nil)
    (real_ge_is_total_order name-judgement "(total_order?[real])"
     real_props nil))
   nil))
 (iterate_right_def_TCC2 0
  (iterate_right_def_TCC2-1 nil 3508253149 ("" (subtype-tcc) nil nil)
   ((int_plus_int_is_int application-judgement "int" integers nil)
    (int_minus_int_is_int application-judgement "int" integers nil))
   nil))
 (iterate_right_def_ext 0
  (iterate_right_def_ext-1 nil 3508370279
   ("" (skosimp*)
    ((""
      (case "FORALL(n:nat,j:int,f,g:[int->T],o:[[T,T]->T]) :
                                                      (FORALL (x:subrange(j-n,j)) : f(x) = g(x))
                                                      IMPLIES
--> --------------------

--> maximum size reached

--> --------------------

¤ Dauer der Verarbeitung: 0.86 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