PROOF.cam_f2: def of bend-osdev-camellia@0.1.0.0 Import: import bend-osdev-camellia@0.1.0.0/PROOF.bend as PROOF Lines 55-60 of bend-osdev-camellia@0.1.0.0/PROOF.bend: https://jend.leeeet.dev/read.txt?path=bend-osdev-camellia@0.1.0.0/PROOF.bend&start_line=55&end_line=60 import Base import bend-osdev-mode-core@0.1.0.0/mode_core.bend as M import bend-osdev-cipher-core@0.1.0.0/cipher_core.bend as L import bend-osdev-cipher-core@0.1.0.0/LAWS.bend as CoreL import bend-osdev-camellia@0.1.0.0/camellia.bend as C def cam_f2(+t: C.LcCamTabs, +k: L.LcBlock64, s: M.CmBlock) -> {s == C.cam.unop(C.LcCamF2{t, k}, C.cam.op(C.LcCamF2{t, k}, s)) : M.CmBlock}: match s: case M.CmBlock{+s0, +s1, +s2, +s3}: %CoreL.u32_xor_cancel(s0, C.cam.hi(C.cam.f(t, L.LcBlock64{s2, s3}, k))) : {M.CmBlock{s0, s1, s2, s3} == M.CmBlock{_, U32.xor(U32.xor(s1, C.cam.lo(C.cam.f(t, L.LcBlock64{s2, s3}, k))), C.cam.lo(C.cam.f(t, L.LcBlock64{s2, s3}, k))), s2, s3} : M.CmBlock} %CoreL.u32_xor_cancel(s1, C.cam.lo(C.cam.f(t, L.LcBlock64{s2, s3}, k))) : {M.CmBlock{s0, s1, s2, s3} == M.CmBlock{s0, _, s2, s3} : M.CmBlock} {==} Uses (11): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32.xor https://jend.leeeet.dev/definition.txt?path=bend-osdev-camellia@0.1.0.0/camellia.bend&name=LcCamOp https://jend.leeeet.dev/definition.txt?path=bend-osdev-camellia@0.1.0.0/camellia.bend&name=LcCamTabs https://jend.leeeet.dev/definition.txt?path=bend-osdev-camellia@0.1.0.0/camellia.bend&name=cam.f https://jend.leeeet.dev/definition.txt?path=bend-osdev-camellia@0.1.0.0/camellia.bend&name=cam.hi https://jend.leeeet.dev/definition.txt?path=bend-osdev-camellia@0.1.0.0/camellia.bend&name=cam.lo https://jend.leeeet.dev/definition.txt?path=bend-osdev-camellia@0.1.0.0/camellia.bend&name=cam.op https://jend.leeeet.dev/definition.txt?path=bend-osdev-camellia@0.1.0.0/camellia.bend&name=cam.unop https://jend.leeeet.dev/definition.txt?path=bend-osdev-cipher-core@0.1.0.0/LAWS.bend&name=u32_xor_cancel https://jend.leeeet.dev/definition.txt?path=bend-osdev-cipher-core@0.1.0.0/cipher_core.bend&name=LcBlock64 https://jend.leeeet.dev/definition.txt?path=bend-osdev-mode-core@0.1.0.0/mode_core.bend&name=CmBlock