def ckr.l20
bend-osdev-acpi@0.1.2.0 · PROOF_rsdp.bend:68
import bend-osdev-acpi@0.1.2.0/PROOF_rsdp.bend as PROOFRsdp
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/rsdp.bend as P
68def ckr.l20(+k: U32, +oem: B.Octets, +oem6: {B.Octets.len(oem) == 6n : Nat}, +rev: U32, +rsdt: U32) -> {B.Octets.len(B.Octets.append(P.AcpiRsdp.signature(), B.Octets.append(B.Octets.of_list([k]), B.Octets.append(oem, B.Octets.append(B.Octets.of_list([rev]), B.Octets.le32(rsdt)))))) == 20n : Nat}:
69 %Equal.sym(Nat, B.Octets.len(B.Octets.append(P.AcpiRsdp.signature(), B.Octets.append(B.Octets.of_list([k]), B.Octets.append(oem, B.Octets.append(B.Octets.of_list([rev]), B.Octets.le32(rsdt)))))), Nat.add(B.Octets.len(P.AcpiRsdp.signature()), B.Octets.len(B.Octets.append(B.Octets.of_list([k]), B.Octets.append(oem, B.Octets.append(B.Octets.of_list([rev]), B.Octets.le32(rsdt)))))), BL.octets_len_append(P.AcpiRsdp.signature(), B.Octets.append(B.Octets.of_list([k]), B.Octets.append(oem, B.Octets.append(B.Octets.of_list([rev]), B.Octets.le32(rsdt)))))) : {_ == 20n : Nat}
70 %Equal.sym(Nat, B.Octets.len(B.Octets.append(B.Octets.of_list([k]), B.Octets.append(oem, B.Octets.append(B.Octets.of_list([rev]), B.Octets.le32(rsdt))))), Nat.add(B.Octets.len(B.Octets.of_list([k])), B.Octets.len(B.Octets.append(oem, B.Octets.append(B.Octets.of_list([rev]), B.Octets.le32(rsdt))))), BL.octets_len_append(B.Octets.of_list([k]), B.Octets.append(oem, B.Octets.append(B.Octets.of_list([rev]), B.Octets.le32(rsdt))))) : {Nat.add(B.Octets.len(P.AcpiRsdp.signature()), _) == 20n : Nat}
71 %Equal.sym(Nat, B.Octets.len(B.Octets.append(oem, B.Octets.append(B.Octets.of_list([rev]), B.Octets.le32(rsdt)))), Nat.add(B.Octets.len(oem), B.Octets.len(B.Octets.append(B.Octets.of_list([rev]), B.Octets.le32(rsdt)))), BL.octets_len_append(oem, B.Octets.append(B.Octets.of_list([rev]), B.Octets.le32(rsdt)))) : {Nat.add(B.Octets.len(P.AcpiRsdp.signature()), Nat.add(B.Octets.len(B.Octets.of_list([k])), _)) == 20n : Nat}
72 %Equal.sym(Nat, B.Octets.len(B.Octets.append(B.Octets.of_list([rev]), B.Octets.le32(rsdt))), Nat.add(B.Octets.len(B.Octets.of_list([rev])), B.Octets.len(B.Octets.le32(rsdt))), BL.octets_len_append(B.Octets.of_list([rev]), B.Octets.le32(rsdt))) : {Nat.add(B.Octets.len(P.AcpiRsdp.signature()), Nat.add(B.Octets.len(B.Octets.of_list([k])), Nat.add(B.Octets.len(oem), _))) == 20n : Nat}
73 %Equal.sym(Nat, B.Octets.len(oem), 6n, oem6) : {Nat.add(B.Octets.len(P.AcpiRsdp.signature()), Nat.add(B.Octets.len(B.Octets.of_list([k])), Nat.add(_, Nat.add(B.Octets.len(B.Octets.of_list([rev])), B.Octets.len(B.Octets.le32(rsdt)))))) == 20n : Nat}
74 %Equal.sym(Nat, B.Octets.len(B.Octets.of_list([k])), B.len([k]), BL.octets_len_of_list([k])) : {Nat.add(B.Octets.len(P.AcpiRsdp.signature()), Nat.add(_, Nat.add(6n, Nat.add(B.Octets.len(B.Octets.of_list([rev])), B.Octets.len(B.Octets.le32(rsdt)))))) == 20n : Nat}
75 %Equal.sym(Nat, B.Octets.len(B.Octets.of_list([rev])), B.len([rev]), BL.octets_len_of_list([rev])) : {Nat.add(B.Octets.len(P.AcpiRsdp.signature()), Nat.add(B.len([k]), Nat.add(6n, Nat.add(_, B.Octets.len(B.Octets.le32(rsdt)))))) == 20n : Nat}
76 %Equal.sym(Nat, B.Octets.len(B.Octets.le32(rsdt)), 4n, BL.octets_len_le32(rsdt)) : {Nat.add(B.Octets.len(P.AcpiRsdp.signature()), Nat.add(B.len([k]), Nat.add(6n, Nat.add(B.len([rev]), _)))) == 20n : Nat}
77 {==}