PROOFWhole.ckw.p1: def of bend-osdev-acpi@0.1.2.0 Import: import bend-osdev-acpi@0.1.2.0/PROOF_whole.bend as PROOFWhole Lines 165-170 of bend-osdev-acpi@0.1.2.0/PROOF_whole.bend: https://jend.leeeet.dev/read.txt?path=bend-osdev-acpi@0.1.2.0/PROOF_whole.bend&start_line=165&end_line=170 import Base import bend-osdev-bytes@0.1.1.1/bytes.bend as B import bend-osdev-bytes@0.1.1.1/LAWS.bend as BL import bend-osdev-acpi@0.1.2.0/header.bend as H def ckw.p1(+s: B.Octets, +l: U32, +r: U32, +k: U32, +o: B.Octets, +t: B.Octets, +orv: U32, +ci: B.Octets, +cr: U32, +sig4: {B.Octets.len(s) == 4n : Nat}, +body: B.Octets) -> {B.Octets.le32_at(B.Octets.append(H.AcpiHeader.encode(H.AcpiHeader{s, l, r, k, o, t, orv, ci, cr}), body), 4n) == Some{l} : Maybe<&2, U32>}: %Equal.sym(B.Octets, B.Octets.append(H.AcpiHeader.encode(H.AcpiHeader{s, l, r, k, o, t, orv, ci, cr}), body), B.Octets.append(s, B.Octets.append(B.Octets.le32(l), B.Octets.append(H.hd.byte(r), B.Octets.append(H.hd.byte(k), B.Octets.append(o, B.Octets.append(t, B.Octets.append(B.Octets.le32(orv), B.Octets.append(ci, B.Octets.append(B.Octets.le32(cr), body))))))))), ckw.ra(s, l, r, k, o, t, orv, ci, cr, body)) : {B.Octets.le32_at(_, 4n) == Some{l} : Maybe<&2, U32>} %Equal.cong(Nat, Nat, z => Nat.add(z, 0n), B.Octets.len(s), 4n, sig4) : {B.Octets.le32_at(B.Octets.append(s, B.Octets.append(B.Octets.le32(l), B.Octets.append(H.hd.byte(r), B.Octets.append(H.hd.byte(k), B.Octets.append(o, B.Octets.append(t, B.Octets.append(B.Octets.le32(orv), B.Octets.append(ci, B.Octets.append(B.Octets.le32(cr), body))))))))), _) == Some{l} : Maybe<&2, U32>} %Equal.sym(Maybe<&2, U32>, B.Octets.le32_at(B.Octets.append(s, B.Octets.append(B.Octets.le32(l), B.Octets.append(H.hd.byte(r), B.Octets.append(H.hd.byte(k), B.Octets.append(o, B.Octets.append(t, B.Octets.append(B.Octets.le32(orv), B.Octets.append(ci, B.Octets.append(B.Octets.le32(cr), body))))))))), Nat.add(B.Octets.len(s), 0n)), B.Octets.le32_at(B.Octets.append(B.Octets.le32(l), B.Octets.append(H.hd.byte(r), B.Octets.append(H.hd.byte(k), B.Octets.append(o, B.Octets.append(t, B.Octets.append(B.Octets.le32(orv), B.Octets.append(ci, B.Octets.append(B.Octets.le32(cr), body)))))))), 0n), BL.octets_le32_at_append_add(s, B.Octets.append(B.Octets.le32(l), B.Octets.append(H.hd.byte(r), B.Octets.append(H.hd.byte(k), B.Octets.append(o, B.Octets.append(t, B.Octets.append(B.Octets.le32(orv), B.Octets.append(ci, B.Octets.append(B.Octets.le32(cr), body)))))))), 0n)) : {_ == Some{l} : Maybe<&2, U32>} %Equal.sym(Maybe<&2, U32>, B.Octets.le32_at(B.Octets.append(B.Octets.le32(l), B.Octets.append(H.hd.byte(r), B.Octets.append(H.hd.byte(k), B.Octets.append(o, B.Octets.append(t, B.Octets.append(B.Octets.le32(orv), B.Octets.append(ci, B.Octets.append(B.Octets.le32(cr), body)))))))), 0n), B.Octets.le32_at(B.Octets.le32(l), 0n), BL.octets_le32_at_append_le(B.Octets.le32(l), B.Octets.append(H.hd.byte(r), B.Octets.append(H.hd.byte(k), B.Octets.append(o, B.Octets.append(t, B.Octets.append(B.Octets.le32(orv), B.Octets.append(ci, B.Octets.append(B.Octets.le32(cr), body))))))), 0n, ckw.l4(l))) : {_ == Some{l} : Maybe<&2, U32>} BL.octets_le32_round_trip(l) Uses (19): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Equal.cong https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Equal.sym https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Maybe 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=bend-osdev-acpi@0.1.2.0/PROOF_whole.bend&name=ckw.l4 https://jend.leeeet.dev/definition.txt?path=bend-osdev-acpi@0.1.2.0/PROOF_whole.bend&name=ckw.ra https://jend.leeeet.dev/definition.txt?path=bend-osdev-acpi@0.1.2.0/header.bend&name=AcpiHeader https://jend.leeeet.dev/definition.txt?path=bend-osdev-acpi@0.1.2.0/header.bend&name=AcpiHeader.encode https://jend.leeeet.dev/definition.txt?path=bend-osdev-acpi@0.1.2.0/header.bend&name=hd.byte https://jend.leeeet.dev/definition.txt?path=bend-osdev-bytes@0.1.1.1/LAWS.bend&name=octets_le32_at_append_add https://jend.leeeet.dev/definition.txt?path=bend-osdev-bytes@0.1.1.1/LAWS.bend&name=octets_le32_at_append_le https://jend.leeeet.dev/definition.txt?path=bend-osdev-bytes@0.1.1.1/LAWS.bend&name=octets_le32_round_trip https://jend.leeeet.dev/definition.txt?path=bend-osdev-bytes@0.1.1.1/bytes.bend&name=Octets https://jend.leeeet.dev/definition.txt?path=bend-osdev-bytes@0.1.1.1/bytes.bend&name=Octets.append https://jend.leeeet.dev/definition.txt?path=bend-osdev-bytes@0.1.1.1/bytes.bend&name=Octets.le32 https://jend.leeeet.dev/definition.txt?path=bend-osdev-bytes@0.1.1.1/bytes.bend&name=Octets.le32_at https://jend.leeeet.dev/definition.txt?path=bend-osdev-bytes@0.1.1.1/bytes.bend&name=Octets.len