• Top
    • Documentation
    • Books
    • Boolean-reasoning
    • Projects
    • Debugging
    • Std
    • Proof-automation
    • Macro-libraries
    • ACL2
    • Interfacing-tools
    • Hardware-verification
    • Software-verification
    • Math
      • 100-theorems
      • Arithmetic
      • Bit-vectors
        • Sparseint
        • Bitops
        • Bv
        • Ihs
          • Logops-definitions
          • Math-lemmas
            • Prefer-*-to-/
            • ACL2-numberp-algebra
            • Integerp-+-minus-*
            • Rewrite-linear-equalities-to-iff
            • Ihs-math
            • Rationalp-algebra
            • Normalize-<-/-to-*-3
            • Expt-algebra
            • Cancel-equal-+-*
            • Normalize-<-/-to-*
            • Normalize-<-minus-/
            • Normalize-equal-/-to-*
            • Normalize-equal-0
              • Integerp-algebra
            • Ihs-theories
            • Ihs-init
            • Logops
          • Rtl
        • Algebra
      • Testing-utilities
    • Math-lemmas

    Normalize-equal-0

    Rewrite (equal (- x) 0), (equal (+ x y) 0), and (equal (* x y) 0).

    Definitions and Theorems

    Theorem: normalize-equal-0

    (defthm normalize-equal-0
      (and (equal (equal (- x) 0)
                  (equal (fix x) 0))
           (equal (equal (+ x y) 0)
                  (equal (fix x) (- y)))
           (equal (equal (* x y) 0)
                  (or (equal (fix x) 0)
                      (equal (fix y) 0)))))