• Top
    • Documentation
    • Books
    • Boolean-reasoning
    • Projects
    • Debugging
    • Std
    • Proof-automation
    • Macro-libraries
    • ACL2
    • Interfacing-tools
      • Io
      • Defttag
      • Sys-call
      • Save-exec
      • Quicklisp
      • Std/io
      • Oslib
        • File-types
        • Argv
        • Copy
        • Catpath
        • Ls
        • Universal-time
        • Tempfile
          • Default-tempfile-aux
          • Default-tempdir
          • Default-tempfile
          • Basename
          • Dirname
          • Copy!
          • Ls-files
          • Mkdir
          • Rmtree
          • Lisp-version
          • Lisp-type
          • Ls-subdirs
          • Date
          • Getpid
          • Dirnames
          • Basenames
          • Basename!
          • Ls-subdirs!
          • Ls-files!
          • Dirname!
          • Ls!
          • Catpaths
          • Mkdir!
          • Rmtree!
          • Remove-nonstrings
        • Bridge
        • Clex
        • Tshell
        • Unsound-eval
        • Hacker
        • ACL2s-interface
        • Startup-banner
        • Command-line
      • Hardware-verification
      • Software-verification
      • Math
      • Testing-utilities
    • Tempfile

    Default-tempfile

    Default way to generate temporary file names.

    Signature
    (default-tempfile basename state) → (mv tempfile new-state)
    Arguments
    basename — Guard (stringp basename).
    Returns
    tempfile — Type (or (stringp tempfile) (not tempfile)).
    new-state — Type (state-p1 new-state), given (force (state-p1 state)).

    Definitions and Theorems

    Function: default-tempfile

    (defun default-tempfile (basename state)
      (declare (xargs :stobjs (state)))
      (declare (xargs :guard (stringp basename)))
      (let ((__function__ 'default-tempfile))
        (declare (ignorable __function__))
        (b* (((mv dir state)
              (default-tempdir state)))
          (default-tempfile-aux dir basename state))))

    Theorem: return-type-of-default-tempfile.tempfile

    (defthm return-type-of-default-tempfile.tempfile
      (b* (((mv ?tempfile ?new-state)
            (default-tempfile basename state)))
        (or (stringp tempfile) (not tempfile)))
      :rule-classes :type-prescription)

    Theorem: state-p1-of-default-tempfile.new-state

    (defthm state-p1-of-default-tempfile.new-state
      (implies (force (state-p1 state))
               (b* (((mv ?tempfile ?new-state)
                     (default-tempfile basename state)))
                 (state-p1 new-state)))
      :rule-classes :rewrite)

    Theorem: w-state-of-default-tempfile

    (defthm w-state-of-default-tempfile
      (b* (((mv ?tempfile ?new-state)
            (default-tempfile basename state)))
        (equal (w new-state) (w state))))