• Top
    • Documentation
    • Books
    • Recursion-and-induction
    • Boolean-reasoning
    • Projects
    • Debugging
    • Std
    • Proof-automation
    • Macro-libraries
    • ACL2
    • Interfacing-tools
    • Hardware-verification
    • Software-verification
    • Testing-utilities
    • Math
      • Arithmetic
        • Lispfloat
        • Arithmetic-1
          • Inequalities-of-products
          • Basic-product-normalization
          • Inequalities-of-reciprocals
          • Arithmetic/natp-posp
          • Basic-expt-normalization
          • More-rational-identities
          • Inequalities-of-exponents
          • Basic-sum-normalization
          • Basic-rational-identities
            • Basic-expt-type-rules
            • Inequalities-of-sums
            • Basic-products-with-negations
            • Fc
          • Number-theory
          • Proof-by-arith
          • Arith-equivs
          • Number-theory
          • Arithmetic-3
          • Arithmetic-2
          • Arithmetic-light
          • Arithmetic-5
        • Bit-vectors
        • Algebra
    • Arithmetic-1
    • Numerator
    • Denominator

    Basic-rational-identities

    Basic cancellation rules for numerator and denominator terms.

    See also more-rational-identities for additional reductions involving numerator and denominator terms.

    Definitions and Theorems

    Theorem: numerator-when-integerp

    (defthm numerator-when-integerp
            (implies (integerp x)
                     (equal (numerator x) x)))

    Theorem: integerp==>denominator=1

    (defthm integerp==>denominator=1
            (implies (integerp x)
                     (equal (denominator x) 1)))

    Theorem: equal-denominator-1

    (defthm equal-denominator-1
            (equal (equal (denominator x) 1)
                   (or (integerp x) (not (rationalp x)))))

    Theorem: *-r-denominator-r

    (defthm *-r-denominator-r
            (equal (* r (denominator r))
                   (if (rationalp r)
                       (numerator r)
                       (fix r))))

    Theorem: /r-when-abs-numerator=1

    (defthm /r-when-abs-numerator=1
            (and (implies (equal (numerator r) 1)
                          (equal (/ r) (denominator r)))
                 (implies (equal (numerator r) -1)
                          (equal (/ r) (- (denominator r))))))