from research import *
s=begin(776,'Test the finite switch algebra','Do variant switches commute without becoming unlimited translations?',{},['C772–775'])
from itertools import product
states=list(product([0,1],repeat=3))
def flip(x,k): y=list(x);y[k]=1-y[k];return tuple(y)
invol=all(flip(flip(x,k),k)==x for x in states for k in range(3))
comm=all(flip(flip(x,i),j)==flip(flip(x,j),i) for x in states for i in range(3) for j in range(3))
finish(s,{'state_count':len(states),'switch_amount_rule':'weight*(1−2*current_bit)*support_mask','domain':'finite source labels; not repeated positive additions'},'The three switches commute and undo themselves on binary state labels. Their numeric direction changes on return; this supplies a bounded configuration rather than an unrestricted translation rule.','Use support differences to predict entire interval responses.',{'involutions':invol,'commutation':comm})
