PROOFChecksum.ckp.e2g: def of bend-osdev-acpi@0.1.2.0 Import: import bend-osdev-acpi@0.1.2.0/PROOF_checksum.bend as PROOFChecksum Lines 254-258 of bend-osdev-acpi@0.1.2.0/PROOF_checksum.bend: https://jend.leeeet.dev/read.txt?path=bend-osdev-acpi@0.1.2.0/PROOF_checksum.bend&start_line=254&end_line=258 import Base import bend-osdev-u32@0.1.0.0/u32.bend as U import bend-osdev-u32@0.1.0.0/LAWS.bend as UL def ckp.e2g(+wu: U32) -> {U.U32Nat.low(8n, Nat.add(U32.to_nat(U32.and(255, U32.sub(256, wu))), U32.to_nat(wu))) == 0n : Nat}: %Equal.sym(Nat, U32.to_nat(U32.and(255, U32.sub(256, wu))), U.U32Nat.low(8n, U32.to_nat(U32.sub(256, wu))), ckp.am(U32.sub(256, wu))) : {U.U32Nat.low(8n, Nat.add(_, U32.to_nat(wu))) == 0n : Nat} %ckp.l1(U32.to_nat(U32.sub(256, wu)), U32.to_nat(wu)) : {_ == 0n : Nat} %Equal.sym(Nat, Nat.add(U32.to_nat(U32.sub(256, wu)), U32.to_nat(wu)), Nat.add(U32.to_nat(256), U.U32Nat.dbl(32n, U.U32Nat.bit(U32.is_lt(256, wu)))), UL.u32_sub_wrap(256, wu)) : {U.U32Nat.low(8n, _) == 0n : Nat} ckp.l2(U32.to_nat(256), U.U32Nat.bit(U32.is_lt(256, wu))) Uses (15): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Equal.sym https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Nat https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Nat.add https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32 https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32.and https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32.is_lt https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32.sub https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=U32.to_nat https://jend.leeeet.dev/definition.txt?path=bend-osdev-acpi@0.1.2.0/PROOF_checksum.bend&name=ckp.am https://jend.leeeet.dev/definition.txt?path=bend-osdev-acpi@0.1.2.0/PROOF_checksum.bend&name=ckp.l1 https://jend.leeeet.dev/definition.txt?path=bend-osdev-acpi@0.1.2.0/PROOF_checksum.bend&name=ckp.l2 https://jend.leeeet.dev/definition.txt?path=bend-osdev-u32@0.1.0.0/LAWS.bend&name=u32_sub_wrap https://jend.leeeet.dev/definition.txt?path=bend-osdev-u32@0.1.0.0/u32.bend&name=U32Nat.bit https://jend.leeeet.dev/definition.txt?path=bend-osdev-u32@0.1.0.0/u32.bend&name=U32Nat.dbl https://jend.leeeet.dev/definition.txt?path=bend-osdev-u32@0.1.0.0/u32.bend&name=U32Nat.low