(csequence_suffix
(suffix?_empty 0
(suffix?_empty-1 nil 3513620052
("" (skolem-typepred)
(("" (prop)
(("1" (use "suffix?_induction")
(("1" (split)
(("1" (inst - "cseq!1") (("1" (assert) nil nil)) nil)
("2" (delete -1 2)
(("2" (skosimp)
(("2" (expand "is_finite" +) (("2" (ground) nil nil))
nil))
nil))
nil))
nil))
nil)
("2" (lemma "is_finite_induction")
(("2" (inst - "LAMBDA cseq: suffix?(eseq!1, cseq)")
(("2" (split)
(("1" (inst - "cseq!1") (("1" (assert) nil nil)) nil)
("2" (skosimp)
(("2" (expand "suffix?" +) (("2" (ground) nil nil)) nil))
nil))
nil))
nil))
nil))
nil))
nil)
((is_finite inductive-decl "bool" csequence_props nil)
(suffix?_induction formula-decl nil csequence_suffix nil)
(suffix? inductive-decl "bool" csequence_suffix nil)
(is_finite_induction formula-decl nil csequence_props nil)
(empty_csequence nonempty-type-eq-decl nil csequence_props nil)
(empty? adt-recognizer-decl "[csequence -> boolean]" csequence_codt
nil)
(csequence type-decl nil csequence_codt nil)
(T formal-type-decl nil csequence_suffix nil)
(NOT const-decl "[bool -> bool]" booleans nil)
(bool nonempty-type-eq-decl nil booleans nil)
(boolean nonempty-type-decl nil booleans nil))
shostak))
(suffix?_rest_left 0
(suffix?_rest_left-1 nil 3513620120
("" (skosimp)
(("" (lemma "suffix?_induction")
(("" (inst - "nseq!1" "LAMBDA cseq: suffix?(rest(nseq!1), cseq)")
(("" (split)
(("1" (inst - "cseq!1") (("1" (assert) nil nil)) nil)
("2" (delete -1 2)
(("2" (skosimp)
(("2" (expand "suffix?" +)
(("2" (ground)
(("2" (expand "suffix?") (("2" (propax) nil nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil)
((suffix?_induction formula-decl nil csequence_suffix nil)
(rest adt-accessor-decl "[(nonempty?) -> csequence]" csequence_codt
nil)
(suffix? inductive-decl "bool" csequence_suffix nil)
(bool nonempty-type-eq-decl nil booleans nil)
(nonempty_csequence type-eq-decl nil csequence_props nil)
(nonempty? adt-recognizer-decl "[csequence -> boolean]"
csequence_codt nil)
(boolean nonempty-type-decl nil booleans nil)
(csequence type-decl nil csequence_codt nil)
(T formal-type-decl nil csequence_suffix nil))
shostak))
(suffix?_rest_right 0
(suffix?_rest_right-1 nil 3513620278
("" (expand "suffix?" + 2) (("" (skosimp) nil nil)) nil)
((suffix? inductive-decl "bool" csequence_suffix nil)) shostak))
(suffix?_finite_left 0
(suffix?_finite_left-1 nil 3513620306
("" (induct "fseq" :name "is_finite_induction")
(("1" (assert) nil nil) ("2" (assert) nil nil)
("3" (skosimp*)
(("3" (expand "suffix?" -3)
(("3" (ground)
(("1" (expand "is_finite" +)
(("1" (rewrite "suffix?_empty") nil nil)) nil)
("2" (forward-chain "suffix?_rest_right")
(("2" (forward-chain "suffix?_rest_left")
(("2" (inst - "cseq!2") (("2" (assert) nil nil)) nil))
nil))
nil))
nil))
nil))
nil))
nil)
((rest adt-accessor-decl "[(nonempty?) -> csequence]" csequence_codt
nil)
(nonempty? adt-recognizer-decl "[csequence -> boolean]"
csequence_codt nil)
(empty_csequence nonempty-type-eq-decl nil csequence_props nil)
(empty? adt-recognizer-decl "[csequence -> boolean]" csequence_codt
nil)
(suffix?_empty formula-decl nil csequence_suffix nil)
(suffix?_rest_left formula-decl nil csequence_suffix nil)
(suffix?_rest_right formula-decl nil csequence_suffix nil)
(nonempty_csequence type-eq-decl nil csequence_props nil)
(finite_csequence nonempty-type-eq-decl nil csequence_props nil)
(is_finite_induction formula-decl nil csequence_props nil)
(T formal-type-decl nil csequence_suffix nil)
(suffix? inductive-decl "bool" csequence_suffix 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))
shostak))
(suffix?_finite_right 0
(suffix?_finite_right-1 nil 3513620358
("" (induct "fseq" :name "is_finite_induction")
(("1" (assert) nil nil) ("2" (assert) nil nil)
("3" (skosimp*)
(("3" (expand "suffix?" -3)
(("3" (expand "is_finite" +)
(("3" (ground)
(("3" (inst - "cseq!2")
(("3" (expand "is_finite" -3) (("3" (propax) nil nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil)
((finite_csequence nonempty-type-eq-decl nil csequence_props nil)
(is_finite_induction formula-decl nil csequence_props nil)
(T formal-type-decl nil csequence_suffix nil)
(suffix? inductive-decl "bool" csequence_suffix 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))
shostak))
(suffix?_infinite_left 0
(suffix?_infinite_left-1 nil 3513620391
("" (skosimp :preds? t)
(("" (forward-chain "suffix?_finite_right") nil nil)) nil)
((suffix?_finite_right formula-decl nil csequence_suffix nil)
(finite_csequence nonempty-type-eq-decl nil csequence_props nil)
(T formal-type-decl nil csequence_suffix 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)
(NOT const-decl "[bool -> bool]" booleans nil)
(infinite_csequence type-eq-decl nil csequence_props nil))
shostak))
(suffix?_infinite_right 0
(suffix?_infinite_right-1 nil 3513620413
("" (skosimp :preds? t)
(("" (forward-chain "suffix?_finite_left") nil nil)) nil)
((suffix?_finite_left formula-decl nil csequence_suffix nil)
(finite_csequence nonempty-type-eq-decl nil csequence_props nil)
(T formal-type-decl nil csequence_suffix 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)
(NOT const-decl "[bool -> bool]" booleans nil)
(infinite_csequence type-eq-decl nil csequence_props nil))
shostak))
(suffix?_length 0
(suffix?_length-1 nil 3513620423
("" (induct "fseq2" :name "is_finite_induction")
(("1" (assert) nil nil) ("2" (assert) nil nil)
("3" (skosimp*)
(("3" (expand "length" +)
(("3" (expand "suffix?" -3)
(("3" (lift-if)
(("3" (lift-if)
(("3" (lift-if)
(("3" (ground)
(("3" (inst - "fseq1!1")
(("3" (expand "length" -3 1)
(("3" (propax) nil nil)) nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil)
((real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil)
(posint_plus_nnint_is_posint application-judgement "posint"
integers nil)
(is_finite_induction formula-decl nil csequence_props nil)
(T formal-type-decl nil csequence_suffix 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)
(<= const-decl "bool" reals nil)
(real nonempty-type-from-decl nil reals nil)
(real_pred const-decl "[number_field -> boolean]" reals nil)
(number_field nonempty-type-from-decl nil number_fields nil)
(number_field_pred const-decl "[number -> boolean]" number_fields
nil)
(number nonempty-type-decl nil numbers nil)
(suffix? inductive-decl "bool" csequence_suffix 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))
shostak))
(suffix?_length_eq 0
(suffix?_length_eq-1 nil 3513620489
("" (induct "fseq2" :name "is_finite_induction")
(("1" (assert) nil nil) ("2" (assert) nil nil)
("3" (skosimp*)
(("3" (expand "suffix?" -3)
(("3" (expand "length" -4)
(("3" (lift-if)
(("3" (lift-if)
(("3" (lift-if)
(("3" (ground)
(("3" (inst - "rest(fseq1!1)")
(("3" (forward-chain "suffix?_rest_left")
(("3" (assert)
(("3" (lemma "suffix?_length")
(("3" (inst - "fseq1!1" "rest(fseq1!1)")
(("3" (assert)
(("3"
(expand "length" -1 1)
(("3" (assert) nil nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil)
((posint_plus_nnint_is_posint application-judgement "posint"
integers nil)
(nonempty_csequence type-eq-decl nil csequence_props nil)
(suffix?_rest_left formula-decl nil csequence_suffix nil)
(suffix?_length formula-decl nil csequence_suffix nil)
(real_le_is_total_order name-judgement "(total_order?[real])"
real_props nil)
(nonempty? adt-recognizer-decl "[csequence -> boolean]"
csequence_codt nil)
(rest adt-accessor-decl "[(nonempty?) -> csequence]" csequence_codt
nil)
(is_finite_induction formula-decl nil csequence_props nil)
(T formal-type-decl nil csequence_suffix 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)
(suffix? inductive-decl "bool" csequence_suffix nil)
(AND const-decl "[bool, bool -> bool]" booleans 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))
shostak))
(suffix?_index 0
(suffix?_index-1 nil 3513620524
("" (induct "n")
(("1" (skosimp)
(("1" (expand* "index?" "suffix?") (("1" (assert) nil nil)) nil))
nil)
("2" (skosimp*)
(("2" (expand "index?" (-3 +))
(("2" (expand "suffix?" -2)
(("2" (ground)
(("2" (forward-chain "suffix?_rest_left")
(("2" (inst - "rest(cseq1!1)" "rest(cseq2!1)")
(("2" (assert) nil nil)) nil))
nil))
nil))
nil))
nil))
nil))
nil)
((rest adt-accessor-decl "[(nonempty?) -> csequence]" csequence_codt
nil)
(nonempty_csequence type-eq-decl nil csequence_props nil)
(nonempty? adt-recognizer-decl "[csequence -> boolean]"
csequence_codt nil)
(suffix?_rest_left formula-decl nil csequence_suffix nil)
(nnint_plus_posint_is_posint application-judgement "posint"
integers nil)
(nat_induction formula-decl nil naturalnumbers nil)
(index? def-decl "bool" csequence_nth nil)
(suffix? inductive-decl "bool" csequence_suffix nil)
(AND const-decl "[bool, bool -> bool]" booleans nil)
(IMPLIES const-decl "[bool, bool -> bool]" booleans nil)
(csequence type-decl nil csequence_codt nil)
(T formal-type-decl nil csequence_suffix 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))
shostak))
(suffix?_concatenate 0
(suffix?_concatenate-1 nil 3513620579
("" (auto-rewrite "o_empty_left")
(("" (induct "fseq" :name "is_finite_induction")
(("1" (assert) nil nil) ("2" (assert) nil nil)
("3" (skosimp*)
(("3" (expand "suffix?" +)
(("3" (ground)
(("1" (use "o_empty") (("1" (ground) nil nil)) nil)
("2" (inst - "cseq!2")
(("2" (use "o_nonempty_left")
(("2" (rewrite "o_rest")
(("2" (lift-if) (("2" (ground) nil nil)) nil)) nil))
nil))
nil))
nil))
nil))
nil))
nil))
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)
(suffix? inductive-decl "bool" csequence_suffix nil)
(O const-decl "csequence" csequence_concatenate nil)
(T formal-type-decl nil csequence_suffix nil)
(is_finite_induction formula-decl nil csequence_props nil)
(finite_csequence nonempty-type-eq-decl nil csequence_props nil)
(o_rest formula-decl nil csequence_concatenate nil)
(nonempty_csequence type-eq-decl nil csequence_props nil)
(nonempty? adt-recognizer-decl "[csequence -> boolean]"
csequence_codt nil)
(o_nonempty_left judgement-tcc nil csequence_concatenate nil)
(o_empty formula-decl nil csequence_concatenate nil)
(o_empty_left formula-decl nil csequence_concatenate nil))
shostak))
(suffix?_def 0
(suffix?_def-1 nil 3513620635
("" (skolem!)
(("" (prop)
(("1" (lemma "suffix?_induction")
(("1"
(inst - "cseq1!1"
"LAMBDA cseq: EXISTS fseq: fseq o cseq1!1 = cseq")
(("1" (split)
(("1" (inst - "cseq2!1") (("1" (assert) nil nil)) nil)
("2" (delete -1 2)
(("2" (skosimp)
(("2" (prop)
(("1" (inst + "empty_cseq")
(("1" (rewrite "o_empty_left") nil nil)) nil)
("2" (skolem!)
(("2" (inst + "add(first(cseq2!2), fseq!1)")
(("1" (rewrite "o_add")
(("1" (decompose-equality +) nil nil)) nil)
("2" (expand "is_finite")
(("2" (propax) nil nil)) nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil)
("2" (skolem!)
(("2" (use "suffix?_concatenate") (("2" (assert) nil nil))
nil))
nil))
nil))
nil)
((T formal-type-decl nil csequence_suffix 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)
(= const-decl "[T, T -> boolean]" equalities nil)
(O const-decl "csequence" csequence_concatenate nil)
(empty_csequence nonempty-type-eq-decl nil csequence_props nil)
(o_empty_left formula-decl nil csequence_concatenate nil)
(empty? adt-recognizer-decl "[csequence -> boolean]" csequence_codt
nil)
(empty_cseq adt-constructor-decl "(empty?)" csequence_codt nil)
(fseq!1 skolem-const-decl "finite_csequence[T]" csequence_suffix
nil)
(cseq2!2 skolem-const-decl "csequence[T]" csequence_suffix nil)
(first adt-accessor-decl "[(nonempty?) -> T]" csequence_codt nil)
(add adt-constructor-decl "[[T, csequence] -> (nonempty?)]"
csequence_codt nil)
(nonempty? adt-recognizer-decl "[csequence -> boolean]"
csequence_codt nil)
(csequence_add_extensionality formula-decl nil csequence_codt nil)
(o_add formula-decl nil csequence_concatenate nil)
(suffix?_induction formula-decl nil csequence_suffix nil)
(suffix?_concatenate formula-decl nil csequence_suffix nil))
shostak))
(suffix?_is_preorder 0
(suffix?_is_preorder-1 nil 3513620034
("" (expand* "preorder?" "reflexive?" "transitive?")
(("" (expand "suffix?" 1 1)
(("" (skosimp)
(("" (lemma "suffix?_induction")
((""
(inst - "x!1"
"LAMBDA cseq: FORALL cseq2: suffix?(x!1, cseq2) OR NOT suffix?(cseq, cseq2)")
(("" (split)
(("1" (inst - "y!1")
(("1" (assert)
(("1" (inst - "z!1") (("1" (assert) nil nil)) nil))
nil))
nil)
("2" (delete -1 -2 2)
(("2" (skosimp*)
(("2" (prop)
(("1" (expand "suffix?") (("1" (ground) nil nil))
nil)
("2" (use "suffix?_rest_left" ("cseq" "cseq2!2"))
(("2" (assert)
(("2" (expand "suffix?" (-1 +))
(("2" (flatten)
(("2" (inst - "rest(cseq2!2)")
(("2" (assert) nil nil)) nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil)
((suffix? inductive-decl "bool" csequence_suffix nil)
(suffix?_induction formula-decl nil csequence_suffix nil)
(suffix?_rest_left formula-decl nil csequence_suffix nil)
(nonempty? adt-recognizer-decl "[csequence -> boolean]"
csequence_codt nil)
(nonempty_csequence type-eq-decl nil csequence_props nil)
(rest adt-accessor-decl "[(nonempty?) -> csequence]" csequence_codt
nil)
(NOT const-decl "[bool -> bool]" booleans nil)
(OR 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)
(T formal-type-decl nil csequence_suffix nil)
(preorder? const-decl "bool" orders nil)
(transitive? const-decl "bool" relations nil)
(reflexive? const-decl "bool" relations nil))
nil))
(suffix?_finite_antisymmetric 0
(suffix?_finite_antisymmetric-1 nil 3513620828
("" (lemma "suffix?_is_preorder")
(("" (use "preorder_restrict[csequence, finite_csequence]")
(("" (expand "partial_order?")
(("" (hide -1 -2)
(("" (expand* "restrict" "antisymmetric?")
(("" (skosimp)
(("" (lemma "suffix?_length")
(("" (inst-cp - "y!1" "x!1")
(("" (inst - "x!1" "y!1")
(("" (use "suffix?_length_eq")
(("" (assert) nil nil)) nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil)
((preorder_restrict judgement-tcc nil restrict_order_props nil)
(T formal-type-decl nil csequence_suffix 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)
(pred type-eq-decl nil defined_types nil)
(preorder? const-decl "bool" orders nil)
(suffix? inductive-decl "bool" csequence_suffix nil)
(suffix?_is_preorder name-judgement "(preorder?[csequence])"
csequence_suffix nil)
(preorder_restrict application-judgement "(preorder?[S])"
restrict_order_props nil)
(transitive_restrict application-judgement "(transitive?[S])"
restrict_order_props nil)
(reflexive_restrict application-judgement "(reflexive?[S])"
restrict_order_props nil)
(suffix?_length_eq formula-decl nil csequence_suffix nil)
(suffix?_length formula-decl nil csequence_suffix nil)
(restrict const-decl "R" restrict nil)
(antisymmetric? const-decl "bool" relations nil)
(partial_order? const-decl "bool" orders nil)
(suffix?_is_preorder judgement-tcc nil csequence_suffix nil))
shostak))
(suffix?_order 0
(suffix?_order-1 nil 3513620921
("" (skosimp)
(("" (lemma "suffix?_induction")
((""
(inst - "cseq1!1"
"LAMBDA cseq: FORALL cseq2: suffix?(cseq2, cseq) IMPLIES suffix?(cseq1!1, cseq2) OR suffix?(cseq2, cseq1!1)")
(("" (split)
(("1" (inst - "cseq!1")
(("1" (assert)
(("1" (inst - "cseq2!1") (("1" (assert) nil nil)) nil))
nil))
nil)
("2" (delete -1 -2 2 3)
(("2" (skosimp*)
(("2" (ground)
(("2" (expand "suffix?" (-4 1))
(("2" (inst - "cseq2!3") (("2" (ground) nil nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil)
((suffix?_induction formula-decl nil csequence_suffix nil)
(suffix?_is_preorder name-judgement "(preorder?[csequence])"
csequence_suffix nil)
(OR const-decl "[bool, bool -> bool]" booleans nil)
(suffix? inductive-decl "bool" csequence_suffix 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)
(T formal-type-decl nil csequence_suffix nil))
shostak))
(suffix_TCC1 0
(suffix_TCC1-1 nil 3513620034
("" (expand "suffix?") (("" (propax) nil nil)) nil)
((suffix? inductive-decl "bool" csequence_suffix nil)) nil))
(suffix_TCC2 0
(suffix_TCC2-1 nil 3513620034 ("" (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)
(>= const-decl "bool" 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)
(nat nonempty-type-eq-decl nil naturalnumbers nil)
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil))
nil))
(suffix_TCC3 0
(suffix_TCC3-1 nil 3513620034 ("" (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)
(>= const-decl "bool" 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)
(nat nonempty-type-eq-decl nil naturalnumbers 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))
(suffix_TCC4 0
(suffix_TCC4-1 nil 3513620034 ("" (termination-tcc) nil nil) nil
nil))
(suffix_TCC5 0
(suffix_TCC5-1 nil 3513620034
("" (skosimp) (("" (expand "suffix?") (("" (ground) nil nil)) nil))
nil)
((suffix? inductive-decl "bool" csequence_suffix nil)
(int_minus_int_is_int application-judgement "int" integers nil)
(suffix?_is_preorder name-judgement "(preorder?[csequence])"
csequence_suffix nil))
nil))
(suffix_is_finite 0
(suffix_is_finite-1 nil 3513620034
("" (induct "n")
(("1" (expand "suffix") (("1" (propax) nil nil)) nil)
("2" (skosimp* t)
(("2" (expand "is_finite" -1)
(("2" (expand "suffix" +)
(("2" (ground) (("2" (inst - "rest(fseq!1)") nil nil)) nil))
nil))
nil))
nil))
nil)
((NOT const-decl "[bool -> bool]" booleans nil)
(rest adt-accessor-decl "[(nonempty?) -> csequence]" csequence_codt
nil)
(nonempty? adt-recognizer-decl "[csequence -> boolean]"
csequence_codt nil)
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil)
(nat_induction formula-decl nil naturalnumbers nil)
(suffix def-decl "(LAMBDA (cseq1): suffix?(cseq1, cseq))"
csequence_suffix nil)
(suffix? inductive-decl "bool" csequence_suffix nil)
(finite_csequence nonempty-type-eq-decl nil csequence_props nil)
(is_finite inductive-decl "bool" csequence_props nil)
(csequence type-decl nil csequence_codt nil)
(T formal-type-decl nil csequence_suffix 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))
nil))
(suffix_is_infinite 0
(suffix_is_infinite-1 nil 3513620034
("" (induct "n")
(("1" (expand "suffix") (("1" (propax) nil nil)) nil)
("2" (skosimp* t)
(("2" (expand "suffix" -3)
(("2" (expand "is_finite" +)
(("2" (ground) (("2" (inst - "rest(iseq!1)") nil nil)) nil))
nil))
nil))
nil))
nil)
((rest adt-accessor-decl "[(nonempty?) -> csequence]" csequence_codt
nil)
(nonempty? adt-recognizer-decl "[csequence -> boolean]"
csequence_codt nil)
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil)
(nat_induction formula-decl nil naturalnumbers nil)
(suffix def-decl "(LAMBDA (cseq1): suffix?(cseq1, cseq))"
csequence_suffix nil)
(suffix? inductive-decl "bool" csequence_suffix nil)
(infinite_csequence type-eq-decl nil csequence_props nil)
(is_finite inductive-decl "bool" csequence_props nil)
(NOT const-decl "[bool -> bool]" booleans nil)
(csequence type-decl nil csequence_codt nil)
(T formal-type-decl nil csequence_suffix 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))
nil))
(suffix_0 0
(suffix_0-1 nil 3513621118
("" (expand "suffix") (("" (propax) nil nil)) nil)
((suffix def-decl "(LAMBDA (cseq1): suffix?(cseq1, cseq))"
csequence_suffix nil))
shostak))
(suffix_1 0
(suffix_1-1 nil 3513621126 ("" (expand* "suffix" "suffix") nil nil)
((suffix def-decl "(LAMBDA (cseq1): suffix?(cseq1, cseq))"
csequence_suffix nil))
shostak))
(suffix_rest1 0
(suffix_rest1-1 nil 3513621142
("" (expand "suffix" 1 2) (("" (propax) nil nil)) nil)
((suffix def-decl "(LAMBDA (cseq1): suffix?(cseq1, cseq))"
csequence_suffix nil))
shostak))
(suffix_rest2_TCC1 0
(suffix_rest2_TCC1-1 nil 3513620034
("" (measure-induct+ "n" ("cseq" "n") :skolem-typepreds? t)
(("" (expand "index?")
(("" (expand "suffix" +)
(("" (lift-if)
(("" (ground)
(("" (inst - "rest(x!1)" "x!2 - 1") (("" (assert) nil nil))
nil))
nil))
nil))
nil))
nil))
nil)
((int_minus_int_is_int application-judgement "int" integers nil)
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil)
(- const-decl "[numfield, numfield -> numfield]" number_fields nil)
(numfield nonempty-type-eq-decl nil number_fields nil)
(rest adt-accessor-decl "[(nonempty?) -> csequence]" csequence_codt
nil)
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil)
(NOT const-decl "[bool -> bool]" booleans nil)
(IMPLIES const-decl "[bool, bool -> bool]" booleans nil)
(= const-decl "[T, T -> boolean]" equalities nil)
(suffix def-decl "(LAMBDA (cseq1): suffix?(cseq1, cseq))"
csequence_suffix nil)
(suffix? inductive-decl "bool" csequence_suffix nil)
(nonempty? adt-recognizer-decl "[csequence -> boolean]"
csequence_codt 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)
(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_suffix nil)
(measure_induction formula-decl nil measure_induction nil)
(well_founded? const-decl "bool" orders nil)
(pred type-eq-decl nil defined_types nil))
nil))
(suffix_rest2 0
(suffix_rest2-1 nil 3513621201
("" (measure-induct+ "n" ("cseq" "n") :skolem-typepreds? t)
(("1" (expand "index?")
(("1" (expand "suffix" +)
(("1" (lift-if)
(("1" (lift-if)
(("1" (lift-if)
(("1" (expand "suffix" 1 1)
(("1" (ground)
(("1" (inst - "rest(x!1)" "x!2 - 1")
(("1" (assert) nil nil)) nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil)
("2" (use "suffix_rest2_TCC1") nil nil)
("3" (use "suffix_rest2_TCC1") nil nil)
("4" (use "suffix_rest2_TCC1") nil nil)
("5" (use "suffix_rest2_TCC1") nil nil))
nil)
((suffix_rest2_TCC1 subtype-tcc nil csequence_suffix nil)
(int_minus_int_is_int application-judgement "int" integers nil)
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil)
(- const-decl "[numfield, numfield -> numfield]" number_fields nil)
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil)
(IMPLIES const-decl "[bool, bool -> bool]" booleans nil)
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil)
(numfield nonempty-type-eq-decl nil number_fields nil)
(rest adt-accessor-decl "[(nonempty?) -> csequence]" csequence_codt
nil)
(= const-decl "[T, T -> boolean]" equalities nil)
(NOT const-decl "[bool -> bool]" booleans nil)
(suffix def-decl "(LAMBDA (cseq1): suffix?(cseq1, cseq))"
csequence_suffix nil)
(suffix? inductive-decl "bool" csequence_suffix nil)
(nonempty? adt-recognizer-decl "[csequence -> boolean]"
csequence_codt nil)
(nnint_plus_posint_is_posint application-judgement "posint"
integers 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)
(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_suffix 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))
(suffix_suffix 0
(suffix_suffix-1 nil 3513621325
("" (induct "n")
(("1" (expand "suffix") (("1" (propax) nil nil)) nil)
("2" (skosimp*)
(("2" (expand "suffix" +)
(("2" (smash)
(("1" (inst - "rest(cseq!1)" "m!1")
(("1" (expand "suffix" -1 1) (("1" (propax) nil nil)) nil))
nil)
("2" (inst - "rest(cseq!1)" "m!1")
(("2" (expand "suffix" -1 1) (("2" (propax) nil nil)) nil))
nil))
nil))
nil))
nil))
nil)
((int_minus_int_is_int application-judgement "int" integers nil)
(nonempty? adt-recognizer-decl "[csequence -> boolean]"
csequence_codt nil)
(rest adt-accessor-decl "[(nonempty?) -> csequence]" csequence_codt
nil)
(posint_plus_nnint_is_posint application-judgement "posint"
integers 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)
(suffix def-decl "(LAMBDA (cseq1): suffix?(cseq1, cseq))"
csequence_suffix nil)
(suffix? inductive-decl "bool" csequence_suffix nil)
(= const-decl "[T, T -> boolean]" equalities nil)
(csequence type-decl nil csequence_codt nil)
(T formal-type-decl nil csequence_suffix 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)
(nnint_plus_nnint_is_nnint application-judgement "nonneg_int"
integers nil))
shostak))
(suffix_length 0
(suffix_length-1 nil 3513621365
("" (induct "n")
(("1" (skolem!)
(("1" (expand* "max" "suffix")
(("1" (lift-if) (("1" (ground) nil nil)) nil)) nil))
nil)
("2" (skosimp* t)
(("2" (expand "suffix" +)
(("2" (lift-if)
(("2" (ground)
(("1" (expand* "length" "max") nil nil)
("2" (expand "is_finite")
(("2" (expand "length" 2 2)
(("2" (inst - "rest(fseq!1)") nil nil)) nil))
nil))
nil))
nil))
nil))
nil))
nil)
((NOT const-decl "[bool -> bool]" booleans nil)
(rest adt-accessor-decl "[(nonempty?) -> csequence]" csequence_codt
nil)
(nonempty? adt-recognizer-decl "[csequence -> boolean]"
csequence_codt nil)
(real_ge_is_total_order name-judgement "(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_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props 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)
(max const-decl "{p: real | p >= m AND p >= n}" real_defs nil)
(AND const-decl "[bool, bool -> bool]" booleans nil)
(suffix def-decl "(LAMBDA (cseq1): suffix?(cseq1, cseq))"
csequence_suffix nil)
(suffix? inductive-decl "bool" csequence_suffix nil)
(length def-decl "{n | has_length(fseq, n)}" csequence_length nil)
(has_length def-decl "bool" csequence_props nil)
(= const-decl "[T, T -> boolean]" equalities nil)
(finite_csequence nonempty-type-eq-decl nil csequence_props nil)
(is_finite inductive-decl "bool" csequence_props nil)
(csequence type-decl nil csequence_codt nil)
(T formal-type-decl nil csequence_suffix 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)
(suffix_is_finite application-judgement "finite_csequence"
csequence_suffix nil)
(int_minus_int_is_int application-judgement "int" integers nil))
shostak))
(suffix_first_TCC1 0
(suffix_first_TCC1-1 nil 3513620034
("" (skolem!) (("" (use "suffix_rest2_TCC1") nil nil)) nil)
((indexes type-eq-decl nil csequence_nth 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)
(number nonempty-type-decl nil numbers nil)
(nonempty_csequence type-eq-decl nil csequence_props nil)
(nonempty? adt-recognizer-decl "[csequence -> boolean]"
csequence_codt nil)
(boolean nonempty-type-decl nil booleans nil)
(csequence type-decl nil csequence_codt nil)
(T formal-type-decl nil csequence_suffix nil)
(suffix_rest2_TCC1 subtype-tcc nil csequence_suffix nil))
nil))
(suffix_first 0
(suffix_first-1 nil 3513621446
("" (measure-induct+ "n" ("nseq" "n") :skolem-typepreds? t)
(("1" (expand "index?")
(("1" (expand "suffix" +)
(("1" (expand "nth" +)
(("1" (lift-if)
(("1" (ground)
(("1" (inst - "rest(x!1)" "x!2 - 1")
(("1" (assert) nil nil)
("2" (expand "index?") (("2" (flatten) nil nil)) nil))
nil))
nil))
nil))
nil))
nil))
nil)
("2" (use "suffix_first_TCC1") nil nil)
("3" (use "suffix_first_TCC1") nil nil)
("4" (use "suffix_first_TCC1") nil nil)
("5" (use "suffix_first_TCC1") nil nil))
nil)
((suffix_first_TCC1 subtype-tcc nil csequence_suffix nil)
(int_minus_int_is_int application-judgement "int" integers nil)
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil)
(numfield nonempty-type-eq-decl nil number_fields nil)
(- const-decl "[numfield, numfield -> numfield]" number_fields nil)
(x!1 skolem-const-decl "nonempty_csequence[T]" csequence_suffix
nil)
(rest adt-accessor-decl "[(nonempty?) -> csequence]" csequence_codt
nil)
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil)
(IMPLIES const-decl "[bool, bool -> bool]" booleans nil)
(nth def-decl "T" csequence_nth nil)
(first adt-accessor-decl "[(nonempty?) -> T]" csequence_codt nil)
(= const-decl "[T, T -> boolean]" equalities nil)
(NOT const-decl "[bool -> bool]" booleans nil)
(suffix def-decl "(LAMBDA (cseq1): suffix?(cseq1, cseq))"
csequence_suffix nil)
(suffix? inductive-decl "bool" csequence_suffix 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)
(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)
(number nonempty-type-decl nil numbers nil)
(nonempty_csequence type-eq-decl nil csequence_props nil)
(nonempty? adt-recognizer-decl "[csequence -> boolean]"
csequence_codt nil)
(boolean nonempty-type-decl nil booleans nil)
(csequence type-decl nil csequence_codt nil)
(T formal-type-decl nil csequence_suffix 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))
(suffix_index 0
(suffix_index-1 nil 3513621507
("" (skolem!)
(("" (rewrite "index?_prop")
(("" (rewrite "index?_prop")
(("" (prop)
(("1" (rewrite "suffix_length")
(("1" (expand "max")
(("1" (lift-if) (("1" (assert) nil nil)) nil)) nil))
nil)
("2" (use "suffix_is_finite" ("fseq" "cseq!1")) nil nil)
("3" (rewrite "suffix_length")
(("3" (expand "max") (("3" (assert) nil nil)) nil)) nil)
("4" (use "suffix_is_infinite") nil nil))
nil))
nil))
nil))
nil)
((index?_prop formula-decl nil csequence_nth nil)
(csequence type-decl nil csequence_codt 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)
(suffix? inductive-decl "bool" csequence_suffix nil)
(suffix def-decl "(LAMBDA (cseq1): suffix?(cseq1, cseq))"
csequence_suffix nil)
(T formal-type-decl nil csequence_suffix nil)
(real_lt_is_strict_total_order name-judgement
"(strict_total_order?[real])" real_props nil)
(max const-decl "{p: real | p >= m AND p >= n}" real_defs 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_minus_int_is_int application-judgement "int" integers nil)
(suffix_length formula-decl nil csequence_suffix nil)
(is_finite inductive-decl "bool" csequence_props nil)
(finite_csequence nonempty-type-eq-decl nil csequence_props nil)
(suffix_is_finite judgement-tcc nil csequence_suffix nil)
(suffix_is_infinite judgement-tcc nil csequence_suffix nil)
(suffix_is_infinite application-judgement "infinite_csequence"
csequence_suffix nil)
(infinite_csequence type-eq-decl nil csequence_props nil)
(NOT const-decl "[bool -> bool]" booleans nil)
(cseq!1 skolem-const-decl "csequence[T]" csequence_suffix nil)
(nnint_plus_nnint_is_nnint application-judgement "nonneg_int"
integers nil)
(numfield nonempty-type-eq-decl nil number_fields nil)
(+ const-decl "[numfield, numfield -> numfield]" number_fields
nil))
shostak))
(suffix_nth_TCC1 0
(suffix_nth_TCC1-1 nil 3513620034
("" (skolem-typepred)
(("" (rewrite "suffix_index") (("" (assert) nil nil)) nil)) nil)
((suffix_index formula-decl nil csequence_suffix nil)
(nnint_plus_nnint_is_nnint application-judgement "nonneg_int"
integers nil)
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil)
(indexes type-eq-decl nil csequence_nth nil)
(suffix def-decl "(LAMBDA (cseq1): suffix?(cseq1, cseq))"
csequence_suffix nil)
(suffix? inductive-decl "bool" csequence_suffix nil)
(index? def-decl "bool" csequence_nth nil)
(csequence type-decl nil csequence_codt nil)
(T formal-type-decl nil csequence_suffix nil)
(nat nonempty-type-eq-decl nil naturalnumbers 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)
(real nonempty-type-from-decl nil reals nil)
(real_pred const-decl "[number_field -> boolean]" reals nil)
(number_field nonempty-type-from-decl nil number_fields nil)
(number_field_pred const-decl "[number -> boolean]" number_fields
nil)
(number nonempty-type-decl nil numbers nil)
(NOT const-decl "[bool -> bool]" booleans nil)
(bool nonempty-type-eq-decl nil booleans nil)
(boolean nonempty-type-decl nil booleans nil))
nil))
(suffix_nth 0
(suffix_nth-1 nil 3513621601
("" (induct "n")
(("1" (expand "suffix") (("1" (propax) nil nil)) nil)
("2" (skosimp* t)
(("2" (expand "nth" +)
(("2" (expand "suffix" (-1 +))
(("2" (expand "index?")
(("2" (lift-if)
(("2" (ground)
(("1" (use "suffix_first")
(("1" (assert) nil nil)
("2" (expand "suffix" -3) (("2" (assert) nil nil))
nil))
nil)
("2" (use "suffix_first")
(("1" (assert) nil nil)
("2" (expand "suffix" -3) (("2" (assert) nil nil))
nil))
nil)
("3" (inst - "rest(cseq!1)" "m!1")
(("1" (expand "nth" -4 1) (("1" (propax) nil nil))
nil)
("2" (expand "index?" +) (("2" (propax) nil nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil)
("3" (skolem!)
(("3" (use "suffix_nth_TCC1" ("n" "n!2"))
(("3" (assert) nil nil)) nil))
nil))
nil)
((suffix_nth_TCC1 subtype-tcc nil csequence_suffix nil)
(NOT const-decl "[bool -> bool]" booleans nil)
(j!1 skolem-const-decl "nat" csequence_suffix nil)
(m!1 skolem-const-decl "indexes[T](suffix(cseq!1, 1 + j!1))"
csequence_suffix nil)
(suffix_first formula-decl nil csequence_suffix nil)
(nonempty_csequence type-eq-decl nil csequence_props nil)
(cseq!1 skolem-const-decl "csequence[T]" csequence_suffix nil)
(rest adt-accessor-decl "[(nonempty?) -> csequence]" csequence_codt
nil)
(nonempty? adt-recognizer-decl "[csequence -> boolean]"
csequence_codt nil)
(real_ge_is_total_order name-judgement "(total_order?[real])"
real_props nil)
(int_minus_int_is_int application-judgement "int" integers nil)
(posint_plus_nnint_is_posint application-judgement "posint"
integers nil)
(nat_induction formula-decl nil naturalnumbers nil)
(nth def-decl "T" csequence_nth nil)
(= const-decl "[T, T -> boolean]" equalities nil)
(pred type-eq-decl nil defined_types nil)
(number nonempty-type-decl nil numbers nil)
(boolean nonempty-type-decl nil booleans nil)
(number_field_pred const-decl "[number -> boolean]" number_fields
nil)
(number_field nonempty-type-from-decl nil number_fields nil)
(real_pred const-decl "[number_field -> boolean]" reals nil)
(real nonempty-type-from-decl nil reals nil)
(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)
(T formal-type-decl nil csequence_suffix nil)
(csequence type-decl nil csequence_codt nil)
(index? def-decl "bool" csequence_nth nil)
(suffix? inductive-decl "bool" csequence_suffix nil)
(suffix def-decl "(LAMBDA (cseq1): suffix?(cseq1, cseq))"
csequence_suffix nil)
(indexes type-eq-decl nil csequence_nth nil)
(numfield nonempty-type-eq-decl nil number_fields nil)
(+ const-decl "[numfield, numfield -> numfield]" number_fields nil)
(nnint_plus_nnint_is_nnint application-judgement "nonneg_int"
integers nil))
shostak))
(suffix_empty 0
(suffix_empty-1 nil 3513621725
("" (induct "n")
(("1" (expand* "index?" "suffix") (("1" (reduce) nil nil)) nil)
("2" (skosimp*)
(("2" (expand "index?" +)
(("2" (expand "suffix" +) (("2" (reduce) nil nil)) nil)) nil))
nil))
nil)
((cseq!1 skolem-const-decl "csequence[T]" csequence_suffix nil)
(rest adt-accessor-decl "[(nonempty?) -> csequence]" csequence_codt
nil)
(nonempty? adt-recognizer-decl "[csequence -> boolean]"
csequence_codt nil)
(nnint_plus_posint_is_posint application-judgement "posint"
integers nil)
(nat_induction formula-decl nil naturalnumbers nil)
(index? def-decl "bool" csequence_nth nil)
(NOT const-decl "[bool -> bool]" booleans nil)
(suffix def-decl "(LAMBDA (cseq1): suffix?(cseq1, cseq))"
csequence_suffix nil)
(suffix? inductive-decl "bool" csequence_suffix nil)
(empty? adt-recognizer-decl "[csequence -> boolean]" csequence_codt
nil)
(IFF const-decl "[bool, bool -> bool]" booleans nil)
(csequence type-decl nil csequence_codt nil)
(T formal-type-decl nil csequence_suffix 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))
shostak))
(suffix_nonempty 0
(suffix_nonempty-1 nil 3513621756
("" (skolem!)
(("" (use "suffix_empty") (("" (ground) nil nil)) nil)) nil)
((suffix_empty formula-decl nil csequence_suffix 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_suffix nil))
shostak))
(suffix_concatenate_TCC1 0
(suffix_concatenate_TCC1-1 nil 3513620034
("" (skosimp) (("" (use "index?_infinite") nil nil)) nil)
((cseq1!1 skolem-const-decl "csequence[T]" csequence_suffix 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)
(number nonempty-type-decl nil numbers nil)
(infinite_csequence type-eq-decl nil csequence_props nil)
(is_finite inductive-decl "bool" csequence_props nil)
(NOT const-decl "[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)
(index?_infinite formula-decl nil csequence_nth nil)
(T formal-type-decl nil csequence_suffix nil))
nil))
(suffix_concatenate_TCC2 0
(suffix_concatenate_TCC2-1 nil 3513620034
("" (skosimp)
(("" (rewrite "index?_prop") (("" (assert) nil nil)) nil)) nil)
((index?_prop formula-decl nil csequence_nth nil)
(csequence type-decl nil csequence_codt 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)
(T formal-type-decl nil csequence_suffix 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))
(suffix_concatenate 0
(suffix_concatenate-1 nil 3513621810
("" (auto-rewrite "o_empty_left")
(("" (auto-rewrite "o_empty_right")
(("" (auto-rewrite "o_rest")
(("" (induct "n")
(("1" (skolem!)
(("1" (expand "suffix" 1 1)
(("1" (expand "index?")
(("1" (expand "suffix" 1 1)
(("1" (lift-if)
(("1" (ground)
(("1" (expand* "length" "suffix") nil nil)) nil))
nil))
nil))
nil))
nil))
nil)
("2" (skosimp*)
(("2" (expand "suffix" +)
(("2" (expand "index?" +)
(("2" (expand "length" +)
(("2" (smash)
(("1" (use "o_nonempty_left")
(("1" (assert) nil nil)) nil)
("2" (use "o_nonempty_left")
(("2" (assert) nil nil)) nil)
("3" (use "o_nonempty_left")
(("3" (assert) nil nil)) nil)
("4" (inst - "rest(cseq1!1)" "cseq2!1")
(("4" (assert) nil nil)) nil)
("5" (inst - "rest(cseq1!1)" "cseq2!1")
(("5" (assert)
(("5" (expand "suffix" -1 2)
(("5" (propax) nil nil)) nil))
nil))
nil)
("6" (inst - "rest(cseq1!1)" "cseq2!1")
(("6" (assert)
(("6" (expand "suffix" -1 2)
(("6" (propax) nil nil)) nil))
nil))
nil)
("7" (rewrite "index?_prop")
(("7" (ground)
(("7" (inst - "rest(cseq1!1)" "cseq2!1")
(("7" (assert)
(("7" (expand "suffix" -1 2)
(("7" (propax) nil nil)) nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil))
nil)
("3" (skosimp)
(("3" (use "suffix_concatenate_TCC2")
(("3" (assert) nil nil)) nil))
nil)
("4" (skosimp)
(("4" (use "suffix_concatenate_TCC1")
(("4" (assert) nil nil)) nil))
nil))
nil))
nil))
nil))
nil)
((int_minus_int_is_int application-judgement "int" integers nil)
(is_finite inductive-decl "bool" csequence_props nil)
(index? def-decl "bool" csequence_nth nil)
(NOT const-decl "[bool -> bool]" booleans nil)
(IMPLIES const-decl "[bool, bool -> bool]" booleans nil)
(csequence type-decl nil csequence_codt nil)
(T formal-type-decl nil csequence_suffix 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)
(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)
(pred type-eq-decl nil defined_types nil)
(= const-decl "[T, T -> boolean]" equalities nil)
(suffix? inductive-decl "bool" csequence_suffix nil)
(suffix def-decl "(LAMBDA (cseq1): suffix?(cseq1, cseq))"
csequence_suffix nil)
(O const-decl "csequence" csequence_concatenate nil)
(IF const-decl "[boolean, T, T -> T]" if_def nil)
(nat_induction formula-decl nil naturalnumbers nil)
(nnint_plus_posint_is_posint application-judgement "posint"
integers nil)
(o_empty_left formula-decl nil csequence_concatenate nil)
(mult_divides1 application-judgement "(divides(n))" divides nil)
(mult_divides2 application-judgement "(divides(m))" divides nil)
(posint_plus_nnint_is_posint application-judgement "posint"
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)
(rest adt-accessor-decl "[(nonempty?) -> csequence]" csequence_codt
nil)
(o_nonempty_left judgement-tcc nil csequence_concatenate nil)
(nonempty? adt-recognizer-decl "[csequence -> boolean]"
csequence_codt nil)
(nonempty_csequence type-eq-decl nil csequence_props nil)
(o_empty_right formula-decl nil csequence_concatenate nil)
(o_rest formula-decl nil csequence_concatenate nil)
(odd_minus_even_is_odd application-judgement "odd_int" integers
nil)
(int_plus_int_is_int application-judgement "int" integers nil)
(suffix_concatenate_TCC2 subtype-tcc nil csequence_suffix nil)
--> --------------------
--> maximum size reached
--> --------------------
¤ Diese beiden folgenden Angebotsgruppen bietet das Unternehmen0.64Angebot
Wie Sie bei der Firma Beratungs- und Dienstleistungen beauftragen können
¤
|
Lebenszyklus
Die hierunter aufgelisteten Ziele sind für diese Firma wichtig
Ziele
Entwicklung einer Software für die statische Quellcodeanalyse
|