• Top
    • Documentation
      • Xdoc
      • ACL2-doc
      • Recursion-and-induction
      • Loop$-primer
      • Operational-semantics
      • Pointers
      • Doc
      • Documentation-copyright
      • Course-materials
      • Publications
        • Pub-books
        • Pub-papers
          • Pub-programming-languages
          • Pub-processor-models
          • Pub-miscellaneous-applications
          • Pub-logic-and-metamathematics
          • Pub-foundations
          • Pub-floating-point-arithmetic
          • Pub-data-structures
          • Pub-real-arithmetic
            • Pub-overviews
            • Pub-capabilities
            • Pub-model-checking-and-ste
            • Pub-utilities
            • Pub-concurrency
          • Pub-summary
          • Pub-related-web-sites
        • Args
        • ACL2-doc-summary
        • Finding-documentation
        • Broken-link
        • Doc-terminal-test-2
        • Doc-terminal-test-1
      • Books
      • Boolean-reasoning
      • Projects
      • Debugging
      • Std
      • Proof-automation
      • Macro-libraries
      • ACL2
      • Interfacing-tools
      • Hardware-verification
      • Software-verification
      • Math
      • Testing-utilities
    • Pub-papers

    Pub-real-arithmetic

    Real Arithmetic

    • Non-Standard Analysis in ACL2, Ruben A. Gamboa and Matt Kaufmann, Journal of Automated Reasoning 27(4), 323-351, 2001. This paper describes ACL2(r), a version of ACL2 with support for the real and complex numbers. The modifications are based on non-standard analysis, which interacts better with the discrete flavor of ACL2 than does traditional analysis. See below (discussion of a variant of ACL2 called “ACL2(r)”) or see real for more about ACL2(r).
    • Modular Proof: The Fundamental Theorem of Calculus, Matt Kaufmann, Chapter 6 of Computer-Aided Reasoning: ACL2 Case Studies (Kaufmann, Manolios, Moore, eds.) Kluwer, 2000. (ACL2 scripts are available from directory 1999/calculus/ in the community-books.) The article presents a modular top-down proof methodology and uses it to formalize and prove the Fundamental Theorem of Calculus. The modular strategy works for both ACL2 and “ACL2(r)” (see above); the Fundamental Theorem is proved with ACL2(r). The ACL2 scripts referenced here provide the full details of the results described in the article along with solutions to all the exercises in the article.
    • Continuity and Differentiability, Ruben Gamboa, Chapter 18 of Computer-Aided Reasoning: ACL2 Case Studies (Kaufmann, Manolios, Moore, eds.) Kluwer, 2000. (ACL2 scripts are available from directory 1999/analysis/ in the community-books.) This article shows how an extended version of ACL2 (named “ACL2(r)” and described below) can be used to reason about the real and complex numbers, using non-standard analysis. It describes some modifications to ACL2 that introduce the irrational real and complex numbers into ACL2's number system. It then shows how the modified ACL2 can prove classic theorems of analysis, such as the intermediate-value and mean-value theorems. The ACL2(r) scripts referenced here provide the full details of the results described in the article along with solutions to all the exercises in the article.
    • ACL2 supports the rational numbers but not the reals. Starting with Version 2.5, however, a variant of ACL2 called “ACL2(r)” supports the real numbers by way of non-standard analysis. ACL2(r) was produced by Ruben Gamboa from ACL2. ACL2(r) can be built from the ACL2 sources (Versions 2.5 and higher). See the makefile for instructions for building ACL2(r). For further acknowledgements and some technical details see the documentation topic real in the online documentation for ACL2. ACL2 authors Kaufmann and Moore consider ACL2(r) Version 2.5 to be in “beta release.” They have tried to ensure that when ACL2 is built from the integrated source files, the result is a sound ACL2. They are confident that ACL2(r) will eventually be sound and behave much as it does in the Version 2.5 release, but have not yet checked every detail of the integration. For the foundations of ACL2(r), see Gamboa's Ph.D. dissertation Mechanically Verifying Real-Valued Algorithms in ACL2 (UT, May, 1999). The dissertation includes ACL2(r)-checked proofs of many fundamental properties of the real numbers, including such results as the continuity of e^x, Euler's identity, the basic identities of trigonometry, the intermediate value theorem, and others.
    • Square Roots in ACL2: A Study in Sonata Form, Ruben Gamboa, UTCS Tech Report TR96-34, November, 1996. This paper describes a proof in ACL2 that (* x x) is never 2. This was the beginning of Gamboa's journey into the ACL2 mechanization of non-standard analysis.