# Question 30967: Swap Two Output Labels and Recheck Bijectivity

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

[← Question derivation index](https://ocme.evemisslab.com/en/questions/) · [Original question batch](https://ocme.evemisslab.com/en/practice/batch-20261012-advance-20261017-r01-bijective-foundations/#q-20261012-advance-20261017-r01-bijective-0067)

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.

R0060-30967 · q-20261012-advance-20261017-r01-bijective-0067



## Original question and givens

Use the complete total map Fin(5)={0,…,4}→Fin(3) with images=[1, 1, 1, 0, 0] in source-index order. Validate every image in the declared codomain first. Equal finite cardinalities do not make the given map bijective. Interchange codomain labels a=0, b=2 in every image (equal labels are allowed). Give (original images, new images, new fibers, original bijectivity, new bijectivity, do these two flags agree?).


- G001 — Use the complete total map Fin(5)={0,…,4}→Fin(3) with images=[1, 1, 1, 0, 0] in source-index order. Validate every image in the declared codomain first. Equal finite cardinalities do not make the given map bijective. Interchange codomain labels a=0, b=2 in every image (equal labels are allowed). Give (original images, new images, new fibers, original bijectivity, new bijectivity, do these two flags agree?).





## 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-bijective](https://ocme.evemisslab.com/en/mko/mko-bijective/)





## Step-by-step derivation

S001 · impliesBefore

source roles = [qf-density17-bij-output-transposition, bij-output-transposition, Fin_total_table]

After

derived = [[original_images, next_images, ALL_next_fibers, original_bij, next_bij, flags_agree]]

Conditions: none

density14/15 use FULL-prefix underscores;density17 uses LOCAL hyphens.The coordinate and circle frames differ.Retain THIS family ordered answer roles/types and all original bilingual JSON/status.

Step identifiers and dependenciesRule: R60_EXACT_perbank_operation_domain_FRAME_and_output_roles · Uses: G001





S002 · impliesBefore

source roles = [Bijection ORIGINAL complete table, 5, 3, [1, 1, 1, 0, 0]]

After

derived = [[1, 1, 1, 0, 0]]

Conditions: none

Require the WHOLE declared table length to equal its source size and EVERY cell to lie in Fin(m),including unused cells.Even an empty outer source cannot waive this complete table typing obligation.

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





S003 · calculationBefore

Bijection ORIGINAL reverse ALL fiber sizes through target0 := sum(0, 2)

After

Bijection ORIGINAL reverse ALL fiber sizes through target0 = 2

Conditions: none

Use ORIGINAL operands for exact integer/rational arithmetic.Only RAW inputs use SAFE or the explicit family bounds;derived values do not inherit those caps or use floating approximations.

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





S004 · impliesBefore

source roles = [Bijection ORIGINAL, [1, 1, 1, 0, 0], 3, 0]

After

derived = [[3, 4], 2]

Conditions: none

For EVERY declared target list ALL ORIGINAL source preimages,including empty fibers,not merely attained values.Retain original labels/index order.

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





S005 · calculationBefore

Bijection ORIGINAL reverse ALL fiber sizes through target1 := sum(2, 3)

After

Bijection ORIGINAL reverse ALL fiber sizes through target1 = 5

Conditions: none

Use ORIGINAL operands for exact integer/rational arithmetic.Only RAW inputs use SAFE or the explicit family bounds;derived values do not inherit those caps or use floating approximations.

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





S006 · impliesBefore

source roles = [Bijection ORIGINAL, [1, 1, 1, 0, 0], 3, 1]

After

derived = [[0, 1, 2], 3]

Conditions: none

For EVERY declared target list ALL ORIGINAL source preimages,including empty fibers,not merely attained values.Retain original labels/index order.

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





S007 · calculationBefore

Bijection ORIGINAL reverse ALL fiber sizes through target2 := sum(5, 0)

After

Bijection ORIGINAL reverse ALL fiber sizes through target2 = 5

Conditions: none

Use ORIGINAL operands for exact integer/rational arithmetic.Only RAW inputs use SAFE or the explicit family bounds;derived values do not inherit those caps or use floating approximations.

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





S008 · impliesBefore

source roles = [Bijection ORIGINAL, [1, 1, 1, 0, 0], 3, 2]

After

derived = [[], 0]

Conditions: none

For EVERY declared target list ALL ORIGINAL source preimages,including empty fibers,not merely attained values.Retain original labels/index order.

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





S009 · impliesBefore

source roles = [Bijection ORIGINAL, [1, 1, 1, 0, 0], 3]

After

derived = [[[3, 4], [0, 1, 2], []], [[0, 1], [0, 2], [1, 2], [3, 4]], [2], No, No, No, 5]

Conditions: none

A collision has x<y and equal images.List ALL pairs in GLOBAL numeric LEX order,not codomain-block order or first repeated output.No collision gives injectivity;no missing target gives surjectivity;BOTH give bijectivity.Empty->empty has all three;empty->nonempty only injectivity.

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





S010 · impliesBefore

source roles = [5, 3, 0, 2, 0, 1]

After

derived = [1]

Conditions: none

Apply the SAME codomain-label transposition to EVERY original source output,without reordering sources or changing only the first occurrence.Equal a,b is a legal no-op.

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





S011 · impliesBefore

source roles = [5, 3, 0, 2, 1, 1]

After

derived = [1]

Conditions: none

Apply the SAME codomain-label transposition to EVERY original source output,without reordering sources or changing only the first occurrence.Equal a,b is a legal no-op.

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





S012 · impliesBefore

source roles = [5, 3, 0, 2, 2, 1]

After

derived = [1]

Conditions: none

Apply the SAME codomain-label transposition to EVERY original source output,without reordering sources or changing only the first occurrence.Equal a,b is a legal no-op.

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





S013 · impliesBefore

source roles = [5, 3, 0, 2, 3, 0]

After

derived = [2]

Conditions: none

Apply the SAME codomain-label transposition to EVERY original source output,without reordering sources or changing only the first occurrence.Equal a,b is a legal no-op.

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





S014 · impliesBefore

source roles = [5, 3, 0, 2, 4, 0]

After

derived = [2]

Conditions: none

Apply the SAME codomain-label transposition to EVERY original source output,without reordering sources or changing only the first occurrence.Equal a,b is a legal no-op.

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





S015 · calculationBefore

Bijection TRANSPOSED reverse ALL fiber sizes through target0 := sum(0, 0)

After

Bijection TRANSPOSED reverse ALL fiber sizes through target0 = 0

Conditions: none

Use ORIGINAL operands for exact integer/rational arithmetic.Only RAW inputs use SAFE or the explicit family bounds;derived values do not inherit those caps or use floating approximations.

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





S016 · impliesBefore

source roles = [Bijection TRANSPOSED, [1, 1, 1, 2, 2], 3, 0]

After

derived = [[], 0]

Conditions: none

For EVERY declared target list ALL ORIGINAL source preimages,including empty fibers,not merely attained values.Retain original labels/index order.

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





S017 · calculationBefore

Bijection TRANSPOSED reverse ALL fiber sizes through target1 := sum(0, 3)

After

Bijection TRANSPOSED reverse ALL fiber sizes through target1 = 3

Conditions: none

Use ORIGINAL operands for exact integer/rational arithmetic.Only RAW inputs use SAFE or the explicit family bounds;derived values do not inherit those caps or use floating approximations.

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





S018 · impliesBefore

source roles = [Bijection TRANSPOSED, [1, 1, 1, 2, 2], 3, 1]

After

derived = [[0, 1, 2], 3]

Conditions: none

For EVERY declared target list ALL ORIGINAL source preimages,including empty fibers,not merely attained values.Retain original labels/index order.

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





S019 · calculationBefore

Bijection TRANSPOSED reverse ALL fiber sizes through target2 := sum(3, 2)

After

Bijection TRANSPOSED reverse ALL fiber sizes through target2 = 5

Conditions: none

Use ORIGINAL operands for exact integer/rational arithmetic.Only RAW inputs use SAFE or the explicit family bounds;derived values do not inherit those caps or use floating approximations.

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





S020 · impliesBefore

source roles = [Bijection TRANSPOSED, [1, 1, 1, 2, 2], 3, 2]

After

derived = [[3, 4], 2]

Conditions: none

For EVERY declared target list ALL ORIGINAL source preimages,including empty fibers,not merely attained values.Retain original labels/index order.

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





S021 · impliesBefore

source roles = [Bijection TRANSPOSED, [1, 1, 1, 2, 2], 3]

After

derived = [[[], [0, 1, 2], [3, 4]], [[0, 1], [0, 2], [1, 2], [3, 4]], [0], No, No, No, 5]

Conditions: none

A collision has x<y and equal images.List ALL pairs in GLOBAL numeric LEX order,not codomain-block order or first repeated output.No collision gives injectivity;no missing target gives surjectivity;BOTH give bijectivity.Empty->empty has all three;empty->nonempty only injectivity.

Step identifiers and dependenciesRule: Bijection_ALL_collisions_GLOBAL_LEX_missing_targets_THREE_distinct_properties · Uses: G001, S020





S022 · impliesBefore

source roles = [5, 3, [1, 1, 1, 0, 0], 0, 2]

After

derived = [[1, 1, 1, 2, 2], [[], [0, 1, 2], [3, 4]], No, No, Yes, [0, 1, 2]]

Conditions: none

A TYPED codomain transposition restores EVERY label when applied twice,so it preserves bijectivity eligibility.The original map need not be bijective.False/False still has agreementTrue;do not confuse preservation with original bijectivity.At m0 no valid a,b exist for THIS family.

Step identifiers and dependenciesRule: Bijection_transposition_is_codomain_PERMUTATION_flags_AGREEMENT · Uses: G001, S021









## Reverse checks


- S022 · premise_and_result_audit — Reverse-check using the ORIGINAL data,types,indices and premises.Consistency auditing does not claim the conclusion uniquely determines its inputs.Keep finite candidates,independent review,formal proof and publication separate.
- S021 · premise_and_result_audit — Reverse-check using the ORIGINAL data,types,indices and premises.Consistency auditing does not claim the conclusion uniquely determines its inputs.Keep finite candidates,independent review,formal proof and publication separate.
- S020 · premise_and_result_audit — Reverse-check using the ORIGINAL data,types,indices and premises.Consistency auditing does not claim the conclusion uniquely determines its inputs.Keep finite candidates,independent review,formal proof and publication separate.
- S019 · premise_and_result_audit — Recompute Bijection TRANSPOSED reverse ALL fiber sizes through target2 with exact rational arithmetic, not rounded decimals.
- S018 · premise_and_result_audit — Reverse-check using the ORIGINAL data,types,indices and premises.Consistency auditing does not claim the conclusion uniquely determines its inputs.Keep finite candidates,independent review,formal proof and publication separate.
- S017 · premise_and_result_audit — Recompute Bijection TRANSPOSED reverse ALL fiber sizes through target1 with exact rational arithmetic, not rounded decimals.
- S016 · premise_and_result_audit — Reverse-check using the ORIGINAL data,types,indices and premises.Consistency auditing does not claim the conclusion uniquely determines its inputs.Keep finite candidates,independent review,formal proof and publication separate.
- S015 · premise_and_result_audit — Recompute Bijection TRANSPOSED reverse ALL fiber sizes through target0 with exact rational arithmetic, not rounded decimals.
- S014 · premise_and_result_audit — Reverse-check using the ORIGINAL data,types,indices and premises.Consistency auditing does not claim the conclusion uniquely determines its inputs.Keep finite candidates,independent review,formal proof and publication separate.
- S013 · premise_and_result_audit — Reverse-check using the ORIGINAL data,types,indices and premises.Consistency auditing does not claim the conclusion uniquely determines its inputs.Keep finite candidates,independent review,formal proof and publication separate.
- S012 · premise_and_result_audit — Reverse-check using the ORIGINAL data,types,indices and premises.Consistency auditing does not claim the conclusion uniquely determines its inputs.Keep finite candidates,independent review,formal proof and publication separate.
- S011 · premise_and_result_audit — Reverse-check using the ORIGINAL data,types,indices and premises.Consistency auditing does not claim the conclusion uniquely determines its inputs.Keep finite candidates,independent review,formal proof and publication separate.
- S010 · premise_and_result_audit — Reverse-check using the ORIGINAL data,types,indices and premises.Consistency auditing does not claim the conclusion uniquely determines its inputs.Keep finite candidates,independent review,formal proof and publication separate.
- S009 · premise_and_result_audit — Reverse-check using the ORIGINAL data,types,indices and premises.Consistency auditing does not claim the conclusion uniquely determines its inputs.Keep finite candidates,independent review,formal proof and publication separate.
- S008 · premise_and_result_audit — Reverse-check using the ORIGINAL data,types,indices and premises.Consistency auditing does not claim the conclusion uniquely determines its inputs.Keep finite candidates,independent review,formal proof and publication separate.
- S007 · premise_and_result_audit — Recompute Bijection ORIGINAL reverse ALL fiber sizes through target2 with exact rational arithmetic, not rounded decimals.
- S006 · premise_and_result_audit — Reverse-check using the ORIGINAL data,types,indices and premises.Consistency auditing does not claim the conclusion uniquely determines its inputs.Keep finite candidates,independent review,formal proof and publication separate.
- S005 · premise_and_result_audit — Recompute Bijection ORIGINAL reverse ALL fiber sizes through target1 with exact rational arithmetic, not rounded decimals.
- S004 · premise_and_result_audit — Reverse-check using the ORIGINAL data,types,indices and premises.Consistency auditing does not claim the conclusion uniquely determines its inputs.Keep finite candidates,independent review,formal proof and publication separate.
- S003 · premise_and_result_audit — Recompute Bijection ORIGINAL reverse ALL fiber sizes through target0 with exact rational arithmetic, not rounded decimals.
- S002 · premise_and_result_audit — Reverse-check using the ORIGINAL data,types,indices and premises.Consistency auditing does not claim the conclusion uniquely determines its inputs.Keep finite candidates,independent review,formal proof and publication separate.
- S001 · premise_and_result_audit — Reverse-check using the ORIGINAL data,types,indices and premises.Consistency auditing does not claim the conclusion uniquely determines its inputs.Keep finite candidates,independent review,formal proof and publication separate.





## Result

([1, 1, 1, 0, 0], [1, 1, 1, 2, 2], [[], [0, 1, 2], [3, 4]], No, No, Yes)

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: 5e6d843d7feb828f019a19c9b1c438105312dd12ad4f4731e9315dbc074fe87d
- candidate record SHA-256: 38b2a5ec74c357426da8f92cbe4282da08acf5e4639a79efc86699ab7b7a040a
- semantic review receipt SHA-256: d6b5a409bf933281a46617cd715d8016fd5ca3d6fb76f77d179ac2ecd9d608bf
- question-first witness SHA-256: f80ecf598c6893a580af018e1a82849b33ee6887efb48a6a1d69569aa17f12e4
- Lean: NOT_RUN · human review: NOT_PERFORMED

[Same-source full JSON](https://ocme.evemisslab.com/data/question-derivations/questions/q-20261012-advance-20261017-r01-bijective-0067.json)




