• Top
    • Documentation
    • Books
    • Boolean-reasoning
    • Projects
      • Apt
      • Zfc
      • Acre
      • Milawa
      • Smtlink
      • Abnf
      • Vwsim
      • Isar
      • Wp-gen
      • Dimacs-reader
      • Pfcs
      • Legacy-defrstobj
      • Proof-checker-array
      • Soft
      • C
      • Farray
      • Rp-rewriter
      • Instant-runoff-voting
      • Imp-language
      • Sidekick
      • Leftist-trees
      • Java
      • Taspi
      • Bitcoin
      • Riscv
      • Des
      • Ethereum
      • X86isa
        • Program-execution
        • Sdm-instruction-set-summary
        • Tlb
        • Running-linux
        • Introduction
        • Asmtest
        • X86isa-build-instructions
        • Publications
        • Contributors
        • Machine
        • Implemented-opcodes
        • To-do
        • Proof-utilities
        • Peripherals
        • Model-validation
        • Modelcalls
        • Concrete-simulation-examples
          • Fibonacci32-cosim
            • X86isa-one-fib32-cosim
            • Check-fib32-output
            • Run-x86isa-fib32
              • Make-fib32-addr-alst
              • Fib32
            • Fibonacci-cosim
            • Factorial-cosim
            • Nop-cosim
            • Datacopy-cosim
          • Utils
          • Debugging-code-proofs
        • Sha-2
        • Yul
        • Zcash
        • Proof-checker-itp13
        • Regex
        • ACL2-programming-language
        • Json
        • Jfkr
        • Equational
        • Cryptography
        • Poseidon
        • Where-do-i-place-my-book
        • Axe
        • Bigmems
        • Builtins
        • Execloader
        • Aleo
        • Solidity
        • Paco
        • Concurrent-programs
        • Bls12-377-curves
      • Debugging
      • Std
      • Proof-automation
      • Macro-libraries
      • ACL2
      • Interfacing-tools
      • Hardware-verification
      • Software-verification
      • Math
      • Testing-utilities
    • Fibonacci32-cosim

    Run-x86isa-fib32

    Signature
    (run-x86isa-fib32 input start-address halt-address xrun-limit x86) 
      → 
    (mv * * x86)

    Definitions and Theorems

    Function: run-x86isa-fib32

    (defun run-x86isa-fib32 (input start-address
                                   halt-address xrun-limit x86)
      (declare (xargs :stobjs (x86)))
      (declare (type (unsigned-byte 8) input)
               (type (signed-byte 48) start-address)
               (type (signed-byte 48) halt-address)
               (type (unsigned-byte 50) xrun-limit))
      (let ((__function__ 'run-x86isa-fib32))
        (declare (ignorable __function__))
        (if (zp input)
            (mv t 0 x86)
          (b* (((mv flg steps x86)
                (x86isa-one-fib32-cosim (1- input)
                                        start-address
                                        halt-address xrun-limit x86))
               ((unless flg)
                (cw "~% Mismatch found!~%")
                (mv flg 0 x86))
               (- (cw "Input: ~p0 Steps: ~p1 ~%"
                      input steps)))
            (run-x86isa-fib32 (1- input)
                              start-address
                              halt-address xrun-limit x86)))))