PROOFWhole.ckw.at9: def of bend-osdev-acpi@0.1.2.0 Import: import bend-osdev-acpi@0.1.2.0/PROOF_whole.bend as PROOFWhole Lines 172-181 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=172&end_line=181 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 import bend-osdev-acpi@0.1.2.0/PROOF_checksum.bend as CP def ckw.at9(+s: B.Octets, +l: U32, +r: U32, +zz: 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.at(B.Octets.append(H.AcpiHeader.encode(H.AcpiHeader{s, l, r, U32.and(255, zz), o, t, orv, ci, cr}), body), 9n) == Some{U32.and(255, zz)} : Maybe<&2, U32>}: %Equal.sym(B.Octets, B.Octets.append(H.AcpiHeader.encode(H.AcpiHeader{s, l, r, U32.and(255, zz), o, t, orv, ci, cr}), body), B.Octets.append(B.Octets.append(s, B.Octets.append(B.Octets.le32(l), H.hd.byte(r))), B.Octets.append(H.hd.byte(U32.and(255, zz)), 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.enc(s, l, r, U32.and(255, zz), o, t, orv, ci, cr, body)) : {B.Octets.at(_, 9n) == Some{U32.and(255, zz)} : Maybe<&2, U32>} %Equal.cong(Nat, Nat, z => Nat.add(z, 0n), B.Octets.len(B.Octets.append(s, B.Octets.append(B.Octets.le32(l), H.hd.byte(r)))), 9n, ckw.plen(s, l, r, sig4)) : {B.Octets.at(B.Octets.append(B.Octets.append(s, B.Octets.append(B.Octets.le32(l), H.hd.byte(r))), B.Octets.append(H.hd.byte(U32.and(255, zz)), 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{U32.and(255, zz)} : Maybe<&2, U32>} %Equal.sym(Maybe<&2, U32>, B.Octets.at(B.Octets.append(B.Octets.append(s, B.Octets.append(B.Octets.le32(l), H.hd.byte(r))), B.Octets.append(H.hd.byte(U32.and(255, zz)), 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(B.Octets.append(s, B.Octets.append(B.Octets.le32(l), H.hd.byte(r)))), 0n)), B.Octets.at(B.Octets.append(H.hd.byte(U32.and(255, zz)), 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_at_append_add(B.Octets.append(s, B.Octets.append(B.Octets.le32(l), H.hd.byte(r))), B.Octets.append(H.hd.byte(U32.and(255, zz)), 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{U32.and(255, zz)} : Maybe<&2, U32>} %Equal.sym(Maybe<&2, U32>, B.Octets.at(B.Octets.append(H.hd.byte(U32.and(255, zz)), 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.at(H.hd.byte(U32.and(255, zz)), 0n), BL.octets_at_append_lt(H.hd.byte(U32.and(255, zz)), 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.lt01(U32.and(255, zz)))) : {_ == Some{U32.and(255, zz)} : Maybe<&2, U32>} %Equal.sym(Maybe<&2, U32>, B.Octets.at(B.Octets.of_list([U32.and(255, zz)]), 0n), B.at(B.Octets.to_list(B.Octets.of_list([U32.and(255, zz)])), 0n), BL.octets_at_list(B.Octets.of_list([U32.and(255, zz)]), 0n)) : {_ == Some{U32.and(255, zz)} : Maybe<&2, U32>} %Equal.sym(List<&2, U32>, B.Octets.to_list(B.Octets.of_list([U32.and(255, zz)])), B.mask([U32.and(255, zz)]), BL.octets_to_of([U32.and(255, zz)])) : {B.at(_, 0n) == Some{U32.and(255, zz)} : Maybe<&2, U32>} %Equal.sym(U32, B.byte(U32.and(255, zz)), U32.and(255, zz), CP.ckp.bb2(zz)) : {Some{B.byte(_)} == Some{U32.and(255, zz)} : Maybe<&2, U32>} %Equal.sym(U32, B.byte(U32.and(255, zz)), U32.and(255, zz), CP.ckp.bb2(zz)) : {Some{_} == Some{U32.and(255, zz)} : Maybe<&2, U32>} {==} Uses (29): 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=List 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=Base/base.bend&name=U32.and https://jend.leeeet.dev/definition.txt?path=bend-osdev-acpi@0.1.2.0/PROOF_checksum.bend&name=ckp.bb2 https://jend.leeeet.dev/definition.txt?path=bend-osdev-acpi@0.1.2.0/PROOF_whole.bend&name=ckw.enc https://jend.leeeet.dev/definition.txt?path=bend-osdev-acpi@0.1.2.0/PROOF_whole.bend&name=ckw.lt01 https://jend.leeeet.dev/definition.txt?path=bend-osdev-acpi@0.1.2.0/PROOF_whole.bend&name=ckw.plen 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_at_append_add https://jend.leeeet.dev/definition.txt?path=bend-osdev-bytes@0.1.1.1/LAWS.bend&name=octets_at_append_lt https://jend.leeeet.dev/definition.txt?path=bend-osdev-bytes@0.1.1.1/LAWS.bend&name=octets_at_list https://jend.leeeet.dev/definition.txt?path=bend-osdev-bytes@0.1.1.1/LAWS.bend&name=octets_to_of 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.at 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.len https://jend.leeeet.dev/definition.txt?path=bend-osdev-bytes@0.1.1.1/bytes.bend&name=Octets.of_list https://jend.leeeet.dev/definition.txt?path=bend-osdev-bytes@0.1.1.1/bytes.bend&name=Octets.to_list https://jend.leeeet.dev/definition.txt?path=bend-osdev-bytes@0.1.1.1/bytes.bend&name=at https://jend.leeeet.dev/definition.txt?path=bend-osdev-bytes@0.1.1.1/bytes.bend&name=byte https://jend.leeeet.dev/definition.txt?path=bend-osdev-bytes@0.1.1.1/bytes.bend&name=mask