PROOF.rx5: def of bend-osdev-acpi@0.1.1.0 Import: import bend-osdev-acpi@0.1.1.0/PROOF.bend as PROOF Lines 2463-2468 of bend-osdev-acpi@0.1.1.0/PROOF.bend: https://jend.leeeet.dev/read.txt?path=bend-osdev-acpi@0.1.1.0/PROOF.bend&start_line=2463&end_line=2468 import Base import bend-osdev-bytes@0.1.1.0/bytes.bend as B import bend-osdev-acpi@0.1.1.0/error.bend as E import bend-osdev-acpi@0.1.1.0/checksum.bend as C import bend-osdev-acpi@0.1.1.0/fields.bend as F import bend-osdev-acpi@0.1.1.0/rsdp.bend as P def rx5(+b: Bool, +o: B.Octets, +r: P.AcpiRsdp, +e: {P.rs.p5(b, o) == Done{r} : Result<&2, &2, E.AcpiError, P.AcpiRsdp>}) -> {C.AcpiChecksum.ok(B.Octets.take(P.AcpiRsdp.checked(r), o)) == True{} : Bool}: match b: case True{}: rx6(Bool.and(Nat.is_le(36n, U32.to_nat(F.AcpiF.u32(o, 20n))), Nat.is_le(U32.to_nat(F.AcpiF.u32(o, 20n)), B.Octets.len(o))), F.AcpiF.u32(o, 20n), o, r, e) case False{}: Empty.absurd({C.AcpiChecksum.ok(B.Octets.take(P.AcpiRsdp.checked(r), o)) == True{} : Bool}, fd_absurd(P.AcpiRsdp, E.AcpiTooShort{36n, B.Octets.len(o)}, r, e)) Uses (17): https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Bool https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Bool.and https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Empty.absurd https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Nat.is_le https://jend.leeeet.dev/definition.txt?path=Base/base.bend&name=Result 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.1.0/PROOF.bend&name=fd_absurd https://jend.leeeet.dev/definition.txt?path=bend-osdev-acpi@0.1.1.0/PROOF.bend&name=rx6 https://jend.leeeet.dev/definition.txt?path=bend-osdev-acpi@0.1.1.0/checksum.bend&name=AcpiChecksum.ok https://jend.leeeet.dev/definition.txt?path=bend-osdev-acpi@0.1.1.0/error.bend&name=AcpiError https://jend.leeeet.dev/definition.txt?path=bend-osdev-acpi@0.1.1.0/fields.bend&name=AcpiF.u32 https://jend.leeeet.dev/definition.txt?path=bend-osdev-acpi@0.1.1.0/rsdp.bend&name=AcpiRsdp https://jend.leeeet.dev/definition.txt?path=bend-osdev-acpi@0.1.1.0/rsdp.bend&name=AcpiRsdp.checked https://jend.leeeet.dev/definition.txt?path=bend-osdev-acpi@0.1.1.0/rsdp.bend&name=rs.p5 https://jend.leeeet.dev/definition.txt?path=bend-osdev-bytes@0.1.1.0/bytes.bend&name=Octets https://jend.leeeet.dev/definition.txt?path=bend-osdev-bytes@0.1.1.0/bytes.bend&name=Octets.len https://jend.leeeet.dev/definition.txt?path=bend-osdev-bytes@0.1.1.0/bytes.bend&name=Octets.take