• Top
    • Documentation
    • Books
    • Boolean-reasoning
    • Projects
    • Debugging
    • Std
    • Proof-automation
    • Macro-libraries
    • ACL2
    • Interfacing-tools
    • Hardware-verification
    • Software-verification
      • Kestrel-books
      • X86isa
        • Program-execution
        • Sdm-instruction-set-summary
        • Tlb
        • Running-linux
        • Introduction
        • Asmtest
        • X86isa-build-instructions
        • Publications
        • Contributors
        • Machine
          • X86isa-state
          • Syscalls
            • Syscalls-logic
              • Syscall-write-logic
              • Syscall-lseek-logic
              • Syscall-read-logic
              • Syscall-open-logic
              • Syscall-dup2-logic
              • Syscall-close-logic
              • Syscall-dup-logic
              • Syscall-write
              • Syscall-read
              • Syscall-open
                • Syscall-lseek
                • Syscall-close
                • Syscall-dup
                • Syscall-unlink
                • Syscall-truncate
                • Syscall-stat
                • Syscall-lstat
                • Syscall-link
                • Syscall-ftruncate
                • Syscall-fstat
                • Syscall-fcntl
                • Syscall-fadvise64
                • Syscall-dup2
                • Syscall-unlink-logic
                • Syscall-truncate-logic
                • Syscall-stat-logic
                • Syscall-lstat-logic
                • Syscall-link-logic
                • Syscall-ftruncate-logic
                • Syscall-fstat-logic
                • Syscall-fcntl-logic
                • Syscall-fadvise64-logic
                • Syscall-dup3-logic
                • Syscall-dup3
              • X86-syscall-args-and-return-value-marshalling
              • Syscall-numbers
              • Syscalls-exec
            • Cpuid
            • Linear-memory
            • Rflag-specifications
            • Characterizing-undefined-behavior
            • Top-level-memory
            • App-view
            • X86-decoder
            • Physical-memory
            • Decoding-and-spec-utils
            • Instructions
            • Register-readers-and-writers
            • X86-modes
            • Segmentation
            • Other-non-deterministic-computations
            • Environment
            • Paging
          • Implemented-opcodes
          • To-do
          • Proof-utilities
          • Peripherals
          • Model-validation
          • Modelcalls
          • Concrete-simulation-examples
          • Utils
          • Debugging-code-proofs
        • Axe
        • Execloader
      • Math
      • Testing-utilities
    • Syscalls-logic

    Syscall-open

    Signature
    (syscall-open pathname oflags mode x86) → (mv * x86)

    Definitions and Theorems

    Function: syscall-open$notinline

    (defun syscall-open$notinline (pathname oflags mode x86)
      (declare (xargs :stobjs (x86)))
      (declare (ignorable pathname oflags mode x86))
      (declare (xargs :guard (and (stringp pathname)
                                  (natp oflags)
                                  (natp mode))))
      (let ((__function__ 'syscall-open))
        (declare (ignorable __function__))
        (syscall-open-logic pathname oflags mode x86)))

    Theorem: integerp-mv-nth-0-syscall-open

    (defthm integerp-mv-nth-0-syscall-open
      (implies
           (and (x86p x86) (stringp pathname))
           (integerp (mv-nth 0
                             (syscall-open pathname oflags mode x86))))
      :rule-classes :type-prescription)

    Theorem: x86p-mv-nth-1-syscall-open

    (defthm x86p-mv-nth-1-syscall-open
      (implies (and (x86p x86) (stringp pathname))
               (x86p (mv-nth 1
                             (syscall-open pathname oflags mode x86)))))