Step-by-step derivation
S001 · implies
Before
source roles = [qf-fraction-exact-addition, addition, no-required-domain, []]
After
derived = [[reduced_fraction_RETAIN1_STRING]]
Conditions: none
BASE sources do not acquire a generic legacy operation/domain or unknown-metadata ban.Retain metadata WITHOUT using it as an answer oracle.PULSE/legacy enforce their exact source keys,operation/domain.Do not impose universal tuples,/1 or input bounds.
Step identifiers and dependencies
Rule: R63_SOURCE_bank_keys_operation_domain_output_roles_metadata_not_oracle · Uses: G001
S002 · implies
Before
source roles = [-3, -3, [10, -5]]
After
derived = [Yes]
Conditions: none
Validate EVERY raw SAFE integer component,including the numerator at q0/0/0 eligibility.A validity task may legally return No;actual arithmetic requires ALL used denominators nonzero.
Step identifiers and dependencies
Rule: Fraction_ALL_RAW_SAFE_integer_components_even_zero_den_validity · Uses: G001, S001
S003 · calculation
Before
Fraction ORIGINAL p times s := mul(-3, -5)
After
Fraction ORIGINAL p times s = 15
Conditions: none
Use ORIGINAL operands and order for exact integer/rational arithmetic.Raw bounds are bank-specific;derived values do not inherit SAFE or foreign small caps.No floating approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S002
S004 · calculation
Before
Fraction ORIGINAL r times q := mul(10, -3)
After
Fraction ORIGINAL r times q = -30
Conditions: none
Use ORIGINAL operands and order for exact integer/rational arithmetic.Raw bounds are bank-specific;derived values do not inherit SAFE or foreign small caps.No floating approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S003
S005 · calculation
Before
Fraction addition ORIGINAL cross numerator sum := sum(15, -30)
After
Fraction addition ORIGINAL cross numerator sum = -15
Conditions: none
Use ORIGINAL operands and order for exact integer/rational arithmetic.Raw bounds are bank-specific;derived values do not inherit SAFE or foreign small caps.No floating approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S004
S006 · calculation
Before
Fraction addition ORIGINAL denominator product := mul(-3, -5)
After
Fraction addition ORIGINAL denominator product = 15
Conditions: none
Use ORIGINAL operands and order for exact integer/rational arithmetic.Raw bounds are bank-specific;derived values do not inherit SAFE or foreign small caps.No floating approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S005
S007 · implies
Before
source roles = [-3, -3, 10, -5]
After
derived = [-15, 15]
Conditions: none
Use the common denominator qs with numerator ps+rq,retaining BOTH cross terms.This is not componentwise addition.Derived large integers are not SAFE-capped.
Step identifiers and dependencies
Rule: Fraction_ADDITION_common_den_ALL_cross_terms_not_naive_components · Uses: G001, S006
S008 · implies
Before
source roles = [Fraction addition normalization, -15, 15]
After
derived = [-15, 15]
Conditions: none
A denominator must FIRST be nonzero.If negative,negate numerator AND denominator together.Derived numerator/denominator are not RAW-SAFE recapped;changing only the denominator would change the value.
Step identifiers and dependencies
Rule: Fraction_DEN_nonzero_sign_normalized_BEFORE_gcd · Uses: G001, S007
S009 · calculation
Before
Fraction addition normalization gcd step0 ORIGINAL quotient times divisor := mul(1, 15)
After
Fraction addition normalization gcd step0 ORIGINAL quotient times divisor = 15
Conditions: none
Use ORIGINAL operands and order for exact integer/rational arithmetic.Raw bounds are bank-specific;derived values do not inherit SAFE or foreign small caps.No floating approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S008
S010 · calculation
Before
Fraction addition normalization gcd step0 ORIGINAL dividend minus product := sub(15, 15)
After
Fraction addition normalization gcd step0 ORIGINAL dividend minus product = 0
Conditions: none
Use ORIGINAL operands and order for exact integer/rational arithmetic.Raw bounds are bank-specific;derived values do not inherit SAFE or foreign small caps.No floating approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S009
S011 · implies
Before
source roles = [Fraction addition normalization, 0, 15, 15, 1]
After
derived = [15, 0]
Conditions: none
Use x=qy+r,0≤r<y,to replace gcd(x,y)by gcd(y,r),preserving common divisors BOTH ways.Divide ONLY by nonzero y;remainders strictly decrease to0.
Step identifiers and dependencies
Rule: Fraction_EUCLID_all_remainders_and_common_divisor_invariant · Uses: G001, S010
S012 · calculation
Before
Fraction addition normalization ORIGINAL numerator over positive gcd := div(-15, 15)
After
Fraction addition normalization ORIGINAL numerator over positive gcd = -1
Conditions: none
Use ORIGINAL operands and order for exact integer/rational arithmetic.Raw bounds are bank-specific;derived values do not inherit SAFE or foreign small caps.No floating approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S011
S013 · calculation
Before
Fraction addition normalization ORIGINAL denominator over positive gcd := div(15, 15)
After
Fraction addition normalization ORIGINAL denominator over positive gcd = 1
Conditions: none
Use ORIGINAL operands and order for exact integer/rational arithmetic.Raw bounds are bank-specific;derived values do not inherit SAFE or foreign small caps.No floating approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S012
S014 · calculation
Before
Fraction addition normalization reverse reduced numerator times gcd := mul(-1, 15)
After
Fraction addition normalization reverse reduced numerator times gcd = -15
Conditions: none
Use ORIGINAL operands and order for exact integer/rational arithmetic.Raw bounds are bank-specific;derived values do not inherit SAFE or foreign small caps.No floating approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S013
S015 · calculation
Before
Fraction addition normalization reverse reduced denominator times gcd := mul(1, 15)
After
Fraction addition normalization reverse reduced denominator times gcd = 15
Conditions: none
Use ORIGINAL operands and order for exact integer/rational arithmetic.Raw bounds are bank-specific;derived values do not inherit SAFE or foreign small caps.No floating approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S014
S016 · implies
Before
source roles = [Fraction addition normalization, -15, 15, 15]
After
derived = [-1, 1, -15, 15, -1/1]
Conditions: none
Divide BOTH components by the positive gcd,retaining value and a positive lowest-terms denominator.Multiply back to recover both components.Zero is0/1;integers RETAIN/1,not decimals.
Step identifiers and dependencies
Rule: Fraction_REDUCED_positive_den_ZERO0over1_RETAIN_integer1 · Uses: G001, S015
S017 · calculation
Before
Fraction addition reverse ORIGINAL fraction sum := sum(1, -2)
After
Fraction addition reverse ORIGINAL fraction sum = -1
Conditions: none
Use ORIGINAL operands and order for exact integer/rational arithmetic.Raw bounds are bank-specific;derived values do not inherit SAFE or foreign small caps.No floating approximation.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S016
S018 · implies
Before
source roles = [1/1, -2/1]
After
derived = [-1/1, -1/1]
Conditions: none
Reverse-check by summing the TWO ORIGINAL fractions with their own denominators.Compare the reduced result exactly without rewriting original parameters.
Step identifiers and dependencies
Rule: Fraction_ADDITION_reverse_original_two_values · Uses: G001, S017