aboutsummaryrefslogtreecommitdiffstats
path: root/src/common
diff options
context:
space:
mode:
authorYann Herklotz <git@yannherklotz.com>2023-08-10 12:09:03 +0100
committerYann Herklotz <git@yannherklotz.com>2023-08-10 12:09:03 +0100
commit86e64fd05cea7b1da996701cd3653db5f471f8d1 (patch)
tree5cee338b89c4b1b2906cbf8e62d8f8dffdff0abb /src/common
parent4d62c7f35533ebd36ae4a0bdef6cd64fcc0be375 (diff)
downloadvericert-86e64fd05cea7b1da996701cd3653db5f471f8d1.tar.gz
vericert-86e64fd05cea7b1da996701cd3653db5f471f8d1.zip
Finish final forward simulation correctness
Diffstat (limited to 'src/common')
-rw-r--r--src/common/IntegerExtra.v20
1 files changed, 0 insertions, 20 deletions
diff --git a/src/common/IntegerExtra.v b/src/common/IntegerExtra.v
index 2b6cded..e56bda0 100644
--- a/src/common/IntegerExtra.v
+++ b/src/common/IntegerExtra.v
@@ -361,26 +361,6 @@ Module IntExtra.
apply zlt_true. lia. lia.
Qed.
- Lemma bits_ofwords:
- forall b4 b3 b2 b1 i, 0 <= i < zwordsize ->
- testbit (ofbytes b4 b3 b2 b1) i =
- if zlt i Byte.zwordsize
- then Byte.testbit b1 i
- else (if zlt i (2 * Byte.zwordsize)
- then Byte.testbit b2 (i - Byte.zwordsize)
- else (if zlt i (3 * Byte.zwordsize)
- then Byte.testbit b2 (i - 2 * Byte.zwordsize)
- else Byte.testbit b2 (i - 3 * Byte.zwordsize))).
- Proof.
- intros. unfold ofbytes. repeat (rewrite bits_or; auto). repeat (rewrite bits_shl; auto).
- change (unsigned (repr Byte.zwordsize)) with Byte.zwordsize.
- change (unsigned (repr (2 * Byte.zwordsize))) with (2 * Byte.zwordsize).
- change (unsigned (repr (3 * Byte.zwordsize))) with (3 * Byte.zwordsize).
- assert (zwordsize = 4 * Byte.zwordsize) by reflexivity.
- destruct (zlt i Byte.zwordsize).
- rewrite testbit_repr; auto.
- Abort.
-
Lemma div_divs_equiv :
forall x y,
signed x >= 0 ->