Filtering...

fmx-cw-support

books/system/fmx-cw-support
other
(in-package "ACL2")
other
(verify-termination illegal-fmt-string)
other
(verify-termination fmt-char)
other
(verify-termination zero-one-or-more)
other
(verify-termination standard-evisc-tuplep)
other
(verify-termination fmt-var)
other
(verify-termination find-alternative-skip
  (declare (xargs :verify-guards nil)))
find-alternative-skip-increases-1theorem
(defthm find-alternative-skip-increases-1
  (implies (not (equal 0 (find-alternative-skip s i maximum quiet)))
    (< i (find-alternative-skip s i maximum quiet)))
  :rule-classes :linear)
find-alternative-skip-boundtheorem
(defthm find-alternative-skip-bound
  (implies (natp maximum)
    (<= (find-alternative-skip s i maximum quiet) maximum))
  :rule-classes :linear)
natp-find-alternative-skiptheorem
(defthm natp-find-alternative-skip
  (implies (natp maximum)
    (natp (find-alternative-skip s i maximum quiet)))
  :rule-classes :type-prescription)
local
(local (in-theory (disable nth)))
other
(verify-guards find-alternative-skip)
other
(verify-termination find-alternative-start1
  (declare (xargs :verify-guards nil)))
find-alternative-start1-increases-1theorem
(defthm find-alternative-start1-increases-1
  (let ((index (find-alternative-start1 x s i maximum quiet)))
    (implies (not (equal 0 index)) (<= i index)))
  :rule-classes :linear)
find-alternative-start1-boundtheorem
(defthm find-alternative-start1-bound
  (implies (and (natp i) (<= i maximum))
    (<= (find-alternative-start1 x s i maximum quiet) maximum))
  :rule-classes :linear)
natp-find-alternative-start1theorem
(defthm natp-find-alternative-start1
  (implies (and (force (natp i)) (force (natp maximum)))
    (natp (find-alternative-start1 x s i maximum quiet)))
  :rule-classes :type-prescription)
find-alternative-skip-bound-alttheorem
(defthm find-alternative-skip-bound-alt
  (implies (and (natp maximum)
      (not (equal (find-alternative-skip s i maximum quiet) 0)))
    (<= (find-alternative-skip s i maximum quiet) maximum))
  :rule-classes :linear)
other
(verify-guards find-alternative-start1)
other
(verify-termination find-alternative-start)
other
(verify-termination find-alternative-stop
  (declare (xargs :verify-guards nil)))
find-alternative-stop-increases-1theorem
(defthm find-alternative-stop-increases-1
  (implies (not (equal 0 (find-alternative-stop s i maximum quiet)))
    (<= i (find-alternative-stop s i maximum quiet)))
  :rule-classes :linear)
find-alternative-stop-boundtheorem
(defthm find-alternative-stop-bound
  (implies (and (natp i) (<= i maximum))
    (<= (find-alternative-stop s i maximum quiet) maximum))
  :rule-classes :linear)
natp-find-alternative-stoptheorem
(defthm natp-find-alternative-stop
  (implies (and (natp i) (natp maximum))
    (natp (find-alternative-stop s i maximum quiet)))
  :rule-classes :type-prescription)
other
(verify-guards find-alternative-stop)
other
(verify-termination scan-past-whitespace
  (declare (xargs :verify-guards nil)))
natp-scan-past-whitespacetheorem
(defthm natp-scan-past-whitespace
  (implies (and (natp i) (natp maximum))
    (natp (scan-past-whitespace s i maximum)))
  :rule-classes :type-prescription)
scan-past-whitespace-boundtheorem
(defthm scan-past-whitespace-bound
  (implies (and (integerp i) (integerp maximum))
    (<= (scan-past-whitespace s i maximum) maximum))
  :rule-classes :linear)
other
(verify-guards scan-past-whitespace)
character-alistp-appendtheorem
(defthm character-alistp-append
  (implies (true-listp x)
    (equal (character-alistp (append x y))
      (and (character-alistp x) (character-alistp y)))))
other
(verify-termination fmx-cw-msg-1)
other
(verify-termination fmx-cw-msg)
other
(verify-termination fmx-cw-fn-guard)
other
(verify-termination fmx-cw-fn)
other
(verify-termination fmx!-cw-fn)
fmx-cw-msg-1-openertheorem
(defthm fmx-cw-msg-1-opener
  (implies (syntaxp (and (quotep s) (quotep i)))
    (equal (fmx-cw-msg-1 s alist i maximum clk)
      (fmx-cw-msg-1-body)))
  :hints (("Goal" :expand ((:free (clk) (fmx-cw-msg-1 s alist i maximum clk))))))
local
(local (defun test1
    (x)
    (declare (xargs :guard (true-listp x)))
    (fmx-cw "ab~&0cd" x)))
local
(local (defun test2
    (x)
    (declare (xargs :guard t))
    (fmx!-cw "~@0" (msg "Hello~|~x0~|" x))))
local
(local (defthm search-from-start-type-prescription
    (implies (natp start2)
      (or (equal (search-from-start s1 s2 start2 end2) nil)
        (natp (search-from-start s1 s2 start2 end2))))
    :rule-classes :type-prescription))
local
(local (defthm search-from-start-lower-bound
    (implies (search-from-start s1 s2 start2 end2)
      (<= start2 (search-from-start s1 s2 start2 end2)))
    :rule-classes :linear))
local
(local (defthm search-from-start-upper-bound
    (implies (and (< start2 end2) (search-from-start s1 s2 start2 end2))
      (< (search-from-start s1 s2 start2 end2) end2))
    :rule-classes :linear))
other
(verify-termination comment-string-p1)
other
(verify-termination comment-string-p)
other
(verify-termination print-control-p)