Step-by-step derivation
S001 · implies
Before
source roles = [pval-sum-ultrametric]
After
derived = [[p, a, b, valuation_a, valuation_b, sum, valuation_sum, minimum_valuation, ultrametric_inequality, valuations_unequal, equality_when_unequal_or_not_guaranteed]]
Conditions: none
List the complete source field order and mode-specific roles without JavaScript or answer-shape inference;No,undefined and infinity retain their distinct meanings.
Step identifiers and dependencies
Rule: source_ordered_fields_without_JS · Uses: G001
S002 · calculation
Before
Valuation ORIGINAL a ORIGINAL division step1 := div(14, 2)
After
Valuation ORIGINAL a ORIGINAL division step1 = 7
Conditions: none
Substitute original roles and established intermediates exactly;no approximation,slot substitution or internally consistent changed operand.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S001
S003 · calculation
Before
Valuation ORIGINAL a dividing prime power1 := mul(1, 2)
After
Valuation ORIGINAL a dividing prime power1 = 2
Conditions: none
Substitute original roles and established intermediates exactly;no approximation,slot substitution or internally consistent changed operand.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S002
S004 · implies
Before
source roles = [Valuation ORIGINAL a, 2, 14, 14, 1]
After
derived = [7, 2, 0, Yes]
Conditions: none
Divide only when the current unit is divisible by p.Each step preserves |a|=p^k*unit and strictly decreases the positive unit,so it terminates.Derived integers do not inherit the raw-input1e6 cap.
Step identifiers and dependencies
Rule: Valuation_EACH_division_source_remainder_and_factor_invariant · Uses: G001, S003
S005 · calculation
Before
Valuation ORIGINAL a terminal factorization product := mul(2, 7)
After
Valuation ORIGINAL a terminal factorization product = 14
Conditions: none
Substitute original roles and established intermediates exactly;no approximation,slot substitution or internally consistent changed operand.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S004
S006 · implies
Before
source roles = [Valuation ORIGINAL a, 2, 14, 14, 1, 7, [2]]
After
derived = [14, 1, Yes, Yes]
Conditions: none
At termination p does not divide the unit,so p^(k+1) does not divide |a| and k is maximal.A sign does not affect divisibility;the factorization is for |a|,not negative a equalling a positive product.
Step identifiers and dependencies
Rule: Valuation_terminal_NONdivisible_unit_highest_power · Uses: G001, S005
S007 · calculation
Before
Valuation ORIGINAL b ORIGINAL division step1 := div(16, 2)
After
Valuation ORIGINAL b ORIGINAL division step1 = 8
Conditions: none
Substitute original roles and established intermediates exactly;no approximation,slot substitution or internally consistent changed operand.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S006
S008 · calculation
Before
Valuation ORIGINAL b dividing prime power1 := mul(1, 2)
After
Valuation ORIGINAL b dividing prime power1 = 2
Conditions: none
Substitute original roles and established intermediates exactly;no approximation,slot substitution or internally consistent changed operand.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S007
S009 · implies
Before
source roles = [Valuation ORIGINAL b, 2, 16, 16, 1]
After
derived = [8, 2, 0, Yes]
Conditions: none
Divide only when the current unit is divisible by p.Each step preserves |a|=p^k*unit and strictly decreases the positive unit,so it terminates.Derived integers do not inherit the raw-input1e6 cap.
Step identifiers and dependencies
Rule: Valuation_EACH_division_source_remainder_and_factor_invariant · Uses: G001, S008
S010 · calculation
Before
Valuation ORIGINAL b ORIGINAL division step2 := div(8, 2)
After
Valuation ORIGINAL b ORIGINAL division step2 = 4
Conditions: none
Substitute original roles and established intermediates exactly;no approximation,slot substitution or internally consistent changed operand.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S009
S011 · calculation
Before
Valuation ORIGINAL b dividing prime power2 := mul(2, 2)
After
Valuation ORIGINAL b dividing prime power2 = 4
Conditions: none
Substitute original roles and established intermediates exactly;no approximation,slot substitution or internally consistent changed operand.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S010
S012 · implies
Before
source roles = [Valuation ORIGINAL b, 2, 16, 8, 2]
After
derived = [4, 4, 0, Yes]
Conditions: none
Divide only when the current unit is divisible by p.Each step preserves |a|=p^k*unit and strictly decreases the positive unit,so it terminates.Derived integers do not inherit the raw-input1e6 cap.
Step identifiers and dependencies
Rule: Valuation_EACH_division_source_remainder_and_factor_invariant · Uses: G001, S011
S013 · calculation
Before
Valuation ORIGINAL b ORIGINAL division step3 := div(4, 2)
After
Valuation ORIGINAL b ORIGINAL division step3 = 2
Conditions: none
Substitute original roles and established intermediates exactly;no approximation,slot substitution or internally consistent changed operand.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S012
S014 · calculation
Before
Valuation ORIGINAL b dividing prime power3 := mul(4, 2)
After
Valuation ORIGINAL b dividing prime power3 = 8
Conditions: none
Substitute original roles and established intermediates exactly;no approximation,slot substitution or internally consistent changed operand.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S013
S015 · implies
Before
source roles = [Valuation ORIGINAL b, 2, 16, 4, 3]
After
derived = [2, 8, 0, Yes]
Conditions: none
Divide only when the current unit is divisible by p.Each step preserves |a|=p^k*unit and strictly decreases the positive unit,so it terminates.Derived integers do not inherit the raw-input1e6 cap.
Step identifiers and dependencies
Rule: Valuation_EACH_division_source_remainder_and_factor_invariant · Uses: G001, S014
S016 · calculation
Before
Valuation ORIGINAL b ORIGINAL division step4 := div(2, 2)
After
Valuation ORIGINAL b ORIGINAL division step4 = 1
Conditions: none
Substitute original roles and established intermediates exactly;no approximation,slot substitution or internally consistent changed operand.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S015
S017 · calculation
Before
Valuation ORIGINAL b dividing prime power4 := mul(8, 2)
After
Valuation ORIGINAL b dividing prime power4 = 16
Conditions: none
Substitute original roles and established intermediates exactly;no approximation,slot substitution or internally consistent changed operand.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S016
S018 · implies
Before
source roles = [Valuation ORIGINAL b, 2, 16, 2, 4]
After
derived = [1, 16, 0, Yes]
Conditions: none
Divide only when the current unit is divisible by p.Each step preserves |a|=p^k*unit and strictly decreases the positive unit,so it terminates.Derived integers do not inherit the raw-input1e6 cap.
Step identifiers and dependencies
Rule: Valuation_EACH_division_source_remainder_and_factor_invariant · Uses: G001, S017
S019 · calculation
Before
Valuation ORIGINAL b terminal factorization product := mul(16, 1)
After
Valuation ORIGINAL b terminal factorization product = 16
Conditions: none
Substitute original roles and established intermediates exactly;no approximation,slot substitution or internally consistent changed operand.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S018
S020 · implies
Before
source roles = [Valuation ORIGINAL b, 2, 16, 16, 4, 1, [2, 4, 8, 16]]
After
derived = [16, 1, Yes, Yes]
Conditions: none
At termination p does not divide the unit,so p^(k+1) does not divide |a| and k is maximal.A sign does not affect divisibility;the factorization is for |a|,not negative a equalling a positive product.
Step identifiers and dependencies
Rule: Valuation_terminal_NONdivisible_unit_highest_power · Uses: G001, S019
S021 · calculation
Before
Valuation ORIGINAL a plus b := sum(14, 16)
After
Valuation ORIGINAL a plus b = 30
Conditions: none
Substitute original roles and established intermediates exactly;no approximation,slot substitution or internally consistent changed operand.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S020
S022 · calculation
Before
Valuation ACTUAL sum ORIGINAL division step1 := div(30, 2)
After
Valuation ACTUAL sum ORIGINAL division step1 = 15
Conditions: none
Substitute original roles and established intermediates exactly;no approximation,slot substitution or internally consistent changed operand.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S021
S023 · calculation
Before
Valuation ACTUAL sum dividing prime power1 := mul(1, 2)
After
Valuation ACTUAL sum dividing prime power1 = 2
Conditions: none
Substitute original roles and established intermediates exactly;no approximation,slot substitution or internally consistent changed operand.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S022
S024 · implies
Before
source roles = [Valuation ACTUAL sum, 2, 30, 30, 1]
After
derived = [15, 2, 0, Yes]
Conditions: none
Divide only when the current unit is divisible by p.Each step preserves |a|=p^k*unit and strictly decreases the positive unit,so it terminates.Derived integers do not inherit the raw-input1e6 cap.
Step identifiers and dependencies
Rule: Valuation_EACH_division_source_remainder_and_factor_invariant · Uses: G001, S023
S025 · calculation
Before
Valuation ACTUAL sum terminal factorization product := mul(2, 15)
After
Valuation ACTUAL sum terminal factorization product = 30
Conditions: none
Substitute original roles and established intermediates exactly;no approximation,slot substitution or internally consistent changed operand.
Step identifiers and dependencies
Rule: exact_rational_arithmetic · Uses: G001, S024
S026 · implies
Before
source roles = [Valuation ACTUAL sum, 2, 30, 30, 1, 15, [2]]
After
derived = [30, 1, Yes, Yes]
Conditions: none
At termination p does not divide the unit,so p^(k+1) does not divide |a| and k is maximal.A sign does not affect divisibility;the factorization is for |a|,not negative a equalling a positive product.
Step identifiers and dependencies
Rule: Valuation_terminal_NONdivisible_unit_highest_power · Uses: G001, S025
S027 · implies
Before
source roles = [2, 14, 16, 1, 4, 1]
After
derived = [30, 1, Yes, Yes, Yes]
Conditions: none
Factor the common p^min from the sum,so its valuation is at least min.If r<s,the bracket u+p^(s-r)v is congruent to nonzero u mod p,hence has exact exponent r;the symmetric case is analogous.When r=s,cancellation may raise the exponent or equality may remain.The last field is not_guaranteed,not a claim that this instance fails equality.
Step identifiers and dependencies
Rule: Valuation_GENERAL_common_power_ultrametric_AND_unequal_case · Uses: G001, S026