Anforderungen  |   Konzepte  |   Entwurf  |   Entwicklung  |   Qualitätssicherung  |   Lebenszyklus  |   Steuerung
 
 
 
 


Quellcode-Bibliothek

© Kompilation durch diese Firma

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

Datei: Ackermann.thy   Sprache: PVS

Untersuchung PVS©

(csequence_merge
 (merge_struct_TCC1 0
  (merge_struct_TCC1-1 nil 3513693179 ("" (subtype-tcc) nil nilnil
   nil))
 (merge_struct_TCC2 0
  (merge_struct_TCC2-1 nil 3513693179 ("" (subtype-tcc) nil nilnil
   nil))
 (merge_empty 0
  (merge_empty-1 nil 3513693197
   ("" (expand"merge" "merge_struct" "coreduce")
    (("" (reduce) nil nil)) nil)
   ((merge const-decl "csequence" csequence_merge nil)
    (coreduce adt-def-decl "{c: csequence[T] |
         inj_empty?(op(x)) AND empty?(c) OR
          inj_nonempty?(op(x)) AND nonempty?(c)}"
     csequence_codt_coreduce nil)
    (merge_struct const-decl "csequence_struct" csequence_merge nil))
   shostak))
 (merge_nonempty 0
  (merge_nonempty-1 nil 3513693216
   ("" (expand"merge" "merge_struct" "coreduce")
    (("" (reduce) nil nil)) nil)
   ((merge const-decl "csequence" csequence_merge nil)
    (coreduce adt-def-decl "{c: csequence[T] |
         inj_empty?(op(x)) AND empty?(c) OR
          inj_nonempty?(op(x)) AND nonempty?(c)}"
     csequence_codt_coreduce nil)
    (merge_struct const-decl "csequence_struct" csequence_merge nil))
   shostak))
 (merge_empty_left 0
  (merge_empty_left-1 nil 3513693224
   ("" (skolem!)
    (("" (lemma "coinduction")
      ((""
        (inst -
         "LAMBDA cseq1, cseq2: cseq1 = merge(cseq2, eseq!1) OR cseq1 = merge(eseq!1, cseq2)"
         "merge(eseq!1, cseq!1)" "cseq!1")
        (("" (delete 2)
          (("" (expand "bisimulation?")
            (("" (skosimp)
              (("" (smash)
                (("1" (expand"merge" "merge_struct" "coreduce"nil
                  nil)
                 ("2" (expand"merge" "merge_struct" "coreduce"nil
                  nil)
                 ("3" (replace -1)
                  (("3" (hide -1)
                    (("3" (expand"merge" "merge_struct")
                      (("3" (expand "coreduce" 1 1)
                        (("3" (expand "coreduce" 2 1)
                          (("3" (expand "coreduce" -)
                            (("3" (reduce) nil nil)) nil))
                          nil))
                        nil))
                      nil))
                    nil))
                  nil)
                 ("4" (expand"merge" "merge_struct" "coreduce")
                  (("4" (reduce) nil nil)) nil)
                 ("5" (expand"merge" "merge_struct" "coreduce"nil
                  nil)
                 ("6" (expand"merge" "merge_struct" "coreduce"nil
                  nil)
                 ("7" (replace -1)
                  (("7" (hide -1)
                    (("7" (expand"merge" "merge_struct")
                      (("7" (expand "coreduce" 1 1)
                        (("7" (expand "coreduce" 2 1)
                          (("7" (expand "coreduce" -)
                            (("7" (reduce) nil nil)) nil))
                          nil))
                        nil))
                      nil))
                    nil))
                  nil)
                 ("8" (expand"merge" "merge_struct" "coreduce")
                  (("8" (reduce) nil nil)) nil))
                nil))
              nil))
            nil))
          nil))
        nil))
      nil))
    nil)
   ((T formal-type-decl nil csequence_merge nil)
    (coinduction formula-decl nil csequence_codt nil)
    (merge_struct const-decl "csequence_struct" csequence_merge nil)
    (coreduce adt-def-decl "{c: csequence[T] |
         inj_empty?(op(x)) AND empty?(c) OR
          inj_nonempty?(op(x)) AND nonempty?(c)}"
     csequence_codt_coreduce nil)
    (eseq!1 skolem-const-decl "empty_csequence[T]" csequence_merge nil)
    (empty_csequence nonempty-type-eq-decl nil csequence_props nil)
    (empty? adt-recognizer-decl "[csequence -> boolean]" csequence_codt
     nil)
    (merge const-decl "csequence" csequence_merge nil)
    (= const-decl "[T, T -> boolean]" equalities nil)
    (OR const-decl "[bool, bool -> bool]" booleans nil)
    (bisimulation? adt-def-decl "boolean" csequence_codt nil)
    (PRED type-eq-decl nil defined_types nil)
    (bool nonempty-type-eq-decl nil booleans nil)
    (boolean nonempty-type-decl nil booleans nil)
    (csequence type-decl nil csequence_codt nil))
   shostak))
 (merge_empty_right 0
  (merge_empty_right-1 nil 3513693378
   ("" (skolem!)
    (("" (lemma "coinduction")
      ((""
        (inst -
         "LAMBDA cseq1, cseq2: cseq1 = merge(cseq2, eseq!1) OR cseq1 = merge(eseq!1, cseq2)"
         "merge(cseq!1, eseq!1)" "cseq!1")
        (("" (delete 2)
          (("" (expand "bisimulation?")
            (("" (skosimp)
              (("" (smash)
                (("1" (expand"merge" "merge_struct" "coreduce"nil
                  nil)
                 ("2" (expand"merge" "merge_struct" "coreduce"nil
                  nil)
                 ("3" (replace -1)
                  (("3" (hide -1)
                    (("3" (expand"merge" "merge_struct")
                      (("3" (expand "coreduce" 1 1)
                        (("3" (expand "coreduce" 2 1)
                          (("3" (expand "coreduce" -)
                            (("3" (reduce) nil nil)) nil))
                          nil))
                        nil))
                      nil))
                    nil))
                  nil)
                 ("4" (expand"merge" "merge_struct" "coreduce")
                  (("4" (reduce) nil nil)) nil)
                 ("5" (expand"merge" "merge_struct" "coreduce"nil
                  nil)
                 ("6" (expand"merge" "merge_struct" "coreduce"nil
                  nil)
                 ("7" (replace -1)
                  (("7" (hide -1)
                    (("7" (expand"merge" "merge_struct")
                      (("7" (expand "coreduce" 1 1)
                        (("7" (expand "coreduce" 2 1)
                          (("7" (expand "coreduce" -)
                            (("7" (reduce) nil nil)) nil))
                          nil))
                        nil))
                      nil))
                    nil))
                  nil)
                 ("8" (expand"merge" "merge_struct" "coreduce")
                  (("8" (reduce) nil nil)) nil))
                nil))
              nil))
            nil))
          nil))
        nil))
      nil))
    nil)
   ((T formal-type-decl nil csequence_merge nil)
    (coinduction formula-decl nil csequence_codt nil)
    (merge_struct const-decl "csequence_struct" csequence_merge nil)
    (coreduce adt-def-decl "{c: csequence[T] |
         inj_empty?(op(x)) AND empty?(c) OR
          inj_nonempty?(op(x)) AND nonempty?(c)}"
     csequence_codt_coreduce nil)
    (eseq!1 skolem-const-decl "empty_csequence[T]" csequence_merge nil)
    (empty_csequence nonempty-type-eq-decl nil csequence_props nil)
    (empty? adt-recognizer-decl "[csequence -> boolean]" csequence_codt
     nil)
    (merge const-decl "csequence" csequence_merge nil)
    (= const-decl "[T, T -> boolean]" equalities nil)
    (OR const-decl "[bool, bool -> bool]" booleans nil)
    (bisimulation? adt-def-decl "boolean" csequence_codt nil)
    (PRED type-eq-decl nil defined_types nil)
    (bool nonempty-type-eq-decl nil booleans nil)
    (boolean nonempty-type-decl nil booleans nil)
    (csequence type-decl nil csequence_codt nil))
   shostak))
 (merge_first_TCC1 0
  (merge_first_TCC1-1 nil 3513693179
   ("" (skosimp)
    (("" (rewrite "merge_nonempty") (("" (assertnil nil)) nil)) nil)
   ((merge_nonempty formula-decl nil csequence_merge nil)
    (T formal-type-decl nil csequence_merge nil)
    (csequence type-decl nil csequence_codt nil))
   nil))
 (merge_first 0
  (merge_first-1 nil 3513693556
   ("" (expand"merge" "merge_struct" "coreduce")
    (("" (reduce) nil nil)) nil)
   ((merge const-decl "csequence" csequence_merge nil)
    (coreduce adt-def-decl "{c: csequence[T] |
         inj_empty?(op(x)) AND empty?(c) OR
          inj_nonempty?(op(x)) AND nonempty?(c)}"
     csequence_codt_coreduce nil)
    (merge_struct const-decl "csequence_struct" csequence_merge nil))
   shostak))
 (merge_rest 0
  (merge_rest-1 nil 3513693567
   ("" (skosimp)
    (("" (lift-if)
      (("" (prop)
        (("1" (expand"merge" "merge_struct")
          (("1" (expand "coreduce" 1 1) (("1" (reduce) nil nil)) nil))
          nil)
         ("2" (rewrite "merge_empty_left"nil nil))
        nil))
      nil))
    nil)
   ((merge_empty_left formula-decl nil csequence_merge nil)
    (T formal-type-decl nil csequence_merge nil)
    (csequence type-decl nil csequence_codt nil)
    (boolean nonempty-type-decl nil booleans nil)
    (empty? adt-recognizer-decl "[csequence -> boolean]" csequence_codt
     nil)
    (empty_csequence nonempty-type-eq-decl nil csequence_props nil)
    (merge_struct const-decl "csequence_struct" csequence_merge nil)
    (merge const-decl "csequence" csequence_merge nil)
    (coreduce adt-def-decl "{c: csequence[T] |
         inj_empty?(op(x)) AND empty?(c) OR
          inj_nonempty?(op(x)) AND nonempty?(c)}"
     csequence_codt_coreduce nil))
   shostak))
 (merge_finite 0
  (merge_finite-1 nil 3513693179
   ("" (induct "fseq1" :name "is_finite_induction")
    (("1" (assertnil nil) ("2" (assertnil nil)
     ("3" (skosimp)
      (("3" (case "empty?(cseq!1)")
        (("1" (skolem!)
          (("1" (rewrite "merge_empty_left") (("1" (assertnil nil))
            nil))
          nil)
         ("2" (ground)
          (("2" (skolem-typepred)
            (("2" (case "empty?(fseq2!1)")
              (("1" (rewrite "merge_empty_right"nil nil)
               ("2" (assert)
                (("2" (expand"merge" "merge_struct")
                  (("2" (expand "coreduce" +)
                    (("2" (expand "is_finite" +)
                      (("2" (expand "coreduce" +)
                        (("2" (expand "is_finite" +)
                          (("2" (inst - "rest(fseq2!1)")
                            (("2" (expand "is_finite" -1)
                              (("2" (propax) nil nil)) nil))
                            nil))
                          nil))
                        nil))
                      nil))
                    nil))
                  nil))
                nil))
              nil))
            nil))
          nil))
        nil))
      nil))
    nil)
   ((merge_empty_right formula-decl nil csequence_merge nil)
    (merge_struct const-decl "csequence_struct" csequence_merge nil)
    (fseq2!1 skolem-const-decl "finite_csequence[T]" csequence_merge
     nil)
    (nonempty? adt-recognizer-decl "[csequence -> boolean]"
               csequence_codt nil)
    (rest adt-accessor-decl "[(nonempty?) -> csequence]" csequence_codt
          nil)
    (coreduce adt-def-decl "{c: csequence[T] |
         inj_empty?(op(x)) AND empty?(c) OR
          inj_nonempty?(op(x)) AND nonempty?(c)}"
     csequence_codt_coreduce nil)
    (NOT const-decl "[bool -> bool]" booleans nil)
    (merge_empty_left formula-decl nil csequence_merge nil)
    (empty_csequence nonempty-type-eq-decl nil csequence_props nil)
    (empty? adt-recognizer-decl "[csequence -> boolean]" csequence_codt
     nil)
    (is_finite_induction formula-decl nil csequence_props nil)
    (T formal-type-decl nil csequence_merge nil)
    (merge const-decl "csequence" csequence_merge nil)
    (finite_csequence nonempty-type-eq-decl nil csequence_props nil)
    (is_finite inductive-decl "bool" csequence_props nil)
    (IMPLIES const-decl "[bool, bool -> bool]" booleans nil)
    (bool nonempty-type-eq-decl nil booleans nil)
    (boolean nonempty-type-decl nil booleans nil)
    (csequence type-decl nil csequence_codt nil))
   nil))
 (merge_finiteness 0
  (merge_finiteness-1 nil 3513696751
   ("" (skosimp)
    (("" (lemma "is_finite_induction")
      ((""
        (inst -
         "LAMBDA cseq: FORALL cseq1, cseq2: cseq = merge(cseq1, cseq2) IMPLIES is_finite(cseq1) AND is_finite(cseq2)")
        (("" (split)
          (("1" (inst - "merge(cseq1!1, cseq2!1)")
            (("1" (assert) (("1" (inst - "cseq1!1" "cseq2!1"nil nil))
              nil))
            nil)
           ("2" (delete -1 2)
            (("2" (skosimp*)
              (("2" (replace -2)
                (("2" (hide -2)
                  (("2" (split)
                    (("1" (rewrite "merge_empty")
                      (("1" (expand "is_finite")
                        (("1" (ground) nil nil)) nil))
                      nil)
                     ("2" (flatten)
                      (("2" (case "empty?(cseq1!2)")
                        (("1" (rewrite "merge_empty_left")
                          (("1" (expand "is_finite" +)
                            (("1" (assertnil nil)) nil))
                          nil)
                         ("2" (assert)
                          (("2" (inst - "cseq2!2" "rest(cseq1!2)")
                            (("2" (expand "is_finite" 2 1)
                              (("2"
                                (expand"merge" "merge_struct")
                                (("2"
                                  (expand "coreduce" -2 1)
                                  (("2" (ground) nil nil))
                                  nil))
                                nil))
                              nil))
                            nil))
                          nil))
                        nil))
                      nil))
                    nil))
                  nil))
                nil))
              nil))
            nil))
          nil))
        nil))
      nil))
    nil)
   ((T formal-type-decl nil csequence_merge nil)
    (is_finite_induction formula-decl nil csequence_props nil)
    (coreduce adt-def-decl "{c: csequence[T] |
         inj_empty?(op(x)) AND empty?(c) OR
          inj_nonempty?(op(x)) AND nonempty?(c)}"
     csequence_codt_coreduce nil)
    (merge_struct const-decl "csequence_struct" csequence_merge nil)
    (nonempty? adt-recognizer-decl "[csequence -> boolean]"
               csequence_codt nil)
    (rest adt-accessor-decl "[(nonempty?) -> csequence]" csequence_codt
          nil)
    (empty_csequence nonempty-type-eq-decl nil csequence_props nil)
    (merge_empty_left formula-decl nil csequence_merge nil)
    (empty? adt-recognizer-decl "[csequence -> boolean]" csequence_codt
     nil)
    (merge_empty formula-decl nil csequence_merge nil)
    (is_finite inductive-decl "bool" csequence_props nil)
    (AND const-decl "[bool, bool -> bool]" booleans nil)
    (merge const-decl "csequence" csequence_merge nil)
    (= const-decl "[T, T -> boolean]" equalities nil)
    (IMPLIES const-decl "[bool, bool -> bool]" booleans nil)
    (bool nonempty-type-eq-decl nil booleans nil)
    (boolean nonempty-type-decl nil booleans nil)
    (csequence type-decl nil csequence_codt nil))
   shostak))
 (merge_infinite1 0
  (merge_infinite1-1 nil 3513693179
   ("" (skolem-typepred)
    (("" (forward-chain "merge_finiteness"nil nil)) nil)
   ((merge_finiteness formula-decl nil csequence_merge nil)
    (infinite_csequence type-eq-decl nil csequence_props nil)
    (NOT const-decl "[bool -> bool]" booleans nil)
    (is_finite inductive-decl "bool" csequence_props nil)
    (bool nonempty-type-eq-decl nil booleans nil)
    (boolean nonempty-type-decl nil booleans nil)
    (csequence type-decl nil csequence_codt nil)
    (T formal-type-decl nil csequence_merge nil))
   nil))
 (merge_infinite2 0
  (merge_infinite2-1 nil 3513693179
   ("" (skolem-typepred)
    (("" (forward-chain "merge_finiteness"nil nil)) nil)
   ((merge_finiteness formula-decl nil csequence_merge nil)
    (infinite_csequence type-eq-decl nil csequence_props nil)
    (NOT const-decl "[bool -> bool]" booleans nil)
    (is_finite inductive-decl "bool" csequence_props nil)
    (bool nonempty-type-eq-decl nil booleans nil)
    (boolean nonempty-type-decl nil booleans nil)
    (csequence type-decl nil csequence_codt nil)
    (T formal-type-decl nil csequence_merge nil))
   nil))
 (merge_length 0
  (merge_length-1 nil 3513696918
   ("" (induct "fseq1" :name "is_finite_induction")
    (("1" (assertnil nil) ("2" (assertnil nil)
     ("3" (skosimp*)
      (("3" (case "empty?(cseq!1)")
        (("1" (rewrite "merge_empty_left")
          (("1" (rewrite "length_empty?_rew") (("1" (ground) nil nil))
            nil))
          nil)
         ("2" (ground)
          (("2" (case "empty?(fseq2!1)")
            (("1" (rewrite "merge_empty_right")
              (("1" (rewrite "length_empty?_rew")
                (("1" (assertnil nil)) nil))
              nil)
             ("2" (assert)
              (("2" (expand"merge" "merge_struct")
                (("2" (expand "coreduce" +)
                  (("2" (expand "length" 3 1)
                    (("2" (expand "coreduce" +)
                      (("2" (expand "length" +)
                        (("2" (inst - "rest(fseq2!1)")
                          (("2" (assertnil nil)) nil))
                        nil))
                      nil))
                    nil))
                  nil))
                nil))
              nil))
            nil))
          nil))
        nil))
      nil)
     ("4" (skosimp*)
      (("4"
        (lemma "merge_finite" ("fseq1" "fseq1!2" "fseq2" "fseq2!1"))
        (("1" (propax) nil nil) ("2" (propax) nil nil)) nil))
      nil))
    nil)
   ((merge_finite judgement-tcc nil csequence_merge nil)
    (coreduce adt-def-decl "{c: csequence[T] |
         inj_empty?(op(x)) AND empty?(c) OR
          inj_nonempty?(op(x)) AND nonempty?(c)}"
     csequence_codt_coreduce nil)
    (rest adt-accessor-decl "[(nonempty?) -> csequence]" csequence_codt
          nil)
    (nonempty? adt-recognizer-decl "[csequence -> boolean]"
               csequence_codt nil)
    (merge_struct const-decl "csequence_struct" csequence_merge nil)
    (merge_empty_right formula-decl nil csequence_merge nil)
    (empty_csequence nonempty-type-eq-decl nil csequence_props nil)
    (merge_empty_left formula-decl nil csequence_merge nil)
    (nnint_plus_nnint_is_nnint application-judgement "nonneg_int"
     integers nil)
    (length_empty?_rew formula-decl nil csequence_length nil)
    (empty? adt-recognizer-decl "[csequence -> boolean]" csequence_codt
     nil)
    (is_finite_induction formula-decl nil csequence_props nil)
    (T formal-type-decl nil csequence_merge nil)
    (+ const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (numfield nonempty-type-eq-decl nil number_fields nil)
    (length def-decl "{n | has_length(fseq, n)}" csequence_length nil)
    (has_length def-decl "bool" csequence_props nil)
    (nat nonempty-type-eq-decl nil naturalnumbers nil)
    (>= const-decl "bool" reals nil)
    (int nonempty-type-eq-decl nil integers nil)
    (integer_pred const-decl "[rational -> boolean]" integers nil)
    (rational nonempty-type-from-decl nil rationals nil)
    (rational_pred const-decl "[real -> boolean]" rationals nil)
    (real nonempty-type-from-decl nil reals nil)
    (real_pred const-decl "[number_field -> boolean]" reals nil)
    (number_field nonempty-type-from-decl nil number_fields nil)
    (number_field_pred const-decl "[number -> boolean]" number_fields
     nil)
    (= const-decl "[T, T -> boolean]" equalities nil)
    (number nonempty-type-decl nil numbers nil)
    (csequence type-decl nil csequence_codt nil)
    (boolean nonempty-type-decl nil booleans nil)
    (bool nonempty-type-eq-decl nil booleans nil)
    (IMPLIES const-decl "[bool, bool -> bool]" booleans nil)
    (is_finite inductive-decl "bool" csequence_props nil)
    (finite_csequence nonempty-type-eq-decl nil csequence_props nil)
    (merge const-decl "csequence" csequence_merge nil))
   shostak))
 (merge_index_TCC1 0
  (merge_index_TCC1-1 nil 3513693179
   ("" (skosimp)
    (("" (rewrite "index?_finite") (("" (assertnil nil)) nil)) nil)
   ((index?_finite formula-decl nil csequence_nth nil)
    (csequence type-decl nil csequence_codt nil)
    (boolean nonempty-type-decl nil booleans nil)
    (bool nonempty-type-eq-decl nil booleans nil)
    (is_finite inductive-decl "bool" csequence_props nil)
    (finite_csequence nonempty-type-eq-decl nil csequence_props 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)
    (nat nonempty-type-eq-decl nil naturalnumbers nil)
    (T formal-type-decl nil csequence_merge nil)
    (real_lt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (real_ge_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (int_minus_int_is_int application-judgement "int" integers nil))
   nil))
 (merge_index 0
  (merge_index-1 nil 3513697065
   ("" (auto-rewrite "merge_length")
    (("" (auto-rewrite "index?_prop")
      (("" (skolem!)
        (("" (smash)
          (("1" (use "merge_finite"nil nil)
           ("2" (use "merge_infinite2") (("2" (assertnil nil)) nil)
           ("3" (use "merge_infinite1"nil nil)
           ("4" (use "merge_infinite2") (("4" (assertnil nil)) nil)
           ("5" (use "merge_infinite1"nil nil))
          nil))
        nil))
      nil))
    nil)
   ((T formal-type-decl nil csequence_merge nil)
    (index?_prop formula-decl nil csequence_nth 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)
    (real_ge_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (merge_length formula-decl nil csequence_merge nil)
    (nnint_plus_nnint_is_nnint application-judgement "nonneg_int"
     integers nil)
    (merge_finite judgement-tcc nil csequence_merge nil)
    (finite_csequence nonempty-type-eq-decl nil csequence_props nil)
    (is_finite inductive-decl "bool" csequence_props nil)
    (bool nonempty-type-eq-decl nil booleans nil)
    (boolean nonempty-type-decl nil booleans nil)
    (csequence type-decl nil csequence_codt nil)
    (infinite_csequence type-eq-decl nil csequence_props nil)
    (NOT const-decl "[bool -> bool]" booleans nil)
    (cseq2!1 skolem-const-decl "csequence[T]" csequence_merge nil)
    (merge_infinite2 judgement-tcc nil csequence_merge nil)
    (merge_infinite1 judgement-tcc nil csequence_merge nil))
   shostak))
 (merge_nth_TCC1 0
  (merge_nth_TCC1-1 nil 3513693179 ("" (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)
    (csequence type-decl nil csequence_codt 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)
    (nat nonempty-type-eq-decl nil naturalnumbers nil)
    (index? def-decl "bool" csequence_nth nil)
    (merge const-decl "csequence" csequence_merge nil)
    (indexes type-eq-decl nil csequence_nth nil)
    (T formal-type-decl nil csequence_merge nil)
    (length_lt const-decl "bool" csequence_length_comp nil))
   nil))
 (merge_nth_TCC2 0
  (merge_nth_TCC2-1 nil 3513693179
   ("" (skosimp :preds? t)
    (("" (assert)
      (("" (rewrite "merge_index")
        (("" (expand "length_lt")
          (("" (auto-rewrite "index?_finite") (("" (ground) nil nil))
            nil))
          nil))
        nil))
      nil))
    nil)
   ((int_minus_int_is_int application-judgement "int" integers nil)
    (mult_divides2 application-judgement "(divides(m))" divides nil)
    (mult_divides1 application-judgement "(divides(n))" divides nil)
    (int_times_even_is_even application-judgement "even_int" integers
     nil)
    (nnint_times_nnint_is_nnint application-judgement "nonneg_int"
     integers nil)
    (real_ge_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (length_lt const-decl "bool" csequence_length_comp nil)
    (index?_finite formula-decl nil csequence_nth nil)
    (real_lt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (merge_index formula-decl nil csequence_merge 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 csequence_merge nil)
    (csequence type-decl nil csequence_codt 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)
    (nat nonempty-type-eq-decl nil naturalnumbers nil)
    (index? def-decl "bool" csequence_nth nil)
    (merge const-decl "csequence" csequence_merge nil)
    (indexes type-eq-decl nil csequence_nth nil))
   nil))
 (merge_nth_TCC3 0
  (merge_nth_TCC3-1 nil 3513693179 ("" (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)
    (csequence type-decl nil csequence_codt 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)
    (nat nonempty-type-eq-decl nil naturalnumbers nil)
    (index? def-decl "bool" csequence_nth nil)
    (merge const-decl "csequence" csequence_merge nil)
    (indexes type-eq-decl nil csequence_nth nil)
    (T formal-type-decl nil csequence_merge nil)
    (length_lt const-decl "bool" csequence_length_comp nil))
   nil))
 (merge_nth_TCC4 0
  (merge_nth_TCC4-1 nil 3513693179
   ("" (skosimp :preds? t)
    (("" (rewrite "merge_index")
      (("" (expand "length_lt")
        (("" (auto-rewrite "index?_finite")
          (("" (auto-rewrite "index?_infinite") (("" (reduce) nil nil))
            nil))
          nil))
        nil))
      nil))
    nil)
   ((merge_index formula-decl nil csequence_merge nil)
    (int_minus_int_is_int application-judgement "int" integers nil)
    (even_times_int_is_even application-judgement "even_int" integers
     nil)
    (index?_finite formula-decl nil csequence_nth nil)
    (index?_infinite formula-decl nil csequence_nth nil)
    (real_ge_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (nnint_times_nnint_is_nnint application-judgement "nonneg_int"
     integers nil)
    (int_times_even_is_even application-judgement "even_int" integers
     nil)
    (mult_divides1 application-judgement "(divides(n))" divides nil)
    (mult_divides2 application-judgement "(divides(m))" divides nil)
    (real_lt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (length_lt const-decl "bool" csequence_length_comp 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 csequence_merge nil)
    (csequence type-decl nil csequence_codt 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)
    (nat nonempty-type-eq-decl nil naturalnumbers nil)
    (index? def-decl "bool" csequence_nth nil)
    (merge const-decl "csequence" csequence_merge nil)
    (indexes type-eq-decl nil csequence_nth nil))
   nil))
 (merge_nth_TCC5 0
  (merge_nth_TCC5-1 nil 3513693179
   ("" (skosimp :preds? t)
    (("" (expand "even?")
      (("" (skolem!)
        (("" (assert)
          (("" (expand "length_lt")
            (("" (rewrite "index?_prop")
              (("" (rewrite "index?_prop")
                (("" (lemma "merge_finite")
                  (("" (lemma "merge_length") (("" (reduce) nil nil))
                    nil))
                  nil))
                nil))
              nil))
            nil))
          nil))
        nil))
      nil))
    nil)
   ((even? const-decl "bool" integers nil)
    (nnrat_div_posrat_is_nnrat application-judgement "nonneg_rat"
     rationals 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)
    (index?_prop formula-decl nil csequence_nth nil)
    (real_lt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (merge_finite judgement-tcc nil csequence_merge nil)
    (nnint_plus_nnint_is_nnint application-judgement "nonneg_int"
     integers nil)
    (nnint_times_nnint_is_nnint application-judgement "nonneg_int"
     integers nil)
    (rat_div_nzrat_is_rat application-judgement "rat" rationals nil)
    (is_finite inductive-decl "bool" csequence_props nil)
    (finite_csequence nonempty-type-eq-decl nil csequence_props nil)
    (cseq2!1 skolem-const-decl "csequence[T]" csequence_merge nil)
    (merge_finite application-judgement "finite_csequence"
     csequence_merge nil)
    (merge_length formula-decl nil csequence_merge nil)
    (numfield nonempty-type-eq-decl nil number_fields nil)
    (/= const-decl "boolean" notequal nil)
    (nznum nonempty-type-eq-decl nil number_fields nil)
    (/ const-decl "[numfield, nznum -> numfield]" number_fields nil)
    (real_ge_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (AND const-decl "[bool, bool -> bool]" booleans nil)
    (length_lt const-decl "bool" csequence_length_comp 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 csequence_merge nil)
    (csequence type-decl nil csequence_codt 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)
    (nat nonempty-type-eq-decl nil naturalnumbers nil)
    (index? def-decl "bool" csequence_nth nil)
    (merge const-decl "csequence" csequence_merge nil)
    (indexes type-eq-decl nil csequence_nth nil))
   nil))
 (merge_nth_TCC6 0
  (merge_nth_TCC6-1 nil 3513693179
   ("" (skosimp :preds? t)
    (("" (use "even_or_odd")
      (("" (assert)
        (("" (expand"odd?" "length_lt")
          (("" (rewrite "merge_index")
            (("" (auto-rewrite "index?_prop") (("" (reduce) nil nil))
              nil))
            nil))
          nil))
        nil))
      nil))
    nil)
   ((even_or_odd formula-decl nil naturalnumbers nil)
    (nnint_times_nnint_is_nnint application-judgement "nonneg_int"
     integers nil)
    (int_times_even_is_even application-judgement "even_int" integers
     nil)
    (mult_divides1 application-judgement "(divides(n))" divides nil)
    (mult_divides2 application-judgement "(divides(m))" divides nil)
    (rat_div_nzrat_is_rat application-judgement "rat" rationals nil)
    (int_minus_int_is_int application-judgement "int" integers nil)
    (length_lt const-decl "bool" csequence_length_comp nil)
    (even_times_int_is_even application-judgement "even_int" integers
     nil)
    (odd? const-decl "bool" integers nil)
    (real_lt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (index?_prop formula-decl nil csequence_nth nil)
    (int_plus_int_is_int application-judgement "int" integers nil)
    (minus_odd_is_odd application-judgement "odd_int" integers nil)
    (odd_minus_odd_is_even application-judgement "even_int" integers
     nil)
    (real_ge_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (odd_plus_even_is_odd application-judgement "odd_int" integers nil)
    (merge_index formula-decl nil csequence_merge 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 csequence_merge nil)
    (csequence type-decl nil csequence_codt 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)
    (nat nonempty-type-eq-decl nil naturalnumbers nil)
    (index? def-decl "bool" csequence_nth nil)
    (merge const-decl "csequence" csequence_merge nil)
    (indexes type-eq-decl nil csequence_nth nil))
   nil))
 (merge_nth 0
  (merge_nth-1 nil 3513697436
   ("" (measure-induct+ "n" ("cseq1" "cseq2" "n") :skolem-typepreds? t)
    (("1" (case-replace "x!3 = 0")
      (("1" (hide -3)
        (("1" (expand"index?" "nth" "length_lt")
          (("1" (rewrite "merge_first")
            (("1" (rewrite "merge_nonempty")
              (("1" (lemma "length_nonempty?_rew")
                (("1" (inst-cp - "x!2")
                  (("1" (inst - "x!1") (("1" (smash) nil nil)) nil))
                  nil))
                nil))
              nil))
            nil))
          nil))
        nil)
       ("2" (assert)
        (("2" (expand "index?")
          (("2" (flatten)
            (("2" (lemma "merge_index_TCC1" ("cseq1" "x!1" "n" "x!3"))
              (("2" (use "merge_index")
                (("2" (case "is_finite(x!1)")
                  (("1" (assert)
                    (("1" (case "empty?(x!1)")
                      (("1" (use "length_empty?_rew")
                        (("1" (assert)
                          (("1" (rewrite "merge_empty_left")
                            (("1" (expand "length_lt")
                              (("1"
                                (use "length_nonempty?_rew")
                                (("1"
                                  (expand "index?" -5 1)
                                  (("1" (ground) nil nil))
                                  nil))
                                nil))
                              nil))
                            nil))
                          nil))
                        nil)
                       ("2" (expand "nth" 3 1)
                        (("2" (forward-chain "merge_rest")
                          (("2" (assert)
                            (("2" (replace -1)
                              (("2"
                                (inst - "x!2" "rest(x!1)" "x!3 - 1")
                                (("2"
                                  (use "length_empty?_rew")
                                  (("2"
                                    (assert)
                                    (("2"
                                      (expand "length_lt")
                                      (("2"
                                        (expand "is_finite" -2)
                                        (("2"
                                          (case-replace
                                           "length(x!1) = length(rest(x!1)) + 1")
                                          (("1"
                                            (expand "nth" 4 3)
                                            (("1"
                                              (expand "nth" 4 4)
                                              (("1"
                                                (use "even_plus1")
                                                (("1"
                                                  (lemma "index?_prop")
                                                  (("1"
                                                    (inst
                                                     -
                                                     "x!1"
                                                     "x!3")
                                                    (("1"
                                                      (expand
                                                       "is_finite"
                                                       -1)
                                                      (("1"
                                                        (expand
                                                         "length"
                                                         -1)
                                                        (("1"
                                                          (auto-rewrite
                                                           "index?_finite")
                                                          (("1"
                                                            (smash)
                                                            nil
                                                            nil))
                                                          nil))
                                                        nil))
                                                      nil))
                                                    nil))
                                                  nil))
                                                nil))
                                              nil))
                                            nil)
                                           ("2"
                                            (expand "length" 1 1)
                                            (("2" (propax) nil nil))
                                            nil))
                                          nil))
                                        nil))
                                      nil))
                                    nil))
                                  nil))
                                nil))
                              nil))
                            nil))
                          nil))
                        nil))
                      nil))
                    nil)
                   ("2" (hide -1 -2)
                    (("2" (expand "length_lt")
                      (("2" (assert)
                        (("2" (expand "nth" 3 1)
                          (("2" (forward-chain "merge_rest")
                            (("2"
                              (use "infinite_csequence_is_nonempty")
                              (("2"
                                (assert)
                                (("2"
                                  (replace -2)
                                  (("2"
                                    (inst
                                     -
                                     "x!2"
                                     "rest(x!1)"
                                     "x!3 - 1")
                                    (("2"
                                      (expand "is_finite" 1)
                                      (("2"
                                        (assert)
                                        (("2"
                                          (expand "nth" 3 2)
                                          (("2"
                                            (expand "nth" 3 3)
                                            (("2"
                                              (use "even_plus1")
                                              (("2" (reduce) nil nil))
                                              nil))
                                            nil))
                                          nil))
                                        nil))
                                      nil))
                                    nil))
                                  nil))
                                nil))
                              nil))
                            nil))
                          nil))
                        nil))
                      nil))
                    nil))
                  nil))
                nil))
              nil))
            nil))
          nil))
        nil))
      nil)
     ("2" (use "merge_nth_TCC6") (("2" (ground) nil nil)) nil)
     ("3" (use "merge_nth_TCC5") (("3" (ground) nil nil)) nil)
     ("4" (use "merge_nth_TCC4") (("4" (ground) nil nil)) nil)
     ("5" (forward-chain "merge_nth_TCC3") (("5" (assertnil nil))
      nil)
     ("6" (forward-chain "merge_nth_TCC3") (("6" (assertnil nil))
      nil)
     ("7" (forward-chain "merge_nth_TCC2") (("7" (assertnil nil))
      nil)
     ("8" (use "merge_nth_TCC1") (("8" (assertnil nil)) nil)
     ("9" (use "merge_nth_TCC1") (("9" (assertnil nil)) nil)
     ("10" (use "merge_nth_TCC6") (("10" (ground) nil nil)) nil)
     ("11" (use "merge_nth_TCC5") (("11" (ground) nil nil)) nil)
     ("12" (use "merge_nth_TCC4") (("12" (ground) nil nil)) nil)
     ("13" (forward-chain "merge_nth_TCC3") (("13" (assertnil nil))
      nil)
     ("14" (forward-chain "merge_nth_TCC3") (("14" (assertnil nil))
      nil)
     ("15" (forward-chain "merge_nth_TCC2") (("15" (assertnil nil))
      nil)
     ("16" (use "merge_nth_TCC1") (("16" (assertnil nil)) nil)
     ("17" (use "merge_nth_TCC1") (("17" (assertnil nil)) nil)
     ("18" (use "merge_nth_TCC6") (("18" (ground) nil nil)) nil)
     ("19" (use "merge_nth_TCC5") (("19" (ground) nil nil)) nil)
     ("20" (use "merge_nth_TCC4") (("20" (ground) nil nil)) nil)
     ("21" (forward-chain "merge_nth_TCC3") (("21" (assertnil nil))
      nil)
     ("22" (forward-chain "merge_nth_TCC3") (("22" (assertnil nil))
      nil)
     ("23" (forward-chain "merge_nth_TCC2") (("23" (assertnil nil))
      nil)
     ("24" (use "merge_nth_TCC1") (("24" (assertnil nil)) nil)
     ("25" (use "merge_nth_TCC1") (("25" (assertnil nil)) nil)
     ("26" (use "merge_nth_TCC6") (("26" (ground) nil nil)) nil)
     ("27" (use "merge_nth_TCC5") (("27" (ground) nil nil)) nil)
     ("28" (use "merge_nth_TCC4") (("28" (ground) nil nil)) nil)
     ("29" (forward-chain "merge_nth_TCC3") (("29" (assertnil nil))
      nil)
     ("30" (forward-chain "merge_nth_TCC3") (("30" (assertnil nil))
      nil)
     ("31" (forward-chain "merge_nth_TCC2") (("31" (assertnil nil))
      nil)
     ("32" (use "merge_nth_TCC1") (("32" (assertnil nil)) nil)
     ("33" (use "merge_nth_TCC1") (("33" (assertnil nil)) nil))
    nil)
   ((merge_nth_TCC1 subtype-tcc nil csequence_merge nil)
    (merge_nth_TCC2 subtype-tcc nil csequence_merge nil)
    (merge_nth_TCC3 subtype-tcc nil csequence_merge nil)
    (merge_nth_TCC4 subtype-tcc nil csequence_merge nil)
    (merge_nth_TCC5 subtype-tcc nil csequence_merge nil)
    (merge_nth_TCC6 subtype-tcc nil csequence_merge nil)
    (minus_odd_is_odd application-judgement "odd_int" integers nil)
    (merge_nonempty formula-decl nil csequence_merge nil)
    (real_gt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (real_lt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (real_ge_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (even_times_int_is_even application-judgement "even_int" integers
     nil)
    (length_nonempty?_rew formula-decl nil csequence_length nil)
    (merge_first formula-decl nil csequence_merge nil)
    (merge_index_TCC1 subtype-tcc nil csequence_merge nil)
    (empty? adt-recognizer-decl "[csequence -> boolean]" csequence_codt
     nil)
    (merge_empty_left formula-decl nil csequence_merge nil)
    (empty_csequence nonempty-type-eq-decl nil csequence_props nil)
    (length_empty?_rew formula-decl nil csequence_length nil)
    (merge_rest formula-decl nil csequence_merge nil)
    (+ const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (nnint_plus_posint_is_posint application-judgement "posint"
     integers nil)
    (index?_prop formula-decl nil csequence_nth nil)
    (index?_finite formula-decl nil csequence_nth nil)
    (even_plus_even_is_even application-judgement "even_int" integers
     nil)
    (posint_plus_nnint_is_posint application-judgement "posint"
     integers nil)
    (rat_minus_rat_is_rat application-judgement "rat" rationals nil)
    (even_minus_odd_is_odd application-judgement "odd_int" integers
     nil)
    (odd_minus_odd_is_even application-judgement "even_int" integers
     nil)
    (int_plus_int_is_int application-judgement "int" integers nil)
    (even_plus1 formula-decl nil naturalnumbers nil)
    (nonempty? adt-recognizer-decl "[csequence -> boolean]"
               csequence_codt nil)
    (rest adt-accessor-decl "[(nonempty?) -> csequence]" csequence_codt
          nil)
    (infinite_csequence_is_nonempty judgement-tcc nil csequence_props
     nil)
    (infinite_csequence type-eq-decl nil csequence_props nil)
    (merge_index formula-decl nil csequence_merge nil)
    (IF const-decl "[boolean, T, T -> T]" if_def nil)
    (nth def-decl "T" csequence_nth nil)
    (= const-decl "[T, T -> boolean]" equalities nil)
    (even? const-decl "bool" integers nil)
    (/= const-decl "boolean" notequal nil)
    (nznum nonempty-type-eq-decl nil number_fields nil)
    (/ const-decl "[numfield, nznum -> numfield]" number_fields nil)
    (- const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (length def-decl "{n | has_length(fseq, n)}" csequence_length nil)
    (has_length def-decl "bool" csequence_props nil)
    (finite_csequence nonempty-type-eq-decl nil csequence_props nil)
    (* const-decl "[numfield, numfield -> numfield]" number_fields nil)
    (numfield nonempty-type-eq-decl nil number_fields nil)
    (AND const-decl "[bool, bool -> bool]" booleans nil)
    (NOT const-decl "[bool -> bool]" booleans nil)
    (is_finite inductive-decl "bool" csequence_props nil)
    (length_lt const-decl "bool" csequence_length_comp nil)
    (IMPLIES const-decl "[bool, bool -> bool]" booleans nil)
    (nnint_times_nnint_is_nnint application-judgement "nonneg_int"
     integers nil)
    (int_times_even_is_even application-judgement "even_int" integers
     nil)
    (mult_divides1 application-judgement "(divides(n))" divides nil)
    (mult_divides2 application-judgement "(divides(m))" divides nil)
    (int_minus_int_is_int application-judgement "int" integers nil)
    (nnrat_div_posrat_is_nnrat application-judgement "nonneg_rat"
     rationals nil)
    (rat_div_nzrat_is_rat application-judgement "rat" rationals nil)
    (wf_nat formula-decl nil naturalnumbers nil)
    (< const-decl "bool" reals nil)
    (naturalnumber type-eq-decl nil naturalnumbers nil)
    (indexes type-eq-decl nil csequence_nth nil)
    (merge const-decl "csequence" csequence_merge nil)
    (index? def-decl "bool" csequence_nth 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)
    (csequence type-decl nil csequence_codt nil)
    (T formal-type-decl nil csequence_merge nil)
    (measure_induction formula-decl nil measure_induction nil)
    (well_founded? const-decl "bool" orders nil)
    (pred type-eq-decl nil defined_types nil))
   shostak))
 (merge_add 0
  (merge_add-1 nil 3513698074
   ("" (expand"merge" "merge_struct")
    (("" (expand "coreduce" 1 2) (("" (propax) nil nil)) nil)) nil)
   ((coreduce adt-def-decl "{c: csequence[T] |
         inj_empty?(op(x)) AND empty?(c) OR
          inj_nonempty?(op(x)) AND nonempty?(c)}"
     csequence_codt_coreduce nil)
    (merge const-decl "csequence" csequence_merge nil)
    (merge_struct const-decl "csequence_struct" csequence_merge nil))
   shostak))
 (merge_last_TCC1 0
  (merge_last_TCC1-1 nil 3513693179
   ("" (skosimp)
    (("" (rewrite "merge_nonempty")
      (("" (assert)
        (("" (lemma "length_nonempty?_rew")
          (("" (inst-cp - "fseq2!1")
            (("" (inst - "fseq1!1") (("" (assertnil nil)) nil)) nil))
          nil))
        nil))
      nil))
    nil)
   ((merge_nonempty formula-decl nil csequence_merge nil)
    (T formal-type-decl nil csequence_merge nil)
    (csequence type-decl nil csequence_codt nil)
    (boolean nonempty-type-decl nil booleans nil)
    (bool nonempty-type-eq-decl nil booleans nil)
    (is_finite inductive-decl "bool" csequence_props nil)
    (finite_csequence nonempty-type-eq-decl nil csequence_props nil)
    (length_nonempty?_rew formula-decl nil csequence_length 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))
   nil))
 (merge_last_TCC2 0
  (merge_last_TCC2-1 nil 3513693179
   ("" (skosimp)
    (("" (rewrite "merge_nonempty")
      (("" (assert)
        (("" (lemma "length_nonempty?_rew")
          (("" (inst-cp - "fseq2!1")
            (("" (inst - "fseq1!1") (("" (assertnil nil)) nil)) nil))
          nil))
        nil))
      nil))
    nil)
   ((merge_nonempty formula-decl nil csequence_merge nil)
    (T formal-type-decl nil csequence_merge nil)
    (csequence type-decl nil csequence_codt nil)
    (boolean nonempty-type-decl nil booleans nil)
    (bool nonempty-type-eq-decl nil booleans nil)
    (is_finite inductive-decl "bool" csequence_props nil)
    (finite_csequence nonempty-type-eq-decl nil csequence_props nil)
    (length_nonempty?_rew formula-decl nil csequence_length 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))
   nil))
 (merge_last 0
  (merge_last-1 nil 3513698166
   ("" (skosimp)
    (("" (expand "last")
      (("" (rewrite "merge_length")
        (("" (use "merge_nth")
          (("1" (expand"length_lt" "even?") (("1" (reduce) nil nil))
            nil)
           ("2" (rewrite "merge_nonempty")
            (("2" (lemma "length_nonempty?_rew")
              (("2" (inst-cp - "fseq2!1")
                (("2" (inst - "fseq1!1") (("2" (assertnil nil)) nil))
                nil))
              nil))
            nil))
          nil))
        nil))
      nil))
    nil)
   ((last const-decl "T" csequence_nth nil)
    (merge_nth formula-decl nil csequence_merge nil)
    (indexes type-eq-decl nil csequence_nth nil)
    (merge const-decl "csequence" csequence_merge nil)
    (index? def-decl "bool" csequence_nth nil)
    (number nonempty-type-decl nil numbers nil)
    (number_field_pred const-decl "[number -> boolean]" number_fields
     nil)
    (number_field nonempty-type-from-decl nil number_fields nil)
    (real_pred const-decl "[number_field -> boolean]" reals nil)
    (real nonempty-type-from-decl nil reals nil)
    (>= const-decl "bool" reals nil)
    (numfield nonempty-type-eq-decl nil number_fields nil)
    (- const-decl "[numfield, numfield -> numfield]" number_fields 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)
    (nat nonempty-type-eq-decl nil naturalnumbers nil)
    (has_length def-decl "bool" csequence_props nil)
    (length def-decl "{n | has_length(fseq, n)}" csequence_length nil)
    (fseq1!1 skolem-const-decl "finite_csequence[T]" csequence_merge
     nil)
    (fseq2!1 skolem-const-decl "finite_csequence[T]" csequence_merge
     nil)
    (int_minus_int_is_int application-judgement "int" integers nil)
    (rat_div_nzrat_is_rat application-judgement "rat" rationals nil)
    (nnrat_div_posrat_is_nnrat application-judgement "nonneg_rat"
     rationals nil)
    (nnint_times_nnint_is_nnint application-judgement "nonneg_int"
     integers nil)
    (int_times_even_is_even application-judgement "even_int" integers
     nil)
    (mult_divides1 application-judgement "(divides(n))" divides nil)
    (mult_divides2 application-judgement "(divides(m))" divides nil)
    (real_ge_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (NOT const-decl "[bool -> bool]" booleans nil)
    (merge_finite application-judgement "finite_csequence"
     csequence_merge nil)
    (real_lt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (even_times_int_is_even application-judgement "even_int" integers
     nil)
    (real_le_is_total_order name-judgement "(total_order?[real])"
     real_props nil)
    (length_lt const-decl "bool" csequence_length_comp nil)
    (even? const-decl "bool" integers nil)
    (length_nonempty?_rew formula-decl nil csequence_length nil)
    (real_gt_is_strict_total_order name-judgement
     "(strict_total_order?[real])" real_props nil)
    (merge_nonempty formula-decl nil csequence_merge nil)
    (nnint_plus_nnint_is_nnint application-judgement "nonneg_int"
     integers nil)
    (finite_csequence nonempty-type-eq-decl nil csequence_props nil)
    (is_finite inductive-decl "bool" csequence_props nil)
    (bool nonempty-type-eq-decl nil booleans nil)
    (boolean nonempty-type-decl nil booleans nil)
    (csequence type-decl nil csequence_codt nil)
    (T formal-type-decl nil csequence_merge nil)
    (merge_length formula-decl nil csequence_merge nil))
   shostak))
 (merge_extensionality 0
  (merge_extensionality-1 nil 3513698243
   ("" (skosimp)
    (("" (split)
      (("1" (lemma "coinduction")
        (("1"
          (inst -
           "LAMBDA cseq1, cseq3: EXISTS cseq2, cseq4: length_eq(cseq1, cseq2) AND length_eq(cseq3, cseq4) AND merge(cseq1, cseq2) = merge(cseq3, cseq4)"
           "cseq1!1" "cseq3!1")
          (("1" (assert)
            (("1" (inst + "cseq2!1" "cseq4!1") (("1" (assertnil nil))
              nil))
            nil)
           ("2" (delete -1 -2 -3 2)
            (("2" (expand "bisimulation?")
              (("2" (skosimp*)
                (("2" (lemma "length_eq_empty")
                  (("2" (inst-cp - "y!1" "cseq4!2")
                    (("2" (inst - "x!1" "cseq2!2")
                      (("2" (smash)
                        (("1" (rewrite "merge_empty_left")
                          (("1" (use "merge_empty")
                            (("1" (assertnil nil)) nil))
                          nil)
                         ("2"
                          (rewrite "merge_empty_left" :subst
                           ("eseq" "y!1"))
                          (("2" (use "merge_empty")
                            (("2" (assertnil nil)) nil))
                          nil)
                         ("3" (inst + "rest(cseq2!2)" "rest(cseq4!2)")
                          (("3" (lemma "length_eq_rest")
                            (("3" (inst-cp - "y!1" "cseq4!2")
                              (("3"
                                (inst - "x!1" "cseq2!2")
                                (("3"
                                  (assert)
                                  (("3"
                                    (expand"merge" "merge_struct")
                                    (("3"
                                      (expand "coreduce" -)
                                      (("3"
                                        (expand "coreduce" -)
                                        (("3"
                                          (smash)
                                          (("3"
                                            (decompose-equality)
                                            (("3"
                                              (decompose-equality)
                                              nil
                                              nil))
                                            nil))
                                          nil))
                                        nil))
                                      nil))
                                    nil))
                                  nil))
                                nil))
                              nil))
                            nil))
                          nil)
                         ("4"
                          (expand"merge" "merge_struct" "coreduce")
                          (("4" (decompose-equality) nil nil)) nil))
                        nil))
                      nil))
                    nil))
                  nil))
                nil))
              nil))
            nil))
          nil))
        nil)
       ("2" (lemma "coinduction")
        (("2"
          (inst -
           "LAMBDA cseq2, cseq4: EXISTS cseq1, cseq3: length_eq(cseq1, cseq2) AND length_eq(cseq3, cseq4) AND merge(cseq1, cseq2) = merge(cseq3, cseq4)"
           "cseq2!1" "cseq4!1")
          (("1" (assert)
            (("1" (inst + "cseq1!1" "cseq3!1") (("1" (assertnil nil))
              nil))
            nil)
           ("2" (delete -1 -2 -3 2)
            (("2" (expand "bisimulation?")
              (("2" (skosimp*)
                (("2" (lemma "length_eq_empty")
                  (("2" (inst-cp - "cseq3!2" "y!1")
                    (("2" (inst - "cseq1!2" "x!1")
                      (("2" (smash)
                        (("1" (rewrite "merge_empty_right")
                          (("1" (use "merge_empty")
                            (("1" (assertnil nil)) nil))
                          nil)
                         ("2"
                          (rewrite "merge_empty_right" :subst
                           ("eseq" "y!1"))
                          (("2" (use "merge_empty")
                            (("2" (assertnil nil)) nil))
                          nil)
                         ("3" (inst + "rest(cseq1!2)" "rest(cseq3!2)")
                          (("3" (lemma "length_eq_rest")
                            (("3" (inst-cp - "cseq3!2" "y!1")
                              (("3"
                                (inst - "cseq1!2" "x!1")
                                (("3"
                                  (assert)
                                  (("3"
                                    (expand"merge" "merge_struct")
                                    (("3"
                                      (expand "coreduce" -)
                                      (("3"
                                        (expand "coreduce" -)
                                        (("3"
                                          (smash)
                                          (("3"
                                            (decompose-equality)
                                            (("3"
                                              (decompose-equality)
                                              nil
                                              nil))
                                            nil))
                                          nil))
                                        nil))
                                      nil))
                                    nil))
                                  nil))
                                nil))
                              nil))
                            nil))
                          nil)
                         ("4"
                          (expand"merge" "merge_struct" "coreduce"
                           "coreduce")
                          (("4" (decompose-equality)
                            (("4" (decompose-equality) nil nil)) nil))
                          nil))
                        nil))
                      nil))
                    nil))
                  nil))
                nil))
              nil))
            nil))
          nil))
        nil))
      nil))
    nil)
   ((merge const-decl "csequence" csequence_merge nil)
    (= const-decl "[T, T -> boolean]" equalities nil)
    (length_eq const-decl "bool" csequence_length_comp nil)
    (AND const-decl "[bool, bool -> bool]" booleans nil)
    (bisimulation? adt-def-decl "boolean" csequence_codt nil)
    (PRED type-eq-decl nil defined_types nil)
    (bool nonempty-type-eq-decl nil booleans nil)
    (boolean nonempty-type-decl nil booleans nil)
    (csequence type-decl nil csequence_codt nil)
    (length_eq_empty formula-decl nil csequence_length_comp nil)
    (rest adt-accessor-decl "[(nonempty?) -> csequence]" csequence_codt
          nil)
    (nonempty? adt-recognizer-decl "[csequence -> boolean]"
               csequence_codt nil)
    (nonempty_csequence type-eq-decl nil csequence_props nil)
    (coreduce adt-def-decl "{c: csequence[T] |
         inj_empty?(op(x)) AND empty?(c) OR
          inj_nonempty?(op(x)) AND nonempty?(c)}"
     csequence_codt_coreduce nil)
    (inj_add adt-constructor-decl "[[T, domain] -> (inj_nonempty?)]"
     csequence_codt_coreduce nil)
    (inj_empty_cseq adt-constructor-decl "(inj_empty?)"
     csequence_codt_coreduce nil)
    (IF const-decl "[boolean, T, T -> T]" if_def nil)
    (inj_nonempty? adt-recognizer-decl "[csequence_struct -> boolean]"
     csequence_codt_coreduce nil)
    (inj_empty? adt-recognizer-decl "[csequence_struct -> boolean]"
     csequence_codt_coreduce nil)
    (OR const-decl "[bool, bool -> bool]" booleans nil)
    (csequence_struct type-decl nil csequence_codt_coreduce nil)
    (add adt-constructor-decl "[[T, csequence] -> (nonempty?)]"
     csequence_codt nil)
    (first adt-accessor-decl "[(nonempty?) -> T]" csequence_codt nil)
    (NOT const-decl "[bool -> bool]" booleans nil)
    (IMPLIES const-decl "[bool, bool -> bool]" booleans nil)
    (merge_struct const-decl "csequence_struct" csequence_merge nil)
    (length_eq_rest formula-decl nil csequence_length_comp nil)
    (empty_csequence nonempty-type-eq-decl nil csequence_props nil)
    (empty? adt-recognizer-decl "[csequence -> boolean]" csequence_codt
     nil)
    (merge_empty_left formula-decl nil csequence_merge nil)
    (merge_empty formula-decl nil csequence_merge nil)
    (coinduction formula-decl nil csequence_codt nil)
    (T formal-type-decl nil csequence_merge nil)
    (merge_empty_right formula-decl nil csequence_merge nil))
   shostak))
 (merge_some 0
  (merge_some-1 nil 3513698604
   ("" (skolem!)
    (("" (prop)
      (("1" (lemma "some_induction")
        (("1"
          (inst - "p!1"
           "LAMBDA cseq: FORALL cseq1, cseq2: cseq = merge(cseq1, cseq2) IMPLIES some(p!1)(cseq1) OR some(p!1)(cseq2)")
          (("1" (split)
            (("1" (inst - "merge(cseq1!1, cseq2!1)")
              (("1" (assert)
                (("1" (inst - "cseq1!1" "cseq2!1")
--> --------------------

--> maximum size reached

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

¤ Diese beiden folgenden Angebotsgruppen bietet das Unternehmen0.172Angebot  Wie Sie bei der Firma Beratungs- und Dienstleistungen beauftragen können  ¤





Druckansicht
unsichere Verbindung
Druckansicht
Hier finden Sie eine Liste der Produkte des Unternehmens

Mittel




Lebenszyklus

Die hierunter aufgelisteten Ziele sind für diese Firma wichtig


Ziele

Entwicklung einer Software für die statische Quellcodeanalyse


Bot Zugriff



                                                                                                                                                                                                                                                                                                                                                                                                     


Neuigkeiten

     Aktuelles
     Motto des Tages

Software

     Produkte
     Quellcodebibliothek

Aktivitäten

     Artikel über Sicherheit
     Anleitung zur Aktivierung von SSL

Muße

     Gedichte
     Musik
     Bilder

Jenseits des Üblichen ....

Besucherstatistik

Besucherstatistik