def ap.swap4

bend-osdev-aes@0.1.0.0 · PROOF.bend:1841

import bend-osdev-aes@0.1.0.0/PROOF.bend as PROOF
import Base
import bend-osdev-gf@0.1.1.0/gf.bend as G
import bend-osdev-gf@0.1.1.0/LAWS.bend as GL

1841def ap.swap4(+a: U32, +b: U32, +c: U32, +d: U32) -> {G.Gf8.add(G.Gf8.add(a, b), G.Gf8.add(c, d)) == G.Gf8.add(G.Gf8.add(a, c), G.Gf8.add(b, d)) : U32}:
1842  %Equal.sym(U32, G.Gf8.add(G.Gf8.add(a, b), G.Gf8.add(c, d)), G.Gf8.add(a, G.Gf8.add(b, G.Gf8.add(c, d))), GL.add_assoc(a, b, G.Gf8.add(c, d))) : {_ == G.Gf8.add(G.Gf8.add(a, c), G.Gf8.add(b, d)) : U32}
1843  %GL.add_assoc(b, c, d) : {G.Gf8.add(a, _) == G.Gf8.add(G.Gf8.add(a, c), G.Gf8.add(b, d)) : U32}
1844  %Equal.sym(U32, G.Gf8.add(b, c), G.Gf8.add(c, b), GL.add_comm(b, c)) : {G.Gf8.add(a, G.Gf8.add(_, d)) == G.Gf8.add(G.Gf8.add(a, c), G.Gf8.add(b, d)) : U32}
1845  %Equal.sym(U32, G.Gf8.add(G.Gf8.add(c, b), d), G.Gf8.add(c, G.Gf8.add(b, d)), GL.add_assoc(c, b, d)) : {G.Gf8.add(a, _) == G.Gf8.add(G.Gf8.add(a, c), G.Gf8.add(b, d)) : U32}
1846  %GL.add_assoc(a, c, G.Gf8.add(b, d)) : {_ == G.Gf8.add(G.Gf8.add(a, c), G.Gf8.add(b, d)) : U32}
1847  {==}

Uses (5)

Used by (1)