a=b
を普通の数式とみれば,「aとbは等しい」という意味なのだが,
本問では,その解釈だと破綻してしまう。
そこで,本問では
a=b
を通常とは違う意味で使っているのだろうと推測できる。
たとえば,プログラミングの文脈では
a=b
を,「aにbを代入する」で使う。この用法でいけば
①は,
a=1 で,aに1を代入する
b=2 で,bに2を代入する
a=b で,a に 2の値を持つbを代入するので,a の値は2
b=a で,b に 2の値を持つaを代入するので,b の値は2
最終的には a,b いずれも2
②は,
a=1 で,aに1を代入する
b=2 で,bに2を代入する
c = a で,cに1の値をもつaを代入して,cの値は1
a = b で,a に2の値をもつbを代入して,aの値は2
b=c で,bに1の値をもつcを代入して,bの値は1
最終的にa,b,cの値は,2,1,1
しかし本問で,「=」が本当にプロミングの「代入」の
意味かどうかなんて,わからんよね。
暗号の文脈では,むしろ「=」を誰も思いつかないような演算方法
の意味で使っている可能性もある。
たとえば
a=b
を「aに,bを二乗した値を代入する」意味で使っても,
本問は矛盾なく,それなりの答えを出せてしまう。
そこまで考えると,本問の正解は
a=b
に,いろいろな演算ルールを矛盾なく設定できることを示すこと?
なのかも。