Explore related knowledge and questions →

Question 34941: Exact Fraction for a Terminating Decimal

On this page
  1. Original question and givens
  2. Definition and scope
  3. Step-by-step derivation
  4. Reverse checks
  5. Result
  6. This question review and source binding

Return to catalogue page 175

← Question derivation index · Original question batch

R0068-34941 · q-20260923-real-terminating-decimal-fraction-0016

Original question and givens

Convert the explicit decimal string 0.09 exactly to a lowest-terms fraction with a positive denominator; do not use floating-point approximation.

  • G001 — Convert the explicit decimal string 0.09 exactly to a lowest-terms fraction with a positive denominator; do not use floating-point approximation.

Definition and scope

Use the original question domain, assumptions and cited MKO definitions. This item has second-context mathematical and bilingual review, with the model, answer and every arithmetic step independently recomputed from the original parameters; the source question remains a candidate.

Step-by-step derivation

S001 · implies

Before

source roles = [qf-real-terminating-decimal-fraction, [decimal, operation, scale]]

After

derived = [decimal_to_fraction, no-invented-domain]

Conditions: none

Separate source banks:legacy RAW SAFE with unbounded derived BigInts versus BASE Number.isInteger without invented SAFE/million caps.Operations,domains and permissive/exact keys follow THIS bank.Keep ORIGINAL JSON intact.

Step identifiers and dependencies

Rule: R68_BANK_specific_keys_operations_and_numeric_guards · Uses: G001

S002 · calculation

Before

Decimal ORIGINAL power10 place1 := mul(1, 10)

After

Decimal ORIGINAL power10 place1 = 10

Conditions: none

Calculate exactly from ORIGINAL ordered operands;mul/sub/div have EXPLICITLY TWO operands.Legacy derived BigInts are not recapped at RAW SAFE;check BASE Number type/representation conditions separately.Do not use floating approximations to force an answer.

Step identifiers and dependencies

Rule: exact_rational_arithmetic · Uses: G001, S001

S003 · calculation

Before

Decimal ORIGINAL power10 place2 := mul(10, 10)

After

Decimal ORIGINAL power10 place2 = 100

Conditions: none

Calculate exactly from ORIGINAL ordered operands;mul/sub/div have EXPLICITLY TWO operands.Legacy derived BigInts are not recapped at RAW SAFE;check BASE Number type/representation conditions separately.Do not use floating approximations to force an answer.

Step identifiers and dependencies

Rule: exact_rational_arithmetic · Uses: G001, S002

S004 · calculation

Before

Decimal ORIGINAL whole part times power10 := mul(0, 100)

After

Decimal ORIGINAL whole part times power10 = 0

Conditions: none

Calculate exactly from ORIGINAL ordered operands;mul/sub/div have EXPLICITLY TWO operands.Legacy derived BigInts are not recapped at RAW SAFE;check BASE Number type/representation conditions separately.Do not use floating approximations to force an answer.

Step identifiers and dependencies

Rule: exact_rational_arithmetic · Uses: G001, S003

S005 · calculation

Before

Decimal ORIGINAL add ALL fractional digits := sum(0, 9)

After

Decimal ORIGINAL add ALL fractional digits = 9

Conditions: none

Calculate exactly from ORIGINAL ordered operands;mul/sub/div have EXPLICITLY TWO operands.Legacy derived BigInts are not recapped at RAW SAFE;check BASE Number type/representation conditions separately.Do not use floating approximations to force an answer.

Step identifiers and dependencies

Rule: exact_rational_arithmetic · Uses: G001, S004

S006 · calculation

Before

Decimal ORIGINAL apply explicit sign := mul(1, 9)

After

Decimal ORIGINAL apply explicit sign = 9

Conditions: none

Calculate exactly from ORIGINAL ordered operands;mul/sub/div have EXPLICITLY TWO operands.Legacy derived BigInts are not recapped at RAW SAFE;check BASE Number type/representation conditions separately.Do not use floating approximations to force an answer.

Step identifiers and dependencies

Rule: exact_rational_arithmetic · Uses: G001, S005

S007 · implies

Before

source roles = [0.09, 2, 0, 09]

After

derived = [9, 100]

Conditions: none

Preserve the ORIGINAL string and place count.Compute whole*10^scale plus ALL fractional digits,then apply the sign,WITHOUT floating parsing.The leading fractional zeros in0.001 still count toward scale.

Step identifiers and dependencies

Rule: Real_DECIMAL_lexical_places_EXACT_integer_over_power10 · Uses: G001, S006

S008 · calculation

Before

Decimal exact derived fraction ORIGINAL exact numerator over nonzero denominator := div(9, 100)

After

Decimal exact derived fraction ORIGINAL exact numerator over nonzero denominator = 9/100

Conditions: none

Calculate exactly from ORIGINAL ordered operands;mul/sub/div have EXPLICITLY TWO operands.Legacy derived BigInts are not recapped at RAW SAFE;check BASE Number type/representation conditions separately.Do not use floating approximations to force an answer.

Step identifiers and dependencies

Rule: exact_rational_arithmetic · Uses: G001, S007

S009 · implies

Before

source roles = [Decimal exact derived fraction, [9, 100]]

After

derived = [[9, 100], 9/100]

Conditions: none

BASE normalizeFraction requires INTEGER components and nonzero denominator,without invented SAFE/million/100million caps.Normalize denominator sign and gcd;zero is0/1.This derived representation does not alter the ORIGINAL raw pair.

Step identifiers and dependencies

Rule: Real_BASE_fraction_sign_gcd_normalization_NO_invented_SAFEcap · Uses: G001, S008

Reverse checks

  • S009 · premise_and_result_audit — Reverse-check THIS question’s ORIGINAL givens,domain and step premises.Preserve originals/English/MKOs/ASTs/status;do not reverse a one-way implication or call finite checks independent review or general formal proof.
  • S008 · premise_and_result_audit — Recompute Decimal exact derived fraction ORIGINAL exact numerator over nonzero denominator with exact rational arithmetic, not rounded decimals.
  • S007 · premise_and_result_audit — Reverse-check THIS question’s ORIGINAL givens,domain and step premises.Preserve originals/English/MKOs/ASTs/status;do not reverse a one-way implication or call finite checks independent review or general formal proof.
  • S006 · premise_and_result_audit — Recompute Decimal ORIGINAL apply explicit sign with exact rational arithmetic, not rounded decimals.
  • S005 · premise_and_result_audit — Recompute Decimal ORIGINAL add ALL fractional digits with exact rational arithmetic, not rounded decimals.
  • S004 · premise_and_result_audit — Recompute Decimal ORIGINAL whole part times power10 with exact rational arithmetic, not rounded decimals.
  • S003 · premise_and_result_audit — Recompute Decimal ORIGINAL power10 place2 with exact rational arithmetic, not rounded decimals.
  • S002 · premise_and_result_audit — Recompute Decimal ORIGINAL power10 place1 with exact rational arithmetic, not rounded decimals.
  • S001 · premise_and_result_audit — Reverse-check THIS question’s ORIGINAL givens,domain and step premises.Preserve originals/English/MKOs/ASTs/status;do not reverse a one-way implication or call finite checks independent review or general formal proof.

Result

9/100

The full substitutions and premise checks give the original answer; source identity,format and status are unchanged.

This question review and source binding

Review date: 2026-10-26

Original questions, answers, step expressions, numeric ASTs and historical records are retained. Source candidate labels remain historical and are not overwritten as formal proof.

Source hashes and review receipts
  • input commit: 0f7be61e2c22317a4075561dc822c87d881a50db
  • original question SHA-256: 9633be8effeb5e3b0d2f13f8dd05f78a2d7fe953b123b8ef91cd0d09e060ab6a
  • candidate record SHA-256: 7aea5f0a6c10059bd05f0009f87187d2e9b89ed4cce3914ea74359b6e465d7ee
  • semantic review receipt SHA-256: e7a54104fa02c235f7591329bd6db8d626dd74bf0fae29c557b1f269c85066ed
  • question-first witness SHA-256: 8401a3c2064c1275a6a7ea8f00412fa12286cec7b2db6c305ff9dba3724ae229
  • Lean: NOT_RUN · human review: NOT_PERFORMED
Same-source full JSON