# Question 13197: The Norm Triangle Inequality Supplies the Metric Triangle Bound

[Return to catalogue page 66](https://ocme.evemisslab.com/en/questions/page/66/)

[← Question derivation index](https://ocme.evemisslab.com/en/questions/) · [Original question batch](https://ocme.evemisslab.com/en/practice/batch-20261014-advance-20261027-r02-norm-induced-metric-foundations/#q-20261014-advance-20261027-r02-norm-induced-metric-0072)

This teaching derivation has second-context AI mathematical and bilingual semantic review, limited to the model and assumptions stated in this question. It has no human review or new Lean proof and does not promote the original question or MKO to Canonical truth.

R0025-13197 · q-20261014-advance-20261027-r02-norm-induced-metric-0072



## Original question and givens

Use one named, certified norm on a fixed real coordinate space: l1(v)=sum_i |v_i| or linfinity(v)=max_i |v_i|. Set d(x,y)=norm(x−y) on that same space. Its universal norm-axiom certificate establishes the metric axioms; finite distance samples do not. Do not infer that every metric comes from a norm, or claim completeness, compactness or an inner product. norm_name=linfinity, x=[9, -3], y=[-1, -9], z=[-5, -1]. Give (norm_name,d_xz,d_xy,d_yz,rhs=d_xy+d_yz,pass?,norm_triangle_inequality).


- G001 — Use one named, certified norm on a fixed real coordinate space: l1(v)=sum_i |v_i| or linfinity(v)=max_i |v_i|. Set d(x,y)=norm(x−y) on that same space. Its universal norm-axiom certificate establishes the metric axioms; finite distance samples do not. Do not infer that every metric comes from a norm, or claim completeness, compactness or an inner product. norm_name=linfinity, x=[9, -3], y=[-1, -9], z=[-5, -1]. Give (norm_name,d_xz,d_xy,d_yz,rhs=d_xy+d_yz,pass?,norm_triangle_inequality).





## 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.


- [mko-norm-induced-metric](https://ocme.evemisslab.com/en/mko/mko-norm-induced-metric/)





## Step-by-step derivation

S001 · impliesBefore

x=[9, -3];y=[-1, -9];z=[-5, -1];same norm=linfinity

After

x-z=(x-y)+(y-z);universal norm triangle gives the metric triangle bound

Conditions: none

First fix the vector-difference identity and universal norm rule,then evaluate this triple.One passing instance does not establish arbitrary metric axioms.

Step identifiers and dependenciesRule: triangle_identity_before_numeric_instance · Uses: G001





S002 · calculationBefore

x to z difference coordinate0 := sub(9, -5)

After

x to z difference coordinate0 = 14

Conditions: none

Compute exactly from original roles and established intermediates,retaining coefficients,coordinates,order and signs.

Step identifiers and dependenciesRule: exact_rational_arithmetic · Uses: G001, S001





S003 · calculationBefore

x to z difference coordinate1 := sub(-3, -1)

After

x to z difference coordinate1 = -2

Conditions: none

Compute exactly from original roles and established intermediates,retaining coefficients,coordinates,order and signs.

Step identifiers and dependenciesRule: exact_rational_arithmetic · Uses: G001, S002





S004 · impliesBefore

x to z:norm=linfinity;left=[9, -3];right=[-5, -1]

After

signed left-right=[14, -2];use same named norm

Conditions: none

Use the same stated norm on the same real coordinate space.The derived difference can exceed original input coordinate bounds and must not be clipped or rejected as a new raw input.

Step identifiers and dependenciesRule: norm_distance_same_space_and_direction · Uses: G001, S003





S005 · impliesBefore

x to z:coordinate=0;signed value=14

After

absolute value=14

Conditions: none

Take each whole coordinate's absolute value while preserving the original signed vector.Do not use a signed maximum.

Step identifiers and dependenciesRule: named_norm_coordinate_absolute_value · Uses: G001, S004





S006 · impliesBefore

x to z:coordinate=1;signed value=-2

After

absolute value=2

Conditions: none

Take each whole coordinate's absolute value while preserving the original signed vector.Do not use a signed maximum.

Step identifiers and dependenciesRule: named_norm_coordinate_absolute_value · Uses: G001, S005





S007 · impliesBefore

x to z:all absolute coordinates=[14, 2]

After

maximum=14;first attaining coordinate=0

Conditions: none

The maximum must bound every entry and be attained at one entry,as guaranteed for nonempty finite coordinates.

Step identifiers and dependenciesRule: linfinity_full_maximum_witness · Uses: G001, S006





S008 · calculationBefore

x to y difference coordinate0 := sub(9, -1)

After

x to y difference coordinate0 = 10

Conditions: none

Compute exactly from original roles and established intermediates,retaining coefficients,coordinates,order and signs.

Step identifiers and dependenciesRule: exact_rational_arithmetic · Uses: G001, S007





S009 · calculationBefore

x to y difference coordinate1 := sub(-3, -9)

After

x to y difference coordinate1 = 6

Conditions: none

Compute exactly from original roles and established intermediates,retaining coefficients,coordinates,order and signs.

Step identifiers and dependenciesRule: exact_rational_arithmetic · Uses: G001, S008





S010 · impliesBefore

x to y:norm=linfinity;left=[9, -3];right=[-1, -9]

After

signed left-right=[10, 6];use same named norm

Conditions: none

Use the same stated norm on the same real coordinate space.The derived difference can exceed original input coordinate bounds and must not be clipped or rejected as a new raw input.

Step identifiers and dependenciesRule: norm_distance_same_space_and_direction · Uses: G001, S009





S011 · impliesBefore

x to y:coordinate=0;signed value=10

After

absolute value=10

Conditions: none

Take each whole coordinate's absolute value while preserving the original signed vector.Do not use a signed maximum.

Step identifiers and dependenciesRule: named_norm_coordinate_absolute_value · Uses: G001, S010





S012 · impliesBefore

x to y:coordinate=1;signed value=6

After

absolute value=6

Conditions: none

Take each whole coordinate's absolute value while preserving the original signed vector.Do not use a signed maximum.

Step identifiers and dependenciesRule: named_norm_coordinate_absolute_value · Uses: G001, S011





S013 · impliesBefore

x to y:all absolute coordinates=[10, 6]

After

maximum=10;first attaining coordinate=0

Conditions: none

The maximum must bound every entry and be attained at one entry,as guaranteed for nonempty finite coordinates.

Step identifiers and dependenciesRule: linfinity_full_maximum_witness · Uses: G001, S012





S014 · calculationBefore

y to z difference coordinate0 := sub(-1, -5)

After

y to z difference coordinate0 = 4

Conditions: none

Compute exactly from original roles and established intermediates,retaining coefficients,coordinates,order and signs.

Step identifiers and dependenciesRule: exact_rational_arithmetic · Uses: G001, S013





S015 · calculationBefore

y to z difference coordinate1 := sub(-9, -1)

After

y to z difference coordinate1 = -8

Conditions: none

Compute exactly from original roles and established intermediates,retaining coefficients,coordinates,order and signs.

Step identifiers and dependenciesRule: exact_rational_arithmetic · Uses: G001, S014





S016 · impliesBefore

y to z:norm=linfinity;left=[-1, -9];right=[-5, -1]

After

signed left-right=[4, -8];use same named norm

Conditions: none

Use the same stated norm on the same real coordinate space.The derived difference can exceed original input coordinate bounds and must not be clipped or rejected as a new raw input.

Step identifiers and dependenciesRule: norm_distance_same_space_and_direction · Uses: G001, S015





S017 · impliesBefore

y to z:coordinate=0;signed value=4

After

absolute value=4

Conditions: none

Take each whole coordinate's absolute value while preserving the original signed vector.Do not use a signed maximum.

Step identifiers and dependenciesRule: named_norm_coordinate_absolute_value · Uses: G001, S016





S018 · impliesBefore

y to z:coordinate=1;signed value=-8

After

absolute value=8

Conditions: none

Take each whole coordinate's absolute value while preserving the original signed vector.Do not use a signed maximum.

Step identifiers and dependenciesRule: named_norm_coordinate_absolute_value · Uses: G001, S017





S019 · impliesBefore

y to z:all absolute coordinates=[4, 8]

After

maximum=8;first attaining coordinate=1

Conditions: none

The maximum must bound every entry and be attained at one entry,as guaranteed for nonempty finite coordinates.

Step identifiers and dependenciesRule: linfinity_full_maximum_witness · Uses: G001, S018





S020 · calculationBefore

triangle right hand sum := sum(10, 8)

After

triangle right hand sum = 18

Conditions: none

Compute exactly from original roles and established intermediates,retaining coefficients,coordinates,order and signs.

Step identifiers and dependenciesRule: exact_rational_arithmetic · Uses: G001, S019









## Reverse checks


- S020 · premise_and_result_audit — Recompute triangle right hand sum with exact rational arithmetic, not rounded decimals.
- S019 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S018 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S017 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S016 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S015 · premise_and_result_audit — Recompute y to z difference coordinate1 with exact rational arithmetic, not rounded decimals.
- S014 · premise_and_result_audit — Recompute y to z difference coordinate0 with exact rational arithmetic, not rounded decimals.
- S013 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S012 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S011 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S010 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S009 · premise_and_result_audit — Recompute x to y difference coordinate1 with exact rational arithmetic, not rounded decimals.
- S008 · premise_and_result_audit — Recompute x to y difference coordinate0 with exact rational arithmetic, not rounded decimals.
- S007 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S006 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S005 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S004 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S003 · premise_and_result_audit — Recompute x to z difference coordinate1 with exact rational arithmetic, not rounded decimals.
- S002 · premise_and_result_audit — Recompute x to z difference coordinate0 with exact rational arithmetic, not rounded decimals.
- S001 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.





## Result

(linfinity, 14, 10, 8, 18, Yes, norm_triangle_inequality)

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: 7235fbe9e1f74264645cc0ac261663428f33918c48a2475b5b7390c52b62956c
- candidate record SHA-256: 3c233f20b9ecdf12699296bf85a19211207b1b0fe2e87f50984ff1e844d65c9c
- semantic review receipt SHA-256: 0e51c2bf621e6e998415fdd75d260464e625cecd5894a230c9f09553249551c5
- question-first witness SHA-256: ceb79401a62782c9f7e5ed86afee9b1a71455f799bd24cf485cba7aa8ecaca8a
- Lean: NOT_RUN · human review: NOT_PERFORMED

[Same-source full JSON](https://ocme.evemisslab.com/data/question-derivations/questions/q-20261014-advance-20261027-r02-norm-induced-metric-0072.json)




