• Top
    • Documentation
      • Xdoc
      • ACL2-doc
      • Recursion-and-induction
      • Loop$-primer
      • Operational-semantics
        • Operational-semantics-3__annotated-bibliography
          • Bib::bhmy89
          • Bib::liu06
          • Bib::bm96
          • Bib::plotkin04b
          • Bib::bgm90
          • Bib::hkms17
          • Bib::bkm96
          • Bib::moore15
          • Bib::bh99
          • Bib::wilding93
          • Bib::plotkin04a
          • Bib::moore03b
          • Bib::mp02
          • Bib::moore19
          • Bib::manolios00
          • Bib::flatau92
          • Bib::hb92
          • Bib::bm05
          • Bib::goel16
          • Bib::bm73
          • Bib::ghk17
          • Bib::wilding92
          • Bib::moore17
          • Bib::moore96
          • Bib::ghkg14
          • Bib::yu92
          • Bib::hunt85
          • Bib::boh03
          • Bib::mmrv06
          • Bib::bm80
          • Bib::bh97
          • Bib::moore99b
          • Bib::moore14
          • Bib::rm04
          • Bib::by96
          • Bib::sawada00
          • Bib::mccarthy62
          • Bib::bm79
            • Bib::moore99a
            • Bib::sh98
            • Bib::rhmm07
            • Bib::kmm00a
            • Bib::ghk13
            • Bib::moore03a
            • Bib::hk12
            • Bib::mp67
            • Bib::young88
            • Bib::bm97
            • Bib::moore73
            • Bib::kmm00b
            • Bib::bevier87
          • Operational-semantics-1__simple-example
          • Operational-semantics-2__other-examples
          • Operational-semantics-5__history-etc
          • Operational-semantics-4__how-to-find-things
        • Pointers
        • Doc
        • Documentation-copyright
        • Course-materials
        • Publications
        • Args
        • ACL2-doc-summary
        • Finding-documentation
        • Broken-link
        • Doc-terminal-test-2
        • Doc-terminal-test-1
      • Books
      • Boolean-reasoning
      • Projects
      • Debugging
      • Std
      • Community
      • Proof-automation
      • ACL2
      • Macro-libraries
      • Interfacing-tools
      • Hardware-verification
      • Software-verification
      • Math
      • Testing-utilities
    • Operational-semantics-3__annotated-bibliography

    Bib::bm79

    R. S. Boyer and J S. Moore, A Computational Logic, Academic Press, 1979.



    Relevance: implementation details of the prover that became Nqthm



    ———

    This book described the “Boyer-Moore theorem prover” as it stood in 1979, when the prover was locally known as “Thm.” Unlike the Edinburgh Pure Lisp Theorem Prover (PLTP), Thm supported datatypes other than pairs, well-founded ordinals, a conservative definitional principle, and named previously proved lemmas stored as rules. Unlike the later Nqthm, Thm did not support quote-notation and so represented logical constants inefficiently. Thm also lacked the linear-arithmetic decision procedure, and lacked user-supplied hints. Of course, there were also many heuristic changes along the way from PLTP to Nqthm.

    One outstanding feature of A Computational Logic was noted by Boyer and Moore in the Preface to the First Edition of bib::bm97 “we know of three independent successful efforts to construct the theorem prover from the book.” If you want to a good idea of how Nqthm and ACL2 “work,” read this book!