| valid-peb(apeb) ⊦ valid-peb(v, m, apeb) ↔ v = apeb.vidhdr.vol ∧ m = apeb.vidhdr.leb |
apeb.vidhdr = avidhdr(v0, m0, m1, m2, m3), apeb.echdr.valid?, m2 ≠ 0 → m2 ≤ datasize(apeb.data) ∧ m3 = checksum(apeb.data, m2) ⊦ (∃ m0, m1, m2. apeb.vidhdr = avidhdr(v, m, m0, m1, m2) ∧ (m1 ≠ 0 → m1 ≤ datasize(apeb.data) ∧ m2 = checksum(apeb.data, m1))) ↔ v = v0 ∧ m = m0, apeb.bad
Used simplifier rules: valid-peb2: ⊦ valid-peb(v, m, apeb) ↔ ¬ apeb.bad ∧ apeb.echdr.valid? ∧ (∃ m0, m1, m2. apeb.vidhdr = avidhdr(v, m, m0, m1, m2) ∧ ( m1 ≠ 0 → m1 ≤ datasize(apeb.data) ∧ m2 = checksum(apeb.data, m1)));%valid-peb0: ⊦ valid-peb(apeb) ↔ (∃ v, m. valid-peb(v, m, apeb));% ⊦ avidhdr(v, m, m0, m1, m2).leb = m; (s)% ⊦ avidhdr(v, m, m0, m1, m2).vol = v; (s)