Canonical Fraction Pair

Canonicalize an exact integer fraction into coprime numerator and positive denominator text; zero denominator is rejected.

Description

Canonicalize an exact integer fraction into coprime numerator and positive denominator text; zero denominator is rejected.

Equivalent fraction spellings can share a canonical reduced pair. A positive denominator fixes where the sign is written.

When to use this tool

Canonicalize an exact integer fraction into coprime numerator and positive denominator text; zero denominator is rejected.

  • Prepare the supplied numerator, denominator fields for this operation.
  • Compare the complete example with the representation used by your own input before carrying the result into another step.

How to use the tool and how it works

  1. Enter numerator, denominator. Use the exact text syntax, units and index conventions explained below.
  2. Run the tool. If input validation fails, correct the supplied fields before interpreting any result.
  3. Read result.numerator, result.denominator. Interpret false, null and empty lists using the distinctions below; they can be valid outputs.

Parse exact integer strings, reject denominator zero, move any denominator sign to the numerator and divide both by their greatest common divisor.1

Input fieldMeaning and representationAccepted input
numeratorExact signed decimal integer text; denominator fields must be nonzero.Optional + or - and 1 to 256 decimal digits
denominatorExact signed decimal integer text; denominator fields must be nonzero.Optional + or - and 1 to 256 decimal digits
Output fieldInterpretation
resultObject containing the named outputs below.
result.numeratorReduced signed numerator as decimal integer text.
result.denominatorPositive denominator as decimal integer text, under the normalization or common-denominator convention above.
json
{
  "input": {
    "numerator": "-4",
    "denominator": "-6"
  },
  "output": {
    "result": {
      "numerator": "2",
      "denominator": "3"
    }
  }
}

Limitations and assumptions

  • Outputs are decimal strings. Zero normalizes to 0/1; mixed-number and decimal input syntax are not accepted.
  • Numerator and denominator fields use exact decimal integer strings of at most 256 digits with an optional sign. Fractions are reduced with a positive denominator before the stated operation.
  • All declared input fields are required and unexpected top-level fields are rejected. Numbers must be finite; lists are limited to 128 entries and ordinary text fields to 8,192 UTF-16 code units, with tighter limits where stated.
  • JSON text inputs must parse within bounded nesting and size limits. Numeric outputs outside the safe finite range are rejected; large exact integer results use decimal strings. Indexes and half-open spans are zero-based unless a rank is explicitly described as one-based.

Alternative or Complementary methods

Use exact numerator/denominator operations when equality and boundary decisions matter. Convert to a decimal display only with an explicit rounding policy; a rounded display should not replace the exact result.

References

  1. Tool behavior and example: Canonical Fraction Pair — tool.io

Similar or alternative tools

  • Fraction Mediant Pair

    Exact rational mediant of canonical positive-denominator pairs using decimal integer text and coprime output; no IEEE-754 precision loss.

  • Fraction Reciprocal Pair

    Return the exact reciprocal of a nonzero rational in canonical integer text; zero reciprocal is rejected.

Don't forget to set a bookmark for tool.io!
Privacy | Imprint | Cookies