PROOF.cam_f1d: def of bend-osdev-camellia@0.1.0.0 Import: import bend-osdev-camellia@0.1.0.0/PROOF.bend as PROOF Lines 48-53 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=48&end_line=53 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_f1d(+t: C.LcCamTabs, +k: L.LcBlock64, s: M.CmBlock) -> {s == C.cam.op(C.LcCamF1{t, k}, C.cam.unop(C.LcCamF1{t, k}, s)) : M.CmBlock}: match s: case M.CmBlock{+s0, +s1, +s2, +s3}: %CoreL.u32_xor_cancel(s2, C.cam.hi(C.cam.f(t, L.LcBlock64{s0, s1}, k))) : {M.CmBlock{s0, s1, s2, s3} == M.CmBlock{s0, s1, _, U32.xor(U32.xor(s3, C.cam.lo(C.cam.f(t, L.LcBlock64{s0, s1}, k))), C.cam.lo(C.cam.f(t, L.LcBlock64{s0, s1}, k)))} : M.CmBlock} %CoreL.u32_xor_cancel(s3, C.cam.lo(C.cam.f(t, L.LcBlock64{s0, s1}, k))) : {M.CmBlock{s0, s1, s2, s3} == M.CmBlock{s0, s1, s2, _} : 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