# Question 20178: A Group Action Needs Valid Group, Identity and Compatibility Together

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

[← Question derivation index](https://ocme.evemisslab.com/en/questions/) · [Original question batch](https://ocme.evemisslab.com/en/practice/batch-20261014-advance-20261107-r01-finite-group-action-foundations/#q-20261014-advance-20261107-r01-finite-group-action-0003)

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.

R0039-20178 · q-20261014-advance-20261107-r01-finite-group-action-0003



## Original question and givens

Use complete Cayley table=[[0, 1, 2, 3], [1, 2, 3, 0], [2, 3, 0, 1], [3, 0, 1, 2]] with row g/column h giving g*h, declared identity=0, point carrier Fin(4)={0,…,3}, and total action_table=[[0, 1, 2, 3], [1, 2, 3, 0], [2, 3, 0, 1], [3, 0, 1, 2]] with row g/column x giving g*x. Check the full group axioms separately from e*x=x and (g*h)*x=g*(h*x). Permutation rows alone are not an action certificate. Give (group_order, point_count, group_valid, identity_action, compatible, rows_are_permutations, valid_action).


- G001 — Use complete Cayley table=[[0, 1, 2, 3], [1, 2, 3, 0], [2, 3, 0, 1], [3, 0, 1, 2]] with row g/column h giving g*h, declared identity=0, point carrier Fin(4)={0,…,3}, and total action_table=[[0, 1, 2, 3], [1, 2, 3, 0], [2, 3, 0, 1], [3, 0, 1, 2]] with row g/column x giving g*x. Check the full group axioms separately from e*x=x and (g*h)*x=g*(h*x). Permutation rows alone are not an action certificate. Give (group_order, point_count, group_valid, identity_action, compatible, rows_are_permutations, valid_action).





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





## Step-by-step derivation

S001 · impliesBefore

source operation=groupaction-qualification;original snapshot and mathematics retained

After

explicit ordered source output fields=[group_order, point_count, group_valid, identity_action, compatible, rows_are_permutations, valid_action]

Conditions: none

Retain the historical interface marker in the original snapshot while listing ordered source fields here,without JavaScript or external lookup.Field labels are not additional mathematical evidence,and No retains the source claim scope.

Step identifiers and dependenciesRule: source_ordered_interface_explicit_without_javascript · Uses: G001





S002 · impliesBefore

ORIGINAL complete group-label carrier Fin(4);declared identity label=0;Cayley table row g,column h gives g*h=[[0, 1, 2, 3], [1, 2, 3, 0], [2, 3, 0, 1], [3, 0, 1, 2]]

After

ORIGINAL complete point carrier Fin(4);TOTAL action table row g,column x gives g*x=[[0, 1, 2, 3], [1, 2, 3, 0], [2, 3, 0, 1], [3, 0, 1, 2]];all entries in range,so structural closure/totality checked;GROUP AXIOMS not assumed from shape

Conditions: none

The two tables have different column roles:group label h versus action point x.Complete in-range tables establish closure/totality only.A candidate group may fail its axioms;its table name does not certify them.

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





S003 · impliesBefore

ORIGINAL closed Cayley table=[[0, 1, 2, 3], [1, 2, 3, 0], [2, 3, 0, 1], [3, 0, 1, 2]];ACTUAL declared group identity=0

After

ALL [g,e*g,g*e,both_equal_g] rows=[[0, 0, 0, Yes], [1, 1, 1, Yes], [2, 2, 2, Yes], [3, 3, 3, Yes]];two-sided group identity=Yes

Conditions: none

Both e*g and g*e in the group table must equal g.This is not certified by an identity-action row on points.

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





S004 · impliesBefore

ORIGINAL group pair(g,h)=[0, 0];check ALL k in Fin(4)

After

ordered [k,(g*h)*k,g*(h*k),equal] rows=[[0, 0, 0, Yes], [1, 1, 1, Yes], [2, 2, 2, Yes], [3, 3, 3, Yes]]

Conditions: none

Compute both parenthesizations in the complete original table without assuming cyclicity,commutativity or replacement of multiplication by integer addition.

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





S005 · impliesBefore

ORIGINAL group pair(g,h)=[0, 1];check ALL k in Fin(4)

After

ordered [k,(g*h)*k,g*(h*k),equal] rows=[[0, 1, 1, Yes], [1, 2, 2, Yes], [2, 3, 3, Yes], [3, 0, 0, Yes]]

Conditions: none

Compute both parenthesizations in the complete original table without assuming cyclicity,commutativity or replacement of multiplication by integer addition.

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





S006 · impliesBefore

ORIGINAL group pair(g,h)=[0, 2];check ALL k in Fin(4)

After

ordered [k,(g*h)*k,g*(h*k),equal] rows=[[0, 2, 2, Yes], [1, 3, 3, Yes], [2, 0, 0, Yes], [3, 1, 1, Yes]]

Conditions: none

Compute both parenthesizations in the complete original table without assuming cyclicity,commutativity or replacement of multiplication by integer addition.

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





S007 · impliesBefore

ORIGINAL group pair(g,h)=[0, 3];check ALL k in Fin(4)

After

ordered [k,(g*h)*k,g*(h*k),equal] rows=[[0, 3, 3, Yes], [1, 0, 0, Yes], [2, 1, 1, Yes], [3, 2, 2, Yes]]

Conditions: none

Compute both parenthesizations in the complete original table without assuming cyclicity,commutativity or replacement of multiplication by integer addition.

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





S008 · impliesBefore

ORIGINAL group pair(g,h)=[1, 0];check ALL k in Fin(4)

After

ordered [k,(g*h)*k,g*(h*k),equal] rows=[[0, 1, 1, Yes], [1, 2, 2, Yes], [2, 3, 3, Yes], [3, 0, 0, Yes]]

Conditions: none

Compute both parenthesizations in the complete original table without assuming cyclicity,commutativity or replacement of multiplication by integer addition.

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





S009 · impliesBefore

ORIGINAL group pair(g,h)=[1, 1];check ALL k in Fin(4)

After

ordered [k,(g*h)*k,g*(h*k),equal] rows=[[0, 2, 2, Yes], [1, 3, 3, Yes], [2, 0, 0, Yes], [3, 1, 1, Yes]]

Conditions: none

Compute both parenthesizations in the complete original table without assuming cyclicity,commutativity or replacement of multiplication by integer addition.

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





S010 · impliesBefore

ORIGINAL group pair(g,h)=[1, 2];check ALL k in Fin(4)

After

ordered [k,(g*h)*k,g*(h*k),equal] rows=[[0, 3, 3, Yes], [1, 0, 0, Yes], [2, 1, 1, Yes], [3, 2, 2, Yes]]

Conditions: none

Compute both parenthesizations in the complete original table without assuming cyclicity,commutativity or replacement of multiplication by integer addition.

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





S011 · impliesBefore

ORIGINAL group pair(g,h)=[1, 3];check ALL k in Fin(4)

After

ordered [k,(g*h)*k,g*(h*k),equal] rows=[[0, 0, 0, Yes], [1, 1, 1, Yes], [2, 2, 2, Yes], [3, 3, 3, Yes]]

Conditions: none

Compute both parenthesizations in the complete original table without assuming cyclicity,commutativity or replacement of multiplication by integer addition.

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





S012 · impliesBefore

ORIGINAL group pair(g,h)=[2, 0];check ALL k in Fin(4)

After

ordered [k,(g*h)*k,g*(h*k),equal] rows=[[0, 2, 2, Yes], [1, 3, 3, Yes], [2, 0, 0, Yes], [3, 1, 1, Yes]]

Conditions: none

Compute both parenthesizations in the complete original table without assuming cyclicity,commutativity or replacement of multiplication by integer addition.

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





S013 · impliesBefore

ORIGINAL group pair(g,h)=[2, 1];check ALL k in Fin(4)

After

ordered [k,(g*h)*k,g*(h*k),equal] rows=[[0, 3, 3, Yes], [1, 0, 0, Yes], [2, 1, 1, Yes], [3, 2, 2, Yes]]

Conditions: none

Compute both parenthesizations in the complete original table without assuming cyclicity,commutativity or replacement of multiplication by integer addition.

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





S014 · impliesBefore

ORIGINAL group pair(g,h)=[2, 2];check ALL k in Fin(4)

After

ordered [k,(g*h)*k,g*(h*k),equal] rows=[[0, 0, 0, Yes], [1, 1, 1, Yes], [2, 2, 2, Yes], [3, 3, 3, Yes]]

Conditions: none

Compute both parenthesizations in the complete original table without assuming cyclicity,commutativity or replacement of multiplication by integer addition.

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





S015 · impliesBefore

ORIGINAL group pair(g,h)=[2, 3];check ALL k in Fin(4)

After

ordered [k,(g*h)*k,g*(h*k),equal] rows=[[0, 1, 1, Yes], [1, 2, 2, Yes], [2, 3, 3, Yes], [3, 0, 0, Yes]]

Conditions: none

Compute both parenthesizations in the complete original table without assuming cyclicity,commutativity or replacement of multiplication by integer addition.

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





S016 · impliesBefore

ORIGINAL group pair(g,h)=[3, 0];check ALL k in Fin(4)

After

ordered [k,(g*h)*k,g*(h*k),equal] rows=[[0, 3, 3, Yes], [1, 0, 0, Yes], [2, 1, 1, Yes], [3, 2, 2, Yes]]

Conditions: none

Compute both parenthesizations in the complete original table without assuming cyclicity,commutativity or replacement of multiplication by integer addition.

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





S017 · impliesBefore

ORIGINAL group pair(g,h)=[3, 1];check ALL k in Fin(4)

After

ordered [k,(g*h)*k,g*(h*k),equal] rows=[[0, 0, 0, Yes], [1, 1, 1, Yes], [2, 2, 2, Yes], [3, 3, 3, Yes]]

Conditions: none

Compute both parenthesizations in the complete original table without assuming cyclicity,commutativity or replacement of multiplication by integer addition.

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





S018 · impliesBefore

ORIGINAL group pair(g,h)=[3, 2];check ALL k in Fin(4)

After

ordered [k,(g*h)*k,g*(h*k),equal] rows=[[0, 1, 1, Yes], [1, 2, 2, Yes], [2, 3, 3, Yes], [3, 0, 0, Yes]]

Conditions: none

Compute both parenthesizations in the complete original table without assuming cyclicity,commutativity or replacement of multiplication by integer addition.

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





S019 · impliesBefore

ORIGINAL group pair(g,h)=[3, 3];check ALL k in Fin(4)

After

ordered [k,(g*h)*k,g*(h*k),equal] rows=[[0, 2, 2, Yes], [1, 3, 3, Yes], [2, 0, 0, Yes], [3, 1, 1, Yes]]

Conditions: none

Compute both parenthesizations in the complete original table without assuming cyclicity,commutativity or replacement of multiplication by integer addition.

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





S020 · impliesBefore

ORIGINAL group element g=0;DECLARED identity=0;ALL [h,g*h,h*g,two_sided_inverse] rows=[[0, 0, 0, Yes], [1, 1, 1, No], [2, 2, 2, No], [3, 3, 3, No]]

After

first actual two-sided inverse witness=0;exists=Yes

Conditions: none

For each g,the same h must satisfy both inverse identities.An unqualified candidate table may have no witness;retain None rather than guessing inverses from labels.

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





S021 · impliesBefore

ORIGINAL group element g=1;DECLARED identity=0;ALL [h,g*h,h*g,two_sided_inverse] rows=[[0, 1, 1, No], [1, 2, 2, No], [2, 3, 3, No], [3, 0, 0, Yes]]

After

first actual two-sided inverse witness=3;exists=Yes

Conditions: none

For each g,the same h must satisfy both inverse identities.An unqualified candidate table may have no witness;retain None rather than guessing inverses from labels.

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





S022 · impliesBefore

ORIGINAL group element g=2;DECLARED identity=0;ALL [h,g*h,h*g,two_sided_inverse] rows=[[0, 2, 2, No], [1, 3, 3, No], [2, 0, 0, Yes], [3, 1, 1, No]]

After

first actual two-sided inverse witness=2;exists=Yes

Conditions: none

For each g,the same h must satisfy both inverse identities.An unqualified candidate table may have no witness;retain None rather than guessing inverses from labels.

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





S023 · impliesBefore

ORIGINAL group element g=3;DECLARED identity=0;ALL [h,g*h,h*g,two_sided_inverse] rows=[[0, 3, 3, No], [1, 0, 0, Yes], [2, 1, 1, No], [3, 2, 2, No]]

After

first actual two-sided inverse witness=1;exists=Yes

Conditions: none

For each g,the same h must satisfy both inverse identities.An unqualified candidate table may have no witness;retain None rather than guessing inverses from labels.

Step identifiers and dependenciesRule: groupaction_each_element_actual_two_sided_inverse · Uses: G001, S022





S024 · impliesBefore

structurally closed COMPLETE group candidate;two-sided identity=Yes;ALL-triple associativity=Yes;ALL-element inverses=Yes

After

group_valid=Yes is the CONJUNCTION;False remains a reported candidate result,not a silent repair

Conditions: none

Group qualification is the conjunction of these complete obligations.A permutation-looking action table cannot repair a bad group table;do not replace the identity or modify the table.

Step identifiers and dependenciesRule: groupaction_group_axiom_conjunction_candidate_may_fail · Uses: G001, S023





S025 · impliesBefore

ACTUAL declared identity label=0;ORIGINAL identity action row=[0, 1, 2, 3];complete point carrier Fin(4)

After

ALL ordered [point,identity_image,equality] rows=[[0, 0, Yes], [1, 1, Yes], [2, 2, Yes], [3, 3, Yes]];identity-action axiom=Yes

Conditions: none

Check e*x=x at every action point,using the actual declared identity label rather than assuming0.This action axiom is distinct from the two-sided identity law in the group table.

Step identifiers and dependenciesRule: groupaction_every_point_identity_action_not_group_identity · Uses: G001, S024





S026 · impliesBefore

ORIGINAL ordered group pair(g,h)=[0, 0];actual group product=0;action table roles unchanged

After

ALL ordered [point,(g*h)*point,g*(h*point),equal] rows=[[0, 0, 0, Yes], [1, 1, 1, Yes], [2, 2, 2, Yes], [3, 3, 3, Yes]];earliest failure retained,not overwritten

Conditions: none

For the left side compute the group product before acting;for the right act by h and then g,without interchanging them.Check every point for every ordered pair and retain the first lexicographic g,h,x failure.

Step identifiers and dependenciesRule: groupaction_all_ordered_compatibility_triples_not_samples · Uses: G001, S025





S027 · impliesBefore

ORIGINAL ordered group pair(g,h)=[0, 1];actual group product=1;action table roles unchanged

After

ALL ordered [point,(g*h)*point,g*(h*point),equal] rows=[[0, 1, 1, Yes], [1, 2, 2, Yes], [2, 3, 3, Yes], [3, 0, 0, Yes]];earliest failure retained,not overwritten

Conditions: none

For the left side compute the group product before acting;for the right act by h and then g,without interchanging them.Check every point for every ordered pair and retain the first lexicographic g,h,x failure.

Step identifiers and dependenciesRule: groupaction_all_ordered_compatibility_triples_not_samples · Uses: G001, S026





S028 · impliesBefore

ORIGINAL ordered group pair(g,h)=[0, 2];actual group product=2;action table roles unchanged

After

ALL ordered [point,(g*h)*point,g*(h*point),equal] rows=[[0, 2, 2, Yes], [1, 3, 3, Yes], [2, 0, 0, Yes], [3, 1, 1, Yes]];earliest failure retained,not overwritten

Conditions: none

For the left side compute the group product before acting;for the right act by h and then g,without interchanging them.Check every point for every ordered pair and retain the first lexicographic g,h,x failure.

Step identifiers and dependenciesRule: groupaction_all_ordered_compatibility_triples_not_samples · Uses: G001, S027





S029 · impliesBefore

ORIGINAL ordered group pair(g,h)=[0, 3];actual group product=3;action table roles unchanged

After

ALL ordered [point,(g*h)*point,g*(h*point),equal] rows=[[0, 3, 3, Yes], [1, 0, 0, Yes], [2, 1, 1, Yes], [3, 2, 2, Yes]];earliest failure retained,not overwritten

Conditions: none

For the left side compute the group product before acting;for the right act by h and then g,without interchanging them.Check every point for every ordered pair and retain the first lexicographic g,h,x failure.

Step identifiers and dependenciesRule: groupaction_all_ordered_compatibility_triples_not_samples · Uses: G001, S028





S030 · impliesBefore

ORIGINAL ordered group pair(g,h)=[1, 0];actual group product=1;action table roles unchanged

After

ALL ordered [point,(g*h)*point,g*(h*point),equal] rows=[[0, 1, 1, Yes], [1, 2, 2, Yes], [2, 3, 3, Yes], [3, 0, 0, Yes]];earliest failure retained,not overwritten

Conditions: none

For the left side compute the group product before acting;for the right act by h and then g,without interchanging them.Check every point for every ordered pair and retain the first lexicographic g,h,x failure.

Step identifiers and dependenciesRule: groupaction_all_ordered_compatibility_triples_not_samples · Uses: G001, S029





S031 · impliesBefore

ORIGINAL ordered group pair(g,h)=[1, 1];actual group product=2;action table roles unchanged

After

ALL ordered [point,(g*h)*point,g*(h*point),equal] rows=[[0, 2, 2, Yes], [1, 3, 3, Yes], [2, 0, 0, Yes], [3, 1, 1, Yes]];earliest failure retained,not overwritten

Conditions: none

For the left side compute the group product before acting;for the right act by h and then g,without interchanging them.Check every point for every ordered pair and retain the first lexicographic g,h,x failure.

Step identifiers and dependenciesRule: groupaction_all_ordered_compatibility_triples_not_samples · Uses: G001, S030





S032 · impliesBefore

ORIGINAL ordered group pair(g,h)=[1, 2];actual group product=3;action table roles unchanged

After

ALL ordered [point,(g*h)*point,g*(h*point),equal] rows=[[0, 3, 3, Yes], [1, 0, 0, Yes], [2, 1, 1, Yes], [3, 2, 2, Yes]];earliest failure retained,not overwritten

Conditions: none

For the left side compute the group product before acting;for the right act by h and then g,without interchanging them.Check every point for every ordered pair and retain the first lexicographic g,h,x failure.

Step identifiers and dependenciesRule: groupaction_all_ordered_compatibility_triples_not_samples · Uses: G001, S031





S033 · impliesBefore

ORIGINAL ordered group pair(g,h)=[1, 3];actual group product=0;action table roles unchanged

After

ALL ordered [point,(g*h)*point,g*(h*point),equal] rows=[[0, 0, 0, Yes], [1, 1, 1, Yes], [2, 2, 2, Yes], [3, 3, 3, Yes]];earliest failure retained,not overwritten

Conditions: none

For the left side compute the group product before acting;for the right act by h and then g,without interchanging them.Check every point for every ordered pair and retain the first lexicographic g,h,x failure.

Step identifiers and dependenciesRule: groupaction_all_ordered_compatibility_triples_not_samples · Uses: G001, S032





S034 · impliesBefore

ORIGINAL ordered group pair(g,h)=[2, 0];actual group product=2;action table roles unchanged

After

ALL ordered [point,(g*h)*point,g*(h*point),equal] rows=[[0, 2, 2, Yes], [1, 3, 3, Yes], [2, 0, 0, Yes], [3, 1, 1, Yes]];earliest failure retained,not overwritten

Conditions: none

For the left side compute the group product before acting;for the right act by h and then g,without interchanging them.Check every point for every ordered pair and retain the first lexicographic g,h,x failure.

Step identifiers and dependenciesRule: groupaction_all_ordered_compatibility_triples_not_samples · Uses: G001, S033





S035 · impliesBefore

ORIGINAL ordered group pair(g,h)=[2, 1];actual group product=3;action table roles unchanged

After

ALL ordered [point,(g*h)*point,g*(h*point),equal] rows=[[0, 3, 3, Yes], [1, 0, 0, Yes], [2, 1, 1, Yes], [3, 2, 2, Yes]];earliest failure retained,not overwritten

Conditions: none

For the left side compute the group product before acting;for the right act by h and then g,without interchanging them.Check every point for every ordered pair and retain the first lexicographic g,h,x failure.

Step identifiers and dependenciesRule: groupaction_all_ordered_compatibility_triples_not_samples · Uses: G001, S034





S036 · impliesBefore

ORIGINAL ordered group pair(g,h)=[2, 2];actual group product=0;action table roles unchanged

After

ALL ordered [point,(g*h)*point,g*(h*point),equal] rows=[[0, 0, 0, Yes], [1, 1, 1, Yes], [2, 2, 2, Yes], [3, 3, 3, Yes]];earliest failure retained,not overwritten

Conditions: none

For the left side compute the group product before acting;for the right act by h and then g,without interchanging them.Check every point for every ordered pair and retain the first lexicographic g,h,x failure.

Step identifiers and dependenciesRule: groupaction_all_ordered_compatibility_triples_not_samples · Uses: G001, S035





S037 · impliesBefore

ORIGINAL ordered group pair(g,h)=[2, 3];actual group product=1;action table roles unchanged

After

ALL ordered [point,(g*h)*point,g*(h*point),equal] rows=[[0, 1, 1, Yes], [1, 2, 2, Yes], [2, 3, 3, Yes], [3, 0, 0, Yes]];earliest failure retained,not overwritten

Conditions: none

For the left side compute the group product before acting;for the right act by h and then g,without interchanging them.Check every point for every ordered pair and retain the first lexicographic g,h,x failure.

Step identifiers and dependenciesRule: groupaction_all_ordered_compatibility_triples_not_samples · Uses: G001, S036





S038 · impliesBefore

ORIGINAL ordered group pair(g,h)=[3, 0];actual group product=3;action table roles unchanged

After

ALL ordered [point,(g*h)*point,g*(h*point),equal] rows=[[0, 3, 3, Yes], [1, 0, 0, Yes], [2, 1, 1, Yes], [3, 2, 2, Yes]];earliest failure retained,not overwritten

Conditions: none

For the left side compute the group product before acting;for the right act by h and then g,without interchanging them.Check every point for every ordered pair and retain the first lexicographic g,h,x failure.

Step identifiers and dependenciesRule: groupaction_all_ordered_compatibility_triples_not_samples · Uses: G001, S037





S039 · impliesBefore

ORIGINAL ordered group pair(g,h)=[3, 1];actual group product=0;action table roles unchanged

After

ALL ordered [point,(g*h)*point,g*(h*point),equal] rows=[[0, 0, 0, Yes], [1, 1, 1, Yes], [2, 2, 2, Yes], [3, 3, 3, Yes]];earliest failure retained,not overwritten

Conditions: none

For the left side compute the group product before acting;for the right act by h and then g,without interchanging them.Check every point for every ordered pair and retain the first lexicographic g,h,x failure.

Step identifiers and dependenciesRule: groupaction_all_ordered_compatibility_triples_not_samples · Uses: G001, S038





S040 · impliesBefore

ORIGINAL ordered group pair(g,h)=[3, 2];actual group product=1;action table roles unchanged

After

ALL ordered [point,(g*h)*point,g*(h*point),equal] rows=[[0, 1, 1, Yes], [1, 2, 2, Yes], [2, 3, 3, Yes], [3, 0, 0, Yes]];earliest failure retained,not overwritten

Conditions: none

For the left side compute the group product before acting;for the right act by h and then g,without interchanging them.Check every point for every ordered pair and retain the first lexicographic g,h,x failure.

Step identifiers and dependenciesRule: groupaction_all_ordered_compatibility_triples_not_samples · Uses: G001, S039





S041 · impliesBefore

ORIGINAL ordered group pair(g,h)=[3, 3];actual group product=2;action table roles unchanged

After

ALL ordered [point,(g*h)*point,g*(h*point),equal] rows=[[0, 2, 2, Yes], [1, 3, 3, Yes], [2, 0, 0, Yes], [3, 1, 1, Yes]];earliest failure retained,not overwritten

Conditions: none

For the left side compute the group product before acting;for the right act by h and then g,without interchanging them.Check every point for every ordered pair and retain the first lexicographic g,h,x failure.

Step identifiers and dependenciesRule: groupaction_all_ordered_compatibility_triples_not_samples · Uses: G001, S040





S042 · calculationBefore

group action ordered group-pair count := mul(4, 4)

After

group action ordered group-pair count = 16

Conditions: none

Substitute original roles and established intermediates exactly,retaining indices,signs,denominators and the proof's applicability conditions.

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





S043 · calculationBefore

group action complete triple-domain count := mul(16, 4)

After

group action complete triple-domain count = 64

Conditions: none

Substitute original roles and established intermediates exactly,retaining indices,signs,denominators and the proof's applicability conditions.

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





S044 · impliesBefore

COMPLETE triple domain order^2*point_count=64;this derivation ACTUALLY checked all64 triples

After

compatibility=Yes;FIRST source-order failure[g,h,x,left,right]=null;null means NO failure anywhere

Conditions: none

The triple_count is the complete quantified domain size,not a measurement of an early-stopping prototype.This derivation actually checks every point for every g,h pair,so null certifies full compatibility and a first failure retains exact source data/order.

Step identifiers and dependenciesRule: groupaction_full_domain_count_first_failure_not_early_stop_measurement · Uses: G001, S043





S045 · impliesBefore

ORIGINAL group-row label=0;ORIGINAL point-indexed action row=[0, 1, 2, 3]

After

sorted image MULTISET=[0, 1, 2, 3];equals full point carrier=Yes;original row NOT reordered

Conditions: none

Sort only to test whether the image multiset covers the full carrier exactly once;do not reorder the original point-indexed row.Even all-permutation rows alone do not establish an action without the group and both action axioms.

Step identifiers and dependenciesRule: groupaction_every_row_permutation_actual_images_not_validity_converse · Uses: G001, S044





S046 · impliesBefore

ORIGINAL group-row label=1;ORIGINAL point-indexed action row=[1, 2, 3, 0]

After

sorted image MULTISET=[0, 1, 2, 3];equals full point carrier=Yes;original row NOT reordered

Conditions: none

Sort only to test whether the image multiset covers the full carrier exactly once;do not reorder the original point-indexed row.Even all-permutation rows alone do not establish an action without the group and both action axioms.

Step identifiers and dependenciesRule: groupaction_every_row_permutation_actual_images_not_validity_converse · Uses: G001, S045





S047 · impliesBefore

ORIGINAL group-row label=2;ORIGINAL point-indexed action row=[2, 3, 0, 1]

After

sorted image MULTISET=[0, 1, 2, 3];equals full point carrier=Yes;original row NOT reordered

Conditions: none

Sort only to test whether the image multiset covers the full carrier exactly once;do not reorder the original point-indexed row.Even all-permutation rows alone do not establish an action without the group and both action axioms.

Step identifiers and dependenciesRule: groupaction_every_row_permutation_actual_images_not_validity_converse · Uses: G001, S046





S048 · impliesBefore

ORIGINAL group-row label=3;ORIGINAL point-indexed action row=[3, 0, 1, 2]

After

sorted image MULTISET=[0, 1, 2, 3];equals full point carrier=Yes;original row NOT reordered

Conditions: none

Sort only to test whether the image multiset covers the full carrier exactly once;do not reorder the original point-indexed row.Even all-permutation rows alone do not establish an action without the group and both action axioms.

Step identifiers and dependenciesRule: groupaction_every_row_permutation_actual_images_not_validity_converse · Uses: G001, S047





S049 · impliesBefore

ACTUAL qualified group and BOTH action axioms hold;for each g actual group inverse h=[0, 3, 2, 1]

After

A_g composed A_h=A_(g*h)=A_e=identity and reverse composition likewise;therefore EVERY group element induces a permutation;actual row flags agree=Yes

Conditions: none

Use each actual group inverse and complete compatibility to make both action compositions the identity,hence every action row is a bijection.This direction derives permutations from the axioms,not validity from permutation rows alone.

Step identifiers and dependenciesRule: groupaction_valid_axioms_imply_permutations_via_inverses · Uses: G001, S048









## Reverse checks


- S049 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S048 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S047 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S046 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S045 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S044 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S043 · premise_and_result_audit — Recompute group action complete triple-domain count with exact rational arithmetic, not rounded decimals.
- S042 · premise_and_result_audit — Recompute group action ordered group-pair count with exact rational arithmetic, not rounded decimals.
- S041 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S040 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S039 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S038 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S037 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S036 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S035 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S034 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S033 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S032 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S031 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S030 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S029 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S028 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S027 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S026 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S025 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S024 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S023 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S022 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S021 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S020 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- 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 — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S014 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- 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 — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S008 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- 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 — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S002 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.
- S001 · premise_and_result_audit — Check against the original data and this step's premises; a one-way implication is not an equivalence.





## Result

(4, 4, Yes, Yes, Yes, Yes, 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: 54c4586dc1467d6e7fd9c6e80be5b2dd471a48452ac141a94717d47cdaf91cd0
- candidate record SHA-256: 1375fb0bafbffaaaed5c2764d1eb2798eb9479d66f6c746443189511418905d6
- semantic review receipt SHA-256: 6e11e35fafe32f16900ce9b522d01acb7b2ee6b463ab179392076cfbe1af8034
- question-first witness SHA-256: cc0fa361fc25151729e70264340d2eae94f179f6f2a2edfe80ba5704fbbd0682
- Lean: NOT_RUN · human review: NOT_PERFORMED

[Same-source full JSON](https://ocme.evemisslab.com/data/question-derivations/questions/q-20261014-advance-20261107-r01-finite-group-action-0003.json)




